Tartalomjegyzék:

[Viselhető egér] Bluetooth-alapú hordozható egérvezérlő Windows 10 és Linux rendszerhez: 5 lépés
[Viselhető egér] Bluetooth-alapú hordozható egérvezérlő Windows 10 és Linux rendszerhez: 5 lépés

Videó: [Viselhető egér] Bluetooth-alapú hordozható egérvezérlő Windows 10 és Linux rendszerhez: 5 lépés

Videó: [Viselhető egér] Bluetooth-alapú hordozható egérvezérlő Windows 10 és Linux rendszerhez: 5 lépés
Videó: #91 - Elfeledett királyaink: III. Károly - Kalmár János, történész 2024, Július
Anonim
Image
Image
Felületi gyorsulásmérő a Raspberry Pi -vel
Felületi gyorsulásmérő a Raspberry Pi -vel

Készítettem egy Bluetooth alapú egérvezérlőt, amely használható az egérmutató vezérlésére és a PC-egérrel kapcsolatos műveletek végrehajtására menet közben, minden felület érintése nélkül. A kesztyűbe ágyazott elektronikus áramkör segítségével gyorsulásmérőn keresztül nyomon követhetők a kézmozdulatok, és ez lefordítható az egérmutató mozgására. Ez az eszköz egy olyan gombbal is kapcsolódik, amely megismétli a bal gomb kattintását. Az eszköz sorban csatlakoztatható a számítógéphez (USB -n keresztül) vagy vezeték nélkül Bluetooth -kapcsolaton keresztül. A Bluetooth robusztus és univerzális vezeték nélküli kommunikációt biztosít a gazdaeszköz és ez a hordható egér között. Mivel a Bluetooth széles körben elérhető, és szinte minden személyi laptopba be van építve, az ilyen hordható eszközök felhasználási területe széles. A Raspberry Pi használata, amely a különböző projektekben általánosan használt fejlesztési platform, a különböző érzékelők összekapcsolása, és egy ilyen eszköz fejlesztése egyszerű és skálázható. A kesztyű bármilyen más hordható anyaggal helyettesíthető, hogy szélesebb körű legyen az alkalmazása.

A COVID-19 elleni óvintézkedésként tanácsos kerülni a különböző emberek között megosztható felületek megérintését, és érintőképernyős laptop vagy egér is lehet a közös felületek között. Egy ilyen hordható eszköz használata segít megőrizni a higiéniát és tisztán tartani a gyakran használt felületeket:)

Kellékek

  • Raspberry Pi 3 B modell V1.2
  • SparkFun háromtengelyes gyorsulásmérő Breakout - MMA8452Q
  • Férfi -női áthidaló vezeték
  • Kesztyű
  • Szövetbetétes ragasztószalag
  • Olló
  • Micro-USB kábel
  • HDMI kábel (a Raspberry Pi -n keresztüli hibakereséshez)

1. lépés: Gyorsulásmérő illesztése a Raspberry Pi -vel

Felületes gyorsulásmérő a Raspberry Pi -vel
Felületes gyorsulásmérő a Raspberry Pi -vel

A Sparkfun háromtengelyes MMA8542Q gyorsulásmérőjét használtam, amely az I2C kommunikációs protokollt használja a Raspberry Pi GPIO csapokkal való beszélgetéshez és a tengelyadatok elküldéséhez. Ez az érzékelő különféle működési módokat biztosít a konfigurálható adatsebességgel, alvó üzemmódokkal, gyorsítási tartományokkal, szűrési módokkal stb. A Pibits kódját nagyon hasznosnak találtam az érzékelő kezdeti konfigurálásában és a kézmozdulataim tesztelésében. Jobb, ha először az érzékelőt sík felületre helyezi, és determinisztikus dőléseket végez, miközben figyelembe veszi a nyers érzékelőértékeket. Ez különösen hasznos annak megértésében, hogy ez az érzékelő hogyan reagál különböző kézmozdulatokkal, és hogyan állíthatunk be küszöbértékeket az alkalmazásunkhoz. A gyorsulásmérő sikeres csatlakoztatása után láthatja a nyers tengelyadatokat a Pi terminál képernyőjén.

2. lépés: Nyomógomb illesztése a Raspberry Pi-vel

Interfész nyomógomb Raspberry Pi-vel
Interfész nyomógomb Raspberry Pi-vel

Ebben a hordható eszközben illesztettem be egy gombot, amely bal egérgombként működhet, így rákattinthatok a képernyőn megjelenő ikonokra. A gomb két vége ezután a Pi 2 GPIO érintkezőjéhez csatlakozik. Az egyik csap logikai magas értéket ad ki, a másik csap pedig ezt az értéket. Amikor megnyomja a gombot, az áramkör bezárul, és a bemeneti érintkező képes logikailag magas értéket leolvasni, amelyet azután a szkript dolgoz fel, amelyet a bal egérkattintás utánozására írtam. A forrasztópáka hiánya miatt ragasztószalaggal kötöttem össze az áthidalókat a gombbal.

3. lépés: Python -szkript fejlesztése az egérmutató soros vezérléséhez

A Pyautogui Python könyvtárat használtam az egérmutató vezérlésére. A könyvtár használatának oka az volt, hogy mind Linux, mind Windows platformon működik. A Raspberry Pi egérmutatójának vezérléséhez először csatlakoztattam a Pi -t a kijelzőhöz. Ezután a könyvtár által biztosított API -kat használtam az egérmutató vezérléséhez:

  1. pyautogui.move (0, 200, 2) # 2 másodperc alatt lefelé mozgatja az egeret 200 képponttal
  2. pyautogui.click () # kattintson az egérrel

A gyorsulásmérőből származó hibaadatok kiszűrése érdekében átlagolást és más szűrési módszereket használtam, amelyek a csatolt kódon keresztül könnyen érthetők. A pyautogui.move API-t (0, y) oly módon használtuk, hogy az egérmutató egyszerre felfelé vagy lefelé vagy balra-jobbra mozoghat. Ennek oka az, hogy a gyorsulásmérő X, Y és Z irányú tengelyeket jelez, de az API csak 2 argumentumot vesz fel, X és Y tengelyt. Ezért ez a megközelítés nagyon alkalmas volt a gyorsulásmérőmre és a gesztusok térképen történő feltérképezésére.

4. lépés: Python -szkript fejlesztése az egérmutató Bluetooth -on keresztüli vezérléséhez

Python -szkript fejlesztése az egérmutató Bluetooth -on keresztüli vezérléséhez
Python -szkript fejlesztése az egérmutató Bluetooth -on keresztüli vezérléséhez

Ez a rész egy fejlett alkalmazás, amelyben minden Bluetooth-képes laptop képes kommunikálni a Raspberry Pi-vel egy szerver-kliens kommunikációs modellben, és vezeték nélkül továbbítani az egérkoordináták adatait. Ahhoz, hogy beállíthassuk a Windows 10 64 bites laptopját, amely lehetővé teszi a Bluetooth kommunikációt, az alábbi lépéseket kell követnünk:

Windows 10:

  1. Hozzon létre egy bejövő Bluetooth COM portot.
  2. Párosítsa a Pi Bluetooth -ját a laptop Bluetooth -jával azáltal, hogy Pi -t felfedezhetővé teszi.
  3. Telepítse a Python -t a Windows rendszerre.
  4. Telepítse a pipet a Windows rendszerre. A Pip könyvtárak telepítésére szolgál Linux vagy Windows rendszeren.
  5. A pyautogui telepítése Windows rendszeren a következővel: pip install pyautogui
  6. Miután a pyautogui telepítve van az eszközre, telepítse a Pybluez rendszert a Windows rendszerre a Windows parancssor következő parancsa segítségével: pip install PyBluez-win10. A PyBluez lehetővé teszi a Bluetooth kommunikációt Windows és Linux számítógépeken egyaránt.
  7. Ahhoz, hogy egy alkalmazást Windows 10-es laptopon fejleszthessünk, telepítenünk kell a Microsoft Visual Studio alkalmazást (15-20 GB szükséges hely) és annak építőeszközeit. Ezért a PyBluez mellett az alábbi utasításokat kell követnünk,

    1. Töltse le és futtassa a "Visual Studio Installer" alkalmazást:

    2. Telepítse a "Visual Studio Build Tools 2017" -t, ellenőrizze a "Visual C ++ build tools" és az "Universal Windows Platform build tools" elemeket
    3. git klón
    4. cd pybluez
    5. python setup.py install

  8. Ha a fenti utasításokat helyesen követi, a Python futtatása a Windows terminálon, valamint a pyautogui és a Bluetooth modul importálása hibátlanul fog működni, a fenti képen látható módon.
  9. A Windows gépre telepített pybluez könyvtárban navigáljon a következőhöz: pybluez-master / example / simple / rfcomm-server.py, és hajtsa végre a python rfcomm-server.py használatával. Ha a terminál hiba nélkül várakozó állapotba kerül, menjen az alábbi szakaszhoz a Bluetooth beállításához a Pi -n. Ha hibák vannak a pybluez telepítésekor, tekintse meg a GitHub problémák című részt a hibakereséshez.

Raspbian a Raspberry Pi -n:

  1. Telepítse a PyBluez programot a Pi -re
  2. Futtassa a szerver példát Windows rendszeren. Ezután a Pi-n navigáljon a pybluez-master / example / simple / rfcomm-client.py címre, és hajtsa végre. Ha a két eszköz kommunikálni kezdett, a Bluetooth mostantól mindkét eszközön be van állítva. Ha többet szeretne megtudni arról, hogyan működik az aljzatkommunikáció a Python -szal, olvassa el ezt a linket az MIT -től.

A tengelyadatok Pi -ről PC -re történő továbbításához további adatelemzésre lesz szükség, mivel az adatokat bájtokban küldik. A kliens és a szerver adatkommunikációjáról további információt a csatolt kódban talál.

5. lépés: Gyorsulásmérő és gomb beágyazása a kesztyűre

Gyorsulásmérő és gomb beágyazása a kesztyűre
Gyorsulásmérő és gomb beágyazása a kesztyűre
Gyorsulásmérő és gomb beágyazása a kesztyűre
Gyorsulásmérő és gomb beágyazása a kesztyűre

Miután a gyorsulásmérő jól illeszkedett, a csontvázrendszer úgy néz ki, mint az első kép ezen a lépésen.

Mivel a kesztyű felülete nem lapos, használtam egy bábu hitelkártyát, ami időnként a postaládámba kerül. A lépés második képének megfelelően ragasztószalaggal rögzítettem a kesztyű felső felületére a próbabábu hitelkártyát. A kártya fölé csatoltam a gyorsulásmérőmet. Ez a beállítás elég robusztus volt ahhoz, hogy a gyorsulásmérőm stabil legyen, és pontosan nyomon tudja követni a gesztusaimat.

Ajánlott: