Wenn du mit Edge Impulse per maschinellem Lernen KI-Modelle entwickeln möchtest, benötigst du vor allem eines: Daten. Viele Daten.
In diesem Tutorial lernst du, wie du mit dem Beschleunigungssensor des Arduino Nano 33 BLE Sense Bewegungsdaten sammelst und in Edge Impulse speicherst.
Du hast noch keinen Arduino Nano 33 BLE Sense?
Vorbereitungen
Bevor du anfangen kannst, Daten zu sammeln, musst du zunächst deinen Arduino mit einem Projekt bei Edge Impulse verknüpfen. Wie das funktioniert, erfährst du in diesem Tutorial auf pollux labs.
Wenn die Verbindung steht, siehst du deinen Microcontroller in Edge Impulse unter dem Menüpunkt Devices.
So sammelst du Bewegungsdaten
Jetzt kannst du beginnen, mit dem Beschleunigungssensor Daten zu sammeln, die dann dazu dienen, per maschinellem Lernen ein KI-Modell zu entwickeln.
Wechsle zunächst in den Menüpunkt Data acquisition. Das ist die zentrale Stelle, in der du Daten mit deinem Arduino misst (samplest) und bereitstellst. Rechts siehst du das Feld Collect data. Hier sollte unter Device dein Arduino Nano mit dem Namen auftauchen, den du ihm beim Verbinden gegeben hast.
Wie gesagt, verwendest du in diesem Tutorial den Beschleunigungssensor (engl. accelerometer). Wähle deshalb im Dropdown-Menü Sensor den Eintrag built-in accelerometer.
___STEADY_PAYWALL___
Daneben befindet sich das Feld Frequency – stelle hier 62.5 Hz ein. Im Feld Sample Rate trägst du 10000 (Millisekunden, also 10 Sekunden) ein.
Fehlt nur noch ein Name für die Samples. Du startest in diesem Tutorial zunächst mit einer Nicht-Bewegung, d.h. du lässt den Arduino Nano 33 BLE Sense während der Datenerfassung einfach ruhig liegen. Damit weiß dein KI-Modell später, was Keine Bewegung ist.
Ein passender Name für diese Art Samples ist auf Englisch idle. Du kannst aber jeden beliebigen Namen nehmen. Er muss für diese Art von Daten aber immer gleich sein.
So ungefähr sollten deine Einstellungen dann aussehen:
Erfasse dein erstes Sample
Jetzt geht es los. Lege deine Arduino ruhig auf den Tisch und klicke auf den Button Start sampling. Edge Impulse misst jetzt 10 Sekunden lang, in welche Richtungen sich dein Arduino entlang der X-, Y- und Z-Achse bewegt. Anschließend wird das Sample gespeichert.
Da du ja keine Bewegung ausgeführt hast, sieht das Ergebnis entsprechend ruhig aus:
Beim maschinellen Lernen gilt das Motto: Je mehr, desto besser. Das bedeutet für dich, dass eine Messung des Ruhezustands nicht ausreicht, um ein akkurates KI-Modell zu entwickeln.
Du solltest für jede Art Bewegung, die dein Modell später erkennen soll, mindestens 3 Minuten Daten bereitstellen. Für den Ruhezustand hast du bereits 10 Sekunden, fehlen also noch 2 Minuten und 50 Sekunden – oder anders gesagt 17 Durchgänge. 🙂
Eine echte Bewegung messen
Den Ruhezustand hast du jetzt. Zeit für etwas mehr Bewegung. Ändere den Namen im Feld Label zu wave – denn jetzt kommt Winken an die Reihe.
Nimm deinen Arduino in die Hand und klicke wie gehabt auf Start sampling. Jetzt winke mit dem Arduino, sobald die Messung startet. Anschließend solltest du ungefähr so eine Messbild erhalten:
Hier siehst jetzt ein ganz anderes Bild, dass deutlich eine charakteristische Bewegung anzeigt. Wenn du diese in dein Modell integrieren möchtest, musst du allerdings wieder viele weitere Samples aufnehmen.
Diese Bewegungen unterscheiden sich immer leicht voneinander und so lernt das KI-Modell viele Arten von Winken kennen und später zu unterscheiden.
Probiere noch viele weitere Arten von Bewegungen aus und schau dir die dazugehörigen Schaubilder an.
Wie geht es weiter?
Sobald du eine einigermaßen große Sammlung von Bewegungsdaten hast, kannst du dich an die Entwicklung des KI-Modells machen. In diesem Projekt erfährst du, wie du komplexe Bewegungen und Gesten mit Hilfe von künstlicher Intelligenz erkennst.
Keine Lust auf Edge Impulse? Lerne in diesem Tutorial Googles Teachable Machine kennen.
Daten sammeln mit dem Mikrofon
Mit Edge Impulse kannst du nicht nur Bewegungsdaten ermitteln, sondern auch Geräusche mit dem eingebauten Mikrofon des Arduino Nano 33 BLE Sense aufnehmen. So kannst du z.B. einen laufenden Wasserhahn von einer Kaffemühle unterscheiden. 😉
Das Sampling funktioniert dabei ganz ähnlich wie oben beschrieben. Probiere es doch gleich einmal aus!
Letzte Aktualisierung am 15.10.2024 / Affiliate Links / Bilder von der Amazon Product Advertising API