подключение датчиков 1-wire: вопрос дилетанта
подключение датчиков 1-wire: вопрос дилетанта
Здравствуйте.
не сильно пока разбираюсь в схемотехники и читая о 1-wire не понял один момент:
везде пишут что датчики подключаются к ведущим устройствам напрямую и просто, ну например перем от этого http://www.ab-log.ru/files/File/Datasheets/DS9490.pdf контакты 1-Wire Data и 1-Wire Return и цепляются на контакты DS18B20 Data Input и Grand соответственно, и третий контакт замыкают с первым и с должно работать...
зачем тогда нужна сложная обвязка для датчика температуры с сайта http://www.radioseti.ru/ ?
объясните пожалуйста.
спасибо.
не сильно пока разбираюсь в схемотехники и читая о 1-wire не понял один момент:
везде пишут что датчики подключаются к ведущим устройствам напрямую и просто, ну например перем от этого http://www.ab-log.ru/files/File/Datasheets/DS9490.pdf контакты 1-Wire Data и 1-Wire Return и цепляются на контакты DS18B20 Data Input и Grand соответственно, и третий контакт замыкают с первым и с должно работать...
зачем тогда нужна сложная обвязка для датчика температуры с сайта http://www.radioseti.ru/ ?
объясните пожалуйста.
спасибо.
Re: подключение датчиков 1-wire: вопрос дилетанта
DS18B20 может работать в двух режимах питания: паразитное (берется прямо из шины) и внешнее (от 3,3 до 5В).
Внешнее питание необходимо в двух случаях:
1. Когда мы хотим, чтобы шина оставалась свободной во время конвертации температуры. 12 битная конвертация занимает 750 мс. При использовании паразитного питания в это время шина занята, то есть никто больше ничего передавать по ней не может. 750мс - это 0,75 секунды. В нагруженной сети это может иметь существенное значение.
2. При измерении температуры свыше 100 градусов.
Напряжение 3,3-5В очень небольшое и на длинных линиях возможно падения напряжения ниже допустимого порога. В этих случаях используют повышенное напряжение (например, 12В), а в обвязку датчика включают элементы для стабилизации напряжения.
Внешнее питание необходимо в двух случаях:
1. Когда мы хотим, чтобы шина оставалась свободной во время конвертации температуры. 12 битная конвертация занимает 750 мс. При использовании паразитного питания в это время шина занята, то есть никто больше ничего передавать по ней не может. 750мс - это 0,75 секунды. В нагруженной сети это может иметь существенное значение.
2. При измерении температуры свыше 100 градусов.
Напряжение 3,3-5В очень небольшое и на длинных линиях возможно падения напряжения ниже допустимого порога. В этих случаях используют повышенное напряжение (например, 12В), а в обвязку датчика включают элементы для стабилизации напряжения.
Re: подключение датчиков 1-wire: вопрос дилетанта
Спасибо за ответ.
Учитывая что я планирую использовать 5-6 датчиков на шине до 50-60 то думая мне лучше выбрать схему с внешним питание? т.е. уже с обвязкой. только вот разница в цене сильно огорчает 80 рублей против 270.
а какой посоветуете использовать источник питания, при условие что на шине будет еще несколько исполнительных элементов: то что снимается с USB компьютера и подается на выход адаптера DS9490, или что-то типа этого датчика питания: http://benuks.ru/oborud.html#7
хотя, насколько я понял, они дают разное: адаптер 5 вольт на 1 контакт,датчик питания 12 и 18 на второй и пятый контакт....
Учитывая что я планирую использовать 5-6 датчиков на шине до 50-60 то думая мне лучше выбрать схему с внешним питание? т.е. уже с обвязкой. только вот разница в цене сильно огорчает 80 рублей против 270.
а какой посоветуете использовать источник питания, при условие что на шине будет еще несколько исполнительных элементов: то что снимается с USB компьютера и подается на выход адаптера DS9490, или что-то типа этого датчика питания: http://benuks.ru/oborud.html#7
хотя, насколько я понял, они дают разное: адаптер 5 вольт на 1 контакт,датчик питания 12 и 18 на второй и пятый контакт....
Re: подключение датчиков 1-wire: вопрос дилетанта
5-6 датчиков на 60 метровой шине вполне прекрасно будут себя чувствовать и на паразитном питании.
В качестве источника питания можно использовать любой качественный блок питания, в том числе БП компьютера, если они будут подходить по напряжению.
В качестве источника питания можно использовать любой качественный блок питания, в том числе БП компьютера, если они будут подходить по напряжению.
Re: подключение датчиков 1-wire: вопрос дилетанта
Доброе время суток.
В электронике вообще и в 1wire в частности чайник, наставьте на путь истинный пожалуйста
Есть DS9490R и DS18B20, исходные данные:
- соединены витой парой, длина не больше полуметра
- 5в контроллера соединены с 5в датчика, OW (Wire data) контроллера с DQ датчика, GND_OW контроллера с GND датчика, вроде все прозвонил - контакт есть, КЗ нет
- контроллер подсоединен в USB-порт сервера
- на сервере Убунта, owfs 2.8p13 установлена из репозитория
- выполнена команда: "owfs -uall --debug /mnt/1wire/"
- содержимое папки /mnt/1wire:
- устройство, которое начинается на 05 - в файле type записано 'DS2405' (откуда это? У меня только только 1 контроллер и 1 датчик)
- устройство на 10 - температурный датчик, в файле type строка 'DS18S20'
Проблема - в файле temperature каждый раз разное значение температуры, меняется примерно в диапазоне от 0 до 100, причем абсолютно хаотично, безо всякой видимой закономерности
Что я сделал не так? Что можно проверить? Мог я перегреть датчик (припаивал к ножкам проводки, но датчик все время держал пальцами - горячо, но терпимо)?
P.S. при запуске owfs имею такой лог:
При выполении одной команды 'cat /mnt/1wire/10.67C6697351FF/temperature':
В электронике вообще и в 1wire в частности чайник, наставьте на путь истинный пожалуйста
Есть DS9490R и DS18B20, исходные данные:
- соединены витой парой, длина не больше полуметра
- 5в контроллера соединены с 5в датчика, OW (Wire data) контроллера с DQ датчика, GND_OW контроллера с GND датчика, вроде все прозвонил - контакт есть, КЗ нет
- контроллер подсоединен в USB-порт сервера
- на сервере Убунта, owfs 2.8p13 установлена из репозитория
- выполнена команда: "owfs -uall --debug /mnt/1wire/"
- содержимое папки /mnt/1wire:
Код: Выделить всё
05.4AEC29CDBAAB
10.67C6697351FF
alarm
bus.0
bus.1
settings
simultaneous
statistics
structure
system
uncached
- устройство на 10 - температурный датчик, в файле type строка 'DS18S20'
Проблема - в файле temperature каждый раз разное значение температуры, меняется примерно в диапазоне от 0 до 100, причем абсолютно хаотично, безо всякой видимой закономерности
Что я сделал не так? Что можно проверить? Мог я перегреть датчик (припаивал к ножкам проводки, но датчик все время держал пальцами - горячо, но терпимо)?
P.S. при запуске owfs имею такой лог:
Код: Выделить всё
owfs -uall --debug /mnt/1wire/
FUSE library version: 2.8.6
nullpath_ok: 0
unique: 1, opcode: INIT (26), nodeid: 0, insize: 56
INIT: 7.17
flags=0x0000047b
max_readahead=0x00020000
INIT: 7.12
flags=0x00000011
max_readahead=0x00020000
max_write=0x00020000
unique: 1, success, outsize: 40
Код: Выделить всё
unique: 2, opcode: LOOKUP (1), nodeid: 1, insize: 56
LOOKUP /10.67C6697351FF
getattr /10.67C6697351FF
NODEID: 2
unique: 2, success, outsize: 144
unique: 3, opcode: LOOKUP (1), nodeid: 2, insize: 52
LOOKUP /10.67C6697351FF/temperature
getattr /10.67C6697351FF/temperature
NODEID: 3
unique: 3, success, outsize: 144
unique: 4, opcode: OPEN (14), nodeid: 3, insize: 48
open flags: 0x8000 /10.67C6697351FF/temperature
open[0] flags: 0x8000 /10.67C6697351FF/temperature
unique: 4, success, outsize: 32
unique: 5, opcode: READ (15), nodeid: 3, insize: 80
read[0] 32768 bytes from 0 flags: 0x8000
read[0] 12 bytes from 0
unique: 5, success, outsize: 28
unique: 6, opcode: READ (15), nodeid: 3, insize: 80
read[0] 32768 bytes from 12 flags: 0x8000
read[0] 0 bytes from 12
unique: 6, success, outsize: 16
unique: 7, opcode: FLUSH (25), nodeid: 3, insize: 64
unique: 7, error: -38 (Function not implemented), outsize: 16
unique: 8, opcode: RELEASE (18), nodeid: 3, insize: 64
release[0] flags: 0x8000
unique: 8, success, outsize: 16
Re: подключение датчиков 1-wire: вопрос дилетанта
owfs, по всей видимости, не видит DS9490R, а соответственно и ваш DS18B20
Указанные вами адреса 05... и 10... - это фейковые устройства. Во всяком случае 10.67C6697351FF точно зашит в owfs как отладочный виртуальный датчик для тестирования сети без железа.
Проверяйте подключение DS9490R.
Скомпилируйте из исходников последнюю версию 2.8p15. В ней были устранены некоторые проблемы работы с USB-мастерами.
Указанные вами адреса 05... и 10... - это фейковые устройства. Во всяком случае 10.67C6697351FF точно зашит в owfs как отладочный виртуальный датчик для тестирования сети без железа.
Проверяйте подключение DS9490R.
Скомпилируйте из исходников последнюю версию 2.8p15. В ней были устранены некоторые проблемы работы с USB-мастерами.
Re: подключение датчиков 1-wire: вопрос дилетанта
понял, спасибо, попробую
Re: подключение датчиков 1-wire: вопрос дилетанта
Скомпилил и установил версию 2.8p15, исчезли все датчики (и заодно каталог bus.1), но присоединенный температурный DS18B20 так и не появился. Попробовал уже его поменять - не видит
Датчик с контроллером соединены так:
- Vdd контроллера соединены с Vdd датчика
- OW (Wire data) контроллера с DQ датчика,
- GND_OW контроллера с GND датчика
- GND (земля контроллера) и SUSO (5 контакт контроллера) в воздухе, может это неправильно?
Что еще можно проверить?
P.S. lsusb контроллер видит
Датчик с контроллером соединены так:
- Vdd контроллера соединены с Vdd датчика
- OW (Wire data) контроллера с DQ датчика,
- GND_OW контроллера с GND датчика
- GND (земля контроллера) и SUSO (5 контакт контроллера) в воздухе, может это неправильно?
Что еще можно проверить?
P.S. lsusb контроллер видит
Re: подключение датчиков 1-wire: вопрос дилетанта
Armann, отключите от DS9490R все датчики. Мастер - такой же элемент сети и он должен быть виден под адресом типа 81.*
Если мастер не виден, значит есть проблемы с мастером или параметрами запуска owfs.
Если мастер появляется, но при подключении датчика вся сеть пропадает, значит неправильно подключается датчик.
Если мастер не виден, значит есть проблемы с мастером или параметрами запуска owfs.
Если мастер появляется, но при подключении датчика вся сеть пропадает, значит неправильно подключается датчик.
Re: подключение датчиков 1-wire: вопрос дилетанта
Разобрался... в даташите на датчик я с чего то решил что датчик изображен сверху, несмотря на надпись 'Bottom view'
Соответственно датчик у меня был подключен строго наоборот
Сейчас все работает, спасибо за помощь!
Соответственно датчик у меня был подключен строго наоборот
Сейчас все работает, спасибо за помощь!
Re: подключение датчиков 1-wire: вопрос дилетанта
update. Решил вопрос, дело было в витой паре - обжал лишнее в коннекторе для DS9490R, а оно перемкнуло походу c другого конца. Выщипал лишние контакты в коннекторе и обжал по новой - все работает.продолжу отсюда
Прошло время, разобрался немного. Теперь такая проблема, есть датчик температурный ds18b20, схема с сайта бенукс. Не хочет работать почему-то (мастер в сети есть, термометр не виден, осциллографа у меня нет ). Подключаю паразитно - все ок. подключаю через схему с питанием 5V (проверил мультиметром - реально 5V) - тишина. "Земля" одна , питание от БП 220-12V. Плюс есть напряжение между 5V и data - это нормально? со стабилитроном КС156 - 3.96 V, без него 2,6 где-то. - это все замерено на ножках ds18b20 .
Уже и дату напрямую (без резистора) припаивал и кс156 убирал, не пойму, что не хватает. В контроллер подключено только 1-wire data и земля.
Подскажите куда копать?
ps. ds18b20 покупал здесь! должно же быть внешнее питание (читал вроде есть вариант PAR - но на моих ничего такого не написано).
Последний раз редактировалось Vermus 03 янв 2014, 21:41, всего редактировалось 1 раз.
-
- Сообщения: 338
- Зарегистрирован: 20 дек 2012, 15:52
- Откуда: Саратов Saratov
- Контактная информация:
Re: подключение датчиков 1-wire: вопрос дилетанта
Как практический вариант попробуйте так:
Для датчиков лучше использовать гибкий провод в разно цветной оплетке (можно от UTP (только многожильный от Патч-корда) припаиваем к датчику DS18b20 провода длинной 30-40 см. Изолируем выводы термоусадкой 1.5 и общей 4 с натяжкой на корпус. Получается удобный элемент , провода скручиваем в витую "тройку" и с учетом цвета например оранжевый +5. Синй общий бело-синий дата) для удобства провода фиксируем через 10 15 см термоусадкой. Если нужно герметичность то на корпус можно одеть ещё термоусадку, и с добавлением например парафина (от свечки) немного (нагреть для обжатия ( излишки выйдут, а пространство будет полностью заполнено.) lдалее делаем такой же модуль из микросхемы LM78l05 также ее обжимаем термоусадкой и делаем выводы. Соединяем провода +5 в. общий и на вход LM78l05 будем подавать питание 12 в. Ток потребления датчика небольшой и никакой нагрев стабилизатора не страшен.
Полученные датчики очень просто вяжутся в систему 1-ware/ т.е цепляются к проводу (витая пара) (например пайка) основной шины и распределяются в местах их установки.
Можно применять разъемы и коннекторы RJ-12(45) но иногда это не удобно.
А так данный вариант прокладки например в каналах плинтуса очень прост.
Для датчиков лучше использовать гибкий провод в разно цветной оплетке (можно от UTP (только многожильный от Патч-корда) припаиваем к датчику DS18b20 провода длинной 30-40 см. Изолируем выводы термоусадкой 1.5 и общей 4 с натяжкой на корпус. Получается удобный элемент , провода скручиваем в витую "тройку" и с учетом цвета например оранжевый +5. Синй общий бело-синий дата) для удобства провода фиксируем через 10 15 см термоусадкой. Если нужно герметичность то на корпус можно одеть ещё термоусадку, и с добавлением например парафина (от свечки) немного (нагреть для обжатия ( излишки выйдут, а пространство будет полностью заполнено.) lдалее делаем такой же модуль из микросхемы LM78l05 также ее обжимаем термоусадкой и делаем выводы. Соединяем провода +5 в. общий и на вход LM78l05 будем подавать питание 12 в. Ток потребления датчика небольшой и никакой нагрев стабилизатора не страшен.
Полученные датчики очень просто вяжутся в систему 1-ware/ т.е цепляются к проводу (витая пара) (например пайка) основной шины и распределяются в местах их установки.
Можно применять разъемы и коннекторы RJ-12(45) но иногда это не удобно.
А так данный вариант прокладки например в каналах плинтуса очень прост.
Re: подключение датчиков 1-wire: вопрос дилетанта
Что бы не создавать лишнюю тему - спрошу здесь:
как лучше герметизировать датчики температуры для уличных условий, а особенно для прокладки в грунте?
как лучше герметизировать датчики температуры для уличных условий, а особенно для прокладки в грунте?
-
- Сообщения: 395
- Зарегистрирован: 17 фев 2013, 23:49
- Откуда: Волгодонск, Ростовская обл.
- Контактная информация:
Re: подключение датчиков 1-wire: вопрос дилетанта
Вот вариант того, что у меня торчит из балкона на улице http://umkv.ru/25-ili-to-chto-vne-kvartiry_173.htm
Ливни, - 25 градусов - все выдержало. Причем у меня на паразитном питании.
Ливни, - 25 градусов - все выдержало. Причем у меня на паразитном питании.
Re: подключение датчиков 1-wire: вопрос дилетанта
назрел вопрос, читал что 1-ware не любит ответвлений. это истинно только при паразитном питании, или наличие внешнего питания никак не влияет на этот момент ?
-
- Сообщения: 338
- Зарегистрирован: 20 дек 2012, 15:52
- Откуда: Саратов Saratov
- Контактная информация:
Re: подключение датчиков 1-wire: вопрос дилетанта
Вопрос ответвлений, объясняется не тем как питается конкретный датчик, а тем что при любом способе контакта ответвления от основного ствола шины данное сопряжение порождает гармоники и отраженные сигналы, которые могут сильно искажать фронты (переход в 1 или 0) и как следствие сеть падает.
Конечно в DS 9490r присутствует механизм обработки подобных искажений но его возможности тоже не безграничны.
В то же время, на форумах присутствуют положительные отклики (хотя я тут скептик и не сторонник отхода от рекомендуемого стандарта) о работе древовидных схем сети. Так что всяко бывает.
Но наверное все таки разумнее будет следовать рекомендациям разработчика.
Еще момент, понятно в любой момент времени по сети общаются только мастер сети и датчик (или другое), остальные как правило "слушают".. то например датчики температуры можно так соединять, но всего несколько (штук 5-7). Ключи как правило такой вариант не приемлют у них сложнее протокол обмена и они чувствительнее к помехам.
И еще паразитное питание, при всей "красоте" и простоте все таки скорее вынужденный вариант, я такой нигде не применяю.
Конечно в DS 9490r присутствует механизм обработки подобных искажений но его возможности тоже не безграничны.
В то же время, на форумах присутствуют положительные отклики (хотя я тут скептик и не сторонник отхода от рекомендуемого стандарта) о работе древовидных схем сети. Так что всяко бывает.
Но наверное все таки разумнее будет следовать рекомендациям разработчика.
Еще момент, понятно в любой момент времени по сети общаются только мастер сети и датчик (или другое), остальные как правило "слушают".. то например датчики температуры можно так соединять, но всего несколько (штук 5-7). Ключи как правило такой вариант не приемлют у них сложнее протокол обмена и они чувствительнее к помехам.
И еще паразитное питание, при всей "красоте" и простоте все таки скорее вынужденный вариант, я такой нигде не применяю.
-
- Сообщения: 395
- Зарегистрирован: 17 фев 2013, 23:49
- Откуда: Волгодонск, Ростовская обл.
- Контактная информация:
Re: подключение датчиков 1-wire: вопрос дилетанта
А я не смог справиться с т=75 (или 85 уже не будет помню) на ds18b20 с питанием от стабилизатора, хотя на паразитном питании все работает великолепно.
Re: подключение датчиков 1-wire: вопрос дилетанта
Привет всем. Есть вопрос по подключению DS18B20 к адаптеру DS9490R.
Подключил как везде пишут, а именно:
1 нога (GND) - 4 GND_OW 1-Wire Return
2 нога (DQ) - 3 OW 1-Wire Data
3 нога (VDD) - 1 VDD 5VDC Output
Все как на рисунке (1 и 2):
Но датчик начинает сильно греться, в руках не удержать. Понял что перепутаны питание и земля. Подключил как на рисунке 3 - все работает.
Рисунки 1 и 2 взяты из официальных даташитов. Та и на форумах везде пишут что подключать нужно именно так. Так в чем прикол? Спасибо.
Подключил как везде пишут, а именно:
1 нога (GND) - 4 GND_OW 1-Wire Return
2 нога (DQ) - 3 OW 1-Wire Data
3 нога (VDD) - 1 VDD 5VDC Output
Все как на рисунке (1 и 2):
Но датчик начинает сильно греться, в руках не удержать. Понял что перепутаны питание и земля. Подключил как на рисунке 3 - все работает.
Рисунки 1 и 2 взяты из официальных даташитов. Та и на форумах везде пишут что подключать нужно именно так. Так в чем прикол? Спасибо.
Re: подключение датчиков 1-wire: вопрос дилетанта
А чем рисунок 1 отличается от рисунка 3? Все абсолютно также.
На рисунке 1 есть важная заметка - Bottom View. Это значит "вид снизу", а не сверху!
На рисунке 1 есть важная заметка - Bottom View. Это значит "вид снизу", а не сверху!
Re: подключение датчиков 1-wire: вопрос дилетанта
Блин. Был невнимателен, думал то вид сверху. Прошу прощения за тупой вопрос.