สารบัญ:

ไฟคริสต์มาสกับ Atmega328: 6 ขั้นตอน
ไฟคริสต์มาสกับ Atmega328: 6 ขั้นตอน

วีดีโอ: ไฟคริสต์มาสกับ Atmega328: 6 ขั้นตอน

วีดีโอ: ไฟคริสต์มาสกับ Atmega328: 6 ขั้นตอน
วีดีโอ: วิธีต่อขั้วหลอดไฟโดยไม่ต้องปอก ทำแบบนี้แน่นมากๆ 2024, กรกฎาคม
Anonim
Image
Image
การเดินสายไฟ
การเดินสายไฟ

คริสต์มาสกำลังจะมาถึงและถึงเวลาที่ต้องทำอะไรบางอย่างเกี่ยวกับมัน ในกรณีของฉัน – ในที่สุดก็เสร็จสิ้นการสอนเกี่ยวกับไฟต้นคริสต์มาสของฉัน

แนวคิดนี้เรียบง่าย: หยิบ LED หลากสีจำนวนหนึ่งหยิบขึ้นมา เชื่อมต่อเข้ากับไดรเวอร์ LED แบบขนาน (ทำให้แต่ละ LED สามารถควบคุมได้) ขอให้สนุก นี่อาจฟังดูแปลกเมื่อพิจารณาถึงการเดินสายทั้งหมดที่จำเป็น แต่จากการปฏิบัติพบว่าวิธีนี้ใช้ได้ผลดีกว่าไฟที่ออกจากร้านของคุณมากด้วยโหมดเดินสายที่น่าเบื่อและไม่มีการปรับแต่งใดๆ สายไฟมองไม่เห็น ไฟ LED ซ่อนอยู่ในเข็มสน ทุกอย่างควบคุมด้วยรีโมท IR เด็กและผู้ใหญ่มีความสุข

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

โปรเจ็กต์นี้มุ่งเป้าไปที่ผู้ที่มีประสบการณ์ปานกลาง เนื่องจากคุณจะต้องปรับให้เข้ากับฮาร์ดแวร์ของคุณ ฉันทำบอร์ดพิเศษมานานแล้ว คุณต้องประดิษฐ์มันเอง หรือคุณสามารถหาได้จากฉัน แต่ก็ยังต้องใช้ทักษะการบัดกรี

สิ่งที่คุณต้องการ:

- บอร์ดควบคุม (Arduino หรืออื่นๆ)

- วงจรขับ LED แนะนำให้ใช้ไดรเวอร์ LED แต่สามารถทำได้ด้วย shift register และ ShiftPWM library

- อย่างน้อย 48 LEDs ที่มีสีต่างกัน

- ลวดพันลวด 30AWG อย่างน้อย 100 เมตร

- ทักษะการบัดกรีและการเขียนโปรแกรม

- เวลาและความอดทนบ้าง

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

ขั้นตอนที่ 1: การเดินสายไฟ

Image
Image
การเดินสายไฟ
การเดินสายไฟ

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

ก็คือ พวงมาลัยที่ผลิตขึ้นแบบพื้นฐานของคุณเชื่อมต่อกันเป็นชุด จากนี้เกิดปัญหาสองประการ:

ก) สายไฟค่อนข้างหนา เนื่องจากจำเป็นต้องใช้พลังงานสำหรับไฟ LED ทั้งหมดในซีรีย์ และ

ข) สายไฟเหล่านี้ไปจากกิ่งหนึ่งของต้นคริสต์มาสไปยังอีกกิ่งหนึ่งในสายตาธรรมดา ตั้งฉากกับกิ่งก้าน

ปัญหาทั้งสองนี้ต้องใช้สายไฟให้กลมกลืนกับใบของต้นไม้ (เข็มเฟอร์) และไม่ประสบความสำเร็จอย่างแน่นอนในการทำเช่นนี้

ด้วยสิ่งที่ฉันมีในใจ (นั่นคือ LED แต่ละตัวที่มีสายไฟของตัวเองเชื่อมต่อแบบขนาน) สิ่งต่าง ๆ เปลี่ยนไป:

ก) คุณสามารถใช้สายไฟที่บางจริงๆ และ

ข) พวกเขาเดินตามกิ่งก้านของไฟ LED ที่ด้านหลังไปยังลำต้นของต้นไม้ ออกไปจากมุมมองของผู้ชม จึงไม่สามารถมองเห็นได้อย่างมีประสิทธิภาพ

บิงโก! คุณไม่จำเป็นต้องมีสีเขียวเข้ม คุณสามารถมีสีน้ำตาลเพื่อผสมกับกิ่งก้าน หรือแม้กระทั่งสีฟ้าเหมือนที่ฉันทำ และมันจะยังคงมองไม่เห็น

นี่เป็นสิ่งที่ฉันค้นพบจริง ๆ เมื่อพวงมาลัยเข้าที่ มันได้ผล.

ดังนั้น คุณจึงต้องใช้ลวดพันลวดขนาด 30AWG บาง (เช่นนี้) ไม่ว่าจะเป็นสีเขียว (ที่มีสีน้ำเงินอมฟ้าเล็กน้อย) หรือสีน้ำตาล

ขั้นตอนที่ 2: LEDs

มีชุดของ '10 สี LEDs' พร้อมใช้งานบนอินเทอร์เน็ต สี ได้แก่ แดง ส้ม เหลือง เขียวบึง เขียว น้ำเงิน ชมพู ม่วง ขาวเย็น และขาวอบอุ่น สองอันสุดท้ายน่าสนใจ เพราะคุณสามารถทำเอฟเฟกต์เงิน/ทองกับพวกมันได้ แต่นั่นก็ต่างเรื่อง อีกแปดที่เหลือก็โอเค และจำนวนก็สะดวกมาก ไดรเวอร์ LED ที่มีเอาต์พุต 16 ตัวเป็นอย่างไร ฉันแนะนำ LED 3 มม.: ค่อนข้างสว่างในขณะที่มีขนาดเล็กพอที่จะซ่อนในเข็ม

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

อย่างแรกเลย ดวงตาของมนุษย์ไม่เก่งในการแยกแยะสีเหล่านี้ เราดีกว่าทุกอย่างที่มีจุดสีแดงอยู่อย่างน้อย ประการที่สอง แทบไม่มีไฟ LED ให้เติมช่องว่าง จริงอยู่ มีซัพพลายเออร์ของไฟ LED สีฟ้าใน Aliexpress หนึ่งราย แต่สิ่งเหล่านี้ค่อนข้างแพง (และฉันพบว่ามันสายเกินไป) นอกจากนี้ยังมีนักต้มตุ๋นขายไฟ LED สีเขียวพื้นฐานเป็น 'มรกต' อย่าตกอยู่ในสิ่งนี้ ฉันพบว่าชุด 10 สีค่อนข้างดี ไฟ LED ให้สีที่ต่างกันอย่างเห็นได้ชัด

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

ขั้นตอนที่ 3: การประกอบ

การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ

การบัดกรีไฟ LED กับสายไฟต้องใช้เวลา มีเวลาหนึ่งวันในการทำเช่นนี้แม้กระทั่งกับพวงมาลัย LED 48 ดวงขนาดเล็ก คุณจะต้องการ (นอกเหนือจากไฟ LED และสายไฟ):

- ท่อหดความร้อน 1.5 มม.

- ท่อหดความร้อน 2.5 มม.

- สารละลายลูกเกดมากมาย

และหัวแร้งแน่นอน

