Tartalomjegyzék:

Vezeték nélküli gyorsulásmérő Rgb-LED-ek: 4 lépés
Vezeték nélküli gyorsulásmérő Rgb-LED-ek: 4 lépés

Videó: Vezeték nélküli gyorsulásmérő Rgb-LED-ek: 4 lépés

Videó: Vezeték nélküli gyorsulásmérő Rgb-LED-ek: 4 lépés
Videó: LED szalag vezérlők, dimmer és RGB szabályzók: távirányítók, falra vagy aluprofilba építhető típusok 2024, November
Anonim
Vezeték nélküli gyorsulásmérő Rgb-LED-ek
Vezeték nélküli gyorsulásmérő Rgb-LED-ek
Vezeték nélküli gyorsulásmérő Rgb-LED-ek
Vezeték nélküli gyorsulásmérő Rgb-LED-ek

A MEMS (mikroelektromechanikus rendszerek) gyorsulásmérőket széles körben használják dőlésérzékelőként mobiltelefonokban és kamerákban. Az egyszerű gyorsulásmérők ic-chipként és olcsó fejlesztésű NYÁK lapként is kaphatók.

A vezeték nélküli chipek megfizethetőek és összeszerelt áramkörökben is kaphatók, illesztett antennahálózattal és leválasztó kupakokkal. Csatlakoztassa a vezeték nélküli kártyát és a gyorsulásmérőt egy mikrokontrollerhez soros interfészen keresztül, és nintendo-wii funkciókkal rendelkező vezeték nélküli vezérlővel rendelkezik. Ezután építsen vevőt azonos típusú vezeték nélküli chipekkel és pwm vezérlésű rgb-LED-ekkel, íme, vezeték nélküli, dőlésvezérelt színes szobavillám van. Tartsa vízszintesen az adó-táblát úgy, hogy a kenyértábla felfelé nézzen, és a LED hideg kék, csak a kék led aktív. Ezután döntse meg az adót egy irányba, és pirossal vagy zölddel keverje, attól függően, hogy melyik irányba dönti. Döntse egészen 90 fokra, és haladjon végig a piros és a kék vagy a zöld és a kék keverékén, amíg 90 fokos dőlésnél csak a piros vagy a zöld lesz aktív. Hajtson egy kicsit x és y irányba, és az összes szín keverékét kapja. 45 fokon minden irányban a fény a vörös, a zöld és a kék, más szóval a fehér fény egyenlő keveréke. A használt alkatrészek az internetes hobbi-elektronikai üzletekben kaphatók. Néhány kép alapján azonosíthatónak kell lennie.

Lépés: Adó gyorsulásmérővel

Adó gyorsulásmérővel
Adó gyorsulásmérővel
Adó gyorsulásmérővel
Adó gyorsulásmérővel
Adó gyorsulásmérővel
Adó gyorsulásmérővel
Adó gyorsulásmérővel
Adó gyorsulásmérővel

Az adó az Atmel avr168 mikrokontrollerre épül. A kényelmes piros tábla a 168-cal egy arduino-kártya, feszültségszabályzóval és visszaállítási áramkörrel. A gyorsulásmérő bit-bummú i2c busszal van csatlakoztatva az avr-hez, a vezeték nélküli kártya pedig hardveres SPI-vel (Serial Peripheral Interface).

A kenyértábla teljesen vezeték nélküli, az alatta rögzített 4, 8 V -os akkumulátorcsomaggal. A vezeték nélküli kártya és az arduino wee akár 9 V feszültséget is fogad, és rendelkezik beépített lineáris feszültségszabályzóval, de a gyorsulásmérőnek 3, 3 V feszültséget kell kapnia a szabályozott sínről.

2. lépés: RGB-LED-es vevő

Vevő RGB-LED-del
Vevő RGB-LED-del
Vevő RGB-LED-del
Vevő RGB-LED-del
Vevő RGB-LED-del
Vevő RGB-LED-del

A Receiver a pillangó nevű atmel avr169 demoboardon alapul. A tábla sok olyan funkcióval rendelkezik, amelyeket ebben a projektben nem használtak. A vezeték nélküli tranceiver a PortB-hez, a pwm-vezérelt LED pedig a PortD-hez van csatlakoztatva. Az áramellátás az internetszolgáltató fejlécén történik, elegendő 4,5 V. A vezeték nélküli kártya képes elviselni az 5 V -ot az i/o tűkön, de 3,3 V -os tápellátást igényel, amelyet a fedélzeti szabályozó biztosít.

Az RF tranceiver módosított fejléce-kábele nagyon kényelmes, és összeköti a vezeték nélküli kártyát a pillangó tápellátásával és hardver spi vezérlőjével. A shiftbright egy rgb-vezérelt impulzusszélesség-modulációs vezérlő, amely elfogad egy 4 bájtos parancsot, amelyet rögzítenek, majd rögzítenek a kimeneti csapokon. Valóban könnyű sorba kötni. Csak cseréljen ki sok parancssort, és az első eltolt végződik a százszorszép lánc utolsó csatlakoztatott LED-jében.

3. lépés: C-programozás

A kód C betűvel van írva, mivel nem érdekelt a "könnyebb" feldolgozási nyelv elsajátítása, amelyen az arduino alapul. Az SPI és az rf tranceiver interfészt magam írtam a tanulási élményhez, de az i2c assembler-kódot kölcsönvettem az avrfreaks.net oldalról. A shiftbright interfész bit-ban van a C-kódban. Az egyik probléma, amellyel találkoztam, a gyorsulásmérő kimenetének kicsi, irradikus ingadozása volt, ami miatt a LED villogása nagy volt. Ezt egy szoftveres aluláteresztő szűrővel oldottam meg. Mozgó súlyozott átlag a gyorsulásmérő értékein. Az rf-tranceiver támogatja a hardver crc és ack automatikus újraküldést, de ennél a projektnél a ledek valós idejű, zökkenőmentes frissítése volt a fontosabb. Minden gyorsulásmérő értékkel rendelkező csomagnak nem kell épségben megérkeznie a vevőhöz, amennyiben a sérült csomagokat el kell dobni. Nem volt gondom az elveszett RF csomagokkal 20 méteres látótávolságon belül. De távolabb a kapcsolat instabillá vált, és a LED-ek nem folyamatosan frissültek. Az adó fő hurka álkódban: inicializálás (); míg (igaz) {Értékek = abs (x, y, z gyorsulásmérő értékek ()); RF_send (Értékek); késleltetés (20 ms);} A vevő fő hurka álkódban: inicializálás (); míg (igaz) {newValues = blokkoló_receptRF ()); rgbValues = rgbValues + 0,2*(newValues-rgbValues); írjon rgbValues értékeket a shiftbrigth számára;}

4. lépés: Az eredmény

Az eredmény
Az eredmény
Az eredmény
Az eredmény
Az eredmény
Az eredmény
Az eredmény
Az eredmény

Meglepődtem, hogy milyen zökkenőmentes és pontos volt az ellenőrzés. Valóban kézben tartja a színek pontosságát. A pwm-LED-vezérlő minden színhez 10 bites felbontást kínál, ami több millió lehetséges színt eredményez. Sajnos a gyorsulásmérő csak 8 bites felbontással rendelkezik, ami az elméleti színek számát ezerre csökkenti. De még mindig nem lehet észrevenni a színváltás lépéseit. Behelyeztem a vevőt egy IKEA lámpába, és lefényképeztem a különböző színeket. Van egy videó is (de borzasztó minőségű)

Ajánlott: