วันจันทร์ที่ 23 กรกฎาคม พ.ศ. 2561

เครื่องชุดประตูเลื่อนอัตโนมัติ (Automatics door)

เครื่องชุดประตูเลื่อนอัตโนมัติ (Automatics door)

โดย นางสาวสุรัมภา จารัตน์ (surumpa@hotmail.com)
สาขาวิศวกรรมแมคคาทรอนิกส์ ภาควิชาครุศาสตร์เครื่องกล มหาวิทยาลัยเทคโนโลยีพระจอมเกล้าพระนครเหนือ

Download: Simulink Model File (proj13_AutomaticsDoor.7z)

ที่มาและความเป็นมาของโครงงาน

แนวคิดในการออกแบบชุดประตูเลื่อนอัตโนมัติ

การใช้งานประตูเลื่อนอัตโนมัติในปัจจุบันเป็นไปอย่างแพร่หลาย เราจึงคิดวิธีการทาประตูเลื่อนโดยหาวิธีการใหม่ที่ประหยัดต้นทุนมากกว่าประตูอัตโนมัติทั่วไป โดยใช้บอร์ดไมโครคอนโทรลเลอร์เป็นอุปกรณ์หลักในการใช้งาน เพื่อควบคุมการเปิดปิดประตูโดยอัตโนมัติ

คุณสมบัติการทำงานของโครงงาน

  • สามารถเปิดประตูเมื่อมีคนเข้ามาได้อย่างรวดเร็ว
  • สามารถปิดประตูตามเวลาที่กาหนดไว้ได้
  • สามารถเพิ่มลดความเร็วในการเปิดปิดประตูได้ จากการปรับค่าในวงจรภาคกาลัง
  • ประตูจะเปิดเมื่อมีคนเข้าประตูมาและจะปิดเองโดยอัตโนมัติใน 2 วินาที ตามโปรแกรมที่วางไว้
KMUTNB013_001_Automatic Door
รูปที่ 1 ภาพด้านหน้าชิ้นงาน
รูปที่ 2 วงจรการต่อใช้งานจริง
รูปที่ 2 วงจรการต่อใช้งานจริง
รูปที่ 3 วงจรการต่อใช้งานจริงของบอร์ด STM32F407VG
รูปที่ 3 วงจรการต่อใช้งานจริงของบอร์ด STM32F407VG
รูปที่ 4 วงจรการต่อใช้งานจริงของบอร์ดไดร์ฟ
รูปที่ 4 วงจรการต่อใช้งานจริงของบอร์ดไดร์ฟ
รูปที่ 5 วงจรการต่อใช้งานจริงของชุดแปลงไฟ
รูปที่ 5 วงจรการต่อใช้งานจริงของชุดแปลงไฟ

การต่อวงจรสำหรับวงจรขับมอเตอร์อัตโนมัติ

รูปที่ 6 วงจรสมบูรณ์
รูปที่ 6 วงจรสมบูรณ์

วงจรการต่อวงจรที่สมบูรณ์ของโครงงานฯ

จากบอร์ด STM32F407VG ใช้ Port PA0 รับค่าจากเซนเซอร์ มาประมวลผลข้างในโปรแกรม Math lab โดยส่ง out put ออกมาที่ Port PE12 และ Port PE13 ไปยังบอร์ดไดร์ฟมอเตอร์ ส่วน Port PE14 เป็น Port ที่ส่งสัญญาณ PWM ไปยังบอร์ดไดร์ฟมอเตอร์ นำไปเลี้ยง 5V และ Ground ของบอร์ด STM32F407VG ต่อให้กับ Photo Sensor เพื่อไปเลี้ยงเซนเซอร์ด้วย ส่วนไฟเลี้ยงของบอร์ดไดร์ฟมอเตอร์นั้นใช้ไฟเลี้ยงจากแหล่งจ่ายอื่นจ่ายเข้าไปด้วย เนื่องจากที่ต้องนำแหล่งนอกบอร์ด STM32F407VG มาใช้นั้น เป็นเพราะกระแสไม่เพียงพอจะทำให้มอเตอร์ไม่สามารถหมุนได้
โดยส่วนประกอบของวงจรประกอบไปด้วย
  1. บอร์ด STM32F407VG
  2. โฟโต้เซนเซอร์
  3. Limit switch
  4. สายโยงเข้าชุดไดร์ฟมอเตอร์

โปรแกรม Simulink ที่สมบูรณ์ของโครงงานฯ

รูปที่ 7 โปรแกรม Simulink ของโครงงานชุดประตูเลื่อนอัตโนมัติ (Automatics door) จา
รูปที่ 7 โปรแกรม Simulink ของโครงงานชุดประตูเลื่อนอัตโนมัติ (Automatics door)
จากรูปที่ 7 โค้ดโปรแกรม อันดับแรก ทำการเรียก Target Setup ออกมาก่อนจาก Waijung Blackest เพื่อเป็นการบอกว่า ขณะนี้กาลังใช้บอร์ดไมโครคอนโทรลเลอร์ STM32F407VG อยู่ จากนั้นทำการเรียก Digital Output ออกมา เพื่อเป็นการบอกว่า สัญญาณจากตัวเซนเซอร์ของโครงงานนี้มีสัญญาณออกมาเป็นดิจิตอล (1 และ 0)  โดย Port ที่เลือกใช้รับสัญญาณจากเซนเซอร์มานั้น ใช้ Port PA0 เมื่อรับสัญญาณมาแล้ว เราก็เลือกฟังก์ชั่น Embedded เพื่อทำการวางเงื่อนไขให้กับการทำงานตามที่ต้องการ (จะอธิบายส่วนของ Embedded ในรูปที่ 8 ต่อไป) เมื่อเรากำหนดเงื่อนไขตามที่ต้องการเรียบร้อยแล้ว ทำการเรียกฟังก์ชั่น State Flow ออกมาใช้เพื่อทำการหน่วงเวลา (จะทำการหน่วงเวลาในรูปที่ 9 ต่อไป) เมื่อทำการหน่วงเวลาเรียบร้อยแล้ว จะส่งสัญญาณ Output ออกมา 2 Port คือ Port PE12 และ PE13 เพื่อนำไปต่อเข้าที่บอร์ดไดร์ฟ สั่งมอเตอร์ให้หมุนเมื่อมีเงื่อนไขตามที่ตั้งในฟังก์ชั่น Embedded และฟังก์ชั่น State Flow ไว้ อีกส่วนหนึ่งนั้นเป็นส่วนของการจ่ายพัลซ์ให้กับบอร์ดไดร์ฟมอเตอร์เพื่อเป็นการ Tick สัญญาณ เราจึงทำการเรียกใช้งาน Pulse Generator เพื่อทำการจ่ายสัญญาณพัลซ์ออกที่ Port PE14 เพื่อนำสัญญาณจาก Port PE14 นั้นไปต่อเข้าที่บอร์ดไดร์ฟต่อไป
รูปที่ 8 โค้ดของ Embedded Matlab
รูปที่ 8 โค้ดของ Embedded Matlab
จากรูปที่ 8 ในส่วนนี้คือส่วนของฟังก์ชั่น Embedded
KMUTNB013_008-1_Automatic Door
รูปที่ 9 โปรแกรม Simulink ในชุด State flow ของโครงงานชุดประตูเลื่อนอัตโนมัติ (Automatics door)
รูปที่ 9 โปรแกรม Simulink ในชุด State flow ของโครงงาน
จากรูปที่ 9 เริ่มที่
State หมายเลข 1 เป็นการเริ่มต้นการทำงานของ State Flow คำสั่งจะเข้ามาทำที่นี่ก่อนเป็นอันดับแรก
State หมายเลข 2 เป็นการกำหนดเงื่อนไขให้บานประตู โดยสภาพตอนนี้ประตูไม่มีการเปิดและไม่มีการปิด คือไม่มีการทำงานใดๆ ทั้งสิ้นจนกว่าจะได้รับสัญญาณมาจากเซนเซอร์ซึ่งสัญญาณนั้นต้องผ่านฟังก์ชั่น Embedded มาแล้ว
State หมายเลข 3 เป็นการรับเงื่อนไขจากฟังก์ชั่น Embedded ว่าถ้าสัญญาณที่รับเข้ามานั่นเป็น 1 (เซนเซอร์ตรวจพบคนได้) ให้ทำการเปิดประตู (open = 0) ค้างไว้ให้ครบเวลา 4 วินาที เพื่อทำตามเงื่อนไขใน State ต่อไป
State หมายเลข 4 เมื่อครบเวลา 4 วินาที จาก State ที่ผ่านมาแล้ว ต่อไปเป็นการสั่งให้ไม่มีทำงานใดๆ ทั้งสิ้นเหมือนในกรณี State หมายเลข 2 เนื่องจากจะต้องรอสัญญาณว่าเซนเซอร์ตรวจพบคนอีกหรือไม่ ถ้าตรวจพบคน (input=1) ให้ทำใน State หมายเลข 3 ซ้ำอีก แต่ถ้านอกเหนือจากเงื่อนไขที่กล่าวมา ก็จะทำการหน่วงเวลาไปอีก 2 วินาที เพื่อทำ State ต่อไป
State หมายเลข 5 เมื่อครบเวลา 2 วินาทีจาก State ที่ผ่านมาแล้ว ประตูจะทำการปิดเองโดยอัตโนมัติ (close=0) จนครบเวลา 3 วินาที จึงจะหยุดการทำงาน และจะรอสัญญาณเข้ามาดังเช่นเงื่อนไขใน State หมายเลข 2 อีกต่อไป

ขั้นตอนการทำงานอย่างละเอียด

รูปที่ 10 แสดงขั้นตอนการทางานเมื่อมีคนเข้าประตู
รูปที่ 10 แสดงขั้นตอนการทำงานเมื่อมีคนเข้าประตู
จากรูปที่ 10 เมื่อมีคนเข้าประตู Photo Sensor จะทำการรับสัญญาณเพื่อนำไปประมวลผลที่บอร์ด STM32F407VG ต่อไปเส้นสัญญาณเซนเซอร์
รูปที่ 12 แสดงโปรแกรม Simulink ที่ใช้ควบคุมการเปิดปิดของประตู
รูปที่ 12 แสดงโปรแกรม Simulink ที่ใช้ควบคุมการเปิดปิดของประตู
รูปที่ 13 แสดงโปรแกรม Simulink ในฟังก์ชั่น State Flow ที่ใช้ควบคุมการเปิดปิดของประตู
รูปที่ 13 แสดงโปรแกรม Simulink ในฟังก์ชั่น State Flow ที่ใช้ควบคุมการเปิดปิดของประตู
รูปที่ 14 ประตูเปิดเมื่อได้รับคำสั่งจากโปรแกรมที่กำหนดไว้
รูปที่ 14 ประตูเปิดเมื่อได้รับคำสั่งจากโปรแกรมที่กำหนดไว้
จากรูปที่ 12 และรูปที่ 13 เป็นการแสดงโปรแกรมการควบคุมการทางานของการเปิดปิดประตู จากรูปที่ 10 เมื่อมีคนเข้ามาที่ประตูและ Photo Sensor ตรวจจับได้ว่ามีคนเข้า จะส่งสัญญาณมาประมวลผลในโปรแกรม และโปรแกรมจะส่งคำสั่งไปที่ชุดไดร์ฟ เพื่อสั่งให้ประตูเปิดค้างไว้เป็นเวลา 4 วินาที ตามรูปที่ 14 ถ้ามีคนเข้ามามากอย่างต่อเนื่อง ประตูก็ยังคงเปิดค้างไว้แบบนี้จนกว่าคนสุดท้ายจะเดินเข้าเสร็จ และรอเวลาหน่วงประมาณ 2 วินาที จากนั้นประตูจะทำการเลื่อนเปิดเองโดยอัตโนมัติ ตามรูปที่ 15
รูปที่ 15 ประตูเลื่อนปิดเองโดยอัตโนมัติ เมื่อไม่มีคนเข้าประตู
รูปที่ 15 ประตูเลื่อนปิดเองโดยอัตโนมัติเมื่อไม่มีคนเข้าประตู
จากคุณสมบัติการทำงานของโครงงานที่สามารถเพิ่มลดความเร็วในการเปิดปิดประตูได้ จากการปรับค่าในวงจรภาคกำลัง ต่อไปจะเป็นการอธิบายการทำงานในส่วนนี้
รูปที่ 16 ภาคกาลังควบคุมความเร็วของมอเตอร์ รูป
รูปที่ 16 ภาคกำลังควบคุมความเร็วของมอเตอร์รูป
รูปที่ 17 หมุนมอเตอร์ทวนเข็มมอเตอร์หมุนเร็วขึ้น
รูปที่ 17 หมุนมอเตอร์ทวนเข็มมอเตอร์หมุนเร็วขึ้น
รูปที่ 18 หมุนมอเตอร์ตามเข็มมอเตอร์หมุนช้าลง
รูปที่ 18 หมุนมอเตอร์ตามเข็มมอเตอร์หมุนช้าลง
จากรูปที่ 16-18 เป็นรูปแสดงภาคกำลังของมอเตอร์ จะเห็นได้ว่าในส่วนของการแปลงไฟนั้นจะมีการใส่ VR 1kΩ เพื่อปรับลดเพิ่มแรงดันให้เข้ามาเลี้ยงมอเตอร์ในภาคกำลังโดยผ่านบอร์ดไดร์ฟมอเตอร์ ตามรูปที่ 18 ถ้าเกิดมีความต้องการความรวดเร็วในการเปิดปิดประตูให้ทำการหมุน VR ไปทางด้านทวนเข็มนาฬิกา บานประดูจะเลื่อนเปิดปิดอย่างรวดเร็วตามความต้องการ แต่ถ้าหากต้องการให้ประตูมีการเลื่อนเปิดปิดด้วยความเร็วที่ช้าลด ให้หมุน VR มาทางด้านตามเข็มนาฬิกา มอเตอร์ก็จะทำการหมุนเปิดปิดประตูช้าลงตามที่ต้องการ

ข้อมูลเพิ่มเติม

การที่ทำการใส่ลิมิตสวิตซ์นั้น เพื่อป้องกันไม่ให้บานประตูเลื่อนเปิดหรือปิดเกินเวลาที่กำหนดไว้ ป้องกันการเกิดอันตรายเมื่อมีคนเข้าประตูมากๆ และเพื่อป้องกันอุบัติเหตุที่อาจจะเกิดขึ้นเมื่อไหร่ก็ได้

โครงงานนี้เป็นผลงานของนักศึกษา สาขาวิศวกรรมแมคคาทรอนิกส์ ภาควิชาครุศาสตร์เครื่องกล มหาวิทยาลัยเทคโนโลยีพระจอมเกล้าพระนครเหนือ เนื้อหาในบทความเป็นการออกแบบและความเห็นส่วนตัวของผู้ทำโครงงาน บริษัท เอมเมจิน จำกัด อาจไม่เห็นด้วยเสมอไป

ไม่มีความคิดเห็น:

แสดงความคิดเห็น