Selbstbau HM_WDS10_TH_O mit Luftdruckmessung

Begonnen von trilu, 23 Februar 2014, 12:23:22

Vorheriges Thema - Nächstes Thema

hexenmeister

Wie war das mit dem Fell des unerlegten Bären? ;)
Lasst doch Dirk erstmal bauen!
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

trilu

Momentan ist der 328 schon ziemlich voll mit den Temperatur/Luftfeuchte/Luftdruck Modul. 86% Flash sind dicht.
Ich versuche das ganze Zeug auch noch ein wenig zu optimieren, aber unter 70% werden wir nicht kommen.
Ein Textdisplay würde dann auch Text Strings voraussetzen, die passen dann vermutlich nicht mehr in den Flash.
Man könnte sie aber in ein serielles EEprom packen.

Allerdings ist einen Thermostat zu basteln eine ganz andere Nummer als ein paar Sensorwerte zu übertragen.
In einem Thermostat müssen Regelfunktionen und solche Sachen, da wird kaufen vermutlich einfacher :-)

Das was Dirk hier in HW baut, wird nicht mehr als ein Sensorbaustein! Updatefunktionalität wäre relativ einfach,
allerdings dann nicht HM Kompatibel. Wenn es Kompatibel sein soll, dann ist es derzeit unmöglich, da das Protokoll,
die Verschlüsselung, etc noch nicht bekannt sind.

Bitte überfrachtet den Sensor nicht gleich mit Wunschfunktionen - Lasst uns schauen das wir Licht/Temp/Luft/Druck und
Bewegung hinbekommen...

Viele Grüße
Horst

Alaska

Zitat von: Dirk am 28 Februar 2014, 00:02:57
von welcher Version?

Anbei übrigens das Layout für das Außengehäuse aus dem Beitrag:
http://forum.fhem.de/index.php/topic,20620.msg143214.html#msg143214

Dieses hat wie, schon geschrieben "nur" die Sensoren für Luftruck/Temperatur und Helligkeit an Bord.
Über ein den externen I2C-Bus kann man ggf. noch andere Sensoren anschließen. z.B. einen nach außen gelegten Temperatur/Feuchte Sensor.
In diesem Gehäuse wird man wohl keine sinvollen Temperatur/Feuchte-Werte bekommen.

Gruß
Dirk

Mir würden 7 Temperatur- und Feuchtesensoren und 1 Temp-/Feuchte-/Luftdrucksensor reichen.

Nochmal zum löten: Wie schwer ist es wirklich, mit dem richtigen Werkzeug die Platine mit Sensoren zu bestücken?

trilu

Den Arduino bekommst du bestimmt gelötet, der hat Rastermaß 2,54 mm, das geht relativ einfach, schafft sogar mein 12 jähriger Sohn.
Die Sensoren sind SMD, das ist etwas heftiger, setzt in meinem Alter eine Lupe und feines Lötzinn voraus.
Aber Dirk hat ja schon geschrieben, er überlegt ob er die Sensoren nicht direkt lötet und gegen "Bier" für den Rest eine Lösung findet :-)
Ich denke, am Löten wird es nicht scheitern...

Thorsten Pferdekaemper

Zitat von: hexenmeister am 28 Februar 2014, 12:47:07
Wie war das mit dem Fell des unerlegten Bären? ;)
Lasst doch Dirk erstmal bauen!
Hi,
ich hoffe, dass Dirk (und auch trilu, sorry wenn ich noch jemanden vergessen habe) das alles nicht als Drängelei oder so auffassen, sondern als Ausdruck dessen, dass die da was richtig Gutes bauen. Es scheint dafür doch einigen Bedarf zu geben.
Ich hoffe auch, dass sie sich dadurch nicht verrückt machen lassen, und einfach wie geplant weitermachen.
Gruß,
    Thorsten
FUIP

Dirk

Hallo Zusammen,

Wow, da sind die Brötchen ja schon alle bevor sie im Ofen sind :)

Ich hoffe die Prototypen erfüllen die Erwartungen.

Ich habe eure Vorbestellungen aber schon mal notiert. Ich hoffe ich habe keinen vergessen:

Porky666 ca. 4
santalaus 8
hexenmeister 8
Alaska 8
martinp876 8
Pferdekaemper ca. 20
trilu ?


Prototypen vom Innensensor werde ich dann erstmal 5-10 Stück haben
Vom Aussensensor etwa 5

Ich habe mal ganz grob Kalkuliert. Ich schätze das man mit ca. 20-30€ für ein Modul rechnen kann.
Je nach bestückten Sensorchips und Bestückungsgrad.
Dabei währen dann aber Platine, Gehäuse, Batteriehalter usw. schon mit eingerechnet.


