Pour planter le décor, j'utilise la solution Domoticz avec la configuration suivante :
- Raspberry Pi B (celui à 24GPIO et seulement 2 ports USB)
- RFLink Nodo pour la partie radio 433Mhz
- des sondes de températures de ce type et de celui-là
- mes volets roulants filaires sont équipés de relais double canaux 5V High level et sont pilotés par un Arduino Mega2560 avec Shield ethernet - sous domoticz ça se traduit par des DummysSwitch qui appelent un script en bash pour solliciter l'arduino. 2 relais : 1 dirige la phase vers l'interrupteur classique ou vers le 2ème relais, qui lui fait monter/descendre, ainsi je peux toujours jouer avec mes interrupteurs muraux - point négatif : pas de retour d'état.
- Un autre arduino (ATMEGA328 5v 16Mhz) et une sonde ultrasonique JSN-SR04T m'indique la hauteur de vide dans ma cuve à fioul, la trigonométrie me permet d'en déduire le volume de fioul encore présent.
Ma dernière action consiste à monitorer ma consommation électrique (chauffage fioul mais radiateur à inertie sèche en appoint, chauffe eau, plaque de cuisson, four,...). Ayant encore un compteur électrique ancienne génération (roue mécanique), j'ai ajouté à mon tableau un SDM220-Modbus pour pas très cher.
J'y ai joint un module USB-RS485 et j'ai fouiné un peu sur le net.
Branchements courant faible : 3 fils (GND/ A / B)
Installing SDM120c
Code : Tout sélectionner
sudo apt-get install libmodbus5 libmodbus-dev git
git clone https://github.com/gianfrdp/SDM120C.git
cd SDM120C
make clean && make
sudo make install
cd ..
Code : Tout sélectionner
sdm120c -P N /dev/ttyUSB0 -2 -t -v -c -pCode : Tout sélectionner
sdm120c -P N /dev/ttyUSB0 -p -t -qDans notre cas : /home/pi/domoticz/scripts/user/sdm220.sh
Code : Tout sélectionner
SERVER="http://127.0.0.1:8080" #server location
IDX=1974 #id of your device
VALUES=NOK #Defines the error value
while [ "$VALUES" = "NOK" ] #repeats reading while getting an error "NOK"
do
VALUES=`/usr/local/bin/SDM120C/sdm120c /dev/ttyUSB0 -P N -p -t -q` #p=power / t=total / q=short output
done
POWER=`echo $VALUES | cut -d ' ' -f1`
TOTAL=`echo $VALUES | cut -d ' ' -f2`
curl -s {$SERVER"/json.htm?type=command¶m=udevice&idx="$IDX"&nvalue=0&svalue="$POWER";"$TOTAL""} #send values to domoticz
Code : Tout sélectionner
crontab -e
*/5 * * * * /home/pi/domoticz/scripts/user/sdm220.sh >/dev/null 2>&1