Mục lục:
- Bước 1: HÓA ĐƠN VẬT LIỆU
- Bước 2: MẠCH
- Bước 3: CƠ SỞ THUẬT NGỮ - ARM LINH HOẠT
- Bước 4: MẶT TRỜI - BỘ SẠC PIN
- Bước 5: KẾT NỐI TẤT CẢ CÙNG NHAU
- Bước 6: CHƯƠNG TRÌNH ĐIỀU KHIỂN TƯƠNG TÁC
- Bước 7: CHƯƠNG TRÌNH ĐIỀU KHIỂN KHÔNG DÂY VÀ ỨNG DỤNG ANDROID
- Bước 8: MỘT SỐ HÌNH ẢNH
Video: ĐÈN KHÔNG DÂY MẶT TRỜI CÓ CÁNH TAY LINH HOẠT TỪ TỪ: 8 bước (có hình ảnh)
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:34
Dự án này được làm từ một chiếc đèn hỏng & nodeMCU. Đèn trang trí này có thể điều chỉnh theo mọi hướng & gắn trên vật liệu từ tính hoặc đặt trên bàn. Nó có thể được điều khiển ở hai chế độ như sau:
- Chế độ điều khiển không dây, như liên kết YouTube bên dưới:
- Chế độ điều khiển tương tác, như liên kết YouTube bên dưới:
Bước 1: HÓA ĐƠN VẬT LIỆU
Danh sách B. O. M:
Đối với chế độ tương tác, tôi sử dụng MPU6050 để lấy dữ liệu con quay hồi chuyển từ NodeMCU để điều khiển màu của đèn.
Hình ảnh tư liệu cho dự án này:
Bước 2: MẠCH
Đây là mạch rất đơn giản, như sơ đồ Fritzing ở trên, với loại cực dương chung 1 Led RGB, ba điện trở dòng giới hạn R100 & MPU6050.
Chóa phản xạ được sử dụng từ bất kỳ đèn hỏng nào và được kết nối với đế nodeMCU bằng 2 bu lông hoặc dán chúng bằng keo chắc chắn.
Công việc lắp ráp:
Sơ đồ bên dưới:
Bước 3: CƠ SỞ THUẬT NGỮ - ARM LINH HOẠT
Cánh tay mềm có thể được tái sử dụng từ vòi nước mềm bị hỏng. Một cái gì đó như thế:
Bằng một số mẹo, chúng tôi cố gắng kết nối chúng với đế nam châm vĩnh cửu ở dưới cùng của cánh tay linh hoạt. Trên cùng, chúng tôi đã tạo một lỗ khoan để kết nối với bảng mạch và bộ sạc pin / năng lượng mặt trời, với phần đế này, chúng tôi có thể đặt đèn trên các bề mặt như bàn, sàn nhà….; hoặc nó có thể được gắn trên các vật liệu từ tính như cột thép, kết cấu thép.
Bước 4: MẶT TRỜI - BỘ SẠC PIN
Nó đến từ một chiếc đèn sạc bị hỏng. Tôi đã thêm một công tắc bật / tắt và dây nguồn cung cấp cho nodeMCU. Nó cũng có một ổ cắm cổng USB và một đầu cắm để sạc pin.
Bước 5: KẾT NỐI TẤT CẢ CÙNG NHAU
Kết nối tất cả các bộ phận: NodeMCU & gương phản xạ, pin mặt trời & pin, cánh tay linh hoạt với nhau.
KẾT THÚC
CHẾ ĐỘ SẠC
Bước 6: CHƯƠNG TRÌNH ĐIỀU KHIỂN TƯƠNG TÁC
Màu sắc sẽ được thay đổi khi chúng ta điều chỉnh cánh tay linh hoạt hoặc xoay đèn.
ĐÈN TƯƠNG TÁC
#bao gồm |
// Địa chỉ thiết bị MPU6050 Slave |
const uint8_t MPU6050SlaveAddress = 0x68; |
// Chọn chân SDA và SCL cho giao tiếp I2C - Chân mặc định trong WIRE LIBRARY: SCL - D1 & SDA - D2 trên NODEMCU |
// const uint8_t SCL = D1; |
// const uint8_t SDA = D2; |
const int R = 14; |
const int G = 12; |
const int B = 13; |
// MPU6050 vài địa chỉ đăng ký cấu hình |
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, Nhiệt độ, GyroX, GyroY, GyroZ; |
void setup () { |
pinMode (R, OUTPUT); |
pinMode (G, OUTPUT); |
pinMode (B, OUTPUT); |
//Serial.begin(9600); |
Wire.begin (SDA, SCL); |
MPU6050_Init (); |
} |
void loop () { |
uint16_t Ax, Ay, Az, T, Gx, Gy, Gz; |
uint16_t Red, Green, Blue; |
Read_RawValue (MPU6050SlaveAddress, MPU6050_REGISTER_ACCEL_XOUT_H); |
// Lấy giá trị tuyệt đối |
Ax = myAbs (AccelX); |
Ay = myAbs (AccelY); |
Az = myAbs (AccelZ); |
// Chia tỷ lệ trong phạm vi |
Red = bản đồ (Ax, 0, 16384, 0, 1023); |
Green = bản đồ (Ay, 0, 16384, 0, 1023); |
Blue = bản đồ (Az, 0, 16384, 0, 1023); |
// In nối tiếp để kiểm tra |
//Serial.print("Red: "); Serial.print (Màu đỏ); |
//Serial.print("Green: "); Serial.print (Màu xanh lá cây); |
//Serial.print("Blue: "); Serial.print (Xanh lam); |
// Ghi analog sang LED |
analogWrite (R, Đỏ); // NS |
analogWrite (G, Xanh lục); // NS |
analogWrite (B, Xanh lam); // NS |
chậm trễ (200); |
} |
void I2C_Write (uint8_t deviceAddress, uint8_t regAddress, uint8_t data) { |
Wire.beginTransmission (deviceAddress); |
Wire.write (regAddress); |
Wire.write (dữ liệu); |
Wire.endTransmission (); |
} |
// Đọc tất cả 14 thanh ghi |
void Read_RawValue (uint8_t deviceAddress, uint8_t regAddress) { |
Wire.beginTransmission (deviceAddress); |
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 ()); |
Nhiệt độ = (((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 ()); |
} |
// Định cấu hình MPU6050 |
void MPU6050_Init () { |
chậm trễ (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); // đặt +/- 250 độ / giây đầy đủ thang đo |
I2C_Write (MPU6050SlaveAddress, MPU6050_REGISTER_ACCEL_CONFIG, 0x00); // đặt +/- 2g toàn quy mô |
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); |
} |
// Giá trị tuyệt đối |
float myAbs (float in) { |
return (in)> 0? (in):-(in); |
} |
xem raw CHƯƠNG TRÌNH ĐÈN TÁC ĐỘNG ĐƯỢC lưu trữ với ❤ bởi GitHub
Bước 7: CHƯƠNG TRÌNH ĐIỀU KHIỂN KHÔNG DÂY VÀ ỨNG DỤNG ANDROID
Một cách khác, chúng ta có thể sử dụng Ứng dụng Android để điều khiển đèn LED RGB với Android trong Mạng WiFi. Liên kết ứng dụng Android: Ứng dụng LED RGB điều khiển NODEMCU
Đối với chương trình Arduino, bạn có thể tham khảo:
microcontrollerkits.blogspot.com/2016/05/es…
Sau khi tải chương trình lên NodeMCU, lần chạy đầu tiên sẽ cung cấp cho chúng ta địa chỉ IP của NodeMCU trên bản in nối tiếp. Trong trường hợp của tôi, đó là: 192.164.1.39 tại cổng 80.
Giờ đây, chúng ta có thể điều khiển đèn không dây bằng máy tính xách tay / máy tính bảng / điện thoại di động bằng cách nhập địa chỉ ở trên vào Internet explorer.
Hoặc sử dụng ứng dụng Android:
Bước 8: MỘT SỐ HÌNH ẢNH
Đề xuất:
Văn phòng chạy bằng pin. Hệ thống năng lượng mặt trời với tự động chuyển đổi bảng năng lượng mặt trời Đông / Tây và tuabin gió: 11 bước (có hình ảnh)
Văn phòng chạy bằng pin. Hệ thống năng lượng mặt trời với tự động chuyển đổi bảng năng lượng mặt trời Đông / Tây và tuabin gió: Dự án: Một văn phòng rộng 200 ft vuông cần được cung cấp năng lượng từ pin. Văn phòng cũng phải chứa tất cả các bộ điều khiển, pin và các thành phần cần thiết cho hệ thống này. Năng lượng mặt trời và năng lượng gió sẽ sạc pin. Chỉ có một vấn đề nhỏ là
Trang sức mặt dây chuyền đèn LED nhấp nháy bằng năng lượng mặt trời: 11 bước (có hình ảnh)
Trang sức mặt dây chuyền đèn LED nhấp nháy bằng năng lượng mặt trời: Hướng dẫn này dành cho trái tim được cung cấp năng lượng mặt trời với đèn LED màu đỏ phát xung. Nó đo lường khoảng 2 " bằng 1,25 ", bao gồm cả tab USB. Nó có một lỗ xuyên qua đầu bảng, giúp bạn dễ dàng treo. Đeo nó như một chiếc vòng cổ, bông tai, gắn vào một chiếc ghim
Ánh sáng mặt trời không dùng pin, hoặc ánh sáng mặt trời ban ngày Tại sao không?: 3 bước
Ánh sáng mặt trời không dùng pin, hoặc ánh sáng ban ngày bằng năng lượng mặt trời … Tại sao không?: Chào mừng bạn. Xin lỗi vì tiếng anh của tôi Mặt trời? Tại sao? Tôi có một căn phòng hơi tối vào ban ngày, và tôi cần phải bật đèn khi sử dụng. tính phí
Vẫy tay để điều khiển cánh tay robot OWI Không có dây đính kèm: 10 bước (có hình ảnh)
Vẫy tay để điều khiển Cánh tay robot OWI … Không có dây đính kèm: Ý tưởng: Có ít nhất 4 dự án khác trên Guiductables.com (kể từ ngày 13 tháng 5 năm 2015) xoay quanh việc sửa đổi hoặc điều khiển Cánh tay robot OWI. Không có gì đáng ngạc nhiên, vì nó là một bộ robot tuyệt vời và rẻ tiền để chơi cùng. Dự án này tương tự trong s
UCL-lloT-Ánh sáng ngoài trời được kích hoạt bởi Mặt trời mọc / mặt trời lặn.: 6 bước
UCL-lloT-Outdoor-light do Sunrise / sundown kích hoạt.: Xin chào mọi người! Ý tưởng bắt nguồn từ cha tôi, người mà suốt mùa hè đã phải tự tay đi ra ngoài