Светофор на Arduino
Пару лет назад я собрал для детки светофор, чтобы играть в ПДД. Собрал я его быстро, на коленке, микроконтроллер использовал Arduino Nano V3 с чипом Atmega 168P. Схема была достаточно простая, на заре работы с МК я достаточно основательно подошел к написанию прошивки, которая была утеряна, остался только файл для загрузки.
На видео первый прототип светофора и его работа.
В коде не используется команда delay, эта команда «подвешивает» контроллер, занимает операционное время на указанную задержку. Именно по этой причине светофор работает по двум циклам параллельно используя временные метки.
Я выложил видео на Youtube и спустя пару лет мне начали писать и просить прошивку, однако, как я и говорил ранее, она была утеряна. Сегодня я решил разработать еще один вариант светофора. Для управления я буду использовать Attiny84, светофор способен подключаться в сеть протокола I2C, имеет встроенный аккумулятор на 2400 мАч и возможностью подзарядки от Micro-USB. Контроллер прошивается через программатор USB ASP для которого разъем IDC-10 размещен на плате управления. Все это располагается в напечатанном, на 3D принтере, корпусе. Корпус светодиодов тоже напечатан, размещается на гибком кабеле.
И вот наш красавец в модели:
Ниже приведена схема платы управления, получилась достаточно простая, на ней я расположил микроконтроллер, кнопку, выводы под светодиоды, разъем для I2C с индикатором работы, разъем программатора, блок питания и зарядки литий-полимерного аккумулятора.
Через несколько дней я заказал комплектующие, платы и печать корпуса.
Заказанная плата с известного поставщика JLCPCB:
Качество печатной платы на высоте.
Напечатанные детали на 3D принтере. Кнопка напечатана специальным образом, чтобы она функционировала, была подпружинена и не требовалось дополнительной работы по ее установке.
Фотографии сборки. Чтобы ускорить сборку я не стал размещать модуль зарядки аккумулятора и питания в основной схеме, поэтому подготовил под него отверстия для соединения с основной платой. Для снижения трудозатрат с пайкой резисторов на платах со светодиодами, разместил резисторы на основной плате перед площадками под пайку соединительных проводов. Джампер питания предназначен для переключения перед прошивкой, чтобы исключить сбои при заливке прошивки в микроконтроллер.
Небольшое видео работы светофора
По умолчанию длительность цикла работы 6 с, интервал мигания желтого и зеленого 700 мс, задержка между переключениями 2 с. Вы можете сообщить мне, если желаете другие интервалы.
При сборке я обнаружил небольшие недоделки и решил внести сразу изменения в схему и печатную плату:
Также я добавил возможность регулирования длительности основного цикла (RV1) в пределах 0-90 с, интервала мигания желтого и зеленого (RV2) в пределах 0-15 с, и задержки в переключениях (RV3) в пределах 0-15с. Чтобы расположить резисторы я заменил разъем программатора с 10-пинового на 6-пиновый. Добавил главный выключатель. Внес изменение в платы светодиодов перераспределил дорожки для более удобного монтажа. Увеличил размеры корпуса светодиодов, уж очень все плотно вмещается.
Внимание HEX файл и предназначен для загрузки через программатор.
Опубликовано:20.04.2019monsoa