четвртак, 26. март 2015.

DS 18B20 i Raspberry Pi

Nekako svi počnu ovako. Kupiš Raspberry Pi pa prvo provališ kako se instalira operativni sistem na SD karticu (Raspbian), a onda prvi projekat merenje temperature. Pošto već imam DS18B20, "čip sa jednom žicom", i upravo sam instalirao RPI-monitor koji ima mogućnost da mu dodaš svašta nešto da prikazuje, dodaću mu senzor za ambijentalnu temperaturu.
Ali ne ide sve tako jednostavno, iz nekog razloga nije hteo da učita modul w1-gpio. I za to ima rešenja u fajlu /boot/conf.txt treba dodati sledecu liniju da bi proradeo w1-gpio modul:

dtoverlay=w1-gpio,gpiopin=4

Pa onda da ne pozivam module ručno i da se učitaju prilikom podizanja sistema u fajlu /etc/modules na kraju je dodato:

w1-gpio
w1-therm

Onda se restartuje Raspberry Pi pa se testira da li radi senzor.

# ls /sys/bus/w1/devices
# cat /sys/bus/w1/devices/10-000802ade996/w1_slave

I...

2d 00 4b 46 ff ff 05 10 77 : crc=77 YES
2d 00 4b 46 ff ff 05 10 77 t=22437

Radi. 22.4 stepena Celzijusa.
Zatim se zabeleži ime senzora (10-000802ade996 u mom slučaju) i dodaju se sledeće linije u fajlu /etc/rpimonitor/template/temperature.conf

dynamic.16.name=room_temp
dynamic.16.source=/sys/bus/w1/devices/10-000802ade996/w1_slave
dynamic.16.regexp=t=(\d+)$
dynamic.16.postprocess=$1/1000

dynamic.16.rrd=GAUGE

web.status.1.content.4.line.2="Ambiant Temperature: <b>"+data.room_temp+"&deg;C</b>"

web.statistics.1.content.8.graph.2=room_temp

web.statistics.1.content.8.ds_graph_options.room_temp.label=Ambiant Temperature (°C)

Tako sad imamo u RPI-monitor i podatak o trenutnoj ambijentalnoj temperaturi, a u statistici imamo grafik za istu.

Sta dalje???