Выбор платы на базе микроконтроллера для автоматизации одиночных систем управления | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 11 мая, печатный экземпляр отправим 15 мая.

Опубликовать статью в журнале

Автор:

Научный руководитель:

Рубрика: Технические науки

Опубликовано в Молодой учёный №9 (508) март 2024 г.

Дата публикации: 01.03.2024

Статья просмотрена: 20 раз

Библиографическое описание:

Гелашвили, А. А. Выбор платы на базе микроконтроллера для автоматизации одиночных систем управления / А. А. Гелашвили. — Текст : непосредственный // Молодой ученый. — 2024. — № 9 (508). — С. 75-82. — URL: https://moluch.ru/archive/508/111683/ (дата обращения: 02.05.2024).



В данной статье исследуется рынок плат на базе микроконтроллеров и возможности их применения в простых САУ.

Ключевые слова: микроконтроллер, микропроцессор, автоматизация, система автоматического управления.

Цели исследования.

Одиночные системы автоматического управления и контроля получают все более широкое распространение, и их реализация становится одной из главных задач для инженера автоматизации. Абсолютно очевидно, что для решения данной задачи невыгодно (а, иногда, и невозможно) использовать Пром-ПК и ПЛК, и тогда на помощь приходят простые платы на базе популярных микроконтроллеров (или же только микроконтроллеры, если ставится задача разработки собственной платы с требуемыми параметрами). Но рынок таких плат, впрочем, как и рынок микроконтроллеров, крайне широк и разнообразен, и существенную трудность в разработке представляет поиск и подбор микроконтроллера.

Целью данного исследования является рассмотрение рынка микроконтроллеров, параметров микроконтроллеров, а также категоризация микроконтроллеров (а также микропроцессоров) и плат по задачам автоматизации в рамках реализации одиночных САУ. Для этого начнем с рассмотрения нескольких наиболее популярных плат на основе микроконтроллеров или микропроцессоров [1].

1) Parallella-16.

Данная плата, в отличие от других рассматриваемых в данном исследовании, является платой на базе микропроцессора — зачастую такое решение принято называть микрокомпьютером. Отличительная особенность производителя заключается в том, что это не крупная известная компания, а успешно реализованный краудфандинговый проект. Рассмотрим ее технические характеристики.

Таблица 1

Технические характеристики Parallella-16

Модель

P1600

P1601

P1602

Название

“Microserver”

“Desktop”

“Embedded

Host

Processor

Xilinx Zynq Dual-core ARM A9

XC7Z010

Xilinx Zynq Dual-core ARM A9

XC7Z020

Coprocessor

Epiphany 16-core CPU

E16G301

Память

1 GB DDR3

Ethernet

Gigabit Ethernet

Boot Flash

128 Мб QSPI Flash

Питание

5 В DC

Хранилище

Micro-SD

USB

Нет

USB 2.0

HDMI

Нет

Micro HDMI

Пины GPIO

0

24

48

Коннекторы eLink

0

2

FPGA

28K Logic Cells

80K Logic Cells

Logic

80 DSP Slices

220 DSP slice

Вес

36 г

38 г

Размеры

90 мм x 55 мм x 18 мм

Рис. 1. Внешний вид Parallella-16

Как мы видим, данная плата микрокомпьютера идеально подходит для реализации структур типа сервера. В задачах автоматизации данная плата может найти свое применение в качестве средства для обработки и хранения данных (например, статистических, а также различных логов), а также синхронизации их, например, с базой данных на компьютере.

2) Платы на базе ESP32 .

Данная серия плат, также как и предыдущая, является по сути (согласно описанию производителя — Espressif Systems) платами на базе микропроцессора с интегрированными контроллерами Wi-Fi, Bluetooth и Thread на одном кристалле. Существует довольно много версий разной степени компактности. Рассмотрим характеристики наиболее популярного модуля — ESP32-WROOM-32 NodeMCU [3].

Таблица 2

Технические характеристики ESP32

Wi-Fi

Протоколы

802.11 b/g/n (802.11n up to 150 Mbps)

Агрегация A-MPDU и A-MSDU и поддержка защитного интервала 0,4 мкс

Центральный диапазон частот рабочего канала

2412 ~ 2484 МГц

Bluetooth

Протокол

Bluetooth v4.2 BR/EDR и Bluetooth LE

Радио

Приемник NZIF с чувствительностью -97 дБм

Передатчик класса 1, класса 2 и класса 3

AFH

Аудио

CVSD и SBC

Hardware

Интерфейсы модуля

SD-карта, UART, SPI, SDIO, I2C, ШИМ светодиода, ШИМ двигателя,

I2S, ИК, счетчик импульсов, GPIO, емкостный сенсорный датчик, АЦП,

ЦАП, TWAI, CAN 2.0

Встроенный резонатор

Кристалл с частотой 40 МГц

Встроенная SPI flash

4 МБ

Рабочее напряжение/источник питания

3.0 В ~ 3.6 В

Рабочий ток

Среднее значение: 80 мА

Минимальный ток, подаваемый

источником питания

500 мА

Рекомендуемый диапазон рабочих температур

–40 °C ~ +85 °C

Размеры

18 мм x 25.5 мм x 3.10 м

Внешний вид и распиновка ESP32

Рис. 2. Внешний вид и распиновка ESP32

Важнейшим преимуществом данной платы является возможность обновления прошивки “по воздуху”, что позволяет найти ей применение в труднодоступных системах. Немного забегая вперед, отметим, что, пожалуй, на ряду с популярнейшей платформой Arduino, применение платы ESP32 является одним из наиболее перспективных решений в области автоматизации одиночных систем.

3) MSP 430 Launch Pad.

Нельзя, при исследовании плат на микроконтроллерах, обойти самую известную — Arduino (подробнее она будет рассмотрена ниже), поскольку многие другие платы, в том числе и на базе микроконтроллера MSP 430 (производитель — Texas Instruments), были задуманы производителями как конкурент уже ставшей монополистом Arduino. В связи с этим фактом, имеет смысл рассматривать все подобные платы через призму сравнения с Arduino [4].

Таблица 3

Характеристики MSP 430 Launch Pad в сравнении с Arduino UNO

Плата

TI LaunchPad

Arduino Uno

Микроконтроллер

MSP430G2553 (16-bit RISC)

ATMega 328 (8-bit AVR)

Тактовая частота

16 МГц

16 МГц

Flash

16 КБ

2 КБ

Цифровые I/O

8

14

Аналоговые I/O

8

6

Внешний вид MSP 430 Launch Pad

Рис. 3. Внешний вид MSP 430 Launch Pad

Отметим также, что MSP430 делает достаточно сильный упор на энергопотребление — можно использовать его в проектах со слабыми источниками питания (солнечные элементы, химические элементы, ручные генераторы и прочее). Отметим и еще одну особенность — программирование платы осуществляется с помощью программы Energia, использующей уже широко распространенную связку — язык C и фреймворк Wiring, то есть то же самое, что требуется для прошивки Arduino. Во многом данная плата — очень удачный аналог, и его применение в САУ может быть таким же широким, как и у Arduino.

4) Платы серии STM32 (Blue Pill и Black Pill).

Платы серии STM32 по праву считаются главными конкурентами Arduino, в основном это связано с крайне низкой стоимостью, большим числом еще более дешевых плат-дженериков (клонов), а также простотой прошивки и хорошими характеристиками. Рассмотрим их подробнее [5] [6].

Таблица 4

Сравнение STM32 с Arduino

Плата

Arduino UNO

STM32 Blue Pill

STM32 Black Pill

Микроконтроллер

ATMega328

STM32F103

STM32F407/STM32F411

Рабочее напряжение

5 В

3,3 В; 5 В

3,3 В; 5 В

Тактовая частота

16 МГц

72 МГц

100 МГц

Количество пинов GPIO

20

30

30

Пины с АЦП

6

10

16

Поддерживаемые интерфейсы (помимо GPIO)

Serial/UART, I2C, SPI

Рис. 4. Внешний вид плат на базе STM32

Преимущества STM32 очевидны, но есть и очевидные недостатки, которые нельзя описать в таблице. На данный момент с импортом оригинальных плат на базе STM32 наблюдаются огромное проблемы, и доступность их использования в проектах сейчас обуславливается наличием плат-дженериков, однако и это не выход — поскольку для их прошивки оригинальным ПО (CUBE IDE) требуется взломанная версия программы, а такой подход в инженерии никогда не приветствуется.

5) Arduino.

Arduino сейчас является, пожалуй, основным микроконтроллером для решения “бытовых” задач автоматизации, в том числе и в комбинации с другими (например, ESP32). На ней решается множество задач, таких как, например, “умный дом” (и различные его составляющие), системы вентиляции, системы оповещения с датчиками, метеостанции с управлением системой климат-контроля и так далее. Существует несколько основных ее версий — UNO, Nano, MEGA, Leonardo, Pro Mini, Micro, Zero, а также различные их модификации с модулями беспроводной связи (Wi-Fi, Bluetooth, GPS и другие). Для решения же большинства инженерных задач применяется Arduino Nano — это связано с ее небольшими габаритами и почти ничем не отличающимся функционалом от более крупных моделей. Рассмотрим ее характеристики [7].

