HRP-N3 - серия источников питания с максимальной пиковой мощностью в 350% от MEAN WELL
РадиоЛоцман - Все об электронике

Открытая платформа Arduino высвобождает творческий потенциал. Часть 1

Arduino

Журнал РАДИОЛОЦМАН, декабрь 2011

Lee Goldberg

Electronic Products

Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Во многом таким же образом, как мир программирования перевернули операционные системы с открытым исходным кодом GNU, Linux и другие, аппаратные платформы с открытым исходным кодом, поддерживающие Arduino, начинают вносить свои изменения в устоявшиеся правила для многих встраиваемых приложений. Изначально разработанная для сообщества радиолюбителей и устройств формата «сделай сам», платформа прототипирования электронных устройств с открытым исходным кодом Arduino основана на гибком, легком в использовании аппаратном и программном обеспечении. Однако для многих коммерческих разработчиков немаловажную роль играет низкая стоимость платформы и быстро растущая экосистема бесплатного ПО и приложений. В этом кратком обзоре мы рассмотрим аппаратную и программную часть платформы Arduino, а также некоторые приложения на ее базе.

История Arduino

Arduino – это не специализированный продукт или технология, это экосистема аппаратного и программного обеспечения, инструментов и человеческих ресурсов, в центре которой 8-разрядные микроконтроллеры семейства megaAVR. Входящие в состав платформы компактная плата, основный на С++ язык программирования и среда программирования своей универсальностью и простотой использования во многом обязаны пробной платформе Wiring, разработанной в 2003 году Эрнандо Барраган (Hernando Barrag). Его целью было упрощение разработки электронных систем для любителей, исследователей и других непрофессионалов, обеспечивая легкий доступ ко всем возможностям и ресурсам, которые нужны опытным разработчикам. Выполненные на базе микроконтроллеров ATmega1281 и ATmega 2561, компактные и недорогие процессорные платы Wiring и WiringMini использовались для разработки интерактивных игрушек, роботов, играющих в футбол и контроллеров для сканирующего электронного микроскопа (Рисунок 1).

3D принтер Thing-O-Matic компании MakerBot использует процессорную плату Arduino
Рисунок 1. Дешевый, в сравнении с традиционными станками с ЧПУ, 3D принтер Thing-O-Matic компании MakerBot использует процессорную плату Arduino для управления шаговыми двигателями, печатающей термоголовкой и другими электромеханическими устройствами. Этот продукт превращает недорогой АБС-пластик в готовые объекты для создания прототипов или малотиражных изделий с допусками размеров 0.02 мм.

Платформа Arduino была разработана в Италии Массимо Банци (Massimo Banzi) и Дэвидом Куартилльз (David Cuartielles) в 2005 году как инструмент для студенческих проектов. Это расширение платформы Wiring, к которой добавлены несколько новых возможностей программирования и стандартная система соединений, позволяющие подключать к процессорной плате широкий круг взаимозаменяемых дополнительных модулей.

Аппаратная часть платформы Arduino

Как и ее предшественник, аппаратная платформа с открытым исходным кодом Arduino основана на универсальных микроконтроллерах Atmel семейства ATmega. Процессорное ядро AVR микроконтроллеров с модифицированной Гарвардской архитектурой сочетает в себе обширный набор инструкций с 32 рабочими регистрами общего назначения. Все 32 регистра непосредственно подключены к арифметико-логическому устройству (АЛУ), позволяя получить доступ к двум независимым регистрам за один машинный цикл. Микроконтроллеры ATmega могут иметь 4 или 8 КБайт внутрисхемно программируемой Flash-памяти, а также SRAM и EEPROM в различных комбинациях объема.

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

  • 23 линии ввода/вывода общего назначения;
  • 6- или 8-канальный 10-разрядный АЦП;
  • шесть каналов ШИМ;
  • последовательный интерфейс USART;
  • 2-проводной байт-ориентированный последовательный интерфейс;
  • последовательный порт SPI;
  • три гибкийх таймера/счетчика;
  • счетчик реального времени с отдельным генератором;
  • программируемый сторожевой таймер со встроенным генератором.

Форм-фактор на любой случай

Платформа постоянно совершенствуется и пополняется новыми процессорными платами, разработанными под специфический форм-фактор или конкретное приложение. Многие проекты снабжены стабилизатором напряжения и набором разъемов для доступа к сигналам и линиям ввода/вывода. Одной из популярных плат, созданных командой Arduino, является плата Arduino Uno (Рисунок 2). На плате установлен кварцевый резонатор 16 МГц, разъем интерфейса USB, разъем питания, разъем интерфейса внутрисхемного программирования и кнопка сброса. Встроенный стабилизатор напряжения позволяет питать плату от сетевого адаптера или батареи, а также от интерфейса USB.

Процессорная плата Arduino Uno
Рисунок 2. Процессорная плата Arduino Uno

Сигналы 14 цифровых линий ввода/вывода и 6 аналоговых входов платы Arduino Uno выведены на разъемы. Шесть линий ввода/вывода могут использоваться как выходы ШИМ, – удобная функция для чего угодно – от диммирования освещения до управления электродвигателями. Эти же разъемы позволяют подключать мезонинные платы расширения (называемые Arduino Shield), которые могут содержать дополнительные электронные устройства и разъемы ввода/вывода.

Arduino Nano – чуть более компактная плата на микроконтроллерах ATmega328 или ATmega168, разработанная специально для установки на макетные платы (Рисунок 3). В приложениях, для которых объем играет решающую роль, может использоваться плата Arduino Mini (Рисунок 4). Другие доступные варианты процессорных плат содержат небольшую область для макетирования или встроенные коммуникационные средства, такие как Ethernet или Bluetooth (Рисунок 5). Одним из уникальных представителей семейства Arduino является плата LilyPad, разработанная для применения в «умной» одежде (Рисунок 6). Она может быть зашита в ткань и с использованием проводящих нитей соединена со встроенными источниками питания, датчиками и исполнительными устройствами. Плату даже можно стирать.

Arduino Nano
Рисунок 3. Arduino Nano.

Arduino Mini
Рисунок 4. Arduino Mini.

Arduino Ethernet
Рисунок 5. Arduino Ethernet.

Arduino LilyPad
Рисунок 6. Arduino LilyPad.

Программирование Arduino

Аппаратная платформа Arduino поддерживается пакетом программного обеспечения с открытым исходным кодом, в который входит интегрированная среда разработки (IDE), стандартный язык программирования с компилятором и загрузчик, запускаемый непосредственно на процессорной плате.

Разработка программного обеспечения осуществляется с помощью Arduino IDE – основанного на языке программирования Processing и проекте Wiring кросс-платформенного приложения, написанного на Java. Хотя первоначально оно создавалась как введение в программирование для новичков, не знакомых с разработкой ПО, Arduino IDE имеет возможности расширения, позволяющие опытным программистам работать более комфортно и продуктивно. Редактор кода включает в себя такие функции, как подсветка синтаксиса, подсветка скобок и автоматический отступ, а также имеется функция компиляции и загрузки программы в микроконтроллер один щелчком мыши.

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

Окончание читайте здесь

Перевод: Vadim по заказу РадиоЛоцман

На английском языке: Arduino Open Source Platform Unleashes Creativity. Part 1

Электронные компоненты. Бесплатная доставка по России
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя