สารบัญ:
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:04
ฉันมีเฟอร์นิเจอร์ 5 ชิ้นที่ต้องการติดตั้งไฟเส้น LED
ไฟ LED จะต้องถูกควบคุมจากระยะไกลด้วยตัวเลือกสำหรับเปิด/ปิดของ Alexa ไฟ LED ทั้งหมดต้องเปิดเครื่องและเปลี่ยนสีให้ตรงกันโดยกดที่รีโมทคอนโทรลเพียงครั้งเดียว พวกเขายังต้องจำสีที่เลือกล่าสุดเมื่อปิดเครื่อง
ตัวเลือกเปิด/ปิดของ Alexa นั้นควบคุมโดย ESP8266 การควบคุมระยะไกลทำได้โดยใช้ตัวควบคุมอินฟราเรดและกระจายข้อมูลสีโดยใช้เครื่องส่งและตัวรับสัญญาณ 433 MHz ราคาถูกมาก
ฉันมีการตั้งค่าเหมือนกันสำหรับไฟใต้ตู้ในห้องครัวของฉัน แต่ฉันใช้ตัวส่งและตัวรับ 315 MHz เนื่องจากฉันไม่ต้องการให้มีปฏิสัมพันธ์ใดๆ ระหว่างทั้งสอง
ขั้นตอนที่ 1: ส่วนประกอบ
ตามจำนวนองค์ประกอบโครงการของฉันส่วนใหญ่มีขนาดเล็กและงานส่วนใหญ่เสร็จสิ้นในซอฟต์แวร์
รีโมทคอนโทรลมาพร้อมกับแถบ LED RGB LED ราคาถูก (eBay)
แถบ LED นีโอพิกเซลที่ตั้งโปรแกรมได้ (ไม่ใช่ RGB)
Arduino pro mini (แม้ว่า Arduino ใด ๆ จะทำ)
ตัวรับอินฟาเรด
เครื่องส่งสัญญาณ 433MHz
เครื่องรับ 4 x 433MHz
OPTIONAL ESP8266 สำหรับ Alexa ON/OFF เท่านั้น (ไม่ใช่การควบคุมสี)
ทุกยูนิตใช้พลังงานจากเครื่องชาร์จโทรศัพท์มาตรฐาน
ESP8266 ใช้พลังงานจากตัวควบคุม 5v ถึง 3v ที่ป้อนโดยเครื่องชาร์จโทรศัพท์มาตรฐาน
ขั้นตอนที่ 2: มันทำงานอย่างไร
โครงการ theis มี 3 ส่วน
1) หน่วยหลัก
2) หน่วยสเลฟ
3) สวิตช์เสริมของ Alexa
ยูนิตหลักประกอบด้วย Arduino, ตัวรับสัญญาณอินฟราเรด, ตัวส่ง 433MHz และแถบ LED
Arduino ได้รับและถอดรหัสรหัสอินฟาเรดซึ่งจะควบคุมแถบนำแสงนีโอพิกเซล
เมื่อตั้งค่าสีบนยูนิตหลักแล้ว ข้อมูลจะถูกส่งไปยังยูนิตสเลฟผ่านเครื่องส่งสัญญาณ 433MHz
หน่วยสเลฟประกอบด้วย Arduino, ตัวรับสัญญาณ 433MHz และแถบ LED แบบนีโอพิกเซล
เมื่อได้รับรหัสจากยูนิตหลัก แถบ LED บนสเลฟทั้งหมดจะถูกตั้งค่าเป็นสีเดียวกัน
บันทึก:
ฉันจะใช้แถบ LED RGB แต่มีความขัดแย้งกับแถบ LED และตัวรับสัญญาณ 433MHz!
เป็นเพราะตัวจับเวลาภายในของ Arduinos การใช้ PWM บนพินมากเกินไปในขณะที่เปิดใช้งานเครื่องรับเป็นปัญหาซึ่งเป็นสาเหตุที่ฉันเลือกใช้แถบ LED ที่ตั้งโปรแกรมได้ - การควบคุมจำนวนมากบนพิน PWM เพียงอันเดียว
สวิตช์เสริมของ Alexa เป็นเพียง ESP2866-12e ที่มี 3 สวิตช์และ 2 เอาต์พุตพัลซิ่ง
ดูขั้นตอนซอฟต์แวร์สำหรับข้อมูลรายละเอียดเพิ่มเติม
การบอกว่า Alexa "เปิดไฟ" (ตั้งโปรแกรมได้โดยผู้ใช้) จะเป็นพัลส์พิน 10 ของ Arduino HIGH ซึ่งส่งรหัสเดียวกันกับปุ่ม IR transmiers ON ไฟปิดพัลส์พิน 11 สูงส่งรหัสเดียวกับปุ่มปิดเครื่องส่งสัญญาณ IR สวิตช์ควบคุมสีไม่ได้ !
โน๊ตสำคัญ
หากไม่ได้ใช้ตัวเลือก Alexa ทั้งขา Arduino 10 และ 11 จะต้องลัดวงจรลงกราวด์ไม่เช่นนั้นไฟ LED จะกะพริบ !!
ขั้นตอนที่ 3: ซอฟต์แวร์
ซอฟต์แวร์มี 3 ส่วน
1)หน่วยหลัก (leddir433-V2_RXTX.ino)
2) หน่วยสเลฟ (IR_rxarduino_V2.ino)
3} ซอฟต์แวร์สวิตช์เสริมของ Alexa ควรคัดลอกไฟล์ที่เหลืออีก 6 ไฟล์ลงในโฟลเดอร์เดียวก่อนอัปโหลดไปยัง ESP8266
หน่วยหลัก
พิน 2 บนยูนิตหลักที่เชื่อมต่อกับตัวรับสัญญาณ IR
Pin 6 เชื่อมต่อกับ Data ในแถบ LED
Pin 12 เชื่อมต่อกับเครื่องส่งสัญญาณ 433MHz
มีอาร์เรย์ที่เก็บรหัสจากตัวรับสัญญาณ IR ระดับ RG & B (0 - 255 ฉันใช้งานที่ความสว่างประมาณ 20% เท่านั้น) และพารามิเตอร์สุดท้าย (1 หรือ 0) ถูกใช้เป็นแฟล็ก จำ (1) หรือลืม (0) รหัสล่าสุดที่ได้รับ เมื่อเปิดไฟ LED ระบบจะใช้สีที่เลือกล่าสุด ฉันไม่ต้องการจำรหัสปุ่มเปิดและปิด เพียงแค่รหัสสี
หมายเหตุ: หากไม่ได้ใช้ตัวเลือก Alexa พิน 10 และ 11 ของ Arduino จะต้องเชื่อมต่อกับ 0v
หน่วยทาส
พินรับของเครื่องรับ 433MHz เชื่อมต่อกับพิน 2 ของ Arduino
แถบ LED เชื่อมต่อกับขา 6
แถบ LED ถูกกำหนดเป็นสีของรหัสที่ได้รับ
บันทึก:
ฉันเพิ่มแถบ LED ใหม่ไว้ด้านหลังโซฟา ดังนั้นฉันต้องการให้ไฟ LED สว่างกว่าในตู้
ฉันเพิ่งแก้ไขบรรทัด BOLD เพื่อคูณค่าที่ได้รับด้วย 2 โดยปกติแล้ว *2 จะถูกละเว้น !
โมฆะ settrip (int r, int g, int b){
สำหรับ (int n=0;n < N_LEDS;n++)
{ // Serial.println (n);
strip.setPixelColor(n, r*2, g*2, b*2); // strip.setPixelColor(n, r, g, b);
}
แถบ.show();
inString="";
msg=" ";
}
สวิตช์ Alexa
ฉันได้สร้าง (และใช้) 8 สวิตช์ของ Alexa วงจรนั้นเรียบง่ายและงานทั้งหมดเสร็จสิ้นในซอฟต์แวร์
ฉันไม่สามารถรับเครดิตสำหรับรหัสใด ๆ ฉันเพิ่งแก้ไขผลลัพธ์
เป็นการตั้งค่าปกติสำหรับการเขียนโปรแกรม ESP8266 และมี 'How To' มากมายบนเว็บ
เมื่อเปิดเครื่องครั้งแรก ESP จะตรวจสอบเพื่อดูว่าเคยเชื่อมต่อกับจุดเข้าใช้งานก่อนหน้านี้หรือไม่ หากไม่มีหรือจุดเชื่อมต่อก่อนหน้าไม่สามารถใช้งานได้อีกต่อไป จุดเชื่อมต่อดังกล่าวจะตั้งค่าให้เป็นจุดเชื่อมต่อพร้อมหน้าเว็บเพื่อให้คุณสามารถใส่ข้อมูลรับรองเราเตอร์และวลีของ Alexa เช่น 'Ambient Lights' หรือ 'Table โคมไฟ' ฯลฯ
วลี Alexa ต้องลงท้ายด้วย '*' เช่น Table Lamp*
พิน 4 ของ ESP ไปที่พิน 10 ของ Arduino
พิน 12 ของ ESP ไปที่พิน 11 ของ Arduino
Pin 5 เป็นเอาต์พุตเสริมสำหรับ LED พร้อมตัวต้านทานเพื่อแสดงการเชื่อมต่อ wifi (ฉันไม่ได้ใช้สิ่งนี้)
หากพิน 13 ของ ESP ต่อสายดิน (0v) ระหว่างเปิดเครื่อง วลีของ Alexa และข้อมูลรับรองเราเตอร์ล่าสุดจะถูกลบออก
การตั้งค่าเริ่มต้นหรือการตั้งค่าหลังจากต่อสายดินพิน 13 แล้ว (รีเซ็ตพารามิเตอร์)
หลังจากตั้งโปรแกรม ESP8266 หรือรีเซ็ตพารามิเตอร์แล้ว ควรเห็นสิ่งต่อไปนี้บนจอภาพอนุกรม Arduino:-
*WM: กำลังกำหนดค่าจุดเชื่อมต่อ… *WM: AutoConnectAP
*WM: ที่อยู่ IP ของ AP:
*WM: 192.168.4.1
*WM: เซิร์ฟเวอร์ HTTP เริ่มทำงาน
ตอนนี้ บนพีซีหรืออุปกรณ์มือถือ ไปที่การตั้งค่า wifi และเลือก AutoConnectAP
เปิดเบราว์เซอร์และในแถบที่อยู่พิมพ์ 192.168.4.1 (ดูรูป)
เลือก 'กำหนดค่า Wifi'
เลือกเราเตอร์ของคุณจากรายการและป้อนรหัสผ่านและวลีของ Alexa - อย่าลืม *
ตอนนี้ รีเซ็ต ESP
ไปที่แอป Alexa หรือขอให้เธอค้นหาอุปกรณ์ อุปกรณ์ใหม่จะถูกค้นพบ
ตอนนี้ใช้ Alexa เพื่อเปิดและปิดไฟได้แล้ว
แนะนำ:
Motion Reactive Surfboard LED Strips: 8 ขั้นตอน (พร้อมรูปภาพ)
Motion Reactive Surfboard LED Strips: เมื่อเร็ว ๆ นี้ เพื่อนบางคนและฉันค้นพบการโต้คลื่นในแม่น้ำ การใช้ชีวิตในมิวนิก เราโชคดีที่มีคลื่นแม่น้ำสามลูกที่เล่นเซิร์ฟได้ท่ามกลางจุดโต้คลื่น Eisbach ที่มีชื่อเสียง ข้อเสียของการโต้คลื่นในแม่น้ำคือมันค่อนข้างจะเล่นแล้วติด เลยไม่ค่อยมีเวลาเล่นกระดานโต้คลื่น
LED Clouds โดยใช้ Fadecandy, PI และ LED Strips: 4 ขั้นตอน (พร้อมรูปภาพ)
LED Clouds โดยใช้ Fadecandy, PI และ LED Strips: ฉันได้สร้างก้อนเมฆ LED เพื่อสร้างบรรยากาศที่ไม่มีตัวตนในบ้านของฉัน ในขั้นต้นจะใช้สำหรับเทศกาลที่ถูกยกเลิกเนื่องจากการระบาดในปัจจุบัน ฉันเคยใช้ Fade Candy Chip เพื่อให้ได้แอนิเมชั่นที่ลื่นไหล และฉันได้
โครงการ Arduino Uno Multi-LED: 8 ขั้นตอน
โครงการ Arduino Uno Multi-LED: โปรเจ็กต์ที่ฉันเลือกสร้างคือภาพร่าง Arduino ระดับเริ่มต้นที่เกี่ยวข้องกับการส่องสว่างของ LED ในรูปแบบต่อเนื่องทุกๆ 1,000 มิลลิวินาที (1 วินาที) ฉันสนุกกับการเรียนรู้เกี่ยวกับวิธีการจัดการ LED หลายตัวโดยใช้ Arduino Un
Arduino Led/Strips RGB Bluetooth (Arduino + App Inventor): 5 ขั้นตอน
Arduino Led/Strips RGB Bluetooth (Arduino + App Inventor): ในบทช่วยสอนนี้ ฉันจะแสดงวิธีใช้ App Inventor และเชื่อมต่อกับ Arduino โดยใช้บลูทูธ
Pan-Tilt Multi Servo Control: 11 ขั้นตอน (พร้อมรูปภาพ)
Pan-Tilt Multi Servo Control: ในบทช่วยสอนนี้ เราจะสำรวจวิธีควบคุมเซอร์โวหลายตัวโดยใช้ Python บน Raspberry Pi เป้าหมายของเราคือกลไก PAN/TILT เพื่อจัดตำแหน่งกล้อง (PiCam) คุณสามารถดูวิธีการทำงานของโปรเจ็กต์สุดท้ายได้ที่นี่: การทดสอบลูปการควบคุมเซอร์โวควบคุม: