Allgemein

Getestete Grove-Sensoren

Dieser Post wird immer mal wieder erweitert werden. Ziel ist hier erstmal eine lose Sammlung von Grove-Sensoren/Aktoren zu haben, die wir getestet haben mit dem Calliope mini und die gut funktionieren.

Wir haben uns für das Grove-System entschieden, weil es eine Vielzahl von Erweiterungen bietet die meist sehr schön aufbereitet sind (gute Beschriftung, Wiki-Page etc.) und häufig auch noch sehr günstig zu haben sind. Eine gute Bezugsquelle ist z.B. Exp-Tech oder auch Conrad Electronic.

Generell ist folgendes zu beachten, wenn man sich überlegt einen Grove-Sensor zu kaufen:

  • Stromversorgung: manche der Module brauchen mehr als die 3.3v, die der mini liefern kann (so z.B. leider viele der Gas-Sensoren). Das ist mit externer Stromquelle zwar auch machbar, aber dann darf der Sensor nicht mehr über den Grove-Anschluss des mini Strom beziehen. Also am einfachsten erstmal nur Sensoren nehmen, die mit 3.3v auskommen.
  • Protokoll: es gibt verschiedene Arten, wie ein Sensor seine Daten mitteilen kann, konkret entweder über ein analoges Signal (Werte von 0-1024), ein digitales (also 0/1), über I2C (ein spezielles Bus-Protokoll) oder UART (die serielle Schnittstelle). Generell kann der mini mit allem umgehen, allerdings gibt es derzeit noch Probleme mit I2C [Update dazu siehe unten].

Folgende Sensoren haben wir schon erfolgreich getestet:

  1. Air-Quality-Sensor: misst Luftqualität und reagiert auf Rauch oder Atemluft. Man kann damit z.b. selbst einen Rauchmelder bauen.
  2. Relay: ein Relay wird verwendet um eine externe Stromquelle zu schalten. Man kann damit also z.B. die Weihnachtsbeleuchtung an- und ausschalten. Dabei ist natürlich unbedingt darauf zu achten, dass keine zu hohen Ströme geschaltet werden! Theoretisch sind auch Grove-Relay Module verfügbar mit denen sogar 220v geschaltet werden können, das sollte man aber nur tun, wenn man über ausreichend Erfahrung verfügt.
  3. PIR-Sensor: Ein PIR-Sensor erkennt ziemlich gut die Anwesenheit von Personen. Deren Wärme-Ausstrahlung aktiviert den Sensor, der dann ein digitales Signal schickt. Man kann damit z.b. einen Besucherzähler ralisieren oder eine Alarmanlage oder die Heizung aktivieren lassen, sobald jemand im Raum ist. Bei diesem Sensor ist etwas wichtiges zu beachten das vermutlich auch für andere Sensoren mit digitalem Signal gilt: damit er richtig funktioniert muss beim zugehörigen PIN (bei Grove meist C16) der sog. Pullup-Resistor ausgeschaltet werden. Das gelingt mit diesem Befehl „pins.setPull(DigitalPin.C16, PinPullMode.PullNone)“ (bei den Blöcken unter Fortgeschritten/PINs/Anziehungskraft). Hier auch ein Hackster-Projekt dazu.
  4. Heart-Rate -Sensor: das hat Sven Haiges sehr schön dokumentiert, wie man diesen Sensor verwendet.
  5. Skin-Conductance-Sensor: passt schön zum vorherigen – misst den Hautwiderstand der einen guten Anhaltspunkt für die emotionale Bewegtheit einer Person liefert.
  6. RGB-Farbsensor: Mit diesem Farbsensor von Sparkfun (kann man z.B. hier bestellen) können beliebige Farbwerte ausgelesen werden.
  7. IR Distanz-Sensor: Viele funktionieren seltsamerweise nicht zuverlässig am Calliope, aber wir haben gute Erfahrungen mit diesen hier von Sharp/Pololu gemacht. Vermutlich kann man auch problemlos seine Geschwister im Pololu-Sortiment einsetzen.
  8. Ultraschall-Sensor: Dazu gibt es eine schöne Anleitung auf hackster
  9. OLED Display: Die Seeed OLED Displays funktionieren auf Anhieb, man muss nur die Zusatz-Bibliothek dafür im PXT-Editor einbinden (alternativ kann man es auch von Hand machen)
  10. Neopixel: Ist nicht im engeren Sinne Grove, aber trotzdem eine schöne Erweiterung, mit der man viel machen kann. Die Neopixel-LEDs (bzw. WS2812) gibt es in allen möglichen Varianten, man muss bei mehreren nur an die externe Stromversorgung denken.
  11. ESP8266 Wifi-Modul: eine faszinierende Möglichkeit den mini mit einer Wifi-Verbindung auszustatten. Das Modul gibt es in verschiedenen Varianten, auch direkt mit Grove-Anschluss von Seeed. Es ist wichtig, dass die richtige Firmware drauf ist und die Stromversorgung stimmt.
  12. Infrarot-Steuerung von Lego Power-Tools: auch das nicht im engeren Sinne Grove, aber eine tolle Erweiterungs-Idee für den mini. Es gibt auch eine IR-LED mit Grove-Anschluss, diese wurde aber in dem Zusammenhang noch nicht getestet
  13. LED-Bar: hübsche Balken-Anzeige mit Grove-Anschluss
  14. Piezo Vibrations-Sensor: den Sensor dazu gibt es z.B. hier
  15. Touch-Pad: sehr schönes hackster Projekt dazu gibt es hier
  16. Grove-LED: gibt es in allen möglichen Varianten

— UPDATE 27.3.2017 I2C up & running! —–

Inzwischen haben wir (genaugenommen der unglaubliche @thinkberg) das I2C Problem auch in den Griff bekommen – tatsächlich war es eigentlich gar kein Problem, es gab nur ein paar Details beim Auslesen des Sensors zu beachten. Inzwischen haben wir den RGB Farbsensor ISL29125 von Sparkfun am Grove-Port in Betrieb und können die RGB-LED nach eingelesener Farbe setzen. Das ist ziemlich grossartig, denn damit sind alle relevanten Technologien, die der mini am Grove-Port unterstützen soll getestet und funktionieren. Wir werden dazu in der nächsten Zeit immer mal wieder Code-Beispiele veröffentlichen. Auch wenn man I2C prinzipiell tatsächlich über den Block-Editor auslesen kann ist es doch nicht so ganz trivial und eingängig. Daher wird es vermutlich bald auch einfachere Integrationen für eine Reihe von Sensoren geben.

2 Kommentare zu „Getestete Grove-Sensoren

  1. Vielen Dank für den Tipp nur Sensoren zu nehmen, die mit 3.3V auskommen. Leider liefert der Calliope keine 3,3 V, wenn er mit dem 3V Batterieblock betrieben wird. Der genannte PIR-Sensor z.B. arbeitet dann am Grove1 Anschluss unzuverlässig. Wird der Calliope vom USB-Anschluss mit Spannung (5V) versorgt, arbeitet der PIR-Sensor einwandfrei, denn der Calliope stellt am Grove Sockel dann 3,3V zur Verfügung. Es wäre also zu prüfen, ob der Batterieblock nicht gegen einen größeren mit 3 Mignon Batterien (4,5V) auszutauschen wäre, damit auch die Mindestbetriebsspannung von 3,3V für die Grove Sensoren bereitgestellt werden kann.
    Im Übrigen scheint mir der PIR-Sensor bei Aktivierung kein digitales Signal zu senden, sondern ein 10 Bit analoges Signal ( 0-1023 ), welches ca. Tx = 4 Sekunden anliegt ( Im nicht nachtiggerbaren Modus). Anschließend darf dann ca. Ti = 2,5 Sekunden nicht neu gemessen werden. Die Werte wurden mit den angegebenen Formeln des Datenblatts (BISS0001) und mit den Werten der Kondensatoren RC1,RC2 und Widerstände RR1, RR2 des PIR-Sensor-Schaltplans berechnet.
    Do not forget ! The PIR-detector is to be operational only, when the detection area is sufficiently dark. Dafür ist R3 auf der Platine zuständig. Die beiden Potentiometer zur Einstellung der Empfindlichkeit und der Richweite sind übrigens optional und nicht auf der Sensorplatine vorhanden.

    Gefällt mir

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s