Hur man gör en Arduino-kontrollerade cykel-ljus (6 / 7 steg)

Steg 6: Att utvidga koden



Hooking upp lamporna varierar mycket beroende på din specifika lysdioder, men ett exempel ställer in visas i figuren. Att välja exakt motstånd för din lysdioder varierar också beroende på vilka lysdioder du använder och vilken strömkälla du vill använda, men en bra guide till den finns här:

Koden visas här bör alla vara ganska enkelt om du har någon kännedom om koden.

Enkel metod för att aktivera alla lysdioder
void allOn() {
int i;
för (jag = 0; jag < NUMBER_OF_LEDS; i ++) {
digitalWrite (ledList [i], hög);
ledsOn [i] = 1;
}
}

Enkel metod för att inaktivera alla lysdioder
void allOff() {
int i;
för (jag = 0; jag < NUMBER_OF_LEDS; i ++) {
digitalWrite (ledList [i], låg);
ledsOn [i] = 0;
}
}

hjälpare funktion att sammanfatta en matris
int summering (int array[]) {
int summa = 0;
int längd = sizeof(array)/sizeof(int);
int i;
för (jag = 0; jag < längd; i ++) {
summa = summa + array [i];
}
returnera summan;
}

blinkar alla lysdioder. Om mer än 2 lysdioder för närvarande på startar cykeln stänger av dem alla
annars börjar cykeln genom att vrida dem alla på.
void allFlashing (int delayLength) {
om (summation(ledsOn) > 2) {
allOff();
Delay(delayLength);
allOn();
Delay(delayLength);
} annat {
allOn();
Delay(delayLength);
allOff();
Delay(delayLength);
}
}

en metod som används inte faktiskt, men kan vara användbara i framtiden. Denna metod kommer att växla beroende på vilket som LED är för närvarande
utvalda.
void toggleCurrentLed() {
om (ledsOn [currentLed] == 1) {
digitalWrite (ledList [currentLed], låg);
ledsOn [currentLed] = 0;
} else om (ledsOn [currentLed] == 0) {
digitalWrite (ledList [currentLed], hög);
ledsOn [currentLed] = 1;
}
}

vänder på nuvarande LED
void currentLedOn() {
digitalWrite (ledList [currentLed], hög);
ledsOn [currentLed] = 1;
}

stänger av den nuvarande LED
void currentLedOff() {
digitalWrite (ledList [currentLed], låg);
ledsOn [currentLed] = 0;
}

Detta är en studsande metod som verkar skicka ett ljus upp och ner
dina lampor. Ganska coolt om du frågar mig. Håller reda på en riktning variabel
och vad den nuvarande Led som lyser är att se till att switchen är alltid i den
rätt riktning.
void bounce (int delayLength) {
om (bounceDirection == 0) {
om (currentLed < NUMBER_OF_LEDS - 1) {
currentLedOff();
currentLed ++;
currentLedOn();
Delay(delayLength);
} else om (currentLed == NUMBER_OF_LEDS - 1) {
currentLedOff();
currentLed--;
bounceDirection = 1;
currentLedOn();
Delay(delayLength);
}
} else om (bounceDirection == 1) {
om (currentLed > 0) {
currentLedOff();
currentLed--;
currentLedOn();
Delay(delayLength);
} else om (currentLed == 0) {
currentLedOff();
currentLed ++;
currentLedOn();
bounceDirection = 0;
Delay(delayLength);
}
}
}

Denna metod är för närvarande tänkt att få dimmer som omgivningarna få dimmer.
Anledningen till detta är främst att minska inblandning, som i bakbord ställa in
ljuset från lamporna är mycket lätt att se av fotomotstånd, vilket skulle leda till
några konstiga beteende.
Dessa konstanter bör ändra lite för din specifika krets. Använd funktionen
Serial.println(analogRead(photoresistor)); att skriva ut det aktuella värdet, och
fastställa ungefärlig maxkapacitet och minimum.
void allFading() {
int ljusstyrka = map(analogRead(photoresistor), 100, 450, 0, 255);
int i;
för (jag = 0; jag < NUMBER_OF_LEDS; i ++) {
analogWrite (ledList [i], ljusstyrka);
}
}

Denna metod gör cykel ljuset till en mätenhet för ljusintensitet.
De lysdioder som lyser upp i en viss punkt är vägledande för hur ljust det är.
Konstanterna visas vanligtvis täcker standardrum alla 5 LED belysning
Dessa konstanter bör ändra lite för din specifika krets. Använd funktionen
Serial.println(analogRead(photoresistor)); att skriva ut det aktuella värdet, och
fastställa ungefärlig maxkapacitet och minimum.
void photometer() {
int ljusstyrka = map(analogRead(photoresistor), 75, 450, 0, NUMBER_OF_LEDS);
int i;
för (jag = 0; jag < NUMBER_OF_LEDS; i ++) {
om (jag < ljusstyrka) {
digitalWrite (ledList [i], hög);
} annat {
digitalWrite (ledList [i], låg);
}
}
}

void loop() {
om (currentProgram == 0) {
allOff();
} else om (currentProgram == 1) {
allOn();
} else om (currentProgram == 2) {
allFlashing(250);
} else om (currentProgram == 3) {
Bounce(100);
} else om (currentProgram == 4) {
allFading();
} else om (currentProgram == 5) {
photometer();
}
}

Se Steg
Relaterade Ämnen

Hur man gör en Arduino baserat natten ljus med IR-fjärrkontroll!

Här är en Instructable som visar dig hur man bygger en Arduino baserade natten ljus meden liten infraröd fjärrkontroll kan du bläddra igenom 10 pre set färger, och en random blekningfärg rutin som loopar för evigt.Detta instructable antar du:Har en A...

