Arduino
Arduino IDE с примером простой программы. |
|
| Тип | |
|---|---|
| Разработчик |
Arduino Software |
| Написана на | |
| Операционная система | |
| Последняя версия | |
| Лицензия | |
| Сайт | |
Arduino — аппаратная вычислительная платформа, основными компонентами которой являются простая плата ввода/вывода и среда разработки на языке Processing/Wiring. Arduino может использоваться как для создания автономных интерактивных объектов, так и подключаться к программному обеспечению, выполняемому на компьютере (например, Adobe Flash, Processing, Max/MSP, Pure Data, SuperCollider). Рассылаемые в настоящее время версии могут быть заказаны уже распаянными. Информация об устройстве платы (рисунок печатной платы) находится в открытом доступе и может быть использована теми, кто предпочитает собирать платы самостоятельно. Микроконтроллеры ATmega328 дёшевы и стоят около 10$.
Проект Arduino был удостоен почётного упоминания при вручении призов Prix Ars Electronica 2006 в категории Digital Communities.[2][3]
Описание платформы[править]
Аппаратная часть[править]
Плата Arduino состоит из микроконтроллера Atmel AVR (ATmega328P и ATmega168 в новых версиях и ATmega8 в старых), а также элементов обвязки для программирования и интеграции с другими схемами. На многих платах присутствует линейный стабилизатор напряжения +5В или +3,3В. Тактирование осуществляется на частоте 16 или 8 МГц кварцевым резонатором (в некоторых версиях керамическим резонатором[4]). В микроконтроллер предварительно прошивается загрузчик BootLoader, поэтому внешний программатор не нужен.
На концептуальном уровне все платы программируются через RS-232 (последовательное соединение), но реализация этого способа отличается от версии к версии. Плата Serial Arduino содержит простую инвертирующую схему для конвертирования уровней сигналов RS-232 в уровни ТТЛ, и наоборот. Текущие рассылаемые платы, например, Diecimila, программируются через USB, что осуществляется благодаря микросхеме конвертера USB-to-Serial FTDI FT232R. В версии платформы Arduino Uno в качестве конвертера используется микроконтроллер Atmega8 в SMD-корпусе. Данное решение позволяет программировать конвертер так, чтобы платформа сразу определялась как мышь, джойстик или иное устройство по усмотрению разработчика со всеми необходимыми дополнительными сигналами управления. В некоторых вариантах, таких как Arduino Mini или неофициальной Boarduino, для программирования требуется подключение отдельной платы USB-to-Serial или кабеля.
Платы Arduino позволяют использовать большую часть I/O выводов микроконтроллера во внешних схемах. Например, в плате Diecimila доступно 14 цифровых входов/выходов, 6 из которых могут выдавать ШИМ сигнал, и 6 аналоговых входов. Эти сигналы доступны на плате через контактные площадки или штыревые разъемы. Также доступны несколько видов внешних плат расширения, называемых «shields» («щиты»), которые присоединяются к плате Arduino через штыревые разъёмы.
Модели[править]
| Arduino | Процессор | Напряжение питания | Флеш-память, КБ |
EEPROM, КБ |
SRAM, КБ |
Двоичные входы/выходы |
…c ШИМ |
Аналоговые входы |
USB-интерфейс | Прочие интерфейсы |
Размеры, мм |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Due | Atmel SAM3X8E ARM Cortex-M3 | 3.3 В | 512 | 256 | 54 | 12 | 12 | ATmega16U2 | 101.6 × 53.3 | ||
| ADK | ATmega2560 | 5 В | 256 | 4 | 8 | 54 | 14 | 16 | ATmega8U2 | MAX3421E USB хост |
101.6 × 53.3 |
| BT (Bluetooth) | ATmega328 | 5 В | 32 | 1 | 2 | 14 | 4 | 6 | Нет | Bluegiga WT11 Bluetooth | |
| Diecimila | ATmega168 | 5 В | 16 | 0.5 | 1 | 14 | 6 | 6 | FTDI | 68.6 × 53.3 | |
| Due[5] | ATMEL SAM3U | 256 | 0[6] | 50 | 54 | 16 | 16 | ||||
| Duemilanove | ATmega168/328P | 5 В | 16/32 | 0.5/1 | 1/2 | 14 | 6 | 6 | FTDI | 68.6 × 53.3 | |
| Ethernet | ATmega328 | 5 В | 32 | 1 | 2 | 14 | 4 | 6 | Нет | Wiznet Ethernet MicroSD |
|
| Fio | ATmega328P | 3.3 В | 32 | 1 | 2 | 14 | 6 | 8 | Нет | 40.6 × 27.9 | |
| Leonardo | Atmega32u4 | 5 В | 32 | 1 | 2 | 14 | 6 | 12 | Atmega32u4 | 68.6 × 53.3 | |
| LilyPad | ATmega168V or ATmega328V | 2.7-5.5 В | 16 | 0.5 | 1 | 14 | 6 | 6 | Нет | 50 ⌀ | |
| Mega | ATmega1280 | 5 В | 128 | 4 | 8 | 54 | 14 | 16 | FTDI | 101.6 × 53.3 | |
| Mega2560 | ATmega2560 | 5 В | 256 | 4 | 8 | 54 | 14 | 16 | ATmega8U2 ATmega16U2 | 101.6 × 53.3 | |
| Nano | ATmega168 or ATmega328 | 5 В | 16/32 | 0.5/1 | 1/2 | 14 | 6 | 8 | FTDI | 43 × 18 | |
| Uno | ATmega328P | 5 В | 32 | 1 | 2 | 14 | 6 | 6 | ATmega8U2 ATmega16U2 | 68.6 × 53.3 |
Программное обеспечение[править]
Интегрированная среда разработки Arduino — это кроссплатформенное приложение на Java, включающее в себя редактор кода, компилятор и модуль передачи прошивки в плату.
Среда разработки основана на языке программирования Processing и спроектирована для программирования новичками, не знакомыми близко с разработкой программного обеспечения. Язык программирования аналогичен используемому в проекте Wiring[7]. Строго говоря, это C++, дополненный некоторыми библиотеками. Программы обрабатываются с помощью препроцессора, а затем компилируется с помощью AVR-GCC.
Существует полный русский перевод языка Arduino[8], предназначенный для преодоления языкового барьера при распространении платформы по России.
Версии плат[править]
Оригинальные платы Arduino производит Smart Projects.
На данный момент доступны 15 версий плат,[9] перечисленных ниже.
- Serial Arduino, программируется через последовательное соединение (разъём DB-9), используется ATmega8.
- Arduino Extreme, с USB-интерфейсом для программирования, используется ATmega8.
- Arduino Mini, миниатюрная версия Arduino, использующая поверхностный монтаж ATmega328. Не содержит конвертера USB-UART.
- Arduino Nano 3.0, ещё миниатюрнее, с питанием от USB и поверхностным монтажом ATmega328.
- LilyPad Arduino, минималистичный дизайн для носимых применений с поверхностным монтажом ATmega168 (в новых версиях ATmega328).
- Arduino NG, с USB-интерфейсом для программирования, используется ATmega8.
- Arduino NG plus, с USB-интерфейсом для программирования, используется ATmega168.
- Arduino BT, с Bluetooth-интерфейсом для программирования, используется ATmega168 (в новых версиях ATmega328).
- Arduino Diecimila, использует USB-интерфейс и Atmega168 в DIP28 корпусе.
- Arduino Duemilanove («2009»), на основе ATmega168 (в новых версиях ATmega328), с автоматическим выбором питания от USB или внешнего источника.
- Arduino Mega («2009»), на основе ATmega1280.
- Arduino Mega2560 R3 («2011»), на основе ATmega2560. Используется конвертер USB-UART на базе ATmega16U2.
- Arduino Uno R3 (2011), на основе ATmega328. Используется конвертер USB-UART на базе ATmega16U2.
- Arduino Ethernet (2011), на основе ATmega328. Конвертера USB-UART нет. Ethernet чип — W5100, также содержит модуль MicroSD.
- Arduino Mega ADK for Android (2011), на основе ATmega2560. Содержит USB-хост для соединения с телефонами на базе ОС Android (м/с MAX3421e). Конвертер USB-UART на базе ATmega8U2.
Открытые архитектура и код[править]
Документация, прошивки и чертежи Arduino распространяется под лицензией Creative Commons Attribution ShareAlike 2.5 и доступны на официальном сайте Arduino. Рисунок печатной платы для некоторых версий Arduino также доступен.[9] Исходный код для интегрированной среды разработки и библиотек опубликован и доступен под лицензией GPLv2.[10]
Платы расширений[править]
Ардуино и Ардуино-совместимые платы спроектированы таким образом, чтобы их можно было при необходимости расширять, добавляя в схему устройства новые компоненты. Эти платы расширений (шилды) подключаются к Ардуино посредством установленных на них штыревых разъёмов.
Существует множество различных по функциональности щитов — от простейших, предназначенных для макетирования (прототипирования), до сложных — плат управления шаговыми двигателями, плат беспроводного доступа по протоколам Bluetooth, ZigBee, WiFi, GSM и т. д.
Примеры шилдов:
Клоны[править]
Несмотря на то что документация на аппаратную часть и программный код опубликованы под лицензией «copyleft», разработчики выразили желание, чтобы название «Arduino» (и производные от него) было торговой маркой для официального продукта и не использовалось для производных работ без разрешения. В официальном документе об использовании названия Arduino подчеркивается, что проект открыт для всех желающих работать над официальным продуктом.[11]
Результатом защиты названия стало ответвление от версии платы Arduino Diecimila, сделанное группой пользователей, что привело к выпуску эквивалентной платы, названной Freeduino. Название Freeduino не является торговой маркой и может использоваться в любых целях.[12]
Некоторые программно и аппаратно совместимые продукты избегают названия «Arduino», используя в вариантах собственного названия только «duino». Они были коммерчески выпущены другими производителями.
Команда разработчиков[править]
Ядро команды разработчиков Arduino составляют: Массимо Банци (Massimo Banzi), Девид Куартиллье (David Cuartielles), Том Иго (Tom Igoe), Джанлука Мартино (Gianluca Martino), Девид Меллис (David Mellis) и Николас Замбетти (Nicholas Zambetti).
См. также[править]
| Arduino на Викискладе? |
| В Википедии есть проект «Компьютерные технологии» |
| В Википедии есть проект «Свободное программное обеспечение» |
Примечания[править]
- ↑ Arduino Software Release Notes
- ↑ Arduino на Prix Ars Electronica 2006
- ↑ Ars Electronica Archiv / ANERKENNUNG (German). Архивировано из первоисточника 12 марта 2012. Проверено 18 февраля 2009.
- ↑ Юрий Левашов резонатор Murata Ceralock Керамические резонаторы Murata. — Общая статья на примере продукции Murata. Проверено 23 июля 2010.
- ↑ Chirgwin, Richard. Arduino to add ARM board this year, The Register (20 сентября 2011). Проверено 20 сентября 2011. «Arduino [...] showed off the new version in time for the New York Maker’s Faire, with a 96 MHz clock speed, 256 KB of flash memory, 50 KB of SRAM, five SPI buses, two I2C interfaces, five UARTs and 16 12-bit analog interfaces.».
- ↑ Finder Results- Atmel Corporation
- ↑ Wiring ALPHA 1.0
- ↑ РадиоЛокН Hi-Tech — Arduino Russian
- ↑ 1 2 Hardware. Архивировано из первоисточника 12 марта 2012. Проверено 26 декабря 2008.
- ↑ Страница загрузки программного обеспечения Arduino. Software. Arduino. Архивировано из первоисточника 12 марта 2012.
- ↑ Arduino — Policy
- ↑ Freeduino Open Designs. Архивировано из первоисточника 12 марта 2012. Проверено 3 марта 2008.
Ссылки[править]
- Arduino (англ.). — Официальный сайт. Архивировано из первоисточника 12 марта 2012. Проверено 23 июля 2010.
- Arduino Russian (рус.). — Неполная русская документация по языку и библиотекам. Архивировано из первоисточника 15 мая 2012. Проверено 23 июля 2010.
- LXF100-101:Arduino (рус.). — Цикл статей по Arduino на wiki.linuxformat.ru. Архивировано из первоисточника 12 марта 2012. Проверено 23 июля 2010.
- Интервью LXF Джанлука Мартино (Gianluca Martino, проект Arduino) (рус.). — О проекте, его развитии. Архивировано из первоисточника 12 марта 2012.
- Arduino Fever (англ.). — Статья про Arduino в журнале Make. Архивировано из первоисточника 12 марта 2012. Проверено 23 июля 2010.
- Tópico: Índice do Arduino passo-a-passo (порт.). — Обучающие материалы по Arduino с исходными кодами и видео.. Архивировано из первоисточника 12 марта 2012. Проверено 23 июля 2010.

