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

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Ответить
Друг Кота
Аватара пользователя
Сообщения: 15624
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Для специальных приложений или термопара или платиновые ТС на керамике/спецподложке (маахонькие).
pt106051_10655.pdf
(99.84 КБ) 628 скачиваний
:hunger:
Реклама
Друг Кота
Аватара пользователя
Сообщения: 26671
Зарегистрирован: Пт май 18, 2007 22:56:58

Сообщение Upgrader »

[uquote="WiseLord",url="/forum/viewtopic.php?p=3559978#p3559978"]Но то термометры, а это DS-ка. Она как бы под воздух и заточена, насколько я понимаю.

И для этого она - вполне неплохой вариант.[/uquote]
Скорее наоборот. При охлаждении или нагревании уменьшается погрешность от саморазогрева. :tea:

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

Добавлено after 6 hours 40 minutes 37 seconds:
Короче применил лайфхак. Занизил питание МК и датчика до 3,5 вольт (запитав через диоды последовательно). Меньше напряжение - меньше потребление, меньше разогрева.))) И вообще нынче модно использовать 3,3 вольта :))) :write:
Не променяю медь на ржавую несгорайку!
Реклама
Электрический кот
Аватара пользователя
Сообщения: 1007
Зарегистрирован: Ср мар 03, 2010 11:48:00
Откуда: Уфа

Сообщение Хатуль_мадан »

Тогда и датчик лучше использовать MAX31820. Такой же, как DS18B20, но на 3,3В
Друг Кота
Аватара пользователя
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск

Сообщение WiseLord »

Так и DS-ка по даташиту от 3В питание.
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 26671
Зарегистрирован: Пт май 18, 2007 22:56:58

Сообщение Upgrader »

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

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

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

Добавлено after 3 hours 9 minutes 29 seconds:
Да, проблема решена, но не прям до самого конца.
Вот сейчас обнаружил, в некоторых случаях при включении питания кажет -127 на одном датчике, после перезагрузки все восстанавливается.
Короче не используйте эту говноподелку DallasTemperature для важных термометров :))) :cry:
Вложения
DallasTemperature.zip
(23.73 КБ) 559 скачиваний
Не променяю медь на ржавую несгорайку!
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1299
Зарегистрирован: Вт мар 31, 2015 22:56:07
Откуда: Мы люди простые, живем в лесу, на пенек молимся

Сообщение trengtor »

Upgrader, если лень ковырять библиотеку, поставь медианный фильтр.
Изображение
Контактная информация:
Реклама
Вымогатель припоя
Сообщения: 615
Зарегистрирован: Вс дек 28, 2014 21:54:05

Сообщение dgrett »

А у меня иногда выскакивает 85С, т. е то что по дефолту записано. При ошибке выхожу из опроса с поднятым флагом. Но тут нет ошибок коммуникации. Посему наверно датчик куёвый или что ещё может быть? Асм мега8
Я всё-всё узнAю и стану профессором.
Друг Кота
Аватара пользователя
Сообщения: 7360
Зарегистрирован: Пт авг 28, 2009 21:34:30
Откуда: 845-й км.

Сообщение uldemir »

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

Но вы ведь, опрашиваете статус датчика перед тем как считать scratchpad?
А люди посмотрят и скажут: "Собаки летят. Вот и осень."
Друг Кота
Аватара пользователя
Сообщения: 39197
Зарегистрирован: Сб сен 13, 2014 16:27:32
Откуда: СпиртоГонск созвездия Омега

Сообщение musor »

стока лет народ мучатся неужели нельхзя написать 1 беззбойную библдиотеку которая бы умела робить с любым датчиком и s, b или без букф!"!!!
страно что сампроизводитель не озаботился этим
ZМудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Вымогатель припоя
Сообщения: 615
Зарегистрирован: Вс дек 28, 2014 21:54:05

Сообщение dgrett »

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

Добавлено after 10 minutes 10 seconds:
[uquote="musor",url="/forum/viewtopic.php?p=3569566#p3569566"]стока лет народ мучатся неужели нельхзя написать 1 беззбойную библдиотеку которая бы умела робить с любым датчиком и s, b или без букф!"!!!
страно что сампроизводитель не озаботился этим[/uquote]
Без букф это и есть S. И библа нормальная.
По крайней мере этот девайс работал полтора года нормально.
Я всё-всё узнAю и стану профессором.
Друг Кота
Аватара пользователя
Сообщения: 15624
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

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

Отдельно задача по поиску среди нескольких устройств на одной линии - но то в практических самоделках крайне редко встречается.
:roll:
Грызет канифоль
Сообщения: 257
Зарегистрирован: Пн окт 03, 2016 10:06:09

Сообщение Леонид_М »

Нашел такую инфу, что DS можно восстанавливать в некоторых случаях,
если кому интересно (сообщение ближе к концу самое длинное): http://arduino.ru/forum/programmirovani ... b20?page=2
Открыл глаза
Сообщения: 47
Зарегистрирован: Чт дек 06, 2012 22:57:28

Сообщение marges »

Подскажите пожалуйста, несколько датчиков параллельно это понятно. А если один ds18b20 на 2 устройства ( в моем случае 2 термостата на pic) как они будут взаимодействовать?
Друг Кота
Аватара пользователя
Сообщения: 7360
Зарегистрирован: Пт авг 28, 2009 21:34:30
Откуда: 845-й км.

Сообщение uldemir »

Это вопрос не к датчику, а к вашему устройству. Как оно будет реагировать, если на линии окажется чужой мастер.
Открыл глаза
Сообщения: 47
Зарегистрирован: Чт дек 06, 2012 22:57:28

Сообщение marges »

Ok. Проверим на практике. Спасибо.
Грызет канифоль
Сообщения: 296
Зарегистрирован: Ср дек 30, 2009 09:55:39

Сообщение kolobok0 »

[uquote="Upgrader",url="/forum/viewtopic.php?p=3559152#p3559152"]А тут уже писали по поводу саморазогрева датчика?...Температура меняется всего на 0,1 градус,....[/uquote]

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

(круглый)
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

[uquote="kolobok0",url="/forum/viewtopic.php?p=4088469#p4088469"]разогрев максимум 0,2 градуса[/uquote]
Ничего себе! Это нормально только для показометров!.. Хотя, DS18 - и есть показометры. Когда я аттестовал их показания по платиновым терморезисторам, на интервале -20…+30℃ точность DS18B20 была хуже 0.5℃. Возможно, конечно, после калибровки они и дадут ±0.1℃, но такого с калибровкой можно и от дешевых терморезисторов добиться…
А у терморезисторов по сравнению с DS18 есть несомненное преимущество: они на АЦП висят, их не нужно опрашивать по идиотскому протоколу, который аппаратно не реализован ни в одном микроконтроллере! Делаешь трехканальный мультиплексор - вуаля, 8 терморезисторов на 1 канал АЦП подключил. А если еще и АЦП внешний 24-битный поставить, можно и серьезно с платиновыми работать от жидкого азота до кипения воды…

В общем, поэкспериментировав, я понял, что в устройствах, не требующих высокой точности измерения температуры, можно и копеечными NTC ограничиться, сильно упростив себе задачу. А если же нужны высокие точности, то есть и приличные цифровые датчики (до 0.03℃), и платиновые терморезисторы.
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 39197
Зарегистрирован: Сб сен 13, 2014 16:27:32
Откуда: СпиртоГонск созвездия Омега

Сообщение musor »

Eddy_Em, поздравляю! наконецто вы пришли к томуже выводу что и кетайцы 10-15лет взад...
они уже 10 лет делают термомтаты и часы с Т и Т комнатные с дешевым копечным датчиком NTC=10к 1%..
в боле экономных по питалу ставять и 50к термистор... не некоторую нелинейностьNTC или забивают(в часах и термометрах для дома) или програмно коректруют по табличке из ДШ.... если диапазон работы широкий
ZМудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

Я в своих поделках просто калибрую NTC по платиновым терморезисторам в искомом диапазоне через градус-два, потом аппроксимирую это дело полиномом и вычисляю массивы для кусочно-линейной аппроксимации с заданной точностью.
Вот - пример (т.к. у STM0 нет флоатов, коэффициенты приводятся к ближайшей простой дроби через цепные дроби). Нужный кусок ищется дихотомией, все шустро и просто. Вот - еще, аналогично.
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1142
Зарегистрирован: Пт авг 05, 2016 04:47:49

Сообщение Di123 »

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

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

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

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

Вернуться в «Периферия»