Distance IR Bricklet

Bemerkung

Das Distance IR Bricklet ist abgekündigt. Wir verkaufen noch unseren restlichen Lagerbestand. Als Ersatz wird das Distance IR Bricklet 2.0 empfohlen.

Features

  • Misst Entfernungen bis zu 150cm mit IR Licht
  • Sensor kann ausgetauscht werden
  • Ausgabe in 1mm Schritten (12Bit Auflösung)

Beschreibung

Mit dem Distance IR Bricklet können Bricks Entfernungen messen. Dieses Bricklet wird auf der Rückseite von analogen Sharp Infrarot Entfernungssensoren befestigt. Nachdem der verbundene Sensor konfiguriert wurde, können die gemessenen Entfernungen direkt in Millimeter ausgelesen werden. Mit konfigurierbaren Events ist es möglich auf veränderte Distanzmessung zu reagieren ohne die Werte laufend abzufragen (kein Polling notwendig).

Im Shop sind Infrarot Sensoren für verschiedene Messbereiche verfügbar:

Typischerweise werden diese Sensoren in der Robotik genutzt um Entfernungen zu messen, zur Lokalisierung oder zur Kartenerstellung. Sie sind aber noch für viele andere Anwendungen genutzt werden. Zum Beispiel können diese Sensoren wie eine Lichtschranke benutzt werden um zum Beispiel den Zugang zu einem Raum zu kontrollieren.

Technische Spezifikation

Eigenschaft Wert
Sensor GP2Y0A41SK0F oder GP2Y0A21YK0F oder GP2Y0A02YK0F
Stromverbrauch Siehe Datenblatt des Sensors
   
Entfernungen

Abhängig vom angeschlossenen Sharp IR Sensor:

  • GP2Y0A41SK0F: 4cm - 30cm (1,57" - 11,81")
  • GP2Y0A21YK0F: 10cm - 80cm (3,94" - 31,50")
  • GP2Y0A02YK0F: 20cm - 150cm (7,87" - 59,06")