Zitat von: Thorsten Pferdekaemper am 28 Februar 2014, 09:28:43
Je nach Sensor muss man noch ein kleines Loch bohren und/oder einen kleinen Acrylstab reinstecken.
Wenn man im Innengehäuse den Lichtsensor mit installiert, muss dieser noch Licht abbekommen. Dafür hatte ich den Acrylstab geplant.
In der Hoffnung dass das auch so funktioniert. Das Außengehäuse hat einen transparenten Deckel. Da braucht man das nicht.

ZitatDann war da noch der Controller. Zuerst war der Plan, dass man den selbst draufstecken/löten muss, dann war im Gespräch, dass das Ding gleich mit draufgebacken wird.
Die Platine lässt beide Möglichkeiten zu. Mit aufgelötetem Controller hat man ggf. ein paar mehr Möglichkeiten, da dann freie Pins noch anderweitig benutzt werden können.

ZitatZu den Sensoren: Möglich scheint zu sein: Temperatur, Feuchte, Luftdruck, Helligkeit, Bewegung.
Der Bewegungssensor war im Gespräch ist im geplanten Layout aber noch nicht dabei. Das währ dann so ein Zusatzmodul was man auf die freien Steckleisten stecken kann.

ZitatSind die Dinger dann gleich mit drauf oder bestellt man die sich dann selbst? ...oder Sammelbestellung und dann selber löten.
Je nach dem. Da die Sensoren aus Platzgründen aber alle SMD sind, wird es auch bestückte bzw. teilbestückte Platinen geben.

ZitatBezüglich selber löten: Durch praktisch gesammelte Erfahrung weiß ich, dass meine Geschicklichkeit bei etwa 2,54mm Rastermaß endet. Wird das reichen?
Bei den Kleinteilen wie Widerständen und Kondensatoren sicherlich. Bei den Senoren und dem Atmega könnte es eng werden.

Zitat von: trilu am 28 Februar 2014, 09:35:34
Kannst du schon abschätzen wann du die ersten Prüfmuster haben wirst und was so eine Platine etwa kosten wird?
Wenn ich nächste Woche die ersten Platinen machen lasse, dann etwa 1-2 Wochen später.
Ich hoffe die SHT's kommen in der Zwischenzeit auch.

ZitatMacht es Sinn das ich mir schon mal ein paar Gehäuse bestellen?
Kannst du machen. Da ich vermutlich eh noch einige Sachen bestellen muss, kann ich das auch mit übernehmen. Spart etwas Versand

ZitatWas ich mir auch gerade überlegt habe, eigentlich könnte man den Bewegungsmelder mit in so ein Gehäuse packen, ist ja nur ein Loch
so dass der PIR Sensor rein passt...
Das kannst du machen. Bei der Version mit direkt aufgelötetem Atmega328 währen die Anschlussleisten und somit noch einige Ports frei


Zitat von: Porky666 am 28 Februar 2014, 10:08:09
da die Orderwut langsam ausbricht kann ich dir meine Unterstützung bei der, Kommissionierung, Verpackung und Versand anbieten. Habe hier im Haus einen Hermes Paketshop.

Ich will mich nicht aufdrängen, nur ein Vorschlag zu deiner Entlastung.
Klingt gut Das werde ich mir merken :)


Zitat von: frank am 28 Februar 2014, 11:53:13
wie sieht es eigentlich mit der "leistungsfähigkeit" des atmega328 aus?
Wie Trilu schon Sagte könnte das da eng werden.
Falls du mit deinem "Thermostat" aber nur eine Solltemperatur setzen möchtest, z.B. per Incrementalgeber, FHEM dann aber die Regelung vornimmt, könnte das noch rein passen.

Zitatdass irgendwann die möglichkeit des firmware updates per funk realisiert wird!
Ich würde fast sagen, dass man bei unseren Lösungen nicht unbedingt das Update per Funk einspielen muss.
Das kann man auch sehr einfach mit einem USB->Serial Adapter machen. So ist das auf den Platinen auch vorgesehen.
Und das sollte dann hoffentlich nicht so oft vorkommen müssen :)

Zitat von: Alaska am 28 Februar 2014, 13:44:18
Nochmal zum löten: Wie schwer ist es wirklich, mit dem richtigen Werkzeug die Platine mit Sensoren zu bestücken?
Kommt drauf an was schwer für dich bedeutet :)
Den Luftdruck Sensor wird man ohne Heißluft oder Reflow nur schwer bestücken können. Denn der hat die Anschlüsse unter dem Gehäuse.
Daher würde ich das übernehmen. Alles andere bekommt man aus meiner Sicht recht einfach gelötet. Du kannst des an einem Sensor ja vorher ausprobieren.

