Вмъкване на стойностите от сензора за температура и налягане във видеото от камерата на raspberry pi.
Предварително е необходимо да сте подкарали motion за raspberry pi и сензора за температура и налягане BMP085 или BMP180.
След това активираме уеб-контрол в motion.conf като добавяме или променяме следните параметри: webcontrol_port, webcontrol_localhost и webcontrol_html_output.
# HTTP Based Control ############################################################ # TCP/IP port for the http server to listen on (default: 0 = disabled) webcontrol_port 8081 # Restrict control connections to localhost only (default: on) webcontrol_localhost on # Output for http server, select off to choose raw text plain (default: # on) webcontrol_html_output on ############################################################
Рестартираме motion за да се активират промените.
/etc/init.d/motion restart
Документация за всички motion параметри може да намерите тук.
Инсталираме cURL с който се отварят уеб страници за да може да командваме motion през уеб- интерфейса
sudo apt-get install curl
След това създаваме три файла pressure.py, temp.py и set_t_p.sh със следните параметри.
pressure.py
#!/usr/bin/python import Adafruit_BMP.BMP085 as BMP085 sensor = BMP085.BMP085() print round((sensor.read_pressure() * 0.001),2)
temp.py
#!/usr/bin/python import Adafruit_BMP.BMP085 as BMP085 sensor = BMP085.BMP085() print '{0:0.2f}'.format(sensor.read_temperature())
set_t_p.sh
#!/bin/bash PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin. TEMP_C=`sudo python /home/pi/temp.py` PRESSURE_PA=`sudo python /home/pi/pressure.py` /usr/bin/curl -s http://127.0.0.1:8081/0/config/set?text_left=Temp%20%20%20%20%20%20%20%20:%20$TEMP_C%20C\\nPressure%20%20%20%20:%20$PRESSURE_PA%20kPa
За добавяне на интервал ползваме %20 защото празното поле се възприема като грешка от програмата. Нов ред с \\n
По същият начин може да се добавят и стойности от операционната, например:
Local_IP=`ip addr | grep 'state UP' -A2 | tail -n1 | awk '{print $2}' | cut -f1 -d'/'`
Правим файловете да може да се екзекутират от всички – execute с командата:
chmode +x set_t_p.sh chmode +x temp.py chmode +x pressure.py
След това задаваме в crontab set_t_p.sh да се изпълнява на всеки 5 минути
sudo crontab -e
*/5 * * * * /home/pi/bin/find_up_and_set.sh > /dev/null