โซลูชัน Race Timing โหนดเดียว FPV ราคาไม่แพง
หากคุณชอบโปรเจ็กต์นี้ คุณสามารถสนับสนุนได้โดยการมีส่วนร่วมกับโค้ดเบส ทดสอบและให้ข้อเสนอแนะ แบ่งปันแนวคิดใหม่ๆ และช่วยเผยแพร่ข่าวประเสริฐของ PhobosLT คุณยังสามารถพิจารณาซื้อชาไข่มุกหรือเบียร์ให้ฉันได้ มันจะทำให้ฉันมีกำลังใจในการทำให้โครงการดีขึ้น!
Phobos LapTimer (หรือ PhobosLT) เป็นระบบจับเวลารอบที่เรียบง่ายแต่ทรงพลังสำหรับนักบิน FPV 5.8GHz ได้รับการออกแบบมาเพื่อการใช้งานส่วนบุคคลและคำนึงถึงโดรนขนาดเล็ก (2 นิ้วหรือน้อยกว่า) แต่ก็ไม่มีอะไรจะขัดขวางการใช้งานโดรนที่ใหญ่กว่าได้! เป็นอุปกรณ์สแตนด์อโลนขนาดเล็กที่ขับเคลื่อนด้วยตัวเองและสื่อสารผ่าน WiFi ด้วยโทรศัพท์ แท็บเล็ต หรือแล็ปท็อป เป้าหมายของโปรเจ็กต์คือการมีอุปกรณ์ที่ใช้งานง่ายและขนาดเล็กที่สามารถใช้งานได้ทุกที่เมื่อใดก็ตามที่คุณต้องการฝึกซ้อมการแข่งขันโห่ร้องในห้องนั่งเล่นหรือที่สถานที่ฝึกซ้อมในพื้นที่กับเพื่อน ๆ โดยไม่ยุ่งยาก บางส่วนของรหัสจะขึ้นอยู่กับ RotorHazard และ ExpressLRS ขอชื่นชมผู้ที่อยู่เบื้องหลังองค์กรเหล่านี้ พวกเขากำลังทำสิ่งต่างๆ มากมายให้กับชุมชน และกำลังกำหนดอนาคตของ FPV หากคุณยังไม่รู้จักโครงการเหล่านี้และมีเวลา ลองดูสิ!
PhobosLT มีคุณสมบัติดังต่อไปนี้:
ไทม์มิ่งโหนดเดียวของระบบอะนาล็อก, HDZero, Walksnail ความเร็ว 5.8GHz
คำบรรยายเสียง ไม่จำเป็นต้องรวมชื่อนักบินด้วย
การอ่านและการสอบเทียบ RSSI แบบเรียลไทม์ ช่วยให้สามารถจับเวลาได้แม้ในพื้นที่ขนาดเล็ก เช่น ห้องขนาด 16 ม.^2 หรือ 200 ฟุต^2
2 รอบติดต่อกันและ 3 รอบติดต่อกันและตัวเลือกการอ่านข้อมูลได้ทันที (พัฒนาเป็นพิเศษสำหรับ RaceGOW)
ประวัติรอบที่สามารถดูได้
ความสามารถในการตั้งเวลารอบที่วัดได้น้อยที่สุดเพื่อหลีกเลี่ยงผลบวกลวง
สัญญาณเตือนแรงดันต่ำที่กำหนดค่าได้
ขนาดเล็ก ง่ายต่อการสร้าง.
ค่อนข้างถูก
ไม่จำเป็นต้องใช้แอปเพิ่มเติม โซลูชันแบบพอเพียง
แผนการพัฒนาในอนาคต:
กระพริบผ่าน WiFi หรือผ่านตัวกำหนดค่าเว็บ
ฮาร์ดแวร์แบบกำหนดเองเพื่อลดการบัดกรี
บูรณาการกับ ExpressLRS และ goggle VRX เพื่อส่งต่อเวลารอบไปยัง OSD
บูรณาการกับ RotorHazard เพื่อวัดเวลาแยก
รองรับนักบินหลายคนในเวลาเดียวกันโดยมีต้นทุนความแม่นยำต่ำกว่า
แกนหลักของโครงการคือบอร์ด ESP32 + โมดูล RX5808 ESP ทำหน้าที่เป็นเว็บเซิร์ฟเวอร์ซึ่งให้บริการหน้าเว็บที่เรียบง่ายพร้อมการกำหนดค่าทั้งหมด สามารถใช้อุปกรณ์ใดๆ ที่มีการเชื่อมต่อ WiFi และเว็บเบราว์เซอร์เพื่อเชื่อมต่อ กำหนดค่าตัวจับเวลา และวัดเวลาเป็นรอบได้
การจับเวลารอบเกิดขึ้นโดยการวัด RSSI เมื่อเวลาผ่านไป กรองและตรวจสอบจุดสูงสุดใน RSSI เนื่องจากยิ่งโดรนอยู่ใกล้ตัวจับเวลามาก RSSI ก็จะยิ่งสูงขึ้น จากนั้นเราได้ตั้งค่าเกณฑ์ Enter RSSI
และ Exit RSSI
ซึ่งจะบอกเราว่าเมื่อใดควรตัดจุดสูงสุด จากนั้นเวลาระหว่าง RSSI เข้าและออกจะใช้ในการวัดเวลาระหว่างจุดสูงสุดสุดท้ายและจุดสูงสุดปัจจุบันซึ่งเป็นรอบ
การสื่อสารกับไคลเอนต์เกิดขึ้นผ่าน WiFi ESP32 ตั้งค่าจุดเข้าใช้งานและไคลเอนต์เชื่อมต่อกับจุดนั้น RSSI ถูกส่งผ่านเว็บซ็อกเก็ตเพื่อวาดกราฟ RSSI แบบเรียลไทม์ การกำหนดค่า การโต้ตอบของผู้ใช้ และเหตุการณ์ (เช่น การเริ่มจับเวลา การหยุด การรายงานเวลารอบ) ทำได้โดยใช้การโทรที่เหลือ
เบราว์เซอร์ได้รับการใช้ประโยชน์จากการปล่อยเสียงหรือเรียกเวลารอบโดยใช้ไลบรารี articulate.js แต่สามารถติดตั้งเสียงบี๊บเสริม (แต่แนะนำ) ให้กับตัวจับเวลาเพื่อส่งเสียงทุกครั้งที่ตรวจพบจุดสูงสุดหรือเพื่อแจ้งเตือน เช่น เมื่อตัวจับเวลา แรงดันแบตเตอรี่ต่ำ
ในการสร้าง Phobos LapTimer คุณจะต้อง:
บอร์ดฝ่าวงล้อม ESP32 โดยควรมี USB โค้ดเบสเป็นแบบพลักแอนด์เพลย์กับ LilyGo T-ENERGY
ซึ่งมีสล็อตเซลล์ Li-Ion 18650 ในตัว 1 วินาทีและวงจรตรวจจับแรงดันไฟฟ้าเมื่อนำออกจากกล่อง บอร์ดที่รองรับ:
LilyGo T-ENERGY - แนะนำ
LilyGo T-CELL - แพงกว่าที่กล่าวมาข้างต้น แต่มีวงจรชาร์จ
ESP32-DevKit - กระดูกเปล่า แต่ราคาถูก
โมดูล RX5808 VRx พร้อมม็อด SPI
แหล่งจ่ายแรงดันไฟฟ้าทุกประเภท เช่น แบตเตอรี่ พาวเวอร์แบงค์ ฯลฯ โดยจะขึ้นอยู่กับโมดูล ESP32 ที่ใช้
(ทางเลือก) ไฟ LED ทุกสี (+ ตัวต้านทานที่ตรงกันเพื่อจัดการกระแสไฟฟ้า)
(ทางเลือก) ออด 3v3 ถึง 5v พร้อมเครื่องกำเนิดไฟฟ้า (แอคทีฟมากและไม่พาสซีฟ)
หากต้องการเชื่อมต่อ RX5808 กับ ESP32 ให้ใช้ตาราง pinout ด้านล่าง โปรดทราบว่าพิน +5v บน RX5808 ควรเชื่อมต่อกับแหล่งจ่ายไฟ 3v3 เพื่อลดแรงดันไฟฟ้าของ RX5808 เพื่อให้ได้ความละเอียด RSSI ที่ดีขึ้น และเพื่อช่วยระบายความร้อน:
รหัส ESP32 | RX5880 |
---|---|
33 | อาร์เอสเอสไอ |
จีเอ็นดี | จีเอ็นดี |
19 | ช1 |
22 | CH2 |
23 | ช3 |
3V3 | +5V |
ตัวเลือก แต่แนะนำ LED, Buzzer และ pinout อินพุตแรงดันไฟฟ้าของแบตเตอรี่:
รหัส ESP32 | อุปกรณ์ต่อพ่วง |
---|---|
21 | แอโนด LED (+) |
27 | ออดบวก (+) |
35 | อินพุต VBAT สูงสุด 3.3v (รหัสถือว่าตัวแบ่งแรงดันไฟฟ้า 1/2 พร้อมเซลล์ Li-Ion 1 วินาที) |
คุณสามารถดูแผนภาพการเชื่อมต่อของอุปกรณ์ต่อพ่วงด้านล่าง สำหรับ T-Energy และ T-Cell คุณเพียงแค่ต้องเชื่อมต่อ RX5808 และออดเซอร์
หรือคุณสามารถขอให้ชุมชนสร้างตัวจับเวลาให้กับคุณได้ ถามรอบ Discord!
ขณะนี้การสร้างเฟิร์มแวร์เกิดขึ้นผ่าน Visual Studio Code การตั้งค่า Toolchain จะเหมือนกับ ExpressLRS ทุกประการ ดังนั้นหากคุณมีการตั้งค่าและใช้งาน Toolchain ของ ExpressLRS อยู่แล้ว คุณก็ควรจะทำได้ดี ข้อกำหนดในการสร้างเฟิร์มแวร์มีดังนี้:
รหัสวิชวลสตูดิโอ
แพลตฟอร์มIO.
คอมไพล์
ทำตามขั้นตอนเหล่านี้เพื่อตั้งค่า toolchain บนคอมพิวเตอร์ของคุณ:
ดาวน์โหลดและติดตั้ง vscode.
เปิด vscode และคลิกที่ไอคอน Extensions
ในแถบเครื่องมือทางด้านขวา (ดูการจัดการส่วนขยาย)
ในช่องค้นหา ให้ป้อน platformio และติดตั้งส่วนขยาย (ดูเอกสารประกอบ pio install
)
ติดตั้งคอมไพล์
ขั้นตอนสุดท้ายก่อนที่คุณจะสามารถสร้างเฟิร์มแวร์ได้คือการโคลนพื้นที่เก็บข้อมูลนี้ไปยังคอมพิวเตอร์ของคุณ:
ใน VSCode ให้เปิดชุดคำสั่ง (โดยใช้ Cmd+Shift+P
บน MacOS หรือ Ctrl+Shift+P
บน Windows)
เข้าสู่ Git: Clone
คลิกมัน
จากนั้น ป้อน URL repo ของ PhobosLT (สามารถพบได้ที่ด้านบนของหน้า github ใต้ปุ่ม Clone
)
เลือกโฟลเดอร์ที่คุณต้องการให้สำเนาของที่เก็บอยู่
หากต้องการสร้างเฟิร์มแวร์ ให้คลิกไอคอน PlatformIO
ในแถบเครื่องมือทางด้านซ้าย ซึ่งจะแสดงรายการงาน ตอนนี้ เลือก Project Tasks
ขยาย PhobosLT
-> General
และเลือก Build
คุณควรเห็นผลลัพธ์ในเทอร์มินัลหลังจากผ่านไปไม่กี่วินาที ( Success
)
ก่อนที่จะพยายามแฟลช ตรวจสอบให้แน่ใจว่ามีการเชื่อมต่อระหว่าง ESP32 และคอมพิวเตอร์ผ่าน USB การกระพริบเป็นกระบวนการสองขั้นตอน ก่อนอื่นเราต้องแฟลชเฟิร์มแวร์ จากนั้นจึงอิมเมจระบบไฟล์แบบคงที่ไปยัง ESP32
หากต้องการแฟลชเฟิร์มแวร์ ให้คลิกไอคอน PlatformIO
ในแถบเครื่องมือทางด้านซ้าย ซึ่งจะแสดงรายการงาน ตอนนี้ เลือก Project Tasks
ขยาย PhobosLT
-> General
และเลือก Upload
คุณควรเห็นผลลัพธ์ในเทอร์มินัล ( Success
) จากนั้นไปที่ขั้นตอนที่ 2
เลือก Project Tasks
ขยาย PhobosLT
-> Platform
และเลือก Upload Filesystem Image
รอผลลัพธ์ในเทอร์มินัลว่า Success
แค่นั้นแหละ! ตัวจับเวลาของคุณพร้อมใช้งานแล้ว
หากมีสิ่งผิดปกติเกิดขึ้น โปรดตรวจสอบ Terminal ด้วย อย่างน้อยก็จะมีคำใบ้ว่าปัญหาคืออะไร โปรดสอบถามชุมชนเพื่อขอความช่วยเหลือเพิ่มเติมเกี่ยวกับความไม่ลงรอยกัน!
เคส ESP-WROOM-32 โดย porlock
เนื้อหาในส่วนนี้จะอธิบายการใช้งานและการกำหนดค่าตัวจับเวลา แอพประกอบด้วย 3 หน้าและใช้งานง่ายมาก!
เปิดเครื่องจับเวลา คุณจะได้ยินเสียงบี๊บสั้นและยาว
เปิดอุปกรณ์ของคุณและเปิด WiFi
รอให้เครื่องค้นพบจุดเชื่อมต่อ WiFi ที่ขึ้นต้นด้วย PhobosLT_xxxx
คลิกที่มันและพิมพ์รหัสผ่าน: phoboslt
ควรเชื่อมต่อและเปิดหน้าต่างเบราว์เซอร์ด้วยแอปสำหรับคุณ หากไม่เกิดขึ้น ให้เปิดเบราว์เซอร์แล้วพิมพ์ 20.0.0.1
เอาล่ะ!
ในการกำหนดค่าตัวจับเวลาคุณต้องคลิกที่ปุ่ม Configuration
คุณควรได้รับการต้อนรับด้วยหน้าจอที่คล้ายกับสิ่งนี้:
ด้านล่างนี้คุณจะพบพารามิเตอร์การกำหนดค่าทั้งหมดและคำอธิบาย:
Channel and Band - ตั้งค่าเป็น Band และ Channel เดียวกันกับโดรนของคุณ แบนด์ที่รองรับ - A, B, E, Fatshark, RaceBand และ LowBand อย่างละ 8 แชนเนล ความถี่ - นี่คือฟิลด์คงที่ที่จะแสดงความถี่ตามแบนด์และช่องสัญญาณที่ตั้งไว้ เวลารอบขั้นต่ำ - คุณสามารถตั้งเวลารอบขั้นต่ำที่สามารถจับเวลาได้ วิธีนี้จะหลีกเลี่ยงผลบวกลวงเมื่อคุณชนที่ประตูสตาร์ท หรือเมื่อเส้นทางของคุณคับแคบมากและคุณบินใกล้กับตัวจับเวลาหลายครั้งในระหว่างหนึ่งรอบ เกณฑ์การเตือนแรงดันแบตเตอรี่ - ตั้งค่าการเตือนแรงดันแบตเตอรี่ที่จะทริกเกอร์เมื่อถึงแรงดันไฟฟ้าที่ต้องการ ช่วงอยู่ระหว่าง 2.5-4.2v. ประเภทผู้ประกาศ - คุณมีตัวเลือกสองสามตัวเลือกว่าต้องการให้ตัวจับเวลารายงานเวลารอบอย่างไร:
None
ไม่มีเสียงเลย
Beep
จะส่งเสียงบี๊บสั้น ๆ เมื่อข้ามทางม้าลายเพื่อแจ้งให้คุณทราบว่าได้ลงทะเบียนรอบแล้ว
Lap Time
จะประกาศเวลารอบ (รวมถึงชื่อนักบินของคุณหากกรอกช่อง ชื่อนักบิน )
Two Consecutive Lap Time
จะประกาศเวลารอบสองครั้งติดต่อกัน
Three Consecutive Lap Time
จะประกาศเวลารอบสามครั้งติดต่อกัน
อัตราผู้ประกาศ - ควบคุมความเร็วของผู้ประกาศที่อ่านเวลารอบ ชื่อนักบิน - เมื่อกรอกแล้วจะรวมชื่อนักบินเมื่ออ่านเวลา เช่น Pilot1 23.45
จะมีประโยชน์เมื่อมีตัวจับเวลามากกว่าหนึ่งตัวทำงานในเวลาเดียวกัน เมื่อฝึกคนเดียวก็ปล่อยว่างไว้
หมายเหตุ: เมื่อกำหนดค่าแล้ว อย่าลืมบันทึกการกำหนดค่าโดยคลิกที่ปุ่ม Save Configuration
ไม่เช่นนั้นการเปลี่ยนแปลงจะไม่มีผล
การปรับเทียบเป็นขั้นตอนที่สำคัญมากและต้องทำอย่างถูกต้องเพื่อให้แน่ใจว่าการจับเวลาเกิดขึ้นอย่างถูกต้อง และทุกรอบจะถูกนับด้วยตัวจับเวลา
ในการดำเนินการสอบเทียบให้คลิกที่ปุ่ม Calibration
คุณควรจะเห็นแถบเลื่อนสองตัวและกราฟที่แสดงถึง RSSI เมื่อเวลาผ่านไป คุณสามารถนึกถึง RSSI ว่าเป็นค่าผกผันของระยะห่างระหว่างโดรนกับตัวจับเวลา RSSI ยิ่งสูง ระยะทางก็จะยิ่งสั้นลง
โหนดสามารถเป็นได้ทั้ง Crossing
หรือ Clear
หากโหนดเป็น Clear
ตัวจับเวลาจะเชื่อว่าโดรนไม่ได้อยู่ใกล้ตัวจับเวลาเนื่องจาก RSSI ต่ำ หากเป็น Crossing
ตัวจับเวลาจะเชื่อว่าโดรนกำลังผ่านไปตามตัวจับเวลาเนื่องจาก RSSI สูง การผ่านรอบจะถูกบันทึกเมื่อ Crossing
เสร็จสิ้น และ RSSI กลับสู่โซน Clear
เราปรับเทียบสิ่งนั้นโดยการตั้งค่าเกณฑ์ Enter
และ Exit
RSSI
ตัวจับเวลาที่ปรับเทียบอย่างดีจะแสดงเวลารอบเมื่อเรามีเพียงทางเดียวเท่านั้น โดยที่โดรนอยู่ใกล้กับตัวจับเวลามากที่สุด เช่น:
Crossing
จะถูกทำเครื่องหมายด้วยสีเขียวเข้มเสมอ ในขณะที่ Clear
จะเป็นสีน้ำเงิน
เพื่อให้ได้ค่าเริ่มต้นที่ดีสำหรับ Enter
และ Exit
RSSI ให้ทำตามขั้นตอนเหล่านี้:
เปิดเครื่องจับเวลาและโดรนของคุณ ตั้งกำลัง VTx ที่ต้องการ รอ 30 วินาทีเพื่อให้ VTx ถึงอุณหภูมิที่ทำงาน
วางโดรนให้ห่างจากประตูมากกว่าหนึ่งประตูเล็กน้อยเหนือตัวจับเวลา
สังเกต RSSI หัก 2-5 คะแนนเพื่อความปลอดภัย - นั่นควรเป็น Enter RSSI
ของคุณ
หักอีก 8-10 คะแนนแล้วตั้งเป็น Exit RSSI
ของคุณ
คลิกที่ Save RSSI Thresholds
- มิฉะนั้นการเปลี่ยนแปลงจะไม่มีผล
เมื่อบินร่วมกับนักบินคนอื่นๆ การอ่าน RSSI อาจลดลงเนื่องจากเสียงรบกวนทั้งหมดที่เกิดจาก VTx อื่นๆ บนช่องสัญญาณที่อยู่ติดกัน แนวทางปฏิบัติที่ดีคือลดเกณฑ์ทั้งสองลงสองสามจุดเมื่อบินร่วมกับนักบินคนอื่นๆ ในอากาศ
หน้าจอการแข่งขันจะทำให้คุณสามารถเริ่มหรือหยุดการแข่งขันและดูและล้างเวลารอบของคุณได้ เมื่อคลิกที่ปุ่ม Race
หน้าจอจะเปลี่ยนเป็น:
ฟังก์ชั่นของปุ่ม:
Start Race
- คลิกเพื่อเริ่มนับถอยหลังและส่งสัญญาณให้จับเวลาเพื่อเริ่มนับรอบ
Stop Race
- กดเมื่อคุณต้องการหยุดนับรอบใหม่ ยังไม่เคลียร์รอบที่รวบรวมได้จนถึงตอนนี้
Clear Laps
- ล้างรอบบนหน้าจอ สามารถทำได้ในขณะที่การแข่งขันกำลังดำเนินอยู่เช่นกัน
เมื่อคุณวิ่งสองสามรอบ หน้าจอจะแสดงเวลารอบ:
เข้าร่วมช่อง Discord ของเราเพื่อรับการสนับสนุนและคำถามหรือเพียงแค่ออกไปเที่ยว! ยินดีต้อนรับทุกคน!