หน้าแรก ดูโปรเจกต์ทั้งหมด
Hard

โปรเจกต์ Solar Powered LED Parking Sensor

จอดรถของคุณด้วยความช่วยเหลือจากพลังงานของดวงอาทิตย์!

โปรเจกต์ Solar Powered LED Parking Sensor

วิดีโอสาธิต

Video

▶ กดเพื่อดูวิดีโอสาธิตโปรเจกต์

รายการอุปกรณ์และเครื่องมือ

1x 3D Printer (generic)
-
1x Drill / Driver, Cordless
-
1x SparkFun Solder-able Breadboard
-
1x Soldering iron (generic)
-
1x Arduino Nano R3
-
1x Ultrasonic Sensor - HC-SR04 (Generic)
-
1x LED Strip, NeoPixel Digital RGB
-

รายละเอียดและวิธีทำ

รับชมวิดีโอนี้เพื่อดูภาพรวมสั้นๆ:

ภาพรวมของโปรเจกต์

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

เมื่อออกแบบเสร็จแล้ว ผมตัดสินใจใช้พลังงานจาก Solar panels เพราะผมมีจุดที่เหมาะสมในการติดตั้ง และมีแผนที่จะขยายระบบนี้เพื่อจ่ายไฟให้กับอุปกรณ์อื่นๆ ในโรงจอดรถเพิ่มในอนาคต

อุปกรณ์:

กล่องใส่และตัวกระจายแสง LED จากการ 3D printed

คลิปจัดระเบียบสายไฟจากการ 3D printed

Arduino Nano, Breadboard และ Jumper Wires

Solar Power Manager

Solar panels

Solderable Breadboard, 2 wire connecter, 3 wire connector, 4 wire connector

LED strip (60/m) WS2812

14500 Lithium Ion batteries

ไขควงไฟฟ้า

Ultrasonic Sensor

เทปกาวสองหน้า, เทปพันสายไฟแบบเหลว (Liquid Electrical Tape)

คีมปอกสายไฟ, หัวแร้งบัดกรี

เครื่องพิมพ์ 3D printer

เครื่องเป่าลมร้อน (Hot air gun)

สกรู M3x8mm, น็อต M3

*ลิงก์ทั้งหมดเป็นลิงก์แนะนำสินค้า (affiliate links)

ขั้นตอนที่ 1: การต่อวงจร + เขียน Code

ดาวน์โหลดและติดตั้ง Arduino sketch ได้ที่นี่: Parking Sensor Sketch

วงจรประกอบด้วย Ultrasonic Sensor, Arduino Nano และ LED strip แบบ Addressable รุ่น WS2812B 5V ในตอนแรกผมกังวลเกี่ยวกับการใช้ Ultrasonic Sensor เพราะพื้นผิวของรถไม่เรียบ แต่หลังจากการทดสอบเบื้องต้น พบว่ามันไม่ใช่ปัญหา

เชื่อมต่ออุปกรณ์เข้ากับ Pins ของ Arduino ตามที่ระบุ (หรือเปลี่ยนใน Code ที่บรรทัด 5-7):

LED strip -> pin 8

Ultrasonic Sensor Trig -> pin 12

Ultrasonic Sensor Echo -> pin 11

ในการปรับแต่ง Code ให้เหมาะกับการใช้งานของคุณ คุณสามารถเปลี่ยนบรรทัดต่อไปนี้ได้:

9: ระยะทางเป็นหน่วย cm ที่จะให้ไฟเปิด

10: ระยะที่เป็นเกณฑ์เพื่อแจ้งให้ทราบว่าคุณเริ่มเข้าใกล้แล้ว

11: ระยะทางเป็นหน่วย cm ที่แจ้งให้ทราบว่าอยู่ในระยะที่ปลอดภัย

12: ที่ระยะนี้ ไฟจะเริ่มเปลี่ยนเป็นสีม่วง เพื่อบอกให้คุณหยุด

13: ที่ระยะนี้ ไฟจะเริ่มกะพริบ เพื่อบอกว่าคุณอยู่ใกล้เกินไปแล้ว

ตัวเลขอื่นๆ ที่ควรปรับแต่ง:

15: ระยะเวลาเป็นวินาทีที่จะรอก่อนที่ไฟจะปิดหลังจากรถหยุดเคลื่อนที่ และ Arduino จะเข้าสู่ Low Power Mode

17: ตัวเลขนี้แสดงถึงค่าความคลาดเคลื่อนของระยะทางที่ยอมรับได้ ก่อนที่ Sensor จะตรวจจับการเคลื่อนไหวและกลับมาทำงานอีกครั้ง

ผมใช้ Library "Low Power" เพื่อให้ Arduino อยู่ในสถานะ Sleep เมื่อไม่ได้ใช้งาน คู่มือจาก Sparkfun นี้จะอธิบายภาพรวมการทำงาน และคุณสามารถดาวน์โหลดเพื่อติดตั้งได้ที่นี่: Low Power Library สิ่งที่ผมพบคือ Library นี้รบกวนการทำงานของ Serial monitor ดังนั้นคุณจะไม่สามารถใช้งาน Serial monitor ได้หากมีการรวมและใช้งาน Low Power Library อยู่ในโปรเจกต์

ขั้นตอนที่ 2: การบัดกรีวงจร

ย้ายส่วนประกอบของวงจรไปยังแผ่นเอนกประสงค์ (Prototype board) และบัดกรีให้เข้าที่ บัดกรีคอนเนกเตอร์ JST แบบ 4 Pin สำหรับ Ultrasonic Sensor และ JST แบบ 3 Pin สำหรับ LED strip นอกจากนี้ผมยังเพิ่มคอนเนกเตอร์ JST แบบ 2 Pin เข้ากับ 5V และ Ground เพื่อจ่ายไฟให้กับอุปกรณ์และ Arduino จากภายนอก

ขั้นตอนที่ 3: การติดตั้ง Ultrasonic Sensor

หัก Header strip ตัวเมียมา 4 Pin งอขาแล้วบัดกรีเข้ากับคอนเนกเตอร์แบบ 4 Pin เพื่อให้สามารถเสียบเข้ากับ Ultrasonic Sensor ได้ จากนั้นทาด้วย Liquid Electrical Tape

ทำเครื่องหมายตำแหน่งสำหรับ Sensor และ LED strip บนตู้ที่จะทำการติดตั้ง ติดฐานยึด Ultrasonic Sensor ที่ 3D printed มาเข้ากับตำแหน่งที่เลือกด้วยเทปกาวสองหน้า เจาะรูที่ผนังเพื่อร้อยสายไฟผ่านไป

ขั้นตอนที่ 4: การติดตั้ง LED Strip

ตัด LED strip ให้ได้ความยาวที่ต้องการ (ของผมใช้ 20 LEDs และมีระยะห่าง 60 LEDs/m) บัดกรีคอนเนกเตอร์ 3 Pin เข้ากับฝั่ง Input และทาด้วย Liquid Electrical Tape

หากคุณติดตั้ง LED ลงบนผนังโดยตรง แสงจากพิกเซลจะมีมุมมองที่จำกัด ทำให้แสงสูญเสียไปโดยเปล่าประโยชน์ คุณสามารถเห็นความแตกต่างได้จากรูปด้านบน ฝาครอบที่ผมออกแบบมาเพื่อกระจายแสงมีความหนาประมาณ 0.5 มม. ซึ่งดูเหมือนจะให้ความสมดุลที่เหมาะสมระหว่างความสว่างและระดับการกระจายแสง

เลือกจุดที่คุณต้องการติดตั้ง LED ตามอุดมคติแล้วควรอยู่ตรงหน้าคนขับ และอยู่ในระดับสายตาจากที่นั่งคนขับ ประกอบชิ้นส่วนด้านหลังของตัวยึดทั้งสองชิ้นเข้าด้วยกัน สอด LED strip เข้าไปในตัวยึด ลอกแถบกาวด้านหลัง LED strip ออก แล้วกดให้เข้าที่ จากนั้นสอดฝาครอบเข้ากับตัวยึดและใช้เทปกาวสองหน้าเพื่อติดตั้งเข้ากับตำแหน่งที่เลือก

หมายเหตุ: Sketch นี้ถูกโปรแกรมมาสำหรับ 20 LEDs ดังนั้นหากคุณใช้จำนวนที่ต่างออกไป อย่าลืมเปลี่ยนตัวเลขในบรรทัดที่ 5 ให้ตรงกัน หากคุณใช้จำนวน LED เป็นเลขคี่ ระบบก็ยังถูกตั้งค่าให้ทำงานได้ตามปกติ

ขั้นตอนที่ 5: การติดตั้ง Arduino และการเชื่อมต่อทั้งหมด

ใช้สกรู M3 และน็อตสองตัวเพื่อยึด Solderable Breadboard เข้ากับกล่อง ใส่คอนเนกเตอร์ผ่านช่องเปิดด้านข้าง และขันสกรูฝาปิดให้เข้าที่

เลือกจุดที่สะดวกในการติดตั้งกล่องใกล้กับ LED และ Ultrasonic Sensor จากนั้นใส่สกรูเพื่อให้คุณสามารถแขวนกล่องได้โดยใช้ตัวยึดแบบรูห้อย (Keyhole mount) ผมติดตั้งไว้ใกล้กับ Ultrasonic Sensor โดยตรงเพื่อหลีกเลี่ยงการต้องทำสายต่อพ่วงแบบ 4 เส้นสำหรับ Sensor

เชื่อมต่อ Sensor และ LED เข้าด้วยกัน ใช้ขาจัดระเบียบสายไฟจากการ 3D printed เพื่อช่วยในการจัดการสายไฟ และเพื่อป้องกันไม่ให้สายไฟเคลื่อนที่ได้มากเกินไป

ขั้นตอนที่ 6: การเพิ่ม Solar Panels

ผมตัดสินใจเพิ่มพลังงานแสงอาทิตย์ให้กับโปรเจกต์นี้เพื่อจะได้ไม่ต้องกังวลเรื่องแบตเตอรี่ และไม่ต้องเสียบปลั๊กกับผนังทิ้งไว้ตลอดเวลา ระบบ Solar นี้ถูกออกแบบมาเป็นโมดูล ดังนั้นผมจึงวางแผนที่จะทำโปรเจกต์ในโรงจอดรถเพิ่มขึ้นซึ่งจะดึงพลังงานจากจุดนี้ และผมสามารถอัปเกรด Solar panels หรือ Charge controller และแบตเตอรี่ได้ตามต้องการ

Solar Power Manager ที่ใช้ในโปรเจกต์นี้ต้องการ Voltage ขั้นต่ำ 6V และกำลังไฟอย่างน้อย 5W เพื่อชาร์จแบตเตอรี่ สิ่งที่ท้าทายสำหรับโปรเจกต์ Solar ขนาดเล็กคือ แบตเตอรี่ Lithium Ion ต้องการ Current อย่างน้อย 1 Amp เพื่อทำการชาร์จ ในกรณีนี้ผมมีแผง 5V สองแผงที่ระบุไว้ที่ 0.5A ต่อแผง เนื่องจาก Power manager ต้องการอย่างน้อย 6V แผงทั้งสองจึงต้องถูกต่อแบบอนุกรม (Series) เพื่อรวม Voltage เข้าด้วยกัน ในการต่อแบบนี้ Current จะยังคงอยู่ที่ 0.5A แต่เนื่องจากกำลังไฟรวมจากทั้งสองแผงคือ 5W เมื่อ Charge controller ลด Voltage ลง มันจะมี Current เพียงพอที่จะชาร์จแบตเตอรี่

หมายเหตุ: Voltage ของ Solar panel มีความผันผวนอย่างมากตลอดทั้งวัน และจะพุ่งสูงกว่า Voltage ที่ระบุไว้ ด้วยเหตุนี้คุณจึงไม่ควรเชื่อมต่อ Arduino หรือแบตเตอรี่เข้ากับแผงโดยตรง

