Mini-Thermometer & Hygrometer mit E-PAPER auf nRF52 - oder was die Hersteller noch nicht veröffentlicht haben

Grüße an alle Habr-Leser! Ich möchte mit Ihnen mein neues Open Source-Projekt teilen. Aus dem Titel des Artikels geht hervor, dass es sich um einen Temperatur- und Feuchtigkeitssensor mit Anzeige auf elektronischer Tinte handelt. Schon lange habe ich versucht, ein Projekt eines Temperatursensors mit solchen Anzeigen in Form eines Arduino-Moduls zu realisieren. Seitdem hat mich das Thema E-Ink-Displays interessiert.



Ziel dieses Projekts war es, einen Miniatursensor zu entwickeln, der in seiner Größe mit herkömmlichen drahtlosen Temperatursensoren vergleichbar ist und gleichzeitig Daten auf dem Gerät selbst ausgibt. Und unter all diesen Bedingungen würde das Gerät lange Zeit mit einem kleinen Akku arbeiten. Was dabei herauskam, bewerten Sie bitte und sparen Sie nicht an Kommentaren.







Der Sensor arbeitet mit nRF52-Chips, für dieses Projekt wurde ein Modul von MINEW ausgewählt. Das Modul ist klein, hat 18 Pins, von denen 13 GPIO sind, zwei Antennenoptionen, gedruckt und Keramik, sowie mehrere Optionen für Chips, nRF52810 und nRF52832, sind auf dem Modul installiert, und nach einem kurzen Gespräch mit der Unternehmensleitung setzen sie ohne Fragen nRF52811-Chips auf diese Module ... Übrigens habe ich meine ersten 811er bekommen und außerdem zu einem Preis, der anderthalb Mal niedriger ist, als ich nur Chips von Lieferanten in Russland kaufen könnte, aber das ist eine andere Geschichte. Das Modul verfügt über eine DC-DC-Version und einen Uhrenquarz. Modulabmessungen 12 mm x 15 mm. Es gibt einen Metallschirm.





Aus der Reihe der E-Ink-Displays fiel natürlich die Wahl auf ein relativ neues Modell mit einer Bildschirmgröße von 1,02 Zoll. Die Kosten für einen Zoll E-Ink betrugen 500 Rubel, was mir akzeptabel erschien. Kleine Schwierigkeiten bei der Entwicklung einer Platine für dieses Display wurden durch den Anschluss verursacht, eine 30-polige FPC mit einem Abstand von 0,5 mm. Die Breite des FPC-Anschlusses ist viel größer als die Breite des Displays selbst, was zu Designproblemen führte. Mit dem Display-Strapping war es jedoch einfacher, es ist einfacher als bei anderen Modellen ( Datenblatt GDEW0102T4 ).





Aufgrund einer Vielzahl digitaler Temperatur- und Feuchtigkeitssensoren habe ich mich für den sht20-Sensor entschieden. Ich hatte genug davon, einfach genug, guter Preis, günstige Größe. Einer der Vorteile kann auch als die Tatsache bezeichnet werden, dass es auf Wunsch anstelle von sht20 einfach ist, sht21, si7020, si7021, htu20d, htu21d und hdc1080 zu installieren, aber die letztere Option ist nicht sehr gut;).



Für den Sensor wurden zwei Platinen entwickelt, eine für den Bildschirm und dessen Umreifung, die zweite für ein Funkmodul, einen Temperatur- und Feuchtigkeitssensor und eine Batterie. Die Schlüsselparameter für die Kartengrößen waren Bildschirm- und Batteriegrößen. Auf der Platine mit dem Bildschirm befanden sich Löcher für Schrauben (1,4 x 3) zur Befestigung der Platine am Gehäuse. Auf der zweiten Platine wurden Ausschnitte für eine einfache Installation der Schrauben angebracht. Da dies ein DIY-Gerät ist, könnte ich es mir leisten, einen "leckeren" CR2450-Akku einzubauen. Wenn mir eines Tages das Gerät dick erscheint, kann ich den Halter für eine CR2430-Batterie immer löten. Als Ergebnis haben wir zwei Boards mit einer Größe von 36 x 26 mm erhalten.





Das Gehäuse wurde in SolidWorks entworfen, die Modelle der Boards wurden aus DipTrace im DXF-Format exportiert und bereits in SolidWorks in 3D-Modelle konvertiert. Das Gehäuse besteht aus zwei Teilen und einem Knopf. Die Gehäusehälften werden auf die gleiche Weise mit Schrauben (1,4 x 4) auf der einen Seite und einem hervorstehenden "Haken" auf der anderen Seite aneinander befestigt. Es gibt zwei Löcher für die Luftzirkulation für den Temperatur- und Feuchtigkeitssensor.





In diesem Projekt wurde der Körper auf einem FDM-Drucker gedruckt, natürlich ist die Druckqualität geringer als auf einem SLA-Drucker, aber in Bezug auf die Festigkeit sind Produkte aus flüssigen Harzen Produkten aus Filamenten viel unterlegen, und aufgrund der Besonderheiten des Körpers war die Festigkeit wichtig. Also war ich mental auf das Schleifen und Polieren vorbereitet. Im Prinzip ist es ganz gut gelaufen.





So etwas passierte bei der Entwicklung der Hardware. Ich habe versucht, alle Phasen und einige Nuancen zu beschreiben. Wenn es Ihnen zeitaufwändig erschien, ist es nicht so, dass die Software tatsächlich arbeitsintensiv war. Nach wie vor mache ich meine Projekte unter MySensors, obwohl ich gestehe, dass ich nicht mehr mit der gleichen Begeisterung bin wie zuvor. In einigen Momenten begann ich mich zurückzuhalten, einige Dinge fehlen, andere sind einfach unmöglich. Im Moment sehe ich Open Thread als Alternative für mich, zumindest scheint es ziemlich attraktiv zu sein.



Gerätediagramm








Infolgedessen ist es uns gelungen, alle unsere Anforderungen an die Funktionalität umzusetzen. Das Gerät kann sowohl mit dem UD-Controller als auch direkt mit jedem Gerät im MySensor-Netzwerk arbeiten. Die Bindung von Geräten für den direkten Austausch kann sowohl durch die Konfiguration von Geräten über den UD-Controller mit externen Befehlen als auch ohne Beteiligung des UD-Controllers durch einfaches Drücken einer Taste zum Aktivieren des Bindungsmodus erfolgen. Der Temperatursensor und ein anderes Gerät, an das der Sensor gebunden ist, können normalerweise den Austausch auch ohne ein funktionierendes MySensors-Gateway oder einen funktionierenden UD-Controller unterstützen, was die Fehlertoleranz sicherlich erhöht. Ein separates Problem war mit den Display-Eink-Treibern, wahrscheinlich weil das Display ziemlich neu ist,Auf der Website des Herstellers und der WaveShare-Website (die eink Good Display-Bildschirme unter seiner eigenen Marke anbietet) sind die Bibliotheksimplementierungen ziemlich roh. Ich musste etwas wiederholen, etwas hinzufügen.



Der Sensor unterstützt mehrere Sprachen, die Farbinversion durch einen externen Befehl im Gerätekonfigurationsmodus und mehrere Schriftartenoptionen, die auch durch einen externen Befehl im Gerätekonfigurationsmodus geändert werden können. Der Sensor zeigt Temperatur- und Feuchtigkeitswerte, Batterieleistung und Signalstärke an. Das Intervall zur Messung von Temperatur und Luftfeuchtigkeit, das Intervall zur Messung des Batteriestands kann auch durch einen externen Befehl eingestellt werden. Für Temperatur und Luftfeuchtigkeit in Minuten, für Batteriestand in Stunden. Der Sensor überträgt die folgenden Daten an das UD: Temperatur, Luftfeuchtigkeit, Ladezustand in%, Spannung, Signalpegel, Grund für den Neustart.





Wie es aussieht, sehen Sie in einem kleinen Video:





Zeitstempel mit interessanten Punkten:

3.10 - Konfigurieren (Schriftartenänderung, Farbumkehrung)

5.10 - Verbrauchsmessung, WTD-Arbeit



Wenn sich jemand für meine Entwicklungen interessiert, empfehle ich nach dem Lesen des Artikels, zum Kanal zu gehen und ihn zu abonnieren, wo ich zunächst Informationen über neue Entwicklungen veröffentliche ...



Im Ruhemodus verbraucht der Sensor 2μA, der WTD-Reset alle 5 Sekunden und der Verbrauch zum Zeitpunkt des Resets 4-5μA. In der Betriebsart mit einem Bildschirm und einem Temperatur- und Feuchtigkeitssensor von 2-3 mA, in einem Übertragungsmodus von 5-8 mA, ist ein solcher Bereich von 3 mA auf die Tatsache zurückzuführen, dass der Sensor selbst die Sendeleistung basierend auf den Signalpegeldaten reguliert.



Unter den Spoilerfotos des Sensors
























Wenn Sie sich für alles interessieren, was mit DIY zu tun hat, Sie ein DIY-Entwickler sind oder einfach nur anfangen möchten, Sie an DIY-Geräten interessiert sind, lade ich alle ein, die sich für Telegramm-Chat interessieren - DIYDEV



Jeder, der Geräte herstellen möchte, beginnt mit der Automatisierung seines Hauses, möchte ich kennenlernen einfach zu erlernendes Mysensors-Protokoll - Telegramm-Chat MySensors



Und für diejenigen, die nach ausgereiften Lösungen für die Heimautomation suchen, lade ich Sie zum Open Thread- Telegramm-Chat ein .



Mein GitHub dieses Projekts , Diagramm, Gerber-Dateien, 3D-Modelle des Gehäuses, Bom, Software .



Jeder ist nett wie immer!



All Articles