• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Железо для научного проекта

biolog

New member
Здравствуйте, уважаемые эксперты.

Мы на базе нашего НИИ разрабатываем автоматизированный биореактор для изучения генетики бактерий.
Прошу участников форума помочь определиться с выбором основной управляющей платы.
Если бы изготавливаемый нами девайс нужен был только в одном экземпляре, то было бы не так страшно ошибиться. Нам же нужно их сделать в большом количестве для проведения параллельных экспериментов.

О девайсе:
Должен получиться объект интернета вещей, способный передавать данные с датчиков в интернет, записывать их на встроенную SD-карту, и переодически крутить моторы.
Вычислительные мощности большие не требуются.

Требования к плате (в порядке приоритета):

1) Самое важное - надежность и стабильность работы.
(Эксперименты будут длиться неделями, и все это время все должно работать непрерывно и без сбоев).
2) Ориентированность на интернет вещей
3) Компактность сам девайс имеет форму куба с размерами 20х10х10 см
(Например, размер esp32 - ок, а размер arduino UNO уже великоват).
4) Совместимость с Arduino IDE.
(Это нужно, чтоб все представители научного сообщества по всему миру могли вносить коррективы в код, даже не имея опыта в серьезных языках программирования).
5) Наличие большого количества библиотек и информации
6) Низкая стоимость платы (условно, до 10$)


Какие платы мы уже рассматривали:

1) Первым кандидатом был esp8266-01
(Но, нашли информацию о нестабильности работы и отказались. Хотя, может, это и не так?)
2) esp-wroom-32
(Кажется хорошим вариантом, но в в сравнении с другими платами, по нему пока мало информации. Плюс, хотелось бы плату подешевле)
3) Также думали про Wemos D-1
4) Может, мы смотрим не туда, и вы посоветуете что-нибудь лучшее?..

Большое спасибо за внимание, надеюсь, вы поможете определиться.


Набор подключаемых компонентов (привожу для понимания, на всякий случай):

4 шаговых двигателя 28BYJ-48
DC мотор на 3 вольта
2 излучающих диода видимого спектра
2 фотодиода OPT101
SD-карта для записи данных
5 датчиков Холла (для контроля вращения двигателей)
Термометр

Набор встроенных компонентов:
WiFi
 

NeoroN

Member
дешевле ESP8266 вряд ли что-то получится, Но я бы взял ESP32 и прошил в них микропитон. Если нет опыта в C++ лучше в него не лезть иначе можно забыть про стабильность - взять какую нибудь Nodemcu или Micropython прошивку и писать программы на языках верхнего уровня(кто бы что не говорил но С++ ближе к ассемблеру чем к тому же JavaScript или Python)
 

azt59

Member
Если нужна стабильность берите esp8266+ stm32, основная прошивка в стм крутится, управляет всем собирает данные, а esp включаем только тогда когда надо передать данные в сеть, если есп повиснет то стм передернет ему питание
 

biolog

New member
дешевле ESP8266 вряд ли что-то получится, Но я бы взял ESP32 и прошил в них микропитон. Если нет опыта в C++ лучше в него не лезть иначе можно забыть про стабильность - взять какую нибудь Nodemcu или Micropython прошивку и писать программы на языках верхнего уровня(кто бы что не говорил но С++ ближе к ассемблеру чем к тому же JavaScript или Python)
А как насчет написания не на чистом С++, а на Arduino IDE? Он стабилен при правильном коде?
Дело в том, что Arduino IDE очень распространен и к нему есть много туториалов и примеров. А нам нужно добиться максимальной универсальности, так как этот проект могут захотеть воспроизвести и в других лабораториях.
 

biolog

New member
Если нужна стабильность берите esp8266+ stm32, основная прошивка в стм крутится, управляет всем собирает данные, а esp включаем только тогда когда надо передать данные в сеть, если есп повиснет то стм передернет ему питание
А почему именно STM32? А не какая-либо другая плата + ESP8266?
А что думаете про Wemos D-1?
Хотелось бы, чтобы модуль связи сразу был на борту.
 

biolog

New member
Если нужна стабильность берите esp8266+ stm32, основная прошивка в стм крутится, управляет всем собирает данные, а esp включаем только тогда когда надо передать данные в сеть, если есп повиснет то стм передернет ему питание
А почему именно STM32? А не какая-либо другая плата + ESP8266?
А что думаете про Wemos D-1?
Хотелось бы, чтобы модуль связи сразу был на борту.
 

