สารบัญ:

การอัพเกรด Smart RGB LEDs: WS2812B เทียบกับ WS2812: 6 ขั้นตอน
การอัพเกรด Smart RGB LEDs: WS2812B เทียบกับ WS2812: 6 ขั้นตอน

วีดีโอ: การอัพเกรด Smart RGB LEDs: WS2812B เทียบกับ WS2812: 6 ขั้นตอน

วีดีโอ: การอัพเกรด Smart RGB LEDs: WS2812B เทียบกับ WS2812: 6 ขั้นตอน
วีดีโอ: How to use WS2812B RGB LEDs with Arduino 2024, กรกฎาคม
Anonim
การอัพเกรด Smart RGB LEDs: WS2812B เทียบกับ WS2812
การอัพเกรด Smart RGB LEDs: WS2812B เทียบกับ WS2812
การอัพเกรด Smart RGB LEDs: WS2812B เทียบกับ WS2812
การอัพเกรด Smart RGB LEDs: WS2812B เทียบกับ WS2812
การอัพเกรด Smart RGB LEDs: WS2812B เทียบกับ WS2812
การอัพเกรด Smart RGB LEDs: WS2812B เทียบกับ WS2812

จำนวนโปรเจ็กต์ที่เราเคยเห็นใช้ Smart RGB LED ไม่ว่าจะเป็นแถบ โมดูล หรือ PCB แบบกำหนดเอง ในช่วง 3 ปีที่ผ่านมานั้นค่อนข้างน่าทึ่ง การระบาดของการใช้ RGB LED นี้เกิดขึ้นพร้อมกันด้วยราคาที่ลดลงอย่างมีนัยสำคัญและความสะดวกในการใช้งานอุปกรณ์อิเล็กทรอนิกส์เหล่านี้ที่เพิ่มขึ้น ในบรรดาผู้ผลิต LED นั้น WorldSemi ดูเหมือนจะกลายเป็นมาตรฐานโดยพฤตินัยในหมู่ DIYers, hobbyists และนักออกแบบอุปกรณ์อิเล็กทรอนิกส์ที่สวมใส่ได้ Smart RGB LED ตระกูล WS28XX ของบริษัทประกอบด้วยโปรโตคอลควบคุมที่ใช้งานง่าย พินเอาต์และรอยเท้าที่สะดวก และการเรืองแสงที่สว่างอย่างไม่น่าเชื่อ ทั้งหมดนี้อยู่ในแพ็คเกจขนาดเล็ก 5 มม. x 5 มม. แต่สิ่งที่สร้างความแตกต่างอย่างแท้จริงในความสำเร็จในตลาด DIY ของผลิตภัณฑ์คือราคาต่อหน่วย $0.30 ถึง $0.40 ในปริมาณเล็กน้อย ในเวอร์ชันล่าสุดของ LED เหล่านี้ WS2812B, WorldSemi ได้ทำการปรับปรุงที่สำคัญอีกครั้งกับ WS2812 รุ่นก่อน เนื่องจากมีข้อมูลน้อยมากเกี่ยวกับเวอร์ชันที่ค่อนข้างใหม่นี้ เราจึงตัดสินใจสร้างคำแนะนำสั้นๆ เพื่อเน้นการอัปเกรดการออกแบบ และโฆษณาคุณลักษณะที่มีอยู่แล้วของอุปกรณ์อันชาญฉลาดนี้! ระดับความยาก: ระดับเริ่มต้น+ (ความคุ้นเคยกับ RGB อัจฉริยะบางส่วน ไฟ LED) เวลาที่จะทำให้เสร็จ: 5-10 นาที

ขั้นตอนที่ 1: รายการวัสดุ

รายการวัสดุ
รายการวัสดุ
รายการวัสดุ
รายการวัสดุ

เพื่อเน้นคุณลักษณะของไฟ LED ทั้ง WS2812B และ WS2812 RGB เราสามารถใช้ชิ้นส่วนต่อไปนี้ได้: 1 x WS2812 RGB LED (บัดกรีล่วงหน้าบนบอร์ดฝ่าวงล้อมขนาดเล็ก) 1 x เขียงหั่นขนมแบบไม่มีบัดกรี 1 x ขั้วต่อพินแยก, 0.1 Pitch, 8-Pin Male 1 x Arduino Uno R3 1 x WS2812B Lumina Shield สำหรับ Arduino Solid Core Wire (คละสี; 28 AWG) และ Wire Strippers Power Supply (อุปกรณ์เสริม) ทั้ง WS2812 และ WS2812B มีไดรเวอร์ LED แบบกระแสคงที่ในตัว และไฟ LED ที่ควบคุมแยกกัน 3 ดวง สีแดง 1 ดวง สีเขียว 1 ดวง และสีน้ำเงิน 1 ดวง ไดรเวอร์ LED ประกอบด้วย: - ออสซิลเลเตอร์ภายใน - วงจรปรับรูปร่างและขยายสัญญาณ - สลักข้อมูล - ไดรฟ์เอาท์พุตกระแสไฟคงที่แบบตั้งโปรแกรมได้ 3 ช่อง - พอร์ตดิจิทัล 2 พอร์ต (เอาต์พุตแบบอนุกรม/อินพุต)หมายเหตุ: ไดรเวอร์ LED เองก็มีจำหน่ายในรูปแบบ IC แบบ 6 พิน ซึ่งเราสามารถใช้เพื่อเชื่อมต่อโดยตรงกับไฟ LED RGB ที่ 'ไม่ฉลาด' ที่เราเลือก IC ที่เป็นปัญหาไม่ใช่อย่างอื่นนอกจาก WS2811

ขั้นตอนที่ 2: WS2812B เทียบกับ WS2812: รอยเท้า 4 พิน (✓)

WS2812B VS. WS2812: รอยเท้า 4 พิน (✓)
WS2812B VS. WS2812: รอยเท้า 4 พิน (✓)
WS2812B VS. WS2812: รอยเท้า 4 พิน (✓)
WS2812B VS. WS2812: รอยเท้า 4 พิน (✓)
WS2812B VS. WS2812: รอยเท้า 4 พิน (✓)
WS2812B VS. WS2812: รอยเท้า 4 พิน (✓)
WS2812B VS. WS2812: รอยเท้า 4 พิน (✓)
WS2812B VS. WS2812: รอยเท้า 4 พิน (✓)

คุณลักษณะใหม่ที่เห็นได้ชัดที่สุดของ WS2812B คือจำนวนพินที่ลดลง (จาก 6 เป็น 4) ซึ่งรักษาขนาดที่ดีสำหรับการบัดกรีอย่างง่ายดาย (โดยใช้หัวแร้งแบบละเอียด) ถึง ~ 2 มม. x 1 มม. บนแผ่น PCB แผ่นรอง 6 แผ่นของ WS2812 รุ่นเก่าทำให้กำหนดเส้นทางพิน DO ของโมดูลหนึ่งไปยังพิน DI ของโมดูลถัดไปได้ยากเล็กน้อย เมื่อระยะห่างระหว่างโมดูลแน่น ด้วย WS2812B การกำหนดเส้นทางการติดตามบน PCB เป็นเรื่องง่าย โดยเฉพาะอย่างยิ่งเมื่อออกแบบการกำหนดค่าแบบอาร์เรย์ตาม Arduino Shield ที่แสดงในภาพของขั้นตอนนี้ ช่องว่างเพิ่มเติมระหว่างแผ่นรอง WS2812B ช่วยให้:

  • กำหนดเส้นทางสัญญาณที่จำเป็น 3 อย่างได้อย่างง่ายดาย: กำลังไฟฟ้า กราวด์ และข้อมูล
  • ใช้เส้นหนาเพื่อเชื่อมต่อพลังงานและกราวด์ ซึ่งช่วยให้กระแสสูงทำงานอย่างปลอดภัยบน PCB

เราสามารถเห็นได้จากภาพด้านบนว่าการกำหนดเส้นทางอาร์เรย์ 5x8 สำหรับ Lumina Shield สำหรับ Arduino เป็นเรื่องง่ายเพียงใดโดยใช้ไฟ LED ใหม่เหล่านี้เพื่อการเปรียบเทียบ เราได้รวมการออกแบบอาร์เรย์ 16x16 แบบเก่าโดยใช้ WS2812 ไว้ด้วย ไฟล์การออกแบบสำหรับ Lumina Shield สามารถพบได้ในที่เก็บ Github นี้ สิ่งสำคัญประการหนึ่งที่ควรทราบคือ ด้วยเหตุผลที่เราไม่สามารถเข้าใจได้ เลย์เอาต์สำหรับ WS2812B มีรอยบากเล็กน้อยที่มุมของแพ็คเกจซึ่งระบุพิน 3 แทนที่จะเป็นพิน 1! เราจำเป็นต้องให้ความสนใจเป็นพิเศษเมื่อทำการบัดกรีด้วยมือ เพื่อที่เราจะได้ไม่ต้องปรับทิศทางโมดูลเหมือนกับที่ทำกับไอซีทั่วไป (หรือ WS2812 สำหรับเรื่องนั้น) *.tftable { ขนาดตัวอักษร: 12.0px; สี: rgb(251, 251, 251); ความกว้าง: 100.0%; ความกว้างของเส้นขอบ: 1.0px; เส้นขอบสี: rgb (104, 103, 103); border-collapse: ยุบ; } *.tftable th { ขนาดตัวอักษร: 12.0px; พื้นหลังสี: rgb (23, 21, 21); ความกว้างของเส้นขอบ: 1.0px; ช่องว่างภายใน: 8.0px; สไตล์เส้นขอบ: แข็ง; เส้นขอบสี: rgb (104, 103, 103); text-align: ซ้าย; } *.tftable tr { สีพื้นหลัง: rgb (47, 47, 47); } *.tftable td { ขนาดตัวอักษร: 12.0px; ความกว้างของเส้นขอบ: 1.0px; ช่องว่างภายใน: 8.0px; สไตล์เส้นขอบ: แข็ง; เส้นขอบสี: rgb(104, 103, 103); } *.tftable tbody tr: hover { สีพื้นหลัง: rgb (23, 21, 21); } Pin # Symbol Function * Notch บนแพ็คเกจระบุพินนี้ 1 LED แหล่งจ่ายไฟ VDD 2 DO ควบคุมเอาต์พุตสัญญาณข้อมูล 3* กราวด์ VSS 4 อินพุตสัญญาณข้อมูลควบคุม DIN รายละเอียดที่ควรกล่าวถึงอีกประการหนึ่งคือหมุดกำลัง (VDD) และกราวด์ (VSS) อยู่แนวทแยงมุมซึ่งกันและกัน ดังนั้นรอยต่อของหมุดเหล่านี้จึงค่อนข้างหนา! อย่างไรก็ตาม หากเราทำผิดพลาดในการบัดกรีโมดูล 'ย้อนกลับ' เราจะลัดวงจร Power and Ground (พิน # 1 และ 3) โชคดีสำหรับเราอย่างที่เราเห็นในขั้นตอนต่อไป WorldSemi ได้รวมวงจรป้องกันขั้วย้อนกลับที่จะป้องกันไม่ให้ WS2812B เสียหายจากข้อผิดพลาดนี้ - แน่นอนเราแนะนำให้หลีกเลี่ยงข้อผิดพลาดทั้งหมด:)

ขั้นตอนที่ 3: WS2812B เทียบกับ WS2812: LEDS ที่สว่างขึ้น & ปรับปรุงความสม่ำเสมอของสี (?)

WS2812B VS. WS2812: LEDS ที่สว่างขึ้น & ปรับปรุงความสม่ำเสมอของสี (?)
WS2812B VS. WS2812: LEDS ที่สว่างขึ้น & ปรับปรุงความสม่ำเสมอของสี (?)

เมื่อ WS2812B เปิดตัว WorldSemi เน้นย้ำว่ามีไฟ LED ที่สว่างกว่าและความสม่ำเสมอของสีที่ดีกว่า WS2812 (ที่มา: WS2812B_vs_WS2812.pdf) อย่างไรก็ตาม จากการตรวจสอบเอกสารข้อมูลจริงของอุปกรณ์ทั้งสอง เราสามารถสังเกตได้ว่าข้อกำหนดสำหรับความส่องสว่างของ LED เหมือนกันทั้งสองอย่าง: *.tftable { font-size: 12.0px; สี: rgb(251, 251, 251); ความกว้าง: 100.0%; ความกว้างของเส้นขอบ: 1.0px; เส้นขอบสี: rgb (104, 103, 103); border-collapse: ยุบ; } *.tftable th { ขนาดตัวอักษร: 12.0px; พื้นหลังสี: rgb (23, 21, 21); ความกว้างของเส้นขอบ: 1.0px; ช่องว่างภายใน: 8.0px; สไตล์เส้นขอบ: แข็ง; เส้นขอบสี: rgb (104, 103, 103); text-align: ซ้าย; } *.tftable tr { สีพื้นหลัง: rgb (47, 47, 47); } *.tftable td { ขนาดตัวอักษร: 12.0px; ความกว้างของเส้นขอบ: 1.0px; ช่องว่างภายใน: 8.0px; สไตล์เส้นขอบ: แข็ง; เส้นขอบสี: rgb(104, 103, 103); } *.tftable tbody tr: hover { สีพื้นหลัง: rgb (23, 21, 21); } ความยาวคลื่นสี (มม.) ความเข้มของการส่องสว่าง (mcd) สีแดง 620–630 620–630 สีเขียว 515–530 1100–1400 สีน้ำเงิน 465–475 200–400 ภาพด้านบนแสดง Arduino Uno ที่เชื่อมต่อกับบอร์ดฝ่าวงล้อมสี่แผง สองคนถือ WS2812B ในขณะที่อีกสองคนมี WS2812 เราลองใช้การวัดภาพมาตรฐานเพื่อดูว่าเราเห็นความแตกต่างอย่างมีนัยสำคัญในด้านความสว่างหรือความสม่ำเสมอของสีหรือไม่ แต่ผลลัพธ์ก็ไม่สามารถสรุปได้ เพื่อที่จะระบุได้อย่างชัดเจนว่าโมดูลทั้งสองต่างกันในส่วนนี้หรือไม่ เราจะต้องทำการทดสอบโดยใช้สเปกโตรโฟโตมิเตอร์ เนื่องจากเราไม่มีข้อมูลในขณะที่เขียนนี้ เราจึงสามารถอ้างอิงถึงข้อมูลในเอกสารข้อมูลที่เกี่ยวข้องของผลิตภัณฑ์เท่านั้น: WS2812.pdf และ WS2812B.pdf

ขั้นตอนที่ 4: WS2812B เทียบกับ WS2812: วงจรป้องกันการกลับขั้ว (✓)

WS2812B เทียบกับ WS2812: วงจรป้องกันการกลับขั้ว (✓)
WS2812B เทียบกับ WS2812: วงจรป้องกันการกลับขั้ว (✓)

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

ขั้นตอนที่ 5: WS2812B เทียบกับ WS2812: ปรับปรุงโครงสร้างภายใน (?)

คุณลักษณะสุดท้ายที่รวมอยู่ใน WS812B คือการแยกวงจรหลักสองวงจรในอุปกรณ์ นั่นคือ การควบคุมและการให้แสง การแยกสองสิ่งนี้ออกจากกัน ผู้ผลิตรายงานการกระจายความร้อนที่ดีขึ้นและการควบคุมที่แข็งแกร่งยิ่งขึ้น คุณลักษณะใหม่นี้มีความคลุมเครือมากขึ้น เนื่องจากเราไม่มีวิธีที่ดีในการทดสอบการกระจายความร้อนบน PCB เพื่อความทนทานที่ดีขึ้นในการสื่อสารและการถ่ายโอนข้อมูล เราไม่พบความแตกต่างด้านประสิทธิภาพที่มีนัยสำคัญระหว่าง WS2812 และ WS2812B หลังจากการทดสอบง่ายๆ สองสามอย่างที่เราดำเนินการกับโมดูลทั้งสองแบบเคียงข้างกัน

ขั้นตอนที่ 6: การเขียนโปรแกรมไฟ LED WS2812B RGB

การเขียนโปรแกรม WS2812B RGB LEDs
การเขียนโปรแกรม WS2812B RGB LEDs

แม้จะมีการเปลี่ยนแปลงทั้งหมดในตระกูล WS28XX เวอร์ชันล่าสุดนี้ แต่โปรโตคอลการสื่อสารที่จำเป็นในการควบคุมสีและความสว่างยังคงไม่เปลี่ยนแปลงจากรุ่นก่อน เรายังคงสามารถใช้ห้องสมุดที่ยอดเยี่ยมที่พัฒนาโดยเพื่อนผู้ผลิตจาก Adafruit, PJRC และโครงการ FastSPI สำหรับการเรียนรู้เพิ่มเติมเกี่ยวกับสิ่งที่เกิดขึ้นจริงภายใต้ประทุนของอุปกรณ์ RGB LED ที่ยอดเยี่ยมนี้ เราได้รวบรวม Instructable ที่มีรายละเอียดอย่างละเอียดซึ่งอธิบายการใช้งานโปรโตคอลควบคุมแบบทีละบิต (ตั้งใจเล่นสำนวน) ขอบคุณล่วงหน้าสำหรับการตรวจสอบ!https://www.instructables.com/id/Bitbanging-step-by-step-Arduino-control-of-WS2811-

แนะนำ: