Первый опыт с Arduino
09.01.2017 758 0 0 ammo1

Первый опыт с Arduino

---
0
В закладки
Уже давно я мечтал освоить Arduino. Это очень дешёвый микрокомпьютер, у которого есть 14 цифровых входов/выходов и 6 аналоговых входов. Для Arduino есть множество дополнительных модулей (датчики, клавиатуры, экраны, моторы), программы для него создаются на простом языке программирования и загружаются по USB.

Во время большой китайской халявы позапрошлой осенью я накупил по 5 центов кучу плат и дополнительных модулей. Сегодня с утра я наконец-то начал с этим всем разбираться.



Arduino UNO удобно использовать, как платформу для разработки (плата напрямую подключается к компьютеру, а все соединения выполняются без пайки проводами с разъёмами). Такая плата на Aliexpress стоит от $2.99. Когда разработка завершена, в готовом устройстве можно использовать гораздо меньшую по размерам и ещё более дешёвую плату Arduino Pro Mini, обладающую теми же возможностями. Она стоит меньше 100 рублей - $1.3.



Для меня Arduino не игрушка. Я хочу с помощью неё сделать совершенно конкретные, нужные мне устройства. Первые две вещи, которые я хочу сделать - гониофотометр и электронный ЛАТР.

Гониофотометр - устройство, позволяющее определить световой поток лампы и угол освещения. Он прокручивает мотором патрон с лампой на 360 градусов в горизонтальной плоскости, измеряя уровень освещённости в каждом положении лампы, а затем рассчитывает световой поток и угол.

Электронный ЛАТР - устройство, позволяющее получать переменное напряжение от 1 до 256 вольт с дискретностью 1 вольт. Оно пригодится для моего тестирования ламп и для регулировки скорости вентиляторов (с обычными диммерами вентиляторы гудят). Идея в том, чтобы заказать небольшой трансформатор с восемью вторичными обмотками: 1, 2, 4, 8, 16, 32, 64 и 128 вольт. Коммутируя их с помощью реле, управляемых Arduino, можно будет получать любые напряжения.

Сегодня я научился управлять шаговым мотором. Мотор 28BYJ-48 вместе с платой управления стоит всего $1.65. У него есть встроенный редуктор и он делает полный оборот за 2048 шагов или 4096 полушагов.

Сначала я пробовал разбираться с готовыми библиотеками Stepper и AccelStepper, но потом понял, что проще обойтись без них и управлять двигателем напрямую.

Я нашёл в интернете программу управления и схему подключения. Запустил - крутится. Научился делать циклы. Потом разобрался, как создавать функции. В результате через три часа после того, как первый раз в жизни включил Arduino, я создал функцию, которая умеет делать нужное количество шагов мотора.
Вся программа, вращающая двигатель по часовой стрелке на полоборота с паузой 200 мс выглядит так:

Конечно, предстоит разбираться ещё с очень многим, но успешное начало положено. :)

Сегодня я заказал ещё модуль двухстрочного ЖК-экрана с шестью кнопками за $2.60, пару модулей с четырьмя силовыми реле по $1.95 (есть модули и с восемью реле, но я решил, что два модуля по 4 реле удобней), четырёхкнопочную мембранную клавиатуру за $0.53, четырёхразрядный индикатор за $1.4. Ещё заказал два разных датчика освещённости за $0.4 и за $0.6, но с ними я промахнулся - они пороговые и используются для включения освещения в тёмное время суток. Но ничего, пригодятся. Заказал хитрый датчик с двумя фотодиодами и двумя АЦП за $1.75 и простенький датчик с аналоговым выходом за $0.9.

© 2017, Алексей Надёжин

Основная тема моего блога - техника в жизни человека. Я пишу обзоры, делюсь опытом, рассказываю о всяких интересных штуках. А ещё я делаю репортажи из интересных мест и рассказываю об интересных событиях.
Добавьте меня в друзья здесь. Запомните короткие адреса моего блога: Блог1.рф и Blog1rf.ru.

Второй мой проект - lamptest.ru. Я тестирую светодиодные лампы и помогаю разобраться, какие из них хорошие, а какие не очень.уникальные шаблоны и модули для dle
Комментарии (0)
Добавить комментарий
Прокомментировать
[related-news]
{related-news}
[/related-news]