Введение. Что такое ARDUINO

Arduino — это платформа для разработки простых электронных систем на базе микроконтроллеров фирмы AVR . AVR относится к семейству восьмибитных микроконтроллеров фирмы Atmel, использующих RISC-ядро, не суть важно. Короче говоря, Arduino существенно упрощает работу с микроконтроллерами AVR, особенно в домашних условиях, где нет особо времени заниматься травлением печатных плат. К тому же стоимость китайских плат Arduino не существенно отличается от стоимости самого микроконтроллера AVR (может раза в 2). Кроме того, платформа Arduino имеет свой собственный объектно-ориентированный язык Processing/Wiring , который на самом деле является надстройкой над C++. Писать программы на нем проще, чем на чистом C или C++.
Arduino хорошо подходят для создания электронной начинки для дистанционно управляемых или автономных роботов

Основные виды плат Arduino
Arduino UNO : МК AVR ATmega328, Flash 32 KB, ОЗУ 2 Кб. Цена от $3 .
Arduino Nano : тоже, что и в UNO, но более компактная. Стоит порядка $2.
Arduino Leonardo : МК AVR ATmega32u4, Flash 32 KB, ОЗУ 2 Кб. Стоит порядка $7-8.
Arduino Mega 2560 : МК AVR Atmega2560, Flash 256 KB, ОЗУ 8 kb. Стоит порядка $7-8.
Arduino Due : микроконтроллер Coxter AT91SAM3X8E, Flash 512 KB, ОЗУ 96 Кб. Стоит около $15.
Более подробнее описание наиболее популярных плат Arduino читать здесь:
Платы ARDUINO по низкой цене
Нажми на изображение, чтобы заказать в интернет-магазине:
Now 16.03.24 1:37:18, Your IP: 178.132.111.195; arduino.zl3p.com/basic/11_intro
ePN
Знакомство с Arduino
Торжественно открываю новый блог на Хабре, посвящённый Arduino! Блог об универсальном opensource-микроконтроллере Arduino, который будет интересен всем любителям микроэлектроники, самодельных гаджетов и всем, кто не боится взять в руки паяльник.

