Получение данных с массива датчиков

Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
Аватара пользователя
linux_rulezz
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Пн сен 15, 2025 08:43:23
Откуда: Маленький СССР посреди шариатской республики

Re: Получение данных с массива датчиков

Сообщение linux_rulezz »

Windows must die!
Goblinator
Потрогал лапой паяльник
Сообщения: 385
Зарегистрирован: Вс фев 27, 2011 23:37:04

Re: Получение данных с массива датчиков

Сообщение Goblinator »

kelod писал(а): Чт май 07, 2026 14:27:23 по 180 р штука, + пересылка? спасибо, но дешевле и надёжнее платиновые датчики выходят
отбраковка с алиэкспресса плюс стоимость схем преобразования? Курсовик, да?
Последний раз редактировалось Goblinator Чт май 07, 2026 15:01:15, всего редактировалось 1 раз.
Аватара пользователя
linux_rulezz
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Пн сен 15, 2025 08:43:23
Откуда: Маленький СССР посреди шариатской республики

Re: Получение данных с массива датчиков

Сообщение linux_rulezz »

Goblinator, можно подумать, с DS18 проще: или сам велосипедь 1-wire на DMA+таймере (или DMA+UART), или покупай преобразователи 1-wire во что-либо приличное.
Самый идиотский протокол, что только можно было придумать! А уж учитывая то, что эти датчики имеют точность значительно хуже платиновых (после калибровки, естественно), то уж лучше терморезисторы. Тем паче, ничего там сложного нет. Берем внешний АЦП, три-четыре мультиплексора, соединяем по схеме из приложенной мной статьи китайца, заводим простенький алгоритм — вуаля… И останется лишь, зная сопротивление, кусочно-линейной интерполяцией с бинарным поиском по LUT вычислить температуру по сопротивлению.
Windows must die!
Аватара пользователя
linux_rulezz
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Пн сен 15, 2025 08:43:23
Откуда: Маленький СССР посреди шариатской республики

Re: Получение данных с массива датчиков

Сообщение linux_rulezz »

Да, вот здесь можно почитать о сравнении нескольких I2C'шных датчиков. Коль влажность не нужна, можно лаком замазать, чтобы герметично было...
И еще: гигантское сравнение.
Сам тоже сравнивал, но поленился паять, а как только я "беспаечную" монтажную плату со всей бородой перетаскивал в подкупольное на телескоп (чтобы в более широком диапазоне условий сравнить показания), буквально через час-два какой-нибудь из датчиков "подвешивал" шину с концами… Так что, своих графиков не покажу, увы.

Ну, в общем, способов получения данных о температуре с той или иной точностью полно, выбирайте.

Еще есть TSYS01, я писал про них у себя в ЖЖ (например) и на основе 80 таких датчиков сделал систему мониторинга температуры главного зеркала БТА. Но там цены не сложишь!..
Windows must die!
Goblinator
Потрогал лапой паяльник
Сообщения: 385
Зарегистрирован: Вс фев 27, 2011 23:37:04

Re: Получение данных с массива датчиков

Сообщение Goblinator »

linux_rulezz писал(а): Чт май 07, 2026 14:54:40 Goblinator, можно подумать, с DS18 проще: или сам велосипедь 1-wire на DMA+таймере (или DMA+UART), или покупай преобразователи 1-wire во что-либо приличное.
Самый идиотский протокол, что только можно было придумать! А уж учитывая то, что эти датчики имеют точность значительно хуже платиновых (после калибровки, естественно), то уж лучше терморезисторы. Тем паче, ничего там сложного нет. Берем внешний АЦП, три-четыре мультиплексора, соединяем по схеме из приложенной мной статьи китайца, заводим простенький алгоритм — вуаля… И останется лишь, зная сопротивление, кусочно-линейной интерполяцией с бинарным поиском по LUT вычислить температуру по сопротивлению.
и вспоминаем про термокомпенсацию у мультиплексоров. Хотя если речь идет о курсовухе, судя по всему - то прокатит. ТЗ выполнено, исполнителя тараканы в голове у заказчика волновать не должны.
kelod
Опытный кот
Сообщения: 881
Зарегистрирован: Пн июл 08, 2013 22:59:45

Re: Получение данных с массива датчиков

Сообщение kelod »

linux_rulezz писал(а): Чт май 07, 2026 14:36:53 https://www.promelec.ru/product/224743/
с минимальным заказом в 91 штуку), плюс возят как то не понятно, уж лучше китайское, пусть и отбраковка, лишь работало
Goblinator писал(а): Чт май 07, 2026 15:17:06 и вспоминаем про термокомпенсацию у мультиплексоров
вот вот, я об этом же
Goblinator писал(а): Чт май 07, 2026 15:17:06 Хотя если речь идет о курсовухе, судя по всему - то прокатит.
речь о реально работающем устройстве

