Arduino (на русском)

Site: TalTech Moodle
Course: Arukate süsteemide elementide projekteerimine ja väljatöötamine (Virumaa)
Book: Arduino (на русском)
Printed by: Guest user
Date: Friday, 22 November 2024, 9:19 AM

1. Arduino

Что такое Arduino

Arduino Mega электронная плата

Arduino – это электронные платы с собственным процессором и памятью, к которым можно подсоединять различные датчики, двигатели, экраны и много других электронных компонентов. Плата Ардуино будет управлять этими компонентами с помощью программы, который вы в нее загрузите. Самые популярные платы для начинающих – это Arduino Uno, Arduino Mega, Arduino Nano и Arduino Leonardo. Кроме этого есть множество  других вариантов, подходящих для конкретных случаев.

В процессор Arduino можно загрузить программу, которая будет управлять всеми этими устройствами по заданному алгоритму.

Программы для Arduino пишутся на обычном C++, дополненным простыми и понятными функциями для управления вводом/выводом на контактах.

Для удобства работы с Arduino существует бесплатная официальная среда программирования «Arduino IDE», работающая под Windows, Mac OS и Linux.

Arduino IDE

Принцип бутерброда

Ещё одной отличительной особенностью Arduino является наличие плат расширения, так называемых shields или просто «шилдов». Это дополнительные платы, которые ставятся подобно слоям бутерброда поверх Arduino, чтобы дать ему новые возможности. Так например, существуют платы расширения для подключения к локальной сети и интернету (Ethernet Shield), для управления мощными моторами (Motor Shield), для получения координат и времени со спутников GPS (модуль GPS) и многие другие.

Элементы платы UNO

Элементы платы Mega 2560




Источники: Амперка, ArduinoMaster

2. Установка и настройка Arduino IDE

Установка Arduino IDE

Установите на компьютер интегрированную среду разработки Arduino — Arduino IDE.

Шаг 1

Выберите версию среды в зависимости от операционной системы.

Шаг 2

Нажмите на кнопку «JUST DOWNLOAD» для бесплатной загрузки Arduino IDE.

Подключение платы к компьютеру

Запустите среду программирования Arduino IDE.

  1. Соедините Arduino с компьютером по USB-кабелю. На плате загорится светодиод «ON» и начнёт мигать светодиод «L». Это значит, что на плату подано питание и микроконтроллер начал выполнять прошитую на заводе программу «Blink».
  2. Для настройки Arduino IDE на работу с конкретной платой Arduino — узнайте какой номер COM-порта присвоил компьютер данной платформе. Зайдите в «Диспетчер устройств» Windows и раскройте вкладку «Порты (COM и LPT)».
Операционная система распознает плату Arduino как COM-порт и назначит ей номер. Если вы подключите к компьютеру другую плату Arduino, операционная система назначит ей другой номер. Если у вас несколько плат Arduino, очень важно не запутаться в номерах COM-портов.

Настройка Arduino IDE

Для настойки среды Arduino IDE с конкретной платформой Arduino — необходимо выбрать название модели Arduino и номер присвоенного плате COM-порта.

  1. Для установки модели платы Arduino зайдите в меню: Инструменты Плата и выберете плату «Arduino Uno».
  2. Для выбора номера COM-порта перейдите в меню: Инструменты Порт и выберете нужный порт.
Источник: Амперка

3. Скетч

Загрузка первого скетча

Sketch — это название программ для Arduino. Это единичный проект, который загружается и выполняется платой.

Arduino IDE содержит большой список готовых примеров в которых можно быстро подсмотреть решение какой-либо задачи. Выберем самый распространенный пример — «Blink».

Загрузите скетч в Arduino и проверьте.


После загрузки светодиод начнёт мигать.

4. Библиотеки

Очень часто одни и те же части кода кочуют из программы в программу. Например, код для работы с датчиком. Чтобы не писать этот код каждый раз заново, его выносят в отдельные файлы — библиотеки. Огромное количество готового кода уже написано другими людьми, и с помощью библиотек его можно легко использовать в своих программах.

Подключение библиотек

Библиотеки в составе Arduino IDE

Очень много библиотек идет в составе Arduino IDE. Добавить библиотеку в свой код можно из меню Эскиз Импорт библиотек… Название библиотеки :

После выбора пункта «Servo» Arduino IDE сама вставит в код нужные строчки:

#include <Servo.h>
 
void setup() {
  // установочный код, выполняется один раз
}
 
void loop() {
  // основной код, выполняется циклично после установочного кода
}

Конечно, если вы знаете название нужной библиотеки, можно просто написать в самом верху скетча #include <Servo.h> — результат будет тем же самым.

Чтобы посмотреть пример работы с библиотекой, идущей в составе Arduino IDE необходимо выбрать в меню Файл Образцы Название библиотеки Название примера

Сторонние библиотеки

Библиотек для Arduino действительно очень много. И только незначительная часть из них входит в состав Arduino IDE. Многие библиотеки можно найти на сайте GitHub.

Давайте попробуем добавить в свой проект библиотеку для работы с четырёхразрядным индикатором. Ссылка на библиотеку для работы с ним есть на странице описания товара. Если зайти на страницу библиотеки, можно увидеть множество файлов библиотеки и примеры работы с ней. Но нас пока будет интересовать только кнопка Download ZIP: После нажатия на неё начнётся загрузка .zip-архива со всеми файлами библиотеки. В данном случае это будет файл QuadDisplay-master.zip. Название библиотеки может состоять только из латинских букв и цифр, при этом название не может начинаться с цифры, поэтому давайте сразу переименуем наш архив. Теперь он будет называться QuadDisplay.zip.

