Bemerkung
Das Distance IR Bricklet ist abgekündigt. Wir verkaufen noch unseren restlichen Lagerbestand. Als Ersatz wird das Distance IR Bricklet 2.0 empfohlen.
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.
Eigenschaft | Wert |
---|---|
Sensor | GP2Y0A41SK0F oder GP2Y0A21YK0F oder GP2Y0A02YK0F |
Stromverbrauch | Siehe Datenblatt des Sensors |
Entfernungen | Abhängig vom angeschlossenen Sharp IR Sensor:
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
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).
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.
Nun kann ein eigenes Programm geschrieben werden. Der Abschnitt Programmierschnittstelle listet die API des Distance IR Bricklet und Beispiele in verschiedenen Programmiersprachen auf.
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.
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.
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.
Ein laser-geschnittenes Gehäuse für das Distance IR Bricklet ist verfügbar.
Der Aufbau ist am einfachsten wenn die folgenden Schritte befolgt werden:
Im Folgenden befindet sich eine Explosionszeichnung des Distance IR Bricklet Gehäuses:
Hinweis: Auf beiden Seiten der Platten ist eine Schutzfolie, diese muss vor dem Zusammenbau entfernt werden.
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 |
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.