Вообщем пока вижу два более менее работающих варианта:
1 max на каждый датчик
2 заморачиваться с герконами, с тестированием их работы
первый вариант не нравится из за дороговизны, второй из за того что там есть механика и необходимости дополнительной обвязки
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Получение данных с массива датчиков

Сообщение Ser60 »

kelod писал(а): Чт май 07, 2026 09:00:39где же взять эти датчики? да ещё что бы были влагозащищённые и небольшого размера
Где взять зависит от Ваших возможностей. Могу порекомендовать STS40 или другие от Sensirion. Они герметичные и достаточно точные для инкубаторов. Однако, ключевое предложение в моём посте было использовать беспроводку вместо кучи проводов с коммутаторами.
Аватара пользователя
linux_rulezz
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Пн сен 15, 2025 08:43:23
Откуда: Маленький СССР посреди шариатской республики

Re: Получение данных с массива датчиков

Сообщение linux_rulezz »

Ser60 писал(а): Чт май 07, 2026 21:04:45 использовать беспроводку вместо кучи проводов с коммутаторами.
Ну, два провода на питание все равно придется проводить… А где два, чего бы просто витуху не бросить? По двум жилам питаем, остается еще четыре на разгул фантазии.
Как показала практика, до четырех метров в помехозащищенных условиях (т.е. не в электрических щитах, вблизи электродвигателей и т.п.) на четырех метрах I2C отлично работает на 100кГц. А на пяти можно для надежности 10кГц использовать.
Windows must die!
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Получение данных с массива датчиков

Сообщение Ser60 »

linux_rulezz писал(а): Чт май 07, 2026 22:40:57Ну, два провода на питание все равно придется проводить…
Я там-же выше писал про автономное питание каждого измерителя (сенсор + БТ модуль) от отдельной батарейки. При использовании современных деталей даже батарейки типа CR2032 хватит лет на 5 при использовании модуля в режиме маяка. А если передачу биконов у маяка включать, например, раз в минуту, то батарейка будет работать как минимум раза в 1.5 дольше. Хотя, так часто контролировать температуру в инкубаторе вряд-ли нужно. Тогда, глядишь, можно и до 10+ лет дотянуть, т.е. фактически на всё время жизни устройства. А там уже наверняка захочется что-то иное собрать или вообще курятник модернизировать.
Goblinator
Потрогал лапой паяльник
Сообщения: 385
Зарегистрирован: Вс фев 27, 2011 23:37:04

Re: Получение данных с массива датчиков

Сообщение Goblinator »

kelod писал(а): Чт май 07, 2026 15:45:46 Вообщем пока вижу два более менее работающих варианта:
1 max на каждый датчик
2 заморачиваться с герконами, с тестированием их работы
первый вариант не нравится из за дороговизны, второй из за того что там есть механика и необходимости дополнительной обвязки
Поставить пучок далласов из чип-и-дипа и не морочить ни себе ни другим голову. Вопрос герметизации решить термоусадкой и спермоклеем.
kelod
Опытный кот
Сообщения: 881
Зарегистрирован: Пн июл 08, 2013 22:59:45

Re: Получение данных с массива датчиков

Сообщение kelod »

Ser60 писал(а): Чт май 07, 2026 21:04:45 Могу порекомендовать STS40 или другие от Sensirion. Они герметичные и достаточно точные для инкубаторов. Однако, ключевое предложение в моём посте было использовать беспроводку вместо кучи проводов с коммутаторами.
это же просто датчики, причём цена у них тоже достаточно не бюджетная. То что они цифровые это конечно плюс, но им всё равно нужна обвязка, если верить даташиту, то минимум 2 резистора и 1 конденсатор, а значит будут открытые контакты, которые нужно изолировать, при размере самого датчика это сделать достаточно сложно.
а не имею ничего против беспроводных датчиков, особенно если они будут маленькие, вопрос только в том чтобы они были герметичные. если возможно использовать датчик в виде наклейки на яйцо, это вообще будет отлично
Goblinator писал(а): Пт май 08, 2026 05:59:23 Поставить пучок далласов из чип-и-дипа и не морочить ни себе ни другим голову. Вопрос герметизации решить термоусадкой и спермоклеем.
нет у меня веры этим далласам, а вопрос герметизации термоусадкой и суперклеем не решается, как и автомобильным герметиком, проверено на том же инкубаторе, подогреватель и датчик в ванночке для воды живут пару месяцев, потом начинают врать безбожно из-за попавшей в них влаги
kelod
Опытный кот
Сообщения: 881
Зарегистрирован: Пн июл 08, 2013 22:59:45

