Arduino — открытая аппаратно-программная платформа для создания электронных устройств. Аппаратная часть — плата с микроконтроллером, к которой подключают датчики, моторы, дисплеи и другие компоненты. Программная — среда разработки IDE и тысячи готовых библиотек. В основе языка — C++ и фреймворк Wiring.
Именно это сочетание делает Arduino для начинающих оптимальным инструментом: первый рабочий проект реально собрать за один вечер без специальных знаний. Платформа используется в школах робототехники, университетских лабораториях и самообучении по всему миру. Официальная документация — на Arduino Docs.
В статье разберём последовательно: как устроена платформа и откуда появилась, какую плату купить для старта, что понадобится для первых схем, как установить IDE и написать первый скетч. Три учебных проекта — со схемами подключения и кодом.
Arduino — не просто плата, а экосистема: железо, открытый исходный код, библиотеки и многомиллионное сообщество. Аппаратная часть включает микроконтроллер (МК), пины ввода-вывода, разъём питания и USB-интерфейс. Программная — Arduino IDE, облачный редактор и набор стандартных функций для работы с пинами, таймерами и коммуникационными шинами.
Лицензия Creative Commons Attribution ShareAlike открывает право любому производителю выпускать совместимые платы по официальным чертежам — абсолютно легально. Именно поэтому рынок полон клонов с разными ценниками.
Сфера применений широка: умный дом, робототехника, метеостанции, станки с ЧПУ (числовым программным управлением), беспилотные летательные аппараты, автоматизация теплиц. Arduino используют как школьники на первом кружке, так и инженеры при быстром прототипировании нового устройства.

В 2004 году колумбийский студент Эрнандо Барраган разработал в Институте дизайна Ивреа (Италия) фреймворк Wiring — упрощённый C++ для студентов без технической подготовки, замена дорогим платам на базе PBASIC.
В 2005-м Массимо Банци вместе с командой форкнул (ответвил) Wiring и создал Arduino, выбрав более дешёвый чип ATmega8. В 2008 году зарегистрировали Arduino LLC. Позже внутренний конфликт с сооснователем Джанлукой Мартино привёл к появлению параллельного юрлица Arduino SRL. Спор завершился 1 октября 2016 года: обе компании объединились в Arduino AG.
У платформы Arduino десятки официальных плат для разных задач: от управления одним светодиодом до сложных IoT-устройств (IoT — Internet of Things, интернет вещей). Новичку не нужно изучать весь ассортимент.
Три модели покрывают большинство учебных и любительских проектов. Arduino Uno — оптимальный старт для начинающих: достаточно памяти, понятная распиновка (нумерация пинов), совместимость с любыми шилдами (расширяющими платами). Nano выбирают, когда нужна компактность. Mega — для сложных проектов с большим числом пинов.
Arduino Uno R3 — самая популярная плата среди начинающих в мире. Основа — микроконтроллер ATmega328P: 8-битный AVR-процессор с тактовой частотой 16 МГц, 32 КБ флеш-памяти для хранения скетча и 2 КБ SRAM (оперативной памяти).
На плате 14 цифровых и 6 аналоговых пинов. Шесть цифровых поддерживают ШИМ (широтно-импульсную модуляцию): D3, D5, D6, D9, D10, D11 — они отмечены символом «~» прямо на плате. Питание — от USB-порта компьютера или внешнего разъёма 7–12 В. Подключение к ПК — через USB-B (квадратный разъём, как у принтера).
ATmega328P выполняет функцию loop() около 10 000 раз в секунду без задержек — этого хватает для управления датчиками, моторами и дисплеями в реальном времени. Цена оригинальной платы — $27–55; актуальная версия — R3.
Arduino Nano базируется на том же ATmega328, что и Uno, но значительно компактнее — помещается прямо на макетную плату (breadboard). Цена: $15–40. Удобен для проектов, где важен маленький размер: носимые устройства, мини-метеостанции.
Arduino Mega работает на ATmega2560: 256 КБ флеш-памяти, 54 цифровых пина, 16 аналоговых. Цена: $50–70. Нужен для шагающих роботов с десятками сервоприводов — для первых проектов это избыток.
Arduino Micro на ATmega32U4 поддерживает HID (Human Interface Device) — может эмулировать клавиатуру или мышь. Цена: около $22. Специфические задачи: игровые контроллеры, кастомные (нестандартные) устройства ввода.
| Плата |
МК |
Flash |
SRAM |
Цифр. пинов |
ШИМ-пинов |
Цена |
Для кого |
|---|---|---|---|---|---|---|---|
| Uno R3 | ATmega328P | 32 КБ | 2 КБ | 14 | 6 | $27–55 | Новичок |
| Nano | ATmega328 | 32 КБ | 2 КБ | 14 | 6 | $15–40 | Компактные проекты |
| Mega | ATmega2560 | 256 КБ | 8 КБ | 54 | 15 | $50–70 | Сложные роботы |
| Micro | ATmega32U4 | 32 КБ | 2,5 КБ | 20 | 7 | ~$22 | HID-устройства |

Минимальный набор для старта: плата Arduino + USB-кабель + компьютер. Этого достаточно, чтобы запустить встроенный светодиод и написать первые строки кода.
Для полноценных схем понадобится breadboard (бредборд, макетная плата) — беспаечная монтажная плата с шагом отверстий 2,54 мм. Компоненты вставляются в отверстия без пайки: схему легко переделать за секунды.
DuPont-провода (названы в честь химической компании DuPont) выпускаются трёх типов: папа-папа, папа-мама, мама-мама. Для соединения платы Arduino с breadboard используют папа-папа.
Минимальный состав стартового набора для первых проектов:
Российский аналог оригинальных плат — Амперка/Iskra, производится по официальным чертежам Arduino легально. Перед покупкой стоит проверить продавца: платы, дешевле оригинала в 5–10 раз, нередко делают из некачественных материалов и они выходят из строя при первом подключении. Актуальный список совместимых производителей — на arduino.cc.

Arduino IDE — официальная, бесплатная среда разработки для Windows, Linux и macOS. Скачать можно на arduino.cc/en/software. Здесь пишут скетчи (программы для Arduino), проверяют синтаксис и загружают прошивку на плату одним кликом.
Две версии: Arduino IDE 2 (рекомендуется) и Legacy 1.x (устаревшая). IDE 2 добавляет автодополнение кода, встроенный дебаггер (инструмент пошагового поиска ошибок) и синхронизацию с облаком. Начинающим имеет смысл сразу устанавливать версию 2.
| Инструмент |
Офлайн |
Автодополнение |
Дебаггер |
Стоимость |
Для кого |
|---|---|---|---|---|---|
| Arduino IDE 2 | ✓ | ✓ | ✓ | Бесплатно | Новичок и средний уровень |
| Arduino Cloud | — | Частично | — | Есть бесплатный тариф | Без установки, с браузера |
| PlatformIO + VS Code | ✓ | ✓ | ✓ | Бесплатно | Профессионалы |
Arduino IDE 2 — оптимальный выбор для старта: всё в одном окне, работает без интернета. Arduino Cloud позволяет писать и загружать скетчи прямо из браузера без установки — удобно со школьного компьютера. PlatformIO интегрируется в VS Code (Visual Studio Code) и поддерживает более 900 платформ — инструмент для тех, кто вышел за рамки учебных задач. Во всех трёх случаях код компилируется через avr-gcc (компилятор языка C для AVR-микроконтроллеров).
Serial Monitor (монитор порта) — встроенный в Arduino IDE инструмент для работы с UART-интерфейсом (универсальным асинхронным приёмопередатчиком). Открывается кнопкой в правом верхнем углу IDE.
Для использования добавьте в setup() строку Serial.begin(9600) — устанавливает скорость обмена 9600 бод. В loop() вызывайте Serial.println() для вывода данных. Монитор порта — основной способ отладки без дисплея: видны показания датчиков, состояния переменных, сообщения об ошибках.
Язык программирования Arduino — C++ с надстройкой фреймворка Wiring. Компилятор avr-gcc преобразует код в машинные инструкции для AVR-микроконтроллера. Несмотря на C++-основу, код выглядит просто: большинство низкоуровневых операций скрыты в стандартных функциях фреймворка.
Три базовых правила синтаксиса: каждая инструкция заканчивается точкой с запятой; перед использованием переменной нужно указать её тип; комментарии — // (однострочный) или /* … */ (многострочный). Ограниченная память (32 КБ флеш у Uno) объясняет выбор C++: язык работает быстро и не тратит ресурсы впустую.

