กลับไปหน้ารวมไฟล์
automated-bike-turning-light-e0a11a.md

ชื่อโปรเจกต์: ไฟเลี้ยวจักรยานอัตโนมัติ!

ในชีวิตประจำวัน จักรยานเป็นยานพาหนะที่ผู้คนใช้กันทั่วไป เนื่องจากจักรยานไม่มี Turning Lights (ไฟเลี้ยว) ซึ่งมักพบในยานยนต์ จึงเป็นเรื่อง ยากที่จะแจ้งให้คนเดินเท้าและยานพาหนะที่อยู่ใกล้เคียงทราบเมื่อเลี้ยวและเปลี่ยนความเร็วในการเดินทาง ทำให้เกิดอุบัติเหตุจราจรได้ง่ายในสถานการณ์เช่นนี้ ในฐานะนักปั่นจักรยานตัวยง ผมจึงได้ออกแบบ ระบบเตือนการเลี้ยวจักรยานที่พัฒนาขึ้นสำหรับสถานการณ์การเลี้ยวของจักรยาน.

อุปกรณ์นี้ถูกควบคุมหลักโดย Arduino และด้วยความช่วยเหลือของเทคโนโลยีการส่งสัญญาณไร้สาย Bluetooth ข้อมูลการเลี้ยวและข้อมูลเสริมที่รวบรวมโดยคอมพิวเตอร์ส่วนบน (upper computer) เช่น คำสั่งเลี้ยว ความเร็ว และเจตนาในการขับขี่ จะถูกส่งไปยังคอมพิวเตอร์ส่วนล่าง (lower computer) เพื่อประมวลผล จากนั้นข้อมูลการเลี้ยวจะแสดงบนหน้าจอ LED ดิจิทัลแบบ dot matrix (ดอตเมทริกซ์) กำลังสูง และข้อมูลการเลี้ยวจะถูกแจ้งเตือนด้วยอุปกรณ์ประกาศเสียง

ระบบตรวจจับ

อันดับแรก เมื่อผู้ใช้เปิดหน้าจอแสดงผลและระบบตรวจจับการเลี้ยว อุปกรณ์ Bluetooth ทั้งสองในระบบทั้งคู่จะ จับคู่กันโดยอัตโนมัติ โดยการค้นหาความถี่ร่วมที่ตั้งค่าไว้ล่วงหน้าโดยเรา หลังจากการจับคู่ ลำดับความสำคัญแรกของระบบตรวจจับการเลี้ยวคือการรวบรวมข้อมูลอินพุตจากสวิตช์สามตำแหน่ง ซึ่งผู้ใช้จะควบคุมการแสดงผลลูกศรทิศทางด้วยตนเอง โดยปุ่ม I, 0, II สอดคล้องกับการเคลื่อนที่ไปทางซ้าย ไปข้างหน้า และไปทางซ้าย หรือทิศทางการเลี้ยวตามลำดับ อย่างไรก็ตาม หากอินพุตจากสวิตช์เป็นศูนย์ (ตำแหน่งกลาง) ซึ่งบ่งชี้ว่าเป็นการเคลื่อนที่ไปข้างหน้า หรือหากจักรยานมีการเปลี่ยนทิศทางจาก >15 องศาเป็น <-15 องศา หรือในทางกลับกัน ระบบจะทำงานภายใต้ระบบตรวจจับการเลี้ยวอัตโนมัติที่เป็นนวัตกรรมของเรา ซึ่งเป็นลำดับความสำคัญที่สอง การตรวจจับการเลี้ยวอัตโนมัติจะตรวจจับทิศทางของจักรยานโดยใช้ variable resistor (ตัวต้านทานปรับค่าได้) ซึ่งเชื่อมต่อกับจุดแยกด้านหน้าของจักรยานโดยใช้สายซิงโครไนซ์ เมื่อส่วนหน้าของจักรยานเลี้ยว ค่าความต้านทานที่จัดหาโดย variable resistor ก็จะเปลี่ยนแปลงตามไปด้วย หากตรวจพบค่าความต้านทานน้อยกว่า 450 โอห์ม จักรยานจะจัดประเภทเป็นการเลี้ยวขวา โดยที่ทิศทางของจักรยานจะอยู่ที่ 15 องศาหรือมากกว่านั้นไปทางขวาจากตำแหน่งแนวตั้ง และหากตรวจพบค่าความต้านทานมากกว่า 550 โอห์ม จักรยานจะจัดประเภทเป็นการเลี้ยวซ้าย โดยที่ทิศทางของจักรยานจะอยู่ที่ 15 องศาหรือมากกว่านั้นไปทางซ้ายจากตำแหน่งแนวตั้ง

ระบบแสดงผล

