Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Ответить

Re: Всё по DS18(B/S)20.

Ср янв 30, 2019 14:53:14

Для специальных приложений или термопара или платиновые ТС на керамике/спецподложке (маахонькие).
pt106051_10655.pdf
(99.84 KiB) Скачиваний: 391

:hunger:

Re: Всё по DS18(B/S)20.

Ср янв 30, 2019 21:41:42

Но то термометры, а это DS-ка. Она как бы под воздух и заточена, насколько я понимаю.

И для этого она - вполне неплохой вариант.

Скорее наоборот. При охлаждении или нагревании уменьшается погрешность от саморазогрева. :tea:

Была бы точность и разрешение повыше, пусть в два раза дороже - была бы отличная вещь. :music:

Добавлено after 6 hours 40 minutes 37 seconds:
Короче применил лайфхак. Занизил питание МК и датчика до 3,5 вольт (запитав через диоды последовательно). Меньше напряжение - меньше потребление, меньше разогрева.))) И вообще нынче модно использовать 3,3 вольта :))) :write:

Re: Всё по DS18(B/S)20.

Чт янв 31, 2019 07:47:46

Тогда и датчик лучше использовать MAX31820. Такой же, как DS18B20, но на 3,3В

Re: Всё по DS18(B/S)20.

Чт янв 31, 2019 07:56:02

Так и DS-ка по даташиту от 3В питание.

Re: Всё по DS18(B/S)20.

Чт янв 31, 2019 14:35:37

Это странно, но есть проблема в библиотеке DallasTemperature.h для arduino, из-за которой температура иногда считывается неверно (обычно около -127), касается всех подключенных датчиков, при чем эта ошибка может проявятся достаточно редко, может раз в час (термореле сбойнет когда не ждешь!!!) и чем ниже температура тем чаще выскакивала. Гугл показал что с этим сталкиваются многие.

Конечно религия у всех разная, срать по поводу DallasTemperature.h не надо, кто не использует - не используйте молча. :))) Мне проще написать две строчки, чем десяток. Хотя не спорю что библиотека уебищная в плане delay.

Но вот выкладываю именно ту версию DallasTemperature, которая работает без глюков с китайскими датчиками. :write: :music: Во всяком случае пока глюков не обнаружено.

Добавлено after 3 hours 9 minutes 29 seconds:
Да, проблема решена, но не прям до самого конца.
Вот сейчас обнаружил, в некоторых случаях при включении питания кажет -127 на одном датчике, после перезагрузки все восстанавливается.
Короче не используйте эту говноподелку DallasTemperature для важных термометров :))) :cry:
Вложения
DallasTemperature.zip
(23.73 KiB) Скачиваний: 404

Re: Всё по DS18(B/S)20.

Чт янв 31, 2019 14:57:56

Upgrader, если лень ковырять библиотеку, поставь медианный фильтр.

Re: Всё по DS18(B/S)20.

Ср фев 13, 2019 15:44:01

А у меня иногда выскакивает 85С, т. е то что по дефолту записано. При ошибке выхожу из опроса с поднятым флагом. Но тут нет ошибок коммуникации. Посему наверно датчик куёвый или что ещё может быть? Асм мега8

Re: Всё по DS18(B/S)20.

Ср фев 13, 2019 19:19:35

Обычная причина - подача сброса, когда преобразование температуры еще не закончено.

Но вы ведь, опрашиваете статус датчика перед тем как считать scratchpad?

Re: Всё по DS18(B/S)20.

Ср фев 13, 2019 19:46:21

стока лет народ мучатся неужели нельхзя написать 1 беззбойную библдиотеку которая бы умела робить с любым датчиком и s, b или без букф!"!!!
страно что сампроизводитель не озаботился этим

Re: Всё по DS18(B/S)20.

Ср фев 13, 2019 20:00:08

Естественно, дска свободна, только тогда опрашиваю. Кстати, опрос раз в минуту. CRC проходит. Точно также сделал в другой конструкции, уже несколько лет работает чики. Нзн, одним словом. Сейчас нет другого датчика заменить.

Добавлено after 10 minutes 10 seconds:
стока лет народ мучатся неужели нельхзя написать 1 беззбойную библдиотеку которая бы умела робить с любым датчиком и s, b или без букф!"!!!
страно что сампроизводитель не озаботился этим

Без букф это и есть S. И библа нормальная.
По крайней мере этот девайс работал полтора года нормально.

Re: Всё по DS18(B/S)20.

Чт фев 14, 2019 11:28:37

