Когда лень паять
May. 28th, 2013 02:45 pmПо наводке
dru4 заказал себе набор ардуиновских датчиков. О наборе распыляться особо не буду, всё отлично описал камрад тут . Набор оказался просто шикарный, особо доставили датчики со ртутью ;). В общем крайне рекомендую заказать этот набор самоделкиным. У меня уже расписано использование доброй трети девайсов! Стоит каждую вложенную копеечку.
Для справки, краткое описание содержимого набора, с примерами кода ардуинщиками:
http://www.cutedigi.com/arduino/sensors-kit-for-arduino.html
И на самом DX http://club.dx.com/forums/forums.dx/threadid.1202308
После получения онного набора, я начал понимать ардуинщиков, ведь можно ничего не разводя плат и не паяя, буквально на коленке получить готовый девайс который будет делать то, что ты хочешь.
У меня как раз есть маленькая монтажная платка с FT232RL, и я решил забубенить себе температурный датчик. А то на работе народ ноет по поводу мощи кондиционера. Делается элементарно. Исходя из картинки:

"Схема" подключения датчика
Вешаем GND и +5 В на землю и питание соответсвтенно, а RX и TX платки с микросхемой FT232 заводим вместе на ножку Signal платки с датчиком. В результате должно выглядеть вот так:

Девайс собран в матраце с дырками
Делаем как на сайте http://martybugs.net/electronics/tempsensor/software.cgi :
Инсталим:
apt-get install digitemp
Обратите внимание, что ссылку следует сделать вот так (пример с сайта не работает):
ln -s /usr/bin/digitemp_DS9097 /usr/bin/digitemp
После чего конфигурируем следующим образом:
sudo digitemp_DS9097 -i -s /dev/ttyUSB0 -q -r2000 -c /etc/digitemp.conf
Так термометр будет опрашиваться каждые 2 секунды. Если вы всё сделали правильно, то будет такая надпись:
dlinyj@dlinyj-System:~/tmp$ sudo digitemp_DS9097 -i -s /dev/ttyUSB0 -q -r2000 -c /etc/digitemp.conf
28EB8EB104000026 : DS18B20 Temperature Sensor
ROM #0 : 28EB8EB104000026
Усё, теперя можно юзать, например вот так:
sudo digitemp_DS9097 -a -q -n0 -o"%N %.4C %b %d %H:%M:%S" -c /etc/digitemp.conf
В результате вывод будет таким: вначале будет время с UNIX-формате, потом температура в цельсиях, и далее время в человеческом формате без года. О том как сформировать строку, читайте в манах :). ( Результат работы проги )
Ну и ничего не красит пост, лучше хорошего графика :). График температуры снятого во время обеда (исходные данные получены форматной строкой выше):
( График )
( Для справки код gnuplot )
Вот так просто можносделать троллейбус творить свои поделки из говна и палок. Я в десять раз дольше писал этот пост, чем делал датчик и график.
З.Ы. Всё это можно сделать паяльником и без платок, но чутка дольше.
Для справки, краткое описание содержимого набора, с примерами кода ардуинщиками:
http://www.cutedigi.com/arduino/sensors-kit-for-arduino.html
И на самом DX http://club.dx.com/forums/forums.dx/threadid.1202308
После получения онного набора, я начал понимать ардуинщиков, ведь можно ничего не разводя плат и не паяя, буквально на коленке получить готовый девайс который будет делать то, что ты хочешь.
У меня как раз есть маленькая монтажная платка с FT232RL, и я решил забубенить себе температурный датчик. А то на работе народ ноет по поводу мощи кондиционера. Делается элементарно. Исходя из картинки:

"Схема" подключения датчика
Вешаем GND и +5 В на землю и питание соответсвтенно, а RX и TX платки с микросхемой FT232 заводим вместе на ножку Signal платки с датчиком. В результате должно выглядеть вот так:

Девайс собран в матраце с дырками
Делаем как на сайте http://martybugs.net/electronics/tempsensor/software.cgi :
Инсталим:
apt-get install digitemp
Обратите внимание, что ссылку следует сделать вот так (пример с сайта не работает):
ln -s /usr/bin/digitemp_DS9097 /usr/bin/digitemp
После чего конфигурируем следующим образом:
sudo digitemp_DS9097 -i -s /dev/ttyUSB0 -q -r2000 -c /etc/digitemp.conf
Так термометр будет опрашиваться каждые 2 секунды. Если вы всё сделали правильно, то будет такая надпись:
dlinyj@dlinyj-System:~/tmp$ sudo digitemp_DS9097 -i -s /dev/ttyUSB0 -q -r2000 -c /etc/digitemp.conf
28EB8EB104000026 : DS18B20 Temperature Sensor
ROM #0 : 28EB8EB104000026
Усё, теперя можно юзать, например вот так:
sudo digitemp_DS9097 -a -q -n0 -o"%N %.4C %b %d %H:%M:%S" -c /etc/digitemp.conf
В результате вывод будет таким: вначале будет время с UNIX-формате, потом температура в цельсиях, и далее время в человеческом формате без года. О том как сформировать строку, читайте в манах :). ( Результат работы проги )
Ну и ничего не красит пост, лучше хорошего графика :). График температуры снятого во время обеда (исходные данные получены форматной строкой выше):
( График )
( Для справки код gnuplot )
Вот так просто можно
З.Ы. Всё это можно сделать паяльником и без платок, но чутка дольше.