Zitat von: Thorsten Pferdekaemper am 28 Februar 2014, 13:55:27
ich hoffe, dass Dirk (und auch trilu, sorry wenn ich noch jemanden vergessen habe) das alles nicht als Drängelei oder so auffassen, sondern als Ausdruck dessen, dass die da was richtig Gutes bauen. Es scheint dafür doch einigen Bedarf zu geben.
Nö. :)

Gruß
Dirk

trilu

Hi Dirk,

das ist ja eine schöne Zusammenfassung  ;D
Ich hätte schon Bedarf für 5 oder 6 Platinen, so genau weiss ich das aber noch nicht. Bauen wir den PIR mit rein, brauche ich mehr als ohne ...
Ich bräuchte aber für den Anfang mal einen oder zwei Prototypen, damit würde sich leichter entwickeln lassen. Deshalb die Bitte mir zumindest einen
der Prototypen zu reservieren.
Zum PIR Sensor habe ich mal ein bischen Datenblatt zum BISS0001 geschmökert, vielleicht brauche ich mehr als einen Pin um das Ding anzusteuern.
Es scheint möglich als könnte ich direkt an den Chip um die Empfindlichkeit unabhängig von einem Widerstandsnetzwerk zu steuern.

Viele Grüße
Horst



Dirk

Hi Horst,

ZitatBauen wir den PIR mit rein, brauche ich mehr als ohne ...
Ich würde den PIR aktuell als Erweiterungsplatine sehen. Bei der Bestückungsversion ohne Arduino, also mit Atmega328 direkt bestückt kann man den PRI quasi als Arduino-Shield bauen und drauf stecken.

Der BISS0001 startet erst bei 3V Versorgungsspannung. Da sollte man bei 2-Zellen-Versorgung wohl noch einen StepUp-Regler davor bauen.
Der MAX1722 währ dafür da ganz interessant. Der braucht nur 1,5 µA im Leerlauf. Der BISS0001 genehmigt sich ja allein schon gut 50 µA bei 3V.
Aber selbst bei 100 µA Dauerbelastung sollte man eine Laufzeit bei angenommenen 1000 mAh Batteriekapazität von gut einem Jahr hinbekommen.

ZitatDeshalb die Bitte mir zumindest einen der Prototypen zu reservieren.
Du bist der erste der einen Prototypen bekommt :)

Gruß
Dirk

trilu

Ich habe mich noch ein wenig bei Ali umgesehen, um den BISS kommen wir wohl nicht drum rum, die einzige Alternative wäre, den Operationsverstärker, etc vom HM Schaltplan nachzubilden.
Das halte ich aber aus Gründen Aufwand und Kosten für übertrieben.
Der Besagte Max Spannungsregler würde vermutlich so oder so Sinn machen, dann können wir die zwei AA Batterien wirklich bis zum Rest auslutschen. Funkmodul und Arduino würden ja sonst bei 2.6 Volt schlapp machen. Mit dem Max können wir bis auf 1.x Volt runter...
Damit wäre der Mehrverbrauch mehr als kompensiert.

Viele Grüsse
Horst

hexenmeister

2,6V bedeuten 1,3 Pro Zelle. Dabei ist die Batterie noch mehr als halbvoll. Daher würde ich einen StepUp-Wandler sehr begrüßen.
Alternativ könnte man 3,7V Lithiumakkus verwenden. Gibts sehr günstig in der Bucht ;)
Nachteil: frischegeladen liefern sie eine Zeit lang bis zu 4,2V. Da muss man möglicherweise den Funkchip irgendwie schützen. Die Schlussspannung liegt dann bei 2,75V.
Bei der Idee mit dem Acrylstab bin ich etwas skeptisch. Warum nicht den Lichtsensor (auf einer exra-Platine) einfach auf den Deckel kleben? Ein Kleines Loch dafür kann man auf der Rückseite mit einer Folie oder so zukleben. Oder eben ein Acryl-Fensterchen 'reinkleben'.
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

trilu

Mir gefällt die Idee mit dem Acrylstab. Das verfälscht sicherlich das Messergebnis, aber auf der anderen Seite reduzieren wir die Messung auf 1 Byte. Dafür ist der Sensor fest verlötet und wird keine Kontaktprobleme oder so haben.
Lithiumzelle halte ich im Aussenbereich für kritisch, die Akkus vertragen keine Kälte...
Viele Grüsse
Horst

Dirk

Hi Horst,