Под ассемблером собственно только транспортный протокол да проверка/генерация CRC7 и CRC8 требуются в обязательном порядке.
Да выделение массива ОЗУ под "блокнот".
Отличие в случае "разных букавок" определяется обработчиком массива "блокнота" (а тот обработчик в свою очередь завязан на конкретную задачу в конкретной конструкции).
Так что собственно "библиотеки" ограничиваются вышеуказанным примитивом.
8)

Отдельно задача по поиску среди нескольких устройств на одной линии - но то в практических самоделках крайне редко встречается.
:roll:

Re: Всё по DS18(B/S)20.

Вт апр 28, 2020 15:33:06

Нашел такую инфу, что DS можно восстанавливать в некоторых случаях,
если кому интересно (сообщение ближе к концу самое длинное): http://arduino.ru/forum/programmirovani ... b20?page=2

Re: Всё по DS18(B/S)20.

Пт авг 20, 2021 11:39:30

Подскажите пожалуйста, несколько датчиков параллельно это понятно. А если один ds18b20 на 2 устройства ( в моем случае 2 термостата на pic) как они будут взаимодействовать?

Re: Всё по DS18(B/S)20.

Пт авг 20, 2021 11:56:41

Это вопрос не к датчику, а к вашему устройству. Как оно будет реагировать, если на линии окажется чужой мастер.

Re: Всё по DS18(B/S)20.

Пт авг 20, 2021 12:22:11

Ok. Проверим на практике. Спасибо.

Re: Всё по DS18(B/S)20.

Ср сен 08, 2021 22:28:24

А тут уже писали по поводу саморазогрева датчика?...Температура меняется всего на 0,1 градус,....


ну, доброе утро!!!
скажу не популярно..
разогрев преувеличен кривостю рук реализации (возможно в обнимку паразитное питание). юзанье ds1821 долгие годы показал, что разогрев максимум 0,2 градуса...

(круглый)

Re: Всё по DS18(B/S)20.

Ср сен 08, 2021 22:45:26

разогрев максимум 0,2 градуса

Ничего себе! Это нормально только для показометров!.. Хотя, DS18 - и есть показометры. Когда я аттестовал их показания по платиновым терморезисторам, на интервале -20…+30℃ точность DS18B20 была хуже 0.5℃. Возможно, конечно, после калибровки они и дадут ±0.1℃, но такого с калибровкой можно и от дешевых терморезисторов добиться…
А у терморезисторов по сравнению с DS18 есть несомненное преимущество: они на АЦП висят, их не нужно опрашивать по идиотскому протоколу, который аппаратно не реализован ни в одном микроконтроллере! Делаешь трехканальный мультиплексор - вуаля, 8 терморезисторов на 1 канал АЦП подключил. А если еще и АЦП внешний 24-битный поставить, можно и серьезно с платиновыми работать от жидкого азота до кипения воды…

В общем, поэкспериментировав, я понял, что в устройствах, не требующих высокой точности измерения температуры, можно и копеечными NTC ограничиться, сильно упростив себе задачу. А если же нужны высокие точности, то есть и приличные цифровые датчики (до 0.03℃), и платиновые терморезисторы.

Re: Всё по DS18(B/S)20.

Ср сен 08, 2021 23:37:51

Eddy_Em, поздравляю! наконецто вы пришли к томуже выводу что и кетайцы 10-15лет взад...
они уже 10 лет делают термомтаты и часы с Т и Т комнатные с дешевым копечным датчиком NTC=10к 1%..
в боле экономных по питалу ставять и 50к термистор... не некоторую нелинейностьNTC или забивают(в часах и термометрах для дома) или програмно коректруют по табличке из ДШ.... если диапазон работы широкий

Re: Всё по DS18(B/S)20.

Ср сен 08, 2021 23:45:21

Я в своих поделках просто калибрую NTC по платиновым терморезисторам в искомом диапазоне через градус-два, потом аппроксимирую это дело полиномом и вычисляю массивы для кусочно-линейной аппроксимации с заданной точностью.
Вот - пример (т.к. у STM0 нет флоатов, коэффициенты приводятся к ближайшей простой дроби через цепные дроби). Нужный кусок ищется дихотомией, все шустро и просто. Вот - еще, аналогично.

Re: Всё по DS18(B/S)20.

Пт ноя 17, 2023 11:30:16

через пару месяцев оба датчика стали показывать нули
таймер на 10 сек для защита по проверки целостности данных отключала нагрузку но не выводила ошибку на экран (если датчики вытащить то нагрузка отключалась и ошибка выводилась на экран это так и должно было быть) что тоже странно

перепрошил по новой всё заработало как раньше
сделал вывод что часть кода отвечающая за данные с датчика самоизменилась произвольно возможно по какой то наводке по датчикам

датчики на 3м
если датчик подключить так то поможет избежать повторного ?

Изображение
Ответить