Каждый скетч для Arduino обязан содержать две функции — без них компилятор не соберёт проект.
void setup() выполняется один раз при включении питания или нажатии кнопки Reset. Здесь задают режимы пинов, инициализируют модули и запускают Serial-порт:
void setup() {
Serial.begin(9600);
pinMode(9, INPUT);
}
void loop() запускается сразу после setup() и повторяется бесконечно. Здесь живёт основная логика: опрос датчиков, управление выходами, принятие решений. ATmega328P выполняет loop() около 10 000 раз в секунду без задержек delay.
Директива #include в начале файла подключает сторонние библиотеки — компилятор ищет их в папке скетча или в папке библиотек IDE.
До использования любой переменной нужно объявить её тип. Основные типы данных в Arduino C:
| Тип |
Диапазон / описание |
|---|---|
| int | –32 768 … 32 767 |
| long | –2 147 483 648 … 2 147 483 647 |
| float | число с плавающей точкой, до 7 значимых цифр |
| byte | 0 … 255 |
| String | строка символов |
| bool | true / false |
Математические операторы: = (присвоение), +, -, *, /, % (остаток). Сравнение: ==, !=, <, >, <=, >=. Управление потоком: if-else, for, while, do-while.
Шесть функций покрывают большинство задач в учебных проектах:
| Функция |
Синтаксис |
Что делает |
|---|---|---|
| pinMode | pinMode(pin, mode) | Устанавливает пин как INPUT или OUTPUT |
| digitalWrite | digitalWrite(pin, val) | Подаёт HIGH (5 В) или LOW (0 В) на цифровой пин |
| digitalRead | digitalRead(pin) | Считывает состояние пина: HIGH или LOW |
| analogRead | analogRead(pin) | Читает аналоговый сигнал → 0–1023 (10-бит АЦП) |
| analogWrite | analogWrite(pin, 0–255) | Реализует ШИМ; только пины D3/D5/D6/D9/D10/D11 |
| delay | delay(ms) | Пауза в миллисекундах; максимум ~49 суток |
analogWrite() реализует ШИМ: значение 0 — нулевая мощность, 128 — половина, 255 — полная. Функция работает только на пинах «~» платы Uno. delay() принимает значения до 4 294 967 295 мс. Побочный эффект ШИМ: на видеозаписи светодиод мигает, если частота кадров не кратна частоте ШИМ.
Три проекта выстроены по нарастающей сложности: от базового мигания светодиода к управлению яркостью через ШИМ и считыванию данных с датчика освещённости. Для всех трёх нужны: Uno R3, breadboard, DuPont-провода, светодиоды, резисторы 220 Ом и 10 кОм, тактовая кнопка.
Это стандартные учебные схемы ардуино: каждый проект оформлен по единой структуре — схема подключения, код, разбор ключевых функций. Такой формат используют и в официальных уроках на arduino.cc.

Blink одновременно проверяет три вещи: исправность платы, корректность настройки компилятора и успешность загрузки прошивки. Это стандартный первый шаг, с которого начинают ардуино с нуля.
Компоненты: Uno R3, светодиод, резистор 220 Ом, breadboard, провода папа-папа. Схема: анод светодиода (длинная ножка) → через резистор 220 Ом → пин 13; катод (короткая ножка) → GND. На Arduino Uno пин 13 совпадает с константой LED_BUILTIN — на нём уже есть встроенный светодиод платы.
Готовый скетч в IDE: File → Examples → 01. Basics → Blink. Основная логика:
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // включить
delay(1000); // пауза 1 сек
digitalWrite(LED_BUILTIN, LOW); // выключить
delay(1000);
}
Светодиод мигает раз в секунду. Если мигает — плата, IDE и загрузка работают правильно.

Часть А: кнопка включает и выключает светодиод. Резистор 10 кОм подключается как стягивающий (pull-down): удерживает пин в состоянии LOW, пока кнопка не нажата, защищает от наводок и ложных срабатываний.
Без debounce-задержки (подавления дребезга контактов) механические контакты кнопки при нажатии физически вибрируют и генерируют несколько сигналов вместо одного. Debounce — задержка 10–20 мс после фиксации нажатия — устраняет этот эффект.
Часть Б: управление яркостью. Функция analogWrite() в цикле for плавно увеличивает яркость:
for (int i = 0; i <= 255; i++) {
analogWrite(ledPin, i);
delay(5);
}
Широтно-импульсная модуляция (ШИМ) — быстрое чередование импульсов включения и выключения сигнала. Глаз воспринимает серию коротких вспышек как непрерывное свечение разной яркости. Доступна только на пинах «~»: D3, D5, D6, D9, D10, D11.

