Вопрос о надежности DS18B20
Faun
Специалист
Минск
115 34
Отв.20 26 Мая 11, 12:27
А я проста эту праблему решил, два раза подрят читаю результа измерения, и если цифры совпали, значит всё верно ... Правда патом эту прибамбасу закоментил,.. пачему-то ано работает как часики, ошибочного чтения у меня ни разу не возникало. А ещё, "калибровку" сделал, с самонагревом немного помагает побароться... принцип, кладёш датчик и градусник(потачнее) в банку, через некаторое время как стабилизируется сматрю сколько там, скажем 24.6 гарадуса.. выставляю это значение, жму кнопку, и получаю скоректированоре значение
mak
Модератор
Екатеринбург
6.3K 1.8K
Отв.21 04 Июня 14, 21:31
кстати, заметил что если несколько датчиков на одной линии сидит, у них похоже сильнее саморазогрев
в общем я отказался от стандартных библиотек для работы с датчиками 18b20
написал сам процедурки обмена по 1wire, работе с датчиками, проверку crc, и выделил каждому датчику отдельную ногу микроконтроллера, чтобы не заморачиваться с серийниками
т.е. - отдельно разъем для датчика в кубе, и т.д.
в общем я отказался от стандартных библиотек для работы с датчиками 18b20
написал сам процедурки обмена по 1wire, работе с датчиками, проверку crc, и выделил каждому датчику отдельную ногу микроконтроллера, чтобы не заморачиваться с серийниками
т.е. - отдельно разъем для датчика в кубе, и т.д.
V_B
Академик
Таганрог
2.7K 939
Отв.22 04 Июня 14, 21:39, через 8 мин
mak, не заметил что несколько датчиков влияют друг на друга!
У меня их самое большее было 32 шт на одну линию - никаких проблем.
Тут главное правильный алгоритм чтения бита с 1-Wire.
Я по мажоритарной системе 5-ть раз считываю каждый бит, плюс ко всему - синхронизирую чтение бита со временем переключения силового симистора.
У меня их самое большее было 32 шт на одну линию - никаких проблем.
Тут главное правильный алгоритм чтения бита с 1-Wire.
Я по мажоритарной системе 5-ть раз считываю каждый бит, плюс ко всему - синхронизирую чтение бита со временем переключения силового симистора.
mak
Модератор
Екатеринбург
6.3K 1.8K
Отв.23 04 Июня 14, 22:13, через 34 мин
а для чего по 5 раз? и как часто опрашиваешь дс-ку?
ну и когда датчик один на шине, есть сокращенный режим опроса - без запроса ромкода, может поэтому показалось что температура не так сползает?
хотя это ерунда все, нам нужна в любом случае точно только дельта
а вот удобство, когда не заморачиваешься с подстановкой серийников датчиков по ролям, а просто втыкаешь датчик в соответствующее гнездо - по мне так самое то
ну и когда датчик один на шине, есть сокращенный режим опроса - без запроса ромкода, может поэтому показалось что температура не так сползает?
хотя это ерунда все, нам нужна в любом случае точно только дельта
а вот удобство, когда не заморачиваешься с подстановкой серийников датчиков по ролям, а просто втыкаешь датчик в соответствующее гнездо - по мне так самое то
V_B
Академик
Таганрог
2.7K 939
Отв.24 04 Июня 14, 22:26, через 14 мин
а для чего по 5 раз?mak, 04 Июня 14, 22:135-ть раз для исключения импульсных помех.
как часто опрашиваешь дс-ку?mak, 04 Июня 14, 22:13По максимальному графику - импульс сброса, конверт-старт, опрос всех по очереди и и снова импульс сброса.
а вот удобство, когда не заморачиваешься с подстановкой серийников датчиков по ролям, а просто втыкаешь датчик в соответствующее гнездо - по мне так самое тоmak, 04 Июня 14, 22:13Это когда ты один или два датчика используешь. Да и в системе проще прикрутить опрос нескольких датчиков на одном выходе совместно с алгоритмом опроса АЦП и выводом на индикатор - все в одном "флаконе"!
Да и один провод идет к колонне на все датчики - тоже не маловажное значение.
mak
Модератор
Екатеринбург
6.3K 1.8K
Отв.25 04 Июня 14, 22:34, через 9 мин
Это когда ты один или два датчика используешь.V_B, 05 Июня 14, 00:26Ну если подумать - очень редко когда больше 3-х датчиков температурных используется
а вот не имея к примеру LCD а только семисегментник, как привязывать датчики с одной шины к кубу и т.п.? неудобно же
это упрощает ввод в эксплуатацию, диагностику и даже надежность (независимые каналы)
5-ть раз для исключения импульсных помех.V_B, 05 Июня 14, 00:26есть же CRC
V_B
Академик
Таганрог
2.7K 939
Отв.26 04 Июня 14, 22:38, через 5 мин
есть же CRCmak, 04 Июня 14, 22:34Есть - но если исключить помехи на этапе чтения бита - получишь меньше ошибок CRC.
Но это дело сугубо "личное" - я просто долго шел к такому алгоритму, поэтому могу только порекомендовать его. А уже выбор каждого - как делать!
mak
Модератор
Екатеринбург
6.3K 1.8K
Отв.27 04 Июня 14, 22:49, через 11 мин
Ну тоже верно, тем более условия эксплуатации разные, питание, ну и к примеру
помехи на паразитном питании более вероятны чем на честном, выделенном
С другой стороны есть наработки на многоканальное подключение, вдруг пригодится кому
помехи на паразитном питании более вероятны чем на честном, выделенном
С другой стороны есть наработки на многоканальное подключение, вдруг пригодится кому
makh
Профессор
Sаmara
2.1K 1K
Отв.28 03 Нояб. 14, 02:39
Из моего опыта использования DS18B20 (корпус TO-92):
1. После перегрева, вызванного ошибочным подключением или же колдырной пайкой, наблюдается серьезное "плавание" показаний и частый сброс регистров на исходных 85 цельсиев.
2. При наличии на шине нескольких чипов, особенно в случае с паразитным питанием, надо экспериментально подбирать значение резистора подтяжки. Ставил подстроечник 10К, и терпеливо его крутил, добиваясь наименьшего "дурения" всей бороды.
От использования данного девайса в нашем деле отказался -- при измеряемых T>85 цельсиев начинает показывать, мягко говоря, неправду. О чем, вобщем-то, честно написано в мануалах. "Неправда" может составлять у некотрых чипов и 3-4 цельсия.
1. После перегрева, вызванного ошибочным подключением или же колдырной пайкой, наблюдается серьезное "плавание" показаний и частый сброс регистров на исходных 85 цельсиев.
2. При наличии на шине нескольких чипов, особенно в случае с паразитным питанием, надо экспериментально подбирать значение резистора подтяжки. Ставил подстроечник 10К, и терпеливо его крутил, добиваясь наименьшего "дурения" всей бороды.
От использования данного девайса в нашем деле отказался -- при измеряемых T>85 цельсиев начинает показывать, мягко говоря, неправду. О чем, вобщем-то, честно написано в мануалах. "Неправда" может составлять у некотрых чипов и 3-4 цельсия.
V_B
Академик
Таганрог
2.7K 939
Отв.29 03 Нояб. 14, 12:29
Из моего опыта использования DS18B20 (корпус TO-92):makh, 03 Нояб. 14, 01:39Из моего опыта:
32 датчика, установленные на колонне для экспериментов, подключенных по "паразитной" схеме прекрасно работают. Надо только сделать правильно включение питания на них.
Никаких проблем после 85°С не замечено.
Разброс между показаниями на 100°С не более 0,5°С.
Делайте правильные схемы и будет вам счастье!
Miroschnik
Профессор
Пескоград
2.4K 669
Отв.30 03 Нояб. 14, 13:02, через 34 мин
Делайте правильные схемы и будет вам счастье!V_B, 03 Нояб. 14, 12:29Нарисуйте, пожалуйста, правильную схему...
V_B
Академик
Таганрог
2.7K 939
Отв.31 03 Нояб. 14, 15:13
Этой схемой пользуюсь уже давно.
#VI_1 - управление питанием в момент преобразования температуры
IB_1 - выход на линиию
TXI_1 - передача
RXI_1 - прием
RIS77
Бакалавр
Сыктывкар
73 16
Отв.32 03 Марта 15, 01:13
Схема интересная, но не могли бы Вы дать алгоритм управления этой схемой? Как её подключить к МК? Как ей управлять? А то,я гляжу, остальные боятся спросить уже год.
makh
Профессор
Sаmara
2.1K 1K
Отв.33 04 Марта 15, 08:20
алгоритм управления этой схемойRIS77, 03 Марта 15, 01:13
В каком-то application note или reference design от производителя что-то такое было об этом, великий гугл должен помочь по идее.
V_B
Академик
Таганрог
2.7K 939
Отв.34 04 Марта 15, 09:31
Схема интересная, но не могли бы Вы дать алгоритм управления этой схемой? Как её подключить к МК? Как ей управлять?RIS77, 03 Марта 15, 01:13А что там подключать - все эти ножки (#VI_1, TXI_1, RXI_1) напрямую на проц подключаешь. IB_1 - выход на линию к датчику.
Алгоритм - согласно времянке в описании на DS18B20.
Когнак
Специалист
москва
191 83
Отв.35 02 Сент. 15, 10:20
LM 35 будут постабильней (Tmax +150℃ ) , но требуют хорошей организации ADC .
Ардуинка требует внешнего (прецизионного) AREF на 2.048 или 4.096 V . Также важно правильно развести печатку:цифровые и аналоговые массы должны быть разделены, тк речь о мВольтах .
Ардуинка требует внешнего (прецизионного) AREF на 2.048 или 4.096 V . Также важно правильно развести печатку:цифровые и аналоговые массы должны быть разделены, тк речь о мВольтах .