hardware:controllers:ferrariszaehler_lesekopf_rpi_gpio
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
hardware:controllers:ferrariszaehler_lesekopf_rpi_gpio [2014/09/11 16:10] – ronny_w | hardware:controllers:ferrariszaehler_lesekopf_rpi_gpio [2019/08/20 21:15] (aktuell) – Entfernung E-Mailadresse / Kontakt stromsammler10 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
======Ferrariszähler Lesekopf für Raspberry Pi====== | ======Ferrariszähler Lesekopf für Raspberry Pi====== | ||
- | <note important> | ||
{{ : | {{ : | ||
- | In vielen Haushalten wird eine Ferrariszähler vom Energieversorger eingesetzt. Auch bei Photovoltaikanlage | + | In vielen Haushalten wird ein Ferrariszähler vom Energieversorger eingesetzt. Auch bei Photovoltaikanlagen |
- | Mit dem Ferrariszähler Lesekopf für Raspberry Pi kann die Drehscheibe abgetastet und die Anzahl der Durchläufe der Rot Markierung ermittelt werden. Somit ist kein Energieversorgertecniker nötig. | + | Mit dem Ferrariszähler-Lesekopf für Raspberry Pi kann die Drehscheibe abgetastet und die Anzahl der Durchläufe der Rot- Markierung ermittelt werden. Somit kann der Techniker-Einsatz gespart werden. |
- | Eine Test System ist [[http:// | + | Ein Test System ist [[http:// |
===== Features ===== | ===== Features ===== | ||
- | * eine Leuchtdiodenanzeige um den Lesekopf richtig | + | * eine Leuchtdiodenanzeige, um den Lesekopf richtig |
* Potenziometer zur Justage der Empfindlichkeit des Lesekopfs | * Potenziometer zur Justage der Empfindlichkeit des Lesekopfs | ||
- | * Anschluss am GPIO Port des Raspberry | + | * Anschluss |
- | * Erfassung bis zu 7 Stück | + | * Erfassung bis zu 8 S0- Kanäle |
- | * durch Doppelseitiges | + | * durch doppelseitiges |
+ | |||
+ | Die Java- Aplikation kann auch für die Erfassung von LED- / S0-Zähler Impulsen verwendet werden. -> Doku folgt! | ||
===== Stromlaufplan ===== | ===== Stromlaufplan ===== | ||
- | Die Grundschaltung wurde von [[http:// | + | Die Grundschaltung wurde von [[http:// |
+ | |||
+ | {{ : | ||
===== Bestückungsplan ===== | ===== Bestückungsplan ===== | ||
- | Durch die Verwendung der trationellen | + | Durch die Verwendung der traditionellen |
+ | |||
+ | {{: | ||
+ | |||
+ | < | ||
+ | |||
+ | Hier ist die Target3001 Datei hinterlegt, welche nur mit der kostenlosen Target Version von Conrad zu verwenden ist. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | {{: | ||
===== Stückliste ===== | ===== Stückliste ===== | ||
- | ===== Software -> Anbindung an Volkszählermiddleware ===== | ||
- | Zur Datenerfassung verwende ich eine kleine Java Aplikation welche mit Hilfe [[http://pi4j.com/|pi4j]] Bibliotheken den GPIO Port Überwacht und die Impulse erfasst und Summiert. | + | ^ **Position** |
+ | | 1 | R1 | Metallschichtwiderstand 0,25W 1% 1Ok (bei Abnahme 100 Stück) | ||
+ | | 2 | R2 / R4 | Metallschichtwiderstand 0,25W 1% 180r (bei Abnahme 100 Stück ) | 2 | W 76744 | 0, | ||
+ | | 3 | R3 | Metallschichtwiderstand 0,25W 1% 22k (bei Abnahme 100 Stück) | ||
+ | | 4 | C1 | Elko axial 1 µ F 35V | 1 | W45777 | ||
+ | | 5 | R5 | Spindeltrimmer 25k (Einsteller Oben) | 1 | W5 1657 | 1, | ||
+ | | 6 | D1 | LED 3mm Low -Current Rot | 1 | Q13006 | ||
+ | | 7 | X1 | Opto-Reflexkoppler CNY 70 | 1 | Q61519 | ||
+ | | 8 | IC2 | Optokoppler Vishay | ||
+ | | 9 | IC1 | Operationsverstärker | ||
+ | | 10 | - | Modul-Gehäuse ABS Schwarz 54 x 37 x 21 Strapubox | ||
+ | | 12 | - | Flachband -Telefonleitung 4 x 0.09 mm x 1m | ||
+ | | 15 | - | RICHCO - PST-4-01 - DRUCKABSTANDSHALTER TEARDROP (Packung\\ mit 25 Stück ) | 4 | - | | ||
+ | | ** ** **Zwischensumme**|||||7, | ||
+ | | 16 | | ||
+ | | 17 | | Pfostenstecke für GPIO Port | | | | | | ||
+ | | 18 | | Klebeband | ||
+ | | Stand : 11 .09 .20 14 || | ||
- | Auf dem Rapberry muss die Java JRE installiert sein: | + | Im " |
- | < | + | |
+ | ===== Software -> Anbindung an Volkszählermiddleware mit Java Applikation===== | ||
+ | |||
+ | Zur Datenerfassung wird eine Java-Applikation eingesetzt, die mit Hilfe der [[http:// | ||
+ | |||
+ | Auf dem Raspberry muss die Java JRE installiert sein: | ||
+ | <code bash> | ||
+ | |||
+ | ---- | ||
+ | \\ | ||
Für die Installation von [[http:// | Für die Installation von [[http:// | ||
- | < | + | < |
- | < | + | < |
- | Für Debuggin | + | ---- |
+ | \\ | ||
+ | Für Debugging-Zwecke wird [[http:// | ||
- | < | + | < |
- | < | + | < |
- | < | + | < |
+ | ---- | ||
+ | \\ | ||
Der Java s0_logger: | Der Java s0_logger: | ||
- | < | + | |
- | < | + | {{: |
- | < | + | < |
+ | < | ||
+ | <code bash> | ||
+ | < | ||
+ | <code bash>ln -s / | ||
</ | </ | ||
+ | ---- | ||
+ | \\ | ||
Es müssen noch zwei Konfigurationsdateien im Verzeichniss "/ | Es müssen noch zwei Konfigurationsdateien im Verzeichniss "/ | ||
- | config.properties | + | {{: |
< | < | ||
## SERVER eigener Volkszaehler Remote-Server !nicht localhost! | ## SERVER eigener Volkszaehler Remote-Server !nicht localhost! | ||
Zeile 73: | Zeile 121: | ||
## Hier sind die auszulesenden GPIO Ports zu aktivieren; der Port 0-7, aktiv 1 / inaktiv 0 | ## Hier sind die auszulesenden GPIO Ports zu aktivieren; der Port 0-7, aktiv 1 / inaktiv 0 | ||
gpio.ports=1, | gpio.ports=1, | ||
- | |||
- | ## S0 Bezeichungen | ||
- | s0.name=Verbraucher1, | ||
##Hier sind die Impulse/kWh ein zu tragen | ##Hier sind die Impulse/kWh ein zu tragen | ||
s0.impulse=500, | s0.impulse=500, | ||
+ | |||
+ | #maximale Leistungen auf den Kanälen für Plausibilisierung in kW | ||
+ | s0.P_max=5.0, | ||
## S0 Volkszaehler UUID: Erzeugt über das Frontend des VZ, Typ S0-Impulse (z.B. Eklektrische Energie (S0-Impulse)) | ## S0 Volkszaehler UUID: Erzeugt über das Frontend des VZ, Typ S0-Impulse (z.B. Eklektrische Energie (S0-Impulse)) | ||
Zeile 90: | Zeile 138: | ||
s0.duration=100 | s0.duration=100 | ||
</ | </ | ||
+ | \\ | ||
+ | {{: | ||
+ | log4j2.xml}} | ||
+ | <code xml> | ||
+ | <?xml version=" | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | </ | ||
- | log4j.properties | + | |
- | <code> | + | < |
- | # Der Root-Logger | + | < |
- | log4j.rootLogger=ERROR, file | + | < |
+ | </ | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
- | # Konfiguration der Log-Datei | + | <Console name=" |
- | log4j.appender.file=org.apache.log4j.RollingFileAppender | + | < |
- | + | </ | |
- | ## Ziel und Name ggf. anpassen! | + | </ |
- | log4j.appender.file.File=/var/log/ | + | < |
- | log4j.appender.file.MaxFileSize=300KB | + | < |
- | + | <appender-ref ref="file-log" level=" | |
- | # Eine Backup-Datei behalten | + | </Logger> |
- | log4j.appender.file.MaxBackupIndex=20 | + | < |
- | + | < | |
- | log4j.appender.file.layout=org.apache.log4j.PatternLayout | + | </ |
- | log4j.appender.file.layout.ConversionPattern=%d [%t] %-5p %c - %m%n | + | </ |
+ | </ | ||
</ | </ | ||
- | Zum automatischen | + | <note tip> |
- | startS0.sh | + | |
- | < | + | ---- |
+ | \\ | ||
+ | Zum automatischen | ||
+ | \\ | ||
+ | {{: | ||
+ | < | ||
#!/bin/bash | #!/bin/bash | ||
S0=$(pgrep -f " | S0=$(pgrep -f " | ||
- | if [ $S0 == inaktiv ]; | + | |
- | then | + | then |
- | cd / | + | |
- | java -Xmx64m -Djava.awt.headless=true -classpath | + | fi |
- | fi | + | |
</ | </ | ||
+ | |||
+ | <note important> | ||
+ | Also Startscript, | ||
+ | </ | ||
Ausführbar machen: | Ausführbar machen: | ||
- | < | + | < |
- | crontabe | + | crontab |
< | < | ||
@reboot root (cd / | @reboot root (cd / | ||
</ | </ | ||
===== GPIO Anschluss ===== | ===== GPIO Anschluss ===== | ||
+ | |||
+ | Der Ferrariszähler Lesekopf benötig eine Versorgungsspannung von 5V. Daher ist es nötig, den RJ12 Buchsenkontakt 2 mit dem PIN 2 der GPIO-Leiste zu Verbinden (+5V). Der RJ12 Buchsenkontakt 4 muss mit dem PIN 6 der GPIO-Leiste verbunden werden (Ground). | ||
+ | |||
+ | Die CNY17 Ausgänge, RJ12 Buchsenkontakte 3 und 5, sind mit dem gewünschten GPIO-Port zu Verbinden. Wobei zu beachten ist, dass der RJ12 Buchsenkontakt 3 an das +3V Signal anzuschliesen ist und der RJ12 Buchsenkontakt 5 an einen der folgenden GPIO-Ports (=Ground): | ||
+ | |||
+ | {{: | ||
+ | ^ GPIO Header | ||
+ | | 11 | 1 | | ||
+ | | 12 | 2 | | ||
+ | | 13 | 3 | | ||
+ | | 15 | 4 | | ||
+ | | 16 | 5 | | ||
+ | | 18 | 6 | | ||
+ | | 22 | 7 | | ||
+ | | 7 | 8 | | ||
+ | {{: | ||
+ | ^ RJ12 Buchse | ||
+ | | 1 | - | - | | ||
+ | | 2 | +5V (2 / 4) | gelb | | ||
+ | | 3 | +3V (1 / 17) | grün | | ||
+ | | 4 | Ground (6 / 9 /\\ 14 / 20 / 25) | rot | | ||
+ | | 5 | GPIO Kanal\\ s0_logger | ||
+ | | 6 | - | - | | ||
+ | {{: | ||
+ | |||
+ | ===== Montage am Zähler ===== | ||
+ | |||
+ | < | ||
+ | |||
===== Bilder ===== | ===== Bilder ===== | ||
- | {{: | + | {{: |
- | {{: | + | {{: |
- | {{: | + | \\ |
+ | {{: | ||
+ | {{: | ||
+ | \\ | ||
+ | {{: |
hardware/controllers/ferrariszaehler_lesekopf_rpi_gpio.1410444608.txt.gz · Zuletzt geändert: 2014/09/11 16:10 von ronny_w