Таблица 5

Характеристики Arduino Nano

Микроконтроллер

ATMega328P

Напряжение логических уровней

5 В

Входное напряжение питания (рекомендованное)

7–12 В

Входное напряжение питания (предельное)

6–20 В

Порты ввода-вывода общего назначения

20

Максимальный ток с пина ввода-вывода

40 мА

Максимальный выходной ток пина 3.3V

50 мА

Максимальный выходной ток пина 5V

800 мА

Цифровые пины ввода/вывода

14 (6 выходов ШИМ)

Цифровые ШИМ-пины ввода/вывода

6

Аналоговые пины (с АЦП)

6

Разрядность АЦП

10 бит

Flash-память

32 КБ (ATMega328P), из которых 0,5 КБ используется загрузчиком

SRAM (Оперативная память)

2 КБ (ATMega328P)

EEPROM-память

1 КБ

Тактовая частота

16 МГц

Габариты

68.6мм x 53.4 мм

Вес

25 г

Внешний вид Arduino Nano

Рис. 5. Внешний вид Arduino Nano

Пожалуй, Arduino Nano является наиболее универсальным решением, если не стоит задача о создании полноценного визуального интерфейса на дисплее, или нет требований по высокому быстродействию. Для таких задач больше подходит другое решение, которое мы рассмотрим в следующем пункте.

6) Raspberry Pi.

Raspberry Pi — одноплатный компьютер очень компактного размера (“с банковскую карту”), существует множество поколений и версий различных модификаций и на базе разных процессоров. Сейчас выпущено уже пять поколений (Pi 1–5), но рассматривать мы будем самый доступный и успешно показавший себя во многих проектах Raspberry Pi 3B [8].

Таблица 6

Характеристики Raspberry Pi 3B

Процессор

Broadcom BCM2837 1.2ГГц четырехъядерный ARM Cortex-A53;

GPU

Двухъядерный VideoCore IV

Оперативная память

1ГБ LPDDR2

Беспроводная связь

Wi-Fi (802.11 b/g/n) и Bluetooth 4.1 (классический Bluetooth и LE)

Операционная система

Запуск с Micro SD карты, дистрибутивы Linux или Windows 10 IoT

Размер

85 мм x 56 мм x 17мм

Питание

Micro USB 5.1В/2.5А

Разъемы

10/100 BaseT Ethernet, HDMI (rev 1.3 & 1.4), 3.5mm jack, 4 x USB 2.0, GPIO: 40-пин, MIPI Camera Serial Interface (CSI-2), Display Serial Interface (DSI), Micro SDIO

Внешний вид Raspberry Pi 3B

Рис. 6. Внешний вид Raspberry Pi 3B

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

7) Intel 8051.

Ну и наконец, не стоит забывать самое классическое решение — однокристальный микроконтроллер серии MCS 51 гарвардской архитектуры от компании Intel, нашедший невероятно широкое применение во всевозможных системах. Для разработки устройств на данном микроконтроллере применяются отладочные платы — после прошивки МК его размещают на отдельных платах. Крайне интересное решение для несложных САУ, поскольку данный микроконтроллер обладает небольшой стоимостью и неплохими характеристиками. Рассмотрим наиболее интересные из них [9]:

— Состоит из процессорного ядра, ОЗУ, ПЗУ, последовательного порта, параллельного порта, логики управления прерываниями, таймера и так далее;

— 8-битная шина данных. Возможность обработки 8 бит данных за одну операцию.

— 16-битная адресная шина. Возможность доступа к 216 адресам памяти, то есть 64 Кб адресное пространство в ОЗУ и ПЗУ;

— Встроенное ОЗУ — 128 байт;

— Встроенное ПЗУ — 4 КБ;

— Четыре порта ввода-вывода: один двунаправленный и три квазидвунаправленных;

— Интерфейсы UART, I²C, SPI;

— Два 16-битных таймера;

— Два уровня приоритета прерываний;

— АЦП, ЦАП;

— ШИМ-генераторы;

— Энергосберегающий режим.

Внешний вид Intel 8051

Рис. 7. Внешний вид Intel 8051

Данный МК был упомянут скорее как дань уважения, нежели реальный кандидат на использование в САУ, но тем не менее ему можно найти применение в системах управления, если потребуется, но в таком случае нужно будет разрабатывать собственную плату и размещать на ней заранее прошитый микроконтроллер.

Итоги.

Для того чтобы сделать некоторые выводы, составим таблицу, в которой сравним все рассмотренные выше платы.

Таблица 7

Сравнение описанных решений

Средняя стоимость (2024 г., маркетплейсы)

Категория

Интерфейсы взаимодействия

Способ прошивки

Парадигма

Доступность

Parallella-16

15000 р

Микрокомпьютер

GPIO, WiFi, BT, USB

Напрямую (LISP)

Сервера, сложные БД и САУ

Недоступно для РФ

ESP32

500 р

Плата микроконтроллера

GPIO, WiFi, BT, USB

Любые IDE

Беспроводные САУ, Умный дом

Доступно, крайне легко приобрести

MSP 430 Launch Pad

1800 р

Плата микроконтроллера

GPIO, SPI, USB

Arduino IDE

Простые САУ, элементы умного дома

Доступно, сложно приобрести

STM32

600 р

Плата микроконтроллера

GPIO, SPI, USB

CUBE IDE

Простые САУ, элементы умного дома

Доступно, легко приобрести

Arduino

400 р

Плата микроконтроллера

GPIO, SPI, USB

Arduino IDE

Простые САУ, элементы умного дома

Доступно, крайне легко приобрести

Raspberry Pi

7000 р

Микрокомпьютер

GPIO, SPI, HDMI, USB

Напрямую, через ОС

Сервера, сложные САУ, Умный дом, IoT, SCADA-системы

Доступно, средне-сложно приобрести (для модели 3 B)

Intel 8051

800 р

Микроконтроллер

- (поддерживаются различные протоколы)

С помощью отладочной платы

Простые одноплатные САУ

Доступно, сложно приобрести

Исходя из таблицы 7, а также из собственного опыта (к сожалению, без субъективности здесь не обойтись), можно сделать следующие выводы:

— Для большинства простых задач использование Arduino будет оптимальным (здесь и цена, и достаточное быстродействие сочетаются с доступностью);

— Для решения сложных задач автоматизации стоит использовать Raspberry Pi — на ней даже можно построить целую SCADA-систему с полноценным визуальным интерфейсом на мониторе;

— Для решения несложных задач, требующих высокого быстродействия самым логичным кажется использования STM32 (для более сложных вычислений — версию Black Pill), но следует подумать, поскольку есть трудности с прошивкой дженериков (описаны ранее);

— Для разработки одноплатных систем оптимально использование Intel 8051;

— В аутсайдерах же остаются Parallella-16, в связи с недоступностью в РФ, и MSP 430 Launch Pad в связи с неоправданно высокой стоимостью и некоторыми трудностями в приобретении.

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

Литература:

  1. 10 Best Microcontroller Boards For Hobbyists And Engineers // Wonderful Engineering URL: https://wonderfulengineering.com/10-best-microcontroller-boards-for-hobbyists-and-engineers/ (дата обращения: 25.01.24).
  2. Parallella-1.x Reference Manual // Paralella URL: https://www.parallella.org/docs/parallella_manual.pdf (дата обращения: 25.01.24).
  3. ESP32­WROOM­32 // ESPRESSIF URL: https://www.espressif.com/sites/default/files/documentation/esp32-wroom-32_datasheet_en.pdf (дата обращения: 25.01.24).
  4. Недорогая альтернатива Arduino. Дадим шанс? // Хабр URL: https://habr.com/ru/articles/151196/ (дата обращения: 25.01.24).
  5. STM32F103C8T6 — Blue Pill // STM32-base URL: https://stm32-base.org/boards/STM32F103C8T6-Blue-Pill.html (дата обращения: 29.12.23).
  6. STM32F411CEU6 — Black Pill // STM32-base URL: https://stm32-base.org/boards/STM32F411CEU6-WeAct-Black-Pill-V2.0.html (дата обращения: 29.12.23).
  7. Плата Arduino Nano v 3.0: распиновка, схемы, драйвер // ARDUINO MASTER URL: https://arduinomaster.ru/platy-arduino/plata-arduino-nano/ (дата обращения: 25.01.24).
  8. Raspberry Pi 3 Model B, Одноплатный компьютер на базе процессора Broadcom BCM2837 с Wi-Fi и Bluetooth // chipdip. URL: https://www.chipdip.ru/product/raspberry-pi-3-model-b (дата обращения: 25.01.24).
  9. Intel 8051 — Википедия // ВикипедиЯ URL: https://ru.wikipedia.org/wiki/Intel_8051 (дата обращения: 25.01.24).
Основные термины (генерируются автоматически): GPIO, USB, SPI, MSP, IDE, HDMI, плат, ARM, UART, внешний вид.


Похожие статьи

Задать вопрос