NeoroN

Member
https://aliexpress.ru/item/33038740493.html думаю это то, что вам надо. ESP8266 это древняя версия чипа. У меня 2 их сдохло просто лежа в коробке(мож статикой убил), греются они тоже нехило. Micropython рекомендую потому что он проще и понятнее, а C++ стабилен если не допускать ошибок(неточностей) в коде - он быстрее за счет того что полагается на грамотность программиста. В питоне же больше проверок да и править программу без необходимости компиляции намного удобнее.
 

biolog

New member
https://aliexpress.ru/item/33038740493.html думаю это то, что вам надо. ESP8266 это древняя версия чипа. У меня 2 их сдохло просто лежа в коробке(мож статикой убил), греются они тоже нехило. Micropython рекомендую потому что он проще и понятнее, а C++ стабилен если не допускать ошибок(неточностей) в коде - он быстрее за счет того что полагается на грамотность программиста. В питоне же больше проверок да и править программу без необходимости компиляции намного удобнее.
Большое спасибо за ответ. Тоже склоняюсь к esp32, тем более, что уже есть один, купленный на пробу. Насчет Micropython буду думать.
 

azt59

Member
Вся вайфайная лабуда имеет будь то есп8266 или есп32 да хоть rtl8711 и еже с ними, имеет часть прошивки в закрытом виде(часто в ней есть баги которые не исправить по крайней мере не легко исправить)))). И если не дай бог какой-то глюк, будь то выброс по питанию или шум в радио-эфире да есп вообще от чиха рядом может повиснуть, и все вся ваша наука осталась висеть вместе с ним.
Берите обычный проц общего назначения будь то стм32 или что-нибудь из avr да хоть pic возьмите, пишите всю кухню на нем, а esp как транспорт в сеть. Надоест вайфай подключите bluetooth модуль, надоест вся эта беспроводная лажа подключите ethernet, can, rs482. Это по взрослому. И главное если правильный софт и питание будет работать до скончания века, а esp это светодиодами поморгать и все!
 

biolog

New member
Вся вайфайная лабуда имеет будь то есп8266 или есп32 да хоть rtl8711 и еже с ними, имеет часть прошивки в закрытом виде(часто в ней есть баги которые не исправить по крайней мере не легко исправить)))). И если не дай бог какой-то глюк, будь то выброс по питанию или шум в радио-эфире да есп вообще от чиха рядом может повиснуть, и все вся ваша наука осталась висеть вместе с ним.
Берите обычный проц общего назначения будь то стм32 или что-нибудь из avr да хоть pic возьмите, пишите всю кухню на нем, а esp как транспорт в сеть. Надоест вайфай подключите bluetooth модуль, надоест вся эта беспроводная лажа подключите ethernet, can, rs482. Это по взрослому. И главное если правильный софт и питание будет работать до скончания века, а esp это светодиодами поморгать и все!
Спасибо за совет! Пошел гуглить незнакомые слова)
Вообще, странно, у меня было мнение, что esp32 для промышленного мониторинга разрабатывался, и, как следствие, должен быть достаточно надежен. Хотя, практического опыта у меня нет.
 

Юрий Ботов

Moderator
Команда форума
С вашего позволения несколько замечаний:
1. Начинать разработку этого устройства надо не с управляющей платы а с источника питания, который будет в состоянии крутить все эти движки и не просаживать при этом напряжение. И разумеется сначала осознать потребляемые токи (может придется еще и вентиляцию принудительную делать)
2. Вторым, с чем надо определиться это драйверы двигателей. Такую кучу движков нельзя подключать непосредственно на выходы контроллера
... отсюда только будут понятны реальные габариты устройства и возможно кубик подрастет
3. Надежность это конечно хорошо, но вы знаете патаметры наждежности 3х вольтового моторчика? Я не раз сталкивался с их достаточно низким качеством изготовления. То есть надежность платы процессора это еще не все. Блоки питания тоже ведут себя по всякому.
4. Ардуино IDE это конечно хорошо, однако это противоречит с требованием надежности. Вы же не будете писать ВЕСЬ код? Разумеется вы будете использовать сторонние библиотеки... В этом и проблема. Качество большинства Ардуино библиотек весьма посредственное. С целью экономии памяти в этих библиотеках в принципе отсутствует обработка ошибок и всяких неожиданностей.
5. Тут говорили про Пайтон (Питон) - насколько я знаю, люди вашей специальности используют его для моделирования гораздо чаще чем Ардуино :) Питон - это хорошая идея.
6. Есть малоформатные "процессорные" платы из серий Raspberry Pi, Orange Pi Zero и т.п. В них есть и wifi и полноценный Питон под Linux, и с SD картой у них никаких проблем нет. Может подумать в эту сторону?
7. Также из соображений надежности имеет смысл всю межплатную коммутацию делать пайкой, а не "на разъемчиках".
 

