Inhoudsopgave:
- Benodigdheden
- Stap 1: Hoe het werkt
- Stap 2: Interface Micro:bit naar Raspberry Pi via Bluetooth
- Stap 3: Bluetooth instellen op Raspberry Pi
- Stap 4: Voer code uit op de Raspberry Pi
- Stap 5: Toekomstige reikwijdte
Video: Gebaargestuurde muis met behulp van Micro:bit - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:15
INVOERING
Het project is een gebarengestuurde muis, in de vorm van een handschoen met daarin een micro:bit ingebed. Het is een project dat is geïnspireerd op een vroeg idee dat ik had als embedded engineer. Ik wil altijd toegang hebben tot een draadloze muis en toetsenbordset, voor interfacing met elke microprocessor die ik zou willen gebruiken. Een muis is essentieel voor het geval ik een besturingssysteem op een microprocessor gebruik. Het hebben van een draadloze muis en toetsenbord is een aantal keren een redder gebleken, en in dit opzicht was ik erg geïnteresseerd in het ontwikkelen van een draagbaar stukje technologie dat kan worden gebruikt als een muis, en mogelijk als een toetsenbord.
In deze instructable ga ik de stappen en procedure delen van hoe ik een micro:bit met wat Python-code heb gebruikt om een op een handschoen gemonteerde, gebarengestuurde muis te maken.
Benodigdheden
1 micro:bit met batterij
1 handschoen om micro:bit aan te bevestigen
1 bluetooth-computer Linux (hier gebruikt Raspberry Pi)
PC voor het programmeren van micro:bit en het openen van een VNC-sessie naar Raspberry Pi
Stap 1: Hoe het werkt
Stap 2: Interface Micro:bit naar Raspberry Pi via Bluetooth
1. Bij het starten laat ik een reeks LED's zien in de vorm van "b*", en initialiseer ik de Bluetooth-versnellingsmeter, knop, LED en temperatuurservices.
2. In het geval van een Bluetooth-verbinding, toont het LED-scherm een "C", wat aangeeft dat de micro:bit een Bluetooth-verbinding tot stand heeft gebracht.
3. Als de Bluetooth-verbinding wordt verbroken, toont het LED-scherm een "D", wat aangeeft dat de micro:bit de Bluetooth-verbinding heeft verloren en opnieuw verbinding moet maken.
4. Selecteer in Projectinstellingen de modus "Geen koppeling". De micro:bit-website beveelt "Just Works"-koppeling aan, maar koppelen mislukt altijd met de laatste. Om de een of andere onverklaarbare reden werkt het met de eerste.
Stap 3: Bluetooth instellen op Raspberry Pi
1. Installeer het bluezero-pakket met "sudo pip3 install bluezero"
2. Open een Bluetooth-opdrachtprompt door "bluetoothctl" te typen. De nieuwe prompt zou er als volgt uit moeten zien:
$ [bluetooth] #
3. Zet micro:bit in scanmodus door de knoppen A en B ingedrukt te houden en op de resetknop te drukken. Wacht tot er een bluetooth-symbool op het LED-scherm verschijnt en laat dan alle knoppen los. Typ "scan on" op de Raspberry Pi Bluetooth-terminal. Zodra de micro:bit zichtbaar is in de lijst met nieuwe apparaten, typt u "scan off" en noteert u het apparaatadres van de micro:bit als "yy:yy:yy:yy:yy:yy".
4. Koppel en maak verbinding met de micro:bit door "pair yy:yy:yy:yy:yy:yy" te typen.
5. Om te controleren of het koppelen werkte, typt u "apparaten" en controleert u of micro:bit in de lijst met apparaten wordt weergegeven. Als de verbinding is gelukt, moet het LED-scherm op de micro:bit veranderen in een "C". Zo niet, reset dan de micro:bit en probeer gewoon opnieuw te koppelen op de bluetoothctl-terminal op de Raspberry pi.
Stap 4: Voer code uit op de Raspberry Pi
1. Voer de code uit op de Raspberry Pi door "python3 mouse_control.py" te typen, die aan het einde van deze stap is bijgevoegd:
2. Er zou een prompt op de terminal moeten verschijnen met de tekst "Verbonden". Druk even op beide knoppen A en B om de muis 'aan' te zetten. Een prompt met de tekst "Beweeg cursor rond" zou nu moeten verschijnen.
3. Om de muis uit te schakelen, drukt u nogmaals beide knoppen tegelijk in. Een prompt van "Doorgaan of afsluiten?" verschijnt. Druk op c om verder te gaan vanaf stap 2, of voer gewoon in om het programma af te sluiten.
4. Als de muis in een omgekeerde positie wordt gehouden (LED-scherm naar beneden gericht), geeft het programma een foutmelding waarin de gebruiker wordt gevraagd de muis op de juiste manier vast te houden, voordat verder wordt gegaan met stap 2.
5. Houd de muis voor een enkele klik evenwijdig aan de grond (om de cursor te laten stoppen met bewegen) en druk alleen op knop A. Druk voor een dubbelklik alleen op knop B.
6. Raadpleeg voor code-walkthrough het bijgevoegde bestand, dat voldoende goed is becommentarieerd.
7. De Bluetooth-verbinding is vrij sporadisch en kan vrij vaak worden verbroken, vooral als er in de buurt andere Bluetooth-verbonden apparaten in gebruik zijn. Als dit gebeurt, zou het opnieuw uitvoeren van de code moeten werken. Als ook dat niet lukt, open dan het bluetoothctl-opdrachtvenster en koppel opnieuw met de micro:bit.
Stap 5: Toekomstige reikwijdte
1. De muisbesturing kan in hoge mate worden afgesteld. Als een exponentiële versnelling in plaats daarvan een lineair versnellingsalgoritme wordt gebruikt, kan dit nog meer controle bieden.
2. Aangezien de Bluetooth-verbinding vrij sporadisch is, kan een gebeurtenis voor het detecteren van verbindingsfouten worden toegevoegd, die de reactie zou hebben om bij elke fout opnieuw een verbinding tot stand te brengen.
3. Sommige toetsenbordgebaren kunnen worden toegevoegd, zoals een plotselinge ruk kan een afsluiting veroorzaken, of een vooraf gedefinieerd gebaar, wanneer gedetecteerd, kan een andere veelgebruikte opdracht/toetsenbordaanslag veroorzaken.
Aanbevolen:
Meting van versnelling met behulp van ADXL345 en Particle Photon: 4 stappen
Meting van versnelling met behulp van ADXL345 en deeltjesfoton: De ADXL345 is een kleine, dunne, ultralaagvermogen, 3-assige versnellingsmeter met hoge resolutie (13-bits) meting tot ±16 g. Digitale uitvoergegevens zijn geformatteerd als 16-bits tweetallen en zijn toegankelijk via de digitale I2 C-interface. Het meet de
Upgrade de achtergrondverlichting van een VU-meter naar blauwe led met behulp van oude CFL-lamponderdelen: 3 stappen
Upgrade een VU-meterachtergrondverlichting naar blauwe led met behulp van oude CFL-lamponderdelen.: Tijdens het repareren van een oude Sony TC630 reel-to-reel bandrecorder, merkte ik dat een van de glazen bollen voor de achtergrondverlichting van de VU-meter kapot was. Geen hoeveelheid geleidende verf werkte omdat het lood onder het glasoppervlak was afgebroken. De enige vervanger die ik
Berekening van vochtigheid, druk en temperatuur met behulp van BME280 en Photon Interfacing: 6 stappen
Berekening van vochtigheid, druk en temperatuur met behulp van BME280 en Photon Interfacing. We komen verschillende projecten tegen die temperatuur-, druk- en vochtigheidsbewaking vereisen. We realiseren ons dus dat deze parameters eigenlijk een cruciale rol spelen bij het hebben van een schatting van de werkefficiëntie van een systeem bij verschillende atmosferische cond
Digitale klok met netwerktijd met behulp van de ESP8266: 4 stappen (met afbeeldingen)
Digitale netwerkklok met de ESP8266: we leren hoe we een schattige kleine digitale klok kunnen bouwen die communiceert met NTP-servers en de netwerk- of internettijd weergeeft. We gebruiken de WeMos D1 mini om verbinding te maken met een wifi-netwerk, de NTP-tijd te verkrijgen en deze weer te geven op een OLED-module. De video hierboven
Hoe u gebruikersniveaus van NUMA toevoegt aan uw exemplaar van N met behulp van NumADD Firefox AddOn: 4 stappen
Gebruikersniveaus van NUMA toevoegen aan uw exemplaar van N NumADD Firefox-add-on gebruiken: Elke gebruiker van Metanet's N-database op gebruikersniveau NUMA weet hoe onhandig de interface is voor het kopiëren van door gebruikers gemaakte niveaus naar uw exemplaar van het spel. NumADD, elimineert de noodzaak van kopiëren en plakken en maakt het overzetten van niveaus het werk van één muisklik