Belföld
[5574]
Belföldi, általam válogatott cikkek, írások.
|
Bulvár | Celeb
[149]
Érdekesebb bulvár hírek.
|
Bűnügy
[395]
Bűnügyi hírek, információk
|
Csináld magad
[1]
Barkácsolási ötletek
|
Extrém
[316]
Extrém, megdöbbentő hírek.
|
Egészség | Életmód
[752]
Egészséggel, életmóddal, kapcsolatos hírek, információk, tanácsok.
|
Érdekes | Különleges | Rejtélyes
[982]
Érdekes, különleges, rejtélyes esetek, ironikus, vicces, humoros hírek, információk. írások.
|
Európai Unió
[193]
Hírek az Európai Unióból
|
Gasztro | Recept
[4243]
Gasztronómiai hírek, információk, receptek.
|
Gazdaság
[468]
A gazdasági élet hírei
|
Horgász
[1264]
Horgászoknak szóló hírek, információk.
|
Játék, -pihenés, -szórakozás
[160]
Ötletek, ajánlott oldalak, programok.
|
Jó tudni!
[2431]
Fontos, hasznos információk, határidők, változások, tanácsok. Programok, rendezvények.
|
Kommentár | Reakció | Vélemény
[1380]
Kritikus írások, vélemények, reakciók, a magyar politika és közélet cselekedeteire, visszásságaira.
|
Politika
[666]
Politikai jellegű hírek információk
|
Receptek sonkapréshez
[29]
Receptek, leírások házi húskészítmények (felvágott, sonka, disznósajt, stb.)sonkapréssel történő elkészítéséhez
|
Számítástechika | IT
[4176]
Hírek, újdonságok, tippek, trükkök, ajánlások, stb.
|
Történelem | Kultúra
[919]
Történelmi és kulturális vonatkozású hírek, információk.
|
Tudomány | Technika
[3028]
Újdonságok, felfedezések, új kutatási eredmények, érdekességek.
|
Választások
[405]
Országgyűlési, önkormányzati és EU választások előkészületeivel, lebonyolításával összefüggő hírek, információk.
|
Világ
[3369]
Nemzetközi, általam válogatott cikkek, írások.
|
Weboldalam hírei
[57]
Tájékoztatás a honlapon történt változásokról.
|
- 000 December
- 2012 Augusztus
- 2012 Szeptember
- 2012 Október
- 2012 November
- 2012 December
- 2013 Január
- 2013 Február
- 2013 Március
- 2013 Április
- 2013 Május
- 2013 Június
- 2013 Július
- 2013 Augusztus
- 2013 Szeptember
- 2013 Október
- 2013 November
- 2013 December
- 2014 Január
- 2014 Február
- 2014 Március
- 2014 Április
- 2014 Május
- 2014 Június
- 2014 Július
- 2014 Augusztus
- 2014 Szeptember
- 2014 Október
- 2014 November
- 2014 December
- 2015 Január
- 2015 Február
- 2015 Március
- 2015 Április
- 2015 Május
- 2015 Június
- 2015 Július
- 2015 Augusztus
- 2015 Szeptember
- 2015 Október
- 2015 November
- 2015 December
- 2016 Január
- 2016 Február
- 2016 Március
- 2016 Április
- 2016 Május
- 2016 Június
- 2016 Július
- 2016 Augusztus
- 2016 Szeptember
- 2016 Október
- 2016 November
- 2016 December
- 2017 Január
- 2017 Február
- 2017 Március
- 2017 Április
- 2017 Május
- 2017 Június
- 2017 Július
- 2017 Augusztus
- 2017 Szeptember
- 2017 Október
- 2017 November
- 2017 December
- 2018 Január
- 2018 Február
- 2018 Március
- 2018 Április
- 2018 Május
- 2018 Június
- 2018 Július
- 2018 Augusztus
- 2018 Szeptember
- 2018 Október
- 2018 November
- 2018 December
- 2019 Január
- 2019 Február
- 2019 Március
- 2019 Április
- 2019 Május
- 2019 Június
- 2019 Július
- 2019 Augusztus
- 2019 Szeptember
- 2019 Október
- 2019 November
- 2019 December
- 2020 Január
- 2020 Február
- 2020 Március
- 2020 Április
- 2020 Május
- 2020 Június
- 2020 Július
- 2020 Augusztus
- 2020 Szeptember
- 2020 Október
- 2020 November
- 2020 December
- 2021 Január
- 2021 Február
- 2021 Március
- 2021 Április
- 2021 Május
- 2021 Június
- 2021 Július
- 2021 Augusztus
- 2021 Szeptember
- 2021 Október
- 2021 November
- 2021 December
- 2022 Január
- 2022 Február
- 2022 Március
- 2022 Április
- 2022 Május
- 2022 Június
- 2022 Július
- 2022 Augusztus
- 2022 Szeptember
- 2022 Október
- 2022 November
- 2022 December
- 2023 Január
- 2023 Február
- 2023 Március
- 2023 Április
- 2023 Május
- 2023 Június
- 2023 Július
- 2023 Augusztus
- 2023 Szeptember
- 2023 Október
- 2023 November
- 2023 December
- 2024 Január
- 2024 Február
- 2024 Március
- 2024 Április
- 2024 Május
- 2024 Június
- 2024 Július
- 2024 Augusztus
- 2024 Szeptember
- 2024 Október
- 2024 November
06:32:26 Így készíthetsz Windows rendszeredhez távirányítót | |
Forrás: PCWorld | Lukács Richárd | 2020.06.25. Akár számítógéped felületét is távvezérelheted egy Arduino bevetésével, csupán némi pythonos segítségre lesz szükséged ehhez. Mutatjuk, hogyan csináld!
Rengeteg izgalmas projektben alkalmazhatod az Arduino mikrovezérlőt, de a legérdekesebbek ezek közül egyértelműen azok, amelyek a mindennapok során is alkalmazható eszközök elkészítését tűzik ki célul. Mi is lehetne izgalmasabb hardveres kihívás, mint a számítógép vezérlése? Cikkünkben megmutatjuk, hogyan alakíthatod át az Arduino-lapka bemeneti adatait egy rövidke Python-kód segítségével a számítógépen is értelmezhető utasításokká. Kiegészítők telepítéseExtra szenzoros kiegészítőket nem igazán kell beemelned a projektbe, vagyis rajtad múlik, hogy mennyi plusz komponenst kötsz a mikrovezérlőhöz. Első körben nem érdemes egy komplett billentyűzet elkészítéséhez szükséges inputszenzor-mennyiséget társítani - bár kellő elszántsággal akár ezt is megvalósíthatod. Azért legalább két gombot helyezz el a prototípuslapkán, ezekre a billentyűkre fogod ugyanis az alábbi minta-projektben kiszervezni a rendszer hangerőszabályzását. Ahhoz azonban, hogy ezt a lehető legegyszerűbben elkészíthesd, szoftveres csomaggal is bővítened kell a rendszert még a kódolás megkezdése előtt. Értelemszerűen kelleni fog az Arduino fejlesztői környezete, így amennyiben ezt még nem telepítetted, akkor indítsd ezzel az előkészületeket. Szükségtelen extra hardveres komponenseket installálni, hacsak nem valamilyen speciális mikrovezérlőt kívánsz életre kelteni.
A demókód készítésekor a 3.7-es Python-verziót használtuk, de ettől igény szerint eltérhetsz (bár ekkor a kompatibilitás nem biztos, hogy tökéletes lesz). Ha végeztél a program telepítésével, nyiss egy futtatási ablakot a Win+R billentyűkombinációval, és a CMD utasítás begépelésével indítsd el a parancssort, amelyen keresztül telepíthetsz majd extra kiegészítő komponenseket a nyelvhez. Ehhez felhasználhatod a Python beépített csomagtelepítőjét is (a 3.4-nél korábbi verziókban a python get-pip.py parancs segítségével külön kell installálnod). Alkalmazása rendkívül egyszerű, a py -m pip install parancs végére oda kell biggyesztened a szükséges csomag nevét, és már indul is a parancssoros letöltés és telepítés. Elsőként installáld a pySerial csomagot, amely lehetővé teszi, hogy soros monitorról érkező adatokkal is dolgozz a Python felületén. A telepítés megkezdéséhez a parancssorba írd be a py -m pip install pyserial utasítást, és kezdetét veszi a szükséges elemek másolása, aminek a végén a felület jelzi, ha a beemelés sikeres volt. A következő lépés - továbbra is a parancssoron belül -, hogy feltelepíted a PyAutoGUI-t, amelynek köszönhetően majd programkódon keresztül kontrollálhatod a rendszer bemeneti paramétereit. Még hiányzik a wheel csomagkezelő, enélkül elakadhat a szoftvertelepítés. Szóval elsőként gépeld a parancssorba a py -m pip install wheels utasítást, majd, ha a felület végzett, hozzáláthatsz a PyAutoGUI felmásolásához is a py -m pip install pyautogui segítségével. Kezdődhet a kódolásA csomagok beemelése után jöhet a programkód elkészítése, ami szerencsére nem túlzottan bonyolult. Az Arduino IDE felületén hozz létre egy új projektet, és a megjelenő ablakban a start() függvény elé ékelj be annyi, int típusú változót, ahány gombot csatlakoztattál a mikrovezérlőhöz - esetünkben ez kettőt jelent -, majd add nekik értékül annak a pinnek a számát, amelyhez kapcsolódnak (például int gomb1=2;). Ezek után a start() belsejébe mindössze egyetlen sornyi kódot kell beszúrnod, amelyben aktiválod a soros monitort (Serial.begin(9600); ). Ha ez sikerült, folytathatod a kódod készítését a loop()-ban, ahol a két gombhoz tartozó bekapcsolt állapothoz kell feltételeket társítanod. Elsőként vizsgáld meg azt a digitalRead(gomb1)==HIGH segítségével, amikor a gomb1-hez tartozó porton érkezik jel, vagyis a csatlakoztatott billentyűt lenyomtad. Ebben az esetben a soros monitornak küldj egy 1-es értéket (Serial.println(1); ). Hasonlóan egy másik feltételben vizsgáld a gomb2-ről érkező információkat, és ha teljesül a kritérium, írj ki egy 2-es számot a monitoron (Serial.println(2);). Végezetül helyezz a loop végére egy minimális késleltetést a delay(40); utasítás begépelésével. Ezt követően a programod magja már készen áll, magyarán töltheted is fel a rövid kis szoftvert a mikrovezérlőre. Teszteléséhez nyiss egy soros monitort, és láthatod, hogy a megfelelő gomb lenyomásakor az általad kiválasztott szám jelenik meg a képernyőn. Jöhet a kígyóA Python-kódok elkészítéséhez nem érdemes külön fejlesztői környezetet feltelepítened, de ha rendelkezel ilyennel, bátran használd. Ezúttal a Notepad++ felületét javasoljuk tanulmányozni a néhány soros program előállításához.
A Notepad++ üres felületén emeld be a két telepített csomagot, azaz a futtatható állományod első sorába az import pyautogui, alá pedig az import serial kerüljön. Ezeknek köszönhetően már hozzáférhetsz a csomagokban található extra komponensekhez. Következő lépésként a monitor = serial.Serial('COM3') sor segítségével adhatod meg, hogy melyik porton keresztül csatlakozzon mikrovezérlőd a számítógépedhez (az Arduino fejlesztői környezetben alul jelölt COM-értéket kell a zárójelbe írnod), a következő sorba pedig a monitor.baudrate = '9600' kerüljön, feltéve, hogy az általunk is használt 9600-as csatornán nyitottad meg a soros monitort az IDE-ben (ha nem, akkor itt a saját értékedet helyezd el). Mivel már "látod" a mikrovezérlőt, a Python felületéről elkezdheted feldolgozni az érkező adatokat. Ehhez indíts egy végtelen ciklust a while True: begépelésével, majd tárold el egy data változóban a soros monitorról beolvasott információt (data=monitor.readline()). Következő lépésként elengedhetetlen egy feltétel, ami akkor teljesül, ha van bármilyen bejövő adatunk (if data:), és mivel tudjuk, hogy számokat kell kapnunk a beérkező információfolyamban, bátran át is konvertálhatjuk a szam = int(data.decode('utf-8')) sorral. Jelenleg a szam változód már a soros monitorról beérkezett értéket tartalmazza, vagyis nincs más teendőd, mint egy feltételben vizsgálni az 1-es és a 2-es számok megjelenését. Teljesülés esetén aktiváld a pyautogui.press('gombhivatkozás') függvényt, amelynek gombhivatkozás-értéke helyett a megfelelő billentyűreferenciát kell idézőjelek között megadnod. Ha érdekel, hogy itt milyen formában hívhatod meg az egyes billentyűket, akkor a PyAutoGUI dokumentációjában részletes leírást találhatsz a bevethető parancsok listájáról. Mivel a jelenlegi programmal a kétgombos hangosítást és halkítást szeretnénk megvalósítani, célirányosan a volumeup és a volumedown értékeket is használhatod mindenféle extra kutatás nélkül. Ha elkészültél a kóddal, mentsd el hangero.py néven, és a parancssorban a cd…, valamint a cd könyvtárnév utasításokkal navigálj abba a könyvtárba, ahol ez az állomány található (vagy csak az intézőben ugorj a megfelelő mappába, a címsorba gépeld be a CMD utasítást, és üss egy Entert). Ezek után a py hangero.py utasítással aktiválhatod Python-fájlodat, amely - ha megfelelően készítetted el a kódot - figyeli az Arduino irányából érkező jeleket, gombnyomásra pedig el is kezdi állítgatni a hangerőt. A havonta megjelenő PC World magazinban további teszteket, cikkeket és elemzéseket találsz teljes verziós programok, biztonsági szoftverek és ajándék PC-játék társaságában.
| |
|