Схема: фоторезистор (LDR — Light Dependent Resistor, резистор с сопротивлением, зависящим от освещённости) и резистор 10 кОм образуют делитель напряжения. Средняя точка делителя — к аналоговому пину A0.
Функция analogRead(A0) использует встроенный АЦП (аналогово-цифровой преобразователь) ATmega328P: 10-битный, точность ±0,005 В. Возвращает значение от 0 (темно) до 1023 (ярко). Вывод через монитор порта:
void setup() { Serial.begin(9600); }
void loop() {
Serial.println(analogRead(A0));
delay(500);
}
Откройте Serial Monitor в IDE — данные обновляются каждые 500 мс. Накройте фоторезистор рукой — значение падает. Практические применения: умный светильник, автоматические шторы, ночник, теплица.

После трёх базовых проектов логичный следующий шаг — управление сервоприводом через библиотеку Servo, сборка колёсного робота и IoT-проекты с Wi-Fi-модулем ESP8266. Для роботов с десятью и более сервоприводами Arduino Uno уже тесноват — нужен Mega: 54 цифровых пина, 256 КБ флеш-памяти.
Полезные ресурсы на русском языке: форумы и Project Hub на arduino.cc, Telegram-сообщества Arduino RU. Из книг — «Изучаем Arduino. 65 проектов своими руками» Джона Бокселла: переведена на русский, подходит как самоучитель при изучении ардуино самостоятельно.
Попробовать Arduino в рамках структурированного курса можно бесплатно. Курс «Программирование: Уверенный старт» (0 ₽, 36 часов, онлайн) включает Модуль 4, целиком посвящённый Arduino: датчики, светодиоды, сервопривод и итоговый проект «Умная теплица». Подробнее — на странице курса.
Arduino — микроконтроллер: выполняет один скетч циклически, идеален для управления датчиками и моторами в реальном времени. Raspberry Pi — одноплатный компьютер с полноценной операционной системой, подходит для задач с сетью, видео и пользовательским интерфейсом. Для первого знакомства с электроникой Arduino проще и дешевле.
Нет. Arduino C — упрощённая версия C++ с предопределёнными функциями. Первый рабочий проект — Blink — реально сделать за вечер без опыта в программировании. Знание C++ ускоряет обучение, но не обязательно на старте.
setup() выполняется один раз при запуске — здесь задаются режимы пинов и инициализируются модули. loop() запускается сразу после и повторяется бесконечно — здесь живёт основная логика скетча. Без обеих функций компилятор не соберёт проект.
ШИМ (широтно-импульсная модуляция) управляет напряжением за счёт скважности сигнала. Функция analogWrite(пин, 0–255) реализует ШИМ. На Arduino Uno доступна только на пинах D3, D5, D6, D9, D10, D11 — они отмечены символом «~» на плате.
Резистор ограничивает ток: без него светодиод получает слишком высокий ток от пина Arduino (максимум 40 мА) и перегорает. Резистор 220 Ом снижает ток до безопасных 15–20 мА. Резистор 10 кОм в схемах с кнопкой выполняет другую роль: стягивает пин к GND и защищает от наводок.
Breadboard (бредборд, макетная плата) — беспаечная монтажная плата с шагом 2,54 мм. Позволяет собирать и переделывать схемы без паяльника: компонент вставляется в нужное отверстие. Для начала достаточно платы на 400–800 точек. Используется вместе с DuPont-проводами типа«папа-папа».
Blink — первый учебный проект, аналог «Hello, World!»: заставляет встроенный светодиод мигать. Одновременно проверяет три вещи: исправность платы, правильность настройки компилятора и корректность загрузки прошивки. Доступен прямо в IDE: File → Examples → 01. Basics → Blink.
Четыре шага: подключить плату USB-кабелем → в Arduino IDE выбрать плату из списка Select board → нажать кнопку «Загрузить» (стрелка) → дождаться надписи «Done uploading» в нижней панели. Во время прошивки плата мигает светодиодами TX/RX — это нормально.
«Изучаем Arduino. 65 проектов своими руками» Джона Бокселла — наиболее рекомендуемая для начинающих, переведена на русский язык. Официальная документация Arduino Docs частично переведена сообществом.
Бесплатный вариант — курс «Программирование: Уверенный старт» (0 ₽, 36 часов онлайн). Модуль 4 целиком посвящён Arduino: датчики, светодиоды, сервопривод, итоговый проект «Умная теплица». Гибкое расписание, записи всех занятий доступны в личном кабинете в любое время.
Хотите попробовать Arduino в рамках структурированного курса? На курсе «Программирование: Уверенный старт» школьники за 36 часов осваивают Python, веб-разработку и робототехнику на Arduino, собирают реальные проекты и формируют портфолио. Обучение — 0 ₽. Узнайте подробнее на странице курса.