สารบัญ:

ปลอดภัยยิ่งขึ้น: ทำให้สถานีรถไฟปลอดภัยยิ่งขึ้น: 7 ขั้นตอน
ปลอดภัยยิ่งขึ้น: ทำให้สถานีรถไฟปลอดภัยยิ่งขึ้น: 7 ขั้นตอน

วีดีโอ: ปลอดภัยยิ่งขึ้น: ทำให้สถานีรถไฟปลอดภัยยิ่งขึ้น: 7 ขั้นตอน

วีดีโอ: ปลอดภัยยิ่งขึ้น: ทำให้สถานีรถไฟปลอดภัยยิ่งขึ้น: 7 ขั้นตอน
วีดีโอ: เตือนภัย อันตราย Ep.11ระวังรถไฟชน!!! ขา ติดรางรถไฟ หนังสั้น 2024, พฤศจิกายน
Anonim
ปลอดภัยยิ่งขึ้น: ทำให้สถานีรถไฟปลอดภัยยิ่งขึ้น
ปลอดภัยยิ่งขึ้น: ทำให้สถานีรถไฟปลอดภัยยิ่งขึ้น

สถานีรถไฟหลายแห่งในปัจจุบันไม่ปลอดภัยเนื่องจากการรักษาความปลอดภัย สิ่งกีดขวาง และการเตือนไม่ให้รถไฟเข้ามา เราเห็นความจำเป็นในการแก้ไข เพื่อแก้ปัญหานี้ เราได้สร้าง Safer Better เราใช้เซ็นเซอร์สั่นสะเทือน เซ็นเซอร์ตรวจจับความเคลื่อนไหว และระบบเตือนภัยฉุกเฉินบน Arduino Uno เพื่อเพิ่มความปลอดภัยให้กับสถานีรถไฟ

วัสดุที่จำเป็น:

  • Arduino Uno
  • สายจัมเปอร์
  • เซ็นเซอร์ตรวจจับความเคลื่อนไหว PIR
  • เซ็นเซอร์สั่นสะเทือน Piezo
  • หน้าจอ LCD
  • ลำโพง Piezo
  • สวิตช์ทางกายภาพ
  • โพเทนชิออมิเตอร์แบบอ่อน
  • ตัวต้านทาน 330 โอห์ม

โดย: เจคอบ วิมเมอร์, โอลิเวีย ครอว์ลีย์, จิน คิม

ขั้นตอนที่ 1: วางสายบอร์ด

วางสายคณะกรรมการ
วางสายคณะกรรมการ

เราต่อ Arduino ของเราเหมือนแผนภาพด้านบน

ขั้นตอนที่ 2: ขาตั้งจอ LCD สำหรับพิมพ์ 3 มิติ

ขาตั้ง LCD พิมพ์ 3 มิติ
ขาตั้ง LCD พิมพ์ 3 มิติ

เราพิมพ์ 3D ขาตั้งสำหรับหน้าจอ LCD ของเราเพื่อให้มองเห็นได้ชัดเจนยิ่งขึ้น

ขั้นตอนที่ 3: เชื่อมต่อกับ Arduino ใน Matlab

ขั้นตอนแรกในการเขียนโค้ดของเราคือเชื่อมต่อบอร์ด Arduino กับ Matlab ทำได้โดยการสร้างวัตถุ Arduino เราใช้รหัสต่อไปนี้:

a = arduino('/dev/tty.usbmodem14201', 'Uno', 'libraries', 'ExampleLCD/LCDAddon');

ขั้นตอนที่ 4: เขียนโค้ดใน Matlab

เราสร้างโปรแกรมใน Matlab เพื่อเรียกใช้ Arduino ของเรา หลังจากเริ่มต้นหน้าจอ LCD เราก็เขียนโค้ดเพื่อควบคุมสถานีรถไฟของเรา เราใช้อินพุต เช่น เซ็นเซอร์การสั่นสะเทือน เซ็นเซอร์ตรวจจับความเคลื่อนไหว และสวิตช์ทางกายภาพเพื่อสร้างเอาต์พุตที่หลากหลาย อินพุต เอาต์พุต และโค้ดที่เกี่ยวข้องเหล่านี้จะอธิบายไว้ในขั้นตอนด้านล่าง

ขั้นตอนที่ 5: เซ็นเซอร์สั่นสะเทือน

เซ็นเซอร์สั่นสะเทือน
เซ็นเซอร์สั่นสะเทือน

เซ็นเซอร์การสั่นสะเทือนเป็นเซ็นเซอร์แบบแอนะล็อก ดังนั้นจึงใช้ฟังก์ชัน Matlab readVoltage

val_vibro = readVoltage (a, 'A0'); NS

ฟังก์ชัน readVoltage ส่งคืนค่าช่วงของค่า แต่เราพบว่าค่าที่สูงกว่า 0.5 เป็นการสั่นสะเทือนที่เหมาะสม ดังนั้นเราจึงใช้เป็นค่าฐานของเรา หากแรงดันไฟฟ้าสูงกว่า 0.5 แสดงว่ารถไฟกำลังเข้ามาในสถานี เมื่อตรวจพบค่านี้ ข้อความจะถูกส่งไปยังหน้าจอ LCD ข้อความบนหน้าจอ LCD เป็นวิธีสื่อสารกับผู้คนที่สถานีที่มีรถไฟกำลังมา

เราเขียนบนหน้าจอ LCD ของเราโดยใช้รหัสต่อไปนี้:

ถ้า val_vibro <= 0.5;

elseif val_vibro > 0.5;

printLCD(lcd, 'ฝึกใน 3 นาที');

จบ

ขั้นตอนที่ 6: PIR Motion Sensor

เซ็นเซอร์ตรวจจับความเคลื่อนไหว PIR
เซ็นเซอร์ตรวจจับความเคลื่อนไหว PIR
เซ็นเซอร์ตรวจจับความเคลื่อนไหว PIR
เซ็นเซอร์ตรวจจับความเคลื่อนไหว PIR
เซ็นเซอร์ตรวจจับความเคลื่อนไหว PIR
เซ็นเซอร์ตรวจจับความเคลื่อนไหว PIR

เซ็นเซอร์ตรวจจับความเคลื่อนไหว PIR ใช้เพื่อให้แน่ใจว่าผู้ปฏิบัติงานรู้ถึงสิ่งกีดขวางตามรางรถไฟ เซ็นเซอร์จะถ่ายภาพและเปรียบเทียบภาพใหม่ล่าสุดกับภาพล่าสุดที่ถ่าย และหากมีสิ่งใดเคลื่อนไหว Matlab จะคืนค่าเป็น 1 เมื่อตรวจพบบางสิ่งบนราง อินเทอร์เฟซผู้ใช้แบบกราฟิก (GUI) จะปรากฏขึ้นเพื่อแจ้งผู้ประกอบการรถไฟว่ามีบางอย่าง อยู่บนรางรถไฟ ผู้ประกอบการมีตัวเลือกที่จะหยุดรถไฟหรือไปต่อ หลังจากเลือกตัวเลือกที่ต้องการแล้ว ข้อความยืนยันจะปรากฏขึ้น

รหัสต่อไปนี้ใช้สำหรับเซ็นเซอร์ตรวจจับความเคลื่อนไหว:

ถ้า val_opt == 1;

d1 = 'ตรวจพบวัตถุบนรางในสถานี';

op_input = questdlg (d1, 'ข้อความผู้ดำเนินการ', 'หยุดรถไฟ', 'เคลื่อนไหวต่อไป', 'เคลื่อนไหวต่อไป');

b1 = strcmp (op_input, 'หยุดรถไฟ');

b2 = strcmp (op_input, 'เคลื่อนไหวต่อไป');

ถ้า b1 == 1

msgbox('รถไฟหยุด')

หยุดชั่วคราว(3)

elseif b2 == 1

msgbox('รถไฟต่อ')

หยุดชั่วคราว(3)

จบ

elseif val_opt == 0;

จบ

ขั้นตอนที่ 7: สวิตช์ทางกายภาพ

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

เราทำสิ่งนี้ด้วยรหัสต่อไปนี้:

ถ้า s_val == 1 สำหรับฉัน = 1:10

playTone (a, 'D10', 1800, 1)

หยุดชั่วคราว(.1)

playTone (a, 'D10', 2000, 1)

หยุดชั่วคราว(.1)

จบ

จบ

แนะนำ: