аукцион / donate / услуги / RSS / распечатать / вход 
Мой мир
Вконтакте
Одноклассники

[31 августа 2018 | 14 сентября 2018 | 17 сентября 2018]

Подключение DS18B20 к Raspberry Pi 2/3

Наконец-то дождался когда приедет датчик DS18B20 на плате. Самому паять и делать плату под это дело было не с руки ибо ради кусочка тесктолита один на один сантиметра пришлось бы купить пластину десять на десять и потратить на неё почти 150 рублей. В то же время, датчик Dallas DS18B20, два резистора, текстолит, светодиодик, три штырька и шелкография вышли мне всего за 65 рублей. Это дешевле чем купить голый датчик в местном магазине. Напомню, что за, что отвечает на платах Raspberry второй и третьей версии.

Raspberry Pi pin.

Плата с распаяным датчиком подключается тремя проводками: питание, земля, данные. Резистор для работы линии уже распаян на плате, по этому достаточно лишь подключить проводки.

Подключал всё с выключенным питанием, так как пришлось разбирать корпус и сверлить дырочки. И так, после включения питания даём команду:

pi@raspberrypi:~ $ sudo modprobe w1-gpio && sudo modprobe w1_therm

Потом переходим в каталог в который скидываются данные полученные с датчиков. Либо просто распечатываем содержимое этого каталога:

pi@raspberrypi:~ $ ls -l /sys/bus/w1/devices/
total 0
lrwxrwxrwx 1 root root 0 Sep 13 17:06 28-0113163a2b7f -> ../../../devices/w1_bus_master1/28-0113163a2b7f
lrwxrwxrwx 1 root root 0 Sep 13 17:06 w1_bus_master1 -> ../../../devices/w1_bus_master1

Так как подключен всего один датчик, то каталог с серийным номером устройства один. На самом деле можно подключать несколько датчиков паралельно и в каталоге будут появляться каталоги с серийниками всех подключенных датчиков. Можно мониторить десяток термометров по всему дому и плюс смотреть уличную температуру. Всё зависит от вашей фантазии. И так, вот, что лежит в моём каталоге:

Так же нужно редактировать файлик /boot/config.txt и добавить туда одну строчку:

dtoverlay=w1-gpio

Далее можно просмотреть файлик содержащий входящую информацию.

pi@raspberrypi:~ $ cat /sys/bus/w1/devices/28-0113163a2b7f/w1_slave
55 01 4b 46 7f ff 0c 10 be : crc=be YES
55 01 4b 46 7f ff 0c 10 be t=21312

В этой мешанине нас интересуют всего два значения: crc= и t=. Первое значение показывает корректность полученных данных, а второе — температуру. Но второе значение необходимо разделить на тысячу и получим действительую температуру конкретного датчика. Но видя столько знаков не думайте, что датчик имеет такую высокую температурную точность. Реальная точность — это половина градуса. Но данные довольно корректные, я для проверки использовал два спиртовых градусника. Собственно у меня небыло лабораторных термометров, чтобы гарантировать точность. Для бытовых нужд такой точности хватит с запасом.

В дальнейшем я хочу подключить ещё один термометр и выкинуть его на улицу. Тем более, что сейчас наступает зима и хочется иметь довольно актуальные данные по температуре за бортом и в квартире.

Тэги: ИТ, программирование, Raspberry

Отредактировано:2021-01-31 15:11:15




7 комментариев
Имя: Алексей 🖉
Онлайн-метеостанцию мастеришь?

Комментарий оставлен: 2018-09-14 00:00:00


Имя: Алексей 🖉
А фотку датчика на плате можно?
Комментарий оставлен: 2018-09-14 00:00:00


Имя: Orcinus Orca 🖉
Алексей, как-нибудь скину, она не красиво смотрится.
Комментарий оставлен: 2018-09-14 00:00:00


Имя: Алексей 🖉
А вообще цель самоделки какая?
Комментарий оставлен: 2018-09-14 00:00:00


Имя: Orcinus Orca 🖉
Алексей, хочу видеть температуру на улице, чтобы знать, что одеть. А то с телефона смотреть утром лень и холодно.
Комментарий оставлен: 2018-09-14 00:00:00


Имя: Алексей 🖉
Хм, тогда герметизированный датчик надо.
Комментарий оставлен: 2018-09-14 00:00:00


Имя: Orcinus Orca 🖉
Алексей, да, их тьма там специальный металлический герметичный колпачок.
Комментарий оставлен: 2018-09-14 00:00:00



Этот сайт использует файлы cookies, чтобы упростить вашу навигацию по сайту, предлагать только интересную информацию и упростить заполнение форм. Я предполагаю, что, если вы продолжаете использовать мой сайт, то вы согласны с использованием мной файлов cookies. Вы в любое время можете удалить и/или запретить их использование изменив настройки своего интернет-браузера.

Сообщайте мне о замеченных ошибках на: web@orcinus.ru. Все пожелания и советы будут учтены при дальнейшем проектировании сайта. Я готов сотрудничать со всеми желающими. В некоторых случаях, мнение автора может не совпадать с мнением автора! Phone: +7-902-924-70-49.

Top.Mail.Ru
Top.Mail.Ru LiveInternet Rambler's Top100 Яндекс.Метрика