@your_mirror

Какую платформу (arduino, raspberry, stf32) выбрать для обучения и сборки рабочего решения?

Всем привет!
Я только планирую заняться сбором собственного устройства и пытаюсь выбрать платформу, которая позволяла как обучиться, так и сразу собрать рабочий вариант.

Так как вариантов очень много (arduino, stf32, raspberryи т.д.), то возникают трудности в выборе.
Хотелось бы знать плюсы и минусы каждой из платформ и какая лучше всего подойдет для обучения и в дальнейшем сбора рабочего варианта с неограниченной расширяемостью.

Если вкратце, то есть два датчика по влажности, если влажность на одном из них порога например 90%, то необходимо зажечь светодиод. Проблема в том, что в дальнейшем возможно будет стоять 5, 10 или 20 датчиков и мне нужно выбрать платформу такой, чтобы я мог ее расширять.
  • Вопрос задан
  • 1044 просмотра
Решения вопроса 2
Ocelot
@Ocelot
Распишу основные плюсы и минусы архитектур, а финальный выбор - за вами.

Arduino / AVR
+ Очень низкий порог вхождения
+ Тонны документации и примеров, в т.ч. на русском
– Дорого
– Мощности хватает не на всё. Опрос десятка датчиков - нормально, а вот графический LCD, например, USB или камера - уже проблематично.
– Arduino IDE упрощает программирование ценой раздувания и замедления кода. Наверное, лучше сразу писать на чистом C/C++.

AVR32
+ Мощные
+ Легкий переход с архитектуры AVR (по крайней мере, так утверждает Atmel)
– Дорого
– Мало документации

STM32
+ На порядок мощнее AVR
+ Стоят столько же или даже меньше
+ Есть прекрасные отладочные платы (я про серию Discovery)
+ Вполне неплохо с документацией. Есть готовые руководства по "быстрому старту".
– Поддержка все-таки не такая широкая, как у AVR
– Архитектура сложна для начинающих. Это обратная сторона мощности, и тут нет ардуиноподобной обёртки, которая спасает от "выстрела себе в ногу".

Другие ARM Cortex M (например, LPC11xx)
+ На порядок мощнее AVR
+ Стоят столько же или даже меньше
– С документацией похуже, чем у STM32
– Как всякий ARM, сложны для начинающих

Raspberry Pi
+ Полноценный компьютер
+ Дешево за систему с такой производительностью
+ Можно поставить Linux и фигачить код на Питоне
– Чтобы использовать на все 100% и писать что-то низкоуровневое, нужно быть профи
– Доступен только как плата в сборе. Взять одно ядро и использовать в своей разработке? Забудьте.
Ответ написан
Комментировать
anthtml
@anthtml
Системный администратор программист радиолюбитель
Все представленные вами платформы слишком различны и у каждой имеются свои задачи и потребность
ардуино - самая простая начальная версия и по обучению, так как сильно распространена, и по функционалу - в большинстве своем для небольших и средних задач с мк ее и аналогов на чипах avr достаточно
малинка - это ни микроконтроллер, а полноценный одноплатный ПК, на котором можно запускать полноценную версию линукс или сильно урезанною версию винды (в последней модели), это уже идет уровень где нужна большая виртуализация вычислений и их интеграция в компьютерные вычислительные сети
стм - развивающееся направление, местами чипы дешевле и мощнее устаревающих avr, но у них нет такой среды поддержки и широкого сообщества как уже успело накопить себе ардуино, и программирование там немного сложнее и более аппаратно зависимо.
Так что все три платформы необходимо брать во внимание и изучая разбираться какая задача к какой платформе больше подходит.
В вашей задаче изначально можно взять ардуино, с 20ю датчиками она прекрастно справится, если нужно просто зажигать светодиоды. если хотите чтобы это все логгтровалось, строились красивые графики и была возможность отправки смс и тому подобного, можете смотреть на малинку, но начните с малого и простого.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
a_volkov1987
@a_volkov1987
Инженер-схемотехник
Вашу задачу можно решить самыми слабыми процессорами. Все, что вам нужно - придумать архитектуру устройства.
Вот вариант: найти датчики, которые гоняют свои показания в общую шину (I2C, как вариант) или собрать кучку плат вида датчик-преобразователь интерфейса и одну плату-приемник показаний.
В качестве интерфейса общения можно взять RS-485, который неплохо защищен от помех.
В качестве контроллеров пойдет хоть atmega8, хоть at89s8253.
Приемник может просто ждать сообщений от датчиков и парсить их, может сам периодически опрашивать датчики - это уже на ваше усмотрение.
Ответ написан
Комментировать
Попробуйте ESP8266. Например ru.aliexpress.com/item/D1-mini-Mini-NodeMcu-4M-byt...
Там и 5v есть и заморачиваться с прошивкой не надо. Всё через USB и на LUA.
Ответ написан
Комментировать
Neuroware
@Neuroware
Программист в свободное от работы время
На лично опыте, нет смысла заморачиваться, цена при вашем раскладе выходит копеечная для любой arm платформы. Сейчас работает один подобный проект, около 20 датчиков, куча электрозамков, светодиодных лент, звуков и прочей шелухи, работает без единого глюка уже несколько месяцев, собрана на простейшей ардуине, что на e-bay за 300 рублей взять можно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы