Mündəricat:
- Təchizat
- Addım 1: Raspberry Pi ilə İnterfeysləşdirilmiş Akselerometr
- Addım 2: Raspberry Pi ilə düymələri birləşdirin
- Addım 3: Siçan Göstəricisini Serial İdarə etmək üçün Python Skriptinin İnkişaf etdirilməsi
- Addım 4: Bluetooth vasitəsilə Siçan Göstəricisini idarə etmək üçün Python Skriptinin hazırlanması
- Addım 5: Əlcəkdə Akselerometr və Düyməni Yerləşdirmək
Video: [Geyilə bilən Siçan] Windows 10 və Linux üçün Bluetooth əsaslı Geyilə bilən Mouse Controller: 5 Addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:44
Siçan göstəricisini idarə etmək və heç bir səthə toxunmadan PC-siçanla əlaqəli əməliyyatları yerinə yetirmək üçün istifadə edilə bilən Bluetooth əsaslı bir siçan nəzarətçisi hazırladım. Əlcək üzərində olan elektron sxem, akselerometr vasitəsi ilə əl hərəkətlərini izləmək üçün istifadə edilə bilər və siçan göstəricisi hərəkətinə çevrilə bilər. Bu cihaz, sol düyməni basmağı təkrarlayan bir düymə ilə də əlaqələndirilir. Cihaz PC -yə (USB vasitəsilə) və ya Bluetooth bağlantısı vasitəsilə simsiz olaraq qoşula bilər. Bluetooth, ev sahibi cihazla bu geyilə bilən siçan arasında möhkəm və universal simsiz əlaqə təmin edir. Bluetooth geniş yayılmış və demək olar ki, bütün fərdi noutbuklara daxil olduğu üçün belə bir geyilə bilən cihazın istifadəsi genişdir. Müxtəlif layihələr, fərqli sensorlar arasındakı əlaqə və belə bir cihazın inkişafı üçün çox istifadə olunan bir inkişaf platforması olan Raspberry Pi -dən istifadə etmək asan və ölçeklendirilebilir. Əlcək, tətbiqini daha geniş etmək üçün başqa geyinə bilən ilə əvəz edilə bilər.
COVID-19-a qarşı bir tədbir olaraq, fərqli insanlar arasında paylaşıla bilən səthlərə toxunmamaq məsləhət görülür və bu ümumi səthlər arasında toxunma ekranlı bir dizüstü kompüter və ya siçan ola bilər. Belə bir geyilə bilən cihazdan istifadə gigiyenanı qorumağa və ümumi istifadə olunan səthləri təmizləməyə kömək edir:)
Təchizat
- Raspberry Pi 3 Model B V1.2
- SparkFun Üç Eksenli Akselerometr Qırılması - MMA8452Q
- Kişi -Dişi Jumper Tel
- Bir əlcək
- Kanal Bantı
- Qayçı
- Mikro USB kabel
- HDMI Kabeli (Raspberry Pi vasitəsilə ayıklama üçün)
Addım 1: Raspberry Pi ilə İnterfeysləşdirilmiş Akselerometr
Raspberry Pi GPIO pinləri ilə danışmaq və baltalar məlumatlarını göndərmək üçün I2C rabitə protokolundan istifadə edən Sparkfun-dan MMA8542Q Üç oxlu akselerometrdən istifadə etdim. Bu sensor, konfiqurasiya edilə bilən məlumat sürəti, yuxu rejimləri, sürətlənmə diapazonu, filtr rejimi və s. İlə müxtəlif iş rejimləri təmin edir. Pibitsdən alınan kodu sensorun ilkin konfiqurasiyasında və əl hərəkətlərimlə sınamaqda çox faydalı olduğunu gördüm. Sensoru əvvəlcə düz bir səthə qoymaq və xam sensor dəyərlərini müşahidə edərkən deterministik əyilmələr etmək daha yaxşıdır. Bu, bu sensorun müxtəlif əl hərəkətləri ilə necə reaksiya verdiyini və tətbiqimiz üçün eşikləri necə qura biləcəyimizi anlamaqda xüsusilə faydalıdır. Akselerometr uğurla birləşdirildikdən sonra, Pi terminal terminalında gələn xam baltalar məlumatlarını görə bilərsiniz.
Addım 2: Raspberry Pi ilə düymələri birləşdirin
Bu geyilə bilən cihazda, ekrandakı nişanları vurmaq üçün sol siçan düyməsi kimi işləyə bilən bir düymə ilə əlaqə qurdum. Düymənin 2 ucu daha sonra Pi -nin 2 GPIO pininə bağlanır. Sancaqlardan biri məntiqi yüksək çıxır və digər pin bu dəyəri oxuyur. Düymə basıldıqda, dövrə bağlanır və giriş pin məntiqi yüksək bir dəyəri oxuya bilir, sonra sol siçan düyməsini təqlid etmək üçün yazdığım skript tərəfindən işlənir. Lehimləmə dəmiri olmadığından atlayıcıları düymə ilə bağlamaq üçün yapışqan lentdən istifadə etdim.
Addım 3: Siçan Göstəricisini Serial İdarə etmək üçün Python Skriptinin İnkişaf etdirilməsi
Siçan göstəricisini idarə etmək üçün Pyautogui Python kitabxanasından istifadə etdim. Bu kitabxanadan istifadə etməsinin səbəbi həm Linux, həm də Windows platformasında çalışması idi. Raspberry Pi üzərindəki siçan göstəricisini idarə etmək üçün əvvəlcə Pi -ni ekrana bağladım. Sonra siçan göstəricimi idarə etmək üçün kitabxana tərəfindən verilən aşağıdakı API -lərdən istifadə etdim:
- pyautogui.move (0, 200, 2) # siçanı 2 saniyə ərzində 200 piksel aşağıya doğru hərəkət etdirir
- pyautogui.click () # siçanı vurun
Accelerometer -dən gələn səhv məlumatlarını süzmək üçün əlavə edilmiş kod vasitəsilə asanlıqla başa düşülə bilən ortalamadan və digər süzgəcdən istifadə etdim. Pyautogui.move (0, y) API siçan göstəricisi bir anda yuxarı-aşağı və ya sola-sağa gedə biləcək şəkildə istifadə edilmişdir. Bunun səbəbi, akselerometr X, Y və Z istiqamətindəki baltaları bildirir, lakin API yalnız 2 arqumenti, X və Y oxlarını alır. Buna görə də, bu yanaşma mənim akselerometrim və ekrandakı jestləri xəritələmək üçün çox uyğun idi.
Addım 4: Bluetooth vasitəsilə Siçan Göstəricisini idarə etmək üçün Python Skriptinin hazırlanması
Bu hissə, Bluetooth imkanları olan hər hansı bir noutbukun bir server-müştəri ünsiyyət modelində Raspberry Pi ilə əlaqə qura biləcəyi və siçan koordinatlarının məlumatlarını simsiz olaraq ötürə biləcəyi inkişaf etmiş bir tətbiqdir. Bluetooth ünsiyyətinə imkan verən Windows 10 64 bitli bir dizüstü kompüter qurmaq üçün aşağıdakı adımları yerinə yetirməliyik:
Windows 10:
- Daxil olan Bluetooth COM portu yaradın.
- Pi -nin Bluetooth -unu dizüstü kompüterin Bluetooth -u ilə birləşdirin ki, Pi aşkar olunsun.
- Windows -da Python quraşdırın.
- Windows -a pip quraşdırın. Pip, Linux və ya Windows maşınında kitabxana qurmaq üçün istifadə olunur.
- Windows -da pyautogui qurun: pip install pyautogui
- Pyautogui cihaza quraşdırıldıqdan sonra Windows terminalında aşağıdakı əmri istifadə edərək Windows-da Pybluez qurun: pip install PyBluez-win10. PyBluez, həm Windows, həm də Linux PC -lərdə Bluetooth əlaqəsini təmin edir.
-
Windows 10 noutbukunda bir tətbiq hazırlamaq üçün Microsoft Visual Studio (15-20 GB boşluq lazımdır) və onun qurma alətlərini quraşdırmalıyıq. Buna görə PyBluez ilə birlikdə aşağıdakı təlimatları izləməliyik.
- "Visual Studio Installer" proqramını yükləyin və işə salın:
-
"Visual Studio Build Tools 2017" qurun, "Visual C ++ qurma alətləri" və "Universal Windows Platforması qurma alətləri" ni yoxlayın.
- git klonu
- cd pybluez
python setup.py qurun
- Yuxarıdakı təlimatlara düzgün əməl olunarsa, Windows terminalında Python işlədilməsi və pyautogui və Bluetooth modulunun idxalı yuxarıdakı şəklə uyğun olaraq səhvsiz işləməlidir.
- Windows maşınında quraşdırılmış pybluez kitabxanasında gedin: pybluez-master / sample / simple / rfcomm-server.py və python rfcomm-server.py istifadə edərək icra edin. Terminal səhvsiz gözləmə vəziyyətinə keçərsə, Pi -də Bluetooth qurmaq üçün aşağıdakı bölməyə keçin. Pybluez -in quraşdırılmasında səhvlər varsa, ayıklama üçün GitHub Məsələlərinə baxın.
Raspberry Pi üzərində Raspbian:
- PyBluez -i Pi -yə quraşdırın
- Windows -da server nümunəsini işə salın. Sonra Pi-də pybluez-master / sample / simple / rfcomm-client.py ünvanına gedin və icra edin. İki cihaz ünsiyyət qurmağa başlamışsa, indi Bluetooth hər iki cihazda qurulur. Python ilə soket ünsiyyətinin necə işlədiyini daha yaxşı başa düşmək üçün MIT -dən bu linkə baxın.
Məlumat baytlarla göndərildiyindən, baltadan məlumatları Pi -dən PC -yə göndərmək üçün bəzi əlavə məlumatların ayrılması tələb olunacaq. Müştəri və server məlumatları haqqında daha çox məlumat üçün əlavə edilmiş koda baxın.
Addım 5: Əlcəkdə Akselerometr və Düyməni Yerləşdirmək
Akselerometr yaxşı bir şəkildə bağlandıqdan sonra, skelet sistemi bu addımdakı ilk görüntüyə bənzəyir.
Əlcəyin səthi düz olmadığından, ara -sıra poçt qutuma gələn bir kukla kredit kartı istifadə etdim. Bu addımdakı ikinci görüntüyə görə, kukla kredit kartını əlcəyimin üst səthinə yapışan bantla bağladım. Kartın üstünə akselerometrimi bağladım. Bu qurğu, akselerometrimi sabit saxlamaq və jestlərimi dəqiq izləmək üçün kifayət qədər möhkəm idi.
Tövsiyə:
Şarj edilə bilən simsiz siçan: 3 addım
Şarj edilə bilən Simsiz Mouse: Simsiz siçanınız üçün asan və qənaətli bir yol. Ailə batareyaları artıq yoxdur. Böyük şarj cihazları daşımağa ehtiyac yoxdur. Yalnız bir mikro USB kabeli ilə siçan batareyanızı bu qədər tez doldura bilərsiniz! Yalnız 3 addımda:
EKQ Logger - Uzunmüddətli Məlumat Alma və Analiz Üçün Geyilə bilən Kardiyak Monitor: 3 Addım
ECG Logger - Uzunmüddətli Məlumat Alma və Analiz üçün Geyinilə bilən Kardiyak Monitor: İlk buraxılış: Oktyabr 2017Son versiya: 1.6.0Vəziyyət: Sabit Çətinlik: Yüksək Önkoşul: Arduino, Proqramlaşdırma, Avadanlıq qurulmasıBənzər olmayan depo: SF (aşağıdakı bağlantılara baxın) Dəstək: Yalnız forum, heç bir PMECG Logger uzun müddət geyilə bilən ürək monitoru deyil
Geyilə bilən cihaz üçün RYB080l Bluetooth Təlimatı: 8 addım
Geyilə bilən cihaz üçün RYB080l Bluetooth Dərsliyi: Hey, nə var, uşaqlar! Akarsh burada CETech -dən. Mənim bu proyektim Reyax -ın kiçik Bluetooth modulunun işini başa düşmək üçün daha çox öyrənmə əyrisidir, əvvəlcə modulu təkbaşına başa düşəcəyik və onu birbaşa istifadə etməyə çalışacağıq, sonra birlikdə işləyəcəyik
Miniatür Geyilə bilən Kilitli Gücləndirici (və Geyimlər üçün Sonar Sistemi, Vb ..): 7 addım
Miniatür Geyilə bilən Kilidli Gücləndirici (və Giyinənlər üçün Sonar Sistemi, və s.): Gözlük çərçivələrinə yerləşdirilə bilən və korlar üçün sonar görmə sistemi və ya sadə bir ultrasəs yaratmaq üçün miniatür aşağı qiymətli kilidli gücləndirici qurun. Ürəyinizi davamlı olaraq izləyən və insanları xəbərdar etmək üçün İnsan-Maşın Öyrənməsini istifadə edən maşın
Yenidən doldurula bilən siçan üçün batareya hazırlayın: 3 addım
Yenidən şarj edilə bilən bir siçan üçün batareya yaradın: ----- YENİLƏNİŞ ----- bunu çox gənc olduğum zaman etdiyimi unutmayın. Bu təlimatda istifadə etdiyim şarj üsulları çox təhlükəlidir. götürmək üçün daha yaxşı bir yol, ipoddan ipoddan (bu vəziyyətdə bir ipod mini) bir porta qədər uzanmaq olar