เมื่อรวบรวมข้อมูลการเลี้ยวได้แล้ว เราจะแบ่งปันสถานะการเคลื่อนที่ที่เก็บไว้ในรูปของจำนวนเต็มตั้งแต่ 1-3 ผ่านการส่งสัญญาณ **Bluetooth** แบบไร้สายของเรา ไปยังระบบฝังตัวของหน้าจอแสดงผลของเรา จากนั้นระบบหน้าจอแสดงผลจะรับสถานะปัจจุบันของจักรยานมาเปรียบเทียบกับสถานะก่อนหน้าของจักรยาน หากแตกต่างกัน ระบบแสดงผลจะเลือกที่จะเปลี่ยนการแสดงผลลูกศรบนหน้าจอ ตามด้วยการประกาศเสียง กระบวนการนี้จะเกิดขึ้นที่อัตรา 10Hz (10 ครั้งต่อวินาที)

อันดับแรก ระบบแสดงผลจะสร้างการประกาศเสียงโดยการประเมินสถานะการเคลื่อนที่และส่งข้อมูลดิจิทัลที่สอดคล้องซึ่งจัดเก็บไว้ในระบบไปยังโมดูลเสียง จากนั้นโมดูลเสียงจะแปลงข้อมูลดิจิทัลกลับเป็นข้อมูลอนาล็อกผ่าน DAC (**D**igital-to-Analog Conversion) เสียงที่สร้างโดยโมดูลจะอธิบายสถานะการเคลื่อนที่ของผู้ปั่นจักรยาน เช่น "เลี้ยวซ้าย ระวังด้วย" และทำหน้าที่เป็นคำเตือนสำหรับคนเดินเท้าหรือยานพาหนะอื่น ๆ ที่มองไม่เห็นหน้าจอแสดงผลของจักรยานหรือผู้พิการทางสายตา

จากนั้น เพื่อเปลี่ยนการแสดงผลลูกศรเลี้ยวบนหน้าจอ เราได้ใช้เทคโนโลยีการถอดรหัสกราฟิก (graphical decoding) ที่เป็นนวัตกรรมของเรา ในการถอดรหัสกราฟิก เราได้นำวิธีการควบคุม **LED** มาใช้ โดยเราควบคุมความสว่างและสีของไฟ **LED** แต่ละดวงแยกกันโดยการกำหนด ID ที่ไม่ซ้ำกันให้กับไฟทั้งหมด เพื่อแสดงไอคอนทิศทาง **LED** โซลูชันของเราได้แบ่งไอคอนลูกศรแต่ละอันออกเป็นสี่ส่วน และแสดงแต่ละส่วนบนบอร์ด **LED** ขนาดเล็ก 4 บอร์ดที่สอดคล้องกัน ซึ่งรวมกันเป็นหน้าจอแสดงผลของเรา หลังจากได้รับการอัปเดตสถานะการเคลื่อนที่ อัลกอริทึมจะนำไอคอนลูกศรกราฟิกที่เกี่ยวข้องมาซ้อนทับบนหน้าจอแสดงผล จากนั้นไฟที่ซ้อนทับกราฟิกจะถูกจุดขึ้นโดยการควบคุมฟังก์ชันเพื่อให้ได้ผลการแสดงผล ในส่วนของการนำไปใช้ในภาษาโปรแกรม ความสว่างและสีของแสงแต่ละดวงจะถูกกำหนดโดยการตั้งค่าค่า **RGB** ของหลอด **LED** แต่ละหลอด

เมื่อแสดงสถานะการเคลื่อนที่ของผู้ปั่นจักรยาน บอร์ดแสดงผลจะกะพริบในรูปแบบที่ไม่สม่ำเสมอ ทำได้โดยอัลกอริทึมจะรีเซ็ตไฟทั้งหมดให้ไม่มีสี [**RGB** (0, 0, 0)] จากนั้นโปรแกรมจะรอเป็นระยะเวลาที่สุ่มสร้างขึ้นตั้งแต่ 50ms ถึง 200ms สุดท้าย อัลกอริทึมจะส่องสว่างไฟทั้งหมดที่สอดคล้องกับลูกศรและรอ 50ms ถึง 200ms กระบวนการนี้จะทำซ้ำไปเรื่อย ๆ สำหรับทุกสถานะการเคลื่อนที่ เพื่อให้ผู้ปั่นจักรยานเป็นที่จดจำได้ง่ายขึ้นสำหรับคนเดินเท้าหรือยานพาหนะอื่น ๆ เนื่องจากเราใช้หน้าจอแสดงผลแบบ dot matrix กำลังสูง หลอดไฟแต่ละดวงสามารถส่องสว่างได้สูงสุด 15 ลูเมน ซึ่งใกล้เคียงกับความสว่างของไฟแบ็คไลท์ของสมาร์ทโฟน

ผลิตภัณฑ์ของเรายังกันน้ำได้ สามารถทนทานต่อฝนปรอย ๆ (< 2.5 มม. [0.098 นิ้ว] ต่อชั่วโมง) ได้นานกว่า 8 ชั่วโมง

ทำไมต้องโปรเจกต์นี้?

"Turning Helper" มีความพิเศษเนื่องจากเป็นบริการที่ช่วยลดอุบัติเหตุที่เกิดจากยานพาหนะที่ไม่ใช่ยานยนต์ มากกว่าที่จะเป็นแค่ผลิตภัณฑ์ ผลิตภัณฑ์สุดท้ายที่ได้จาก "Turning Helper" ไม่เหมือนกับผลิตภัณฑ์อื่น ๆ ที่มีอยู่ในปัจจุบัน วิธีแก้ปัญหาปัจจุบันสำหรับอุบัติเหตุที่เกิดจากยานพาหนะที่ไม่ใช่ยานยนต์คือ นโยบายจราจรและไฟเลี้ยวแบบแมนนวล "Turning Helper" นำเสนอระบบเลี้ยวอัตโนมัติที่เป็นนวัตกรรมใหม่ และบอร์ดแสดงผล **LED** ขนาด 32*32 ซม. ซึ่งทั้งแสดงการเคลื่อนที่ของผู้ปั่นจักรยาน และยังทำหน้าที่เป็นไฟฉายเพื่อเพิ่มทัศนวิสัยของผู้ปั่นจักรยานอีกด้วย แนวคิดนี้เป็นการปฏิวัติและมีความเป็นเอกลักษณ์ เนื่องจาก "Turning Helper" เป็นการผสมผสานระหว่างเทคนิคที่เป็นนวัตกรรมใหม่และเทคนิคที่ได้รับการพิสูจน์แล้วในการป้องกันอุบัติเหตุที่ไม่ใช่ยานพาหนะ โดยติดตั้งอยู่บนผลิตภัณฑ์เดียวที่ประกอบง่ายและเข้ากันได้กับกระเป๋าเป้ เสื้อกั๊ก และตู้เก็บของสำหรับส่งอาหาร

ข้อมูล Frontmatter ดั้งเดิม

title: "Automated Bike Turning Light!"
description: "An automated turning detection and display system for bikes. Using this, we won The Conrad Challenge CYBER-TECH& SECURITY Silver Medal"
author: "andyz1207"
category: "Wearables, Health & Fitness"
tags:
  - "lights"
  - "embedded"
  - "human welfare"
  - "transportation"
views: 13575
likes: 7
price: 1120
difficulty: "Intermediate"
components:
  - "2x Li-Ion Battery 1000mAh"
  - "1x Laser cutter (generic)"
  - "1x Arduino Wireless SD Shield"
  - "1x Speaker, Piezo"
  - "1x Solder Wire, Lead Free"
  - "1x Soldering Station, 110 V"
  - "1x PCB Holder, Soldering Iron"
  - "4x Alligator clip & rope"
  - "1x Hot glue gun (generic)"
  - "2x Rocker Switch, SPST"
  - "1x Programmable Soft LED Board"
  - "1x synchronizing line"
  - "2x HC-05 Bluetooth Module"
  - "3x Bike Holder"
  - "1x Flash Memory Card, SD Card"
  - "1x Jumper wires (generic)"
  - "4x Voltage Regulator Module"
  - "1x Multitool, Screwdriver"
  - "2x Arduino UNO"
tools: []
apps:
  - "1x AutoCAD"
  - "1x Arduino IDE"
downloadableFiles:
  - "https://projects.arduinocontent.cc/258b83f2-f5e1-4fa9-85f2-b081670f9101.ino"
  - "https://projects.arduinocontent.cc/258b83f2-f5e1-4fa9-85f2-b081670f9101.ino"
  - "https://projects.arduinocontent.cc/075167bb-07a4-4e70-9d04-c33d9e78f72d.ino"
  - "https://projects.arduinocontent.cc/075167bb-07a4-4e70-9d04-c33d9e78f72d.ino"
  - "https://projects.arduinocontent.cc/9d6fbd98-1ab6-49c5-9cb3-5dc3a28a08a4.ino"
documentationLinks: []
passwordHash: "eb5fafb3365d76bbc4c7eefb1d1b36b26111e7a7846b339e49bad404da574ab2"
encryptedPayload: "U2FsdGVkX1/85uvJQxLG5NMVL2F9M4SVb1yI66Vnpju1RK9fFoXV4SG4rvSqktMNXCuKo3bSmbMg7pP5W2gRNMRHn29AlYdGF4g6ANwK6AE="
seoDescription: "Automated Bike Turning Light system for cyclists. Conrad Challenge CYBER-TECH& SECURITY Silver Medal winning Arduino project."
videoLinks: []
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/automated-bike-turning-light-e0a11a_cover.jpg"
lang: "th"