Na FreeHostingu Endora běží desítky tisíc webů. Přidejte se ještě dnes!

Vytvořit web zdarma

Na FreeHostingu Endora běží desítky tisíc webů. Přidejte se ještě dnes!

Vytvořit web zdarma

OVLÁ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 :

    vagnervlastimil@seznam.cz