Benutzer-Werkzeuge

Webseiten-Werkzeuge


hardware:channels:sensors:1_wire

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
hardware:channels:sensors:1_wire [2017/04/21 16:41] – Link zum "1wire an GPIO4"-HowTo eingefügt dennis_ghardware:channels:sensors:1_wire [2020/01/19 15:42] (aktuell) – Einlesen mit vzlogger ergänzt ruperts
Zeile 3: Zeile 3:
 Derzeit haben wir mehrere Möglichkeiten 1-Wire Sensoren auszulesen. Derzeit haben wir mehrere Möglichkeiten 1-Wire Sensoren auszulesen.
  
-Ein HowTo für den BananaPI ist hier zu finden: [[howto:bananapi:1wire an GPIO4|1wire an GPIO4]]+===== RaspberryPi =====
  
- +Den RaspberryPi kann man gut zum Einlesen der Sensoren verwenden.
-===== Raspberrypi ===== +
- +
-Den Raspberrypi kann man gut zum Einlesen der Sensoren verwenden. <del>Ich benutzt hierzu zwei Raspberrypi, einen für die Datenbank und einen für die Temperatursensoren.</del> Es ist eine blöde Idee einen Rapberry als Datenbankserver zu nehmen, ich hatte jetzt schon 2 SD-Karten-Schäden innerhalb von 4 Monaten.+
  
 [[hardware:controllers:raspberry_pi_erweiterung_klein|Raspberry Pi-Erweiterung_klein]]\\ [[hardware:controllers:raspberry_pi_erweiterung_klein|Raspberry Pi-Erweiterung_klein]]\\
Zeile 14: Zeile 11:
 [[http://www.raspiprojekt.de/anleitungen/schaltungen/9-1wire-mit-temperatursensor-ds18b20.html]] [[http://www.raspiprojekt.de/anleitungen/schaltungen/9-1wire-mit-temperatursensor-ds18b20.html]]
  
-Bei mir musste zusätzlich das Script /etc/modules modufiziert werden:+Ohne VZ-Erweiterung muss unter Umständen zusätzlich das Script /etc/modules modifiziert werden:
  
 <code> <code>
Zeile 22: Zeile 19:
 </code> </code>
  
-Eine Übersicht über die Sensoren bekommt man mit "ls /sys/bus/w1/devices/".+Eine Übersicht über die Sensoren bekommt man mit ''ls /sys/bus/w1/devices/''.
  
-Mit dem Befehl "cat /sys/bus/w1/devices/*/w1_slavekann man dann die Sensoren abfragen.+Mit dem Befehl ''cat /sys/bus/w1/devices/*/w1_slave'' kann man dann die Sensoren abfragen.
  
  
-In der Datenbank des Volkszähler müssen die einzelnen Kanäle angelegt werden. Die Kanalnummer müssen dann in das script übernommen werden [[software/middleware/einrichtung]].+In der Datenbank des Volkszähler müssen die einzelnen Kanäle angelegt werden. Die Kanalnummern müssen dann in das Script bzw. Config-File übernommen werden [[software/middleware/einrichtung]].
  
-Um das ganze dann in die Volkszählerdatenbank zu bekommen brauchen wir wieder perl:+Um das ganze dann in die Volkszählerdatenbank zu bekommen, gibt es mehrere Möglichkeiten. 
 + 
 +==== Einlesen mit vzlogger ==== 
 + 
 +Siehe 1wire an GPIO des BananaPi, Abschnitt [[howto:bananapi:1wire an GPIO4#vzlogger.conf]]. 
 + 
 +==== Einlesen mit perl-Script ====
  
 <code> <code>
Zeile 35: Zeile 38:
 </code> </code>
  
-Das Abfragescript selber "get1wire.pl", das Script mit "chmod ugo+x get1wire.plausführbar machen: +Das Script mit ''chmod ugo+x get1wire.pl'' ausführbar machen: 
-<code>+<code perl get1wire.pl>
 #!/usr/bin/perl #!/usr/bin/perl
  
Zeile 138: Zeile 141:
 */1 *        /root/bin/get1wire >/dev/null 2>&1 */1 *        /root/bin/get1wire >/dev/null 2>&1
 </code> </code>
 +
 +===== BananaPi =====
 +
 +Ein HowTo für den BananaPi ist hier zu finden: [[howto:bananapi:1wire an GPIO4|1wire an GPIO4]]
  
 ===== log_onewire.sh ===== ===== log_onewire.sh =====
Zeile 184: Zeile 191:
  
 Dann ganz normal kompilieren. "Include unix timstamp" funktioniert **so nicht** für Volkszaehler, siehe unten. Dann ganz normal kompilieren. "Include unix timstamp" funktioniert **so nicht** für Volkszaehler, siehe unten.
- 
  
  
Zeile 221: Zeile 227:
   ON STARTUP DO THREAD_START(1wirelog) END   ON STARTUP DO THREAD_START(1wirelog) END
   CONTROL_END   CONTROL_END
-  </code>+</code>
  
 Für control6 ist bei aktiviertem "Onewire naming support" ebenfalls eine neuer Befehlt vorhanden. Für control6 ist bei aktiviertem "Onewire naming support" ebenfalls eine neuer Befehlt vorhanden.
Zeile 230: Zeile 236:
 Beispiel mit aktiviertem Timestamp und Namensupport : Beispiel mit aktiviertem Timestamp und Namensupport :
  
 +<code>
   C6_HEADER(`/* This will be in control6.h */')   C6_HEADER(`/* This will be in control6.h */')
   dnl   dnl
Zeile 255: Zeile 262:
     ON STARTUP DO THREAD_START(onewire) END;     ON STARTUP DO THREAD_START(onewire) END;
   CONTROL_END   CONTROL_END
 +</code>
  
 +===== ESPeasy =====
 +Es gibt auch noch weitere Möglichkeiten einen DS18B20 1-Wire Sensor auszulesen und die Messwerte an die Middleware zu übertragen, z.B.mit einem [[hardware:controllers:espeasy|NodeMCU]].
hardware/channels/sensors/1_wire.1492785713.txt.gz · Zuletzt geändert: 2017/04/21 16:41 von dennis_g