Съдържание:
- Стъпка 1: Стъпка 1: Направете светлинните капачки
- Стъпка 2: Стъпка 2: Подготовка на PVC стълба
- Стъпка 3: Стъпка 3: Сглобяване на RGB LED ленти и пясъкоструене на акрилните плочи
- Стъпка 4: Стъпка 4: Свържете RGB LED лентите към Arduino
- Стъпка 5: Стъпка 5: Напишете кода на Arduino
Видео: Интелигентен интерактивен светофар: 5 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:53
Готови ли сте да изградите най -добрия и интерактивен светофар в света? Добре! В този урок ще обясним как можете да създадете такъв самостоятелно с помощта на Arduino.
Необходими компоненти:- Arduino (..duh)- LM317 Mosfet- 2x 60см аналогови RGB LED ленти (12V)- PVC тръба (1m x 125mm)- Кабели (червени и черни)- Метални плочи за светлинни капачки- Акрил за светлината -икони (проверете flaticon.com за.svg икони)- Spraycan черно-бяла боя.- Електрическа лента- Всички необходими компоненти за запояване- Дисплей с необходимия щит (не се използва в урока)
Стъпка 1: Стъпка 1: Направете светлинните капачки
Дизайнът наистина зависи от вас. Направихме капачка 15х15 см, която да държи светлините. Изрязахме металните плочи до правилния размер и използвахме метален огъвач (не, не от Avatar), за да огънем капачките в правилните форми. Задните панели са направени от различен компонент.
Стъпка 2: Стъпка 2: Подготовка на PVC стълба
Изрежете 2 дупки в PVC стълба, за да се поберат светлинните капачки. След това използвайте черен спрей, за да нарисувате цялото нещо в черно. Ако искате, можете да добавите бели ивици в долната част на стълба (често срещано в Холандия).
Стъпка 3: Стъпка 3: Сглобяване на RGB LED ленти и пясъкоструене на акрилните плочи
След това ще трябва да сглобите RGB LED ленти вътре в капачката на светлината. Поставете ги здраво около капачката и ги поставете възможно най -близо до предната част.
След това ще трябва да изпепелите избрания символ за върху акрилната плоча. Вземете малко лента и покрийте цялата акрилна плоча. След това изрежете желаната форма/фигура. След това можете да изпепелите плочата, за да получите ефект, подобен на матово стъкло.
Стъпка 4: Стъпка 4: Свържете RGB LED лентите към Arduino
Сега идва сложната част: свързването на RGB LED ленти към Arduino. Когато свързвате щифтовете, уверете се, че сте поставили 12v на 12v на вашата лента. Между всеки цвят, толкова червен или зелен, трябва да поставите MOSFET. Свържете данните на LED лентата към средния щифт на MOSFET, а левия щифт към вашия Arduino. Десният щифт трябва да се върне към земята на Arduino.
Стъпка 5: Стъпка 5: Напишете кода на Arduino
Този код на Arduino се контролира от bluetooth, защото не използвахме вътрешен дисплей. Така че кодът се контролира чрез Bluetooth съобщения във функцията loop ().
#дефинирайте r 6 #дефинирайте g 11 #включете
SoftwareSerial mySerial (10, 11); // RX, TX
#define angryLength 4
#дефиниране паданеLength 3 #define happyLength 4 #define onPhoneLength 13 #define talkLength 5 #define walkingLength 4 #define walkingOutLength 4 #deteine wavingLength 6
бутон бутон Натиснат;
int currentMillis; int previousMillis;
int animation1Delay;
int animation2Delay; int animation3Delay; int animation4Delay;
bool animation1Done = false;
bool animation2Done = false; bool animation3Done = false; bool animation4Done = false; bool animation5Done = false;
bool blockLight = невярно;
bool lightRed = вярно;
int currentAnimationDelay;
void setup () {
// поставете кода за настройка тук, за да се стартира веднъж: pinMode (r, OUTPUT); pinMode (g, OUTPUT);
Serial.begin (9600);
mySerial.begin (38400); Serial.setTimeout (25); buttonPressed = false; currentMillis = 0; previousMillis = 0;
animation1Delay = walkingLength * 1000;
animation2Delay = wavingLength * 1000; animation3Delay = happyLength * 1000; animation4Delay = walkingOutLength * 1000;
// currentAnimationDelay = animation1Delay * 1000;
lightRed = вярно; }
void loop () {
// забавяне (20);
// поставете основния си код тук, за да се изпълнява многократно: unsigned long currentMillis = millis (); if (buttonPressed == true) {if (animation1Done == false) {if (currentMillis - previousMillis> animation1Delay) {Serial.println ("0"); previousMillis = currentMillis; animation1Done = вярно; }} иначе ако (animation2Done == false и animation1Done == true) {if (currentMillis - previousMillis> animation2Delay) {Serial.println ("1"); previousMillis = currentMillis; animation2Done = вярно; }} иначе ако (animation3Done == false и animation2Done == true) {if (currentMillis - previousMillis> animation3Delay) {Serial.println ("2"); //Serial.println("sound:green "); previousMillis = currentMillis; animation3Done = вярно; lightRed = false; }} иначе ако (animation4Done == false и animation3Done == true) {if (currentMillis - previousMillis> animation4Delay) {previousMillis = currentMillis; animation4Done = вярно; Serial.println ("FLSH"); }}}
if (Serial.available ()) {
Низ str = Serial.readString (); if (str == "CMD: BUTTON_PRESSED") {
animation1Done = false;
animation2Done = false; animation3Done = false; animation4Done = false; animation5Done = false;
animation1Delay = walkingLength * 1000;
animation2Delay = wavingLength * 1000; animation3Delay = happyLength * 1000; animation4Delay = walkingOutLength * 1000;
// currentAnimationDelay = animation1Delay * 1000;
lightRed = вярно; Serial.println ("3"); buttonPressed = true; previousMillis = currentMillis; }
if (str == "ЧЕРВЕН") {
blockLight = false; lightRed = вярно; }
if (str == "ЗЕЛЕН") {
blockLight = false; lightRed = false; }
if (str == "СВЕТЛИНА: ЗЕЛЕНА: ИЗКЛ.") {
blockLight = вярно; analogWrite (g, 255); } if (str == "LIGHT: GREEN: ON") {blockLight = true; analogWrite (g, 0); } //Serial.println(str); }
if (blockLight == false) {
if (lightRed == true) {
analogWrite (r, 0); analogWrite (g, 255); } if (lightRed == false) {analogWrite (r, 255); analogWrite (g, 0); }}}
Препоръчано:
Интелигентен будилник: интелигентен будилник, направен с Raspberry Pi: 10 стъпки (със снимки)
Интелигентен будилник: интелигентен будилник, направен с Raspberry Pi: Искали ли сте някога интелигентен часовник? Ако е така, това е решението за вас! Направих Smart Alarm Clock, това е часовник, който можете да промените часа на алармата според уебсайта. Когато алармата изгасне, ще се чуе звук (зумер) и 2 светлини ще
Шум светофар - DIY 3D печат: 8 стъпки (със снимки)
Шум светофар - DIY 3D печат: Всички хора искат да работят в тишина и е важно да има добра работна среда. Тишината води до ефективна работа. Направихме този проект, за да постигнем това предложение. Шумовият светофар се състои от „светофар“, който управлява dB
Държавна машина на Arduino - пешеходен светофар: 6 стъпки (със снимки)
State Machine на Arduino - пешеходен светофар: Здравейте! Ще ви покажа как да програмирате пешеходен светофар за Arduino в C ++ с машина за крайни състояния, като използвате YAKINDU Statechart Tools. Това ще демонстрира силата на държавните машини и може да се използва като план за по -нататъшни
Arduino светофар: 3 стъпки (със снимки)
Arduino светофар: Тази инструкция е получена от: Arduino-Traffic-Light-Simulator Използвах чертежа от тази инструкция, за да създам отделен светофар. Направих следните промени: Отворите за светодиоди са по -малки, за 5 мм светодиоди (вместо 10 мм светодиоди)
Arduino светофар: 8 стъпки (със снимки)
Светофар Arduino: Този проект е направен с 5 мм светодиоди и хардуер за монтаж на светодиоди T1-3/4 Clear Standard за по-добра визуализация, и така използвайки 3 светодиода за показване на цветовете му червено, жълто и усилвател; Зелено съответно