После загрузки архива нужно зайти в Arduino IDE и выполнить импорт библиотеки в вашу рабочую папку Sketchbook/libraries, в которой должны находится все сторонние библиотеки. Сделать это можно прямо из Arduino IDE, в меню Эскиз Импорт библиотек… Добавить библиотеку… : Откроется диалоговое окно, в котором необходимо выбрать наш архив QuadDisplay.zip и нажать кнопку Open. Готово. Теперь библиотеки можно добавлять в код. Примеры работы с библиотекой доступны в меню Файл Sketchbook libraries Название библиотеки Название примера

В Arduino 1.6.7 и выше: Файл Примеры Название библиотеки Название примера

Создание библиотеки

Обычно, при создании библиотеки создаются два файла: заголовочный файл и файл с кодом библиотеки. Давайте попробуем написать библиотеку, которая бы позволяла нам посчитать площадь круга. Создадим в директории %Sketchbook%\Arduino\libraries папку с названием нашей библиотеки (название может состоять только из латинских букв и цифр, при этом не может начинаться с цифры). Давайте назовём нашу библиотеку circleArea. Перейдём в созданную нами папку %Sketchbook%\Arduino\libraries\circleArea и создим там два файла:

  • circleArea.h — заголовочный файл
  • circleArea.cpp — файл с кодом библиотеки.

Код circleArea.h будет таким:

circleArea.h
#include <inttypes.h> // пригодится, мы будем использовать числовые типы
 
#define PI 3.14       // два знака после запятой — достаточная точность.
 
//Объявляем нашу библиотечную функцию, ради которой все и затевалось
float circleArea(float radius);

Код circleArea.cpp будет таким:

circleArea.cpp
#include <inttypes.h>   // пригодится, мы будем использовать числовые типы
#include <Arduino.h>    // функцию pow() мы возьмём отсюда
#include <circleArea.h> // в заголовочном файле находится PI и объявление функции
 
//Реализуем нашу библиотечную функцию, ради которой все и затевалось
 
float circleArea(float radius)
{
    return PI*pow(radius, 2);
}

Использование библиотеки в скетче будет таким:

circleArea.ino
#include <circleArea.h>
void setup() {
  // put your setup code here, to run once:
    Serial.begin(9600);
}
 
void loop() {
  // put your main code here, to run repeatedly:
 
    for (int i=1; i<5; ++i ) {
        Serial.print("circle area with radius ");
        Serial.print(i);
        Serial.print(" = ");
        Serial.println(circleArea(i));
    }
}
Источник: Амперка

5. Breadboard

Для конструирования и отладки прототипов самых различных устройств используются макетные платы (другое название – беспаечные монтажные платы и breadboard). Они бывают нескольких разновидностей и отличаются по размерам и некоторым другим конструктивным особенностям.

На сегодняшний момент существуют следующие основные способы монтажа, которыми используются в электронике и робототехнике на этапе создания  прототипов:

  • Пайка. Для этого применяют специальные платы с отверстиями, в которые вставляются детали и соединяются друг с другом пайкой (с использованием паяльника) и перемычками.
  • Накрутка. По данной технологии контактные соединения устройств объединяются с макетной платой при помощи обмотки чистого провода к штыревому контакту.
  • Breadboard - это беспаечная монтажная плата. Это отличная платформа для разработки прототипов или временных электросхем, с использованием которой вам не понадобится паяльник и все связанные с этим проблемы и затраты времени на распайку.

Прототипирование (prototyping) - это процесс разработки и тестирования модели вашего будущего устройства. Если вы не знаете как будет себя вести ваше устройство при определенных заданных условиях, лучше сначала создать прототип и проверить его работоспособность.

Беспаечные монтажные платы используют как для создания простеньких электросхем, так и для сложных прототипов.

Преимущества breadboard

  • Возможность проводить отладочные работы большое количество раз изменяя модификацию схем и способы подключения устройств;
  • Возможность соединения нескольких плат в одну большую, что позволяет работать с более сложными и большими проектами;
  • Простота и быстрота создания прототипов;
  • Долговечность и надежность.

Так откуда появилось это название - breadboard? Много лет назад, когда электронные компоненты были большими и неуклюжими, многие "самодельщики" в своих "гаражах" собирали схемы с использованием подставок для нарезки хлеба


breadboard

breadboard

breadboard

Макетная плата для монтажа без пайки имеет пластиковое основание с множеством отверстий (стандартное расстояние между ними составляет 2,54 мм). Внутри конструкции расположены ряды металлических пластин. На каждой пластине имеются клипсы (5 в ряду), которые спрятаны в пластиковой части установки. Включение проводов выполняется именно в эти клипсы. При подключении проводника к одному из отдельных отверстий, контакт одновременно подключается и ко всем остальным контактам отдельного ряда.

Некоторые макетные платы включают также по две линии питания с каждой из сторон. Обычно «красная линия» используется для подачи «+» напряжения, «синяя» — для «-».  За счет наличия двух шин питания на плату могут подаваться два различных уровня напряжения.

Для упрощения ориентации на макетную плату также нанесены цифровые и буквенные обозначения, которыми можно руководствоваться, создавая, например, инструкцию для подключения.

breadboard3


Внимание! Беспаечные макетные платы абсолютно недопустимо использовать с напряжением 220В!

Видео:


Источники

https://arduinomaster.ru/platy-arduino/maketnaya-plata-arduino/

http://arduino-diy.com/arduino-breadboard-kak-ispolzovat