สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
ฉันทำไฟซิงโครไนซ์ทางไกลที่เรียกว่าโคมไฟ "เพื่อนที่ดีที่สุด" นั่นก็หมายความว่าพวกมันจะซิงค์กับสีปัจจุบันของหลอดไฟอีกดวง ดังนั้นหากคุณจะเปลี่ยนหลอดหนึ่งเป็นสีเขียว หลังจากนั้นอีกหลอดหนึ่งจะเปลี่ยนเป็นสีเขียว นี่เป็นโครงการ raspberry pi ที่ง่ายมากที่ทุกคนสามารถกระโดดเข้าไปและใช้แนวคิดพื้นฐานมากมายที่ยอดเยี่ยมในการสร้าง
นี่เป็นโครงการที่ดีที่จะดำเนินการในช่วงกักกันเนื่องจากคุณไม่สามารถอยู่ใกล้กันตลอดเวลา และสามารถใช้ภายในบ้านเดียวกันเพื่อแสดงว่าคุณอยู่ในการประชุมหรืองานสำคัญอื่นๆ
เสบียง:
- ws2811 หลอดไฟ LED -
- Raspberry pi zero ฉันใช้ (สามารถใช้ pi ใดก็ได้อย่าลืมรับ sd card) -
- แผ่นอะคริลิค -
- ปุ่มกด
- ไม้เชอรี่, ไม้โอ๊คแดง - จำหน่ายไม้ในประเทศ
ขั้นตอนที่ 1: สร้างฐาน
ในการเริ่มต้น คุณจะต้องมีกล่องสำหรับใส่ส่วนประกอบอิเล็กทรอนิกส์และป้อนแสงเข้าไป ฉันมีไม้เชอร์รี่และไม้โอ๊คสีแดงเหลืออยู่บ้างที่ฉันใช้ทำกล่อง ฉันใช้เชอร์รี่สี่เหลี่ยมชิ้นเดียวสำหรับด้านบนซึ่งมีขนาดประมาณ 4.5 นิ้ว x 4.5 นิ้ว และหนา 1.25 นิ้ว จากนั้นฉันก็ใช้ไม้โอ๊คแดงเป็นชิ้นเล็ก ๆ เพื่อเพิ่มส่วนที่จะใช้ส่วนประกอบอิเล็กทรอนิกส์ ชิ้นส่วนเหล่านั้นยาวประมาณ 4.5 นิ้ว หนา 1 นิ้ว และกว้าง 2 นิ้ว ถ้าฉันทำเช่นนี้อีกครั้ง ฉันจะทำไม้โอ๊คสีแดงให้บางลงอย่างแน่นอน เพื่อให้ชิ้นส่วนอิเล็กทรอนิกส์มีพื้นที่พอดีมากขึ้น หลังจากตัดชิ้นส่วนแล้ว ฉันก็ขัดมันและเจาะรูสำหรับ ws2811 led โดยใช้ดอกสว่าน 1/2 นิ้ว จากนั้นฉันก็ปิดท้ายด้วยน้ำมันวอลนัทของมาโฮนี่ย์
ขั้นตอนที่ 2: สร้างบล็อกการแพร่กระจาย
หลังจากสร้างฐานแล้ว ฉันเริ่มสร้างบล็อกการแพร่ ซึ่งจะใช้เพื่อกระจายแสงออกจาก ws2811 led เมื่อต้องการทำสิ่งนี้ ฉันตัดชิ้นสี่เหลี่ยมออกจากอะครีลิคแล้วขัดอะครีลิคเพื่อทำให้ไม่ชัด ซึ่งจะทำให้แสงจากหลอด LED กระจายออกไปและให้แสงสว่างมากขึ้น ฉันจึงใช้กาวร้อนยึดโครงสร้าง
ขั้นตอนที่ 3: ประสานวงจรและเรียกใช้รหัส
นี่คือเวลาที่จะประสานวงจร ไฟแต่ละดวงมี raspberry pi zero, ws2811 led, ปุ่มกด และตัวต้านทาน วงจรหนึ่งใช้เพื่อควบคุมไฟ LED ws2811 ในขณะที่อีกวงจรหนึ่งใช้สำหรับตรวจสอบอินพุตของผู้ใช้ วงจรนำ ws2811 เป็นวงจรง่ายๆ ที่ใช้หมุดกราวด์ 5v และ pwm ของราสเบอร์รี่ pi เพื่อควบคุมไฟ LED วงจรอินพุตของผู้ใช้มีตัวต้านทานจำกัดกระแสและปุ่มกดที่ใช้เพื่อเปิดและปิดแรงดันไฟฟ้าจากพินอินพุตราสเบอร์รี่ pi
แต่ละ pi กำลังรันโปรแกรมเดียวกัน โปรแกรมนี้ตรวจสอบเมื่อกดปุ่ม และถ้าเป็นเช่นนั้น จะเปลี่ยนสี จากนั้นจะส่งข้อความไปยังเว็บเซิร์ฟเวอร์ที่ติดตามสีปัจจุบัน ทุกๆ 5 วินาที โปรแกรมนี้จะตรวจสอบสีปัจจุบันจากเว็บเซิร์ฟเวอร์ด้วย และหากสีนั้นแตกต่างจากสีปัจจุบันของหลอดไฟ สีจะเปลี่ยนเป็นสีนั้น นี่คือวิธีที่พวกเขาจะซิงค์กัน ดังนั้นหากคุณเปลี่ยนสีเป็นสีแดงบนหลอดไฟดวงหนึ่ง ไฟนั้นก็จะบอกเว็บเซิร์ฟเวอร์ว่าสีปัจจุบันเป็นสีแดง หลอดไฟอีกดวงจะตรวจสอบเว็บเซิร์ฟเวอร์ภายใน 5 วินาที และเห็นว่าสีปัจจุบันเป็นสีแดง แล้วจึงเปลี่ยนเป็นสีนั้น สี. เว็บเซิร์ฟเวอร์ที่ฉันใช้นั้นโฮสต์อยู่บนหนึ่งใน pis เนื่องจากฉันใช้มันในเครือข่ายเดียวกัน แต่คุณสามารถเรียกใช้เซิร์ฟเวอร์นี้บนเซิร์ฟเวอร์สาธารณะใดๆ ได้อย่างง่ายดาย และหลอดไฟจะทำงานข้ามทวีป
ด้วยการออกแบบนี้ คุณสามารถปรับขนาดให้เป็นโคมไฟมากกว่า 2 ดวงได้อย่างง่ายดาย
ด้านล่างนี้คือ repos สองรายการที่คุณจะต้องเรียกใช้โครงการ หากคุณมีปัญหาในการติดตั้ง BiblioPixel คุณสามารถดูวิดีโอของฉันเกี่ยวกับการสร้างกระดานข้อความได้ ลงรายละเอียดการติดตั้ง BiblioPixel
Best Friend Light Program ทำงานบน pi แต่ละตัว:
github.com/tmckay1/best_friend_light
เว็บเซิร์ฟเวอร์ที่ติดตามสีปัจจุบัน:
github.com/tmckay1/raspberrypi_gateway
ขั้นตอนที่ 4: เรียกใช้โปรแกรมในแต่ละ Pi เรียกใช้เซิร์ฟเวอร์และดูการทำงานจริง
ตอนนี้คุณสามารถรันโปรแกรมบนบรรทัดคำสั่งโดยตรวจสอบ readme ใน repos ก่อนหน้า รันเซิร์ฟเวอร์ตาม readme และดูการทำงานจริง!