A Python elkapta a kódoló világot. Az új nyelv térnyerése mellett a barkács elektronika is virágzott. Fejlesztőlapok és egylapos számítógépek olyan cégektől Arduino és a Raspberry Pi megváltoztatta az emberek háztartási elektronika -készítési módját. Nem lenne fantasztikus, ha programozhatna egy Arduino -t Python segítségével?
hogyan kell jelszót helyezni az USB flash meghajtóra
Nincs jobb érzés, mint két klassz dolog ötvözése. Sajnos lehetetlen közvetlenül programozni egy Arduino programot Python segítségével, mivel a tábláknak nincs lehetőségük a nyelv beépített értelmezésére. Lehetséges azonban az USB közvetlen vezérlése Python program segítségével.
Ez a cikk bemutatja, hogyan állíthat be egy Arduino UNO -t (bár bármelyik Arduino -kompatibilis tábla működhet itt), amely a parancssorból programozható és vezérelhető Python -programok segítségével. Ez az oktatóanyag a Windows 10 rendszerhez készült, de Mac és Linux rendszereken is működik. Ezt a munkafolyamatot használhatja akár egy Arduino vezérléséhez közvetlenül a Raspberry Pi-ből a végső dupla lefelé barkácsolás érdekében.
Az Arduino beállítása a Python számára
A mai projekthez egy Arduino Uno -t fogunk használni a Python pyFirmata felületével együtt. Erre szinte bármilyen Arduino-kompatibilis táblát használhat, bár íráskor csak az Arduino Uno, a Mega, a Due és a Nano támogatja a pyFfirmata felületet. Ha már Python guru vagy, hozzáadhatsz saját táblás támogatást a pyFirmata -hoz - ha igen, mindenképpen frissítsd a GitHub -jukat!
Ha még nem tette meg, telepítse az Arduino IDE -t. Ha teljesen új vagy a mikrokontrollerek világában, akkor a miénk kezdő útmutató Arduino -hoz segít mindent a helyére hozni.
Csatlakoztassa az Arduino táblát, és nyissa meg az IDE -t. Győződjön meg arról, hogy a megfelelő tábla és port van kiválasztva a Eszközök menü. Töltse fel a StandardFirmata példa vázlat, és töltse fel a táblára. Ez lehetővé teszi az Arduino közvetlen vezérlését mindaddig, amíg USB -n keresztül csatlakozik a számítógéphez. Ha a vázlat hiba nélkül feltöltődik a táblára, készen áll a továbblépésre.
Python és parancssori vezérlés
A Python 3.4 -et használjuk az Arduino vezérléséhez, mivel a telepíteni kívánt modul ezt a legújabb kompatibilis verziónak adja meg. Az ezt megelőző bármely verziónak jól kell működnie, és a későbbi verziók működéséről is beszámoltak. Letöltheti a Python 3.4 -et Windows 10 -re a Python Software Foundation webhely. Ha a Python több verzióját kívánja futtatni, a Python virtuális környezetekről szóló útmutatónk segíthet Önnek.
A Python telepítése után hozzá szeretnénk adni a rendszer PATH változójához. Ez lehetővé teszi, hogy a Python -kódot közvetlenül a parancssorból futtassuk anélkül, hogy a telepített könyvtárban kellene lennünk. Ezt a Kezelőpanel , keresés Környezet és kattintson a gombra Szerkessze a rendszer környezeti változóit . Válassza ki az ablak alján Környezeti változók . Ekkor megjelenik ez az ablak:
Ha már látja PÁLYA a listában kattintson a szerkesztés gombra, és adja hozzá a sajátját Piton és Python/Scripts Könyvtár. Ha nincs PATH változója, kattintson az új gombra, és adja hozzá. Ne feledje, hogy a Python közvetlenül a C: itt. Ha máshol telepítette, módosítania kell, hogy tükrözze ezt. Kattintson az OK gombra az ablakok láncolatában, és majdnem készen áll az Arduino vezérlésére a Python segítségével!
A varázszsír
Szükséged lesz a puzzle utolsó darabjára, hogy Python szépen beszéljen Arduino -val. Ez egy úgynevezett Python felület formájában jelenik meg pyFirmata . Ez a felület, amelyet Tino de Bruijn hozott létre letölthető a github -ból, bár telepítheti közvetlenül a parancssorból, ha beírja:
pip install pyfirmata
Ha minden rendben van, telepítenie kell és így kell kinéznie:
Ha nem sikerül, akkor vegye át a Python hozzáadását Környezeti változó szakaszban, és győződjön meg arról, hogy a helyes elérési utat adta meg a Python könyvtárához.
Hogy megtörténjen
Most minden beállítva, és létrehozhat egy Python programot az Arduino számára, hogy tesztelje. Nyisson meg egy választott IDE -t. Használni fogjuk Fogyatkozás ma, de ugyanolyan könnyen használhat bármilyen szövegszerkesztőt, vagy akár egy IDE -t a felhőben.
Hozzon létre egy új szkriptet, és mentse el pislogni.py . A hagyományos villogó LED -es program hagyományait megtörve olyan programot hoz létre, amely a felhasználónak azt jelzi, hányszor szeretné, hogy a LED villogjon, mielőtt végrehajtaná. Ez egy rövid program, amit megtehet töltse le itt ha egyenesen hozzá akarsz jutni, de bontsuk le.
Először is importálni kell, amire szüksége van a pyFirmata modul, a standard Python mellett Idő modul.
miért nem jelenik meg az usb -m
from pyfirmata import Arduino, util
import time
Most szeretné beállítani az Arduino táblát. Ez a cikk feltételezi, hogy egy Arduino uno tábla, bár számos más Arduino tábla is támogatott. A fedélzeti támogatás részleteit a pyFirmata github tartalmazza.
Ellenőrizze, hogy melyik COM portot használja az Arduino IDE -ben, és írja be a kódba változóként tábla .
board = Arduino('COM3')
Most be kell állítania a felhasználói promptot. Akik ismerik a Python -t, itt mindent fel fognak ismerni. Kérdést nyomtat a képernyőre a bemenet függvényt, és tárolja a választ változóként. Miután a felhasználó megadta a számot, a program jelzi, hányszor villog a LED.
loopTimes = input('How many times would you like the LED to blink: ')
print('Blinking ' + loopTimes + ' times.')
Ahhoz, hogy a LED a megfelelő számú alkalommal villogjon, használja a hurokhoz . Ha te új a Pythonban , vigyázzon a behúzással, mivel más nyelvekkel ellentétben a szóközök a szintaxis részét képezik. Ne feledje, hogy a 13 -as érintkező az Arduino Uno beépített LED -je, ezt módosítania kell, ha a táblája más.
for x in range(int(loopTimes)):
board.digital[13].write(1)
time.sleep(0.2)
board.digital[13].write(0)
time.sleep(0.2)
Ön leadja a loopTimes változót egész számra, mivel a felhasználó bemenete automatikusan karakterláncként kerül tárolásra. Ebben az egyszerű bemutatóban feltételezzük, hogy a felhasználó számértéket ad meg. Bármely más bejegyzés, például a „nyolc” hibát jelez.
Mentse el a szkriptet, és nyissa meg a Parancssor .
Villogó fények és egyéb kinyilatkoztatások
Minden készen áll az indulásra, mindössze annyit kell tennie, hogy navigáljon a szkript helyéhez, és futtassa azt. Ezt gépeléssel tegye meg cd [elérési út a szkript könyvtárához] majd gépelni python pislog.py .
Ha minden rendben van, a program enyhe késéssel indul, amint az Arduino inicializál, számot kér, majd többször felvillan a beépített LED segítségével.
A program kimenetének így kell kinéznie:
Amint megnyomja az enter billentyűt a kiválasztott pislogások után, az Arduino -nak teljesítenie kell a parancsokat.
Kis kezdetek
Ez a projekt egy csupasz kezdet a kommunikációhoz Python és egy Arduino tábla között. Ez a megközelítés nagyon különbözik a szokásos munkafolyamattól, amikor szkripteket tölt fel magába az Arduino -ba, mégis teljesen új módszert nyit meg a platformmal való munkához, különösen, ha kedveli a Python programozási nyelvet.
Ha a Linux szerver otthon ez az Arduino táblákkal való kommunikációs módszer kiterjesztheti ezt a szervert egy teljes értékű DIY Home Automation rendszerre. Ha a mikrokontrollert vezérlő Python -szkripteket egy DIY automatizálási áramkörrel kombinálja, a NAS tároló doboz teljesen új hasznos funkciókat vehet fel.
hogyan lehet megtalálni a wifi jelszót a telefonon
Hogy ez legyen a végső barkácsélmény, miért ne készítsd el saját NAS dobozodat és a készülékek vezérlésére is használja? Képzelje el, milyen jó lenne megnyomni a play gombot a Plex szerverén, és a lámpák automatikusan kialudnának!
Már irányítod az Arduinót a Python használatával? Vannak olyan csodálatos megoldások, amelyekről még nem tudunk? Tudassa velünk az alábbi megjegyzés rovatban!
Részvény Részvény Csipog Email 5 tipp a VirtualBox Linux gépek feltöltéséhezUnod már a virtuális gépek gyenge teljesítményét? Íme, mit kell tennie a VirtualBox teljesítményének növelése érdekében.
Olvassa tovább Kapcsolódó témák- DIY
- Programozás
- Arduino
- Otthoni automatizálás
- Piton
Ian Buckley szabadúszó újságíró, zenész, előadó és videó producer, Berlinben, Németországban él. Amikor éppen nem ír vagy a színpadon, barkácsol elektronikával vagy kóddal, abban a reményben, hogy őrült tudós lesz.
Bővebben: Ian BuckleyIratkozzon fel hírlevelünkre
Csatlakozz hírlevelünkhöz, ahol technikai tippeket, értékeléseket, ingyenes e -könyveket és exkluzív ajánlatokat találsz!
Feliratkozáshoz kattintson ide