One Wire Bricklet

Features

  • 1-Wire Kommunikation mit allen 1-wire kompatiblen Geräten

  • Bietet High-Level-Befehle (Bus Search, Reset, Write, Read, Write Command)

  • Unterstützt 3,3V, 5V und externe Versorgungsspannung

  • Bis zu 64 1-Wire Geräte gleichzeitig anschließbar

Beschreibung

Das One-Wire Bricklet ermöglicht die Kommunikation mit 1-wire kompatiblen Geräten .

Die API stellt verschiedene High-Level-Befehle (Bus Search, Reset, Write, Read, Write Command) bereit, die direkt den Status zurückmelden und einfache Fehlererkennung ermöglichen.

Bis zu 64 1-Wire Geräte können gleichzeitig angeschlossen und genutzt werden.

Ein Jumper kann genutzt werden um zwischen 3,3V, 5V und einer externen Stromversorgung für das 1-Wire Gerät zu wechseln.

Eine Beispielanwendung für das Bricklet wäre z.B. das Bestimmen der Temperatur mit einem MAX31820 1-Wire Temperatursensors.

Das Bricklet verfügt über keine galvanische Trennung zum Tinkerforge System. Das heißt es gibt eine direkte elektrische Verbindung zwischen den Anschlussklemmen des Bricklets und dem restlichen System. Sollte dies in der jeweiligen Anwendung zu ungewollten Verbindungen, Masseschleifen oder Kurzschlüssen führen, so ist der Einsatz zusammen mit einem Isolator Bricklet ratsam.

Technische Spezifikation

Eigenschaft

Wert

Stromverbrauch

35mW (7mA bei 5V)

Maximale Busgröße

64

Unterstützte Spannungen

3,3V, 5V und externe Versorgung

Befehle

Bus Search, Reset, Write, Read, Write Command

Abmessungen (B x T x H)

30 x 30 x 14mm (1,18 x 1,18 x 0,55")

Gewicht

6,5g

Ressourcen

Anschlussmöglichkeit

Ein 1-Wire Gerät kann mit VCC/DAT/GND (Spannung, Daten, Masse) verbunden werden

Der Jumper kann genutzt werden um die Stromversorgung auf der VCC-Klemme zwischen 3,3 und 5V zu wechseln. Wenn der Jumper auf NC gesetzt wird, kann eine externe Stromversorgung an VCC angeschlossen werden. Wenn eine externe Stromversorgung verwendet wird darf der Jumper nicht auf 3,3V/5V gesetzt werden.

One Wire Bricklet Anschlussmöglichkeiten

Beispiel: MAX31820

Das folgende Python Beispiel ließt über das One Wire Bricklet die Temperatur eines angeschlossenen MAX31820 Temperatursensors aus:

ow.write_command(0, 0x4E)     # WRITE SCRATCH PAD
ow.write(0x00)                # ALARM H (unused)
ow.write(0x00)                # ALARM L (unused)
ow.write(0x7F)                # CONFIGURATION: 12 bit mode

while True:
    ow.write_command(0, 0x44) # CONVERT T (start temperature conversion)
    time.sleep(1)             # Wait for conversion to finish

    ow.write_command(0, 0xBE) # READ SCRATCH PAD

    t_low = ow.read().data    # Read LSB
    t_high = ow.read().data   # Read MSB

    print('Temperature: {0} °C'.format((t_low | (t_high << 8)) / 16.0))

Erster Test

Um ein One Wire 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 One Wire Bricklet mittels eines Bricklet Kabels mit einem Brick verbunden werden und ein 1-Wire Gerät an das Bricklet angeschlossen werden.

Wenn der Brick per USB an den PC angeschlossen wird sollte einen Moment später im Brick Viewer ein neuer Tab namens "One Wire Bricklet" auftauchen. Wähle diesen Tab aus. Wenn alles wie erwartet funktioniert kann jetzt mit dem angeschlossenen 1-Wire Gerät kommuniziert werden.

One Wire Bricklet im Brick Viewer

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

Gehäuse

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

Gehäuse für One Wire 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 One Wire Bricklet Gehäuses:

Explosionszeichnung für One Wire 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/C++ für Mikrocontroller

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

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