Arduino ultrazvočni senzor: kako meriti razdalje
Z Arduino lahko preprosto izmerite razdalje s pomočjo ultrazvočnega senzorja. V tem praktičnem nasvetu vam bomo pokazali, kako.
Arduino ultrazvočni senzor: kako meriti razdalje
Poleg Arduinoja potrebujete ploščo z nekaj skakalnimi kabli in ultrazvočni merilni modul HC-SR04, da lahko merite razdalje.
- Priključite zatič "Trigger" modula na pin 13 in pin "Echo" na pin 12 Arduino. Priključite tudi ultrazvočni merilni modul HC-SR04 na 5 V in ozemljite.
- Določite "sprožilec" kot izhod in "odmev" kot vhod. Potrebujete tudi dolgi spremenljivki "trajanje" in "razdalja".
- Najprej izklopite sprožilec (»digitalWrite (sprožilec, LOW);«) in počakajte 2 mikrosekundi (»delayMicroseconds (2);«). Nato vklopite sprožilec (»digitalWrite (sprožilec, HIGH);«), počakajte 10 mikrosekund (»delayMicroseconds (10);«) in ga znova izklopite (»digitalWrite (sprožilec, LOW);«). Uporabite to za izračun trajanja (»trajanje = pulzIn (odmev, HIGH);«) in končno dejansko razdaljo (»razdalja = (trajanje / 2) / 29.1;«).
- S to spremenljivko lahko nadaljujete s izračunavanjem po želji.
Arduino: vzorčna koda za ultrazvočni senzor
Na sliki vidite kodo, ki jo lahko uporabite, če želite HC-SR04 profesionalno uporabiti. Tu lahko tudi kopirate kodo:
- #include #define sprožilec 13 #define odmev 12 #define led_1 11 #define led_2 10 int vrednost_ton; dolgo trajanje, oddaljenost; LiquidCrystal lcd (7, 6, 5, 4, 3, 2); nastavitev ničnosti () {Serial.begin (9600); pinMode (sprožilec, OUTPUT); // Pin of HC-SR04 pinMode (odmev, INPUT); // Pin of HC-SR04 pinMode (led_1, OUTPUT); // LED pinMode (led_2, IZHOD); // LED pinMode (9, IZHOD); // zujanje lcd.begin (16, 2); } void loop () {digitalWrite (sprožilec, LOW); zamudaMikrosekunde (2); digitalWrite (sprožilec, VISOK); zamudaMiksekunde (10); digitalWrite (sprožilec, LOW); trajanje = pulzIn (odmev, VISOK); razdalja = (trajanje / 2) / 29, 1; if (razdalja = 200 || razdalja <= 0) {Serial.println ("Izven dosega"); } else {Serial.print (razdalja); Serial.println ("cm"); } lcd.clear (); lcd.setCursor (1, 0); lcd.print ("Razdalja:"); lcd.print (oddaljenost); lcd.print ("cm"); če (razdalja 0) {value_tone = zemljevid (razdalja, 0, 200, 0, 5000); ton (9, vrednost_ton); } else {} zamuda (500); }
V naslednjem praktičnem nasvetu vam bomo pokazali, kako na Arduino nastaviti modul GSM.