Einführung

Die nachfolgende Beschreibung gibt einen Überblick über die verschiedenen Produkte und Konzepte des Tinkerforge Baukastensystems. Detaillierte Beschreibungen über die Funktion und die zur Verfügung stehende API befindet sich in der Dokumentation des jeweiligen Produktes.

Produkte

Unsere Produkte gliedern sich in fünf verschiedene Kategorien:

  • Bricks: Basismodule des Tinkerforge Systems mit eigenen Funktionen.

  • Bricklets: Sensor-/Aktormodule, die die Fähigkeiten von Bricks erweitern und per Kabel an Bricks angeschlossen werden.

  • Master Extensions: Module, die Alternativen zur USB-Schnittstelle des Master Bricks bieten (WIFI, Ethernet, RS485).

  • Stromversorgungen: Module, die einen Stapel aus Bricks mit Strom versorgen.

Die Verwendung von Bricks und Bricklets demonstriert dieses Tutorial.

Bricks

Bricks sind die Basismodule von jedem Tinkerforge System. Es können verschiedene Bricks in einem System genutzt werden. Minimal ist aber immer mindestens ein Brick notwendig. Bricks können eigene Fähigkeiten besitzen (zum Beispiel Motoren steuern oder über einen Sensor verfügen), hauptsächlich können an Bricks aber sogenannte Bricklets angeschlossen werden. Jeder Brick verfügt über mehrere Brickletanschlüsse.

Viele Bricks können über ein externes Gerät ferngesteuert werden, wie zum Beispiel über einen (Embedded-)PC, mittels Schnittstellen wie USB-C, WIFI oder Ethernet. Das externe Gerät führt dann dein Programm aus, welches das System über unsere API steuert.

Es gibt Bricks, welche auf ein Raspberry Pi gesteckt werden können (HAT Brick, HAT Zero Brick), so dass deine Software auf dem Raspberry Pi die angeschlossene Hardware direkt steuert.

Master Bricks, ein spezieller Typ von Bricks mit USB-C Schnittstelle, können gestapelt werden (Beschreibung zum Stapelkonzept). Die USB-C Schnittstelle eines Master Bricks kann mit sogenannten Master Extensions durch WIFI, Ethernet oder RS485 ersetzt werden. Durch das Stapelkonzept können somit alle Bricks und Bricklets anstatt per USB auch per WLAN oder Ethernet ferngesteuert werden.

Es gibt einen extra Abschnitt für abgekündigte Bricks.

Name

Beschreibung

Debug

Für Firmware Entwickler: JTAG und serielle Konsole

ESP32

ESP32 Mikrocontroller basierter Brick mit 6 Bricklet-Ports

ESP32 Ethernet

ESP32 Mikrocontroller basierter Brick mit Ethernet und 6 Bricklet-Ports

HAT

HAT für Raspberry Pi mit 8 Bricklet-Ports und Echtzeituhr

HAT Zero

HAT für Raspberry Pi Zero mit 4 Bricklet-Ports

IMU 2.0

Voll ausgestattetes AHRS mit 9 Freiheitsgraden

Master

Grundlage um Stapel zu bauen und bietet 4 Bricklet Anschlüsse

RED

Führt Programme aus und steuert andere Bricks/Bricklets selbständig

Silent Stepper

Steuert einen bipolaren Schrittmotor lautlos mit bis zu 46V und 1,6A pro Phase

Bricklets

Bricklets erweitern die Fähigkeiten von Bricks. Es gibt Bricklets um physikalische Größen wie Rotation, elektrische Spannung, elektrischen Strom, Umgebungshelligkeit oder Umgebungstemperatur zu messen. Es gibt auch Bricklets für Steuerungsaufgaben wie Relais, digitale Ein- und Ausgänge sowie alphanumerische Ausgaben auf LCDs.

Jedes Bricklet hat die kleinste mögliche Größe. Jeder Brick hat typischerweise mehrere Anschlüsse für Bricklets. Über den Brick werden die angeschlossenen Bricks gesteuert.

Es gibt einen extra Abschnitt für abgekündigte Bricklets.

Name

Beschreibung

Accelerometer 2.0

Misst Beschleunigung in drei Achsen

Air Quality

Misst IAQ Index, Temperatur, relative Luftfeuchtigkeit und Luftdruck

Ambient Light 3.0

Misst Umgebungslicht bis zu 64000Lux

Analog In 3.0

Misst Gleichspannung zwischen 0V und 42V

Analog Out 3.0

Erzeugt konfigurierbare Gleichspannung zwischen 0V und 12V

Barometer

Misst Luftdruck und Höhenänderungen

Barometer 2.0

Misst Luftdruck und Höhenänderungen

Breakout

Macht alle Bricklet Signale zugänglich

CAN

Kommuniziert mit CAN-Bus Geräten

CAN 2.0

Kommuniziert mit CAN-Bus Geräten

CO2 2.0

Misst CO2-Konzentration, Temperatur und Luftfeuchte

Color

Misst Farbe (RGB Wert), Beleuchtungsstärke und Farbtemperatur

Color 2.0

Misst Farbe (RGB Wert), Beleuchtungsstärke und Farbtemperatur

Compass

3-Achsen Kompass mit 10 Nanotesla und 0,1° Auflösung

DC 2.0

Steuert einen Gleichstrommotor mit bis zu 28V und 5A (Peak)

Distance IR

Misst Entfernung bis zu 150cm mit Infrarot-Licht

Distance IR 2.0

Misst Entfernung bis zu 150cm mit Infrarot-Licht

Distance US 2.0

Misst Entfernung zwischen 30cm und 500cm mit Ultraschall

DMX

DMX Master und Slave

Dual Button 2.0

Zwei Taster mit eingebauten blauen LEDs

Dust Detector

Misst Staubdichte

E-Paper 296x128

Dreifarbiges 296x128 E-Paper-Display

Energy Monitor

Misst Spannung, Strom, Energie, Wirk-/Schein-/Blindleistung, Leistungsfactor und Frequenz

GPS 2.0

Bestimmt Position, Geschwindigkeit und Höhe mittels GPS

GPS 3.0

Bestimmt Position, Geschwindigkeit und Höhe mittels GPS

Hall Effect

Detektiert Magnetfelder

Hall Effect 2.0

Misst magnetische Flussdichte zwischen -7mT und +7mT

Humidity 2.0

Misst relative Luftfeuchtigkeit

IMU 3.0

Voll ausgestattetes AHRS mit 9 Freiheitsgraden

Industrial Analog Out 2.0

Erzeugt konfigurierbare Gleichspannung und -strom, 0V bis 10V und 4mA bis 20mA

Industrial Counter

4-Kanal Zähler bis zu 4MHz

Industrial Digital In 4 2.0

4 galvanisch getrennte digitale Eingänge

Industrial Digital Out 4

4 galvanisch getrennte digitale Ausgänge

Industrial Digital Out 4 2.0

4 galvanisch getrennte digitale Ausgänge

Industrial Dual 0-20mA

Misst zwei Gleichströme zwischen 0mA und 20mA (IEC 60381-1)

Industrial Dual 0-20mA 2.0

Misst zwei Gleichströme zwischen 0mA und 20mA (IEC 60381-1)

Industrial Dual AC In

2 Eingänge die AC-Spannungen von bis zu 230V detektieren können

Industrial Dual AC Relay

Zwei Relais um Wechselstromgeräte zu schalten

Industrial Dual Analog In 2.0

Misst zwei Gleichspannungen zwischen -35V und +35V mit jeweils 24Bit Auflösung

Industrial Dual Relay

Zwei Relais um Gleich- und Wechselstromgeräte zu schalten

Industrial PTC

Liest Temperaturen von Pt100 und Pt1000 Sensoren

Industrial Quad Relay 2.0

4 galvanisch getrennte Halbleiterrelais (Solid State Relais)

IO-16

16 digitale Ein- und Ausgänge

IO-16 2.0

16 digitale Ein- und Ausgänge

IO-4 2.0

4 digitale Ein- und Ausgänge

Isolator

Trennt Verbindung zwischen Bricklets und Bricks galvanisch

Joystick

2-Achsen Joystick mit Taster

Joystick 2.0

2-Achsen Joystick mit Taster

Laser Range Finder 2.0

Misst Entfernung bis zu 40m mit Laser-Licht

LCD 128x64

7,1cm (2,8inch) Display mit 128x64 Pixel und Touchscreen

LCD 20x4

20x4 Zeichen alphanumerisches Display mit blauer Hintergrundbeleuchtung

LED Strip 2.0

Steuert bis zu 2048 RGB(W) LEDs

Line

Misst Reflektivität einer Oberfläche

Linear Poti

59mm Linearpotentiometer

Linear Poti 2.0

59mm Linearpotentiometer

Load Cell 2.0

Misst Gewicht mit einer Wägezelle

Motion Detector 2.0

Passiver Infrarot (PIR) Bewegungssensor mit 12m Reichweite und dimmbarer Beleuchtung

Motorized Linear Poti

Motorisiertes Linearpotentiometer

Multi Touch

Kapazitiver Touch Sensor für 12 Elektroden

Multi Touch 2.0

Kapazitiver Touch Sensor für 12 Elektroden

NFC

NFC Tag Lesen/Schreiben, NFC P2P und Card Emulation

OLED 128x64 2.0

3,3cm (1,3inch) OLED Display mit 128x64 Pixel

OLED 64x48

1,68cm (0,66inch) OLED Display mit 64x48 Pixel

One Wire

Kommuniziert mit bis zu 64 1-Wire Geräten

Outdoor Weather

433MHz Empfänger für Außen-Wetterstation

Particulate Matter

Misst Feinstaub concentration (PM1.0, PM2.5 und PM10)

Performance DC

Steuert einen Gleichstrommotor mit bis zu 36V und 10A

Piezo Speaker

Erzeugt Piepton mit konfigurierbarer Frequenz

Piezo Speaker 2.0

Erzeugt Piepton und Alarm mit konfigurierbarer Lautstärke und Frequenz

Real-Time Clock

Batteriegepufferte Echtzeituhr

Real-Time Clock 2.0

Batteriegepufferte Echtzeituhr

Remote Switch 2.0

Steuert Funksteckdosen und empfängt Signale von Fernbedienungen

RGB LED 2.0

Steuert eine RGB LED

RGB LED Button

Taster mit eingebauter RGB LED

Rotary Encoder 2.0

360° Drehgeber/Drehencoder mit Taster

Rotary Poti

300° Drehpotentiometer

Rotary Poti 2.0

300° Drehpotentiometer

RS232

Kommuniziert mit RS232 Geräten

RS232 2.0

Kommuniziert mit RS232 Geräten

RS485

Kommuniziert mit RS485/Modbus Geräten mit voll- oder halb-duplex

Segment Display 4x7

Vier 7-Segment-Anzeigen mit schaltbarem Doppelpunkt

Segment Display 4x7 2.0

Vier 7-Segment-Anzeigen mit schaltbare Punkten

Servo 2.0

Steuert bis zu 10 RC Servos

Silent Stepper 2.0

Steuert einen bipolaren Schrittmotor lautlos mit bis zu 46V und 1,6A pro Phase

Solid State Relay 2.0

Schaltet AC und DC Halbleiterrelais (Solid State Relais)

Sound Intensity

Misst Schallintensität

Sound Pressure Level

Misst Schalldruck in dB(A/B/C/D/Z)

Temperature

Misst Umgebungstemperatur mit 0,5°C Genauigkeit

Temperature 2.0

Misst Umgebungstemperatur mit 0,2°C Genauigkeit

Temperature IR 2.0

Kontaktlose Objekttemperaturmessung zwischen -70°C und +380°C

Thermal Imaging

80x60 Pixel Wärmebildkamera

Thermocouple 2.0

Misst Temperatur mit Thermoelementen

Tilt

Erkennt Neigung des Bricklets (Neigungsschalter offen/geschlossen)

UV Light 2.0

Misst UV-A, UV-B und UV Index

Voltage/Current 2.0

Misst Leistung, Gleichspannung und Gleichstrom bis zu 720W/36V/20A

XMC1400 Breakout

Entwicklungsboard für Infineon XMC1400 Mikrocontroller

Master Extensions

Wird ein Master Brick alleine oder im Stapel eingesetzt, läuft die Kommunikation über seine USB Schnittstelle. Master Extensions erweitern die Kommunikationsmöglichkeiten von Master Bricks. Es gibt kabelgebundene (RS485, Ethernet) und drahtlose Master Extensions (WIFI). Anstatt über USB können Bricks und Bricklets somit über WLAN (Wi-Fi) oder Ethernet gesteuert werden. Über RS485 ist eine Vernetzung untereinander, auch über größere Strecken, möglich.

