Цели урока:
- Изучить технические характеристики Arduino
- Изучить что такое пины
- Познакомиться с Wokwi
Что такое Arduino?
Arduino — это универсальная платформа для создания электронных устройств, которая идеально подходит для новичков, студентов и профессионалов. Она сочетает в себе простоту использования и мощные возможности, позволяя создавать проекты любой сложности — от мигающего светодиода до умного дома. В этом уроке мы разберём, что такое Arduino, из чего она состоит, что такое пины (аналоговые и дискретные), как работает ШИМ, а также рассмотрим технические характеристики популярной модели — Arduino Uno.
Основные компоненты Arduino
- Плата Arduino:
- Это "мозг" вашего проекта. Наиболее популярная модель — Arduino Uno. Она оснащена микроконтроллером ATmega328, который выполняет написанную вами программу.
- На плате есть цифровые и аналоговые пины для подключения внешних устройств (светодиодов, кнопок, датчиков).
- Светодиоды (LED):
- Простейшие компоненты, которые используются для индикации состояния устройства. Например, светодиод может показывать, включено устройство или выключено.
- Резисторы:
- Резисторы защищают компоненты от повреждений, ограничивая ток в цепи. Например, светодиод без резистора может перегореть.
- Макетная плата (Breadboard):
- Плата с отверстиями, которая позволяет подключать компоненты без пайки. Идеальна для создания прототипов.
- Провода (Jumpers):
- Используются для соединения компонентов на макетной плате.
Технические характеристики Arduino Uno
Arduino Uno — это самая популярная плата в семействе Arduino. Вот её основные характеристики:
- Микроконтроллер:
- ATmega328P (8-битный, тактовая частота 16 МГц).
- Оперативная память (SRAM):
- 2 КБ для хранения временных данных.
- Флэш-память:
- 32 КБ (из них 0.5 КБ заняты загрузчиком).
- EEPROM:
- 1 КБ для хранения данных, которые должны сохраняться после выключения питания.
- Цифровые пины:
- 14 пинов (из них 6 поддерживают ШИМ).
- Аналоговые пины:
- 6 пинов (10-битный аналого-цифровой преобразователь, АЦП).
- Напряжение питания:
- Рекомендуемое: 7–12 В (через разъём DC или VIN).
- Логическое напряжение: 5 В.
- Ток на пинах:
- Максимальный ток на одном пине: 40 мА.
- Рекомендуемый ток на одном пине: 20 мА.
- Интерфейсы:
- UART, I2C, SPI.
- Размеры платы:
- 68.6 мм x 53.4 мм.
- Вес:
- 25 г.
- Дополнительные особенности:
- Встроенный светодиод на пине 13 (используется для тестирования).
- Возможность сброса через кнопку Reset.
Что такое пины Arduino?
Пины (или контакты) — это точки подключения на плате Arduino, через которые можно взаимодействовать с внешними устройствами. Они делятся на несколько типов:
Дискретные (цифровые) пины
Дискретные пины работают с цифровыми сигналами, которые могут принимать только два значения: HIGH (высокий уровень, 5 В) и LOW (низкий уровень, 0 В).
- Особенности цифровых пинов:
- Обозначаются на плате как D0, D1, D2, ..., D13.
- Могут работать как входы (например, для чтения состояния кнопки) или как выходы (например, для управления светодиодом).
- Поддерживают только два состояния: HIGH и LOW.
- Примеры использования:
- Управление светодиодами
- Чтение состояния кнопок
- Работа с цифровыми датчиками (например, датчик движения)
- Функции для работы с цифровыми пинами:
pinMode(pin, mode); // Настройка пина как входа (INPUT) или выхода (OUTPUT)
digitalWrite(pin, value); // Установка значения HIGH или LOW на пине
digitalRead(pin); // Чтение значения с пина (HIGH или LOW)
Аналоговые пины
Аналоговые пины предназначены для работы с аналоговыми сигналами, которые могут принимать любое значение в определённом диапазоне (например, от 0 до 5 В).
- Особенности аналоговых пинов:
- Обозначаются как A0, A1, A2, ..., A5.
- Используются для чтения аналоговых сигналов (например, с потенциометра или датчика температуры).
- Преобразуют аналоговый сигнал в цифровое значение (от 0 до 1023) с помощью встроенного аналого-цифрового преобразователя (АЦП).
- Примеры использования:
- Чтение данных с потенциометра (регулировка яркости светодиода или скорости мотора)
- Работа с аналоговыми датчиками (например, датчик температуры TMP36)
- Функции для работы с аналоговыми пинами:
analogRead(pin); // Чтение аналогового значения (от 0 до 1023)
ШИМ-пины (PWM)
ШИМ-пины — это цифровые пины, которые могут имитировать аналоговый сигнал с помощью широтно-импульсной модуляции (ШИМ).
- Особенности ШИМ-пинов:
- На Arduino Uno это пины D3, D5, D6, D9, D10, D11.
- Позволяют создавать аналоговый сигнал с помощью ШИМ. Например, можно управлять яркостью светодиода или скоростью мотора.
- Примеры использования:
- Управление яркостью светодиода
- Регулировка скорости мотора
- Генерация звуковых сигналов
- Функции для работы с ШИМ-пинами:
analogWrite(pin, value); // Установка значения ШИМ (от 0 до 255)
Как работает ШИМ?
- ШИМ генерирует сигнал, который быстро переключается между HIGH (5 В) и LOW (0 В).
-
Скважность (Duty Cycle) — это процент времени, в течение
которого сигнал находится в состоянии HIGH. Например:
- Скважность 50% означает, что сигнал находится в состоянии HIGH половину времени.
- Скважность 25% — четверть времени.
- Изменяя скважность, можно управлять средней мощностью, подаваемой на устройство.
Примеры использования ШИМ:
- Управление яркостью светодиода:
- При скважности 100% светодиод горит на полную яркость.
- При скважности 50% светодиод горит с половиной яркости.
- При скважности 0% светодиод выключен.
- Управление скоростью мотора:
- Чем выше скважность, тем быстрее вращается мотор.
- Чем ниже скважность, тем медленнее вращается мотор.
- Генерация звуковых сигналов:
- ШИМ можно использовать для создания звуков разной частоты и громкости.
Почему Arduino так популярен?
- Простота:
- Arduino использует упрощённый язык программирования, основанный на C/C++. Даже новички могут написать свой первый код уже через несколько минут.
- Доступность:
- Платы Arduino и компоненты к ним стоят недорого, а программное обеспечение полностью бесплатное.
- Гибкость:
- С Arduino можно создавать как простые проекты (например, мигающий светодиод), так и сложные системы (умный дом, роботы, IoT-устройства).
- Большое сообщество:
- В интернете есть тысячи готовых проектов, tutorials и форумов, где можно найти ответы на любые вопросы.
Реализация проектов на Wokwi
Для удобства и доступности все проекты в этом курсе будут реализовываться на Wokwi — онлайн-симуляторе Arduino и других микроконтроллеров. Wokwi позволяет тестировать и отлаживать проекты без необходимости физического оборудования.
Что такое Wokwi?
- Wokwi — это бесплатный онлайн-симулятор, который поддерживает Arduino, ESP32, Raspberry Pi Pico и другие платформы.
- Он предоставляет виртуальную среду для создания схем, написания кода и тестирования проектов.
- Wokwi идеально подходит для обучения, так как позволяет быстро экспериментировать с различными компонентами и кодом.
Преимущества Wokwi:
- Доступность:
- Не требуется физическое оборудование. Всё можно делать прямо в браузере.
- Простота использования:
- Интуитивно понятный интерфейс для создания схем и написания кода.
- Поддержка множества компонентов:
- Светодиоды, кнопки, датчики, дисплеи, моторы и многое другое.
- Мгновенная обратная связь:
- Результаты работы кода и схемы отображаются в реальном времени.
Как работать с Wokwi?
- Перейдите на сайт Wokwi.
- Создайте новый проект, выбрав плату Arduino Uno.
- Используйте встроенные компоненты для сборки схемы.
- Напишите код в редакторе и запустите симуляцию.
- Отлаживайте проект и наблюдайте за результатами в реальном времени.
Что нужно для начала работы с Arduino?
- Плата Arduino (например, Arduino Uno)
- Компьютер с установленной Arduino IDE
- USB-кабель для подключения платы к компьютеру
- Базовые компоненты: светодиоды, резисторы, кнопки, макетная плата и провода
Следующий урок: Переменные в Arduino