in 1mm Schritten, 12Bit Auflösung

   
Abmessungen (B x T x H) 45 x 13 x 5mm (1,76 x 0,51 x 0,19")*, passt auf Rückseite des Sensors
Gewicht 2g*

* ohne Kabel und Sensor

Ressourcen

Erster Test

Um ein Distance IR Bricklet testen zu können, müssen zuerst Brick Daemon und Brick Viewer installiert werden. Brick Daemon arbeitet als Proxy zwischen der USB Schnittstelle der Bricks und den API Bindings. Brick Viewer kann sich mit Brick Daemon verbinden, gibt Informationen über die angeschlossenen Bricks und Bricklets aus und ermöglicht es diese zu testen.

Als nächstes muss das Distance IR Bricklet mittels eines Bricklet Kabels mit einem Brick verbunden werden (siehe folgendes Bild).

Distance IR Bricklet mit IR Sensor verbunden mit Master Brick

Wenn der Brick per USB an den PC angeschlossen wird sollte einen Moment später im Brick Viewer ein neuer Tab namens "Distance IR Bricklet" auftauchen. Wähle diesen Tab aus. Wenn alles wie erwartet funktioniert wird die gemessene Distanz und die Ausgangsspannung des Sensors angezeigt. Der Graph gibt den zeitlichen Verlauf der Distanz wieder. Das folgende Bild entstand durch langsames auf den Sensor zu und wieder wegbewegen einer Hand.

Distance IR Bricklet im Brick Viewer

Nun kann ein eigenes Programm geschrieben werden. Der Abschnitt Programmierschnittstelle listet die API des Distance IR Bricklet und Beispiele in verschiedenen Programmiersprachen auf.

Infrarot Sensor konfigurieren

Die unterstützten Infrarot Sensors geben eine Spannung entsprechend der gemessenen Distanz aus. Diese Spannung wird vom ADC des angeschlossenen Bricks gemessen. Um aus der Spannung die Distanz zu errechnen wird eine Abbildung von Spannung auf Distanz benötigt. Diese Abbildung ist spezifisch für den jeweiligen Sensortyp und wird auf dem Bricklet gespeichert. Um Sensoren verwenden zu können, die nicht direkt von uns unterstützt werden muss zuerst eine passenden Abbildung von Spannung auf Distanz definiert werden.

Spannung/Distanz Abbildung ändern

Um die Spannung/Distanz Abbildung auf dem Bricklet zu speichern muss es über einen Brick an einen PC angeschlossen werden auf dem der Brick Daemon und der Brick Viewer laufen.

Wähle den "Distance IR Bricklet" Tab aus, klicke auf den "Browse" Knopf und wähle die passende Spannung/Distanz Abbildungsdatei aus. Dann klicke auf den "Save" Knopf um die Abbildung auf dem Bricklet zu speichern. Dabei wird aus den Stützwerten der Abbildungsdatei eine Spline interpoliert um äquidistante Stützwerte für den gesamten Messbereich des Infrarot Sensors zu erhalten.

Damit die neue Abbildung verwendet wird muss der Brick per Reset Knopf oder per USB ab- und anstecken neu gestartet werden.

Verfügbare Spannung/Distanz Abbildung

Wir haben vorgefertigte Spannung/Distanz Abbildungsdateien für die folgenden Sensoren:

Typ Bereich Abbildungsdatei
GP2D120* 4cm - 30cm (1,57" - 11,81") Download
GP2Y0A41SK0F 4cm - 30cm (1,57" - 11,81") Download
GP2Y0A21YK0F 10cm - 80cm (3,94" - 31,50") Download
GP2Y0A02YK0F 20cm - 150cm (7,87" - 59,06") Download

* wird nicht mehr verkauft, durch GP2Y0A41SK0F ersetzt

Es können eigenen Spannung/Distanz Abbildungen erstellen werden um Sensoren zu verwenden die im Moment noch nicht offiziell unterstützt werden. Es können auch die bestehenden Abbildungen auf einen einzelnen Sensor genauer angepasst werden, um die Genauigkeit der Distanzmessung für diesen einen Sensor zu verbessern. Die vorgefertigte Spannung/Distanz Abbildungsdateien enthalten über mehrere Sensoren gemittelte Werte.

Eine Spannung/Distanz Abbildungsdatei kann Kommentare beinhalten (Zeilen die mit # beginnen) und beinhaltet Zeilen die jeweils ein <Distanz in cm>: <Analogwert in mV> Paar enthalten. Die bestehenden Abbildungsdateien dienen als Beispiel für ein besseres Verständnis.

Gehäuse

Ein laser-geschnittenes Gehäuse für das Distance IR Bricklet ist verfügbar.

Gehäuse für Distance IR Bricklet

Der Aufbau ist am einfachsten wenn die folgenden Schritte befolgt werden:

  • Schraube Abstandshalter an das Bricklet,
  • schraube Unterteil an untere Abstandshalter,
  • baue Seitenteile auf,
  • stecke zusammengebaute Seitenteile in Unterteil und
  • schraube Oberteil auf obere Abstandshalter.

Im Folgenden befindet sich eine Explosionszeichnung des Distance IR Bricklet Gehäuses:

Explosionszeichnung für Distance IR Bricklet

Hinweis: Auf beiden Seiten der Platten ist eine Schutzfolie, diese muss vor dem Zusammenbau entfernt werden.

Programmierschnittstelle

Siehe Programmierschnittstelle für eine detaillierte Beschreibung.

Sprache API Beispiele Installation
C/C++ API Beispiele Installation
C# API Beispiele Installation
Delphi/Lazarus API Beispiele Installation
Go API Beispiele Installation
Java API Beispiele Installation
JavaScript API Beispiele Installation
LabVIEW API Beispiele Installation
Mathematica API Beispiele Installation
MATLAB/Octave API Beispiele Installation
MQTT API Beispiele Installation
openHAB API Beispiele Installation
Perl API Beispiele Installation
PHP API Beispiele Installation
Python API Beispiele Installation
Ruby API Beispiele Installation
Rust API Beispiele Installation
Shell API Beispiele Installation
Visual Basic .NET API Beispiele Installation
TCP/IP API    
Modbus API    

FAQ

Die Distanzen passen nicht

Dies kann verschiedenen Ursachen haben. Die Sharp IR Sensoren benötigen 5V Versorgungsspannung. Wird der verbundene Brick über USB versorgt, so kann es sein, dass 5V nicht erreicht werden können. Der Grund für diesen Spannungsabfall um 0,5V sind Schutzdioden auf den Bricks. Der Stapel kann mit einer zusätzlichen Stromversorgung, wie der Step-Down Power Supply, erweitert werden um den Sensor besser mit 5V zu versorgen und so eine bessere Distanzmessung zu erhalten.

Eine andere mögliche Ursache kann ein Kalibrierungsproblem sein. Als erstes sollte sichergestellt werden, dass die richtige Spannung/Distanz Abbildungsdatei für den angeschlossenen Sensor auf dem Bricklet gespeichert ist (siehe hier). Dann sollte noch die Kalibrierung des Analog-Digital-Wandlers des verwendeten Bricks überprüft werden (siehe hier).

Falls die Distanzmessung immer noch nicht genau genug ist, bleibt nur noch eine speziell auf den einzelnen Sensor angepasste Spannung/Distanz Abbildungsdatei zu erstellen. Die vorgefertigte Spannung/Distanz Abbildungsdateien enthalten über mehrere Sensoren gemittelte Werte, damit sie für alle Sensoren einer Serie funktionieren.