โมดูลเซ็นเซอร์แสงสำหรับตรวจจับวัตถุกีดขวาง
IR Infrared Obstacle Avoidance Sensor Module
โมดูลเซ็นเซอร์แสงสำหรับตรวจจับวัตถุกีดขวาง IR Infrared Obstacle Avoidance Sensor Module โดยโมดูลนี้ จะมีตัวรับและตัวส่ง infrared ในตัว ตัวสัญญาณ(สีขาว) infrared จะส่งสัญญาณออกมา และเมื่อมีวัตถุมาบัง คลื่นสัญญาณ infrared ที่ถูกสั่งออกมาจะสะท้องกลับไปเข้าตัวรับสัญญาณ (สีดำ) สามารถนำมาใช้ตรวจจับวัตถุที่อยู่ตรงหน้าได้ และสามารถปรับความไว ระยะการตรวจจับ ใกล้หรือไกลได้
ภายตัวเซ็นเซอร์แบบนี้จะมีตัวส่ง Emitter และ ตัวรับ Receiver ติดตั้งภายในตัวเดียวกัน ทำให้ไม่จำเป็นต้องเดินสายไฟทั้งสองฝั่ง เหมือนแบบ Opposed Mode ทำให้การติดตั้งใช้งานได้ง่ายกว่า แต่อย่างไรก็ตามจำเป็นต้องติดตั้งตัวแผ่นสะท้อนหรือ Reflector ไว้ตรงข้ามกับตัวเซ็นเซอร์เอง โดยโฟโต้เซ็นเซอร์แบบที่ใช้แผ่นสะท้อนแบบนี้จะเหมาะสำหรับชิ้นงานที่มีลักษณะทึบแสงไม่เป็นมันวาว เนื่องจากอาจทำให้ตัวเซ็นเซอร์เข้าใจผิดว่าเป็นตัวแผ่นสะท้อน และ ทำให้ทำงานผิดพลาดได้
เซ็นเซอร์แบบนี้จะมีช่วงในการทำงาน หรือ ระยะในการตรวจจับจะได้ใกล้กว่าแบบ Opposed mode ซึ่งในสภาวะการทำงานปกติตัวรับ Receiver จะสามารถรับสัญญาณแสงจากตัวส่ง Emitter ได้ตลอดเวลา เนื่องจากลำแสงจะสะท้อนกับแผ่นสะท้อน Reflector อยู่ตลอดเวลา จะแสดงค่า เป็น 0
หน้าที่หลักของเซ็นเซอร์ชนิดนี้ จะคอยตรวจจับวัตถุที่เคลื่อนที่ตัดผ่านหน้าเซ็นเซอร์ เมื่อวัตถุ หรือ ชิ้นงานผ่านเข้ามาที่หน้าเซ็นเซอร์ แล้วจะการขวางลำแสงที่ส่งจากตัวส่ง Emitter ที่ส่งไปยังแผ่นสะท้อน จึงทำให้ตัวรับ Receiver ไม่สามารถรับลำแสงที่จะสะท้อนกลับมาได้ จะแสดงค่า เป็น 1
ซึ่งจะทำให้วงจรภายในรับรู้ได้ว่า มีวัตถุหรือชิ้นงานขวางอยู่ ทำให้สถานะของเอาท์พุตของตัวรับเปลี่ยนแปลงไป โดยเราเรียกลักษณะการทำงานแบบนี้ว่า Dark On หรือ Dark Operate
ตัวอย่างการใช้งานในโรงงานอุตสาหกรรม
คุณสมบัติ
- ไฟเลี้ยง VCC: 3.3-5Vdc
- ดิจิตอลเอาต์พุต (0 หรือ 1)
- ระยะตรวจจับ สามารถปรับได้ตั้งแต่ 2-30 cm
- มุมในการตรวจจับ 35 องศา
- ขนาดบอร์ด 3.1 x 1.5 cm
void setup()
{
// ตั้งค่าความเร็วในการรับ-ส่งข้อมูล ค่ามาตรฐาน คือ 9600
Serial.begin(9600);
}
void loop()
{
// ตัวแปร รับค่า จาก ขา A0 ให้เป็นแบบ ดิจิตอล
int sensorValue = digitalRead(A0);
// พิมพ์ค่าที่อ่านได้จาก ตัวแปร ออกไป
Serial.println(sensorValue);
delay(500); // รอครึ่งวินาที
}
Upload เพื่อตรวจสอบโค้ดโปรแกรมที่เราเขียนว่าถูกต้องหรือไม่พร้อมทั้งส่งโค้ดโปรแกรมที่เราเขียนไปยังบอร์ด Arduino UNO R3
เมื่อ Upload เสร็จ ให้เปิด Serial Monitor ขึ้นมา โดยไปที่ Tools -> Serial Monitor
ที่ Serial Monitor เริ่มต้นโดย หาที่วาง IR Sensor ที่สามารถส่งลำแสงไปยังแผ่นสะท้อนกลับมาได้ แล้ว แสดงผลลัพธ์ เป็น 0
ไม่มี วัตถุหรือชิ้นงานขวาง ลำแสง สามารถสะท้อนกลับมาได้ จะแสดงค่า เป็น 0 (ไฟ LED สีเขียวติด 2 ดวง)
มี วัตถุหรือชิ้นงานขวาง ลำแสง ไม่สามารถสะท้อนกลับมาได้ จะแสดงค่า เป็น 1 (ไฟ LED สีเขียวติด 1 ดวง)
แสดงว่า โมดูลเซ็นเซอร์แสง IR Infrared Obstacle Avoidance Sensor Module ของเรา นั้นพร้อมใช้งานแล้วครับ
IR Infrared Obstacle Avoidance Sensor Module
เซ็นเซอร์แบบนี้จะมีช่วงในการทำงาน หรือ ระยะในการตรวจจับจะได้ใกล้กว่าแบบ Opposed mode ซึ่งในสภาวะการทำงานปกติตัวรับ Receiver จะสามารถรับสัญญาณแสงจากตัวส่ง Emitter ได้ตลอดเวลา เนื่องจากลำแสงจะสะท้อนกับแผ่นสะท้อน Reflector อยู่ตลอดเวลา จะแสดงค่า เป็น 0
ซึ่งจะทำให้วงจรภายในรับรู้ได้ว่า มีวัตถุหรือชิ้นงานขวางอยู่ ทำให้สถานะของเอาท์พุตของตัวรับเปลี่ยนแปลงไป โดยเราเรียกลักษณะการทำงานแบบนี้ว่า Dark On หรือ Dark Operate
ตัวอย่างการใช้งานในโรงงานอุตสาหกรรม
- ไฟเลี้ยง VCC: 3.3-5Vdc
- ดิจิตอลเอาต์พุต (0 หรือ 1)
- ระยะตรวจจับ สามารถปรับได้ตั้งแต่ 2-30 cm
- มุมในการตรวจจับ 35 องศา
- ขนาดบอร์ด 3.1 x 1.5 cm
เราจะมาทดสอบ IR Infrared Obstacle Avoidance Sensor Module กัน เพื่อให้เราทราบว่ามีวัตถุหรือชิ้นงานขวางหรือไม่ เมื่อได้ข้อมูลจากเซ็นเซอร์ จะส่งค่ากลับผ่านตัวแปร sensorValue เมื่อมีจะส่งค่ากลับ เป็น 0 หรือ 1 และให้แสดงค่าที่ Serial Monitor ด้วย
อุปกรณ์ที่ต้องใช้ก็คือ
1. บอร์ด Arduino UNO R3
2. IR Infrared Obstacle Avoidance Sensor Module
3. Jumper (F2M) Female to Male
ต่อวงจรดังนี้
IR Sensor <--> Arduino UNO
VCC <--> 5V
GND<--> GND
OUT <--> A0
เปิดโปรแกรม Arduino (IDE) เขียน โค้ดดังนี้
อุปกรณ์ที่ต้องใช้ก็คือ
1. บอร์ด Arduino UNO R3
2. IR Infrared Obstacle Avoidance Sensor Module
3. Jumper (F2M) Female to Male
ต่อวงจรดังนี้
IR Sensor <--> Arduino UNO
VCC <--> 5V
GND<--> GND
OUT <--> A0
เปิดโปรแกรม Arduino (IDE) เขียน โค้ดดังนี้
void setup()
{
// ตั้งค่าความเร็วในการรับ-ส่งข้อมูล ค่ามาตรฐาน คือ 9600
Serial.begin(9600);
}
void loop()
{
// ตัวแปร รับค่า จาก ขา A0 ให้เป็นแบบ ดิจิตอล
int sensorValue = digitalRead(A0);
// พิมพ์ค่าที่อ่านได้จาก ตัวแปร ออกไป
Serial.println(sensorValue);
delay(500); // รอครึ่งวินาที
}
เมื่อ Upload เสร็จ ให้เปิด Serial Monitor ขึ้นมา โดยไปที่ Tools -> Serial Monitor
ไม่มี วัตถุหรือชิ้นงานขวาง ลำแสง สามารถสะท้อนกลับมาได้ จะแสดงค่า เป็น 0 (ไฟ LED สีเขียวติด 2 ดวง)
แสดงว่า โมดูลเซ็นเซอร์แสง IR Infrared Obstacle Avoidance Sensor Module ของเรา นั้นพร้อมใช้งานแล้วครับ