Светофор на Arduino

Светофор на 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
WP2Social Auto Publish Powered By : XYZScripts.com