Arduino Ultrasonic (Distance sensor)
2 min readMay 12, 2022
เป็น sensor ที่เอาไว้วัดระยะด้วยเสียงสะท้อนโดยมีระยะที่แม่นยำอยู่ที่ 2–400 cm ขาต่าง ๆ ก็จะมี VCC, Trig, Echo และ GND หลักการทำงานคือ ultrasonic จะส่งเสียงออกไปเมื่อชนกับวัตถุก็จะเกิดการสะท้อนกับมายัง ultrasonic
โดยเราจะทำการ Trig ไป 10 us จากนั้นเราก็จะทำการ เปิด Echo pin HIGH ที่ 2ms ด้วยฟฟังก์ชัน pulseIn (ฟังก์ชันนี้จะทำงานใน 2–3 ms)
จากนั้นก็ทำการแปลงความเร็วของเสียงด้วยสูตร
มาเริ่มต่อ Ultrasonic เข้า Arduino board กัน
Ultrasonic.ino
#define trigPin 2
#define echoPin 3long duration;
int distance;void setup()
{
Serial.begin(9600); pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}void loop()
{
// Clears trigPin
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
// Sets the trigPin HIGH for 10 ms
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Reads the echoPin
duration = pulseIn(echoPin, HIGH);
// Calculating the distance
distance = duration * 0.034 / 2;
Serial.println("Distance: " + String(distance) + " cm"); // Waiting for next loop
delay(100);
}
อ้างอิงจาก