Школа для Электрика. Все Секреты Мастерства. Образовательный сайт по электротехнике  
ElectricalSchool.info - большой образовательный проект на тему электричества и его использования. С помощью нашего сайта вы не только поймете, но и полюбите электротехнику, электронику и автоматику!
Электрические и магнитные явления в природе, науке и технике. Современная электроэнергетика, устройство электрических приборов, аппаратов и установок, промышленное электрооборудование и системы электроснабжения, электрический привод, альтернативные источники энергии и многое другое.
 
Школа для электрика | Правила электробезопасности | Электротехника | Электроника | Провода и кабели | Электрические схемы
Автоматизация | Тренды, актуальные вопросы | Передовые энергетические технологии | Обучение электриков | Контакты



 

База знаний | Избранные статьи | Эксплуатация электрооборудования | Электроснабжение
Электрические аппараты | Электрические машины | Электропривод | Электрическое освещение

 Школа для электрика / Основы электроники / Тренды, актуальные вопросы / Микроконтроллеры, встраиваемая электроника и семейство плат Arduino


 Школа для электрика в Telegram

Микроконтроллеры, встраиваемая электроника и семейство плат Arduino



Встраиваемая электроника (Embedded electronics) присутствует в бесчисленном количестве устройств и приборов, в основе работы которых лежат микроконтроллеры.

Микроконтроллер - это компактная интегральная схема, которая управляет определенной операцией во встраиваемой системе (Embedded system).

Arduino - платформа для электронного прототипирования с открытым исходным кодом, предложила первую попытку просто встроить системы, представив более широкую концепцию одноплатных микроконтроллеров.

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

Плата Ардуино

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

По сути, любая вычислительная система включает:

  • Процессор, выполняющий набор инструкций;

  • Периферийные устройства ввода / вывода для приема и передачи данных;

  • ОЗУ для временного хранения данных при обработке;

  • Может также иметь дополнительную память для постоянного хранения некоторых данных или программ.

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

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

Серверы - это выделенные компьютеры, используемые для размещения веб-сайтов, приложений и служб в Интернете.

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

Суперкомпьютеры - это мощные компьютеры, которые предназначены для максимально быстрого выполнения нескольких конкретных программ.

Мэйнфреймы также являются мощными компьютерами, но они предназначены для одновременного выполнения множества программ.

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

Устройство Интернета вещей (IoT), которое также является встраиваемой системой, также может взаимодействовать с облачной платформой на сервере.

Пример встраиваемой системы - Embedded system

Встраиваемые системы и микроконтроллеры

Самым распространенным компьютерным приложением являются встраиваемые системы. Около 98 процентов микропроцессоров используются во встраиваемых приложениях.

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

Микроконтроллеры - это системы «компьютер на кристалле», которые включают микропроцессор, ОЗУ, ПЗУ, каналы ввода / вывода и дополнительные периферийные устройства в виде единой интегральной схемы. Они похожи на микросхемы System-on-Chip, но несколько менее сложны.

Процессор, встроенный в микроконтроллеры, специально разработан для управления подключенными периферийными устройствами ввода / вывода, использования встроенных ОЗУ и ПЗУ и управления встроенными дополнительными периферийными устройствами микроконтроллера.

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

Микроконтроллеры встроены в электронные устройства для управления отдельными функциями. Именно поэтому микроконтроллеры еще называют встраиваемыми контроллерами.

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

Они запрограммированы на выполнение последовательной программы, которая может требовать или не требовать ввода данных пользователем.

Программа на микроконтроллере просто интерпретирует входящие данные, манипулирует ими в соответствии с запрограммированными инструкциями и передает результаты периферийным устройствам ввода-вывода для выполнения некоторых действий.

Это действие происходит для электронного управления электрической или механической системой.

Управление квадракоптером

Электронное устройство может иметь несколько микроконтроллеров, каждый из которых выполняет определенные функции. Эти микроконтроллеры могут связываться друг с другом и / или с центральным компьютером.

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

Коммуникационные интерфейсы могут включать в себя универсальный ввод / вывод (GPIO), параллельные порты и интерфейсы последовательной связи. Некоторые из типичных интерфейсов последовательной связи, поддерживаемых микроконтроллерами, включают UART, USART, I2C, SPI, 1-Wire, Microwire, USB и другие.

Микроконтроллеры также имеют дополнительные функции, такие как аппаратные прерывания и таймеры / счетчики, которые обычно используются во встроенных приложениях. Встроенная вторичная память микроконтроллера может быть флэш-памятью, EPROM или EEPROM.

В программируемой электронике микроконтроллеры при создании различных электронных устройств чаще всего используются в комплекте с:

  • Устройством отображения (такие как светодиоды, твердотельные накопители, ЖК-дисплеи, графические ЖК-дисплеи и т. д.);

  • Датчиками (например, датчик температуры, датчик влажности, датчик давления и т. д.);

  • Модулями для конкретных приложений (например, отпечатки пальцев, GPS, GSM / GPRS, камера и т. д.).

Электронные устройства на микроконтроллерах

Микроконтроллеры можно классифицировать разными способами в зависимости от ширины их внутренней шины, характера набора команд или архитектуры памяти.

В зависимости от ширины внутренней шины микроконтроллеры могут быть 8-, 16-, 32- или 64-разрядными. Например, 8-битный микроконтроллер будет иметь 8-битную системную шину, так что его арифметико-логическое устройство может каждый раз обрабатывать 8-битные параллельные данные.

16-битный микроконтроллер имеет 16-битную системную шину, так что его арифметико-логическое устройство может каждый раз обрабатывать 16-битные данные и так далее.

Согласно набору команд микроконтроллеры могут быть компьютером со сложным набором команд (CISC) или компьютером с сокращенным набором команд (RISC). CISC поддерживает сложные инструкции, где может потребоваться несколько простых инструкций.

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

Микроконтроллеры также могут иметь Гарвардскую или Принстонскую архитектуру памяти. Благодаря Harvard Memory Architecture микроконтроллер имеет отдельное адресное пространство памяти для данных и программирования. В Princeton Memory Architecture микроконтроллер имеет общий адрес памяти для программ и данных.

Самые популярные микроконтроллеры включают семейства 8051, AVR, PIC и RX.

Первоначально микроконтроллеры можно было программировать только на языке ассемблера. Затем появились микроконтроллеры, в которых использовался встроенный интерпретатор BASIC. Сейчас большинство микроконтроллеров запрограммированы на C (Embedded C), Python или jаvascript.

C - наиболее распространенный вариант с поддерживаемым языком программирования микроконтроллеров.

Использование языков программирования высокого уровня для программирования микроконтроллеров сделало усилия по программированию в значительной степени независимыми от платформы.

Компиляторы и интерпретаторы, предоставляемые поставщиками микроконтроллеров, могут поддерживать или не поддерживать все стандартные функции и библиотеки языка. Они также могут предоставлять дополнительные функции или библиотеки для некоторого специального оборудования, поддерживаемого микроконтроллером.

Современная программируемая электроника

Семейство Arduino

Arduino - это компания по производству оборудования и программного обеспечения с открытым исходным кодом, которая разрабатывает и производит одноплатные микроконтроллеры и комплекты микроконтроллеров.

Продукты лицензированы под GPL или LGPL. Это проект с открытым исходным кодом, который получает поддержку от мирового сообщества пользователей.

Платы микроконтроллеров компания поставляет в предварительно собранном виде и в виде комплектов для самостоятельной сборки.

Большинство плат микроконтроллеров под Arduino имеют 8-битный микроконтроллер AVR. Платы предварительно запрограммированы с помощью загрузчика, поэтому встроенные программы можно легко загружать во встроенную флэш-память напрямую из IDE на плату микроконтроллера через USB.

Платы микроконтроллера оснащены стандартными интерфейсами и выводами GPIO, что означает, что они готовы к взаимодействию с аналоговыми и цифровыми датчиками, исполнительными механизмами и интерфейсами передачи данных.

Комплект Ардуино для обучения электронике для начинающих

Поскольку эти платы готовы к использованию с любыми датчиками, исполнительными механизмами или экранами, создание прототипов и тестирование конструкций встраиваемых систем становится быстрым и удобным. Большинство плат Arduino запрограммированы на Embedded C.

Arduino предоставляет онлайн-веб-редактор и настольную среду разработки для написания, редактирования и компиляции встроенных кодов в платы.

Платы микроконтроллеров, разработанные для приложений Интернета вещей, можно программировать с использованием Python или Jаvascript.

Официальные платы микроконтроллеров семейства Arduino:

  • Arduino Uno Rev3;

  • Arduino Uno Wi-Fi REV2;

  • Arduino Nano 3 BLE Sense;

  • Arduino MKR WAN 1300 (Arduino Pro);

  • Arduino Nano 3 BLE;

  • Arduino Nano 33 IoT;

  • Arduino MKR Vidor 4000;

  • Arduino MKR WAN 1310 (Arduino Pro) ;

  • Arduino MKR NB 1500 (Arduino Pro);

  • Arduino Nano 33 BLE Sense (Arduino Pro);

  • Arduino MKR FOX 1200 (Arduino Pro);

  • Arduino Nano 33 BLE (Arduino Pro);

  • Arduino Nano 33 IoT;

  • Portenta H7 (Arduino Pro);

  • Arduino MKR WiFi 1010;

  • Arduino Mega 2560 Rev3;

  • Arduino Nano;

  • Arduino Yun Rev 2;

  • Arduino Due;

  • Arduino MKR GSM 1400 (Arduino Pro);

  • Arduino MKR1000 WIFI;

  • Arduino Micro;

  • Arduino Leonardo;

  • Arduino Zero;

  • Arduino MKR ZERO.

Программирование микроконтроллеров при создании самодельных электронных устройств

Некоторые из этих плат (платы микроконтроллера Arduino Pro) поставляются со встроенными датчиками, модулем Bluetooth и модулем Wi-Fi. Платы были разработаны для приложений IoT. Например, в Portenta H7 есть искусственный интеллект на устройстве для промышленного управления и робототехники.

Платы микроконтроллера Arduino Pro также можно запрограммировать для приложений IoT с помощью Arduino Pro IDE или Arduino Create Web Editor. Эти профессиональные платы в настоящее время доступны в трех семействах: Portenta, MKR и Nano.

Arduino также предоставляет решение Pro Gateway для приложений IoT, подключающихся к облаку LoRaWAN, и размещает облачную платформу (облако Arduino IoT для разработки IoT).

Кроме того, компания предоставляет несколько экранов для подключения и готовых встраиваемых решений.

Некоторые из официальных щитов включают Arduino MKR GPS Shield, Arduino Ethernet Shield 2, Arduino Motor Shield Rev3, Arduino 4 Relays Shield, Arduino MKR Motor Carrier, Arduino MKR Mem Shield, Arduino MKR Connector Shield, Arduino MKR CAN Shield, Arduino MKR Therm Shield и другие. Также предлагается несколько интересных комплектов и аксессуаров.

Поскольку Arduino является проектом с открытым исходным кодом, а это означает, что его оборудование и программное обеспечение свободно, то также доступны совместимые c Arduino производные платы. Один из примеров - Freeduino (Фредуино).

Другие совместимые платы: DFRduino Pro Mini, DFRduino UNO R3, Cheapduino, Beatle, Romeo-V2, Seeduino Lite, Seeduino LoRaWAN, Seeduino Stalker, GSTduino, Roboduino и т. д.

Некоторые из совместимых с Arduino производных промышленного уровня включают Controllino, Iono, ARDBOX, Industruino и FA-DUINO.

Наклейка, совместимая с Arduino, означает, что эти производные платы также могут быть запрограммированы с помощью Arduino IDE или Arduino Web Editor.

Программируемая цифровая электроника

Начало работы

Проект Arduino был создан для того чтобы сделать разработку встраиваемых систем быстрой и беспроблемной.

В отличие от типичных микроконтроллеров (например, 8051, AVR, PIC или RX), Arduino не требует никаких специальных устройств для программирования или универсальных программаторов. Все, что требуется, - это плата Arduino и установка Arduino IDE на ПК или ноутбуке.

Основные встроенные приложения могут быть разработаны и протестированы с использованием стандартных плат Arduino, запрограммированных с помощью Arduino IDE или Arduino Web Editor.

Разработчики продвинутого уровня могут использовать приложения IoT через платы Arduino Pro, которые программируются с помощью Arduino Pro IDE или Arduino Create Web Editor.

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

Смотрите также по этой теме: Что такое платформа Ардуино и для чего она нужна

Телеграмм канал для тех, кто каждый день хочет узнавать новое и интересное: Школа для электрика