Arduino trafikljus för nybörjare (22 / 25 steg)

<> > Steg : sensorer! Del 4: Kalibrering (medan slingor)
> d olika ljusförhållanden, fotocellen kommer att se en d mammografibild värdeintervall. Prova att använda samma kod, men i ett mörkt rum. Nu försöka använda samma kod men i en riktigt ljusa rum. Du ser att sensorn är alltid i en mörk plats, och att koden fungerar riktigt bra i starkt ljus.

För att lösa problemet, gör vi något som kallas kalibrera! När vi kalibrerar fotocellen, ser vi för högsta värdet den ser och lägsta värde det ser och ställ sedan in mitt mellan dessa två värden. Vi kommer att kalibrera värdet i ungefär 5 sekunder.

För att göra detta, vi kommer att använda ett antal d mammografibild tricks!

Det första kommer vi att lära sig om tid. Arduinoen håller reda på hur det har varit sedan Arduino har aktiverats. Vi kan titta på vad värdet är.

Du kan göra detta med hjälp av den funktion.

Ett exempel på detta är: = (); där jag lagra värdet av tid i variabeln .

Vad är en ? A är som en eger men större! A går från - , 147,48 , 648 till , 147,48 , 647. Ordet betyder att istället för att gå från - , 147,48 , 648 till , 147,48 , 647, den går från till 4, 94,967, 95. Eftersom tiden är aldrig negativt, använder vi en nummer för det!
Mer information här: http://arduino.cc/en/Reference/Long
och här: http://arduino.cc/en/Reference/UnsignedLong

Nästa vi kommer att använda något som kallas en slinga! A loop är som ett uttalande, tillstånd som är , det körs. D interferens mellan ett uttalande och ett uttalande är att den uttalande håller på att köra tills villkoret är - precis som hur den funktionen körs tills du stänger av din Arduino. Se till att din end_time är en .

Ett exempel på detta är:
( end_time)
{
// do something

// now update the current time
= ();
}

Koden du sätter i området "göra något" kommer att hålla igång tills tiden går förbi end_time

Efter det är vad vi behöver göra blick för högsta och lägsta värdena som Fotocellen ser och lagra dessa värden.

Du kan göra detta genom att första starta det höga värdet på och det låga värdet på 1 .

sensor_low = 1;
sensor_high = ;

Nästa, varje gång vi går igenom den loop, kommer vi att titta för att se sensor värdet är mindre än det lägsta värdet det ses, så, eftersom det nya värdet är lägre, vi kommer ställa in det låga värdet att det istället.

Ett exempel på detta är:
( sensor_low)
{
sensor_low =
}

På samma sätt med det höga värdet, sensorn ser ett högre värde, vi ska sätta den till det högre värdet!

Ett exempel på detta är:


( sensor_high)
{
sensor_high =
}

Efter 5 sekunder för kalibrering, ska vi gå vidare och ange med genomsnittet av låga och höga värden.

Nu prova det själv:

SENSOR_PIN=;
= 511;


YEL = 7;
RED = 1;
= 1;

voidsetup()
{
(, );
(YEL, );
(RED, );
(, );

calibrate();
}

void()
{
= (SENSOR_PIN);
Serial.prln();

( )
{

}
else
{
red_light();
}
}

void calibrate()
{
sensor_high = ;
sensor_low = 1;
= ();
end_time = + 5;
// we have to calibrate this in the first five seconds
( end_time)
{
// now update the current time
= ();
// update sensor value here!
// your code here

// record the minimum sensor value
( sensor_low)
{
//your code here
}

// record the maximum sensor value
//your code here
{
sensor_high = ;
}
}

//set mid to be the MIDDLE! :)
= (sensor_high + sensor_low)/;
}

void all_LEDs_off()
{
(, );
(YEL, );
(RED, );
(, );

}

void green_light()
{
all_LEDs_off();
(, );
}

void yellow_light()
{
all_LEDs_off();
(YEL, );
}

void red_light()
{
all_LEDs_off();
(RED, );
(, );
}

Se Steg
Relaterade Ämnen

Handledning en: Arduino Switch ljus (nr Arduino programmering behövs) [nybörjare]

i detta Instructable syftar till nybörjare i magin i Arduino, kommer jag visa dig hur man gör en enkel krets som kräver ingen programmering att bygga. Jag att detta för barn som jag, som är förvånad med världen av datorer och elektronik och är ivriga...

Designa en anpassad meny System--Android/Arduino menyer för nybörjare--absolut No programmering krävs

IntroduktionDetta instructable visar du hur använda den gratis pfodDesigner finns på GooglePlay för att utforma ett Android menysystem med undermenyer för Arduino kompatibla enheter.Handledningen är lämplig för nybörjare. Ingen kodning erfarenhet krä...

Styra Arduino med Blynk [USB] [nybörjare] trådlöst var som helst i världen

här är hur du styr arduino med blynk via USB från var som helst i världen!Steg 1: Här är hur du styr arduino med blynk via USB från var som helst i världen!titta och njut!...

Arduino linje följande Robot för nybörjare

* uppdaterad GREEN 8 / 2 4 / 2 GREEN 1 voidsetup() { // a variable created in here doesn't exist in loop } voidloop() { // a variable created in here doesn't exist in setup } för att inkludera mer prissättning, källa information och topp/botten/hjul...

Kodgenerator för anpassade Android/Arduino menyer att slå Arduino utgångar på och av. Android/Arduino för nybörjare. Absolut ingen programmering krävs

Uppdatering: användare frågade för undermeny support. pfodApp alltid stött sub-menyerna men jag har lagt undermenyer till pfodDesigner. Den instructable Design A Custom menysystemet visar hur du använder pfodDesigner för att bygga en meny med underme...

Trafikljus [nybörjare Arduino projekt]

detta är en nybörjare projekt för Arduino. Jag använder Arduino Uno men bör fungera med liten eller ingen förändring på andra arduino modeller.Ställa in hårdvaran är mycket enkelt. Detta projekt är mer av ett verktyg för att lära sig hur man programm...

DIY Home Automation för nybörjare. Absolut ingen kodning eller lödning behövs. Android/Arduino för att växla saker på och av

Denna instructiable är att den absoluta nybörjaren. Om du kan hantera en vass kniv utan att skära kan fingrarna av dig göra och anpassa denna hemautomation controller.Dessa instruktioner är också on-line på www.pfod.com.au under Android / Arduino för...

Arduino och LM35 baserade temperaturvakt för nybörjare

IntroduktionGör din egen temperaturövervakningssystem genom att använda Arduino och LM35 analoga temperatursensor. Detta är en mycket enkel DIY projekt för Arduino nybörjare. Alla åtgärder och krav som nämns i detalj nedan.Obs:- Denna handledning är...

Färg sensorer och Arduino seriell kommunikation för nybörjare

Hej alla, jag ska prata om färg sensorer: hur man bygger och kalibrera en och hur man använder det med seriell kommunikation genom en Arduino ombord.Det sista steget förklarar hur jag använde detta projekt för en Gimp (står för "GNU Image Manipulatio...

Arduino Intel Edison - nybörjare vattning Guide - Uncomplete

Hej alla,Här är min lilla guide för mitt projekt Intel IOT "Växt Rehab Installation".Min huvudsakliga koncept är att föra växter de bästa förutsättningarna att växa tack vare en Automatisk installation, drivs av Arduino - Intel Edison. Jag är ny...

Arduino projekt - E-Dice! (Nybörjare)

Tja, jag fick just min Arduino kit med posten igår, och jag var mycket glad att komma igång! Efter ungefär en timme eller två, jag bestämde mig att börja göra något roligt:En elektronisk tärning. Jag var tvungen att göra detta själv, eftersom det fan...

Arduino för nybörjare, nu med data plottning, kontrolleras av Android, utan kodning, ingen lödning behövs.

IntroductionDetta instructable visar dig hur du kan läsa och skriva digital stiften på din Arduino Uno och läsa värden från de analoga pins alla styrs från din Android mobil utan att göra någon kodning. Hela projektet är plug and play. Ingen lödning...

Enkelklick på/av från din Android mobil med hjälp av Arduino och pfodApp. Arduino för nybörjare

IntroduktionDetta instructable visar hur du kan byta en Arduino utgång på och bort från din Android mobil med bara ett klick på ikonen pfodApp . Lägga till ett relä som drivs av denna utgång för att växla den riktig hårdvaran. Ingen Android kodning k...

SUPER ENKEL NYBÖRJARE ROBOT II (ARDUINO UNO VER.)

Detta "vänners kompatibla är baserad på min ganska populära SUPER enkel nybörjare ROBOT" vänners kompatibla. Efter många, många förfrågningar att tillhandahålla en uppdaterad version Arduino, är här det!Jag skapade detta Instructable, och dess f...

Arduino OLED termometer och Hygrometer med DHT11 för nybörjare

Hej! Jag ska visa dig hur man gör en Arduino OLED termometer och hygrometer * med DHT11.OLED vi använder idag är 1.3″ tum i storlek, funktioner 128 × 64 pixlar och använder SPI bussen. På nästa steg hittar du mer nyttig information om OLED tech och d...

Hemautomation (för nybörjare) med Arduino och Bludrinodroid

Detta är ett bra projekt för nybörjare på hemautomation. Bludrinodroid är en fantastisk app som inte många vet om id bra för nybörjare till proffs. Jag hoppas du njuta av projektet!Steg 1: Delarna De delar du behöver är:1) en Arduino2) en Bluetooth-e...

En nybörjares guide till Arduino

Efter några år av experimentera med Arduino, beslutade jag att det är dags att dela den kunskapen har jag fått. Så jag här går, en guide till Arduino, med nakna grunderna för nybörjare och lite mer avancerade förklaringar för personer som är något me...

Arduino nybörjare och grundläggande elektronik Kit Primer

lärde jag mig att en av mina systerdöttrar hade ett intresse för programmering. Hon arbetade med robotics på gymnasiet och har en sommar praktikplats där de hade Arduinos. Jag tror att hon kunde låna en Arduino för att experimentera med hemma men var...

Hur du byter en Arduino utgång på och bort från din Android mobil. Arduino för nybörjare

Uppdatering: Se Android/Arduino för nybörjare - Design anpassade Android menyer att slå Arduino utgångar på och av. Absolut No programmering krävs för ett alternativ som inte kräver någon programmering alls.Hur nybörjare kan växla en Arduino utgång p...