Arduino представляет собой линейку электронных блоков-плат, которые можно подключать к компьютеру по USB, а в качестве периферии — любые устройства от светодиодов до механизмов радиуоправляемых моделей и роботов. Программы для него пишутся на простом и интуитивно понятном си-подобном языке Wiring (c возможностью подключения сторонних библиотек на C/C++, например, для управления LCD-дисплеями или двигателями), компилируются и загружаются в устройство одной кнопкой, после чего вы тут же получаете работающий автономный гаджет. Никакого ассемблера, никаких лишних проводов и дорогущих деталей и программаторов — чистое творчество, включай и работай!
Применение
После короткого рассказа друзьям и знакомым про Arduino («это типа электронного конструктора, микро-ЭВМ, в который можно загрузить любую программу и получить любое другое устройство») самый часто задаваемый вопрос «А зачем это всё?» или «Какая мне от этого выгода?» Скучные люди, не правда ли? Неужели среди ваших знакомых нет ни одного радиолюбителя, а может вы и сами радиолюбитель?
Применение Arduino очень простое — не забавы ради, а развития мозга для. Интересно же линуксоидам ковыряться в коде ядра? Какая от этого польза? Почему бы вам не заняться «железным» (в противовес «софтовому») творчеством? Вот прямо сейчас рядом со мной сидит коллега-дизайнер и разбирается… с нейронными сетями. В общем что говорить, забыт дух технического творчества, забыты радиокружки и авиамодельные клубы. Все только сидят у своих компьютеров и сделать ничего путного в железе, кроме как воткнуть вилку в розетку, не могут 🙂 Соберите свой веб-сервер, цветомузыкальную установку или прикольного робота!
Сообщество любителей Arduino уже знает об успешных примерах: GPS-трекер с записью на SD-карту, простой аудиоплеер, Twitter-дисплей, электронные игры с дисплеем и тачскрином… Попробуйте купить радиодеталей и сделать что-то своё! Есть даже готовый набор для создания четырёхъядерного Arduino-кластера.
Технические характеристики
Arduino Diecimila представляет собой небольшую электронную плату (далее просто плата) ядром которой является микроконтроллер ATmega168. На плате есть: 14 цифровых входов/выходов, 6 из которых могут работать в режиме ШИМ (PWM) (а следовательно управлять аналоговыми устройствами вроде двигателей и передавать двоичные данные), 6 аналоговых входов (исходной информацией служат не логические 0/1, а значение напряжения), тактовый генератор на 16 МГц, разъёмы питания и USB, ICSP-порт (что-то вроде последовательного интерфейса для цифровых устройств), несколько контрольных светодиодов и кнопка сброса.
Этого вполне достаточно, чтобы подключить плату к USB-порту компьютера, установить нужный софт и начать программировать.
- Микроконтроллер: ATmega168
- Рабочее напряжение: 5 В
- Входное напряжение (рекомендуемое): 7-12 В
- Входное напряжение (пределы): 6-20 В
- Цифровые порты ввода/вывода: 14 портов (из них 6 с ШИМ-сигналом)
- Аналоговые порты ввода: 6 портов
- Ток для портов: 40 мА
- Ток для 3.3В источника: 50 мА
- ППЗУ (Flash Memory): 16 KB (из них 2 Кб используются загрузчиком)
- ОЗУ (SRAM): 1 Кб
- ПЗУ (EEPROM): 512 байт
- Тактовая частота: 16 МГц
Питание
Питание платы осуществляется двумя способами: по кабелю USB (при этом никаких других ухищрений делать не нужно, используется в процессе отладки), либо по специальному разъёму вроде того, что у ноутбуков. В радиомагазине можно купить такой разъём и присоединить к нему аккумулятор или 9-тивольтовую батарейку типа «Крона». Источники питания можно менять перемычкой на плате.
Преимущества и недостатки
- Цена. В Москве Arduino Diecimila можно купить меньше чем за 1000 руб. При этом вы покупаете законченное (ну почти) устройство, не требующее дополнительного оборудования, такого, как дорогостоящие программаторы и отладочные стенды, и не требует платного софта.
- Кроссплатформенность. Программное обеспечение Arduino работает на Windows, Macintosh OS X, Linux и других операционных системах, поскольку является открытым и работает на Java. Большинство микроконтроллерных систем ограничиваются Windows.
- Простая среда программирования. Программная оболочка является простой в использовании для новичков, но достаточно гибкой для продвинутых пользователей, чтобы быстро достичь нужного результата. Особенно это удобно в образовательной среде, где студенты могут с лёгкостью разобраться с платформой, а преподаватели — разработать учебный курс и задания.
- Открытый исходный код. Язык может быть расширен с помощью C++ библиотек, более продвинутые специалисты могут создать свой собственный инструментарий для Arduino на основе компилятора AVR C.
- Открытые спецификации и схемы оборудования. Arduino основан на микроконтроллерах Atmel ATMEGA8 и ATMEGA168. Схемы модулей опубликованы под лицензией Creative Commons, поэтому опытные схемотехники могут создать свою собственную версию модуля для своих нужд. Даже сравнительно неопытные пользователи могут сделать макетную версию модуля, чтобы понять, каким образом он работает и сэкономить деньги.
Ссылки:
- Официальная поддержка Arduino
- Википедия
- Проекты на платформе Arduino
- Интернет-магазин наборов для сборки на платформе Arduino
- Купить контроллер Arduino в Москве
Постскриптум
В дальнейшем я постараюсь публиковать и другие заметки, расскажу, как собрать простые устройства при помощи Arduino и радиодеталей, купленных в магазине, а также опубликую демо-ролики готовых устройств. Ещё мне очень хотелось бы услышать мнение хабралюдей о данном явлении, узнать, о чём вы хотели бы почитать в следующих постах, перевести для данного блога ряд статей и быть может собрать небольшое русскоязычное сообщество фанатов Arduino. Да, и в связи с отсутствием нормального интернета дома не смогу ответить всем желающим сразу… приношу извинения.
- arduino
- микроконтроллеры
- радиотехника
- электроника
Arduino пробный тест
1. Как называется модуль, который легко соединяется с разными исполняющими устройствами, позволяя создавать и роботов, и устройства автоматики, и приборы.:
A) Atmel B) LEGO Mindstorms EV3
C) Arduino D) Ни один из перечисленных вариантов
2. Какие МК являются основами Arduino:
A) Microchip B) Intel 8051
C) Hitachi H8/3297 D) ATMEGA8 и ATMEGA168
3. Что из предложенных вариантов компилирует программный код и загружает его в устройство Arduino.:
A)
B) 
C)
D) 
4. Где на ПО находится поле для отображения служебных сообщений. Например, уведомлений об успешной загрузке программы:
A) В меню программы B) В панели иконок
C) Ниже окна отображения информации D) Внизу после текстового
5. Платформа Arduino имеет 14 цифровых вход/выходов. Сколько из них могут использоваться как выходы ШИМ:
6. Как называется этот элемент
:
A) фоторезистор B) транзистор
C) ИК приемник D) ИК датчик движения
7. Какой функцией в программе можно назначить выводу порт ввода:
A) pinMode(pin, INPUT);
D) val = Serial.read ();
8. Каждый из 14 цифровых выводов Uno может настроен как вход или выход.
C) Только 1,2, 3, 4 – выходы, остальные входы
D) Только 1,2, 3, 4 – входы, остальные выходы
9. Что делает функция delay(n)?
A) Повторяет действие на n миллисекунд
B) Приостанавливает обработку программы на n миллисекунд
C) Прерывает программу на n миллисекунд
D) Переключает функцию
10. Для чего предназначен резистор?
A) Сопротивляться течению тока, преобразовывая его часть в тепло
B) Меняет сопротивление в зависимости от температуры
C) Преобразовывает электрическую энергию в механическую
D) Ничего из предложенного выше
11. Что такое Переменные?
A) Используется для повторения блока выражений, заключённых в фигурные скобки заданное число раз
B) Определяют начало и конец блока функции или блока выражений
C) Это способ именовать и хранить числовые значения для последующего использования программой
D)Открывают последовательный порт и задаёт скорость для последовательной передачи данных.
12. Каким образом обычно черный провод земля подключается к плате
B) К AREF выводу
13. Какая библиотека используется для работы с LCD дисплеем?
14. Какую функция используется для выключения светодиод:
A) digitalWrite(ledPin, LOW); B) digitalRead(ledPin, HIGH);
15. Какую флеш-память имеет микроконтроллер ATmega168 на Arduino?
16. Как можно сделать блок комментарий в Arduino:
A) с помощью () B) с помощью //
C) с помощью <> D) с помощью /* */
17. Какая функция записывает псевдо-аналоговое значение, используя схему с широтно-импульсной модуляцией (PWM), на выходной вывод, помеченный как PWM?
A) pinMode(pin, INPUT); B) analogWtite (pin, value)
C) analogRead (pin) D) digitalRead (pin)
18. Какой это датчик: 
A) Датчик света B) Датчик температуры
C) Датчик вибрации D) Ультразвуковой датчик
19. Библиотека Stepper предоставляет удобный интерфейс управления:
A) LED дисплейем B) Шаговыми двигателями
C)Фоторезистором D) Сервоприводом
20. Язык программирования Arduino основан на _______.
A) Wiring, Processing, C/C++ B) Visual Basic
C) Python, Java D) Assembler
Просмотр содержимого документа
«Arduino пробный тест»
1. Как называется модуль, который легко соединяется с разными исполняющими устройствами, позволяя создавать и роботов, и устройства автоматики, и приборы.:
A) Atmel B) LEGO Mindstorms EV3
C) Arduino D) Ни один из перечисленных вариантов
2. Какие МК являются основами Arduino:
A) Microchip B) Intel 8051
C) Hitachi H8/3297 D) ATMEGA8 и ATMEGA168
3. Что из предложенных вариантов компилирует программный код и загружает его в устройство Arduino.:
A)
B) 
C)
D) 
4. Где на ПО находится поле для отображения служебных сообщений. Например, уведомлений об успешной загрузке программы:
A) В меню программы B) В панели иконок
C) Ниже окна отображения информации D) Внизу после текстового
5. Платформа Arduino имеет 14 цифровых вход/выходов. Сколько из них могут использоваться как выходы ШИМ:

