Inhoudsopgave:
- Stap 1: Stap 1: Maak de Light-caps
- Stap 2: Stap 2: De PVC-paal voorbereiden
- Stap 3: Stap 3: Montage van de RGB LED-strips en zandstralen van de acrylplaten
- Stap 4: Stap 4: Sluit de RGB LED-strips aan op de Arduino
- Stap 5: Stap 5: Schrijf de Arduino-code
Video: Slim interactief verkeerslicht - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:18
Klaar om 's werelds beste en meest interactieve verkeerslicht te bouwen? Mooi zo! In deze tutorial leggen we uit hoe je er zelf een kunt bouwen met Arduino.
Benodigde componenten:- Arduino (..duh)- LM317 Mosfet- 2x 60cm Analoge RGB LED Strips (12V)- PVC buis (1m x 125mm)- Kabels (rood en zwart)- Metalen platen voor lichtkappen- Acryl voor het licht -iconen (check flaticon.com voor.svg iconen)- Spuitbus zwart-witte verf.- Elektrisch tape- Alle benodigde soldeercomponenten- Display met vereist schild (niet gebruikt in tutorial)
Stap 1: Stap 1: Maak de Light-caps
Het ontwerp is echt aan jou. We hebben een dop van 15x15cm gemaakt om de lampjes vast te houden. We hebben de metalen platen op de juiste maat gesneden en met een metalen buigmachine (nee, niet van Avatar) de doppen in de juiste vormen gebogen. De backplates zijn gemaakt van een ander onderdeel.
Stap 2: Stap 2: De PVC-paal voorbereiden
Snijd 2 gaten in de PVC-paal om op de lichtkappen te passen. Gebruik vervolgens een zwarte verfspuitbus om het geheel zwart te schilderen. Als je wilt, kun je witte strepen aan de onderkant van de paal toevoegen (gebruikelijk in Nederland).
Stap 3: Stap 3: Montage van de RGB LED-strips en zandstralen van de acrylplaten
Vervolgens moet je de RGB LED-strips in de lichtkap monteren. Plaats ze strak om de dop en plaats ze zo dicht mogelijk naar voren.
Vervolgens moet je het geselecteerde symbool voor op de acrylplaat zandstralen. Pak wat tape en bedek de hele acrylplaat. Knip vervolgens de gewenste vorm/figuur uit. Hierna kunt u de plaat zandstralen om een matglas-achtig effect te krijgen.
Stap 4: Stap 4: Sluit de RGB LED-strips aan op de Arduino
Nu komt het lastige deel: de RGB LED-strips aansluiten op de Arduino. Let er bij het aansluiten van de pinnen op dat je de 12v op de 12v van je strip zet. Tussen elke kleur, dus rood of groen, moet je een mosfet plaatsen. Sluit de data van de ledstrip aan op de middelste pin van de mosfet, en de linker pin op je Arduino. De rechter pin moet terug naar de grond van de Arduino.
Stap 5: Stap 5: Schrijf de Arduino-code
Deze Arduino-code wordt aangestuurd door bluetooth, omdat we geen intern display hebben gebruikt. Dus de code wordt bestuurd via bluetooth-berichten in de loop()-functie.
#define r 6#define g 11 #include
SoftwareSerial mySerial(10, 11); // RX, TX
#definieer boosLength 4
#define fallLength 3 #define happyLength 4 #define onPhoneLength 13 #define talkingLength 5 #define walkingLength 4 #define walkingOutLength 4 #define zwaaienLength 6
bool-knop Ingedrukt;
int huidigeMillis; int vorigeMillis;
int animatie1Vertraging;
int animatie2Delay; int animatie3Delay; int animatie4Delay;
bool animatie1Gereed = false;
bool animatie2Gereed = false; bool animatie3Gereed = false; bool animatie4Done = false; bool animatie5Gereed = false;
bool blockLight = false;
bool lightRood = waar;
int huidigeAnimationDelay;
ongeldige setup() {
// plaats hier je setup-code om een keer uit te voeren: pinMode(r, OUTPUT); pinMode (g, UITGANG);
Serieel.begin(9600);
mijnSerial.begin(38400); Seriële.setTimeout(25); knop ingedrukt = vals; huidigeMillis = 0; vorigeMillis = 0;
animatie1Delay = wandelenLengte * 1000;
animatie2Delay = zwaailengte * 1000; animatie3Delay = happyLength * 1000; animatie4Delay = walkingOutLength * 1000;
//currentAnimationDelay = animatie1Delay * 1000;
lichtrood = waar; }
lege lus() {
//vertraging (20);
// plaats hier je hoofdcode, om herhaaldelijk uit te voeren: unsigned long currentMillis = millis(); if(buttonPressed == true) { if(animation1Done == false) { if(currentMillis - previousMillis > animatie1Delay) { Serial.println("0"); vorigeMillis = huidigeMillis; animatie1Gereed = waar; } } else if(animation2Done == false en animatie1Done == true) { if(currentMillis - previousMillis > animatie2Delay) { Serial.println("1"); vorigeMillis = huidigeMillis; animatie2Gereed = waar; } } else if(animation3Done == false en animatie2Done == true) { if(currentMillis - previousMillis > animatie3Delay) { Serial.println("2"); //Serial.println ("geluid: groen"); vorigeMillis = huidigeMillis; animatie3Gereed = waar; lichtrood = onwaar; } } else if(animation4Done == false en animatie3Done == true) { if(currentMillis - previousMillis > animatie4Delay) { previousMillis = currentMillis; animatie4Done = waar; Serieel.println("FLSH"); } } }
if (Serial.available()) {
String str = Serial.readString(); if(str == "CMD:BUTTON_PRESSED") {
animatie1Gereed = false;
animatie2Gereed = onwaar; animatie3Gereed = onwaar; animatie4Done = false; animatie5Gereed = onwaar;
animatie1Delay = wandelenLengte * 1000;
animatie2Delay = zwaailengte * 1000; animatie3Delay = happyLength * 1000; animatie4Delay = walkingOutLength * 1000;
//currentAnimationDelay = animatie1Delay * 1000;
lichtrood = waar; Serieel.println("3"); knop ingedrukt = waar; vorigeMillis = huidigeMillis; }
if(str == "ROOD") {
blockLight = onwaar; lichtrood = waar; }
if(str == "GROEN") {
blockLight = onwaar; lichtrood = onwaar; }
if(str == "LICHT:GROEN:UIT") {
blockLight = waar; analoogWrite(g, 255); } if(str == "LIGHT:GREEN:ON") { blockLight = true; analoogWrite(g, 0); } //Serial.println(str); }
if(blockLight == false) {
if(lightRed == true) {
analoogWrite(r, 0); analoogWrite(g, 255); } if(lightRed == false) { analogWrite(r, 255); analoogWrite(g, 0); } } }
Aanbevolen:
Een verkeerslicht bedienen: 4 stappen
Een verkeerslicht besturen: in deze tutorial leren we hoe u een verkeerslicht maakt en hoe u het bestuurt met de Drivemall-kaart. We zullen zien hoe u verkeerslichten voor auto's en voetgangers kunt maken met een boekingsknop. Als we de drivermall kunnen we de ardui
Verkeerslicht leerspel: 5 stappen
Verkeerslicht leerspel: In deze tutorial leer je hoe je een Arduino verkeerslicht leerspel maakt. Door het spel te spelen, kunnen kinderen controleren of ze de juiste kennis van verkeerslichten hebben. Het spel is verdeeld in twee secties, als de speler volgt
Verkeerslicht op de kruising: 3 stappen
Verkeerslicht op het kruispunt: https://create.arduino.cc/editor/sharonchen/4c96c2…doel laat de kinderen leren hoe ze de weg moeten oversteken! - imiteerde het verkeerslicht op het kruispunt, er zijn 4 verkeerslichten aan elke sectie en twee paar tegenoverliggende verkeerslichten zullen schijnen t
Verkeerslicht-LED: 4 stappen
Traffic Light LED: Afkomstig van: https://www.makeuseof.com/tag/arduino-traffic-ligh… Het Arduino Traffic Light is een snel, gemakkelijk en leuk project dat in minder dan een uur kan worden gedaan. Aangebrachte wijzigingen: - Knop Het oorspronkelijke project is dat het gewoon zou blijven veranderen
Arduino-verkeerslicht: 3 stappen (met afbeeldingen)
Arduino Traffic Light: Deze instructable is afgeleid van: Arduino-Traffic-Light-Simulator Ik heb de tekening van deze instructable gebruikt om een apart verkeerslicht te maken. Ik heb de volgende wijzigingen aangebracht: Gaten voor LED's zijn kleiner, voor 5 mm LED's (in plaats van 10 mm LED's)