ใช้สายไฟบัดกรีแผงแบบอนุกรม และเพิ่มคอนเนกเตอร์ JST 2 Pin เพื่อให้คุณสามารถเชื่อมต่อและถอดออกจาก Power manager ได้ง่าย หาพื้นผิวเรียบที่ได้รับแสงแดดมากเพื่อติดตั้งแผง สำหรับผม ผมมีจุดที่สามารถใช้เทปกาวสองหน้าติดลงไปได้ง่าย ผมทำความสะอาดพื้นผิวก่อนแล้วจึงติดแผงลงไป การยึดเกาะดูแข็งแรงพอ แต่เวลาจะบอกเองว่ามันเพียงพอที่จะทนต่อลมแรงในแถบนี้ได้หรือไม่ ผมใช้ Zip ties เพื่อยึดสายไฟให้เข้าที่ขณะที่ร้อยกลับเข้าสู่โรงจอดรถ

เครื่องกำเนิดไฟฟ้าหลายชนิดสามารถทำหน้าที่เป็น Load ได้เมื่อมีการจ่าย Voltage เข้าไป ในกรณีของไมโครโฟน มันสามารถใช้เป็นลำโพงได้ เครื่องกำเนิดไฟฟ้าสามารถทำงานเป็นมอเตอร์ได้ LED สามารถใช้ในการวัดแสงได้ หากมีการจ่าย Voltage ให้กับ Solar panel มันจะดึง Current และผมเชื่อว่ามันจะปล่อยแสงออกมา (ไม่แน่ใจว่าความถี่ไหน) ในกรณีแบบนี้ จำเป็นต้องติดตั้ง Blocking Diode ไว้ที่ใดที่หนึ่งในวงจรเพื่อป้องกันไม่ให้ Solar panel ดึงไฟจากแบตเตอรี่จนหมดเมื่อไม่มีแสงแดด ผมคิดว่าวงจร Power manager มีสิ่งนี้ติดตั้งมาให้แล้ว แต่หลังจากฝนตกติดต่อกันไม่กี่วัน แบตเตอรี่ก็ถูกดึงไฟไปจนหมด

ผมใช้ Diode ที่หาได้แถวนี้บัดกรีเข้ากับปลายสายไฟที่จะเชื่อมต่อกับขั้ว 5V บน Charge controller หากคุณบัดกรีในจุดเดียวกัน ปลายของ Diode ที่มีแถบคาดควรชี้ไปทาง Charge controller และชี้ออกจากขั้วบวกของ Solar panel สิ่งนี้จะช่วยบล็อกไม่ให้ Current ไหลย้อนกลับเข้าไปในแผง ผมใช้คอนเนกเตอร์แบบ Heat shrink solder เพื่อบัดกรีมันให้เข้าที่ เพราะผมติดตั้งเพิ่มหลังจากที่ระบบเข้าที่แล้ว

ขั้นตอนที่ 7: การเพิ่ม Solar Power Manager

Power manager มีตัวเลือกในการเชื่อมต่อโดยใช้ Jumper wires ตัวเมีย หรือสาย USB ซึ่งทั้งสองแบบไม่สะดวกนักสำหรับระยะทางที่ผมต้องการเดินสายไฟ ผมจึงบัดกรีสายไฟเข้าที่ด้านล่างของบอร์ดในจุดที่ Pins 5V และ Ground เชื่อมต่ออยู่แทน

ติด Wago lever nuts แบบ 5 Pin สองตัวเข้ากับกล่องโดยใช้เทปกาวสองหน้า สิ่งนี้จะช่วยให้สามารถจ่ายไฟให้กับอุปกรณ์หลายเครื่องจาก Power manager นี้ได้ มันสามารถจ่าย Output ได้สูงสุด 1A ที่ 5V ดังนั้นหากการใช้งานในอนาคตของคุณต้องการ Current มากกว่านั้น คุณควรพิจารณาใช้ Power managers รุ่นอื่น

ที่ด้านหลังของ Power manager จะมีชุดของสวิตช์ เพื่อให้คุณสามารถตั้งค่า Voltage โดยประมาณของ Solar panels ของคุณได้ ดังนั้นควรสลับสวิตช์ให้ตรงกับระบบ Solar ที่คุณใช้งาน ในกรณีของผม ผมตั้งค่าไว้ที่ 9V เนื่องจากแผงที่ต่อแบบอนุกรมระบุไว้ที่ 10V

Power manager มาพร้อมกับเสารองบอร์ด (Standoffs) ให้ถอดออกสองอัน และใช้รูเหล่านั้นขันสกรูเพื่อยึด Power manager เข้ากับกล่องโดยใช้สกรู M3x8 ร้อยสายไฟที่บัดกรีเข้ากับ 5V และ Ground ผ่านรูที่ด้านล่าง และเสียบเข้ากับ Wago lever nuts

หาจุดที่เหมาะสมสำหรับ Power manager และใส่สกรูที่ผนัง ใช้รูห้อยที่กล่องเพื่อแขวนเข้าที่ เดินสายไฟจาก Arduino มายัง Power manager และเสียบเข้าที่โดยใช้ Wago สำหรับ 5V และ Ground ระวังอย่างมากอย่าเชื่อมต่อสลับขั้ว บอร์ด Arduino มีระบบป้องกันอยู่บ้าง แต่คุณอาจทำบอร์ดพังได้หากเชื่อมต่อ Pin 5V สลับขั้ว ใช้ตัวยึดสายไฟเพื่อจัดระเบียบสายไฟตามแนวผนัง

ทำแบบเดียวกันกับสายไฟที่มาจาก Solar panel อย่าลืมถอดการเชื่อมต่อของ Solar panels ก่อนที่คุณจะต่อสายไฟเข้ากับ Input ของ Power manager เพื่อป้องกันไม่ให้เกิดการลัดวงจรหรือความเสียหายต่อบอร์ดโดยอุบัติเหตุ

เมื่อเสร็จแล้ว ให้ปิดฝากล่อง เปิดสวิตช์สำหรับแบตเตอรี่ และเชื่อมต่อ Solar panels อีกครั้ง

ขั้นตอนที่ 8: การทดสอบใช้งาน!

ทุกอย่างควรจะทำงานได้แล้วในจุดนี้ ลองนำรถของคุณมาทดสอบดู เพื่อให้แน่ใจว่าระยะทางได้รับการปรับจูน (Calibrated) อย่างถูกต้องสำหรับสถานการณ์การจอดรถของคุณ และขอให้สนุกกับมัน! มันเป็นอะไรที่น่าพอใจมากที่ได้เห็นมันทำงาน และปิดตัวเองลงเมื่อใช้งานเสร็จ หากคุณลืมใส่ Blocking Diode คุณจะสังเกตเห็นพฤติกรรมแปลกๆ ในบางครั้งเมื่อแบตเตอรี่ถูกดึงไฟออกโดยแผง Solar

ขอบคุณที่รับอ่าน หากคุณชอบโปรเจกต์นี้ โปรดพิจารณากดติดตามช่อง YouTube ของผม: More Than The Sum.

หากคุณมีคำถามใดๆ สามารถสอบถามได้เลย!

Code

🔒 ปลดล็อก Code

สนับสนุนเพื่อรับ Source Code หรือแอปพลิเคชันสำหรับโปรเจกต์นี้

รหัสอ้างอิงโปรเจกต์: solar-powered-led-parking-sensor-5d01d9
699 บาท
PromptPay QR Code

ประเมิน Project

อยากได้งานคล้ายโปรเจคนี้? กดไปหน้าประเมินราคา

เอาฟอร์มยาวออกจากท้ายหน้า Project แล้ว เหลือเป็นปุ่มให้กดไปกรอกหน้าเดียว ตัวใหญ่ เว้นบรรทัดเยอะ อ่านง่ายกว่า

รีวิวจากคนใช้งานจริง

รีวิวจากลูกค้าและคนที่เคยใช้งาน

ถ้าเคยสั่งงาน เคยอ่านหน้านี้แล้วได้ประโยชน์ หรือมีข้อเสนอแนะ ฝากรีวิวไว้ได้เลย

กำลังโหลดรีวิว...