Здесь находятся прошивки, схемы и уроки по радиотехнике и платформе Ардуино.
Если у Вас уже есть базовые знания по электронике, этот этап можно пропустить, если нет, читайте дальше.
Электрический ток — это поток заряженных частиц, сила которого измеряется в амперах, а напряжение в вольтах.
Резистор — это пассивный элемент электрической цепи, главное назначение которого — оказывать электрическое сопротивление току. Простыми словами, это «тормоз» для электронов. Он ограничивает силу тока, преобразуя лишнюю электрическую энергию в тепло.
Закон Ома
Работа резистора описывается формулой: U = I × R, где:
Из этой формулы следует, что чем больше сопротивление (R), тем меньше ток (I) при том же напряжении.
Конденсатор — это устройство, которое используется для накопления электрического заряда и энергии электрического поля. Простыми словами, это как маленький аккумулятор, но работающий по-другому. Если аккумулятор накапливает энергию медленно (химическим путем) и отдает ее долго, то конденсатор накапливает заряд мгновенно и отдает его тоже почти мгновенно (за доли секунды).
Как он устроен:
Это две металлические пластины (обкладки), разделенные диэлектриком (изолятором — воздухом, бумагой, керамикой или специальной пленкой). Когда вы подаете напряжение, на одной пластине собираются электроны (минус), на другой — их нехватка (плюс). Так накапливается заряд.
Транзистор — это полупроводниковый прибор, который умеет делать две главные вещи:
Простыми словами, это переключатель или усилитель, у которого нет движущихся частей. Он работает за счет движения электронов внутри кристалла кремния.
Из чего он состоит (структура):
Транзистор имеет три вывода (электрода):
Ардуино — это достаточно интересная платформа по созданию и программированию разнообразных устройств. Сама Ардуино является печатной платой нескольких типов, таких как Arduino Uno, Arduino Nano, Arduino Mega, а также многие другие. На любую из них можно загрузить свою прошивку. Для этого достаточно установить среду разработки Ардуино прошивок Arduino IDE с GitHub.
Для Ардуино существует большое количество команд. Самые простые из них это digitalWrite(), delay(). Команда digitalWrite() подаёт или не подаёт питание на указанный пин на плате, а команда delay() отсчитывает время в миллисекундах (1000 миллисекунд = 1 секунда). Из них и будет состоять Ваш первый код.
После установки и запуска Arduino IDE в основном текстовом поле появятся две цветные надписи void setup() {} и void loop() {}. Всё, что находится в модуле void setup() {} повторяется один раз при включении или перезагрузке платы, а модуль void loop() {} повторяет своё содержимое бесконечное количество раз. Всё что начинается с // является комментарием и к коду никакого отношения не имеет, они нужны только для разработчика, как ориентир.
Ваш первый код будет выполнять очень простую функцию: помигает светодиодом на самой плате. Вот как он выглядит:
Скопируйте код и вставьте его в Arduino IDE. После этого нажмите кнопку "Загрузить на плату". Далее обратите внимание на один из светодиодов на плате, он должен мигать.
В модуле void setup() {} команда pinMode(13, OUTPUT) указывает, что Вы работаете с пином 13 и устанавливает его в режим OUTPUT (выход). А в модуле void loop() {} находятся четыре команды. Команда digitalWrite(13, HIGH) подаёт питание на тринадцатый пин, потом благодаря команде delay(1000) плата ждёт одну секунду, digitalWrite(13, LOW) перестаёт подавать напряжение на пин 13, потом delay(1000) опять ждёт одну секунду. И весь этот цикл повторяется бесконечное количество раз. А светодиод мигает благодаря тому что он привязан к тринадцатому пину на самой плате.
Помимо элементарных команд в Arduino IDE их есть ещё очень много. Они разделяются на категории и представлены ниже.
Эти команды управляют потоком выполнения программы: принимают решения и создают циклы.
if, if {} else {}, switch {} case {}for, while, do {} while {}break, continue, return, gotoИспользуются для выполнения вычислений и сравнений
=, +, -, *, /, %==, !=, <, >&& (И), || (ИЛИ), ! (НЕ)&, |, ^, ~, <<, >>++, --, +=, -=, *=Определяют, какую информацию может хранить программа.
HIGH, LOW, INPUT, OUTPUT, true, falsevoid, boolean, char, byte, int, long, float, double, String, arraychar(), int(), long(), float()static, volatile, constsizeof() для определения размера переменнойГлавные инструменты для управления выводами платы и получения данных.
pinMode(), digitalWrite(), digitalRead()analogRead(), analogWrite(), analogReference()delay(), delayMicroseconds(), millis(), micros()min(), max(), abs(), constrain(), map(), pow(), sqrt()sin(), cos(), tan()randomSeed(), random()bitRead(), bitWrite(), bitSet(), bitClear(), bit()Для более сложных задач, таких как работа с прерываниями и связь с другими устройствами.
attachInterrupt(), detachInterrupt()shiftOut(), pulseIn()Serial.begin(), Serial.print(), Serial.read()Этот список охватывает все основные команды языка Arduino. Также важно помнить, что существует множество библиотек, которые добавляют новые команды для работы с конкретными датчиками, дисплеями и модулями, что значительно расширяет возможности платформы.
Часто для работы с такой периферией, как сервоприводы, светодиодные ленты, дисплеи и прочими модулями требуются библиотеки. Библиотека — это готовый код для работы с различными дополнениями для платы Ардуино. Библиотеки созданы для того, чтобы Вы не писали огромный код чтобы, например, по отдельности зажигать каждый светодиод на дисплее, а просто с помощью нескольких команд написать на дисплее любую фразу. Установить любую библиотеку можно в самой среде Arduino IDE. Для этого откройте её, выберите раздел Скетч >> Подключить библиотеку >> Управление библиотеками. В появившемся меню, в поисковик вставьте название нужной Вам библиотеки. Далее установите библиотеку, и в самом начале кода пропишите команду #include и название нужной библиотеки.
Теперь на основе полученных знаний Вы сможете собрать несколько интересных проектов, информация о которых представлена ниже.
В этом проекте Вы соберёте схему, которая заставит вращаться шаговый мотор 28BYJ-48 5VDC 15031801. Заказать его с драйвером можно на любом маркетплейсе, без драйвера мотор работать не будет.
Для проекта вам понадобится:
Далее соберите все компоненты по схеме:
| Пин Arduino | Пин драйвера ULN2003 |
|---|---|
| 8 | IN1 |
| 9 | IN2 |
| 10 | IN3 |
| 11 | IN4 |
| 5V | VCC |
| GND | GND |
Далее постарайтесь ознакомиться с кодом, представленным ниже.
После ознакомления скопируйте код и вставьте его в Arduino IDE. Проверьте, установлена ли библиотека Stepper. Если нет, установите. Затем нажмите "Загрузить на плату". Прошивка успешно загрузится.
Далее обратите внимание на мотор, его вал должен вращаться.
На этот раз Ардуино будет вращать шаговик без библиотеки Stepper, которую Вы могли заметить в предыдущем примере кода. Преимущество этого способа — Вы можете тонко настраивать скорость, меняя delay().