arduino ultrasoon afstand meten

ultrasoon sensor aangesloten via breadboard op arduino
Met een ultrasoon module en een arduino kunnen we heel simpel en nauwkeurig afstanden tot objecten meten. Hiermee kunnen we allerlei interessante projecten bouwen. Bijvoorbeeld zou je heel exact kunnen registreren wanneer iets of iemand op je terrein komt, en dan een camera of lamp kunnen inschakelen.
benodigdheden:
Een arduino board (ik gebruik een duemillanova 100% kloon)

arduino of compatible board
Een ultrasoon meet module, hier een 4 pins. (5 volt)

Arduino compatible ultrasoon afstand meet module
Een breadboard om de verbindingen te maken

breadboard met ultrasoon module ingestoken
En een setje insteek kabeltjes

insteek kabeltjes male-male
De ultrasoon module heeft 4 pinnen, aan de voorkant staat hierbij wat deze zijn. gnd, trig echo en vcc
Steek een kabeltje in de 5v aansluiting op de arduino en de andere kant komt op het breadboard op de rij waar de vcc pin in zit (rood op de afbeelding). gnd op de arduino gaat naar gnd op de module (zwart)
Sluit een kabel aan van poort 7 op het arduino board naar de trig aansluiting op de module en van poort 8 op de arduino module naar de echo aansluiting op de module.

Ultrasoon sensor met breadboard aangesloten op arduino
- aangesloten en werkend
Ik heb de code van het ping voorbeeld aangepast zodat deze met deze module werkt:
/* Ping))) Sensor
Deze sketch leest een ultrasoon afstandsdetector en geeft de afstand
tot het dichtstbijzijnde object in het bereik. Om dit te doen stuurt het
een puls van 10 microseconden naar de trig pin van de sensor.
Vervolgens luistert het naar het signaal op de echo pin.
Als er een signaal terugkomt is de duur van het signaal bepalend voor de
afstand tot het object.
het schema:
* Vcc van de sensor verbonden aan +5V
* GND van de sensor verbonden aan gnd
* TRIG van de sensor verbonden aan pin 7
* ECHO van de sensor verbonden aan pin 8
http://www.theothersolution.nl/2011/05/20/arduino-ultrasoon-afstand-meten
created 3 Nov 2008
by David A. Mellis
modified 30 Jun 2009
by Tom Igoe
vertaald en Gewijzigd 20 mei 2011
door Timothy van Zadelhoff
This example code is in the public domain.
*/
// deze constanten veranderen niet. Het zijn de pin nummers
// van de input en output van de sensor:
const int pingPin = 7;
const int echoPin = 8;
void setup() {
// hier wordt de usb verbinding geïnitialiseerd
// zodat de meetresultaten op de computer zichtbaar zijn :
Serial.begin(9600);
}
void loop()
{
// variabelen voor de duur van de trigger,
// en de afstand in inches, centimeters en mm.
long duration, inches, cm, mm;
// De sensor wordt geactiveerd met een puls van 10 microseconden op trig
// geef vantevoren een lage puls om zeker te zijn van een “schoon” signaal
// (waarschijnlijk niet nodig met deze sensor)
pinMode(pingPin, OUTPUT);
digitalWrite(pingPin, LOW);
delayMicroseconds(4);
digitalWrite(pingPin, HIGH);
delayMicroseconds(10);
digitalWrite(pingPin, LOW);
// De echoPin wordt gelezen voor het resultaat van de meting, een hoge
// puls waarvan de duur (in microseconden) gelijk is aan de tijd van het
//zenden tot het ontvangen van de echo terug van een object
pinMode(echoPin, INPUT);
duration = pulseIn(echoPin, HIGH);
// converteer de tijd naar een afstand
inches = microsecondsToInches(duration);
cm = microsecondsToCentimeters(duration);
mm = microsecondsToMilimeters(duration);
Serial.print(inches);
Serial.print(“in, “);
Serial.print(cm);
Serial.print(“cm, “);
Serial.print(mm);
Serial.print(“mm”);
Serial.println();
delay(100);
}
long microsecondsToInches(long microseconds)
{
// er zijn
// 73.746 microseconden per inch (i.a.w geluid verplaatst zich met
// 1130 voet per seconde). Dit geeft de afstand afgelegd door de
// geluidsgolf heen en terug, dus moeten we door 2 delen om de
// afstand te berekenen.
return microseconds / 74 / 2;
}
long microsecondsToCentimeters(long microseconds)
{
// De snelheid van het geluid is 340 meter per seconde
// (of 29 microseconden per centimeter).
// Dit geeft de afstand afgelegd door de geluidsgolf heen
// en terug, dus moeten we door 2 delen om de afstand te berekenen.
return microseconds / 29 / 2;
}
long microsecondsToMilimeters(long microseconds)
{
// De snelheid van het geluid is 340 meter per seconde
// (of 2.9 microseconden per milimeter).
// Dit geeft de afstand afgelegd door de geluidsgolf heen
// en terug, dus moeten we door 2 delen om de afstand te berekenen.
return microseconds / 2.9 / 2;
}
upload deze code naar de Arduino en klik op het icoontje van serial monitor in de arduino ide

resultaat meting
Het resultaat wordt weergegeven in inches, cm en mm
Een complete beginners set kan bij mij besteld worden.
Onder andere deze schakeling kan daarmee worden gebouwd.
meer info hier arduino starters kit
Binnenkort meer tutorials, voor verzoeken laat een commentaar achter
Thursday, July 14th 2011 at 9:53 pm |
mooi en duidelijk voorbeeld.
kijk uit naar andere tutorials…