- Požiadavky
- Inštalácia PyFirmata v Arduine pomocou Raspberry Pi
- Vysvetlenie kódu
- Vyblednutie LED na Arduine pomocou pyFirmata
Raspberry Pi a Arduino sú síce dva odlišné hardvérové z hľadiska ich aplikácií a štruktúry, ale oba sú považované za dve konkurenčné hardvérové platformy s otvoreným zdrojovým kódom. Obaja majú veľmi silnú komunitu a podporu. Dnes trochu zmeníme veci a ukážeme vám, ako môžeme obe využiť. Ak máte dosky Arduino aj Raspberry pi, tento článok vám ukáže, ako používať Raspberry pi a Python na ovládanie Arduina.
Na zadávanie príkazov Arduinu pomocou skriptu Raspberry Pi python použijeme firmvér PyFirmata. PyFirmata je v podstate vopred zostavený balík knižnice programu python, ktorý je možné nainštalovať do Arduina a umožniť tak sériovú komunikáciu medzi skriptom python na ľubovoľnom počítači a Arduino. Tento balík pythonu umožňuje prístup na čítanie a zápis ľubovoľného kolíka na Arduine. Takže tu spustíme program python na Arduine pomocou Raspberry pi.
V tomto tutoriále teda využijeme výhody tejto knižnice a použijeme ju v našej doske Arduino na ovládanie Arduina pomocou Raspberry Pi.
Požiadavky
- Raspberry Pi s nainštalovaným Raspbian OS
- Arduino Uno alebo akákoľvek iná doska Arduino
- Kábel USB Arduino
- LED
V tomto výučbe používam externý monitor pomocou kábla HDMI na pripojenie k Raspberry Pi. Ak nemáte monitor, môžete sa pomocou klienta SSH (Putty) alebo servera VNC pripojiť k počítaču Raspberry pi pomocou prenosného počítača alebo počítača. Ak narazíte na akýkoľvek problém, postupujte podľa nášho sprievodcu Začíname s Raspberry Pi.
Inštalácia PyFirmata v Arduine pomocou Raspberry Pi
Ak chcete nahrať firmvér PyFirmata do Arduina, musíme si nainštalovať Arduino IDE do Raspberry Pi. Pri inštalácii postupujte podľa týchto pokynov:
Krok 1: - Pripojte Raspberry Pi k internetu. Otvorte príkazový terminál a zadajte nasledujúci príkaz a stlačte kláves Enter
sudo apt - get - y nainštalovať arduino python - sériový mercurial
Počkajte pár minút, bude to chvíľu trvať. Tento príkaz nainštaluje IDE Arduino na vaše Raspberry Pi.
Krok 2: - Teraz nainštalujeme súbory pyFirmata pomocou daného github:
git klon https://github.com/tino/pyFirmata
Potom spustite nasledujúci príkaz:
cd pyFirmata sudo python setup.py nainštalovať
Krok 3: - Nainštalovali sme všetky požadované súbory a nastavenia.
Teraz pripojte dosku Arduino k Raspberry Pi pomocou USB kábla a spustite Arduino IDE zadaním arduino do okna terminálu.
Krok 4: - Potom zadajte príkaz lsusb a skontrolujte, či je Arduino spojené s vaším malinovým pi.
V Arduino IDE choďte na nástroje a vyberte si dosku a sériový port.
Krok 5: - Nahrajte firmvér PyFirmata na Arduino kliknutím na položky Súbor -> Príklady -> Firmata -> Štandardná firma a potom kliknite na tlačidlo odovzdať. Ako je uvedené nižšie.
Úspešne sme nainštalovali firmvér pyFirmata na dosku Arduino. Teraz môžeme naše Arduino ovládať pomocou Raspberry Pi.
Na ukážku budeme blikať a slabnúť LED na Arduine písaním pythonových kódov do Raspberry Pi.
Vysvetlenie kódu
Pre kódovaciu časť by ste si mali lepšie prečítať dokumentáciu pyFirmata. Na napísanie nášho kódu použijeme funkcie pyFirmata. Dokumentáciu pyFirmata nájdete kliknutím na odkaz.
Začnime teda písať kód
Otvorte svoj obľúbený textový editor na Raspberry Pi a importujte knižnicu pyFirmata.
importovať pyfirmata
Definujte pin na Arduine na pripojenie LED
led_pin = 9
Teraz musíme pomocou funkcie pyfirmata.Arduino () napísať názov sériového portu, na ktorý je doska Arduino pripojená, a potom vytvoriť inštanciu priradením portu v premennej dosky .
board = pyfirmata.Arduino ("/ dev / ttyACM0") print "Kód je spustený"
V zatiaľ čo slučka, make viedol pin vysokej a nízkej použitia board.digital.write () funkciu a dať oneskorenia pomocou board.pass_time () funkciu.
while True: board.digital.write (0) board.pass_time (1) board.digital.write (1) board.pass_time (1)
Náš kód je pripravený. Uložte tento kód vložením prípony .py do názvu súboru.
Otvorte príkazový terminál a zadajte príkaz python blink.py, aby ste spustili kód na doske Arduino. Uistite sa, že je doska Arduino spojená s doskou Raspberry Pi pomocou kábla USB.
Teraz môžete na doske Arduino vidieť blikajúcu LED.
Na konci je uvedený kompletný kód pre blikanie LED pomocou pyFirmata.
Vyblednutie LED na Arduine pomocou pyFirmata
Teraz napíšeme kód vyblednutia LED, aby ste sa lepšie oboznámili s funkciami pyFirmata. Tento kód je jednoduchý ako predchádzajúci. Budete musieť použiť dve pre slučky, jeden pre zvýšenie jasu a druhý pre jas pokles.
V tomto kóde sme definovali piny rôznymi spôsobmi, ako napríklad led = board.get_pin ('d: 9: p'), kde d znamená digitálny pin . Toto je funkcia knižnice pyFirmata. Ďalšie informácie nájdete v dokumentácii.
Celý kód pre Fading LED pomocou pyFirmata je uvedený na konci.
Teraz môžete do svojho systému pridať ďalšie senzory a vylepšiť ho. Skontrolujte naše ďalšie projekty Arduino a skúste ich vytvoriť pomocou skriptu Raspberry pi a python.