Aus Programmierersicht sind die verschiedenen Kommunikationsmöglichkeiten transparent. Ein Stapel mit Master Extension verhält sich so, als wären alle Bricks einzeln per USB am PC angeschlossen.

Das bedeutet: Während Programme entwickelt werden, können allen Bricks einzeln per USB am PC angeschlossen werden. Wenn später die Bricks gestapelt und/oder über eine Master Extension angebunden werden sollen, funktioniert das zuvor geschriebene Programm ohne Änderungen weiter.

Es gibt einen extra Abschnitt für abgekündigte Extensions.

Name

Beschreibung

Ethernet

Kabelgebundene Ethernet Verbindung zwischen Stapel und PC

RS485

Kabelgebundene RS485 Verbindung zwischen Stapeln

WIFI

Drahtlose WLAN Verbindung zwischen Stapel und PC

WIFI 2.0

Drahtlose WLAN Verbindung zwischen Stapel und PC

Stromversorgungen

Nahezu alle Bricklets werden über den Brick, an dem sie über das Brickletkabel angeschlossen sind, mit Strom versorgt. Sollte das Bricklet eine andere Art von Stromversorgung benötigen, so ist dieses in der Dokumentation des Bricklets beschrieben.

Wie ein Brick und seine an ihm angeschlossenen Bricklets mit Strom versorgt werden können, ist in der Dokumentation des Bricks beschrieben. Die meisten Bricks können per USB-C mit Strom versorgt werden oder verfügen über einen DC Eingang.

Wenn ein Master Brick zusammen mit einem Brick-Stapel eingesetzt wird, so kann der gesamte Stapel mit allen angeschlossenen Bricklets über die USB Verbindung des Masters mit Strom versorgt werden. Diese Möglichkeit ist durch die USB-Spezifikation auf 500mA beschränkt. Ein großer Stapel kann einen höheren Stromverbrauch aufweisen.

Um auch größere Stapel mit Strom versorgen zu können, kann die Step Down Power Supply eingesetzt werden. Diese ist genauso groß wie der Master Brick, besitzt einen weiten DC-Spannungseingang und wird unter den Stapel gesteckt.

Eine weitere Alternative zur Stromversorgung eines Stapels ist der Einsatz der Ethernet Extension mit PoE. Über Power-over-Ethernet (PoE) kann dann der Stapel über das Netzwerkkabel mit Strom versorgt werden.

Name

Beschreibung

ESP32

Versorgt einen ESP32 Brick oder ESP32 Ethernet Brick mit 5V

Step-Down

Versorgt einen Stapel von Bricks mit 5V

Konzepte

Stapel aus Master Bricks

Bild eines Stacks von Bricks

Ein spezieller Brick ist der Master Brick. Dieser 4x4cm Brick verfügt über eine USB-C Schnittstelle über die er und seine angeschlossenen Bricklets gesteuert werden können. Master Bricks können gestapelt werden, so dass mehr Anschlüsse für Bricklets zur Verfügung stehen.

Der unterste Master Brick kümmert sich um die Kommunikation aller anderen Teilnehmer im Stapel: Er routet Nachrichten zwischen den Teilnehmern und dem steuernden Gerät. Es ist also nur eine USB-Verbindung notwendig, um die Bricks und Bricklets eines Stapels zu steuern. Aus Benutzersicht verhält sich ein Stapel so, als wären alle Bricks einzeln per USB am Gerät angeschlossen. Das Stapel-Tutorial beinhaltet weitere Informationen über Stapel.

Über Master Extensions kann die USB-Verbindung eines Stapels durch Ethernet, WLAN (Wi-Fi) oder RS485 ersetzt werden. Reicht die Stromzufuhr über USB nicht aus, kann ein Stapel auch mit einer Stromversorgung betrieben werden.

Programmierung/API

Eine generelle Beschreibung der Programmierschnittstelle kann hier gefunden werden. Eine Übersicht der API Bindings für die jeweilige Programmiersprache befindet sich hier. Die API eines Produkts ist auf der jeweiligen Produktseite dokumentiert. Dort finden sich auch spezifische Programmbeispiele für jedes Produkt in jeder unterstützen Programmiersprache.

Die folgenden Tutorials bilden einen Einstieg in die Verwendung von Bricks und Bricklets: