Functie na opstelling
Deze les moet je ook maken zonder hulptekening. Kijk goed in de sketch op welke pinnen je de onderdelen moet aansluiten. Kom je niet aan uit? Vraag aan je docent de hulptekening. Hij/zij kan in de docentenhandleiding de tekening raadplegen. Werk je zonder de hulp van een docent? Vraag dan via info@funmetelectronica.nl de hulptekening op.
Bij het afmaken van de opstelling zal het lampje aan gaan als er een object dichtbij de ultrasoon afstandsmeter staat.
Code
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | /*   Autheur:      Fun met Electronica   Link:         https://training.funmetelectronica.nl/docs/arduino-basis/lessen/les-15-hc-sr04-parkeersensor/   Beschrijving: Parkeersensor functie.                 Door middel van een ultrasoon afstandsmeter.   Aansluiting HC SR04:     VCC   = +5V     GND   = GND     TRIG  = pin 2     ECHO  = pin 4     Led   = pin 13 */ const int trigPin = 2;  // TRIG aan pin 2 const int echoPin = 4;  // ECHO aan pin 4 const int led = 13;     // LED aan pin 13 long duration;          // variabele voor de tijdslengte /*   Het programmablok void setup wordt eenmaal beschreven */ void setup() {   pinMode (led, OUTPUT);    // LED is output   pinMode(trigPin, OUTPUT); // TRIG is output   pinMode(echoPin, INPUT);  // ECHO is input   Serial.begin(9600);       // start seriele monitor } /*   Het programmablok void loop herhaalt zich keer op keer */ void loop() {   digitalWrite(trigPin, LOW);         // LOW op TRIG geeft geen ultrasoon signaal   delayMicroseconds(2);               // wacht 2 mircoseconden   digitalWrite(trigPin, HIGH);        // begin het ultrasoon signaal   delayMicroseconds(10);              // wacht 10 microseconden   digitalWrite(trigPin, LOW);         // stop het ultrasoon signaal   duration = pulseIn(echoPin, HIGH);  // lees het signaal wat terugkomt in vertraging   /*     op de echoPin, de tijd die tussen uitzenden en ontvangen zit is     maatgevend voor de afstand, de tijd is in microseconden   */   Serial.print(duration);       // geef de echo-tijd weer in de seriele monitor   Serial.println();             // print een regel verder   delay(100);                   // wacht 100 miliseconden   if (duration < 1000) {        // als de echotijd kleiner is dan 100 dan...     digitalWrite (led, HIGH);   // zet de led aan   }else {                       // anders..     digitalWrite (led, LOW);    // zet de led uit..   } } /*    Opdracht 1:   Maak de parkeersensor met een buzzer in plaats van een LED.   Opdracht 2:   Kan je net zoals in een auto het buzzer signaal sneller laten buzzen?   En als het object te dichtbij is dat het een hoge constante piep geeft?   Zo ja voer dit dan uit. Opgelet: enorm lastig! */ | 
Opdrachten
Opdracht 15.1:
Maak de parkeersensor met een buzzer in plaats van een LED.
Opdracht 15.2
Kan je net zoals in een auto het buzzer signaal sneller laten buzzen? En als het object te dichtbij is dat het een hoge constante piep geeft? Zo ja voer dit dan uit. Opgelet: enorm lastig!