Hur man gör en Arduino oscilloskop probe

denna instructabe kommer att visa dig hur man gör en arduino oscilloskop sond för dessa länkar, en poorman oscilloskop och en multi-kanal oscilloskop för arduino /Steg 1: Material och komponenter Verktyglödkolvlödahobby borr (om du inte har denna anv...

Hur man gör en arduino "get off min egendom" maskin

Detta instructable visar dig hur man gör min arduino "get off min egendom" maskin. Det enda syftet med denna maskin är att ta bort objekt placeras på den. Videon ovan förklarar detta mycket väl.Steg 1: leveranserMaterial:X 2: 7 cm * 9 cm PCBNågr...

Hur man läser en arduino kort med LabVIEW

Denna video visar hur man läser en Arduino kort med LabVIEW. LabVIEW har ett bra användargränssnitt som gör det enkelt att spara data från en Arduino kort. En av de största utmaningarna när du använder en Arduino är att det är djävulskt svårt att spa...

Hur man viker en servett till en Twin ljus

Lär dig hur man viker en servett till en Twin ljus från en pappers servett. Du kan också använda stärkta duk servetter. Mycket enkel instruktion (steg för steg). Kreativa servett veck....

Hur man drar en skalle med smält ljus

hur man drar en skalle med smält ljus på dess huvud. Detta är en cool och den berömda skallen ritning för att försöka dra. Jag går genom full teckning processen att skissa skalle design till infärgning över ritningen och färg design med Crayola penno...

Hur man gör en pistol kontrollerade lampa

Hej!I denna tutorial kommer jag förklara hur jag gjorde min pistol kontrollerade lampa. Lampan är kontrollerad av en IR-fjärr. Du kan titta på denna tutorial på Youtube på:https://www.youtube.com/Channel/UCkURR2CLd5iDc0B11...Reservdelslista:-Arduino...

Hur man programmerar ATtiny85 med Arduino uno styrelsen

I denna tutorial använder vi en Arduino ombord som en ATtiny programmerare.För att göra detta kommer att vi använda en Arduino UNO styrelse som en ISP (programmerare) och en ATtiny85 mikro-controller.Vi kommer att använda Codebender - online Arduino...

Hur man gör en Arduino web Server

I det här exemplet ska du använda din Ethernet Shield och din Arduino för att göra en grundläggande webbserver. Utnyttja Ethernet biblioteket kommer att enheten ha kapacitet att svara på en HTTP-begäran med din Ethernet shield. Ethernet vakna för att...

Hur man gör en Arduino Radio styrd Robot

Jag har alltid velat göra en fjärrkontroll robotbil, men alltid tyckt att det var alltför svårt eller komplicerat. För några veckor sedan jag äntligen gjorde några riktiga forskning och insåg att det är mycket lättare att göra än jag trodde och finns...

Mobil robotik med repa: hur man kan integrera Scratch, Arduino och Bluetooth

Länge kämpade vi med uppgiften att skapa en enkel, billig, plattformsoberoende, tillförlitlig och stabil strategi att integrera Scratch och Arduino så att du kunde använda Scratch att lära ut de principer och programmering av mobila robotar (inklusiv...

Hur man har kul med Arduino (och bli en nörd i processen)

vill du tjäna din geek-kort - pronto? Låter komma igång! Denna guide börjar du på sökvägen till den mörka sidan med hjälp av öppen källkod Arduino utveckling och prototyping plattformen. Det kommer att introducera dig till mikrokontroller, komma igån...

Hur man gör en Arduino ljud synthesizer med MIDI-gränssnittet

Med denna synt kan du göra Arduino reproducera helt anpassade vågformer. På grund av MIDI-gränssnittet, kan det anslutas till alla instrument som sådan har och spela det med det ljud som du vill.Steg 1: materialArduino (i detta fall Arduino UNO)Instr...

Hur man gör en Arduino Powered CNC-maskin

Stegvisa instruktioner om hur man bygger en låg kostnad CNC-maskin med en Arduino Uno!Steg 1: Fabricera en bas och x-axeln slädeRoller skate hjul kommer att användas att skapa x-axeln släden. En kombination av 2 in och 1 i stål slangar bildar basen a...

Hur man gör en Arduino från scratch

Frugal Engineering är bäst vägen framåt för vetenskap.Om du är intresserad av att göra vissa arduino från början, har du kommit till rätt ställe.Du kan se en video tutorial för detta instructable: härDet kommer att komplettera alla kryphål eller tviv...

Hur man gör en ARDUINO VU mätare

Hej stötarna. Vill du göra en liten, cool projekt genom att använda Arduino? Du kan hitta det här.Vi kör en YouTube-kanal "Att vara ingenjörer" och vi ger video tutorials på programmeringsspråk, grundläggande elektronik och också några coola ele...

Hur man gör en Arduino pir sensor alarm

Detta är en handledning om hur man använder en PIR rörelsesensor med Arduino för att göra en grundläggande larm. Detta är ett mycket grundläggande projekt för någon, och allt du behöver veta är Arduino och grundläggande komponenter, vilket är ingenti...

Hur man gör en Arduino LED lampa Nattduksbord

Hur man gör en LED lampa Nattduksbord som har en elektronisk laddare.Steg 1: Steg 1: samla materialDet första steget på hur man gör en LED lampa Nattduksbord är att samla alla dina material.Du behöver:1 ArduinoVissa hoppare ledningar1 RGB LED3 330 oh...

Hur man styr motorer med Arduino och RC mottagare i 10 minuter

Detta är min andra handledning på att kontrollera saker med Arduino och R/C-mottagare. Om du inte har tittat på min första tutorial jag föreslår att du tittar på det första, här: i den här guiden kommer vi att titta på hur man styr motorer också anvä...