แนะนำ เซ็นเซอร์ HC-SR04 และบอร์ด นาโน



 อธิบายการทำงานของเซ็นเซอร์ HC-SR04 อย่างละเอียด

เซ็นเซอร์ HC-SR04 เป็นเซ็นเซอร์วัดระยะทางแบบอัลตราโซนิก ที่นิยมใช้กันอย่างแพร่หลาย ในงานด้านหุ่นยนต์ 

และระบบอัตโนมัติ ต่าง ๆ เนื่องจากมีราคาไม่แพง ใช้งานง่าย และให้ผลลัพธ์ที่ค่อนข้างแม่นยำ


หลักการทำงาน

การส่งคลื่นอัลตราโซนิก: เมื่อเซ็นเซอร์ได้รับสัญญาณ Trigger (สัญญาณกระตุ้น) ตัวเซ็นเซอร์จะส่งคลื่นเสียงความถี่สูง (อัลตราโซนิก) ออกไป ซึ่งเป็นความถี่ที่สูงเกินกว่าที่หูมนุษย์จะได้ยิน

การรับสัญญาณสะท้อน: คลื่นเสียงที่ส่งออกไปจะเดินทางไปกระทบกับวัตถุที่อยู่ด้านหน้า แล้วสะท้อนกลับมายังตัวรับของเซ็นเซอร์

การวัดระยะเวลา: เซ็นเซอร์จะทำการวัดระยะเวลาที่ใช้ในการเดินทางไปกลับของคลื่นเสียงนี้

การคำนวณระยะทาง: จากระยะเวลาที่วัดได้ และความเร็วของเสียงในอากาศ (ซึ่งเป็นค่าคงที่) เซ็นเซอร์จะสามารถคำนวณหาระยะห่างระหว่างเซ็นเซอร์กับวัตถุได้

ส่วนประกอบหลักของเซ็นเซอร์ HC-SR04

ตัวส่ง (Transmitter): ทำหน้าที่ส่งคลื่นอัลตราโซนิกออกไป

ตัวรับ (Receiver): ทำหน้าที่รับคลื่นอัลตราโซนิกที่สะท้อนกลับมา

วงจรอิเล็กทรอนิกส์: ทำหน้าที่ประมวลผลสัญญาณและคำนวณระยะทาง

การนำไปใช้งาน

การวัดระยะห่าง: สามารถนำไปใช้วัดระยะห่างของวัตถุได้หลากหลาย เช่น การตรวจจับสิ่งกีดขวางของหุ่นยนต์ การวัดระดับของของเหลว

การควบคุมมอเตอร์: สามารถนำไปใช้ควบคุมมอเตอร์ให้หยุดหรือเปลี่ยนทิศทางเมื่อตรวจพบวัตถุ

การสร้างระบบนิรภัย: สามารถนำไปใช้สร้างระบบนิรภัย เช่น ระบบเปิดประตูอัตโนมัติเมื่อมีคนเข้าใกล้

ข้อดีของเซ็นเซอร์ HC-SR04

ราคาถูก: มีราคาไม่แพง ทำให้สามารถนำไปใช้งานได้อย่างกว้างขวาง

ใช้งานง่าย: มีเพียงสองขาสำหรับเชื่อมต่อ คือขา Trigger และขา Echo

แม่นยำ: ให้ผลลัพธ์ที่ค่อนข้างแม่นยำ

ขนาดเล็ก: มีขนาดเล็ก ทำให้สามารถนำไปติดตั้งในพื้นที่จำกัดได้

ข้อจำกัดของเซ็นเซอร์ HC-SR04

ช่วงการวัดจำกัด: มีช่วงการวัดระยะทางที่จำกัด

ได้รับผลกระทบจากสภาพแวดล้อม: เช่น อุณหภูมิ ความชื้น และเสียงรบกวน สามารถส่งผลต่อความแม่นยำของการวัด

สรุป: 

