สารบัญ:
- ขั้นตอนที่ 1: บิลวัสดุ
- ขั้นตอนที่ 2: วงจร
- ขั้นตอนที่ 3: ฐานแม่เหล็ก - แขนที่ยืดหยุ่นได้
- ขั้นตอนที่ 4: พลังงานแสงอาทิตย์ – เครื่องชาร์จแบตเตอรี่
- ขั้นตอนที่ 5: เชื่อมต่อทั้งหมดเข้าด้วยกัน
- ขั้นตอนที่ 6: โปรแกรมควบคุมแบบโต้ตอบ
- ขั้นตอนที่ 7: โปรแกรมควบคุมไร้สายและแอปพลิเคชัน Android
- ขั้นตอนที่ 8: รูปภาพบางส่วน
![โคมไฟไร้สายพลังงานแสงอาทิตย์พร้อมแขนแม่เหล็กแบบยืดหยุ่น: 8 ขั้นตอน (พร้อมรูปภาพ) โคมไฟไร้สายพลังงานแสงอาทิตย์พร้อมแขนแม่เหล็กแบบยืดหยุ่น: 8 ขั้นตอน (พร้อมรูปภาพ)](https://i.howwhatproduce.com/images/003/image-6229-18-j.webp)
วีดีโอ: โคมไฟไร้สายพลังงานแสงอาทิตย์พร้อมแขนแม่เหล็กแบบยืดหยุ่น: 8 ขั้นตอน (พร้อมรูปภาพ)
![วีดีโอ: โคมไฟไร้สายพลังงานแสงอาทิตย์พร้อมแขนแม่เหล็กแบบยืดหยุ่น: 8 ขั้นตอน (พร้อมรูปภาพ) วีดีโอ: โคมไฟไร้สายพลังงานแสงอาทิตย์พร้อมแขนแม่เหล็กแบบยืดหยุ่น: 8 ขั้นตอน (พร้อมรูปภาพ)](https://i.ytimg.com/vi/MiziS1abjPQ/hqdefault.jpg)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
![โคมไฟไร้สายพลังงานแสงอาทิตย์พร้อมแขนแม่เหล็กที่ยืดหยุ่นได้ โคมไฟไร้สายพลังงานแสงอาทิตย์พร้อมแขนแม่เหล็กที่ยืดหยุ่นได้](https://i.howwhatproduce.com/images/003/image-6229-19-j.webp)
![โคมไฟไร้สายพลังงานแสงอาทิตย์พร้อมแขนแม่เหล็กที่ยืดหยุ่นได้ โคมไฟไร้สายพลังงานแสงอาทิตย์พร้อมแขนแม่เหล็กที่ยืดหยุ่นได้](https://i.howwhatproduce.com/images/003/image-6229-20-j.webp)
โปรเจ็กต์นี้สร้างจากโคมไฟและ nodeMCU ที่ชำรุด โคมไฟตกแต่งนี้สามารถปรับได้ในทุกทิศทางและติดบนวัสดุแม่เหล็กหรือวางบนโต๊ะ สามารถควบคุมได้ 2 โหมด ดังนี้
- โหมดควบคุมแบบไร้สาย ตามลิงค์ YouTube ด้านล่าง:
- โหมดควบคุมเชิงโต้ตอบ ตามลิงค์ YouTube ด้านล่าง:
ขั้นตอนที่ 1: บิลวัสดุ
รายการ BOM:
![ภาพ ภาพ](https://i.howwhatproduce.com/images/003/image-6229-21-j.webp)
สำหรับโหมดโต้ตอบ ฉันใช้ MPU6050 เพื่อรับข้อมูลไจโรจาก NodeMCU เพื่อควบคุมสีของหลอดไฟ
ภาพวัสดุสำหรับโครงการนี้:
![ภาพ ภาพ](https://i.howwhatproduce.com/images/003/image-6229-22-j.webp)
ขั้นตอนที่ 2: วงจร
![วงจร วงจร](https://i.howwhatproduce.com/images/003/image-6229-23-j.webp)
นี่เป็นวงจรที่ง่ายมาก ตามแบบแผนของ Fritzing ด้านบน โดยมีประเภทแอโนดทั่วไป RGB Led 1 ตัว ตัวต้านทานกระแสไฟจำกัดสามตัว R100 และ MPU6050
แผ่นสะท้อนแสงใช้จากโคมไฟที่ชำรุดและเชื่อมต่อกับฐาน nodeMCU ด้วยสลักเกลียว 2 ตัวหรือติดด้วยกาวที่แข็งแรง
งานติดตั้ง:
![ภาพ ภาพ](https://i.howwhatproduce.com/images/003/image-6229-24-j.webp)
![ภาพ ภาพ](https://i.howwhatproduce.com/images/003/image-6229-25-j.webp)
แผนผังด้านล่าง:
![ภาพ ภาพ](https://i.howwhatproduce.com/images/003/image-6229-26-j.webp)
ขั้นตอนที่ 3: ฐานแม่เหล็ก - แขนที่ยืดหยุ่นได้
![ฐานแม่เหล็ก - แขนยืดได้ ฐานแม่เหล็ก - แขนยืดได้](https://i.howwhatproduce.com/images/003/image-6229-27-j.webp)
แขนที่ยืดหยุ่นสามารถนำกลับมาใช้ใหม่ได้จากก๊อกน้ำที่มีความยืดหยุ่นที่หัก อะไรแบบนั้น:
![ภาพ ภาพ](https://i.howwhatproduce.com/images/003/image-6229-28-j.webp)
ด้วยเคล็ดลับบางประการ เราพยายามเชื่อมต่อกับฐานแม่เหล็กถาวรที่ด้านล่างของแขนที่ยืดหยุ่นได้ ด้านบน เราทำรูเจาะสำหรับเชื่อมต่อกับแผงวงจรและเครื่องชาร์จแบตเตอรี่พลังงานแสงอาทิตย์/แบตเตอรี่ ด้วยฐานนี้ เราสามารถวางโคมไฟบนพื้นผิวเช่นโต๊ะ พื้น….; หรือติดบนวัสดุแม่เหล็ก เช่น เสาเหล็ก โครงสร้างเหล็ก
ขั้นตอนที่ 4: พลังงานแสงอาทิตย์ – เครื่องชาร์จแบตเตอรี่
![พลังงานแสงอาทิตย์ - เครื่องชาร์จแบตเตอรี่ พลังงานแสงอาทิตย์ - เครื่องชาร์จแบตเตอรี่](https://i.howwhatproduce.com/images/003/image-6229-29-j.webp)
มันมาจากหลอดไฟชาร์จที่ชำรุด ฉันเพิ่มสวิตช์เปิด/ปิดและสายไฟที่จ่ายให้กับ nodeMCU นอกจากนี้ยังมีเต้ารับพอร์ต USB และปลั๊กสำหรับชาร์จแบตเตอรี่อีกด้วย
ขั้นตอนที่ 5: เชื่อมต่อทั้งหมดเข้าด้วยกัน
![เชื่อมต่อทั้งหมดเข้าด้วยกัน เชื่อมต่อทั้งหมดเข้าด้วยกัน](https://i.howwhatproduce.com/images/003/image-6229-30-j.webp)
เชื่อมต่อทุกส่วน: NodeMCU & รีเฟลกเตอร์, เซลล์แสงอาทิตย์ & เซลล์แบตเตอรี่, แขนที่ยืดหยุ่นได้เข้าด้วยกัน
เสร็จสิ้น
![ภาพ ภาพ](https://i.howwhatproduce.com/images/003/image-6229-31-j.webp)
โหมดการชาร์จ
![ภาพ ภาพ](https://i.howwhatproduce.com/images/003/image-6229-32-j.webp)
ขั้นตอนที่ 6: โปรแกรมควบคุมแบบโต้ตอบ
สีจะเปลี่ยนไปเมื่อเราปรับแขนยืดหยุ่นหรือหมุนหลอดไฟ
โคมไฟแบบโต้ตอบ
#รวม |
// ที่อยู่อุปกรณ์ทาส MPU6050 |
const uint8_t MPU6050SlaveAddress = 0x68; |
// เลือกพิน SDA และ SCL สำหรับการสื่อสาร I2C - พินเริ่มต้นใน WIRE LIBRARY: SCL - D1 & SDA - D2 บน NODEMCU |
// const uint8_t SCL = D1; |
// const uint8_t SDA = D2; |
const int R = 14; |
const int G = 12; |
const int B = 13; |
// MPU6050 ที่อยู่ลงทะเบียนการกำหนดค่าเล็กน้อย |
const uint8_t MPU6050_REGISTER_SMPLRT_DIV = 0x19; |
const uint8_t MPU6050_REGISTER_USER_CTRL = 0x6A; |
const uint8_t MPU6050_REGISTER_PWR_MGMT_1 = 0x6B; |
const uint8_t MPU6050_REGISTER_PWR_MGMT_2 = 0x6C; |
const uint8_t MPU6050_REGISTER_CONFIG = 0x1A; |
const uint8_t MPU6050_REGISTER_GYRO_CONFIG = 0x1B; |
const uint8_t MPU6050_REGISTER_ACCEL_CONFIG = 0x1C; |
const uint8_t MPU6050_REGISTER_FIFO_EN = 0x23; |
const uint8_t MPU6050_REGISTER_INT_ENABLE = 0x38; |
const uint8_t MPU6050_REGISTER_ACCEL_XOUT_H = 0x3B; |
const uint8_t MPU6050_REGISTER_SIGNAL_PATH_RESET = 0x68; |
int16_t AccelX, AccelY, AccelZ, อุณหภูมิ, GyroX, GyroY, GyroZ; |
การตั้งค่าเป็นโมฆะ () { |
โหมดพิน (R, เอาต์พุต); |
โหมดพิน (G, เอาต์พุต); |
โหมดพิน (B, เอาต์พุต); |
//Serial.begin(9600); |
Wire.begin (SDA, SCL); |
MPU6050_Init(); |
} |
วงเป็นโมฆะ () { |
uint16_t ขวาน, Ay, Az, T, Gx, Gy, Gz; |
uint16_t แดง, เขียว, น้ำเงิน; |
Read_RawValue(MPU6050SlaveAddress, MPU6050_REGISTER_ACCEL_XOUT_H); |
// รับค่าสัมบูรณ์ |
ขวาน = myAbs (AccelX); |
Ay = myAbs (AccelY); |
Az = myAbs (AccelZ); |
// สเกลในช่วง |
สีแดง = แผนที่(ขวาน, 0, 16384, 0, 1023); |
สีเขียว = แผนที่(Ay, 0, 16384, 0, 1023); |
สีน้ำเงิน = แผนที่(Az, 0, 16384, 0, 1023); |
// Serial พิมพ์เพื่อตรวจสอบ |
//Serial.print("สีแดง: "); Serial.print (สีแดง); |
//Serial.print("เขียว: "); Serial.print (สีเขียว); |
//Serial.print("สีน้ำเงิน: "); Serial.print (สีน้ำเงิน); |
// เขียนอนาล็อกไปที่ LED |
analogWrite (R, สีแดง); // NS |
analogWrite (G, สีเขียว); // NS |
analogWrite (B, สีน้ำเงิน); // NS |
ล่าช้า(200); |
} |
เป็นโมฆะ I2C_Write (uint8_t deviceAddress, uint8_t regAddress, ข้อมูล uint8_t){ |
Wire.beginTransmission(ที่อยู่อุปกรณ์); |
Wire.write (regAddress); |
Wire.write (ข้อมูล); |
Wire.endTransmission(); |
} |
// อ่านทะเบียนทั้งหมด 14 รายการ |
เป็นโมฆะ Read_RawValue (uint8_t deviceAddress, uint8_t regAddress) { |
Wire.beginTransmission(ที่อยู่อุปกรณ์); |
Wire.write (regAddress); |
Wire.endTransmission(); |
Wire.requestFrom(deviceAddress, (uint8_t)14); |
AccelX = (((int16_t)Wire.read()<<8) | Wire.read()); |
AccelY = (((int16_t)Wire.read()<<8) | Wire.read()); |
AccelZ = (((int16_t)Wire.read()<<8) | Wire.read()); |
อุณหภูมิ = (((int16_t)Wire.read()<<8) | Wire.read()); |
GyroX = (((int16_t)Wire.read()<<8) | Wire.read()); |
GyroY = (((int16_t)Wire.read()<<8) | Wire.read()); |
GyroZ = (((int16_t)Wire.read()<<8) | Wire.read()); |
} |
// กำหนดค่า MPU6050 |
เป็นโมฆะ MPU6050_Init(){ |
ล่าช้า (150); |
I2C_Write (MPU6050SlaveAddress, MPU6050_REGISTER_SMPLRT_DIV, 0x07); |
I2C_Write(MPU6050SlaveAddress, MPU6050_REGISTER_PWR_MGMT_1, 0x01); |
I2C_Write (MPU6050SlaveAddress, MPU6050_REGISTER_PWR_MGMT_2, 0x00); |
I2C_Write (MPU6050SlaveAddress, MPU6050_REGISTER_CONFIG, 0x00); |
I2C_Write(MPU6050SlaveAddress, MPU6050_REGISTER_GYRO_CONFIG, 0x00);//set +/-250 องศา/วินาทีเต็มสเกล |
I2C_Write(MPU6050SlaveAddress, MPU6050_REGISTER_ACCEL_CONFIG, 0x00); // set +/- 2g เต็มสเกล |
I2C_Write (MPU6050SlaveAddress, MPU6050_REGISTER_FIFO_EN, 0x00); |
I2C_Write (MPU6050SlaveAddress, MPU6050_REGISTER_INT_ENABLE, 0x01); |
I2C_Write (MPU6050SlaveAddress, MPU6050_REGISTER_SIGNAL_PATH_RESET, 0x00); |
I2C_Write (MPU6050SlaveAddress, MPU6050_REGISTER_USER_CTRL, 0x00); |
} |
// ค่าสัมบูรณ์ |
float myAbs (ลอยเข้า){ |
ผลตอบแทน (ใน)>0?(ใน):-(ใน); |
} |
ดู rawINTERACTIVE LAMP PROGRAM โฮสต์ด้วย ❤ โดย GitHub
ขั้นตอนที่ 7: โปรแกรมควบคุมไร้สายและแอปพลิเคชัน Android
![โปรแกรมควบคุมไร้สายและแอพพลิเคชั่น Android โปรแกรมควบคุมไร้สายและแอพพลิเคชั่น Android](https://i.howwhatproduce.com/images/003/image-6229-33-j.webp)
อีกวิธีหนึ่งคือเราสามารถใช้ Android App เพื่อควบคุม RGB LED กับ Android ในเครือข่าย WiFi ลิงก์แอป Android:NODEMCU ควบคุม RGB LED APP
สำหรับโปรแกรม Arduino คุณสามารถอ้างถึง:
microcontrollerkits.blogspot.com/2016/05/es…
หลังจากอัปโหลดโปรแกรมไปยัง NodeMCU แล้ว การรันครั้งแรกจะให้ที่อยู่ IP ของ NodeMCU แก่เราในการพิมพ์แบบอนุกรม ในกรณีของฉันคือ: 192.164.1.39 ที่พอร์ต 80
![ภาพ ภาพ](https://i.howwhatproduce.com/images/003/image-6229-34-j.webp)
ตอนนี้เราควบคุมโคมไฟไร้สายด้วยแล็ปท็อป/แท็บเล็ต/โทรศัพท์มือถือได้โดยป้อนที่อยู่ด้านบนลงใน internet explorer
![ภาพ ภาพ](https://i.howwhatproduce.com/images/003/image-6229-35-j.webp)
หรือใช้แอพ Android:
![ภาพ ภาพ](https://i.howwhatproduce.com/images/003/image-6229-36-j.webp)
ขั้นตอนที่ 8: รูปภาพบางส่วน
แนะนำ:
DIY 37 Leds เกมรูเล็ต Arduino: 3 ขั้นตอน (พร้อมรูปภาพ)
![DIY 37 Leds เกมรูเล็ต Arduino: 3 ขั้นตอน (พร้อมรูปภาพ) DIY 37 Leds เกมรูเล็ต Arduino: 3 ขั้นตอน (พร้อมรูปภาพ)](https://i.howwhatproduce.com/images/001/image-12-j.webp)
DIY 37 Leds เกมรูเล็ต Arduino: รูเล็ตเป็นเกมคาสิโนที่ตั้งชื่อตามคำภาษาฝรั่งเศสหมายถึงวงล้อเล็ก
หมวกนิรภัย Covid ส่วนที่ 1: บทนำสู่ Tinkercad Circuits!: 20 ขั้นตอน (พร้อมรูปภาพ)
![หมวกนิรภัย Covid ส่วนที่ 1: บทนำสู่ Tinkercad Circuits!: 20 ขั้นตอน (พร้อมรูปภาพ) หมวกนิรภัย Covid ส่วนที่ 1: บทนำสู่ Tinkercad Circuits!: 20 ขั้นตอน (พร้อมรูปภาพ)](https://i.howwhatproduce.com/images/001/image-31-j.webp)
Covid Safety Helmet ตอนที่ 1: บทนำสู่ Tinkercad Circuits!: สวัสดีเพื่อน ๆ ในชุดสองตอนนี้ เราจะเรียนรู้วิธีใช้วงจรของ Tinkercad - เครื่องมือที่สนุก ทรงพลัง และให้ความรู้สำหรับการเรียนรู้เกี่ยวกับวิธีการทำงานของวงจร! หนึ่งในวิธีที่ดีที่สุดในการเรียนรู้คือการทำ ดังนั้น อันดับแรก เราจะออกแบบโครงการของเราเอง: th
Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): 6 ขั้นตอน (พร้อมรูปภาพ)
![Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): 6 ขั้นตอน (พร้อมรูปภาพ) Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): 6 ขั้นตอน (พร้อมรูปภาพ)](https://i.howwhatproduce.com/images/010/image-27211-j.webp)
Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): การชาร์จแบบเหนี่ยวนำ (เรียกอีกอย่างว่าการชาร์จแบบไร้สายหรือการชาร์จแบบไร้สาย) เป็นการถ่ายโอนพลังงานแบบไร้สาย ใช้การเหนี่ยวนำแม่เหล็กไฟฟ้าเพื่อจ่ายกระแสไฟฟ้าให้กับอุปกรณ์พกพา แอปพลิเคชั่นที่พบบ่อยที่สุดคือ Qi Wireless Charging st
4 ขั้นตอน Digital Sequencer: 19 ขั้นตอน (พร้อมรูปภาพ)
![4 ขั้นตอน Digital Sequencer: 19 ขั้นตอน (พร้อมรูปภาพ) 4 ขั้นตอน Digital Sequencer: 19 ขั้นตอน (พร้อมรูปภาพ)](https://i.howwhatproduce.com/images/001/image-707-76-j.webp)
4 ขั้นตอน Digital Sequencer: CPE 133, Cal Poly San Luis Obispo ผู้สร้างโปรเจ็กต์: Jayson Johnston และ Bjorn Nelson ในอุตสาหกรรมเพลงในปัจจุบัน ซึ่งเป็นหนึ่งใน “instruments” เป็นเครื่องสังเคราะห์เสียงดิจิตอล ดนตรีทุกประเภท ตั้งแต่ฮิปฮอป ป๊อป และอีฟ
ป้ายโฆษณาแบบพกพาราคาถูกเพียง 10 ขั้นตอน!!: 13 ขั้นตอน (พร้อมรูปภาพ)
![ป้ายโฆษณาแบบพกพาราคาถูกเพียง 10 ขั้นตอน!!: 13 ขั้นตอน (พร้อมรูปภาพ) ป้ายโฆษณาแบบพกพาราคาถูกเพียง 10 ขั้นตอน!!: 13 ขั้นตอน (พร้อมรูปภาพ)](https://i.howwhatproduce.com/images/004/image-11996-9-j.webp)
ป้ายโฆษณาแบบพกพาราคาถูกเพียง 10 ขั้นตอน!!: ทำป้ายโฆษณาแบบพกพาราคาถูกด้วยตัวเอง ด้วยป้ายนี้ คุณสามารถแสดงข้อความหรือโลโก้ของคุณได้ทุกที่ทั่วทั้งเมือง คำแนะนำนี้เป็นการตอบสนองต่อ/ปรับปรุง/เปลี่ยนแปลงของ: https://www.instructables.com/id/Low-Cost-Illuminated-