ทำความสะอาดปลายลวดพันรอบขา LED ใช้สารละลายลูกเกดบัดกรี ทำซ้ำสำหรับขาที่สอง ดันท่อขนาด 1.5 มม. บนข้อต่อบัดกรีแรกแล้วหด ทำซ้ำเป็นครั้งที่สอง ดันท่อ 2.5 มม. ที่ขาทั้งสองข้างแล้วหด จำเป็นต้องหดด้านในเพื่อป้องกันขาสั้น ส่วนด้านนอกก็ดูดี ไม่จำเป็นต้องใช้ด้ามจับ เนื่องจากการคุมกำเนิดที่ได้นั้นเบา เข็มเฟอร์จึงจับได้ค่อนข้างดี (ถ้าต้นไม้ของคุณเป็นต้นไม้ประดิษฐ์ คุณอาจต้องใช้บางอย่างเพื่อทำให้ไฟ LED ติด)

ทำในกลุ่ม 6 ตามสเปกตรัม อย่าลืมตรวจสอบว่า LED ทำงานเนื่องจากอาจได้รับความเสียหายระหว่างการบัดกรี และอย่าลืมทำเครื่องหมายที่สายขั้วบวก

สำหรับความยาวของสายไฟ ฉันสร้างมันขึ้นมา 50 ซม. และมันสั้นไปหน่อยสำหรับต้นไม้เล็กๆ ที่ฉันมี ฉันต้องยืดสายไฟแทนที่จะพันรอบกิ่ง เพื่อแก้ตัว ฉันตั้งใจที่จะสร้างพวงมาลัย 96-LEDs (ยังคงทำ btw) และนี่คือครึ่งบนของมัน ไม่ว่าในกรณีใด ให้พิจารณาว่าคุณต้องการให้ลวดเดินตามลำต้น จากนั้นกิ่งจะออกจากตัวควบคุมและเลือกความยาวตามนั้น

ขั้นตอนที่ 4: การเชื่อมต่อคอนโทรลเลอร์

การเชื่อมต่อคอนโทรลเลอร์
การเชื่อมต่อคอนโทรลเลอร์

ฉันใช้บอร์ด UltiBlink SL ที่ออกแบบโดยคำนึงถึงงานนี้เป็นหลัก เว้นแต่ว่าคุณมี/สั่งซื้อ คุณจะต้องทำด้วยตัวเอง เขียงหั่นขนมใช้ไม่ได้ที่นี่ ดังนั้นคุณจะต้องประดิษฐ์และประสานบางสิ่งบนบอร์ดสร้างต้นแบบ ไดรเวอร์ LED ดีกว่าสำหรับงานนี้มากกว่า shift register (ด้วยไลบรารี ShiftPWM) เนื่องจากไดรเวอร์ไม่ต้องการตัวต้านทานสำหรับ LED แต่ละตัว จึงมีพื้นที่น้อยลง รูน้อยลง บัดกรีน้อยลง

โปรดทราบว่าฉันใช้เวอร์ชันส่วนขยายของบอร์ด UltiBlink ซึ่งเป็นบอร์ดที่ไม่มี Arduino (ไมโครคอนโทรลเลอร์) อยู่ด้านหลัง ฉันแนบบอร์ดไมโครคอนโทรลเลอร์ (BlinkeyCore ทรงกลม) เข้ากับส่วนขยาย ความจริงก็คือ ตอนแรกไม่ได้ตั้งใจ พวงมาลัย 48-LED โดยเฉพาะนี้ควรจะทำหน้าที่เป็นส่วนบนของพวงมาลัย 96-LED โดยที่ส่วนล่างมี MC บนเรือ ถึงกระนั้น มันก็พิสูจน์แล้วว่าดีเพราะ ก) ฉันสามารถติดบอร์ดเข้ากับก้านต้นไม้ได้โดยตรงด้วยแถบยางธรรมดา และ b) ฉันสามารถถอดบอร์ดควบคุมออกเพื่อบรรจุร่างใหม่ได้อย่างง่ายดาย ฉันไม่ต้องนั่งอยู่ใต้ต้นคริสต์มาสด้วยสมุดบันทึกเหมือนซานต้าที่เก่งกาจ ดังนั้น เราขอแนะนำให้คุณทำสิ่งที่คล้ายกัน นั่นคือ ถอดบอร์ด Arduino/MC ออกจากอุปกรณ์คุมกำเนิด

ฉันเชื่อมต่อ LEDs กับ 48 เอาต์พุตใน 6 แบทช์จาก 8 LED แต่ละตัวดังนี้: แดง, ส้ม, เหลือง, เขียวบึง, เขียว, น้ำเงิน, ม่วง, ชมพู; ทำซ้ำ 5 ครั้ง กล่าวคือ เอาต์พุต 0 = สีแดง เอาต์พุต 1 = สีส้ม เอาต์พุต 2 = สีเหลือง เป็นต้น ภาพร่างด้านล่างอาศัยคำสั่งนี้เพื่อความยุติธรรมที่ยิ่งใหญ่ ตรวจสอบให้แน่ใจว่าคุณวางมันบนต้นไม้ในลำดับเดียวกัน โดยหมุนเป็นเกลียวขึ้นหรือลง ฉันยังแนะนำให้ลองใส่ไฟ LED สีเดียวกันในเส้นแนวตั้งไม่มากก็น้อย (ด้านบนหรือด้านล่างกัน) ทั้งหมดนี้จะทำให้เอฟเฟกต์ดูดีขึ้นมาก

สุดท้ายคุณควรคำนึงถึงการใช้พลังงาน ไฟ LED 48 ดวงต้องการประมาณ 1A ที่ 5V เมื่อเปิดทั้งหมด คุณสามารถใช้ที่ชาร์จ USB ได้ แต่ควรใช้งานได้ดีและผ่านการทดสอบ ไม่ใช่อึราคาถูกจาก eBay ที่ควรให้น้ำผลไม้เพียงพอ แต่ไม่ได้ให้ (เช่นสีขาวบนภาพถ่ายของฉัน ฉันจะเปลี่ยนมันในภายหลัง) ด้วยไฟ LED 96 ดวง ฉันตั้งใจที่จะใช้สองดวง โดยหนึ่งดวงสำหรับแต่ละส่วนของพวงมาลัย เพื่อให้แน่ใจว่าทุกอย่างทำงานได้ตามที่ตั้งใจไว้ อีกวิธีที่เป็นไปได้สำหรับปัญหานี้อยู่ในซอฟต์แวร์: หากคุณแน่ใจว่าไม่ได้เปิดไฟ LED เกิน 25 ดวงในเวลาใดก็ตาม คุณจะสามารถเรียกใช้สิ่งนี้จากที่ชาร์จ USB หรือแม้แต่พอร์ต USB ของคอมพิวเตอร์ของคุณ ร่างของฉันด้านล่างไม่ได้

ขั้นตอนที่ 5: การควบคุม IR

IR ค่อนข้างดีและแฟนซีในการควบคุมโหมดบนพวงมาลัยของคุณ โชคดีที่มีห้องสมุด IRLib ที่ยอดเยี่ยมซึ่งครอบคลุมทุกความต้องการ นอกจากนี้ตัวรับสัญญาณ IR ยังมีการเชื่อมต่อที่ง่ายมาก

มีคำแนะนำมากมายเกี่ยวกับการใช้รีโมท IR กับ Arduino ดังนั้นฉันจะไม่ลงรายละเอียดมากนักที่นี่ ถ้าคุณไม่คุ้นเคยกับมัน แค่จองเวลาตอนเย็นเพื่อทำสิ่งนี้ มันไม่ใช่วิทยาศาสตร์จรวด

จำเป็นต้องมีบันทึกย่อเพื่อให้ง่ายขึ้นแม้ว่า:

1 – มีโปรโตคอลการสื่อสาร IR ที่แตกต่างกัน โดยที่ Philips เป็นแบบที่แปลกประหลาดที่สุด และแบบที่ Sony เป็นโปรแกรมที่สมเหตุสมผลและง่ายต่อการตั้งโปรแกรมมากที่สุด รีโมทราคาถูกส่วนใหญ่ใช้ Sony อย่างโชคดี

2 – หากคุณมีรีโมทเก่าบางตัวในโรงรถ ให้ตรวจสอบดู มันอาจจะใช้ได้ ฉันเคยใช้รีโมตจากทีวีเพื่อควบคุมอุปกรณ์คริสต์มาสชิ้นหนึ่งของฉัน แต่นั่นไม่ใช่ความคิดที่ดีที่สุด เนื่องจากสัญญาณสะท้อนจากผนัง จึงสามารถสลับช่องสัญญาณหรือบางอย่างบนทีวีของคุณในขณะที่คุณควบคุมพวงมาลัยได้ ดีกว่ามีหนึ่งทุ่มเท

3 – นี่คือภาพสเก็ตช์ของฉันที่ฉันใช้ทำแผนที่ปุ่มต่างๆ บนรีโมทใหม่ที่ทำงานกับโปรโตคอลของ Sony มันทิ้งรหัสลงในมอนิเตอร์แบบอนุกรม ปล่อยให้คุณเพียงแค่คัดลอกและวาง ฉันคัดลอกและวางลงในไฟล์นี้ ซึ่งรวมอยู่ในภาพร่างหลักสำหรับพวงมาลัย (ด้านล่าง) เป็นไปได้มากว่ารหัสสำหรับรีโมตทั่วไป (เรียกว่า 'CarMP3' ในรายการรวม) ก็จะใช้งานได้กับรหัสของคุณด้วยเช่นกัน

ขั้นตอนที่ 6: ร่าง

ตกลง ภาพร่างนี้ใช้ได้กับบอร์ดของการออกแบบของฉัน (48 LEDs) มันค่อนข้างยุ่งเหมือนกันในขณะที่ฉันเขียนมันอย่างเร่งรีบและไม่มีเวลาทำความสะอาด/แสดงความคิดเห็น อย่างไรก็ตาม คุณอาจพบว่ามีประโยชน์ อย่าลังเลที่จะหยิบชิ้นส่วนที่จำเป็นออกมาและทำทุกอย่างที่คุณต้องการ วิธีที่ง่ายที่สุดคือแทนที่อินสแตนซ์ทั้งหมดของฟังก์ชันไลบรารี DMdriver ด้วยอินสแตนซ์ของคุณ มีทั้งหมดสามอย่าง: test.setPoint (int x, int y) ตั้งค่าเอาต์พุต #x เป็น Y (Y เป็นตัวเลข 16 บิต); test.clearAll() ตั้งค่าเอาต์พุตทั้งหมดเป็นศูนย์ และ test.sendAll() จะรีเฟรชข้อมูลในไดรเวอร์ LED (ส่งข้อมูลที่นั่น เปลี่ยนสถานะ LED พร้อมกัน) แม้จะไม่มีรีโมตก็ใช้งานได้ เมื่อเสร็จแล้ว ให้ตรวจสอบส่วนก่อนหน้าของคำแนะนำนี้ แมปปุ่มบนรีโมตของคุณและใส่รหัสลงในไฟล์รวม

หากคุณเป็นเจ้าของ UltiBlink ที่น่าภาคภูมิใจ คุณจะสามารถเรียกใช้ภาพร่างได้ทันที (คุณมีไลบรารี DMdriver ใช่ไหม); โปรดติดต่อฉันหากมีสิ่งใดผิดพลาด คุณรู้ที่อยู่

ขอให้โชคดี มีความสุข ถามคำถาม ฉันจะพยายามตอบคำถาม สุขสันต์วันคริสต์มาสที่จะมาถึง และหวังว่าจะเขียนอะไรใหม่ๆ เร็วๆ นี้

แนะนำ: