Температурные датчики DS18B20 очень популярны. Они стоят очень дёшево, выдают температуру в цифровом виде, их достаточно легко подключить к микроконтроллерам по однопроводной шине 1-Wire таким образом, что одной ножки микроконтроллера достаточно чтобы адресовать несколько датчиков и считывать с них показания.
Я заказал несколько таких датчиков на eBay. Кроме того, у меня в распоряжении имелся LCD-индикатор размером 2 строки по 16 символов, оказавшийся, впрочем, слегка бракованным (некорректно отображаются 12 и 13-й символы в каждой строке), и мне уже давно хотелось попробовать его в действии. К моему удобству к этому ЖК-модулю был уже припаян I2C-адаптер на чипе PCF8574, точь в точь такой, как описан в этой статье. Из этой же статьи я почерпнул ряд полезных ссылок, в частности на библиотеку для работы LCD-экраном через этот I2C-адаптер.
Подружить Arduino UNO с температурным датчиком DS18B20 оказалось очень нетрудно. Датчик подключается через шину 1-Wire, пртокол которой можно программно реализовать в Arduino. Само собой, для этого имеется готовая библиотека. Кроме этого я использовал ещё одну внешнюю библиотеку для самого датчика DS18B20. В итоге я собрал вот такую схему:
... и написал такой нехитрый скетч:
Собранный термометр выглядит так:
На фотографии один датчик лежит просто так и показывает температуру 27.44 С, другой прикреплен кусочком изоленты к кружке с горячим чаем и показывает 55.00 С.
Я заказал несколько таких датчиков на eBay. Кроме того, у меня в распоряжении имелся LCD-индикатор размером 2 строки по 16 символов, оказавшийся, впрочем, слегка бракованным (некорректно отображаются 12 и 13-й символы в каждой строке), и мне уже давно хотелось попробовать его в действии. К моему удобству к этому ЖК-модулю был уже припаян I2C-адаптер на чипе PCF8574, точь в точь такой, как описан в этой статье. Из этой же статьи я почерпнул ряд полезных ссылок, в частности на библиотеку для работы LCD-экраном через этот I2C-адаптер.
Подружить Arduino UNO с температурным датчиком DS18B20 оказалось очень нетрудно. Датчик подключается через шину 1-Wire, пртокол которой можно программно реализовать в Arduino. Само собой, для этого имеется готовая библиотека. Кроме этого я использовал ещё одну внешнюю библиотеку для самого датчика DS18B20. В итоге я собрал вот такую схему:
... и написал такой нехитрый скетч:
Собранный термометр выглядит так:
На фотографии один датчик лежит просто так и показывает температуру 27.44 С, другой прикреплен кусочком изоленты к кружке с горячим чаем и показывает 55.00 С.
Комментариев нет:
Отправить комментарий