Na FreeHostingu Endora běžà desĂtky tisĂc webĹŻ. PĹ™idejte se ještÄ› dnes!
VytvoĹ™it web zdarmaNa FreeHostingu Endora běžà desĂtky tisĂc webĹŻ. PĹ™idejte se ještÄ› dnes!
VytvoĹ™it web zdarmaOVLÁDÁNÍ L9110 S CC1101 A ARDUINEM
Vlastimil Vágner
Uvedený přípravek
(zapojení) umožňuje ovládat motorový driver L9110 s RF moduly CC1101
řízenými s Arduino Nano osazenými v IO shieldech. Pro odzkoušení ovládání
L9110 s uvedenými moduly CC1101, jsem se rozhodl po ovládání bezdrátové
zásuvky s těmito moduly. Zapojení a program rozšiřuje články
s uvedenými moduly CC1101 a Arduino Nano uveřejněná v [1].
POPIS MODULU CC1101 433.92Mhz
Uvedený
modul má několik závažných nedostatků a to jsou optická absence že modul je
zapnut, dále není optická signalizace komunikace mezi modulem a řídícím
mikrokontrolérem po sběrnici SPI, jediná detekce že funguje komunikace SPI mezi
modulem a Arduino je pomocí programu když se při startu programu v setupu provede
dotaz na registr testující komunikaci SPI a výsledek se zobrazí na monitoru
nebo pomocí led diody pokud je toto ovládání led diody doplněno do programu. To
že modul využívá čip, který komunikuje pomocí registrů a na vše je možné se
dotazovat pouze programově, bez uvedených možností signalizace z něho dělá
z mého pohledu „hloupý modul“. Další důležitá věc je napájení modulu CC1101 a to je 3.3V včetně datových linek které jsou také
v tomto rozpětí A TOTO NAPĚTÍ JAK U NAPÁJENÍ TAK DATOVÝCH LINEK SE NESMÍ NIKDY PŘEKROČIT
viz [2]. Čip komunikuje rozhraním SPI což také zabírá více IO linek
u použitého mikrokontroléru a modul CC1101 se spíše hodí pro ovládání
jednoduchých motorových driverů jako v tomto případě. Nikdy nezapínejte
modul bez připojené antény většinou dojde ke zničení koncového stupně bez
viditelné známky. Pro napájení Arduino, obousměrného převodníku napěťových
logických úrovní a modulu CC1101 je vždy lepší v hotových přípravcích v
provozu i při testování přípravků a programů kde je větší odběr proudu používat
zdroje mimo IO shieldu (desky) Arduino Nano tyto nemusí snést odběr modulu,
dost často bývají zarušeny a hlavně pokud je v programu použita funkce „ ELECHOUE_CC1101.setPa(parametr)“
tato umožňuje zvýšit výstupní výkon a hlavně proudový odběr což zdroj 3.3 na IO
shieldu Arduino Nano zcela dobře přetíží ne-li zničí. Výhoda uvedeného modulu
je v tom že jeho dosah je vyšší jak dosah modulů bluetooth které také
využívám k ovládání nebo komunikaci s přípravky viz [1].
POPIS ZAPOJENÍ
Přípravek
využívá hotové moduly pro ovládání motorů jde o modul osazený dvěma integrovanými
obvody L9110, pro ovládání jsem použít dva moduly RF CC1101 ovládané Arduino
Nano (jde použít i Arduino Uno) jedno Arduino Nano tvoří vysílač a druhý Arduino
Nano tvoří přijímač tyto jsou osazeny v IO shieldech. Pro napájení modulů
CC1101 společně s Arduino jsem použil vyrobené zdroje které napájejí jak
Arduino Nano tak převodníky napěťových úrovní. V tomto případě uvedený
zdroj napájí v části přijímače i motorový driver L9110. Vysílací část
tvoří zdroj, převodník napěťových úrovní, modul CC1101 Arduino Nano osazený
v IO shieldu a obyčejná čtyř tlačítková papírová klávesnice která pro
odzkoušení při testování programů plně postačovala dále signalizační led dioda
pro signalizaci komunikace SPI mezi modulem CC1101 a Arduino. Čísla na
klávesnici mají tyto funkce číslo „1“ vypíná motory, číslo „2“ zapíná chod
motorů jedním směrem, číslo „3“ zapíná chod motorů opačným směrem, číslo „4“
zapíná chod jednoho motoru oproti druhému motoru opačně tak že by vozítko
zatáčelo. Tyto možnosti pro otestování funkčnosti programu postačují
v případě opravdového použití modulů CC1101 pro ovládání, je nutné použít
klávesnici s pěti tlačítky (vpřed, vzad, vlevo, vpravo, stop) nebo si ji
vyrobit a upravit si program pro vysílač, přijímač “což není nic složitého“
toto je čistě individuální věc. Přijímač je opět tvořen modulem CC1101, napájecím
zdrojem, převodníkem napěťových úrovní modulem L9110 a Arduino Nano osazeným
v IO shieldu, signalizační led diodou pro signalizaci komunikace SPI mezi
modulem CC1101 a Arduino Nano. Při oživování a úpravách programu je možné
klidně využít napájení 5V a 3.3V z uvedeného IO shieldu pro Arduino Nano
(osobně odzkoušeno při testování přípravků a psaní programů pro CC1101 kde není
vyšší proudový odběr než snesou použité stabilizátory ). A NA VÝSTUPY ARDUINO
NANO (3, 4, 5, 6) KTERÉ OVLÁDAJÍ ŘÍDÍCÍ VSTUPY MODULU L9110, MÍSTO MODULU L9110
PŘIPOJIT NA SIGNALIZACI AKTIVACE VSTUPU LED DIODY. Po definitivním odzkoušení
programů TEPRVE TYTO LED DIODY ODPOJIT A PŘIPOJIT VÝSTUPY ARDUINO NANO
K MODULU L9110, A PRO NAPÁJENÍ sestavy přijímače použít vyrobený zdroj podle
Obr.č.01 a pak teprve provádět test programů. V případě že budou uvedené
moduly CC1101 včetně modulu L9110 použity na trvalé ovládání vozítka nebo
jiného modelu je nutné již používat zvlášť vyrobené zdroje. Detailní zapojení
modulu vysílače s připojenou klávesnicí a signalizační led diodou
s navázanou komunikací SPI mezi Arduino Nano a CC1101 je na Obr.č.04,
detailní zapojení přijímače s modulem L9110 a signalizační led diodou
s navázanou komunikací SPI mezi Arduino Nano a CC1101 je na Obr.č.03.
Detailní schéma připojení pouze modulu L9110 k Arduino Nano dle Obr.č.3 a
použité klávesnice k Arduino Nano dle Obr.č.04 je z důvodu že s celkovým
nákresem podle Obr.č.02 by bylo nepřehledné.
POPIS
ZDROJE PRO NAPÁJENÍ ELEKTRONIKY A MODULU CC1101
Zdroj je
vyrobený na univerzální vrtané destičce a propojení součástek je provedeny
pomocí drátků, napájení vyrobeného zdroje bylo při testování
z regulovatelného zdroje 230VAC/4V – 12VDC/2A v terénu je možné
používat dobíjecí články o výstupním napětí do 9VDC. Na stabilizaci napětí na
hodnotu 5VDC je použit stabilizátor 7805 jehož vstup a výstup je blokován
keramickými kondenzátory osazení nutno dodržet jinak dochází k rozkmitání
stabilizátoru a na stabilizaci napětí
z 5V na 3.3V je použit step.down typu TPS62A02 4.5 – 5.5V - 3.3V/2A.
Schéma zapojení zdroje je na Obr.č.01., na Obr.č.02 je základní schéma
celkového propojení elektroniky použitého Arduino převodníku napěťových úrovní
a modulu CC1101. Pozor pokud je ARDUINO NAPÁJENO Z PROGRAMOVACÍHO KABELU PŘI TESTOVÁNÍ
PROGRAMU NESMÍ BÝT SOUČASNĚ NAPÁJENO I ZE ZDROJE PŘIPOJENÉHO DO NAPÁJECÍHO
JACKU 5.5/2.1! NA ARDUINO NEBO ARDUINO IO SHIELDU. Na zdroji je
signalizace napětí 5V pomocí červené nízkopříkonové led diody a výstupní napětí
3,3V je signalizováno nízkopříkonovou žlutou led diodou.
PROGRAMY
Programy jsou uloženy v adresáři PROGRAM mají názvy pro vysílač „L9110S_vysílač_1.ino“ a pro přijímač „L9110S_přijímač_1.ino“ využívají pouze jednu knihovnu „ ELECHOUSE_C1101_SRC_DRV.h “ jde o velice jednoduché programy které si může každý upravit dle svých potřeb. Nevyužívají monitor počítače a na signalizaci navázané komunikace SPI mezi modulem a Arduino Nano je použito uvedených led diod. Pokud se nepovede navázání komunikace tak se uvedená led dioda na vysílači ani přijímači nerozsvítí a programe ukončí. V tom případě je vhodné odzkoušet komunikaci programem „TEST SPI“ který je součástí programů k článku ovládání led diody nebo zásuvky s CC1101 433.92Mhz uveřejněné v [1]. Po navolení směru otáčení motorů a uvolnění tlačítka se motory otáčí dokud není provedena změna směru nebo zastavení motorů tlačítkem. Jiný směr je vždy lepší provádět po stisku tlačítka STOP a volby jiného směru otáčení motorů nezatěžuje se tím driver i když v programu je při změně směru otáčeni vždy volána jako první funkce zastav která vypne motory a po čase umožní spustit navolený směr. Programy se dají upravit na ovládání pomocí PWM toto je čistě individuální věc a každý si v případě zájmu programy upraví dle vlastních požadavků.





připojení led diod k IO shieldu „přijímač“ jako signalizace vstupů L9110

detail signalizačních led místo vstupů L9110

Modul „ vysílače “ s připojenou klávesnicí a signalizační led diodou SPI
zapnutý modul „přijímače“ se signalizační led diodou že komunikace SPI je v pořádku

zapnutý modul „vysílače“ se signalizační led diodou že komunikace SPI je v pořádku

testování programu „vysílač“ stisk tlačítka „2“

test zda se rozsvítili správné led diody „přijímač“ po stisku tlačítka „2“

testování s modulem L9110 zdroj 5V 7805 pro napájení modulu, IO shield napájen z PC

detail na modul L9110

celkový pohled na sestavu vozítko s „přijímačem“ testování IO shieldu napájen z PC
použité prameny :
[1] www.mojeelektronika.mzf.cz
[2] dokumentace k modulu CC1101
bližší informace :