ระบบวัดระยะทางด้วย Ultrasonic HC-SR04 แล้วส่งสัญญาณเตือนด้วย LED และ Buzzer

Microcontroller เด่น

จุดประสงค์

  1. นักเรียนสามารถต่อวงจรในการวัดระยะทางด้วย Ultrasonic HC-SR04  Buzzer และ LED  ได้
  2. นักเรียนสามารถเขียนโปรแกรมเพื่อรับข้อมูลจาก  Ultrasonic HC-SR04 จนควบคุม LED และ Buzzer ได้
  3. นักเรียนสามารถนำความรู้ที่ได้ไปใช้ในการแก้ปัญหาในชีวิตประจำวันได้

อุปกรณ์ระบบวัดระยะทางด้วย Ultrasonic HC-SR04 แล้วส่งสัญญาณเตือนด้วย LED และ Buzzer

บอร์ดทดลอง Breadboard 

Protoboard หรือ Breadboard คือบอร์ดทดลอง สำหรับต่อวงจรไฟฟ้าและอิเล็กทรอนิกส์ต่างๆโดยไม่ต้องบัดกรีวงจร ซึ่งมีประโยชน์มากทั้งสำหรับผู้เริ่มต้นและผู้ที่ต้องการทดลองต่อวงจรใหม่ๆ โดย Protoboard นั้นมีหลายขนาดด้วยกัน ตั้งแต่ 170 รู , 830 รู จนถึง 1,660 รูเลยทีเดียว

LED

LED หรือ ไดโอดเปล่งแสง (Light Emitting Diode) คืออุปกรณ์ไฟฟ้าแบบ Passive ที่เมื่อมีกระแสไหลผ่านแล้วจะเปล่งแสงออกมา ด้วยการที่เป็นไดโอด จึงยอมให้กระแสไหลผ่านทางเดียวคือจากขั้ว + ไปยังขั้ว – ถ้าต่อกลับทิศ ไฟจะไม่ติด (เป็นคุณสมบัติของไดโอด)

Arduino Uno R3

Arduino อ่านว่า (อา-ดู-อิ-โน่ หรือ อาดุยโน่) เป็นบอร์ดไมโครคอนโทรเลอร์ตระกูล AVR ที่มีการพัฒนาแบบ Open Sourceคือมีการเปิดเผยข้อมูลทั้งด้าน Hardware และ Software ตัว บอร์ด Arduino ถูกออกแบบมาให้ใช้งานได้ง่าย ดังนั้นจึงเหมาะสำหรับผู้เริ่มต้นศึกษา ทั้งนี้ผู้ใช้งานยังสามารถดัดแปลง เพิ่มเติม พัฒนาต่อยอดทั้งตัวบอร์ด หรือโปรแกรมต่อได้อีกด้วย

Resistor ตัวต้านทาน

มีหน้าที่ในการจำกัดปริมาณแรงดันและกระแสไฟฟ้าในวงจร เพื่อให้ LOAD อื่นๆที่ต่อเข้ากับมันได้รับแรงดันและกระแสที่เหมาะสม

Active Buzzer

ถ้าต้องการสร้kงเสียงเตือนแบบง่าย ๆ Active Buzzer เป็นตัวสร้างเสียงที่ง่ายที่สุด เพียงแค่จ่ายไฟ 3.3 – 5VDC ไปที่ Active Buzzer ก็สร้างเสียงร้องได้

HC-SR04 เป็นโมดูลสำหรับใช้หาระยะห่างของวัดถุกับตัวเซ็นเซอร์ อาศัยการทำงานของคลื่นเสียงที่ความถี่ 40kHz (40,000Hz) ซึ่งจัดอยู่ในย่าน Ultrasonic (ความถี่สูงกว่าที่หูมนุษย์จะสามารถได้ยิน) โมดูลตัวนี้เป็นโมดูลยอดนิยมอีกตัวที่นำไปใช้ในโปรเจคหาระยะห่างของวัตถุ ไม่บรรทัดดิจิตอล หรือใช้ในโครงงานหุ่นยนต์ต่าง ๆ

คุณสมบัติของโมดูล

แรงดันที่ใช้ในการทำงาน 5V
กระแสไฟฟ้าที่ใช้ 15mA
คลื่นความถี่ในการทำงาน 40kHz
ระยะสูงสุดที่สามารถวัดได้ 4 m (400 cm)
ระยะต่ำสุดที่สามารถวัดได้ 0.02 m (2 cm)
ความแม่นยำ ±3mm
องศาในการวัด 15 องศา
Trigger Input Signal 10us TTL Pulse

คำสั่งในการควบคุม ระบบวัดระยะทางด้วย Ultrasonic HC-SR04 แล้วส่งสัญญาณเตือนด้วย LED และ Buzzer

double fnc_ultrasonic_distance(int _t, int _e){ //ฟังก์ชันในการคำนวณระยะทาง
unsigned long dur=0;
digitalWrite(_t, LOW);
delayMicroseconds(5);
digitalWrite(_t, HIGH);
delayMicroseconds(10);
digitalWrite(_t, LOW);
dur = pulseIn(_e, HIGH, 18000);
if(dur==0)return 999.0;
return (dur/57);
}
void setup()
{
pinMode(2, OUTPUT);
pinMode(3, INPUT);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
Serial.begin(9600);
Serial.flush();
while(Serial.available()>0)Serial.read();
}
void loop()
{
if ((fnc_ultrasonic_distance(2,3) < 30)) {
digitalWrite(12, HIGH);
digitalWrite(13, HIGH);
delay(300);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
delay(300);
}
Serial.println(fnc_ultrasonic_distance(2,3));
delay(500);
}

Arduino Block ระบบวัดระยะทางด้วย Ultrasonic HC-SR04 แล้วส่งสัญญาณเตือนด้วย LED และ Buzzer

การต่อวงจร ระบบวัดระยะทางด้วย Ultrasonic HC-SR04 แล้วส่งสัญญาณเตือนด้วย LED และ Buzzer

ultra_bb