Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Arduino-gesteuertes USB-Trackpad

Komponenten und Verbrauchsmaterialien

Arduino Micro
× 1

Apps und Onlinedienste

Arduino-IDE

Über dieses Projekt

Jedes Mal, wenn ein neuer Raspberry Pi auf den Markt kommt, schaue ich mir die Spezifikationen an und denke mir "Ich möchte wirklich einen Laptop daraus machen", aber ein Problem tritt immer auf und das ist, dass ich nie ein eigenständiges USB-Trackpad dafür finden kann der Laptop. In diesem Projekt werden wir also ein Trackpad von einem alten kaputten Laptop retten und es mit einem Arduino Pro Micro in ein USB-Gerät konvertieren.

Schritt 1:Teile

Die für dieses Projekt benötigten Teile sind wirklich einfach, wir benötigen ein Trackpad von einem alten Laptop, ein Arduino-Mikro und etwas Draht. Leider gibt es nur wenige Arten von Arduino, die wir verwenden können, dies sind Arduino micro, pro micro und Leonardo, da diese so programmiert werden können, dass sie als HIDs (Human Interface Devices) angezeigt werden, was bedeutet, dass sie auf dem Computer als a . angezeigt werden können Maus oder Tastatur. Dies ist etwas, was das Arduino Uno nicht kann. Das Arduino Pro Micro erhalten Sie hier:HierWenn Sie das Trackpad lieber kaufen möchten, finden Sie es hier:Hier

Schritt 2:Warum funktioniert das?

Der Grund, warum wir ein Trackpad mit einem Arduino verbinden können, ist, dass die meisten älteren Laptop-Trackpads über eine PS/2-Schnittstelle mit dem Computer kommunizierten, was bedeutet, dass die Trackpad-Schaltung PS/2-Ausgänge hat, die Daten und Takt sind. Diese Daten werden dann vom Arduino gelesen und in Daten umgewandelt, die über die USB-Schnittstelle an den Computer gesendet werden können. Jetzt muss ich anmerken, dass nicht alle Laptop-Trackpads gleich sind. So ziemlich alle älteren Laptops verwenden eine PS/2-Schnittstelle, aber einige neuere verwenden eine USB-Schnittstelle anstelle der PS/2-Schnittstelle. Wenn Sie es schaffen, eines dieser USB-Trackpads anstelle des PS/2-Trackpads zu finden, können Sie einfach den Namen des Trackpads googeln und die USB-Pinbelegung finden und es an einen USB-Computer anschließen und es wird funktionieren. Für dieses Projekt verwenden wir jedoch das gängigere PS/2-Trackpad und verwenden einen Arduino, um daraus eine USB-Maus zu machen.

Schritt 3:Verkabelung

Die Verkabelung für dieses Projekt ist ziemlich einfach, wir müssen nur 4 Lötpads auf unserem Trackpad finden. Diese sind ziemlich leicht zu finden, da sie mit T10 (Daten), T11 (Takt) und T20 beschriftet sind und der Masseanschluss nur eine große freiliegende Metallfläche ist. Wir müssen sorgfältig einen Draht an jedes dieser Pads löten und sie dann mit den entsprechenden Arduino-Pins verbinden.

  • T10 wird mit Pin 10 des Arduino-Mikros verbunden
  • T11 wird an Pin 9 des Arduino-Mikros angeschlossen
  • T20 verbindet sich mit 5V auf dem Arduino-Mikro
  • Die Masseplatte wird auf dem Arduino micro mit Masse verbunden

Nachdem Sie Drähte an die Pads des Trackpads gelötet haben, ist es wichtig, dass Sie keinen Druck auf diese Pads ausüben, selbst der geringste Druck auf die Pads kann sie vollständig abziehen und Ihr Trackpad unbrauchbar machen. Am besten bedecken Sie Ihre Verbindung nach dem Löten mit Heißkleber.

Schritt 4:Einige Bibliotheken installieren

Für dieses Projekt müssen wir zwei Bibliotheken in der Arduino IDE installieren, diese Bibliotheken sind:

  • Mausbibliothek:Hier
  • PS/2-Bibliothek:Hier

Laden Sie sie herunter, öffnen Sie die Bibliotheksdatei Ihrer Arduino IDE und legen Sie sie ab. Die PS/2-Bibliothek wird verwendet, um die Daten vom Trackpad zu erhalten, und die Mausbibliothek ermöglicht es uns, diese Daten in Mausbefehle umzuwandeln, die der Computer lesen kann den USB-Port.

Schritt 5:Der Code

Nachdem wir die Bibliotheken installiert haben, können wir unseren Code auf das Arduino hochladen. Der Code ist unten zu finden. Ich muss jedoch beachten, dass der Code nicht hochgeladen oder kompiliert wird, es sei denn, das unter Tools ausgewählte Board ist das Arduino micro oder Leonardo Beachten Sie, wenn Sie beim Kompilieren des Codes einen Fehler erhalten. Sobald der Code hochgeladen wurde, sollte das Arduino als HID-Gerät neu starten und auf dem Computer als Maus angezeigt werden.

thistouchpad.ino

Schritt 6:Fertigstellen und Fehlerbehebung

Wenn Sie das Touchpad jetzt berühren, sollten Sie etwas Bewegung auf Ihrem Bildschirm bekommen. Da das Arduino als USB-Gerät fungiert, können Sie es an jeden Computer anschließen und es wird sofort als USB-Maus gestartet, unabhängig vom Betriebssystem oder Computertyp . Wenn Sie jetzt nicht den Prozess der Programmierung und Verdrahtung des Arduino durchlaufen möchten, können Sie einfach einen PS/2-zu-USB-Konverter kaufen, aber ich würde dies nicht empfehlen, da ich gelesen habe, dass dies die Daten von das Trackpad und können es unbrauchbar machen. Außerdem können wir durch die Verwendung eines Arduino alles an der Maus vollständig an unsere Vorlieben anpassen, z. B. die Geschwindigkeit der Maus und was Aktionen wie Doppeltippen und Scrollen bewirken auf der Arduino-Mausseite hier.

Wenn Ihr Trackpad keine Daten zurücksendet, kann dies eine einfache Lösung sein. Sehen Sie sich die Rückseite des Trackpads an und versuchen Sie, eine Teilenummer zu finden. Sie können diese Teilenummer dann mit dem Wort Pinbelegung googeln und es sollte Ihnen zeigen, wo die Daten sind , Uhr und 5-Volt-Pins sind.

Vielen Dank fürs Lesen wie immer, wenn Sie Fragen haben, hinterlassen Sie sie bitte in den Kommentaren und ich werde mein Bestes geben, um mich bei Ihnen zu melden.

Code

  • Code
CodeArduino
einfügen in arduino ide
#include #include #define PS2_DATA 10#define PS2_CLK 9byte mstat1;byte mstat2;byte mxy;byte mx; Byte mein; Byte mz; int msval[2];int repeatCnt;PS2 Elch(PS2_CLK, PS2_DATA); Void setup () { Mouse.begin (); moose.write(0xff); moose.read(); moose.read(); moose.read(); moose.write(0xf0); moose.read(); VerzögerungMikrosekunden (100); moose.write(0xe8); moose.read(); moose.write (0x03); moose.read(); moose.write(0xe8); moose.read(); moose.write (0x00); moose.read(); moose.write(0xe8); moose.read(); moose.write (0x01); moose.read(); moose.write(0xe8); moose.read(); moose.write (0x00); moose.read(); moose.write(0xf3); moose.read(); moose.write (0x14); moose.read(); Serial.begin (9600);}void ms_read () {moose.write (0xeb); moose.read(); mstat1 =moose.read(); mxy =moose.read(); mz =moose.read(); mstat2 =moose.read(); mx =moose.read(); mein =moose.read(); msval[0] =(((mstat2 &0x10) <<8) | ((mxy &0x0F) <<8) | mx ); msval[1] =(((mstat2 &0x20) <<7) | ((mxy &0xF0) <<4) | mein ); msval[2] =int(mz);}void loop() { ms_read(); if (msval[0]> 0 und msval[2]> 10) { repeatCnt++; aufrechtzuerhalten. Sonst {WiederholungCnt =0; } if (repeatCnt> 2) { msval[0] =map(msval[0], 580, 5164, -1023, 1023); msval[1] =map(msval[1], 1120, 5967, 1023, -1023); Mouse.move(msval[0]/200,msval[1]/200); }}

Herstellungsprozess

  1. Raspberry Pi Roboter über Bluetooth gesteuert
  2. Gestengesteuerte interaktive Tischleuchte
  3. Android-gesteuertes Spielzeug mit Raspberry Motor Shield
  4. Alexa-gesteuerte LEDs über Raspberry Pi
  5. Joystick-gesteuertes RC-Auto
  6. Nunchuk-gesteuerter Roboterarm (mit Arduino)
  7. Sprachgesteuerter Roboter
  8. MobBob:DIY-Arduino-Roboter, der von einem Android-Smartphone gesteuert wird
  9. Sprachgesteuerte Bluetooth-Geräte mit OK Google
  10. Arduino-gesteuerter Klavierroboter:PiBot