Turinys:
- 1 žingsnis: siųstuvas su akselerometru
- 2 žingsnis: Imtuvas su RGB-LED
- 3 žingsnis: C programavimas
- 4 žingsnis: rezultatas
Video: Belaidis akselerometro valdomas Rgb-LED: 4 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:50
MEMS (mikroelektromechaninės sistemos) Akselerometrai yra plačiai naudojami kaip pakreipimo jutikliai mobiliuosiuose telefonuose ir fotoaparatuose. Paprastus akselerometrus galima įsigyti kaip „ic-chip“ir pigiai kuriamas PCB plokštes.
Belaidės mikroschemos taip pat yra prieinamos ir yra prieinamos surinktose grandinėse, kuriose yra suderintas antenos tinklas ir atjungimo dangteliai. Prijunkite belaidę plokštę ir akselerometrą prie mikrovaldiklio per nuosekliąją sąsają ir turėsite belaidį valdiklį su „Nintendo-wii“funkcijomis. Tada sukurkite imtuvą su to paties tipo belaidžiu lustu ir pwm valdomais rgb šviesos diodais, voila, turėsite belaidį, pakreiptą valdomą spalvotą kambario žaibą. Siųstuvo plokštę laikykite lygią, kai duonos plokštė nukreipta į viršų, o šviesos diodas šviečia mėlynai, veikia tik mėlyna lemputė. Tada pakreipkite siųstuvą į vieną pusę ir sumaišykite raudoną arba žalią spalvą, priklausomai nuo to, kuria kryptimi jį pakreipiate. Pakreipkite iki 90 laipsnių ir eikite per visus raudonos ir mėlynos arba žalios ir mėlynos spalvos mišinius, kol 90 laipsnių kampu suaktyvės tik raudona arba žalia spalva. Pakreipkite šiek tiek x ir y kryptimi ir gausite visų spalvų mišinį. 45 laipsnių kampu į visas puses šviesa yra lygi raudonos, žalios ir mėlynos, kitaip tariant, baltos šviesos mišinys. Naudojamas dalis galima įsigyti internetinėse hobis-elektroninėse parduotuvėse. Turėtų būti atpažįstama iš kai kurių nuotraukų.
1 žingsnis: siųstuvas su akselerometru
Siųstuvas yra pagrįstas „Atmel avr168“mikrovaldikliu. Patogi raudona plokštė su 168 yra arduino plokštė su įtampos reguliatoriumi ir atstatymo grandine. Akselerometras yra prijungtas prie avr su bit-banged i2c magistrale, o belaidžio ryšio plokštė prijungta prie aparatinės įrangos SPI (Serial Peripheral Interface).
Duonos lenta yra visiškai belaidė, o apačioje pritvirtinta 4,8 V baterija. Belaidžio ryšio plokštė ir „arduino wee“priima iki 9 V įtampą ir turi linijinį įtampos reguliatorių, tačiau akselerometrui reikia 3, 3 V nuo reguliuojamo bėgio.
2 žingsnis: Imtuvas su RGB-LED
Imtuvas yra sukurtas pagal atmel avr169 demoboard pavadinimu drugelis. Plokštė turi daug šiame projekte nenaudojamų funkcijų. Belaidis transmisijos imtuvas prijungtas prie „PortB“, o „pwm“valdomas šviesos diodas prijungtas prie „PortD“. Maitinimas tiekiamas IPT antraštėje, pakanka 4,5 V. Belaidžio ryšio plokštė gali toleruoti 5 V įvesties/išvesties kaiščius, tačiau jai reikia 3,3 V maitinimo šaltinio, kurį tiekia borto reguliatorius.
Modifikuotas „RF tranceiver“antraštės kabelis yra tikrai patogus ir jungia belaidę plokštę su maitinimo ir aparatūros spi valdikliu. „Shiftbright“yra „rgb“valdomas impulsų pločio moduliavimo valdiklis, priimantis 4 baitų komandą, kuri yra užfiksuojama ir užfiksuojama išvesties kaiščiuose. Tikrai lengva prijungti serijiniu būdu. Tiesiog pakeiskite daugelį komandinių žodžių, o pirmasis perkeltas bus paskutinis prijungtas šviesos diodas.
3 žingsnis: C programavimas
Kodas parašytas C, nes man nerūpėjo išmokti „lengvesnės“apdorojimo kalbos, kuria pagrįsta arduino. Aš pats parašiau SPI ir rf tranceiver sąsają, kad galėčiau mokytis, bet pasiskolinau i2c surinkėjo kodą iš avrfreaks.net. „Shiftbright“sąsaja yra „bitbanged“naudojant C kodą. Viena problema, su kuria susidūriau, buvo nedideli radiaciniai akselerometro išvesties svyravimai, dėl to lemputė labai mirgėjo. Aš tai išsprendžiau naudodamas programinės įrangos žemo dažnio filtrą. Akselerometro verčių slenkamasis svertinis vidurkis. „RF-tranceiver“palaiko aparatūros crc ir ack su automatiniu retransliavimu, tačiau šiam projektui svarbiau buvo sklandus šviesos diodų atnaujinimas realiu laiku. Kiekvienas paketas su akselerometro reikšmėmis neprivalo atvykti į imtuvą, jei sugadinti paketai yra išmesti. Neturėjau jokių problemų dėl pamestų RF paketų, esančių 20 metrų matymo linijoje. Tačiau toliau ryšys tapo nestabilus, o šviesos diodai nebuvo nuolat atnaujinami. Pagrindinė siųstuvo kilpa pseudo-kodu: inicializuoti (); o (tiesa) {Values = abs (gauti x, y, z akselerometro reikšmes ()); RF_send (vertės); uždelsimas (20 ms);} Pagrindinė imtuvo kilpa pseudokode: inicializuoti (); tuo tarpu (tiesa) {newValues = blocking_receptRF ()); rgbValues = rgbValues + 0,2*(newValues-rgbValues); rašyti rgbValues to shiftbrigth;}
4 žingsnis: rezultatas
Buvau nustebinta, kaip sklandžiai ir tiksliai valdoma. Jūs tikrai galite tiksliai kontroliuoti spalvą. „Pwm-LED“valdiklis turi 10 bitų skiriamąją gebą kiekvienai spalvai, o tai suteikia milijonus galimų spalvų. Deja, akselerometras turi tik 8 bitų skiriamąją gebą, todėl teorinių spalvų skaičius sumažėja iki tūkstančių. Tačiau vis dar neįmanoma suvokti jokio spalvos pasikeitimo žingsnio. Įdėjau imtuvą į IKEA lempą ir žemiau nufotografavau skirtingas spalvas. Taip pat yra vaizdo įrašas (siaubingos kokybės)
Rekomenduojamas:
Universalus nuotolinio valdymo pultas naudojant ESP8266 (valdomas belaidis internetas): 6 žingsniai (su paveikslėliais)
Universalus nuotolinio valdymo pultas naudojant ESP8266 (valdomas belaidis internetas): Šis projektas yra skirtas pakeisti įprastą nuotolinio valdymo pultą, skirtą visiems buitiniams prietaisams, tokiems kaip kintamosios srovės, televizoriaus, DVD grotuvų, muzikos sistemos, SMART prietaisų !!! Aplinkui išmetame visą šiukšlių nuotolį, o tai verčia mus dėlionės !!! Šis projektas išgelbės mus nuo
Belaidis „Arduino“valdomas bakas (nRF24L01): 6 žingsniai (su nuotraukomis)
Belaidis „Arduino“valdomas bakas (nRF24L01): Sveiki! Šiandien aš jums parodysiu, kaip sukurti „Arduino“valdomą baką ir nuotolinio valdymo pultą. 3D spausdintas bako dalis (išskyrus valdiklį, bėgių kreiptuvą ir bako dangtį) sukūrė timmiclark ir jas rasite čia
Belaidis „Arduino“robotas, valdomas kompiuterio: 4 žingsniai
Belaidis „Arduino“robotas, valdomas kompiuterio: Šioje instrukcijoje sužinosite, kaip nustatyti ryšio kanalą tarp kompiuterio ir „Arduino“pagrindu veikiančio roboto. Robotas, kurį mes naudojame čia, naudoja diferencialinį vairavimo mechanizmą. Vietoj MO naudoju relėmis pagrįstą variklio tvarkyklę
Gestais valdomas belaidis automobilis: 7 žingsniai
Gestais valdomas belaidis automobilis: Šioje pamokoje mes mokysimės, kaip padaryti gestais valdomą automobilį ar bet kurį robotą. Šis projektas susideda iš dviejų dalių, viena dalis yra siųstuvas, o kita - imtuvas. Siųstuvas iš tikrųjų yra sumontuotas ant rankinių pirštinių ir imtuvo
Lengvas belaidis belaidis antenos stiprintuvas - „Wi -Fi“- „Wlan“: 6 žingsniai
„Easy Wardriving“belaidžio antenos stiprintuvas - „Wi -Fi“- „Wlan“: šioje instrukcijoje aš jums parodysiu, kaip praktiškai be pinigų sukurti labai paprastą belaidę anteną. Aš tai padariau perdirbdamas kai kuriuos daiktus, kuriuos kitu atveju tiesiog išmetėme. Taigi jis taip pat žalias! =) Idėja yra sugauti „Wi -Fi“bangas, kurias