Hur man gör en enkel Arduino ultraljud avstånd Sensor (4 / 5 steg)
Steg 4: Koden
CONST int trigPin = 2;
CONST int echoPin = 3;
void setup() {/ / initiera seriell kommunikation: Serial.begin(9600);}
void loop() {/ / fastställa variabler för varaktigheten av ping, / / och avstånd resultatet i tum och centimeter: lång varaktighet, tum, cm;
Sensorn utlöses av en hög puls av 10 eller fler mikrosekunder. Ge en kort låg puls förhand för att säkerställa en ren hög puls: pinMode (trigPin, produktionen); digitalWrite (trigPin, låg); delayMicroseconds(2); digitalWrite (trigPin, hög); delayMicroseconds(10); digitalWrite (trigPin, låg);
Läs signalen från sensorn: en hög puls vars / / varaktighet är tid (i mikrosekunder) från den sändande / / av ping till mottagning av dess eko av ett objekt. pinMode (echoPin, ingång); längd = pulseIn (echoPin, hög);
konvertera tiden till ett avstånd tum = microsecondsToInches(duration); cm = microsecondsToCentimeters(duration); Serial.Print(inches); Serial.Print ("in"); Serial.Print(cm); Serial.Print("cm"); Serial.println(); Delay(100); }
långa microsecondsToInches (lång mikrosekunder) {/ / enligt Parallaxs datablad för PING))), det finns / / 73.746 mikrosekunder per tum (dvs. ljud resor på 1130 fot per / / sekund). Detta ger vägsträcka som ping, utgående / / och retur, så vi delar med 2 att få distansera av hindret. Se: http://www.parallax.com/dl/docs/prod/acc/28015-PI... återvända mikrosekunder / 74 / 2; }
långa microsecondsToCentimeters (lång mikrosekunder) {/ / ljudets hastighet är 340 m/s eller 29 mikrosekunder per centimeter. / / ping reser ut och tillbaka, så för att hitta distansera av den / / objekt vi tar hälften av den tillryggalagda. återvända mikrosekunder / 29 / 2;}
Gå sedan till seriell bildskärmen för att se avståndet