Является ли Raspberry Pi подходящей платформой для разработки встраиваемых решений?

Raspberry Pi был разработан как платформа для обучения студентов информатике. Он привлекает низкой стоимостью и широкой доступностью, но можно ли его использовать в качестве платформы для коммерческих встраиваемых решений?
1403
В избранное

Недорогой одноплатный компьютер Raspberry Pi (SBC) изначально разрабатывался как платформа для обучения студентов информатике, но постепенно сфера его применений расширилась и до других приложений, включая использование в качестве встраиваемого решения. Теперь, когда в мире было продано более 25 миллионов этих компьютеров, вокруг него возникла целая экосистема.

Учитывая низкую стоимость решения и широкую доступность, имеет ли смысл использовать Raspberry Pi в качестве платформы для коммерческих встраиваемых решений? В этой статье мы рассмотрим его пригодность в качестве аппаратной платформы для коммерческих продуктов, обсудим преимущества и недостатки, а также типы приложений, для которых Raspberry Pi подходит лучше всего.

Мы углубимся в такие вопросы, как выбор встроенной операционной системы, языки и среды разработки программного обеспечения, способы расширения встроенной периферии, включая интерфейсы CPU, GPU и GPIO. Также обсудим стратегии использования миникомпьютера, в том числе создание прототипов и небольших партий, и использование вычислительного модуля Raspberry Pi. Наконец, мы рассмотрим ближайших конкурентов Raspberry Pi и подумаем над тем, что мы можем ожидать в будущем.

Основные характеристики

Raspberry Pi - это серия SBC, разработанных некоммерческим фондом Raspberry Pi Foundation как платформа для продвижения компьютерного образования в школах и развивающихся странах. Первоначально выпущенный в 2012 году, компьютер основан на системе на чипе Broadcom (SoC), включающем в себя ARM процессор, GPU и RAM. Теперь линейка состоит из ряда устройств, начиная от Raspberry Pi Zero за 5 долларов и до Raspberry Pi 4 Model B за 35 долларов (Рис.1) .

Raspberry Pi Model 4 B - новейшая модель компьютера на базе четырехъядерного процессора Arm Cortex-A72

Рис. 1. Raspberry Pi Model 4 B - новейшая модель компьютера на базе четырехъядерного процессора Arm Cortex-A72

Характеристики Raspberry Pi 4 Model B:

  • 4-ядерный процессор Cortex A-72 с тактовой частотой 1,5 ГГц
  • GPU Broadcom VideoCore VI
  • 1, 2 или 4 ГБ оперативной памяти
  • 2 порта USB 2.0 и 2 порта USB 4.0
  • 2 видео выхода HDMI
  • Аналоговые и цифровые (HDMI) аудиовыходы
  • 1000 Мбит/с Ethernet, 2.4/5 ГГц WiFi, Bluetooth 5.0
  • Слот MicroSD

Кроме того, в линейку одноплатных компьютеров входит менее известный Raspberry Pi Compute Module. Этот вариант Raspberry Pi упакован в 200-контактный формат DIMM и предназначен для использования в качестве вычислительного ядра для различный встраиваемых решений. Подробнее об этом позже.

Платы поддерживают несколько вариантов операционной системы. Raspberry Pi Foundation предоставляет Raspbian, дистрибутив Linux на основе Debian, оптимизированный для этой платформы, включающий графический рабочий стол и доступ к сотням приложений на основе Linux. Другие варианты OC включают в себя Ubuntu, ОС RISC, несколько версий BSD Unix, Windows 10 IoT Core и некоторые неофициальные порты Android.

Сильные стороны и преимущества

Как встраиваемая платформа, Raspberry Pi обеспечивает множество преимуществ, в том числе:

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

Слабые стороны и проблемы

Преимущества выглядят отлично, не правда ли? Но все не так просто. Raspberry Pi также страдает от недостатков, которые могут оказаться критическими, если вы захотите использовать его в коммерческом продукте. Вот несколько из них:

Стоимость

Самое популярное замечание заключается в том, что стоимость в 35 долларов вводит в заблуждение, поскольку вам также нужны клавиатура, мышь, дисплей, карта MicroSD и блок питания, и все это значительно увеличивает стоимость. (Некоторые из этих аксессуаров не относятся к встраиваемым системам, но вам нужно будет учитывать стоимость всего дополнительного оборудования кроме самой платы). Как правило, на этот компьютер не предоставляется оптовая скидка (кроме Compute Module ).

Функциональность

Как у готового потребительского продукта, функциональность Raspberry Pi фиксирована, в отличие от пользовательских плат, которые могут быть разработаны для конкретных нужд. Характеристики жестко заданы, начиная с площади печатной платы. Если вам нужно получить больше оперативной памяти или более быстрый процессор, нет никакой возможности сделать это.

Доступность

Модуль изготавливается только одним производителем. Хотя для большей части дизайна открыты исходники, некоторые части SoC проприетарны. (Как правило, это относится ко всем современным устройствам с некоторыми исключениями, такими как RISC-V).

Температура

Raspberry Pi работает в коммерческом диапазоне температур, что делает его непригодным для военных, аэрокосмических, автомобильных и многих промышленных применений, где необходим более широкий температурный диапазон. (По-видимому, ограничивающим фактором является чип Ethernet/USB LAN9514, который рассчитан на температуру от 0 до 70°C, а SoC – от -40°C до 85°C.)

Дорожная карта

Дорожная карта продукта не опубликована. Новые модели, как правило, анонсируются только после начала поставок, но Raspberry Pi Foundation хорошо поддерживает обратную совместимость, и актуальные модели доступны в течение некоторого времени. Например, Raspberry Pi 4B и Compute Module 3+ будут оставаться в производстве по крайней мере до января 2026 года.

Другие проблемы

На аппаратном уровне Raspberry Pi имеет ряд ограничений, как результат компромисса между ценой и производительностью, о которых вам следует знать:

  • CPU и GPU используют одну и ту же оперативную память (вы можете настроить их разделение)
  • Интерфейс USB – это USB 2.0 (модель 4B поддерживает более новый стандарт 3.0)
  • Порты USB и Ethernet используют одну и ту же шину и один и тот же контроллер, что ограничивает полосу пропускания (это не относится к модели 4B, которая имеет настоящий Gigabit Ethernet)
  • Нет встроенного АЦП
  • Система не имеет часов реального времени и, как правило, использует сетевое соединение для получения текущего времени при включении питания
  • Операционная система, по умолчанию Raspbian, предназначена для использования на настольных компьютерах и не очень подходит для встроенных приложений (хотя есть и другие альтернативы, которые можно использовать).

Устранение недостатков

Несмотря на эти недостатки, Raspberry Pi иногда имеет смысл использовать для разработки встроенных приложений. Вот несколько способов устранения потенциальных ограничений, которые были описаны выше.

Compute Module Raspberry Pi (рис. 2) специально предназначен для использования в коммерческих продуктах. Он имеет существенно меньшую площадь платы и на нем не установлена большая часть периферии, которая может не понадобиться. Также вы получаете больше портов GPIO. Минусом решения использования Compute Module в качестве недорогого вычислительного ядра является необходимость проектирования и изготовления платы-носителя, которая будет обеспечивать необходимую функциональность, систему питания и интерфейсы ввода-вывода.

Compute Module обеспечивает большую часть функциональности Raspberry Pi без всех разъемов

Рис. 2. Compute Module обеспечивает большую часть функциональности Raspberry Pi без всех разъемов. Доступны различные версии, соответствующие функциональности семейства Raspberry Pi

Есть даже специальные сервисы, такие как Geppetto, которые помогут разработать и изготовить печатную плату для вашего модуля с минимальными знаниями в области проектирования электроники.

Ограничения в производительности можно устранить, используя последнюю версию Raspberry Pi 4B, с более мощным процессором, чем предыдущие модели. Для оптимизации использования процессора и памяти рекомендуется использовать эффективные компилируемые языки, такие как C или C ++. (Для Python и Java обычно требуется больше ресурсов.)

Многие системы использует Qt , который идеально подходит для встроенных приложений, особенно с пользовательским интерфейсом на основе сенсорного экрана. Qt имеет простой декларативный язык, называемый QML или Qt Markup Language, обычно используемый для организации пользовательского интерфейса приложения. Остальная часть приложения пишется на C++. Qt, при использовании QML выгружает большую часть рендеринга в GPU через OpenGL, что идеально подходит для платформы Raspberry Pi.

Встроенные приложения должны работать под операционной системой, предназначенной для встроенных приложений. На рынке доступно множество разновидностей встроенного Linux. Хотя вы можете создавать свои собственные сборки с нуля, я настоятельно рекомендую использовать фреймворк Yocto для настройки и создания собственного дистрибутива. Он с открытым исходным кодом, хорошо документирован и поддерживает Raspberry Pi.

Некоторые аппаратные ограничения Raspberry Pi могут быть устранены с помощью подключения дополнительного оборудования. Компьютер имеет интерфейс MIPI DSI для подключения ЖК-дисплеев. Аудиовход или часы реального времени можно подключить через порты GPIO (например, есть поддержка аудио I2S).

Система обычно запускается с MicroSD карты (eMMC для Compute Module). Для оптимальной производительности у вас должна быть высококачественная и высокоскоростная карта. Чтобы избежать необходимости управлять SD-картами, особенно в системе, которая может состоять из большого количества устройств, вы можете использовать возможность загрузки по сети. Для этого будет также полезен модуль Power Over Ethernet (PoE) для Raspberry Pi, позволяющий отказаться от локального источника питания.

Raspberry Pi может быть хорошим решением для продуктов с небольшим объемом производства, в противном случае неповторяющиеся затраты на проектирование (NRE) будут слишком велики. Имеет смысл его использовать в качестве прототипов или концептов, которые впоследствии можно было перенести на пользовательскую плату (или, возможно, на Raspberry Pi Compute Module).

Наконец, для чувствительных к цене приложений или продуктов, которые требуют минимальной площади платы, можно использовать Raspberry Pi Zero.

Альтернативы и конкуренты

Популярность Raspberry Pi породила новый сегмент рынка недорогих SBC. Сейчас доступны десятки альтернатив, многие с похожими названиями, такие как Banana Pi и Orange Pi. Ни один из них не является полностью аппаратно совместимым с Raspberry Pi, большинство пытаются как-то отличаться, например, в цене, производительности, использовании различных архитектур ЦП или большем количестве аппаратных интерфейсов. Многие устройства нацелены на быстро растущий рынок IoT. Вот несколько примеров таких устройств:

  • BeagleBoard серия встраиваемых плат включает в себя оригинальную BeagleBoard, BeagleBone Black и новую Pocket Beagle. Они разработаны специально для встроенных приложений; более мощные платы предлагают большую производительность (правда, по более высокой цене), чем Raspberry Pi.
  • Pine64 - это семейство SBC доступно в трех моделях. Эта же компания разработала нетбук Pinebook.
  • MinnowBoard предлагает серию из четырех разных SBC с процессором Intel Atom, совместимым с x86.
  • ODROID - это серия SBC, которые, как следует из названия, могут работать под управлением операционной системы Android, а также Ubuntu и других дистрибутивов Linux.
  • Intel NUC - это серия небольших (4х4 дюйма) мини-ПК, в основном предназначенных для замены настольного компьютера. Они также могут быть использованы для встроенных приложений.

При выборе альтернативы Raspberry Pi стоит учитывать, что многие продукты появляются и быстро исчезают с рынка, и вы рискуете построить свой проект вокруг решения, которое быстро может стать недоступным. Причем это характерно не только для мелких игроков, вышедших из Кикстартера, но и для крупных компаний, таких как Intel, которые представили, а затем быстро прекратили выпуск продукции.

Одним из возможных решений использования Raspberry Pi является его включение в качестве дополнительной опции в готовое решение. Например, коммерческие дисплеи от NEC имеют слот для Raspberry Pi Compute Module. Это дает возможность использовать для запуска приложений Raspberry Pi в дополнение к основным функциям, которые устройство выполняет на своем главном процессоре. Такой способ запуска изолирует менее доверенный сторонний код приложения от основной системы.

Заключение

В принципе, классический Raspberry Pi не предназначен для использования в качестве платформы для коммерческих продуктов, хотя его низкая стоимость и широкая доступность делают его подходящим для ряда встроенных приложений (с учетом изложенных выше ограничений). Raspberry Pi Compute Module, напротив, создавался именно для применений в качестве встраиваемого решения, и существует ряд примеров коммерческих проектов (дисплеи NEC, промышленные модули Revolution Pi и ряда других производителей), в которых можно почерпнуть идеи для собственных проектов.

Источник: https://www.electronicdesign.com

 
Производитель: Raspberry
Наименование
Производитель
Описание Корпус/
Изображение
Цена, руб. Наличие
Raspberry Pi 3 Model B
Raspberry Pi 3 Model B
Raspberry
Арт.: 2092497 ИНФО PDF
Доступно: 21 шт. 3370,00
Raspberry Pi 3 Model B Новое устройство построено на базе 64-битного процессора ARM Cortex A53 с частотой 1,2 ГГц, который, по заверению производителя, на 50% быстрее его предшественника 4-ядерного ARM Cortex-A7 CPU.…
Raspberry Pi 3 Model B 3370,00 от 5 шт. 3220,00 от 10 шт. 3060,00
3 шт.
(на складе)
18 шт.
(под заказ)
RASPBERRY-PI3-CASE
RASPBERRY-PI3-CASE
Raspberry
Арт.: 2096422 ИНФО PDF
Доступно: 87 шт. 512,00
Корпус с крышкой для Raspberry Pi 3 Model B Производитель: Element14 Цвет Корпуса: Малиновый, Белый Материал Корпуса: ABS пластик Глубина:96мм Высота:26мм Ширина:71мм Подходит для: Raspberry Pi Model B+, Raspberry Pi 2 Model B, Raspberry Pi 3 Model B
RASPBERRY-PI3-CASE 512,00 от 5 шт. 489,00 от 10 шт. 465,00
47 шт.
(на складе)
40 шт.
(под заказ)
Raspberry Pi 3 Model B+
Raspberry Pi 3 Model B+
Raspberry
Арт.: 2719910 ИНФО PDF
Поиск
предложений
Raspberry Pi3 Model B+ - обновленная версия легендарной линейки RPi.
Raspberry Pi 3 Model B+
-
Поиск
предложений

Сравнение позиций

  • ()