Inhaltsverzeichnis:

Postshirt: Tragbare Körperhaltungserkennung in Echtzeit - Gunook
Postshirt: Tragbare Körperhaltungserkennung in Echtzeit - Gunook

Video: Postshirt: Tragbare Körperhaltungserkennung in Echtzeit - Gunook

Video: Postshirt: Tragbare Körperhaltungserkennung in Echtzeit - Gunook
Video: Postshirt Device Demo 2024, Juli
Anonim
Image
Image
Postshirt: Tragbare Körperhaltungserkennung in Echtzeit
Postshirt: Tragbare Körperhaltungserkennung in Echtzeit

Postshirt ist ein drahtloses Echtzeit-Haltungserkennungssystem, das Beschleunigungsmesserdaten von einer Adafruit-Feder über Bluetooth an eine Android-Anwendung überträgt und klassifiziert. Das komplette System kann in Echtzeit erkennen, wenn der Benutzer eine schlechte Körperhaltung hat und erstellt eine Push-Benachrichtigung, wenn der Benutzer zu sacken beginnt, die Erkennung funktioniert auch während des Gehens.

Lieferungen

Elektronik

1 x Android-Smartphone

1 x Adafruchtfeder

1 x Lithium-Ionen-Polymer-Akku - 3,7 V 100 mAh (optional für die drahtlose Verwendung)

2 x ADXL335 Dreiachsen-Beschleunigungsmesser

Materialien

Anschlusskabel

Klebebandrolle

Schritt 1: Erforderliche IDEs und Bibliotheken installieren

Adafruchtfeder

Installieren Sie zuerst die Arduino IDE und befolgen Sie dann die Schritte zur Installation der Adafruit nRF51 BLE Library

Jupyter-Notizbuch

Installieren Sie zuerst Jupyter Notebook und dann die folgenden erforderlichen Bibliotheken

  • https://scikit-learn.org/stable/
  • https://github.com/nok/sklearn-porter

Android

Android Studio installieren

Projektnummer

Laden Sie den gesamten Projektcode von GitHub herunter

Schritt 2: Verdrahten Sie die Beschleunigungsmesser mit der Feder

Verdrahten Sie die Beschleunigungsmesser mit der Feder
Verdrahten Sie die Beschleunigungsmesser mit der Feder
Verdrahten Sie die Beschleunigungsmesser mit der Feder
Verdrahten Sie die Beschleunigungsmesser mit der Feder

Um Daten von den ADXL335s auszulesen, verbinden Sie das Anschlusskabel mit den Pins Vin, Masse, Xout, Yout und Zout. Verbinden Sie für beide Beschleunigungsmesser die anderen Enden der Vin-Drähte mit dem 3V-Pin der Feder und die anderen Enden der Massestifte mit dem Massestift der Feder. Verbinden Sie die Xout-, Yout- und Zout-Drähte des ersten Beschleunigungsmessers mit den A0-, A1- und A2-Pins der Feder. Verbinden Sie die Xout-, Yout- und Zout-Drähte des zweiten Beschleunigungsmessers mit den A3-, A4- und A5-Pins der Feder.

Die Beschleunigungsmesser können auf beliebige Weise angeschlossen werden, es wird jedoch empfohlen, die Drähte zu verlöten und die Verbindungspunkte mit Wärmeschrumpfen oder Isolierband zu umwickeln, um zu verhindern, dass sich freiliegende Abschnitte gegenseitig berühren.

Schritt 3: Beschleunigungsmesser am Hemd befestigen

Beschleunigungsmesser am Hemd anbringen
Beschleunigungsmesser am Hemd anbringen

Befestigen Sie die Beschleunigungsmesser mit Klebeband an der Rückseite des Hemdes. Der mit den Pins A0-2 verdrahtete Beschleunigungsmesser sollte horizontal mittig in der Mitte des unteren Rückens platziert werden. Der mit den Pins A3-5 verdrahtete Beschleunigungsmesser sollte horizontal mittig im Nacken platziert werden. Beide Beschleunigungsmesser sollten so ausgerichtet sein, dass sich die Stifte entlang der Unterseite befinden und die Sensoren sollten flach und sicher am Hemd befestigt werden.

Hinweis: Für ein dauerhafteres Tragen können die Sensoren auf die Kleidung genäht werden, aber sie sollten zuerst mit Klebeband versehen und getestet werden, um sicherzustellen, dass die Sensorpositionen effektiv positioniert sind.

Schritt 4: Ausführen von Code auf Arduino

Ausführen von Code auf Arduino
Ausführen von Code auf Arduino

Um mit dem Sammeln von Daten auf dem Feather zu beginnen, starten Sie die Arduino-IDE und öffnen Sie die Datei GestureDataSender im Arduino-Abschnitt des Projektcodes. Wenn diese Datei geöffnet ist, stellen Sie das Board und den verwendeten Port ein und wählen Sie dann "Verify" und "Upload", um den Code auf den Feather hochzuladen.

Schritt 5: Ausführen von Code auf Android

Ausführen von Code auf Android
Ausführen von Code auf Android

Um die Anwendung auf Android auszuführen, starten Sie zuerst Android Studio und wählen Sie dann die Option zum Öffnen eines vorhandenen Android-Projekts. Navigieren Sie zum Projektcode und wählen Sie den Ordner "Android". Android Studio braucht eine Weile, um die Projektdateien zu synchronisieren, und fordert möglicherweise die Installation einiger erforderlicher Bibliotheken an. Akzeptieren Sie diese Optionen. Sobald das Projekt fertig ist, schließen Sie das Android-Gerät an den Computer an und wählen Sie die Ausführungsoption oben im Fenster. Wählen Sie das Gerät aus der angezeigten Eingabeaufforderung aus und lassen Sie die Anwendung dann auf dem Gerät erstellen.

Schritt 6: Bluetooth-Signalverbindung testen

Testen der Bluetooth-Signalverbindung
Testen der Bluetooth-Signalverbindung
Testen der Bluetooth-Signalverbindung
Testen der Bluetooth-Signalverbindung
Testen der Bluetooth-Signalverbindung
Testen der Bluetooth-Signalverbindung

Sobald die App geöffnet ist, vergewissern Sie sich, dass der Feather eingeschaltet ist, und wählen Sie dann die Adafruit Bluefruit LE aus der Geräteliste aus, die auf dem Telefon angezeigt wird. Warten Sie, bis das Gerät eine Verbindung hergestellt hat, wenn die Verbindung beim ersten Mal fehlschlägt, versuchen Sie erneut, eine Verbindung herzustellen, bevor Sie andere Debugging-Schritte durchführen. Nachdem das Gerät angeschlossen wurde, wählen Sie das Modul "Haltungsdetektor", das bei ordnungsgemäßer Funktion eine Live-Aktualisierungsgrafik sowie die aktuellen Vorhersagen von Haltung und Bewegung anzeigt. Um zu testen, ob das Arduino die Sensordaten korrekt übermittelt, bewegen Sie die beiden Beschleunigungsmesser in zufällige Richtungen und prüfen Sie, ob sich alle Linien im Diagramm ändern. Wenn einige Leitungen konstant flach bleiben, vergewissern Sie sich, dass die Beschleunigungsmesser richtig mit der Feder verbunden sind. Wenn alles funktioniert, ziehen Sie das Shirt an und testen Sie, ob die Haltungserkennung Ihre Haltung korrekt vorhersagt. Herzliche Glückwünsche! Sie haben erfolgreich ein Wearable zur Haltungserkennung eingerichtet. Fahren Sie mit dieser Anleitung fort, um zu erfahren, wie Sie Ihren eigenen Datensatz erstellen und Ihre eigene Haltungserkennung anpassen.

Schritt 7: Sammeln Ihrer eigenen Daten

Sammeln Ihrer eigenen Daten
Sammeln Ihrer eigenen Daten
Sammeln Ihrer eigenen Daten
Sammeln Ihrer eigenen Daten

Um Ihre eigenen Daten zu sammeln, kehren Sie zum Modulauswahlbildschirm zurück und öffnen das Datenrekorder-Modul. Füllen Sie nach dem Öffnen dieses Bildschirms das Etikett für die zu sammelnden Daten aus. Um leicht mit Ihren Daten zu trainieren, sollten Sie bei Aufnahmen mit guter Körperhaltung das Wort "gut" und bei Aufnahmen mit Körperhaltung "schlecht" verwenden. Um mit dem Sammeln zu beginnen, tippen Sie auf die Schaltfläche "Daten sammeln" und führen Sie Ihre beabsichtigte Aktion aus. Wenn Sie fertig sind, tippen Sie erneut auf die Schaltfläche, um die Daten zu beenden und zu speichern. Alle aufgezeichneten Daten werden in einem Ordner namens "GestureData" im Dokumentenordner Ihres Dateisystems gespeichert. Wenn Sie mit der Aufzeichnung aller Daten fertig sind, kopieren Sie die Dateien zum Modelltraining auf Ihren Computer.

Schritt 8: Training Ihrer Daten auf Jupyter Notebook

Trainieren Ihrer Daten auf Jupyter Notebook
Trainieren Ihrer Daten auf Jupyter Notebook
Trainieren Sie Ihre Daten auf Jupyter Notebook
Trainieren Sie Ihre Daten auf Jupyter Notebook

Der anfängliche Projektcode enthält die Originaldaten, die für das Training verwendet wurden, im Ordner "data" im Abschnitt Jupyter Notebook, zum Training Ihrer eigenen Daten löschen Sie alle Dateien in diesem Ordner und kopieren Sie dann Ihre eigenen Daten in den Ordner. Führen Sie dann Jupyter Notebook aus und öffnen Sie "PostureDetectorTrainer.ipynb". Dieses Notebook wurde entwickelt, um automatisch alle Dateien im Datenordner nach guter und schlechter Haltung zu trennen und dann eine lineare SVM für die Klassifizierung zu trainieren, um das Modell zu trainieren, wählen Sie einfach die Dropdown-Liste "Zelle" und wählen Sie "Alle ausführen". Es kann einen Moment dauern, bis das Notebook läuft, aber wenn es fertig ist, scrollen Sie zu dem Punkt, der die Genauigkeit der Haltungsvorhersage für das Modell liefert. Wenn die Genauigkeit niedrig ist, möchten Sie möglicherweise sicherstellen, dass Ihre vorherigen Aufzeichnungen genau und konsistent sind. Wenn die Ergebnisse gut aussehen, scrollen Sie zur nächsten Zelle, in der eine Java-Klasse generiert wurde. Scrollen Sie zum Ende dieser Zelle, bis Sie einen als Parameter kommentierten Teil sehen. Kopieren Sie diese Werte, da Sie sie im nächsten Schritt benötigen.

Schritt 9: Ändern der Android-Anwendung mit einem neuen Modell

Ändern der Android-Anwendung mit einem neuen Modell
Ändern der Android-Anwendung mit einem neuen Modell

Um das Modell in der Android-Anwendung zu ändern, navigieren Sie mit Android Studio zur Datei "PostureDetectorFragment.java" im Java-Abschnitt der Projektstruktur. Scrollen Sie in dieser Datei nach unten zu dem als "Haltungsklassifizierer" kommentierten Abschnitt, der die gleichen 4 entsprechenden Variablen wie die 4 hat, die in Jupyter Notebook generiert wurden. Ersetzen Sie die Werte dieser 4 Variablen durch die Werte, die aus dem Jupyter Notebook kopiert wurden, und stellen Sie sicher, dass die Variablennamen nicht von p_vectors, p_coefficients usw Gerät. Folgen Sie nun den gleichen Schritten wie zuvor, um das Modul Posture Detector zu öffnen, und Sie sollten sehen, dass der Klassifikator jetzt mit Ihrem neu trainierten Modell arbeitet. Wenn es immer noch nicht gut funktioniert, sollten Sie erwägen, weitere Daten aufzuzeichnen und das Modell neu zu erstellen. Ansonsten herzlichen Glückwunsch! Du hast jetzt deinen eigenen persönlich trainierten Klassifikator in das Postshirt importiert!

Empfohlen: