Skip to content

Sensoren

Thomas Euler edited this page Apr 7, 2023 · 22 revisions

Am vorderen Ende der Platine befindet sich der Sensorport, welcher Spannung (5V und 3.3V), Erde (GND) und verschiedene Microcontroller-Pins für den Anschluss z.B. von Sensoren bereitstellt. Im Folgenden wird beschrieben, wie man unterschiedliche Sensoren anschließen kann.

Anmerkung: Die Verwendung der Pins ist flexibler, als die Beschriftung den Anschein hat. Das liegt daran, dass die Zuordnung von Funktionalität (I2C, SPI, PWM, etc.) und Pin nicht starr festgelegt ist und sich weitgehend flexibel (aber auch nicht beliebig) konfigurieren lässt. Zum Beispiel können nicht nur die mit RX,TX bezeichneten Pins für eine serielle Schnittstelle (UART) verwendet werden, sondern auch die Pins SC,SD, die eigentlich für den I2C-Bus vorgesehen sind.

Am hinteren Ende der Platine kann eine STEMMA-QT-Buchse aufgelötet werden, die den I2C-Bus für andere Sensoren zur Verfügung stellt.

Distanzsensoren

In der aktuellen Version sind drei vorne montierte Abstandssensoren vorgesehen. Sie sind schräg nach unten ausgerichtet und messen den Abstand zum Boden. Durch diese Anordnung können nicht nur Hindernisse erkannt werden, sondern auch Tischkanten. Alles was im Bereich von etwa 5-20 cm gemessen wird, wird als sichere, begehbare Fläche betrachtet; kleinere Abstände werden als Hindernisse interpretiert, größere als Kanten.

Verschiedene Typen von Sensoren kommen hierfür in Frage. Am Sensorport gibt es 3 Pins, die als analoge Eingänge benutzt werden können; d.h. hier kommen z.B. die klassischen Sharp-Infrarotsensoren in Frage, die ein eine abstandsabhängige Spannung ausgeben.

Time-of-flight-Sensoren

"Time-of-flight"-Sensoren messen den Abstand über die Laufzeit eines kurzen Infrarotpulses. Diese Sensoren gibt es in verschiedenen Ausführungen, die sich meist im Messbereich, der Messgenauigkeit und dem Ausgangssignal unterscheiden.

Die Sensoren des Typs irs16a von Pololu messen Distanzen bis zu 50 cm und geben diese über die Pulsbreite eines digitalen Signals zurück. Sie benötigen jeweils nur einen digitalen Pin, was wertvolle Analogpins spart - von denen hat der Pico nur 3 verfügbar. Die Verkabelung ist unten gezeigt: Das rote Kabel geht von 5V zum VCC-Pin des rechten Sensors, und von dort aus gehen Drahtbrücken zu den VCC-Pins der beiden anderen Sensoren. Das schwarze Kabel (GND) ist in analoger Weise verdrahtet. Die 3 weißen Kabel gehen zum jeweiligen Ausgangspin der Sensoren. Sie sind an D0, RX und TX angeschlossen, die als digitale Eingänge konfiguriert werden. Die STL-Datei für den entsprechenden Halter findet man hier.

Abb. 3.2 - "Time-of-flight Distanzsensoren
Drawing

Eine elegante Lösung bieten "time-of-flight"-Sensoren für den I2C-Bus, wie z.B. Sensoren des Typs v15310x - hier spart man einen Pin am Sensorport. Diese Lösung hat Carsten Otto beigesteuert, der auch den entsprechenden MicroPython-Code und die STL-Datei für den Halter entwickelt hat.

Andere Sensoren

Die 4-Pin STEMMA-QT-Buchse stellt den I2C-Bus (SDA, SCL) sowie 3.3V und GND für den Anschluss von Breakout-Boards zur Verfügung. Für diesen von Adafruit standardisierten Anschluss gibt es eine Reihe von Gadgets, darunter praktisch alle möglichen Arten von Sensoren.

Bei der CO2-Wächterversion des Roboters, wird hier das SCD41-Breakout mit dem kombinierten CO2/Temperatur /Luftfeuchtesensor angeschlossen.


Weiter zu Demo

Home

  1. Werkzeuge und Material (DE | EN)
  2. Aufbau
    2.1 Mechanik (DE | EN)
    2.2 Aufbau und Hinweise (DE | EN)
    2.3 Elektronik und Platine (DE | EN)
  3. Sensoren (DE | EN)
  4. Demo (DE | EN)
  5. Erweiterungen & Modifikationen
    5.1 Alternatives Display (DE | EN)
    5.2 CO2-Wächter (DE | EN)
  6. Galerie (DE | EN)
  7. Software - MMBasic
    7.1 MMBasic zum Laufen bringen (DE | EN)
    7.2 Kommentare zum Programm (DE | EN)
    7.3 Robotling API (DE | EN)
    7.4 Building PicoMite MMBasic (DE | EN)
  8. Software - MicroPython
    8.1 Running MicroPython (DE | EN)
    8.2 Building MicroPython (DE | EN)

Clone this wiki locally