Re: Получение данных с массива датчиков

Сообщение kelod »

если использовать цифровые датчики, то как я понимаю подключать их нужно через i2c мультиплексор, например TCA9548A, вот только беда, в протеусе онного нет, как быть?
Rapra
Потрогал лапой паяльник
Сообщения: 305
Зарегистрирован: Пн фев 16, 2026 17:30:02

Re: Получение данных с массива датчиков

Сообщение Rapra »

Купить железо и попробовать в железе хотябы часть из предполагаемого числа.
Если решили аналоговый PT100 и АЦП MAX31865, то желательно не использовать аналоговый мультиплексор, а каждому датчику - свой АЦП.
kelod
Опытный кот
Сообщения: 881
Зарегистрирован: Пн июл 08, 2013 22:59:45

Re: Получение данных с массива датчиков

Сообщение kelod »

Rapra писал(а): Пт май 08, 2026 13:16:15 Купить железо и попробовать в железе хотябы часть из предполагаемого числа.
Если решили аналоговый PT100 и АЦП MAX31865, то желательно не использовать аналоговый мультиплексор, а каждому датчику - свой АЦП.
я пока что ничего не решил, но варианта стало три
1) max на каждый датчик, а максами уже управлять через мультиплексор
2) использовать один max, а датчики к нему подключать через герконы
3) использовать цифровые датчики, но из тех что я нашёл они имеют всего несколько адресов и 16 датчиков сразу не подключить, следовательно нужен мультиплексор I2C
перед тем как что-то делать в железе я бы хотел всё смоделировать в протеусе, если датчики для теста можно заменить на lm75, то вот с мультиплексором проблема, нет его в стандартной библиотеке
Rapra
Потрогал лапой паяльник
Сообщения: 305
Зарегистрирован: Пн фев 16, 2026 17:30:02

Re: Получение данных с массива датчиков

Сообщение Rapra »

1) Мультиплексор не нужен. Достаточно на каждый MAX вывести отдельную линию CS, а остальные линии запараллелить. CS - как раз для выбора того макса, с которым требуется связь.
2) Не обязательно герконы, достаточно обычного электромагнитного реле.
3) есть датчики температуры на 1-wire интерфейсе - DS18B20 например. У каждого такого датчика уникальный 48-битный адрес, а 48 бит - это овер мильён мильярдов триллионов штук. И эти датчики могут работать на одной линии без ограничений количества.
kelod
Опытный кот
Сообщения: 881
Зарегистрирован: Пн июл 08, 2013 22:59:45

Re: Получение данных с массива датчиков

Сообщение kelod »

Rapra писал(а): Пт май 08, 2026 14:54:57 1) Мультиплексор не нужен. Достаточно на каждый MAX вывести отдельную линию CS, а остальные линии запараллелить. CS - как раз для выбора того макса, с которым требуется связь.
2) Не обязательно герконы, достаточно обычного электромагнитного реле.
3) есть датчики температуры на 1-wire интерфейсе - DS18B20 например. У каждого такого датчика уникальный 48-битный адрес, а 48 бит - это овер мильён мильярдов триллионов штук. И эти датчики могут работать на одной линии без ограничений количества.
1) мультиплексор съэкономит ноги
2) обычно электромагнитное реле шумное и имеет меньший ресурс, кроме того оно гораздо медленее, мне нужно опрашивать пусть будет 16 датчиков каждые секунды 3-5, можно даже чаще
3) DS18B20 не найти рабочих у китайцев, а в других местах они дико дорогие получаются. sht3x или sht4x у китайцев есть и достаточно бюджетно стоят, но у них всего 2 адреса и без мультиплексора никак
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Получение данных с массива датчиков

Сообщение Ser60 »

kelod писал(а): Пт май 08, 2026 09:15:29не имею ничего против беспроводных датчиков, особенно если они будут маленькие, вопрос только в том чтобы они были герметичные. если возможно использовать датчик в виде наклейки на яйцо, это вообще будет отлично
Получается Вы собираетесь использовать свой датчик для каждого яйца? Я не специалист в вопросе, но Интернет ресурсы рекомендуют измерять температуру на уровне верхнего края яиц, не касаясь их. Также осталось неясно сколько датчиков планируете задействовать. И зачем хотите измерять температуру каждые 5 секунд? Она ведь не меняется так быстро.
Ответить

Вернуться в «Теория»