สารบัญ:
- ขั้นตอนที่ 1: อะไหล่
- ขั้นตอนที่ 2: เทคโนโลยีและวิธีการที่เข้ากันได้
- ขั้นตอนที่ 3: การเดินสายไฟ
- ขั้นตอนที่ 4: โปรแกรม Arduino
- ขั้นตอนที่ 5: ใส่ทุกอย่างลงในกล่อง
- ขั้นตอนที่ 6: สรุปและอนาคต
วีดีโอ: Arduino Powered, แถบไฟ LED ซีดจางที่ควบคุมด้วยเซนเซอร์: 6 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:05
ฉันเพิ่งปรับปรุงห้องครัวและรู้ว่าแสงจะ "ยกระดับ" รูปลักษณ์ของตู้ ฉันไปสำหรับ 'True Handless' ดังนั้นฉันจึงมีช่องว่างใต้พื้นผิวการทำงาน เช่นเดียวกับคิกบอร์ด ใต้ตู้ และด้านบนของตู้ที่พร้อมใช้งาน และต้องการจุดไฟ หลังจากมองไปรอบ ๆ ฉันก็ไม่พบสิ่งที่ต้องการจริงๆ และตัดสินใจลองทำด้วยตัวเอง
สำหรับการจัดแสง ฉันเลือกแถบ LED สีขาวนวลสีเดียว (ชนิดกันน้ำพร้อมเคลือบพลาสติกที่ยืดหยุ่นเพื่อการป้องกัน)
สำหรับตู้ติดผนัง เนื่องจากด้านล่างแบนราบ ฉันจึงเลือกไฟที่มีรายละเอียดต่ำมากแล้วเดินสายไฟภายในตู้และรอบๆ ด้านหลัง (ภายในตู้ฉันตัดร่องโดยใช้สายไฟเดรเมล แล้วใส่กลับเข้าไปใหม่ เมื่อสายเคเบิลอยู่ข้างในจึงไม่มีสัญญาณ)
แต่… ฉันไม่ต้องการสวิตช์ขนาดใหญ่ และต้องการรูปลักษณ์ระดับพรีเมียมของแสงที่ปรากฏ ดังนั้นหลังจากมองไปรอบ ๆ และพบสวิตช์ที่หรี่ขึ้น/ลง และสวิตช์ที่เปิดใช้งาน Alexa ตัวหนึ่ง ฉันก็ยังหาไม่เจอ ซึ่งสามารถใช้แสงทั้งหมดและยังทำให้ดูดี ดังนั้นฉันจึงตัดสินใจทำด้วยตัวเอง
โปรเจ็กต์ของฉันคือการผลิตอุปกรณ์ชิ้นเดียวที่สามารถจ่ายไฟให้กับไฟทั้งสี่ดวงได้ โดยที่เซ็นเซอร์แบบพาสซีฟที่เซและจางลงอย่างรวดเร็ว – ทำต่อไปจนกว่าฉันจะออกจากห้องครัวและสวิตช์ "บังคับ" ให้เปิดอยู่ หรือ ถ้าฉันปล่อยให้ครัวจางหายไปหลังจากเวลาที่กำหนดถ้าไม่เห็นใคร
(และไม่มีค่าใช้จ่ายมากไปกว่าหน่วยที่สร้างไว้ล่วงหน้าจาก Amazon – พร้อมอะไหล่!)
นี่คือวิดีโอการใช้งานจริง
ขั้นตอนที่ 1: อะไหล่
ฉันมีรายการชิ้นส่วนที่ฉันใช้จาก Amazon ด้านล่าง อย่าลังเลที่จะคลิกลิงก์เพื่อซื้อ แต่หากคุณมีสินค้าที่คล้ายกันอยู่รอบ ๆ ให้ใช้พวกเขา !!! โปรดทราบว่าสิ่งเหล่านี้บางส่วนเป็น 'หลายรายการ' ดังนั้นคุณควรมีอะไหล่เพียงพอสำหรับทำของสำหรับเพื่อนและครอบครัว หรือสำหรับโครงการอื่น ๆ - แต่มีราคาถูกมากที่ซื้อออกมักจะหักด้วยค่าขนส่งอย่างไรก็ตาม…..
ชิ้นส่วนสำหรับโครงการนี้:
ชุด Arduino แบบเต็ม (หมายเหตุ: ไม่จำเป็น แต่มีหลายอย่างสำหรับการเล่นในอนาคต!):
Arduino NANO (ใช้ในกล่อง):
เซ็นเซอร์ PIR:
แถบไฟ LED:
ไดรเวอร์ LED (แหล่งจ่ายไฟ):
บอร์ด MOSFET:
กดเพื่อทำสวิตช์:
กล่องดำสำหรับใส่ Arduino และ MOSFET:
กล่องสีขาวสำหรับเซ็นเซอร์และสวิตช์:
การต่อสายจากส่วนประกอบเข้ากับแถบ LED:
ปลั๊กและซ็อกเก็ต 2.1 มม.:
สายสำหรับเชื่อมต่อ Arduino กับส่วนประกอบอื่นๆ:
ฮีทซิงค์ระบายความร้อน (สำหรับ MOSFET):
เทปกาวสองหน้าแบบใช้ความร้อน:
ปลอกหดความร้อน
ขั้นตอนที่ 2: เทคโนโลยีและวิธีการที่เข้ากันได้
ในการสร้างสิ่งนี้ อันดับแรก เราต้องสร้างวงจร…
ในการเริ่มต้น ฉันใช้เขียงหั่นขนมและ Ardiuno Uno ขนาดเต็ม ฉันไม่เคยใช้ Arduino มาก่อน ฉันซื้อแพ็คเกจที่มี Uno ของบริษัทอื่นและชิ้นส่วนทั้งชุด (ซึ่งหลังจากนี้ ฉันจะใช้ประโยชน์จากโครงการอื่นๆ) คุณไม่จำเป็นต้องทำสิ่งนี้หากคุณกำลังติดตามโครงการนี้ แต่จะเป็นความคิดที่ดีหากสิ่งนี้อาจทำให้คุณสร้างสิ่งอื่นได้เช่นกัน
เขียงหั่นขนมช่วยให้คุณกดสายไฟและส่วนประกอบลงบนกระดานพลาสติกเพื่อให้คุณทดสอบการออกแบบชิ้นส่วนอิเล็กทรอนิกส์ได้
ฉันใส่มันร่วมกับไฟ LED สีแดงสองสามดวง และสิ่งนี้ทำให้ฉันสามารถตรวจสอบว่าส่วนการซีดจางของโปรแกรมทำงานอย่างไร (ฉันตั้งค่าให้หมดเวลาชั่วคราวหลังจาก 10 วินาที เพื่อให้เห็นเอฟเฟกต์ของการเฟดเข้าและออกที่เซ). วิธีการทำงานคือ LED จะเปิด/ปิดทันที (ต่างจากหลอดไฟทั่วไป) ดังนั้นคุณจึงไม่ต้องใส่แรงดันไฟฟ้าที่ปรับเปลี่ยนได้ – คุณสามารถเปิดและปิดได้อย่างรวดเร็วจนดูเหมือนไม่สว่าง. สิ่งนี้เรียกว่าการปรับคลื่นพัลส์ (PWM สำหรับระยะสั้น) โดยพื้นฐานแล้ว ยิ่งคุณ "เปิด" ไว้นานเท่าไร ก็ยิ่งสว่างขึ้นเท่านั้น
หมายเหตุ: เมื่อฉันต่อแถบไฟจริงแล้ว การดึงปัจจุบันจากแถบที่สมบูรณ์แต่ละแถบจะทำให้แถบสว่างน้อยลงเล็กน้อยและจางลงต่างกันเล็กน้อย - ดังนั้นฉันจึงสร้างโปรแกรมด้วยการตั้งค่าที่กำหนดค่าได้บางอย่าง)
แม้ว่าคุณสามารถซื้อปลั๊กไฟขนาดเล็กเพื่อขับเคลื่อนแถบ LED ได้โดยตรง เนื่องจากฉันมีสี่ตัว ฉันจึงตัดสินใจซื้อไดรเวอร์ LED (โดยทั่วไปแล้วจะเป็นแหล่งจ่ายไฟที่มีเอาต์พุตกระแสไฟที่สูงกว่า) ฉันให้คะแนนสิ่งนี้มากเกินไปเพราะฉันไม่ได้ตรวจสอบการออกรางวัลจริงจนกว่าจะสร้างเสร็จ (ในขณะที่ฉันทำสิ่งนี้ทั้งหมดก่อนที่จะติดตั้งห้องครัว) หากคุณกำลังจะดัดแปลงสิ่งนี้ให้เข้ากับห้องครัวที่มีอยู่ (หรือสิ่งที่คุณใช้สำหรับสิ่งนี้) คุณสามารถวัดการดึงปัจจุบันต่อแถบ เพิ่มค่าเข้าด้วยกันแล้วเลือกไดรเวอร์ LED ที่เหมาะสม (ระดับพลังงานถัดไปขึ้นไป)
หลังจากลองบอร์ดแล้ว ฉันก็รู้ว่ากระแสไฟที่ดึงออกมาจากหลอดไฟจะสูงเกินไปที่จะขับโดยตรงจาก Arduino ดังนั้นสำหรับยูนิตจริง ฉันใช้ MOSFET บางตัว ซึ่งโดยทั่วไปแล้วจะทำหน้าที่เหมือนรีเลย์ หากได้รับพลังงาน (จากด้านพลังงานต่ำ) จากนั้นจึงเปิดการเชื่อมต่อที่ด้านกระแสไฟสูง
ฉันโกงที่นี่ – ฉันสามารถซื้อ MOSFET จริงได้ แต่มีบางแผงวงจรที่ติดตั้งอยู่แล้วพร้อมกับขั้วต่อสกรูและไฟ LED SMD LED เล็ก ๆ ที่น่ารักบนบอร์ดเพื่อให้คุณเห็นสถานะของพวกเขา ประหยัดเวลาในการบัดกรี? ใช่!
แม้แต่กับ MOSFET เรตติ้งสูงสุดของความยาวของแถบ LED ก็ยังคงวาด AMP สองสามตัว และ MOSFET แนะนำให้เพิ่มแผ่นระบายความร้อนเพื่อช่วยให้พวกมันเย็นลง ดังนั้นฉันจึงได้ฮีทซิงค์ขนาดเล็กและใช้เทปความร้อนสองด้านติดบนส่วนโลหะของฮีทซิงค์ เมื่อใช้พลังงานเต็มที่ พวกมันก็ยังร้อนอยู่ แต่หลังจากปรับความสว่างสูงสุดในโปรแกรมของฉันแล้ว (ไฟ LED สว่างเกินไป) ฉันพบว่า MOSFET ไม่ร้อนเลย แต่ก็ยังคุ้มค่าที่จะเพิ่มเพื่อยืดอายุการใช้งานของส่วนประกอบ หรือถ้าคุณเลือกระดับที่สว่างกว่าที่ฉันทำ
เซนเซอร์ยังถูกบรรจุไว้แล้วบนแผงวงจรขนาดเล็ก ซึ่งรวมถึงวงจรสนับสนุนทั้งหมด รวมทั้งจัมเปอร์สองสามตัว (หมุดขนาดเล็กที่มีลิงก์ ซึ่งคุณสามารถสลับไปมาระหว่างตำแหน่งเพื่อเลือกตัวเลือกต่างๆ ได้) และตัวแปร หมดเวลา. ในขณะที่เราใช้สิ่งนี้เพื่อเรียกตัวจับเวลาของเราเอง เราสามารถปล่อยให้มันอยู่ในตำแหน่งเริ่มต้น
ฉันเพิ่มสวิตช์ Push to Make ขนาดเล็กใกล้กับเซ็นเซอร์เพื่อให้ฉันสามารถ "เปิด" ไฟได้อย่างต่อเนื่องและปิดไฟด้วยการกดครั้งที่สอง นี่เป็นส่วนประกอบที่ฉันมีปัญหามากที่สุดเนื่องจากการรวมกันของสิ่งต่าง ๆ หมายความว่า Arduino มักจะคิดว่ามีการกดสวิตช์ ดังนั้นมันจะเปิดและปิดไฟแบบสุ่ม ดูเหมือนว่าจะเป็นการผสมผสานระหว่างสัญญาณรบกวนภายใน Arduino ความยาวของสายเคเบิล สัญญาณรบกวนบนสายกราวด์/0V และการเชื่อมต่อภายในสวิตช์มีเสียงดัง ดังนั้นพวกเขาจึงต้อง 'ดีเด้ง' ฉันเล่นกับของสองสามอย่าง แต่สุดท้ายก็ตกลงที่จะตรวจสอบโปรแกรม ฉันกำลังกดปุ่มสองสามมิลลิวินาที – โดยทั่วไปแล้วจะเด้งออก แต่ก็ไม่สนใจเสียงรบกวนใดๆ ด้วย
สำหรับยูนิตจริง ฉันพบกล่องเล็กๆ ที่ไม่เกะกะสำหรับติดตั้งเซ็นเซอร์และสวิตช์กด และอีกกล่องหนึ่งที่ติดตั้งแผงและสายเคเบิล MOSFET ทั้งหมด เพื่อทำให้สิ่งต่างๆ ง่ายขึ้น ฉันซื้อสายเคเบิลแบบสองคอร์ที่สามารถต่อกระแสไฟได้ (และทำเครื่องหมายหนึ่งสายเพื่อให้ระบุได้ง่าย) และวิ่งไปรอบๆ ห้องครัวจนถึงจุดเริ่มต้นของแถบไฟแต่ละแถบ ฉันยังซื้อซ็อกเก็ตและปลั๊ก ซึ่งอนุญาตให้ฉันถอดสายเคเบิลบนปลั๊ก และติดตั้งซ็อกเก็ตสี่ตัวในกล่องที่ใหญ่ขึ้น ด้วยวิธีนี้ ฉันสามารถจัดลำดับแถบไฟใหม่ โดยเริ่มจากคิกบอร์ด ผ่านมือจับ ใต้ตู้ และเหนือไฟตู้ เพียงแค่ถอดปลั๊กแทนที่จะเปลี่ยนรหัส
กล่องนี้ยังติดตั้ง Arduino NANO อย่างสะดวก (อีกครั้งกับบอร์ดของบริษัทอื่นที่มีราคาต่ำกว่า 3 ปอนด์) ที่ด้านบน ในการนำการเชื่อมต่อเล็กๆ ออกจาก NANO และ MOSFETS ฯลฯ ฉันใช้สายเคเบิลแบบแกนเดี่ยวหลากสี (ฉันใช้สายที่มีฉนวนกันความร้อน แต่คุณไม่จำเป็นต้องทำ) ฉันยังคงใช้สายเคเบิลสองคอร์ที่มีกระแสไฟสูงกว่าจาก MOSFET ไปยังซ็อกเก็ต
ในการเจาะรูกล่อง ฉันโชคดีที่มีสว่านแบบเสา แต่ถึงไม่มี คุณยังสามารถเจาะรูนำร่องด้วยดอกสว่านที่เล็กกว่า แล้วขยายรูให้ได้ขนาดที่ต้องการโดยใช้ดอกสว่านแบบขั้นบันได (https:// amzn.to/2DctXYh) วิธีนี้จะทำให้คุณมีรูที่เรียบร้อยและควบคุมได้มากขึ้น โดยเฉพาะอย่างยิ่งในกล่อง ABS
เจาะรูตามแผนภาพ
กล่องสีขาว ฉันทำเครื่องหมายตำแหน่งของเซ็นเซอร์และตำแหน่งที่เลนส์เฟรสเนลสีขาววางอยู่ จากนั้นเมื่อฉันพบว่าจุดศูนย์กลางของสิ่งนี้อยู่ตรงไหน ฉันเจาะรูนำร่องแล้วใช้ดอกสว่านแบบขั้นบันไดที่ใหญ่กว่าเพื่อขยายให้กว้างขึ้น (คุณสามารถใช้ดอกสว่าน 'ไม้' ที่มีขนาดใหญ่กว่านั้นได้) จากนั้นฉันต้องทรายรูให้ใหญ่ขึ้นเล็กน้อย แต่ฉันไม่ได้ดันเลนส์เฟรสทั้งหมดเข้าไปในรู - การทำให้รูเล็กลง ไม่ได้ทำให้ 'มองเห็นเซ็นเซอร์ได้
คุณจะพบกับกล่องสีขาวที่มีสลักสองสามอันที่ยื่นออกมาด้านข้างเพื่อให้คุณขันสกรูกล่องกับผนัง ฯลฯ แต่ฉันตัดมันออก จากนั้นฉันก็ขยายช่องเจาะเล็กๆ ในกล่องที่ออกแบบมาสำหรับสายเคเบิลด้านหนึ่งให้พอดีกับสายเคเบิล 4 คอร์ที่ใหญ่กว่าที่ฉันใช้ และอีกด้านหนึ่งของกล่องฉันขยายให้พอดีกับสวิตช์ (ดูรูป)
ขั้นตอนที่ 3: การเดินสายไฟ
ดูแผนภาพการเดินสายไฟที่แนบมา
โดยพื้นฐานแล้ว คุณสามารถใช้ขั้วต่อแบบกดแล้วบัดกรีในพินที่มาพร้อมกับ Arduino หรืออย่างที่ฉันทำ เพียงแค่บัดกรีโดยตรงกับหมุดบนบอร์ดของ Arduino เช่นเดียวกับงานบัดกรีใดๆ หากคุณไม่มีประสบการณ์ ให้ดูวิดีโอ Youtube และฝึกฝนก่อน - แต่โดยพื้นฐานแล้ว: 1) ใช้ความร้อนที่ดี (ไม่ร้อนเกินไปและไม่เย็นเกินไป) บนเตารีดและตรวจดูให้แน่ใจว่าปลายไม่มีรู. 2) อย่า 'ใส่' บัดกรีลงบนปลายเตารีด (แม้ว่าจะเป็นการดีที่จะ 'ดีบุก' ปลายเมื่อเริ่มใช้งานครั้งแรก แล้วเช็ดหรือเคาะส่วนเกินออก - ฝึกแตะปลายเหล็กลงบนส่วนประกอบและ หลังจากนั้นไม่นานให้แตะบัดกรีที่ส่วนปลายและส่วนประกอบพร้อมกันและควร 'ไหล' ลงบนบอร์ด 3) อย่าทำให้ส่วนประกอบร้อนเกินไป (สำคัญ!!!) - หากดูเหมือนว่าจะไม่ไหล ทิ้งไว้ให้เย็นแล้วลองใหม่อีกครั้ง และอย่าทำงานในบริเวณเดิมนานเกินไป 4) เว้นแต่คุณมีสามมือหรือมีประสบการณ์ในการถือตะเกียบ ให้ซื้อหนึ่งใน Helping Hands เหล่านั้นเพื่อยึดส่วนประกอบเข้าด้วยกัน (เช่น
เพื่อให้ชีวิตง่ายขึ้น ฉันยังยกเลิกการบัดกรีตัวเชื่อมต่อ 3 พินบนบอร์ด MOSFET เมื่อต้องการทำเช่นนี้ ให้หลอมโลหะบัดกรีบางส่วนเข้ากับจุดเชื่อมที่มีอยู่เพื่อช่วยให้ไหลอีกครั้ง จากนั้นใช้คีมดึงหมุดผ่านในขณะที่ตัวประสานยังหลอมเหลวอยู่ ช่วยได้ถ้าคุณมีปั๊มหรือไส้ตะเกียงเพื่อดึงตัวประสานที่หลอมละลายออกไปก่อนที่คุณจะดึงส่วนประกอบออก (เช่น https://amzn.to/2Z8P9aT) แต่คุณสามารถทำได้โดยไม่ต้องใช้มัน ในทำนองเดียวกัน คุณสามารถประสานโดยตรงกับหมุดได้หากต้องการ (แต่จะเรียบร้อยกว่าถ้าคุณต่อสายเข้ากับบอร์ดโดยตรง)
ทีนี้มาดูแผนภาพการเดินสายกัน
นำลวดแกนเดี่ยวที่ละเอียดแล้วเอาฉนวนออกเล็กน้อย (ฉันพบว่าเครื่องปอกและคัตเตอร์ rolson https://amzn.to/2DcSkom ดี) จากนั้นบิดสายไฟแล้วละลายบัดกรีเล็กน้อย ถือไว้ด้วยกัน ดันลวดผ่านรูในบอร์ดแล้วประสานลวดเข้าที่
ทำต่อสำหรับสายไฟทั้งหมดบน Arduino ที่ฉันได้ระบุไว้ (ใช้จำนวนพินดิจิตอลที่คุณต้องการ - ฉันมีไฟ 4 ชุด แต่คุณสามารถใช้มากหรือน้อยได้) ควรใช้สายเคเบิลสีที่ตรงกับการใช้งาน (เช่น 12V สีแดง สีดำ GND ฯลฯ)
ในการทำให้ทุกอย่างเรียบร้อยและป้องกันการลัดวงจร ผมขอแนะนำให้เลื่อนปลอกหุ้มด้วยความร้อนชิ้นเล็กๆ (https://amzn.to/2Dc6lD3) สำหรับการเชื่อมต่อแต่ละครั้งบนลวดก่อนทำการบัดกรี ถือให้ห่างในขณะที่คุณบัดกรี จากนั้นเมื่อข้อต่อเย็นและหลังจากทดสอบทุกอย่างแล้ว ให้เลื่อนไปที่จุดเชื่อมและให้ความร้อนด้วยปืนความร้อนสักครู่ มันหดลงเพื่อให้ข้อต่อเรียบร้อย
หมายเหตุ: ฉันอ่านที่ไหนสักแห่งว่ามีสัญญาณไขว้ระหว่างหมุดบางตัวบน Arduino D12 หรือ D8 เพื่อความปลอดภัย ฉันใช้ D3 สำหรับเอาต์พุตที่สี่ - แต่ถ้าคุณต้องการลองใช้ตัวอื่น โปรดอย่าลืมอัปเดตในโค้ด
ตัดสายเคเบิลให้มีความยาวพอสมควรเพื่อให้พอดีกับกล่อง จากนั้นตัดและดีบุกที่ปลายอีกครั้ง คราวนี้ บัดกรีสายเคเบิลเข้ากับบอร์ด MOSFET บนหมุดตามที่แสดง เอาต์พุตดิจิตอลแต่ละตัว (D9, D10, D11 และ D3) ควรบัดกรีกับหนึ่งในสี่แผง สำหรับเอาต์พุต GND ฉันนำพวกเขาทั้งหมดมารวมกันและรวมเข้ากับพวกเขาด้วยการบัดกรี - ไม่ใช่วิธีที่เรียบร้อยที่สุด แต่ทั้งหมดนั้นซ่อนอยู่ในกล่องอยู่ดี….
Arduino เป็น MOSFET
แรงดันไฟฟ้าขาเข้าที่ฉันต่อสาย +12V และ GND ในลักษณะเดียวกัน และใส่สายเคเบิล 2 คอร์และความยาวสั้น ๆ บางส่วนลงใน Chocblock สิ่งนี้ทำให้ฉันใช้ Choblock เพื่อบรรเทาความเครียดสำหรับพลังงานที่เข้ามาจากไดรเวอร์ LED/PSU และยังอนุญาตให้ต่อสายเคเบิล 2 คอร์ที่หนาขึ้นได้อย่างเรียบร้อยยิ่งขึ้น ตอนแรกฉันทำดีบุกที่ปลายสายเคเบิล แต่พบว่ามันไม่พอดีในการเชื่อมต่อบนบอร์ด MOSFET เลยจบลงด้วยการตัดปลายกระป๋องออกและติดตั้งได้ดีกว่า
ฉันใช้สายเคเบิล 2 คอร์ที่มีความยาวมากกว่า 4 ซม. และบัดกรีเข้ากับซ็อกเก็ต 2.1 โปรดทราบว่าสิ่งเหล่านี้มีสามพินและอีกอันหนึ่งใช้เพื่อป้อนฟีดเมื่อลบการเชื่อมต่อ ใช้การเชื่อมต่อสำหรับพินด้านใน (12V) และด้านนอก (GND) และปล่อยให้พินที่สามถูกตัดการเชื่อมต่อ จากนั้นใส่สายเคเบิลแต่ละเส้นผ่านรูที่ด้านข้างของกล่อง ใส่น็อต จากนั้นเสียบเข้าไปในขั้วต่อเอาท์พุตของขั้วต่อ MOSFET แล้วขันให้แน่น
การเชื่อมต่อเซ็นเซอร์
ใช้สายเคเบิลสี่แกนตัดความยาวให้ยาวพอที่จะเดินทางจากจุดที่คุณซ่อน PSU และกล่องไปยังตำแหน่งที่คุณต้องการวางเซ็นเซอร์ (ตรวจสอบให้แน่ใจว่านี่คือตำแหน่งที่จะจับคุณเมื่อคุณเดินเข้าไปในพื้นที่ แต่ไม่สะดุดเมื่อมีคนเดินผ่านมาห้องข้างๆ!)
บัดกรีสายไฟเข้ากับหมุดบนแผงเซ็นเซอร์ (คุณสามารถถอดหมุดออกได้หากต้องการ) และใช้สายเคเบิลแบบสั้น (สีดำ!) ต่อสายลิงก์เพื่อต่อสาย GND ไปที่ด้านหนึ่งของสวิตช์ จากนั้นบัดกรีสายไฟอีกเส้นจากสายเคเบิล 4 คอร์ไปยังอีกด้านหนึ่งของสวิตช์
วางเซ็นเซอร์และสวิตช์ลงในกล่องสีขาว จากนั้นเดินสายเคเบิลไปรอบๆ ห้องของคุณ จากนั้นดันปลายอีกด้านของสายเคเบิลผ่านรูในกล่องสีดำ แล้วบัดกรีสายไฟเข้ากับหมุดที่ถูกต้องบน Arduino
วางสายผูกเล็กๆ ไว้รอบๆ สายเคเบิลที่อยู่ภายในกล่องเพื่อช่วยป้องกันไม่ให้สายนี้ดึงและทำให้การเชื่อมต่อของคุณบน Arduino เสียหาย
พลัง
ไดรเวอร์ LED (พาวเวอร์ซัพพลาย) ที่ฉันซื้อมีเอาต์พุตเอาต์พุตสองตัว - ทั้งสองอันมีเอาต์พุต 12V และ GND ดังนั้นฉันจึงใช้ทั้งสองอย่างและแยกการใช้งานเพื่อให้ไฟ LED 2 ดวงผ่าน MOSFET สองตัวและใช้พลังงานจากหนึ่งในนั้น เอาต์พุตของพาวเวอร์ซัพพลาย และไฟ LED อีก 2 ดวงจากเอาต์พุตอื่น คุณอาจเลือกแหล่งจ่ายไฟอื่นและมีเอาต์พุตเพียงตัวเดียว ทั้งนี้ขึ้นอยู่กับโหลดจากไฟ LED ที่คุณใช้
ดังนั้น กล่องของฉันจึงมีรู 2 x ที่สายเคเบิลจากพาวเวอร์ซัพพลายเข้ามา จากนั้นฉันก็ใส่ Chocblock เข้าไปข้างในเพื่อทำการเชื่อมต่อและเพื่อบรรเทาความเครียด
ขั้นตอนที่ 4: โปรแกรม Arduino
โปรแกรม (ที่แนบมาด้วย) ควรจะอธิบายในตัวเองได้ค่อนข้างดี และฉันได้พยายามแสดงความคิดเห็นมาโดยตลอด โปรดแก้ไขตามข้อกำหนดของโครงการของคุณเอง
สำคัญ: เดิมทีฉันตั้งค่านี้บนชุดชิ้นส่วนและ Arduino UNO หากคุณใช้บอร์ด Arduino NANO แสดงว่า bootloader ของบอร์ดนั้นน่าจะเก่ากว่า คุณไม่จำเป็นต้องอัปเดตสิ่งนี้ (มีวิธีการทำเช่นนี้ แต่ไม่จำเป็นสำหรับโครงการนี้) สิ่งที่คุณต้องทำคือตรวจสอบให้แน่ใจว่าคุณเลือก Arduino NANO ใน Tools>Board แล้วเลือกอันที่ถูกต้องใน Tools>Processor เมื่อคุณเลือกพอร์ต COM แล้ว คุณยังสามารถเลือกดูว่าเกิดอะไรขึ้นหากคุณเชื่อมต่อกับคอนโซลซีเรียล (เครื่องมือ > การตรวจสอบอนุกรม)
นี่เป็นโครงการ Arduino แรกของฉัน และฉันก็ยินดีที่การดาวน์โหลดและติดตั้งและใช้เครื่องมือการเขียนโปรแกรม Arduino ทำได้ง่ายมาก (สิ่งที่ช่วยให้คุณพิมพ์โปรแกรมและอัปโหลดไปยังบอร์ดได้) (ดาวน์โหลด IDE จาก
เพียงแค่เสียบบอร์ดเข้ากับพอร์ต USB จะปรากฏเป็นอุปกรณ์ที่คุณสามารถอัปโหลดโปรแกรมไปยังบอร์ดและโค้ดจะทำงาน!
รหัสทำงานอย่างไร
โดยทั่วไปมีการตั้งค่าเล็กน้อยด้านบนที่ฉันกำหนดทุกอย่าง ที่นี่คุณสามารถเปลี่ยนหมุดที่คุณใช้สำหรับไฟ ความสว่างสูงสุดของไฟ (255 คือสูงสุด) ความเร็วในการจางลง และความเร็วของแสงจางลง
นอกจากนี้ยังมีค่าออฟเซ็ตซึ่งเป็นช่องว่างระหว่างแสงจางหนึ่งไปยังอีกดวงหนึ่ง ดังนั้นคุณจึงไม่ต้องรอให้แต่ละแสงจางลง คุณสามารถเริ่มการจางครั้งต่อไปก่อนที่แสงก่อนหน้าจะจางหายไป
ฉันเลือกค่าที่เหมาะกับฉัน แต่โปรดอย่าลังเลที่จะทดลอง อย่างไรก็ตาม: 1) ฉันไม่แนะนำให้ปรับความสว่างสูงสุดให้สูงเกินไป - แม้ว่ามันจะใช้งานได้ แต่ฉันรู้สึกว่าไฟสว่างเกินไปและไม่ซับซ้อน (และด้วย LED ยาว ๆ กระแสไฟเพิ่มเติมทำให้ MOSFET ร้อนขึ้น - ซึ่ง เปลี่ยนกล่องให้มีช่องระบายอากาศมากขึ้น) 2) ออฟเซ็ตใช้ได้กับค่าปัจจุบัน แต่เนื่องจากวิธีที่ไฟ LED ไม่เพิ่มความสว่างเป็นเส้นตรงตามกำลังที่ใช้ คุณอาจพบว่าคุณต้องปรับพารามิเตอร์อื่นๆ จนกว่าคุณจะได้ผลดี 3) ในกิจวัตรการทำให้จางลง ฉันได้ตั้งค่าความสว่างสูงสุดของไฟใต้เคาน์เตอร์ของฉันให้สูงสุดที่ 255 (พวกมันดึงกระแสไฟน้อยกว่า ดังนั้นอย่าทำให้ MOSFET ร้อนเกินไป และฉันต้องการดูว่าฉันกำลังทำอาหารอะไรอยู่ด้วย!)
หลังจากส่วนการติดตั้งจะมีวงใหญ่หนึ่งวง
สิ่งนี้เริ่มต้นด้วยแฟลชหนึ่งหรือสองดวงบน LED บนเครื่องบิน (เพื่อให้คุณเห็นว่ามันทำงานและเป็นความล่าช้าที่จะทำให้คุณมีโอกาสเดินออกจากระยะของเซ็นเซอร์) จากนั้นโค้ดจะวนซ้ำเพื่อรอการเปลี่ยนแปลงที่กระตุ้นจากเซ็นเซอร์
เมื่อได้รับสิ่งนี้ จะเรียกใช้การกำหนดเส้นทาง TurnOn โดยจะนับถึง 0 จนถึงมูลค่ารวมของอุปกรณ์ทั้งหมด 4 เครื่องที่ค่าสูงสุดที่เลือก เพิ่มขึ้นตามจำนวนที่คุณระบุในค่า FadeSpeed1 ใช้คำสั่ง constrain เพื่อป้องกันไม่ให้แต่ละเอาต์พุตมีขนาดใหญ่กว่าความสว่างสูงสุด
จากนั้นจะอยู่ในลูปอื่น โดยจะรีเซ็ตค่าหากเซ็นเซอร์ถูกกระตุ้นอีกครั้งหากไม่มีการรีเซ็ต เมื่อตัวจับเวลาของ Arduino มาถึงจุดนี้ มันจะแยกตัวออกจากลูปและเรียกใช้รูทีน TurnOff
ณ จุดใด ๆ ระหว่างวนรอบ 'สถานะเปิด' หากกดสวิตช์นานกว่าสองสามมิลลิวินาที เราจะกะพริบไฟเพื่อยืนยัน แล้วตั้งค่าสถานะซึ่งทำให้ค่าตัวจับเวลาได้รับการรีเซ็ตเสมอ - ดังนั้นไฟจะไม่จางหายไป อีกครั้ง. การกดสวิตช์ครั้งที่สองจะทำให้ไฟกะพริบอีกครั้งและสำหรับลูปที่จะออก ปล่อยให้ไฟจางลงและเพื่อรีเซ็ต
ขั้นตอนที่ 5: ใส่ทุกอย่างลงในกล่อง
เมื่อคุณวางสายทุกอย่างเรียบร้อยแล้ว ก็ถึงเวลาทดสอบ
ฉันพบว่าตำแหน่งเดิมของฉันสำหรับเซ็นเซอร์ไม่ทำงาน ดังนั้นฉันจึงย่อสายและวางไว้ในตำแหน่งใหม่ - ฉันติดมันไว้ชั่วคราวด้วยหยดกาวร้อนละลาย แต่มันทำงานได้ดีมาก ฉันมี ปล่อยให้มันติดอยู่ตรงนั้นแทนที่จะใช้แผ่นเวลโคร
บนเซ็นเซอร์มีโพเทนชิโอมิเตอร์แบบปรับได้สองสามตัวซึ่งช่วยให้คุณปรับความไวของ PIR และระยะเวลาที่เซ็นเซอร์ถูกกระตุ้น ขณะที่เรากำลังควบคุมองค์ประกอบ 'นานแค่ไหน' ในโค้ด คุณสามารถปล่อยให้ค่านี้เป็นค่าต่ำสุดได้ แต่คุณสามารถปรับเปลี่ยนตัวเลือกความไวได้ตามต้องการ นอกจากนี้ยังมีจัมเปอร์ - ฉันปล่อยให้สิ่งนี้อยู่ในตำแหน่งเริ่มต้นและอนุญาตให้เซ็นเซอร์ 'retriggered' - ถ้ามันตรวจพบคุณเพียงครั้งเดียวแล้วก็หมดเวลาเสมอ ก็ถึงเวลาที่จะย้ายสวิตช์นี้!
เพื่อช่วยในการทดสอบ ฉันลดเวลาที่ไฟยังคงเปิดไว้ชั่วคราวให้เหลือประมาณ 12 วินาที แทนที่จะรอประมาณ 2 นาทีหรือมากกว่านั้น โปรดทราบว่าหากคุณทำให้เวลาน้อยกว่าเวลาที่ใช้ในการเฟดอินโดยสมบูรณ์ โค้ดจะเกินเวลาสูงสุดเสมอและจะค่อยๆ จางหายไปในทันที
สำหรับแถบ LED คุณต้องตัดแถบตามจุดที่ทำเครื่องหมายบนแถบ จากนั้น ใช้มีดคม (แต่ระวังอย่าตัดจนสุด!) ตัดผ่านสารเคลือบกันน้ำไปยังแถบโลหะ แล้วลอกออก โดยเปิดแผ่นบัดกรีทั้งสองชิ้น ใส่บัดกรีลงบนสิ่งเหล่านี้ (ระวังอย่าให้ร้อนมากเกินไป) แล้วติดลวดสองคอร์ จากนั้นบัดกรีปลั๊กที่ปลายอีกด้านของสายไฟเพื่อให้คุณสามารถเสียบเข้ากับซ็อกเก็ตเพื่อให้วงจรขับเคลื่อนได้
หมายเหตุ: แม้ว่าฉันจะซื้อคอนเน็กเตอร์ 90 องศาสำหรับแถบ LED ที่คุณสามารถเปิดได้ แต่ฉันพบว่าตัวเชื่อมต่อเหล่านี้ทำให้การเชื่อมต่อที่ไม่ดีจนเกิดการสั่นไหวหรือล้มเหลว ดังนั้นฉันจึงตัดแถบตามขนาดที่ต้องการและบัดกรีสายเคเบิลเชื่อมระหว่างชิ้นส่วนของแถบ LED แทน สิ่งนี้ช่วยได้เช่นกันเมื่อฉันต้องเปิดแถบใต้ตู้ เนื่องจากฉันต้องต่อกับเครื่องล้างจานและตู้เย็นนานขึ้น
เสียบทุกอย่างเข้าด้วยกันแล้วเสียบพาวเวอร์ซัพพลายเข้ากับแหล่งจ่ายไฟหลัก จากนั้นหากคุณเคลื่อนเข้าใกล้เซ็นเซอร์ PIR เซ็นเซอร์จะเริ่มทำงาน และคุณจะเห็นไฟจางลงอย่างสง่างาม
หากไฟดับในลำดับที่ไม่ถูกต้องเหมือนฉัน ให้หาว่าสายใดเป็นสายใด แล้วถอดปลั๊ก/เปลี่ยนสายเคเบิลเข้ากับเต้ารับอื่นจนกว่าคุณจะจางลงอย่างสวยงาม
คุณอาจต้องการปรับการตั้งค่าโปรแกรม (ฉันสังเกตเห็นว่าแถบ LED ยาวขึ้น แถบ LED จะเข้มขึ้นเมื่อ 'ความสว่างเต็มที่') และคุณสามารถเสียบ Arduino เข้ากับคอมพิวเตอร์ของคุณและอัปโหลดโปรแกรมใหม่อีกครั้ง
แม้ว่าฉันจะอ่านที่ไหนสักแห่งว่าไม่ควรมีอุปกรณ์จ่ายไฟสองตัวใน Arduino (USB ให้พลังงานด้วย) ฉันก็ลงเอยด้วยการเสียบ Arduino เข้ากับ Power Supply แล้วเสียบการเชื่อมต่อ USB เข้ากับคอมพิวเตอร์เพื่อที่ ฉันสามารถตรวจสอบสิ่งที่เกิดขึ้นได้โดยใช้จอภาพพอร์ตอนุกรม สิ่งนี้ใช้ได้ดีสำหรับฉัน ดังนั้นหากคุณต้องการทำเช่นนี้ ฉันได้ทิ้งข้อความซีเรียลไว้ในรหัสแล้ว
เมื่อคุณยืนยันว่าทุกอย่างใช้งานได้ ก็ถึงเวลาใส่ทุกอย่างลงในกล่อง สำหรับสิ่งนี้ฉันแค่ใช้กาวร้อน
หากคุณดูตำแหน่งของทุกอย่างในกล่อง คุณจะเห็นว่าบอร์ด MOSFET สามารถนั่งลงที่ด้านใดด้านหนึ่งของกล่อง และสายเคเบิลจากเอาต์พุตของลูปเหล่านี้อยู่รอบๆ และซ็อกเก็ต 2.1 มม. สามารถวางต่อไปได้ ผ่านรูและน็อตที่ยึดเข้ากับ MOSFET เพื่อยึดเข้าที่ หยดกาวเล็กๆ น้อยๆ จะช่วยยึดสิ่งเหล่านี้ให้เข้าที่ แต่ยังสามารถดึงออกได้อีกครั้งหากต้องการ
Arduino ควรเปิดด้านข้างที่ด้านบนของกล่องและ chocblock สำหรับการจ่ายไฟเข้าควรอยู่ที่ด้านล่าง
หากคุณมีเวลาวัดและบัดกรีสายเคเบิลทั้งหมดอีกครั้ง อย่าลังเลที่จะทำเช่นนี้ แต่เนื่องจากมันอยู่ในกล่องและซ่อนอยู่ใต้โต๊ะทำงานของฉัน ฉันจึงทิ้ง 'รังหนู' ที่เป็นสายไฟไว้ตรงกลางของ กล่อง (ห่างจากฮีทซิงค์บน MOSFET ในกรณีที่ร้อน)
จากนั้นเพียงแค่ปิดฝากล่อง เสียบปลั๊ก แล้วสนุกได้เลย!
ขั้นตอนที่ 6: สรุปและอนาคต
ฉันหวังว่าคุณจะพบว่าสิ่งนี้มีประโยชน์ และแม้ว่าฉันจะออกแบบสำหรับห้องครัวใหม่ของฉัน (ด้วยองค์ประกอบ LED สี่ชิ้น) แต่ก็สามารถปรับให้เข้ากับวัตถุประสงค์อื่นได้อย่างง่ายดาย
ฉันพบว่าเราไม่ค่อยใช้ไฟหลักสำหรับห้องครัว เนื่องจากไฟ LED เหล่านี้ให้แสงสว่างเพียงพอสำหรับวัตถุประสงค์ส่วนใหญ่ รวมทั้งทำให้ห้องครัวเป็นสถานที่ที่น่าสนใจยิ่งขึ้น
นี่เป็นโครงการ Arduino แรกของฉัน และจะไม่ใช่โครงการสุดท้ายของฉันแน่นอน เนื่องจากส่วนการเข้ารหัสทำให้ฉันใช้ทักษะการเขียนโค้ด (ที่เป็นสนิม!) แทนกระบวนการออกแบบทางอิเล็กทรอนิกส์ได้ และการเชื่อมต่อและการสนับสนุนของ Arduino ก็มอบฟังก์ชันเจ๋งๆ มากมายโดยไม่จำเป็นต้องใช้ เพื่อทำวงจรไฟฟ้าจำนวนมาก
ฉันสามารถซื้อ MOSFET เองได้ (หรือใช้วิธีอื่น) เพื่อขับเคลื่อนกระแสไฟสูงของแถบ LED แต่นั่นอาจหมายถึงการซื้อส่วนประกอบสนับสนุน (ไดโอด ตัวต้านทาน ฯลฯ) และ LED SMD บนบอร์ดก็มีประโยชน์ ดังนั้นฉันจึงรู้สึกว่าจ่ายเงินเพิ่มเล็กน้อยสำหรับกระดานมันสมเหตุสมผล
อาจเป็นไปได้ว่าคุณต้องการแก้ไขสิ่งนี้เพื่อขับเคลื่อนวงจรไฟประเภทอื่น หรือแม้แต่พัดลมหรือวงจรมอเตอร์อื่นๆ ในโครงการเฉพาะของคุณ ควรทำงานเหมือนกันและวิธีการปรับความกว้างพัลส์ควรทำงานกับอุปกรณ์เหล่านั้นได้ดี
ในห้องครัวของเรา ไฟควรจะเป็นไฟเพื่อเน้นเสียง ดังนั้นเราจึงใช้มันตลอดเวลา อย่างไรก็ตาม ตอนแรกฉันกำลังพิจารณาที่จะเพิ่มเซ็นเซอร์วัดแสงเพื่อเปิดใช้งานเฉพาะสถานะ 'เปิด' ที่เกิดขึ้นหากมันมืดเพียงพอ เนื่องจากลูปแบบ staged ในโค้ด จะเป็นเรื่องง่ายที่จะเพิ่ม Light Dependent Resistor ให้กับหนึ่งในหมุดอนาล็อกบน Arduino จากนั้นเปลี่ยนเงื่อนไขการฝ่าวงล้อมในลูป 'OFF' เพื่อรอให้เซ็นเซอร์และ LDR เป็น ต่ำกว่าค่าบางอย่างเช่นในขณะที่ ((digitalRead(SENSOR) == LOW) และ (LDR <= 128));.
แจ้งให้เราทราบว่าคุณคิดอย่างไรหรือทำอะไรกับสิ่งนี้และข้อเสนอแนะอื่น ๆ !
แนะนำ:
Arduino Powered Painting Robot: 11 ขั้นตอน (พร้อมรูปภาพ)
Arduino Powered Painting Robot: คุณเคยสงสัยหรือไม่ว่าหุ่นยนต์สามารถสร้างภาพวาดและงานศิลปะที่น่าหลงใหลได้หรือไม่? ในโครงการนี้ ฉันพยายามทำให้สิ่งนั้นเป็นจริงด้วย Arduino Powered Painting Robot วัตถุประสงค์คือเพื่อให้หุ่นยนต์สามารถสร้างภาพวาดได้ด้วยตัวเองและใช้รีฟ
Arduino Powered Multimeter: 8 ขั้นตอน (พร้อมรูปภาพ)
Arduino Powered Multimeter: ในโครงการนี้ คุณจะต้องสร้างโวลต์มิเตอร์และโอห์มมิเตอร์โดยใช้ฟังก์ชัน digitalRead ของ Arduino คุณจะสามารถอ่านค่าได้เกือบทุกมิลลิวินาที ซึ่งแม่นยำกว่ามัลติมิเตอร์ทั่วไปมาก สุดท้าย ข้อมูลสามารถเข้าถึงได้จาก
Led Solar Powered: 3 ขั้นตอน (พร้อมรูปภาพ)
Led Solar Powered: ระบบกู้คืนพลังงานอย่างง่ายโดยใช้แผงโซลาร์เซลล์และแผงเซลล์แสงอาทิตย์แบบ LED (ไม่มีแบตเตอรี่) โดยทั่วไปแผงเซลล์แสงอาทิตย์จะประกอบด้วยวัสดุซิลิกอน 2 ชั้น - วัสดุเซมิคอนดักเตอร์และชั้นแยก ถูกต่อสายเข้าด้วยกันและประกอบเป็นแผงหรือโมดูล ค้นหาเรา
USB Powered RGB LED ต้นคริสต์มาส: 9 ขั้นตอน (พร้อมรูปภาพ)
ต้นคริสต์มาส LED RGB LED ที่ขับเคลื่อนด้วย USB: ฉันตัดสินใจว่าจะทำของขวัญก่อนวันคริสต์มาสสักสองสามชิ้นให้เพื่อน ๆ ที่รักของฉันที่ Makerspace ฉันเป็นสมาชิกของ fizzPOP ฉันตัดสินใจว่าแทนที่จะสร้างมันทั้งหมดด้วยตัวเอง ฉันจะผลิตชุดอุปกรณ์เพื่อที่พวกเขาจะได้สนุกไปกับการสร้าง
โคมไฟซีดี LED แบบ USB Powered: 8 ขั้นตอน (พร้อมรูปภาพ)
โคมไฟซีดี LED แบบใช้ USB: โคมไฟซีดี LED แบบใช้พลังงานจาก USB เป็นอุปกรณ์ที่มีประโยชน์มาก ใช้พลังงานจากพอร์ต USB คุณจึงไม่ต้องการแหล่งจ่ายไฟภายนอกใดๆ ฉันใช้ลวดยึดแบบแข็งทำหน้าที่เป็นคอห่านและช่วยให้คุณโค้งงอแหล่งกำเนิดแสงในมุมและทิศทางต่างๆ ได้