Het avontuur van elektriciteit: een interactieve lichte diorama (14 / 15 stap)

Stap 14: De code


Kopieer en plak de code in de editor, compileren dan upload. De code loops en controleert als een van de knoppen zijn ingedrukt.  Elk van de knoppen zijn wisselknoppen en controleert de huidige status van de schakelaar.  Een bewerken niet van de andere scènes terwijl Parijs is verlichting up of terwijl de bliksem gebeurt

Code:

variabele controles
int BenOn = 0;
int lightOnED = 0;
int lightOnEL = 0;
int lightOnPA = 0;
int lightOnPA2 = 0;
int buttonStateED = 0;
int lastButtonStateED = 0;
int buttonStateEL = 0;
int lastButtonStateEL = 0;
int pressurePA = 0;
int lastPressurePA = 0;

output pinnen
int lightningBolt = 3;
int lightBulbEddison = 4;
int bridgeLights = 5;
int buildingLights = 6;
int ferrisWheelLights = 7;
int benFrankHair = 8;

input pinnen
int eddisonScene = 12;
int benScene = 11;
int parisScene = 1;

VOID Setup {}
Initialiseer de digitale pin als uitgang.
instellen van alle uitgangen
Serial.begin(9600);
pinMode(lightningBolt,OUTPUT);
pinMode(lightBulbEddison,OUTPUT);
pinMode(bridgeLights,OUTPUT);
pinMode(buildingLights,OUTPUT);
pinMode(ferrisWheelLights,OUTPUT);
pinMode(benFrankHair,OUTPUT);
pinMode(eddisonScene,INPUT);
pinMode(benScene,INPUT);
}
void loop {}
Lees alle ingangen
buttonStateED = digitalRead(eddisonScene);
buttonStateEL = digitalRead(benScene);
pressurePA = analogRead(parisScene);

controleren als scène ben ingeschakeld
Als (buttonStateEL! = lastButtonStateEL) {}
if(buttonStateEL == low) {}
Serial.Print ("buttonStateEL pressed\n");
if(BenOn==1) {}
BenOn = 0;
}
anders if(lightOnEL==0) {}
lightOnEL = 1;
}
}
}
lastButtonStateEL = buttonStateEL;

Controleer of eddison knop ingedrukt
Als (buttonStateED! = lastButtonStateED) {}
Als (buttonStateED == LOW) {}
Serial.Print ("buttonStateED pressed\n");
lightOnED =! lightOnED;
}
}
lastButtonStateED = buttonStateED;

/*Serial.Print ("laatste druk:");
Serial.Print(lastPressurePA);
Serial.Print("\n");
Serial.Print ("druk:");
Serial.Print(pressurePA);
Serial.Print("\n"); * /

Druk op Parijs kracht sensor weerstand controleren
if(lastPressurePA==0) {}
Als (pressurePA > 1) {}
if(lightOnPA2 ==1) {}
lightOnPA2 = 0;
}
anders if(lightOnPA ==0) {}
lightOnPA = 1;
}

Serial.Print("pressed\n");
}
}
lastPressurePA = pressurePA;


if(lightOnPA==1) {}
lichten van elk gebied van Parijs sequentieel inschakelen
digitalWrite(bridgeLights,LOW);
delay(2000);
digitalWrite(buildingLights,HIGH);
delay(2000);
digitalWrite(ferrisWheelLights,LOW);
lightOnPA = 0;
lightOnPA2 = 1;
}
anders if(lightOnPA2==1)
{
lichten op houden nadat sequentieel ingeschakeld
digitalWrite(bridgeLights,LOW);
digitalWrite(buildingLights,HIGH);
digitalWrite(ferrisWheelLights,LOW);
}
anders
{
anders zwenking zij vandoor
digitalWrite(bridgeLights,HIGH);
digitalWrite(buildingLights,HIGH);
digitalWrite(ferrisWheelLights,HIGH);
}

if(lightOnED == 1) {}
inschakelen van eddison de gloeilamp
digitalWrite(lightBulbEddison,HIGH);
}
else {}
zwenking vandoor eddison de gloeilamp
digitalWrite(lightBulbEddison,LOW);
}

controleren of lighning bout op?
if(lightOnEL == 1) {}
Als op de BLIKSEMSCHICHT
digitalWrite(lightningBolt,HIGH);
delay(300);
digitalWrite(lightningBolt,LOW);
delay(400);
digitalWrite(lightningBolt,HIGH);
delay(300);
digitalWrite(lightningBolt,LOW);
delay(300);
digitalWrite(lightningBolt,HIGH);
delay(300);
digitalWrite(lightningBolt,LOW);
lightOnEL = 0;
BenOn = 1;
}
anders if(BenOn==1) {}
Bens haar opdagen na blikseminslag
digitalWrite(benFrankHair,LOW);
}
else {}
anders woordjes gebeurt uitschakelen zowel
digitalWrite(benFrankHair,HIGH);
digitalWrite(lightningBolt,LOW);
}
}

Gerelateerde Artikelen

Verhaal van Box - een interactieve lichtbak voor het vertellen van verhalen

Verhaal van Box - een interactieve lichtbak voor het vertellen van verhalen

Zoals lichten meestal slechts één functie hebben-verlichting bieden. Het is een interessant idee dat zij sommige speelsheid. Verhaal vak is een nachtlampje doos dat door de planken van een verhaal in te zetten, het licht wordt ingeschakeld en schaduw
Horen bij het gebruik van echografie een DIY Flanagan 'Neurophone'

Horen bij het gebruik van echografie een DIY Flanagan 'Neurophone'

UPDATE: Neurophone uitvinder Patrick Flanagan heeft sindsdien bevestigd dat dit ontwerp kan produceren Neurophone effecten, maar het is nog steeds waarschijnlijk niet zo goed als the real thing. Sommige onderzoek suggereert dit is waarom: TL494 de bl
Procedure voor het bewijzen van die een gedefinieerde reeks convergeert

Procedure voor het bewijzen van die een gedefinieerde reeks convergeert

dit Instructable gaat door, stap voor stap, de algemene methode voor het bewijzen dat een reeks naar enige limiet convergeert via het gebruiken van de definitie van convergentie.Snelle definitie van termen die worden gebruikt in dit Instructable:1) k
Hoe het bouwen van C3Jr, een geavanceerde woord klok

Hoe het bouwen van C3Jr, een geavanceerde woord klok

zoals het handjevol andere woord klokken die u wellicht heeft gezien, allemaal geïnspireerd door de oorspronkelijke QlockTWO , C3Jr de tijd wordt weergegeven in woorden.Wat maakt het opvallen tussen de klokken van DIY woord is, naast de professionele
Het leven van Christus: een interpretatie van de combinatie van de Faberge ei van het Rode Kruis en opstanding ei

Het leven van Christus: een interpretatie van de combinatie van de Faberge ei van het Rode Kruis en opstanding ei

combinatie van de twee originelen te maken van The Life of Christ resulteerde in twee tryptych deuren; een aan de kant, en het centrum is de "terug"helft van het ei. De plooien van Aanplakbord gebruikt om te creëren wat lijkt heel erg op een ora
Het maken van Interplanetary: een armband

Het maken van Interplanetary: een armband

dit is een maken van video voor de creatie van mijn kunstwerk Interplanetary.De materialen opgenomen:Sterling Zilver, messing, koper en amethist.Andere tools/gebruikte materialen:Zilver soldeer, lever van zwavel, flux, augurk, bijenwas, verschillende
Maken van een lange reeks voor het afspelen van uit een shirt

Maken van een lange reeks voor het afspelen van uit een shirt

dit is wat ik doen als een van de jongen ruïnes weer een shirt.  Ik gebruik de armen, maar u kunt ook gebruik maken van de romp van een t-shirt
Het gebruik van een versterker Candela

Het gebruik van een versterker Candela

de Candela versterker is een demonstratie van de hoge kwaliteit van Thermo-elektrische generatie. Thermo-elektrische generatoren zijn een vorm van alternatieve energie-opwekking die bevatten geen bewegende delen. In dit voorbeeld wordt de restwarmte
Microbiële brandstofcellen - een manier om het genereren van schone elektriciteit uit afvalwater

Microbiële brandstofcellen - een manier om het genereren van schone elektriciteit uit afvalwater

Meer dan 1.5 miljard mensen in de wereld geen toegang hebben tot elektriciteit. Dat betekent dat 1 van de 5 mensen zijn gedwongen om te leven zonder iets dat een meerderheid van de wereld neemt voor verleend dagelijks! Zonder elektriciteit zijn deze
Fotocel reageren op licht als een oog. een inleidende Project voor het gebruik van Processing met Arduino

Fotocel reageren op licht als een oog. een inleidende Project voor het gebruik van Processing met Arduino

In dit project ziet u een eenvoudig voorbeeld van het gebruik van verwerking zodat een grafische weergave van gegevens die een arduino als krijgt input van een sensor. In dit geval een fotocel.Nadat een oog beeld krijgen van internet, wat ik deed is,
Hoe het bouwen van een eenvoudige Twilight fotometer

Hoe het bouwen van een eenvoudige Twilight fotometer

Een schemering fotometer is een zeer nauwkeurige lichtsensor, gebruikt bij vroege dawn of schemer. Het doel ervan is om te meten de hoeveelheid aërosolen in de stratosfeer.Wanneer de zon is onder de horizon het niet langer direct verlicht de grond, d
Het maken van een 1 Watt zonnepaneel.

Het maken van een 1 Watt zonnepaneel.

ik hou van mijn buurman vuilnis ik noem ze de afdeling onderdelen. In dit instructible ik ben bouw een zonne-Array uit 30 zonne-energie lichten, die mijn buurman gooide.Voor dit project ga ik slechts 18 van de zonnecellen gebruiken voor de array die
Retro Raygun: het realiseren van een prop via CAD

Retro Raygun: het realiseren van een prop via CAD

Het is heel goed mogelijk, en vaak voorkomend te realiseren een prop via hand-carving van verschillende materialen, hetzij voor het eindproduct of als een meester te worden gebruikt voor molding en gieten.Het is ook mogelijk om aanzienlijke delen van
Goedkope EIGENBOUW eenvoudige zonne-heater. In het geval van een UnderBed (in progreess)

Goedkope EIGENBOUW eenvoudige zonne-heater. In het geval van een UnderBed (in progreess)

de andere dag die ik 2 pack van 17,75 pakte "x 6" x 30" zwart met duidelijke bovenste ritssluiting gevallen voor het opslaan van spullen onder bedden. Ik had alleen een gebruik voor een, dus ik geïnteresseerd was in het maken van andere een