Mündəricat:
- Addım 1: MALZEMƏ BİLDİRİSİ
- Addım 2: CURCUIT
- Addım 3: MAGNETİK BAZA - ESNEK QOL
- Addım 4: GÜNƏŞ - BATARYA ŞARJ EDİCİ
- Addım 5: BÜTÜN BİRGƏ BAXIN
- Addım 6: INTERACTIVE CONTROL PROGRAMI
- Addım 7: KABLOSUZ NƏZARƏT PROQRAMI VƏ ANDROID TƏTBİQİ
- Adım 8: BƏZİ ŞƏKİLLƏR
Video: MAGNETİK ESNƏK QOLU İLƏ GÜNƏŞSİZ LAMP: 8 addım (şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:47
Bu layihə qırıq bir lampadan və nodeMCU -dan hazırlanmışdır. Bu dekorativ lampa istənilən istiqamətdə tənzimlənə bilər və maqnit materiallara yapışdırıla bilər və ya masaya qoyula bilər. Aşağıdakı kimi iki rejimdə idarə oluna bilər:
- Simsiz idarəetmə rejimi, aşağıdakı YouTube bağlantısı olaraq:
- Aşağıdakı YouTube bağlantısı olaraq interaktiv idarəetmə rejimi:
Addım 1: MALZEMƏ BİLDİRİSİ
B. O. M siyahısı:
İnteraktiv rejim üçün lampanın rəngini idarə etmək üçün NodeMCU -dan girro məlumatları almaq üçün MPU6050 istifadə edirəm.
Bu layihə üçün materiallar şəkli:
Addım 2: CURCUIT
Bu, yuxarıdakı Fritzing sxemində olduğu kimi, 1 RGB Led ümumi anod tipli, R100 və MPU6050 üç məhdud cərəyan müqavimətinə malik çox sadə bir sxemdir.
Reflektor, hər hansı bir qırılmış lampadan istifadə olunur və nodeMCU bazasına 2 boltla bağlanır və ya möhkəm yapışqan ilə yapışdırılır.
Quraşdırma işləri:
Aşağıdakı sxematik:
Addım 3: MAGNETİK BAZA - ESNEK QOL
Qırılan çevik su kranlarından çevik qolu yenidən istifadə etmək olar. Belə bir şey:
Bəzi ipuçları ilə, onları çevik qolun altındakı daimi maqnit bazasına bağlamağa çalışırıq. Yuxarıda, dövrə lövhəmizə və günəş/batareya şarj cihazına qoşulmaq üçün bir qazma çuxuru hazırladıq. Bu baza ilə masa, döşəmə kimi səthə lampa qoya bilərik …..; və ya polad dirək, polad quruluş kimi maqnit materiallara yapışdırıla bilər.
Addım 4: GÜNƏŞ - BATARYA ŞARJ EDİCİ
Zədələnmiş şarj lampasından gəldi. NodeMCU -ya açma/söndürmə açarı və elektrik naqilləri əlavə etdim. Bir USB portu və bir şarj cihazı üçün bir fiş də var.
Addım 5: BÜTÜN BİRGƏ BAXIN
Bütün hissələri birləşdirən: NodeMCU və reflektor, günəş və batareya hüceyrələri, çevik qol.
SONLA
ŞARJLAMA MODU
Addım 6: INTERACTIVE CONTROL PROGRAMI
Çevik qolu tənzimlədikdə və ya lampanı döndərəndə rəng dəyişəcək.
INTERACTIVE LAMP
#daxil edin |
// MPU6050 Slave Cihaz Ünvanı |
const uint8_t MPU6050SlaveAddress = 0x68; |
// I2C ünsiyyəti üçün SDA və SCL sancaqlarını seçin - WIRE KİTABXANASINDA default olaraq pin edin: NODEMCU -da SCL - D1 & SDA - D2 |
// const uint8_t SCL = D1; |
// const uint8_t SDA = D2; |
const int R = 14; |
const int G = 12; |
const int B = 13; |
// MPU6050 bir neçə konfiqurasiya qeydiyyatı ünvanı |
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, Temperatur, GyroX, GyroY, GyroZ; |
boş quraşdırma () { |
pinMode (R, Çıxış); |
pinMode (G, Çıxış); |
pinMode (B, Çıxış); |
//Serial.begin (9600); |
Wire.begin (SDA, SCL); |
MPU6050_Init (); |
} |
boşluq döngəsi () { |
uint16_t Ax, Ay, Az, T, Gx, Gy, Gz; |
uint16_t Qırmızı, Yaşıl, Mavi; |
Read_RawValue (MPU6050SlaveAddress, MPU6050_REGISTER_ACCEL_XOUT_H); |
// Mütləq dəyər alın |
Ax = myAbs (AccelX); |
Ay = myAbs (AccelY); |
Az = myAbs (AccelZ); |
// Aralıqda miqyas |
Qırmızı = xəritə (Ax, 0, 16384, 0, 1023); |
Yaşıl = xəritə (Ay, 0, 16384, 0, 1023); |
Mavi = xəritə (Az, 0, 16384, 0, 1023); |
// Yoxlamaq üçün seriya çapı |
//Serial.print("Qırmızı: "); Serial. çap (Qırmızı); |
//Serial.print("Green: "); Serial. çap (Yaşıl); |
//Serial.print("Mavi: "); Serial. çap (Mavi); |
// LED -ə analoq yazın |
analogWrite (R, Qırmızı); // R. |
analogWrite (G, Yaşıl); // G. |
analogWrite (B, Mavi); // B |
gecikmə (200); |
} |
etibarsız I2C_Write (uint8_t deviceAddress, uint8_t regAddress, uint8_t data) { |
Wire.beginTransmission (cihaz ünvanı); |
Wire.write (regAddress); |
Wire.write (məlumatlar); |
Wire.endTransmission (); |
} |
// 14 qeydin hamısını oxuyun |
etibarsız Read_RawValue (uint8_t deviceAddress, uint8_t regAddress) { |
Wire.beginTransmission (cihaz ünvanı); |
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 ()); |
Temperatur = (((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 -ni konfiqurasiya edin |
boş MPU6050_Init () { |
gecikmə (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 dərəcə/saniyə tam miqyaslı |
I2C_Write (MPU6050SlaveAddress, MPU6050_REGISTER_ACCEL_CONFIG, 0x00); // set +/- 2g tam miqyaslı |
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); |
} |
// Mütləq dəyər |
float myAbs (üzmək) { |
qayıt (in)> 0? (in):-(in); |
} |
GitHub tərəfindən ❤ ilə ev sahibliyi edilən rawINTERACTIVE LAMP PROGRAMINA baxın
Addım 7: KABLOSUZ NƏZARƏT PROQRAMI VƏ ANDROID TƏTBİQİ
Başqa bir yol, WiFi Şəbəkəsində Android ilə RGB LEDini idarə etmək üçün Android Tətbiqindən istifadə edə bilərik. Android Tətbiqini Bağlayın: NODEMCU RGB LED Tətbiqini idarə edir
Arduino proqramı üçün müraciət edə bilərsiniz:
microcontrollerkits.blogspot.com/2016/05/es…
Proqramı NodeMCU -ya yüklədikdən sonra, ilk iş bizə NodeMCU -nun IP ünvanını serial çapda verəcək. Mənim vəziyyətimdə: 80 portda 192.164.1.39.
İndi, yuxarıda göstərilən ünvanı İnternet Explorer -ə daxil edərək, dizüstü kompüter/ planşet/ cib telefonu ilə simsiz lampanı idarə edə bilərik.
Və ya Android tətbiqindən istifadə edərək:
Adım 8: BƏZİ ŞƏKİLLƏR
Tövsiyə:
Airsoft güllələri ilə simsiz robot qolu necə hazırlanır: 9 addım
Airsoft Güllələri ilə Simsiz Robot Qolunu necə etmək olar: Salam dostlar, bu təlimatda sizə yellənə bilən, yuxarı və aşağı hərəkət edən və simsiz uzaqdan idarəetmə vasitəsi ilə airsoft güllələri vuran simsiz robot qolunun necə hazırlanacağını göstərəcəyəm
DIY Robot Qolu 6 Eksen (Step Motorları ilə): 9 Addım (Şəkillərlə)
DIY Robot Arm 6 Axis (Stepper Motors ilə): Bir ildən çox davam edən araşdırmalardan, prototiplərdən və müxtəlif uğursuzluqlardan sonra step motorları tərəfindən idarə olunan 6 dərəcə sərbəstliyə malik bir dəmir / alüminium robot qurmağı bacardım. Ən çətin hissəsi dizayn idi, çünki 3 əsas məqsədə çatmaq istədim
Həqiqi əl hərəkəti üzərində idarə olunan sadə bir robot qolu: 7 addım (şəkillərlə)
Həqiqi Əl Hərəkətinə Nəzarət Edilən Sadə Robotik Qol: Bu yeni başlayanlar üçün çox sadə bir DOF robot qoludur. Qol Arduino tərəfindən idarə olunur. Operatorun əlində olan bir sensorla əlaqələndirilir. Buna görə də operator dirsək hərəkətini əyərək qolun dirsəyini idarə edə bilər
Arduino əsasında Robot Qolu ilə Əlverişli Vizyon Həll: 19 Addım (Şəkillərlə birlikdə)
Arduino -ya əsaslanan Robot Qolu ilə Əlverişli Vizyon Həll: Maşın görmə qabiliyyətindən bəhs edərkən həmişə bizim üçün əlçatmaz hiss olunur. Hər kəs üçün çox asan olacaq açıq mənbəli bir görmə demosu hazırladıq. Bu videoda, OpenMV kamerası ilə, qırmızı kubun harada olmasından asılı olmayaraq, robot
Nrf24l01 Arduino vasitəsi ilə idarə olunan tutucu qolu izlənən robotu necə qurmaq olar: 3 addım (şəkillərlə)
Nrf24l01 Arduino vasitəsi ilə idarə olunan tutucu qolu idarə olunan robotu necə qurmaq olar: Təlimat " Nrf24l01 Arduino ilə idarə olunan tutucu qolu idarə olunan robotu necə qurmaq olar " MEG istifadə edərək ikili mühərrikli L298N modulu ilə idarə olunan paletli təkərlərdə quraşdırılmış üç dərəcə azadlıq tutan qolun necə qurulacağını izah edəcək