เซ็นเซอร์ HC-SR04 เป็นเซ็นเซอร์ที่ใช้งานง่ายและมีประโยชน์อย่างมาก ในการสร้างโครงงานด้านอิเล็กทรอนิกส์และหุ่นยนต์ต่าง ๆ 

หากต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับเซ็นเซอร์ตัวนี้ สามารถค้นหาข้อมูลเพิ่มเติมได้จากแหล่งข้อมูลต่างๆ เช่น Datasheet


สิ่งที่ต้องใช้ 

- Atduino Nano

- Ultrasonic Module SR04

- LED 1 

- Breadboard 1 

- สายจ้ัมพ์


การเชื่อมต่อ

Ultrasonic Module SR04 ------> Arduino Nano

VCC -------------------------> 5V  สีแดง

Trig ------------------------> PIN 6  สีส้ม

Echo ------------------------> PIN 7  สีเหลือง

GND -------------------------> GND   น้ำตาล

+LED ------------------------> PIN 8  ขายาว

-LED  -----------------------> GND




การคำนวณระยะห่างจากสัญญาณที่ได้จากโมดูล HC-SR04 สามารถทำได้โดยใช้สูตรง่าย ๆ ดังนี้:

ขา Trig ใช้สำหรับส่งสัญญาณเพื่อเริ่มการตรวจจับ

ขา Echo ใช้รับสัญญาณสะท้อนกลับ

ส่งสัญญาณ:


ส่งสัญญาณ HIGH ที่ขา Trig เป็นเวลา 10 ไมโครวินาทีเพื่อเริ่มการส่งคลื่นเสียง

อ่านสัญญาณที่ Echo:


เมื่อคลื่นเสียงสะท้อนกลับมายังโมดูล ขา Echo จะส่งสัญญาณ HIGH นานเป็นเวลาที่ใช้ (ในไมโครวินาที)

คำนวณระยะทาง:


ใช้สูตรในการคำนวณระยะห่าง:

Distance=(Time×Speed of Sound) /2

 

โดยที่:


Time

Time คือเวลาที่อ่านได้จากขา Echo (ในไมโครวินาที)

Speed of Sound

Speed of Sound คือประมาณ 343 เมตรต่อวินาทีในอุณหภูมิห้อง (หรือ 0.343 เซ็นติเมตรต่อไมโครวินาที)

เนื่องจากสัญญาณต้องเดินทางไปและกลับจากวัตถุ จึงต้องแบ่งด้วย 2

// คำนวณระยะห่าง  

distance = (duration * 0.343) / 2;  // ระยะทาง (เซนติเมตร)  


////////////////////////////////////////////////////

// ตัวอย่างโค้ด Arduino

const int trigPin = 6;  

const int echoPin = 7;  

const int led = 8; 

void setup() {  

  Serial.begin(9600);  

  pinMode(trigPin, OUTPUT);  

  pinMode(echoPin, INPUT);  

  pinMode(led, OUTPUT);  

}  


void loop() {  

  long duration, distance;  


  // ส่งคลื่นเสียง  

  digitalWrite(trigPin, LOW);  

  delayMicroseconds(2);  

  digitalWrite(trigPin, HIGH);  

  delayMicroseconds(10);  

  digitalWrite(trigPin, LOW);  


  // อ่านเวลาจาก Echo  

  duration = pulseIn(echoPin, HIGH);  


  // คำนวณระยะห่าง  

  distance = (duration * 0.343) / 2;  // ระยะทาง (เซนติเมตร)  


  // แสดงผลลัพธ์  

  Serial.print("Distance: ");  

  Serial.print(distance);  

  Serial.println(" cm");  

  delay(1000);  // รอสักครู่ก่อนอ่านค่าใหม่  

  

  if(distance<=20){

digitalWrite(led, HIGH);

    delay(500);

  }else{

digitalWrite(led, LOW);

  }

}  



Reference :

https://www.ett.co.th/prodKitNLab/man-th-ET-IOKIT2.pdf


ความคิดเห็น