สารบัญ:
- ขั้นตอนที่ 1: ชิ้นส่วน
- ขั้นตอนที่ 2: วางสายทุกอย่างขึ้น
- ขั้นตอนที่ 3: กำหนดค่า Raspberry Pi ของคุณ
- ขั้นตอนที่ 4: มาเริ่มการเข้ารหัสกันเถอะ
วีดีโอ: Pike - ขับปลอดภัยยิ่งขึ้น ขับอย่างชาญฉลาดยิ่งขึ้น ขับหอก!: 5 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
ยินดีต้อนรับสู่โครงการของฉันชื่อ Pike!
นี่เป็นโครงการที่เป็นส่วนหนึ่งของการศึกษาของฉัน ฉันเป็นนักเรียน NMCT ที่ Howest ในเบลเยียม เป้าหมายคือการทำสิ่งที่ชาญฉลาดโดยใช้ Raspberry Pi เรามีอิสระเต็มที่ในการทำให้ฉลาดขึ้น
สำหรับฉัน มันเป็นตัวเลือกที่ง่ายที่จะทำให้จักรยานของฉันฉลาดขึ้นเล็กน้อย ฉันอาศัยอยู่ในสถานที่ที่การขี่จักรยานทำให้ฉันไปถึงจุดหมายในเมืองได้เร็วขึ้น
ครั้งหนึ่งฉันเคยล้มจักรยานด้วย ฉันหักข้อศอกของฉัน ล้มเพราะชี้คนขับข้างหลังว่าอยากไปทางขวา ถนนลื่นและฉันสูญเสียการควบคุมเพราะฉันมีพวงมาลัยเพียงข้างเดียว นั่นเป็นเหตุผลที่ความคิดแรกของฉันคือการติดไฟบอกทิศทางเข้ากับจักรยานของฉัน จากตรงนั้น ฉันเริ่มคิดว่าฉันจะเพิ่มอะไรได้อีก ดังนั้นฉันจึงคิดหา GPS-tracking เพื่อให้คุณสามารถดูเส้นทางที่คุณใช้ได้ในภายหลัง
แล้วไพค์ทำอะไรได้บ้าง?
Pike จะเก็บบันทึกการขับขี่ของคุณ มันจะติดตามเส้นทางที่คุณใช้ โดยจะคำนวณความเร็วเฉลี่ยและระยะทางที่คุณขับ หลังจากแต่ละเซสชั่น คุณสามารถล็อกอินเข้าสู่เว็บไซต์เพื่อตรวจสอบว่ารถของคุณอยู่ที่ไหนและเป็นอย่างไร นอกจากนี้เรายังจะสร้างบางสิ่งบางอย่างเพื่อให้คุณสามารถเลือกได้ว่าใครที่จะขี่จักรยานเพื่อให้ผู้คนจำนวนมากขึ้นสามารถใช้ Pike ของคุณได้หากต้องการ!
ขั้นตอนที่ 1: ชิ้นส่วน
เห็นได้ชัดว่าคุณจำเป็นต้องรู้ว่าคุณต้องการอะไรเพื่อสร้างโครงการของฉันขึ้นใหม่ ก่อนที่เราจะเริ่มต้นฉันอยากจะบอกว่าโครงการนี้ไม่ถูกอย่างแน่นอน ฉันยังซื้อสายไฟที่ร้านค้าในท้องถิ่นซึ่งมีราคาแพงเกินไป คุณสามารถซื้อออนไลน์ได้ในราคาสองยูโร/ดอลลาร์ (ซึ่งฉันแนะนำให้คุณทำ) ฉันไม่มีเวลารอ นั่นเป็นเหตุผลที่ฉันซื้อมันจากร้านค้าในพื้นที่ของฉันในราคาที่สูง
รายการช้อปปิ้ง
- ราสเบอร์รี่ปี่
- สายจัมเปอร์
- Powerbank จะทำอะไรก็ได้ตราบเท่าที่มันให้พลังงาน Pi ของคุณเพียงพอ
- Maxxter Smartphone Holder (อันที่ถูกที่สุดที่คุณสามารถหาได้…)
- Maxxter Smartphone Holder (ตัวกลมสีขาวราคาถูกมากสำหรับใส่หลอดพลาสติกของฉันด้วย)
- ท่อพลาสติก (เจาะรูเพื่อให้พอดีกับปุ่มที่ใส่ในที่วางสมาร์ทโฟนเพื่อติดบนพวงมาลัย)
- ปุ่ม*
- ตัวต้านทาน 6x 220 Ω
- ตัวต้านทาน 1x 5K Ω
- จอ LCD
- DS18B20 One Wire Temperature Sensor
- โมดูล GPS Adafruit Ultimate Breakout 66 Channel
- เสาอากาศ GPS - เสาอากาศแอ็คทีฟภายนอก - 3-5V 28db พร้อมสาย SMA 5 เมตร (เพื่อขยายสัญญาณ GPS)
- อะแดปเตอร์ uFLto SMA (เพื่อเชื่อมต่อเสาอากาศเสริมกับโมดูล GPS ของ Adafruit)
หมายเหตุ:
* ที่คุณเห็นในภาพเป็นชิ้นโลหะ อาจไม่ใช่แบบที่เหมาะที่สุด แต่เป็นของที่พวกเขามีที่ร้านในพื้นที่ของฉัน คุณสามารถใช้ปุ่มกันน้ำได้อย่างเต็มที่ แต่นั่นเป็นชิ้นละ 15 ยูโรซึ่งฉันคิดว่าราคาแพงสำหรับปุ่ม คุณสามารถซื้อปุ่มใดก็ได้ที่คุณต้องการตราบใดที่มันใช้งานได้กับระบบดึงขึ้นคุณก็จะใช้ได้
ขั้นตอนที่ 2: วางสายทุกอย่างขึ้น
มันไม่ได้ยากขนาดนั้น เนื่องจากโมดูล GPS เชื่อมต่อกับ USB คุณสามารถเห็นในภาพด้านบนว่าคุณสามารถจับคู่สีกับสายเคเบิลบนอะแดปเตอร์ USB ได้ ปุ่มและไฟ LED เชื่อมต่อกับ 220 Ω เซ็นเซอร์อุณหภูมิ DS18B20 ต่อสายเข้ากับตัวต้านทาน 5K Ω
ขั้นตอนที่ 3: กำหนดค่า Raspberry Pi ของคุณ
ก่อนอื่น คุณต้องมี Raspbian ซึ่งคุณสามารถเรียนรู้ได้ที่นี่ และหลังจากนั้น คุณต้องทำตามขั้นตอนในที่เก็บนี้
กำหนดการฐานข้อมูลของฉันมีน้อยมาก ประกอบด้วย 4 ตาราง:
-
tbluser
- UserID (tinyint, 2) AUTO INCREMENT, ไม่ได้ลงนาม
- ชื่อผู้ใช้ (varchar, 175)
- เข้าสู่ระบบผู้ใช้ (varchar, 180)
- รหัสผ่านผู้ใช้ (varchar, 255)
- UserActive (tinyint, 1) ไม่ได้ลงนาม
-
tblsession
- SessionID (int, 10) เพิ่มอัตโนมัติ, ไม่ได้ลงนาม
- SessionDate (วันที่)
- UserID
-
tblsensor
- SensorID (tinyint, 3) เพิ่มอัตโนมัติ, ไม่ได้ลงนาม
- ชื่อเซ็นเซอร์ (varchar, 150)
-
tblhistory
- HistoryID (bigint, 20) AUTO INCREMENT, ไม่ได้ลงนาม
- SensorID
- รหัสเซสชัน
- HistoryValue (varchar, 255)
- ประวัติศาสตร์เวลา (เวลา 3)
แต่คุณยังสามารถดูที่ไฟล์ดัมพ์.sql
ขั้นตอนที่ 4: มาเริ่มการเข้ารหัสกันเถอะ
คุณสามารถค้นหารหัสของฉันเพื่อให้โครงการทำงานที่นี่
จีพีเอส
การเริ่มต้นใช้งานโมดูล GPS นั้นง่ายมาก สิ่งที่คุณต้องทำคือติดตั้งแพ็คเกจ gpsd-py3 ใน Python Environment ของคุณ จากนั้นคุณสามารถใช้ห้องสมุดนี้เพื่อทำให้ชีวิตของคุณง่ายขึ้น คุณสามารถใช้ตัวอย่างการเข้ารหัสเพื่อรับข้อมูล เช่น พิกัดยาว ละติจูด ความเร็ว ฯลฯ จาก GPS ของคุณ
LCD-จอแสดงผล
เพื่อให้จอ LCD ทำงานได้ คุณต้องติดตั้งไลบรารีจาก Adafruit ตัวอย่างการเข้ารหัสสามารถพบได้ที่นี่
DS18B20 เซนเซอร์วัดอุณหภูมิแบบสายเดียว
หากต้องการค้นหาเซ็นเซอร์แบบสายเดียว คุณจะต้องทำงานเพิ่มขึ้นอีกเล็กน้อย ก่อนอื่นเราต้องเปิดใช้งานบัสสายเดียว โดยทำตามขั้นตอนต่อไปนี้:
- sudo raspi-config
- ตัวเลือกการเชื่อมต่อ
- 1-Wire
ในการเริ่มอ่านข้อมูลจากเซ็นเซอร์ เราจำเป็นต้องรู้ว่าสายเส้นเดียวของเราถูกเรียกอย่างไร ถึงประเภทนี้ใน cd /sys/bus/w1/devices/
คุณจะเห็นอุปกรณ์สองเครื่อง หนึ่งคือ Raspberry Pi และอีกเครื่องหนึ่งควรมีลักษณะประมาณ 28-0… เป็นต้น สตริงตัวเลขและตัวอักษรยาวๆ นั้นเป็นวิธีที่คุณจะสามารถอ่านข้อมูลใน Python ได้ หากต้องการอ่านข้อมูลใน python คุณจะต้องเปิดเป็นไฟล์ ดังนั้นพาธในการเปิดไฟล์ควรมีลักษณะดังนี้: /sys/bus/w1/devices/28-04177032d4ff/w1_slave.
ปุ่มและไฟ LED
นี่เป็นฟังก์ชันพื้นฐาน คุณสามารถดูโค้ดของฉันได้ในโฟลเดอร์ Classes นี้
คำสั่ง SQL
เกือบทุกคำสั่งเป็นคำสั่ง SQL พื้นฐาน อย่างไรก็ตาม ฉันอยากจะอธิบายเล็กน้อยเกี่ยวกับวิธีที่ฉันบันทึกค่าของเซ็นเซอร์ไว้ ฉันเพิ่มเซ็นเซอร์ด้วยตนเองใน tblsensors ของฉัน ดังนั้นฉันจึงรู้ว่าเซ็นเซอร์ใดมี ID ดังนั้นฉันจึงติดตามลองจิจูด ละติจูด และความเร็วของฉัน สำหรับทุกค่าฉันสร้างฟังก์ชันที่แตกต่างกัน ฉันจะสร้างคำสั่ง sql 3 คำสั่งที่เหมือนกัน แต่ขึ้นอยู่กับว่าต้องการเก็บค่าใด ฉันเปลี่ยนคำสั่ง WHERE
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: ในบทช่วยสอนนี้ ฉันจะแสดงขั้นตอนสำคัญในการติดตั้งปลั๊กอิน WordPress ให้กับเว็บไซต์ของคุณ โดยทั่วไป คุณสามารถติดตั้งปลั๊กอินได้สองวิธี วิธีแรกคือผ่าน ftp หรือผ่าน cpanel แต่ฉันจะไม่แสดงมันเพราะมันสอดคล้องกับ
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
เครื่อง Rube Goldberg 11 ขั้นตอน: 8 ขั้นตอน
เครื่อง 11 Step Rube Goldberg: โครงการนี้เป็นเครื่อง 11 Step Rube Goldberg ซึ่งออกแบบมาเพื่อสร้างงานง่ายๆ ในรูปแบบที่ซับซ้อน งานของโครงการนี้คือการจับสบู่ก้อนหนึ่ง