Wchodzę w to i chociaż mogę wyświetlać temperaturę przez SSH, mam problem z wyświetlaniem jej na małej stronie, którą skonfigurowałem na moim Pi z Apache2. Podążyłem za tym przykładem http://www.raspberrypi.org/phpBB3/viewtopic.php?t=35487&p=310038, który zawierał AJAX i skrypt w katalogu cgi-bin, ale pojawia się błąd, mówiąc o tym $ was not defined
i będąc naprawdę nieświadomy z JavaScriptem nie mam pojęcia, gdzie leży błąd. Zastanawiam się, czy mógłby to być katalog cgi-bin. Właśnie go stworzyłem i nie mogłem znaleźć informacji o tym, czy muszę zrobić coś specjalnego, aby umożliwić jego użycie w skryptach. Czy ktoś może odpowiedzieć na to pytanie? Jeśli jest to istotne, korzystam z najnowszej wersji Raspbian.
W końcu chcę zarejestrować wartości w bazie danych i z nich wykres, ale najpierw muszę zacząć. :)
Główne pytanie brzmi: jak mogę wyświetlić temperaturę na mojej stronie internetowej z czujnika wewnętrznego?
EDYTOWAĆ
Wypróbuję pierwszą sugestię później wieczorem, kiedy wrócę do domu, ale szybko dostałem drugą (Lenik), która wydaje się działać dobrze. Musiałem jednak wprowadzić pewne zmiany, aby go uruchomić. Skrypt nie utworzyłby pliku rrd, więc utworzyłem go ręcznie, używając składni użytej w skrypcie. Zmodyfikowałem również UPDATE
polecenie, ponieważ nie podobało mu się przekazywana wartość. Musiałem usunąć tę width
część GRAPH
polecenia, ponieważ spowodowało to również błąd. Następnie na końcu dodałem cp
tak, że umieszcza plik w katalogu obrazów witryny, a następnie dodaje*/5 * * * * /home/root/scripts/temprec.sh >/dev/null 2>&1
do mojego crontab, więc działa co 5 minut. Wygląda na to, że działa, ale jak na razie tylko 4 próbki trudno jest na pewno wiedzieć. W ciągu około godziny znajdę lepszy pomysł, jeśli moje zmiany zadziałały.
#!/bin/bash
#
# update .rrd database with CPU temperature
#
# $Id: update_cputemp 275 2013-05-16 05:20:56Z lenik $
# Thanks to Lenik @ Raspberrypi.stackexchange.com.
cd /path/to/scripts
# read the temperature and convert .59234. into .59.234. (degrees celsius)
TEMPERATURE=`cat /sys/class/thermal/thermal_zone0/temp`
TEMPERATURE=`echo -n ${TEMPERATURE:0:2}; echo -n .; echo -n ${TEMPERATURE:2}`
/usr/bin/rrdtool update cputemp.rrd N:$TEMPERATURE
/usr/bin/rrdtool graph cputemp.png DEF:temp=cputemp.rrd:cputemp:AVERAGE LINE2:temp#00FF00
cp /path/to/scripts/cputemp.png /path/to/website/images