Начало работы с Ардуино
Говоря бытовым языком, Ардуино – это электронная плата, в которую можно воткнуть множество разных устройств и заставить их работать вместе с помощью программы, написанной на языке Ардуино в специальной среде программирования.
Чаще всего плата выглядит вот так:
На рисунке показана одна из плат Ардуино – Arduino Uno. Мы изучим ее подробнее на следующих уроках.
В плату можно втыкать провода и подключать множество разных элементов. Чаще всего, для соединения используется макетная плата для монтажа без пайки. Можно добавлять светодиоды, датчики, кнопки, двигатели, модули связи, реле и создавать сотни вариантов интересных проектов умных устройств. Плата Ардуино – это умная розетка, которая будет включать и выключать все присоединенное в зависимости от того, как ее запрограммировали.
Вся работа над проектом разбивается на следующие этапы:
- Придумываем идею и проектируем.
- Собираем электрическую схему. Тут нам пригодится макетная плата, упрощающая монтаж элементов. Безусловно, понадобятся навыки работы с электронными приборами и умение пользоваться мультиметром.
- Подключаем плату Arduino к компьютеру через USB.
- Пишем программу и записываем ее в плату буквально нажатием одной кнопки на экране в специальной среде программирования Arduino.
- Отсоединяем от компьютера. Теперь устройство будет работать автономно – при включении питания оно будет управляться той программой, которую мы в него записали.
Программа и среда программирования выглядят вот так:
На экране показана программа (на сленге ардуинщиков текст программы называется “скетч”), которая будет мигать лампочкой, подсоединенной к 13 входу на плате Ардуино UNO. Как видим, программа вполне проста и состоит из понятных для знающих английский язык инструкций. В языке программирования Arduino используется свой диалект языка C++, но все возможности C++ поддерживаются.
Есть и другой вариант написания кода – визуальный редактор. Тут не нужно ничего писать – можно просто перемещать блоки и складывать из них нужный алгоритм. Программа загрузится в подключенную плату одним нажатием кнопки мыши!
Визуальную среду рекомендуется использовать школьникам младших классов, более старшим инженерам лучше сразу изучать “настоящий” Ардуино – это довольно просто, к тому же знания C++ никому не повредят.
В целом все выглядит довольно понятно, не так ли? Осталось разобраться в деталях.
Установка Arduino IDE
Прежде чем начать работу с Arduino необходимо установить среду программирования Arduino IDE на ваш компьютер/ноутбук. Все описанные далее шаги по установке данной программной среды будут ориентированы на операционную систему Windows, для остальных операционных систем последовательность действий будет примерно такой же. Если возникнут проблемы с другими системами, то помощь можно найти по следующим ссылкам – для пользователей Mac и пользователей Linux. Перед началом установки Arduino IDE убедитесь что вы обладаете правами администратора на вашем компьютере – это облегчит установку.
Шаг 1. Загрузите Arduino IDE с официального сайта — https://www.arduino.cc/download_handler.php.
Шаг 2. Запустите скачанный exe файл.
Шаг 3. В открывшемся окне кликните на “I Agree” чтобы согласиться с условиями лицензии Arduino.
Шаг 4. В окне опций установки отметьте все галочки (см. рисунок).
Шаг 5. На этом шаге необходимо выбрать место установки Arduino IDE. По умолчанию стоит путь установки в Program files на диске C – крайне рекомендуется оставить именно этот путь.
Шаг 6. На этом шаге вы можете наблюдать как Arduino IDE устанавливается на ваш компьютер (см. рисунок). После того как установка будет завершена нажмите кнопку “completed”.
Шаг 7. После завершения установки запустите на выполнение файл Arduino.exe. Откроется окно IDE с минимумом кода внутри него – см. рисунок.
Разработка проекта
На современном рынке представлено множество устройств Arduino, имеющих различную комплектацию. Но универсального решения «на все случаи жизни» не существует. В зависимости от поставленной задачи каждый комплект подбирается в индивидуальном порядке. Чтобы избежать ошибок, требуется разработка проекта.
Какие проекты можно создавать на Arduino?
Ардуино позволяет создавать множество уникальных проектов. Вот лишь некоторые из них:
- Сборка кубика Рубика (система справляется за 0,887 с);
- Контроль влажности в подвальном помещении;
- Создание уникальных картин;
- Отправка сообщений;
- Балансирующий робот на двух колесах;
- Анализатор спектра звука;
- Лампа оригами с емкостным сенсором;
- Рука-робот, управляемая с помощью Ардуино;
- Написание букв в воздухе;
- Управление фотовспышкой и многое другое.
https://youtube.com/watch?v=gVF_XUccMuo
Составление проекта для умного дома
Рассмотрим ситуацию, когда необходимо сделать автоматику для дома с одной комнатой.
Такое здание состоит из пяти основных зон — прихожей, крыльца, кухни, санузла, а также комнаты для проживания.
При составлении проекта стоит учесть следующее:
- КРЫЛЬЦО. Включение света производится в двух случая — приближение хозяина к дому в темное время суток и открытие дверей (когда человек выходит из здания).
- САНУЗЕЛ. В бойлере предусмотрен выключатель питания, который при достижении определенной температуры выключается. Управление бойлером производится в зависимости от наличия соответствующей автоматики. При входе в помещение должна срабатывать вытяжка, и загорается свет.
- ПРИХОЖАЯ. Здесь требуется включение света при наступлении темноты (автоматическое), а также система обнаружения движения. Ночью включается лампочка небольшой мощности, что исключает дискомфорт для других жильцов дома.
- КОМНАТА. Включение света производится вручную, но при необходимости и наличии датчика движения эта манипуляция может происходить автоматически.
- КУХНЯ. Включение и отключение света на кухне осуществляется в ручном режиме. Допускается автоматическое отключение в случае продолжительного отсутствия перемещений по комнате. Если человек начинает готовить пищу, активируется вытяжка.
https://youtube.com/watch?v=HeBzkZZRrVQ
Отопительные устройства выполняют задачу поддержания необходимой температуры в помещении. Если в доме отсутствуют люди, нижний предел температуры падает до определенного уровня.
После появления людей в здании этот параметр поднимается до прежнего значения. Рекуперация воздуха осуществляется в случае, когда система обнаружила присутствие владельца. Продолжительность процесса — не более 10 минут в час.
Стоит обратить внимание, что если в доме планируется установка умных розеток, то для управления ими лучше использовать приложения на мобильных устройствах, WIFI или через SMS сообщения. Визуальное программирование для Arduino можно осуществлять с помощью специального приложения FLProg, которое можно скачать с официального сайта http://flprog.ru/
Визуальное программирование для Arduino можно осуществлять с помощью специального приложения FLProg, которое можно скачать с официального сайта http://flprog.ru/.
Arduino Uno R3
Таким образом можно будет управлять каждым светодиодом отдельно
На плате есть два вывода обозначенные 5v и 3.
Обратите внимание, что есть разница, как соединять светодиод.
Подробнее про этот интерфейс вы можете почитать на википедии. Включая разные светодиоды с различной яркостью можно комбинировать и получать разные цвета.
На схеме это можно представить, что ток течёт в ту сторону, куда направлен треугольник
Вы не сможете считать или записать данные с пина, пока не установите его соответственно в pinMode.
Подробнее здесь.
Первое, что мы подключим к нашему микроконтроллеру, это светодиод. Хочу предупредить, что для выполнения отдельных больших проектов может потребоваться поэтапная разработка.
Значит, чтобы зажечь светодиод нам надо на пине , соединенном со светодиодом выставить высокий уровень HIGH. Вы увидите его рядом с выводами 3,5,6,9,10,
Сборка электроники для пневматической винтовки
https://youtube.com/watch?v=1z4YStlZPuk
Фотографии разных версий платформы
Ниже представлены фотографии платформы разных версий и разных производителей.
Многие задаются вопросом, чем китайский карлик ардуино отличается от оригинала? Можно с уверенностью сказать, что основное отличие официальных платформ от сторонних только в цене и упаковке товара.
- Все
- Официальная версия
- Аналог на базе CH340G
Официальная версия
Официальная версия
Официальная версия
Китайский аналог Nano на базе CH340G
Китайский аналог Nano на базе CH340G
Китайский аналог Nano на базе CH340G
Есть ли качественная разница между официальными комиссиями и их коллегами? Нет! Все платформы Arduino работают точно так же, с соблюдением заявленных характеристик.
Соединяем все детали
На данном этапе у нас:
- куплены все детали;
- установлены все нужные программы (Arduino IDE и Fritzing при необходимости);
- нарисована схема устройства.
Теперь мы начинаем собирать всё вместе. Не забываем заранее подготовить все провода-перемычки и все детали. Внимательно следуйте инструкциям и не спешите, чтобы убедиться, что все соединения выполнены правильно.
Обратите внимание, что зеленый провод подключен к земле. Красный контакт подключен к контакту 13.
Если вы еще не вставили Arduino Nano к макетке — самое время это сделать:
Вставляем перемычки:
Теперь подключаем наше сопротивление:
И наконец вставляем светодиод:
И последнее на данном шаге — вставляем наш USB-кабель, который при покупке часто идет в комплекте с микроконтроллером:
Установка ПО и драйверов
Для ОС семейства Linux установка драйверов не требуется, а вот для ОС Windows драйвер может потребоваться. У меня стоит Kubuntu 15.04 и Windows 10, устройство определилось без проблем и отдельно драйвера устанавливать не пришлось.
Программное обеспечение будем использовать оригинальное от Arduino. ПО бесплатно и свободно для скачивания.
Процесс установки проводил по инструкции от Arduino, но некоторые шаги пропустил из-за ненадобности выполнения:
- Скачиваем ПО вот здесь и устанавливаем на компьютер;
- Подключаем Arduino Nano к компьютеру посредством USB-кабеля, после подключения на плате загорится зеленый светодиод (PWR);
- Если устройство не обнаружилось или обнаружилось как неизвестное устройство, то необходимо установить драйвер. Как писал выше у меня оборудование установилось без плясок и определилось как USB-SERIAL CH340. Описание установки драйвера опушу, очень много материала в интернете;
- Запускаем приложение Arduino и переходим в меню «Инструменты — Порт», и указываем необходимый порт, для меня это СОМ3.
PSpice
Каждый студент, занимающийся электротехникой и электроникой, должен был столкнуться с PSpice в течение месяцев, потраченных на изучение основ проектирования схем и программирования. Но для тех кто не знает что такое PSpice — это интуитивный симулятор, который можно использовать для моделирования Arduino из-за множества функций, интегрированных в приложение. PSpice поддерживается операционной системой Windows и Linux и поставляется в разных модулях или типах.
Студенты могут использовать PSpice Lite, который абсолютно свободен, чтобы изучить основы программирования Ардуино, в то время как компании, преподаватели и другие эксперты могут использовать платный PSpice. PSpice в настоящее время используется в различных отраслях промышленности — автомобилестроении, образовании, энергоснабжении и т.д.
Что такое Arduino Nano?
Arduino Это уже классика в мире бесплатного оборудования и в мире производителей. С его разработкой и программным обеспечением вы можете создавать множество проектов, предел которых — ваше воображение и ну … конечно, некоторые технические ограничения. Но они позволяют изучать электронику, программирование, а также творить настоящие чудеса.
Даже профессиональные проекты основаны на этих досках для разработки. В случае Arduino Nano, это уменьшенная версия de Arduino UNO. Это сводит к минимуму потребление энергии, а также означает, что для размещения тюка требуется меньше места, что делает его идеальным для проектов, где важен размер.
Это не тарелка Arduino UNO точно в миниатюре, как вы увидите, есть некоторые важные технические отличия. И это не альтернатива LilyPad. Но он разделяет другие характеристики и суть, которые присутствуют во всех проектах Arduino. Конечно, его можно запрограммировать таким же Arduino IDE как и остальные.
технические характеристики
Плата Arduino Nano имеет некоторые технические характеристики, которые вы должны знать, прежде чем начинать с нее, в дополнение к оцените, действительно ли это то, что вам нужно для вашего проекта или не соответствует вашим ожиданиям.
те технические характеристики являются:
- Это небольшая, гибкая и простая в использовании плата микроконтроллера.
- Он основан на микроконтроллере Atmel ATmega328p или MCU в версиях 3.x и на ATmega168 в предыдущих версиях. В любом случае он работает на частоте 16 МГц.
- Память состоит из 16 или 32 КБ флэш-памяти в зависимости от версии (2 КБ используется для загрузчика), с 1 или 2 КБ памяти SRAM и 512 байт или 1 КБ EEPROM в зависимости от MCU.
- Он имеет напряжение питания 5 В, но входное напряжение может варьироваться от 7 до 12 В.
- Он имеет 14 цифровых контактов, 8 аналоговых контактов, 2 контакта сброса и 6 контактов питания (Vcc и GND). Из аналоговых и цифровых выводов им назначено несколько дополнительных функций, таких как pinMode () и digitalWrite () и analogRead () для аналогов. В случае аналогов они допускают 10-битное разрешение от 0 до 5 В. На цифровых устройствах 22 могут использоваться как выходы. ШИМ.
- Он не включает розетку постоянного тока.
- Он использует стандартный miniUSB для подключения к компьютеру для программирования или питания.
- Его потребляемая мощность составляет 19 мА.
- Размер печатной платы 18×45 мм, вес всего 7 грамм.
Распиновка и таблица данных
На этом изображении, любезно предоставленном Arduino, вы можете увидеть распиновка или предрасположенность контактов и соединений, которые вы можете найти на этой плате разработки. Как видите, у Arduino Nano не так много контактов ввода-вывода, как у его сестер, но для большинства проектов их достаточно.
Если вы хотите увидеть более подробную информацию, вы можете получить доступ таблицы данных которые существуют для этой версии Arduino Nano:
- Технический паспорт в PDF
- Файлы Eagle
- Электронная схема Arduino Nano
- Скачать распиновку в PDF
Отличия от других плат Arduino Mini и Micro
В официальный Arduinos Вы можете найти те версии, о которых мы говорили в этом блоге, такие как UNO, Mega и т. Д. Еще один — это Arduino Nano, который имеет следующие отличия, которые вы видели в предыдущих разделах.
Однако делать краткое изложение наиболее выдающихся, они являются наиболее важными по сравнению с другими официальными пластинами небольшого размера:
- Он был разработан с той же целью, что и Arduino Mini, только у Nano есть порт miniUSB запрограммировать и подпитать энергией.
- Su цена он находится между Arduino Mini и Arduino Micro.
- Остальные характеристики можно увидеть в следующих таблица:
Характеристики |
Ардуино Мини |
Ардуино Микро |
Ардуино Нано |
Микроконтроллер |
Atmega328P |
ATmega32U4 |
ATmega168 / ATmega328P |
Рабочее напряжение |
5 V |
5 V |
5 V |
Напряжение питания |
7 9-V |
7 12-V |
7 9-V |
Рабочая частота |
16 МГц |
16 МГц |
16 МГц |
Аналоговые входы / выходы |
8/0 |
12/0 |
8/0 |
Цифровые входы / выходы |
14/14 |
20/20 |
14/14 |
ШИМ |
6 |
7 |
6 |
EEPROM (кБ) |
1 |
1 |
0.512 / 0 |
SRAM (кБ) |
2 |
2.5 |
1 / 2 |
Flash (КБ) |
32 |
32 |
16 / 32 |
Основной порт питания и программирования |
Через карту FTDI или кабель |
MicroUSB |
MiniUSB |
UART |
1 |
1 |
1 |
размеры | 3 х 1.8 см | 4.8 х 1.77 см | 4.5 х 1.8 см |
совместимость
Плата Arduino Nano — это совместим со всеми видами электронных компонентов как и остальные тарелки. Нет никаких ограничений, кроме поддерживаемых максимальных ограничений по току и напряжению. Но в противном случае вы можете использовать любой компонент, который хотите все видели в HwLibre.
Шаг 7. Программируем Ардуино
Подключите коммутационную плату к Arduino и подключите её к компьютеру. Откройте диспетчер устройств и наблюдайте за com-портом конвертера usb — ttl. В Arduino IDE выберите com-порт и плату правильно. Теперь здесь начинается сложная часть.
Если ваша плата FTDI имеет вывод DTR и она подключена для сброса, просто сохраните программу и загрузите ее в Arduino как обычно. Ошибки не будет. Но если у вас нет пина DTR, как у нас, то, прежде чем нажать кнопку загрузки, удерживайте кнопку сброса на плате, а затем нажмите кнопку загрузки. Удерживайте кнопку до тех пор, пока программа не скомпилируется, когда IDE говорит «загрузка», затем отпустите переключатель сброса. Затем код будет загружен.
Знакомство с интерфейсом Ардуино
Одним из основных элементов ардуино является главное меню программы, которое позволяет получить доступ ко всем доступным функциям нашей программы.
Ниже расположена панель с иконками, которые отображают наиболее используемые функции Arduino IDE:
- загрузка программы;
- проверка на наличие ошибок;
- создание нового скетча;
- сохранение скетча;
- загрузка сохранения;
- открытие окна порта микроконтроллера;
Следующим по важности элементом является вкладка с файлами проекта. Если это простой скетч, то файл будет всего один
Однако сложные скетчи могут состоять из нескольких файлов. В таком случае на панели вкладок можно быстро переключить просмотр с одного файла на другой. Это очень удобно.
Самым большим из блоков является поле редактора наших скетчей. Тут мы можем просмотреть и, при необходимости, отредактировать нужный нам программный код. Отдельно реализовано поле для вывода системных сообщений. С его помощью можно убедиться, что сохранение вашего скетча или его загрузка были проведены успешно, и вы можете приступать к следующим действиям. Также в программе существует окно, отображающее наличие в ходе компиляции вашего скетча.
Компиляция – преобразование исходного кода языка высокого уровня в машинный код или на язык ассемблера.
Шаг 4. Создаем печатную плату
Как только схема завершена, пришло время сделать печатную плату. Мы использовали веб-сайт JLCPCB (ссылка), чтобы сделать печатную плату. Эти ребята являются одними из лучших в производстве печатных плат в последние дни.
После завершения проектирования схемы преобразуйте ее в печатную плату и спроектируйте печатную плату на веб-сайте easyEDA (ссылка). Будьте терпеливы. Ошибка на этом шаге испортит вашу печатную плату. Проверьте несколько раз перед генерацией файла gerber. Вы также можете проверить 3d модель вашей платы здесь. Нажмите на создание файла gerber и оттуда вы можете напрямую заказать эту плату через JLCPCB. Загрузите файлы gerber, выберите правильную спецификацию, ничего не меняйте в этом разделе. Оставьте как есть. Это достаточно хорошие настройки для старта. Разместите заказ. Вы получите его через 1-2 недели.
Загрузить Arduino IDE с официального сайта
Для загрузки программы с официального сайта Arduino.cc вам нужно найти в навигации сайта пункт Software – Downloads. Найдите на странице ссылки на последние версии программы (для Windows, Linux, Mac OS X). Щелкнув на ссылку вы попадете на страницу загрузки, на которой можете выбрать вариант загрузки:
- С поддержкой проекта (укажите, какую сумму вы готовы пожертвовать)
- Без поддержки. Просто нажмите на кнопку «Загрузить».
Не зависимо от выбранного варианта, вы все равно загрузите одну и ту же версию, никаких ограничений для «бесплатной» версии нет. Но если у вас есть возможность, то постарайтесь пожертвовать команде, так много сделавшей для развития проекта.
Версия 1.8.7
Windows Installer, 1.8.7 | |
Windows – ZIP файл, 1.8.7 | |
MAC OS X, 1.8.7 | |
Linux, 32-разрядная система, 1.8.7 | |
Linux, 64-разрядная система, 1.8.7 |
Распиновка Arduino NANO v3
Главное отличие этой миниатюрной платы, заключается в отсутствии гнезда для внешнего источника питания, вместо этого используются VIN. Когда речь идет о создании миниатюрного устройства, то размер Arduino Nano v3 ATmega328 / ATmega168 играет решающую роль при выборе платформы. При этом, Ардуино УНО — это более удобная платформа для старта и начала изучения микроконтроллеров.
Arduino Nano распиновка платы на русском, ICSP
Платы могут выпускаться в двух вариантах — с припаянными ножками и без (ножки обычно идут в комплекте). Платы без ножек будет намного удобнее использовать в проектах на Ардуино, припаивая к портам платы провода напрямую. Платы с ножками можно устанавливать на макетных платах, используя для соединения с датчиками и модулями коннекторы (провода «папа-папа» и «папа-мама»).
Подключение вашей платы Arduino к компьютеру
После того как вы установили Arduino IDE на свой компьютер следующим логичным шагом будет подключение платы Arduino UNO к компьютеру. Чтобы сделать это просто используйте кабель для программирования (синего цвета) и соедините его с платой Arduino и USB портом вашего компьютера.
Синий кабель для программирования может выполнять следующие три функции:
- Он запитывает плату Arduino UNO, то есть чтобы обеспечить выполнение программ на ней необходимо просто запитать ее с помощью USB кабеля.
- Через него программируется микроконтроллер ATmega328, находящийся на плате Arduino UNO. То есть код программы пересылается из компьютера в микроконтроллер именно по этому кабелю.
- Он может функционировать в качестве кабеля для последовательной связи, то есть с его помощью можно передавать данные с Arduino UNO в компьютер – это полезно для целей отладки программы.
После того как вы подадите питание на плату Arduino UNO на ней загорится маленький светодиод – это свидетельствует о том, что на плату подано питание. Также вы можете заметить как мигает другой светодиод – это результат работы программы по управлению миганием светодиода, которая по умолчанию загружена в вашу плату ее производителем.
Поскольку вы подключаете плату Arduino в первый раз к компьютеру необходимо некоторое время чтобы драйвера для нее успешно установились. Чтобы проверить правильно ли все установилось и определилось откройте «Диспетчер устройств (Device manager)» на вашем компьютере.
В диспетчере устройств откройте опцию «Порты» “Ports (COM & LPT)”, кликните на ней и посмотрите правильно ли отображается там ваша плата.
При этом стоит отметить, что не стоит обращать внимание на то, какой номер порта отобразился у вашей платы Arduino – он может, к примеру, выглядеть как CCH450 или что то подобное. Этот номер порта просто определяется производителем платы и больше ни на что не влияет
Если вы не можете в диспетчере устройств найти опцию “Ports (COM & LPT)”, то это означает, что ваша плата не корректно определилась компьютером. В большинстве случает это означает проблему с драйверами – по какой то причине они автоматически не установились для вашей платы. В этом случае вы должны будете вручную установить необходимые драйверы.
В некоторых случаях в указанной опции диспетчера устройств может отобразиться два COM порта для вашей платы и вы не будете знать какой из них правильный. В этой ситуации отключите и снова подключите плату Arduino к компьютеру – какой из COM портов при этом будет появляться и исчезать, значит тот и правильный порт.
Следует помнить о том, что номер COM порта будет изменяться при каждом новом подключении вашей платы к компьютеру – не пугайтесь, в этом нет ничего страшного.
Arduino NANO v3.0 ch340g: прошивка, память
Программирование платы производится в среде Arduino IDE 1.8, которую можно бесплатно скачать на официальном сайте www.arduino.cc. Для подключения датчиков и модулей к Nano используются коннекторы, которые подключаются к портам на плате Ардуино. Чтобы быстро научиться работать с платформой, перейдите в раздел на нашем сайте «Уроки для начинающих» где представлены подробные инструкции.
Плата поддерживает три типа памяти:
Flash – память объемом 32 кБ для Arduino Nano ATmega328 и 16 кБ для Arduino Nano ATmega168, используется для хранения программы. Когда контроллер прошивается скетчем через USB, программа записывается именно во Flash – память.
SRAM память — это оперативная память платформы Ардуино объемом 2 кБ для ATmega328 и 1 кБ для ATmega168. SRAM память энерго-зависимая, при отключении источника питания от платы, все сохраненные ранее данные удалятся.
EEPROM — это энергонезависимая память объемом всего 1 кБ. Сюда можно записывать данные, которые при выключении питания не исчезнут. Минус EEPROM в ограничении циклов перезаписи — 100 000 раз по утверждениям производителя.
Объяснения программ для плат Arduino UNO и Arduino Nano
Для программирования обоих плат используется среда Arduino IDE. Убедитесь в том, что вы выбрали правильный порт из пункта меню Tools->Port и правильный тип платы из пункта меню Tools->Board.
Полный код программ приведен в конце статьи, здесь же мы рассмотрим их основные фрагменты. Видео, демонтсрирующее работу проекта, также приведено в конце статьи.
Объяснение программы для платы Arduino UNO (ведущей)
В программе для ведущей стороны нам просто необходимо считывать значение напряжения с выхода потенциометра, подключенного к аналоговому контакту A0 и затем с помощью функции SerialWrite передавать их модулю RS-485 через контакты последовательного порта (0,1) платы Arduino UNO.
Инициализация последовательной связи на контактах (0,1) производится с помощью следующей команды:
Arduino
Serial.begin(9600);
1 | Serial.begin(9600); |
Для считывания аналогового значения на контакте A0 платы Arduino UNO и его сохранения в переменной potval используется команда:
Arduino
int potval = analogRead(pushval);
1 | intpotval=analogRead(pushval); |
Перед передачей значения переменной potval по последовательному порту необходимо на контактах DE и RE модуля RS-485 установить напряжение высокого уровня (HIGH). Данные контакты подключены у нас к контакту 8 платы Arduino UNO, поэтому просто используем команду:
Arduino
digitalWrite(enablePin, HIGH);
1 | digitalWrite(enablePin,HIGH); |
Далее просто передаем по последовательному порту значение переменной potval.
Arduino
Serial.println(potval);
1 | Serial.println(potval); |
Объяснение программы для платы Arduino Nano (ведомой)
На ведомой стороне (Slave side) значение переменной целого типа, полученное от ведущего модуля RS-485, можно будет считать на контактах последовательного порта связи (0,1) платы Arduino Nano. Просто считываем эти значения и сохраняем их в переменной. Принятые значения будут в диапазоне 0-1023, поэтому преобразуем их к диапазону 0-255 чтобы управлять яркостью свечения светодиода с помощью широтно-импульсной модуляции (ШИМ).
Затем это конвертированное значение мы с помощью функции AnalogWrite подаем на контакт D10 (является ШИМ-контактом), к оторому подключен светодиод – таким образом мы управляем яркостью его свечения. Также эти значения мы будем показывать на экране ЖК дисплея 16х2.
Для того, чтобы модуль RS-485, подключенный к ведомой плате Arduino, мог принимать эти значения от ведущего модуля, необходимо на его контактах DE и RE установить напряжение низкого уровня (LOW). Для этого просто устанавливаем LOW на контакте D8 (enablePin) платы Arduino Nano.
Arduino
digitalWrite(enablePin, LOW);
1 | digitalWrite(enablePin,LOW); |
Для считывания значения из последовательного порта и сохранения его в переменной используем команду:
Arduino
int pwmval = Serial.parseInt();
1 | intpwmval=Serial.parseInt(); |
Затем конвертируем это значение из диапазона 0-1023 в диапазон 0-255 и сохраняем полученное значение в переменной:
Arduino
int convert = map(pwmval,0,1023,0,255);
1 | intconvert=map(pwmval,,1023,,255); |
Затем подаем это значение на контакт D10, к которому подключен светодиод:
Arduino
analogWrite(ledpin,convert);
1 | analogWrite(ledpin,convert); |
Для отображения этого значения на экране ЖК дисплея 16×2 используем следующую последовательность команд:
Arduino
lcd.setCursor(0,0);
lcd.print(«PWM FROM MASTER»);
lcd.setCursor(0,1);
lcd.print(convert);
1 |
lcd.setCursor(,); lcd.print(«PWM FROM MASTER»); lcd.setCursor(,1); lcd.print(convert); |
Arduino UNO R3: распиновка платы
Что такое Arduino UNO CH340 мы уже рассказывали, поэтому перейдем сразу к характеристикам и описанию платы Ардуино УНО. Распиновка и принципиальная схема платформы представлена на фото далее. Как мы уже говорили, вся линейка плат имеет полностью открытую архитектуру системы, что позволяет любому стороннему производителю копировать и модернизировать платы Arduino Genuino UNO.
Arduino UNO распиновка платы на русском, ICSP
Распиновка микроконтроллера ATmega328P
Распиновка микроконтроллера ATmega328P Uno
Пин Arduino |
Название пина |
Функция |
Генерация ШИМ |
Цифровой пин №0 |
Serial (RX) |
||
Цифровой пин №1 |
1 |
Serial (TX) |
|
Цифровой пин №2 |
2 |
Вход для внешних прерываний |
|
Цифровой пин №3 |
3 |
Вход для внешних прерываний |
есть |
Цифровой пин №4 |
4 |
||
Цифровой пин №5 |
5 |
есть |
|
Цифровой пин №6 |
6 |
есть |
|
Цифровой пин №7 |
7 |
||
Цифровой пин №8 |
8 |
||
Цифровой пин №9 |
9 |
есть |
|
Цифровой пин №10 |
10 |
SPI (SS) |
есть |
Цифровой пин №11 |
11 |
SPI (MOSI) |
есть |
Цифровой пин №12 |
12 |
SPI (MISO) |
|
Цифровой пин №13 |
13 |
SPI (SCK) + светодиод |
|
Аналоговый пин №А0 |
А0 |
||
Аналоговый пин №А1 |
А1 |
||
Аналоговый пин №А2 |
А2 |
||
Аналоговый пин №А3 |
А3 |
||
Аналоговый пин №А4 |
А4 |
I2C (SDA) |
|
Аналоговый пин №А5 |
А5 |
I2C (SCL) |
PinOut микроконтроллера ATmega328P
PinOut микроконтроллера ATmega328P Uno
UNO является лучшим вариантом для знакомства с микроконтроллерами. Плата имеет удобный размер и все необходимое для начала работы: 14 цифровых входов/выходов (6 портов могут работать в режиме ШИМ), 6 аналоговых входов для датчиков, разъем USB для программирования и разъем питания Arduino UNO от блока питания или кроны. Но главное — это огромное множество уроков и инструкций в Интернете.
Элементы платы
Arduino Nano состоит из множества элементов, в том числе:
- микросхемы;
- пассивные элементы (резисторы, конденсаторы, диоды);
- разъемы;
- регуляторы.
Микросхема платы FT232R
Микросхема допускает подключение платы по USB. Чип, установленный в AN, не может работать напрямую с интерфейсом USB, поэтому FT232R преобразует его в интерфейс UART.
Сердце платформы — микроконтроллер ATmega328P
ATmega328P – контроллер основной платы. В него загружается набросок, написанный программистом, и контроллер отправляет команды различным элементам платы. Например, микроконтроллер мигает диодами, реле переключается, а пьезоэлемент издает звуки.
Светодиодная индикация
На плате есть 4 встроенных светодиода, каждый из которых имеет свое назначение:
- Светодиоды RX и TX мигают во время передачи данных по UART.
- Диод L загорается при подаче на него высокого сигнала и гаснет при низком уровне.
- Светодиод ON горит, когда на плату подано питание.
Кроме того, практически любой вывод микроконтроллера можно подключить к другим светодиодам, 7-сегментным индикаторам или даже дисплеям.
Разъем mini-USB
Через разъем mini-USB карту можно подключить к персональному компьютеру. AN также может получать питание от внешних источников через этот интерфейс.
Линейный понижающий регулятор напряжения 5 В
В качестве регулятора используется микросхема LM1117MPX-5.0. Преобразует сигнал питания AN в сигнал питания микроконтроллера ATmega и других логических вентилей, которые не поддерживают напряжение более 5 В. Например, транзисторные логические элементы (TTL) получают питание от сигнала такой величины.
Подводим итоги урока
В этой короткой начальной статье мы с вами узнали, что такое Ардуино, почему эту технологию называют именно так, как выглядят типичные проекты с использованием контроллеров Arduino. Начать создавать интересные технические проекты очень просто – для этого не обязательно быть электронщиком. Просто возьмите плату ардуино, соберите с ее помощью нужную электронную схему (можно найти много готовых примеров в интернете), подключите контроллер к компьютеру и загрузите программу. Умное устройство готово!
В следующих уроках мы с вами узнаем, как работает контроллер, разберем устройство платы Arduino Uno и запустим свой первый проект.