azt59

Member
Противоречит ras-pi Пункту 6 первого топика, может за 10$ тогда mt7688
#Aliexpress 719,90 руб. | Бесплатная доставка Горячая Распродажа UART к Ethernet openwrt/linux wifi беспроводной мини маршрутизатор модуль MT7688 ram 128 flash 32
 

Юрий Ботов

Moderator
Команда форума
Противоречит ras-pi Пункту 6 первого топика,
:) думаю это требование (п.6) еще не раз будет пересмотрено, после того как поймут стомость нормального блока питания достаточного для этой цели и стоимость остального обвеса. По опыту знаю что 50-70% стоимости хардвари изделия - корпус+блок питания. А реально трудозатратным будет разработка "надежного" софта. И переход на линуксовые платки позволить ТС сэкономить значительно больше, чем поиск "самого дешевого контроллера". А что до 7688 - тоже вариант, но как к нему моторы подцеплять? :) Автору придется заодно разработку печатных плат осваивать.
 

biolog

New member
С вашего позволения несколько замечаний:
1. Начинать разработку этого устройства надо не с управляющей платы а с источника питания, который будет в состоянии крутить все эти движки и не просаживать при этом напряжение. И разумеется сначала осознать потребляемые токи (может придется еще и вентиляцию принудительную делать)
2. Вторым, с чем надо определиться это драйверы двигателей. Такую кучу движков нельзя подключать непосредственно на выходы контроллера
... отсюда только будут понятны реальные габариты устройства и возможно кубик подрастет
3. Надежность это конечно хорошо, но вы знаете патаметры наждежности 3х вольтового моторчика? Я не раз сталкивался с их достаточно низким качеством изготовления. То есть надежность платы процессора это еще не все. Блоки питания тоже ведут себя по всякому.
4. Ардуино IDE это конечно хорошо, однако это противоречит с требованием надежности. Вы же не будете писать ВЕСЬ код? Разумеется вы будете использовать сторонние библиотеки... В этом и проблема. Качество большинства Ардуино библиотек весьма посредственное. С целью экономии памяти в этих библиотеках в принципе отсутствует обработка ошибок и всяких неожиданностей.
5. Тут говорили про Пайтон (Питон) - насколько я знаю, люди вашей специальности используют его для моделирования гораздо чаще чем Ардуино :) Питон - это хорошая идея.
6. Есть малоформатные "процессорные" платы из серий Raspberry Pi, Orange Pi Zero и т.п. В них есть и wifi и полноценный Питон под Linux, и с SD картой у них никаких проблем нет. Может подумать в эту сторону?
7. Также из соображений надежности имеет смысл всю межплатную коммутацию делать пайкой, а не "на разъемчиках".
Спасибо за замечания!
Попробую ответить.

1) Моторчики эти работают в разработанных нами и сделанных на нашем же ЧПУ перистальтических насосах. Почему выбрали именно эти моторы?
a) Повсеместная распространенность - легко купить, легко заменить
б) Используются в бытовой технике, что может говорить о надежности (но не факт, естественно).
б) габариты
в) цена
Про питание: на один двигатель 500мА .Тут надо понимать, что в один момент времени работает только один двигатель. При этом, двигатель включается примерно раз в 2 часа и делает 5 оборотов (что соответствует прокачке 100 мкл жидкости). Все остальное время все моторы не работают.

2) Драйвер ULN2003 (размеры учтены)

5) Про питон - да, вы правы! Где бы найти разработчика?

6) Дорого. У нас таких девайсов в пике могут быть сотни. Тут еще надо заметить, что каждый отдельный девайс имеет параллельно работающий с ним дубль. То есть, на 100 независимых параллельных экспериментов нам нужно 200 устройств.

7) Пайкой - да, так и планируем.
 
Сверху Снизу