18B20 по радиоканалу
- Войдите на сайт для отправки комментариев
Пнд, 28/09/2015 - 14:27
Добрый день, имеется устройство с подключенными датчиками температуры 2 шт. 18В20 работающие на одном порту контроллера.
есть огромное желание вынести эти датчики по беспроводному каналу, например поставить 18В20+контроллер+ передатчик а на другой стороне приемник + контроллер и выход контроллера подключить на вход моего устройства что бы он полностью эмулировал датчик
такое возможно?
nRF24 например.
На одной стороне считываешь показания и посылаешь их по радио. На другой периодически проверяешь буфер передатчика.
"На базе дешевого WI-FI модуля ESP8266 можно быстро получить беспроводной датчик температуры, влажности, давления, освещенности-достаточно обновить прошивку модуля и подключить датчики."
Отсюда : http://homes-smart.ru/index.php/oborudovanie/bez-provodov-wi-fi/62-besprovodnoj-datchik-na-baze-esp8266-dlya-servisa-narodmon-ru
что бы немного прояснить ситуацию - прикрепляю файл с мыслями.....
тоесть нужно что бы часы видели как бы подключенные датчики. менять прошивку часов нет возможности.
Вот эта черная полоска - это какой интерфейс?
это 3 провода идущие к даичику (+5, общий и дата) далее по схеме в самих часах стоит резистор 4.7к и идет прямо на контроллер. (15 вывод (pb3) Atmega328
Это Вам еще придется на правой стороне ваять "arduino one-wire slave". Т.е., фактически требуется радио-удлинитель шины one-wire.
если честно то непонял что такое "arduino one-wire slave"
можно по подробнее как аппаратно это реализовать.
заранее спасибо
Датчик DS18B20 подключается/работает по протоколу 1-wire. В логике работы этого протокола - есть один мастер и много слэйвов. Ардуина легко работает мастером, а с использованием ее в виде слэйва, были какие-то заморочки.
Т.е., наиболее сложным будет та часть устройства, которая будет для часов прикидываться слэйвом. Еще надо помнить, что в протоколе обмена 1-wire - достаточно узкие тайминги, а у Вас там дальше радиоканал, со своими тормозами.
http://devicter.ru/search?q=Sensor+Node
Вот нагуглил либу https://github.com/neuoy/OneWireArduinoSlave
По уму надо знать интервай опроса, чтобы оперативно данные отдавать. В идеале надо успевать за "время измерения", которое будет ждать мастер-устройство.
Вот нагуглил либу https://github.com/neuoy/OneWireArduinoSlave
По уму надо знать интервай опроса, чтобы оперативно данные отдавать. В идеале надо успевать за "время измерения", которое будет ждать мастер-устройство.
Ну можно просто опрашивать датчики раз в N (где N, желательно, меньше или равно тому, как часто часы спрашивают температуру у датчика) времени, а ответ хранить в памяти и быстренько отдавать.