6. Как называется этот элемент :
A) фоторезистор B) транзистор
C) ИК приемник D) ИК датчик движения
7. Какой функцией в программе можно назначить выводу порт ввода:
A) pinMode(pin, INPUT);
D) val = Serial.read ();
8. Каждый из 14 цифровых выводов Uno может настроен как вход или выход.
C) Только 1,2, 3, 4 – выходы, остальные входы
D) Только 1,2, 3, 4 – входы, остальные выходы
9. Что делает функция delay(n)?
A) Повторяет действие на n миллисекунд
B) Приостанавливает обработку программы на n миллисекунд
C) Прерывает программу на n миллисекунд
D) Переключает функцию
10. Для чего предназначен резистор?
A) Сопротивляться течению тока, преобразовывая его часть в тепло
B) Меняет сопротивление в зависимости от температуры
C) Преобразовывает электрическую энергию в механическую
D) Ничего из предложенного выше
11. Что такое Переменные?
A) Используется для повторения блока выражений, заключённых в фигурные скобки заданное число раз
B) Определяют начало и конец блока функции или блока выражений
C) Это способ именовать и хранить числовые значения для последующего использования программой
D)Открывают последовательный порт и задаёт скорость для последовательной передачи данных.
12. Каким образом обычно черный провод земля подключается к плате
B) К AREF выводу
13. Какая библиотека используется для работы с LCD дисплеем?
14. Какую функция используется для выключения светодиод:
A) digitalWrite(ledPin, LOW); B) digitalRead(ledPin, HIGH);
15. Какую флеш-память имеет микроконтроллер ATmega168 на Arduino?
16. Как можно сделать блок комментарий в Arduino:
A) с помощью () B) с помощью //
C) с помощью <> D) с помощью /* */
17. Какая функция записывает псевдо-аналоговое значение, используя схему с широтно-импульсной модуляцией (PWM), на выходной вывод, помеченный как PWM?
A) pinMode(pin, INPUT); B) analogWtite (pin, value)
C) analogRead (pin) D) digitalRead (pin)

18. Какой это датчик:
A) Датчик света B) Датчик температуры
C) Датчик вибрации D) Ультразвуковой датчик
19. Библиотека Stepper предоставляет удобный интерфейс управления:
A) LED дисплейем B) Шаговыми двигателями
C)Фоторезистором D) Сервоприводом
20. Язык программирования Arduino основан на _______.
A) Wiring, Processing, C/C++ B) Visual Basic
C) Python, Java D) Assembler
Arduino

Arduino — аппаратная вычислительная платформа, основными компонентам которой являются простая плата ввода/вывода и среда разработки на языке Wiring (C++).
Аппаратная часть

Плата Arduino состоит из микроконтроллера Atmel AVR (ATmega328 и ATmega168 в новых версиях и ATmega8 в старых) и элементной обвязки для программирования и интеграции с другими схемами. На каждой плате обязательно присутствуют линейный стабилизатор напряжения 5 В и 16 МГц кварцевый генератор (в некоторых версиях керамический резонатор). В микроконтроллер предварительно прошит загрузчик, поэтому внешний программатор не нужен.
На концептуальном уровне, все платы программируются через RS-232 (последовательное соединение), но реализация этого способа отличается от версии к версии. Плата Serial Arduino содержит простую инвертирующую схему для конвертирования уровней сигналов RS-232 в уровни ТТЛ, и наоборот. Текущие платы, вроде Diecimila, программируются через USB, что осуществляется благодаря микросхеме конвертера USB-to-serial вроде FTDI FT232. В некоторых вариантах, таких как Arduino Mini или неофициальной Boarduino, для программирования требуется подключение отдельной платы USB-to-serial или кабеля.
Платы Arduino позволяют использовать большую часть I/O выводов микроконтроллера во внешних схемах. Например, в плате Diecimila доступно 14 цифровых вводов/выводов(уровни «LOW» -0В и «HIGH» -5В), 6 из которых могут выдавать ШИМ сигнал, и 6 аналоговых входов(0-5В). Эти выводы доступны в верхней части платы через 0,1 дюймовые разъёмы типа «мама». На рынке доступны несколько внешних плат расширения, известных как «shields».
Программное обеспечение

Интегрированная среда разработки Arduino — это кроссплатформенное приложение на Java, включающее в себя редактор кода, компилятор и модуль передачи прошивки в плату.
Среда разработки основана на языке программирования Processing и спроектирована для программирования новичками, не знакомыми близко с разработкой программного обеспечения. Язык программирования аналогичен используемому в проекте Wiring. Строго говоря, это C/C++, дополненный некоторыми библиотеками. Программы обрабатываются с помощью препроцессора, а затем компилируется с помощью AVR-GCC.
Название «Arduino» (и производные от него) является торговой маркой для официального продукта и не может использоваться для производных работ без разрешения. В официальном документе, об использовании названия Arduino, подчеркивается, что проект открыт для всех желающих работать над официальным продуктом.
Результатом защиты названия стало ответвление от версии платы Arduino Diecimila, сделанное группой пользователей, что привело к выпуску эквивалентной платы, названной Freeduino. Название Freeduino не является торговой маркой и может использоваться в любых целях.
Подробнее — «Разновидности плат Arduino, а также про клоны, оригиналы и совместимость»
Самостоятельное изготовление

В домашних условиях можно самостоятельно изготовить Arduino Single-Sided Serial Board.
принципиальная схема
руководство (на английском)
Купить Arduino
Купить Arduino или CraftDuino — наш вариант полностью Arduino-совместимой платы, можно в нашем Магазине.