HiTechnic NXT IRSeeker V2 mit Matlab/Simulink: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Zeile 76: Zeile 76:


=== Arduino ===
=== Arduino ===
 
Mithilfe des Versuchsaufbaus aus der Abbildung 1 ist eine Verbindung mit dem Sesnor nicht möglich. Der Sesnor ist an die passenden Ports des Arduinos angeklemmt, liefert jedoch keine Werte. Die I^2C Adresse des Ports kann nicht gefunden werden. Daher leigt ein anderes Pronlem vor. Das Problem könnte sein, dass die Spannung von 5V nicht ausreicht, um den Sensor zu betreiben.


=== Simulink ===
=== Simulink ===

Version vom 2. Juli 2018, 14:16 Uhr

Sensor: HiTechnic NXT IRSeeker V2


Autoren: Marius Schaffer

Betreuer: Prof. Schneider

Aufgabe

Signalerfassung und Aufbereitung eines NXT Sensors

Schritte zur Signalberarbeitung

1. Auswahl eines Primärsensors

  1. Wie funktioniert der Sensor?
  2. Welche Rohsignale liefert der Sensor?

2. Signalvorverarbeitung

  1. Sollen Messwerte oder vorverarbeitete Daten übertragen werden?
  2. Wie lässt sich eine Vorverarbeitung umsetzen?
  3. Wird eine Kennlinie eingesetzt? Wenn ja, wie wird diese kalibriert?

3. Analog-Digital-Umsetzer

  1. Wie werden die analogen Signale umgesetzt?
  2. Welcher ADU kommt zum Einsatz?
  3. Welche Gründe sprechen für diesen ADU? Alternativen?

4. Bussystem

  1. Wird ein Bussystem zwischen Sensor und Mikrocontroller eingesetzt?  
  2. Wenn ja, wie funktioniert dieses Bussystem?

5. Digitale Signalverarbeitung

  1. Welche Verarbeitungsschritte sind notwendig?
  2. Welche Filter werden angewendet?
  3. Bestimmen Sie Auflösung, Empfindlichkeit und Messunsicherheit des Sensors.

6. Darstellung der Ergebnisse

  1. Welche Fehler treten in welchem Verarbeitungsschritt auf?
  2. Stellen Sie die Messunsicherheit bzw. das Vertrauensintervall dar.

Einleitung

In diesem Artikel wird dargestellt, wie mit einem HiTechnic NXT Infrarot Sensor eine vollständige Signalverarbeitung durchgeführt wird. Diese Signalverarbeitung wird in Matlab/Simulink durchgeführt.

Verwendete Bauteile

- Arduino Mega 2560

- HiTechnic NXT IRSeeker V2

- 2 x 100 kOhm Widerstände

- NXT Kabel

Testaufbau

In der Abbildung 1 ist der Testaufbau für die Signalverarbeitung dargestellt. Die 6 Kabel des Sensors sind passend an die GND, SCL, SDA, 5V uns dem analogen Pin A0 angeschlossen. Nun wird mithilfe von Matlab/Simulink die Daten, die der Arduino von dem Sensor bekommt ausgelesen.

Abb.3: Testaufbau

Signalverarbeitung

In diesem Kapitel wird zuerst der Sensor erklärt und anschließend die Signalverarbeitung dargestellt.

Auswahl des Primärsensors

Der NXT IRSeeker ist ein multi-Infrarot Detektor, welcher Infrarotsignale von Quellen aus der Umgebung erkennt, wie zum Beispiel dem IRBall Fußball, Infrarot Fernbedienungen und das Sonnenlicht. Der Sensor besitzt 2 verschiedene Modi, dem modulierten AC-Modus und dem unmodulierten DC-Modus. Im AC-Modus filtert der Sensor die meisten anderen IR-Signale heraus, um zum Beispiel die Interferenz von Licht und Sonnenschein zu reduzieren. Der Sensor ist auf Rechtecksignale mit 1200Hz abgestimmt. Mit einer speziell entworfenen Linse und fünf internen Detektoren hat er eine 240-Grad Ansicht. Das Gehäuse mit einer gekrümmten Endkappe und mit einem konstanten Radius erhöht die Richtungsleistung durch Minimierung der Verzerrung, der in den Sensor eintretenden Lichtsignale.

Abb.1: SeekerV2-2

Der Sensor liefert als Rohsignale die Signalrichtung und die Signalstärke zurück, wodurch die relative Entfernung und der Standpunkt des Ziels leicht lokalisiert werden kann. In der Abbildung 2 sind die Infrarotrichtungswerte dargestellt. Ist der Wert 1 so befindet sich das Ziel links hinten, bei einem Wert von 5 befindet es sich genau voraus und bei einem Wert von 9 befindet es sich rechts hinten.

Abb.2: Suchbereiche

Signalvorverarbeitung

Analog-Digital-Umsetzer

Übliche NXT A/D Wandler

Bussystem

I^2C

Digitale Signalverarbeitung

EV3

Abb.4: EV3 Ergebnis

Arduino

Mithilfe des Versuchsaufbaus aus der Abbildung 1 ist eine Verbindung mit dem Sesnor nicht möglich. Der Sesnor ist an die passenden Ports des Arduinos angeklemmt, liefert jedoch keine Werte. Die I^2C Adresse des Ports kann nicht gefunden werden. Daher leigt ein anderes Pronlem vor. Das Problem könnte sein, dass die Spannung von 5V nicht ausreicht, um den Sensor zu betreiben.

Simulink

Abb.4: Simulink Projekt

Darstellung der Ergebnisse

Zusammenfassung

Ausblick


→ zurück zum Hauptartikel: Signalverarbeitende Systeme