Name: Gottfried
Wohnort: Heilbronn
Staus: Rentner
Ziel: Erster Brauversuch in der 20 Literklasse Anfang September
-----------------------------------------------------
------------- Worum geht es??? -----------------
-----------------------------------------------------
Die webbasierte Software CBP braucht eine webbasierte Hartware auf der 230V Hochspannungsseite z.B.: Edimax SP-2101W.
Vorteile:
Auslagerung der 230V Schiene.
Nur den 1-Wire-Bus löten.
Stromkontrolle (nicht nur schalten, prüfen ob auch die Leistung verbraucht wird).
Verbrauchskontrolle, Braukosten (elektriche Arbeit) in Euro .
Usw.: Notaus, Brauprotokoll, ...
Vorgaben:
Manuel nicht belasten.
Unabhängig von Versionsänderung.
Minimale Programmierkentnisse (Simpel-Programmierer wie ich).
Möglichst wenige Bastelaufgaben.
Wie funktionierts:
GPIO 17 mit GPIO 18 mit Jumper verbinden
Die CBP Software steuert den GPIO 17 Ausgang.
Dieser Ausgang wird neu eingelesen und das Signal per Interrupt ausgewertet.
Steigende Flanke schaltet die Steckdose ein, fallende Fanke schaltet die Steckdose aus.
Für die Regelung eines Einweckautomaten wird bnötigt:
1. CPB Soft.- und Hardware (Rapberry Pi)
2. Eine Edimax SP-2101W Steckdose
3. Die Ip-Adresse eines funktionierenden SP-2101W.
4. Einen Jumper der GPIO 17 mit einen GPIO 18 Eingang verbindet.
5. Zwei HTML-Dateien für das Ein.- und Auschalten der Wlan-Stseckdose.
6. Eine Python-Steuerdatei die Impulsflanken auswertet und die Steckdose steuert.
7. Von der Wlan-Steckdose wird username, passwort und Ip-adresse benötigt.
admin: 1234 @ 191.167.177.26
So sieht der Steuerbefehl für das Einschalten der Wlansteckdose aus.
curl -d@ein.xml http://admin:1234@191.167.177.26:10000/smartplug.cgi
----------------------------------------------------------------
------------------------ Drei neue Dateien-----------------
----------------------------------------------------------------
Wohin mit den drei Dateien:
in den /home/pi/wlan_steckdose Ordner (mkdir wlan_steckdose).
/home/pi/wlan_steckdose/ein.xml
/home/pi/wlan_steckdose/aus.xml
/home/pi/wlan_steckdose/w_steckdose.py
----------------1. Steuerdatei ein.xml ---------------------------------
Code: Alles auswählen
<?xml version="1.0" encoding="utf-8"?>
<SMARTPLUG id="edimax">
<CMD id="setup">
<Device.System.Power.State>ON</Device.System.Power.State>
</CMD>
</SMARTPLUG>
Code: Alles auswählen
<?xml version="1.0" encoding="utf-8"?>
<SMARTPLUG id="edimax">
<CMD id="setup">
<Device.System.Power.State>OFF</Device.System.Power.State>
</CMD>
</SMARTPLUG>
Code: Alles auswählen
#!/usr/bin/python
### w_steckdose.py 16.08.2016 ###
import RPi.GPIO as GPIO
import os
import time
# GPIO initialisieren
GPIO.setmode(GPIO.BOARD)
###
### Fuer einen Kessel z.B.: Maische-Kessel
### Pin 11 (GPIO17) mit Pin 12 (GPIO18) verbinden (Jumper oder Zinnbruecke) ###
###
GPIO.setup(12, GPIO.IN)
channel=12 # PIN 12
# Interrupt-Service-Funktion fuer beide Flanken
def measure(channel):
if GPIO.input(12) == 0:
print "fallende Flanke"
os.system("curl -d@/home/pi/wlan_steckdose/aus.xml http://admin:1234@191.167.177.26:10000/smartplug.cgi -o /dev/null --stde$
else:
print"steigende Flanke"
os.system("curl -d@/home/pi/wlan_steckdose/ein.xml http://admin:1234@191.167.177.26:10000/smartplug.cgi -o /dev/null --stde$
# Interrupt fuer beide Flanken aktivieren
GPIO.add_event_detect(12, GPIO.BOTH, callback=measure)
### Ende Maische-Kessel
while 1:
# nix Sinnvolles tun
time.sleep(100)
Die w_steckdose.py muß auf username, passwort und Ip-adresse angepaßt werden.
-------------------------------------------------------------------------
------------------- als Hintergrundprozess starten ---------------
-------------------------------------------------------------------------
Die w_steckdose.py beim Booten starten:
in sudo nano /etc/rc.local vor exit eintragen:
python /home/pi/wlan_steckdose/w_steckdose.py &
---------------------------------------------
------------------- Bilder------------------
---------------------------------------------
----------------------------------------------------------
-------------- mögliche Jumper für CBP ------------
----------------------------------------------------------
pin 11 -> pin 12 Kessel1
pin 15 -> pin 13 Rührwerk
pin 16 -> pin 18 Summer
pin 19 -> pin 21 Kessel2
------------------------------------------------------
------------------ Literatur ------------------------
-------------------------------------------------------
CraftBeerPi – Anschluss Temperatursensor DS18x20
viewtopic.php?f=58&t=10072&view=unread#unread
Edimax SP 1101W, Funktionsweise, Installation, Ansteuerung im lokalen Netzwerk vom PC aus
http://www.elv.de/topic/edimax-sp-1101w ... c-aus.html
Edimax SP 1101W, Funktionsweise, Installation, Ansteuerung im lokalen Netzwerk vom PC aus
http://www.elv.de/topic/edimax-sp-1101w ... c-aus.html
EDIMAX Smart Plug Switch SP-1101W from Python
http://www.kaltpost.de/?p=2112
Gottfried