ZitatFunkmodul und Arduino würden ja sonst bei 2.6 Volt schlapp machen. Mit dem Max können wir bis auf 1.x Volt runter...
Der CC1101 ist bis 1,8V spezifiziert, der BMP180 auch der TSL2561 geht "nur" bis 2,7V, der SHT10 bis 2,4V und der AVR@10Mhz ist auch bit 2,7V angegeben.
Ich bin grade am überlegen ob wir jetzt schon den MAX einsetzen müssen.
Kannst du die Lib auf 1Mhz Systemtakt umschreiben? Dann Ist der AVR bis 1,8V spezifiziert. Dann währ "nur" noch der Lichtsensor für ein frühzeitiges "Ableben" der Batterie verantwortlich.

Wenn ich mir die Typische Entladekurve einer Alkali-Mangan-Zelle bei 100 mA ansehe (http://commons.wikimedia.org/wiki/File:Aa-alkaline-100_c-v.png), dann sollte man aus dieser ca. 500 mAh entnehmen können, bis ca. 2,7V erreicht sind. Bei einer Entladung von wenige µA die wir anstreben sollten es noch mehr sein.

Ich habe dann mal noch etwas gerechnet.
Angenommen der Sensor sendet ca. alle 2,5 Min. die aktuellen Werte (Wie lange dauert ein HM-Packet mit Ack? eine Sekunde?) dann würde der Sensor etwas mehr als ein Jahr mit 500 mAh auskomen.
Mit dem MAX vermutlich doppelt so lange, da diese bei Verbrauchern im µA-Bereich nur noch ca. 50% Wirkungsgrad hat.

Jetzt die Frage an alle:
Sollte ich den MAX hier schon vorsehen? Das würde ca. 2-3€ Mehrpreis ausmachen?
Vorteil währ, dass andere Sensoren hier auch ggf. auch 3,3 V bekommen könnten


Zitat von: hexenmeister am 28 Februar 2014, 19:29:22
Bei der Idee mit dem Acrylstab bin ich etwas skeptisch. Warum nicht den Lichtsensor (auf einer exra-Platine) einfach auf den Deckel kleben? Ein Kleines Loch dafür kann man auf der Rückseite mit einer Folie oder so zukleben. Oder eben ein Acryl-Fensterchen 'reinkleben'.
Hinter dem Acrylstab wird der Sensor sicher deutlich weniger Licht abbekommen, das würde ich dann in der Software mit einem entsprechenden Abgleich machen. Für den Prototyp würde ich das Ganze aber erst mal so lassen wollen.
Sollte sich das dann als problematisch herausstellen werde ich die Idee mit der Zweitplatine aufgreifen.

Aktuell ist der Lichtsensor im Innengehäuse direkt in der Nähe der Luftschlitze geplant. Daher könnte ich mir vorstellen dass der Sensor dort bereits genügend Licht abbekommt um auf den aktuellen Helligkeitswert im Raum zu schließen.

Gruß
Dirk

hexenmeister

#87
Ich wäre für den Einbau von MAX von Anfang an. 2-3 Euro dürften kaum jemanden ernsthaft stören. Die Vorteile überwiegen IMHO deutlich. Man könnte auch mit nur einer Zelle arbeiten, spart Platz.
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

trilu

Sensoren auslesen, senden und ACK braucht max 300ms im Moment. Allerdings muss der Arduino alle 250ms kurz aufwachen um das Timing fürs senden zu halten. Kommt von der Kompatibilität zum Heizungsthermostat.
Er bleibt alle 250ms damit kleiner 1ms bei 5ma wach. Dann etwa alle 3 Minuten für 300 ms bei 25ma.
Könnte man den Max variabel machen, wieviel braucht der außen rum?
Eigentlich macht der Max ja nur Sinn bei PIR, da haben wir auch mit erhöhtem Stromverbrauch zu kämpfen.

Die Lib könnte man schon jetzt bei 1Mhz betreiben. Die meisste Zeit verbringt der Arduino in der Loop und checkt ob er was zu tun bekommt.

Viele Grüsse
Horst

Dirk

ZitatKönnte man den Max variabel machen, wieviel braucht der außen rum?
Ja, wenn der nicht bestückt wird, muss man den nur überbrücken. Mit dem MAX wird die Messung der Batteriespannung etwas aufwändiger. Zwei zusätzliche Widerstände und zwei zusätzliche Pins am AVR.

ZitatEigentlich macht der Max ja nur Sinn bei PIR, da haben wir auch mit erhöhtem Stromverbrauch zu kämpfen.
Wenn man den Helligkeitssensor nutzen möchte bin ich mir da grade nicht mehr ganz sicher.
Wenn ich mir die Entladekurve der Batterien so ansehe, dann sind die 1,35V recht schnell erreicht.

ZitatDie Lib könnte man schon jetzt bei 1Mhz betreiben. Die meisste Zeit verbringt der Arduino in der Loop und checkt ob er was zu tun bekommt.
Dann würde ich das fast so machen. Dann ist der AVR noch etwas genügsamer und kann bis 1,8V sicher versorgt werden.