Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Einsteigerfragen
  4. Installation
  5. [Vorlage] Geräte mit RS485 (Modbus) zum IOBroker einrichten

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.8k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    893

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

[Vorlage] Geräte mit RS485 (Modbus) zum IOBroker einrichten

Geplant Angeheftet Gesperrt Verschoben Installation
1 Beiträge 1 Kommentatoren 110 Aufrufe 1 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • fuzzy1955F Online
    fuzzy1955F Online
    fuzzy1955
    schrieb am zuletzt editiert von fuzzy1955
    #1

    Das Einrichten funktionierender Lese- und Schreibverbindungen vom IOBroker zu Geräten mit einer RS485-Modbus-Schnittstelle hat mitunter seine Tücken, die mich aufgrund der meist fehlenden, durchgängigen Dokumentation einige Zeit beanspruchten. Die Erfahrungen möchte ich hiermit zur Verfügung stellen.

    Meine Hardware:

    • Raspberry PI5
    • Waveshare Modbus RS485-to-ETH
      -> IOB-Instanz 0 an Deye WR SUN-10K (2x)
    • Waveshare Modbus Relay 8 Channels
      -> IOB-Instanz 1 an Belimo Klappenstellantrieb LM230a 220V (3x), Pelletsschnecke 12V DC, Pelletsofen Hauptstrom 220 V, Pelletsofen Standby potenzialfrei
    • Waveshare Modbus RS485-to-ETH
      -> IOB-Instanz 2 an Smartmeter ET340 und Smartmeter Finder 7M.38.8.400.0312.

    Meine Software:

    • Linux Debian 13 (Trixie)
    • IoBroker v7.7.2
    • IoB-Modbus Adapter (3 Instanzen)

    Montage und Verdrahtung des Modbus-Konverters:

    Eine Modbus-Netzverbindung besteht bekanntlich aus 3 Drähten: A (-), B (+) und GND. Es empfiehlt sich ein CAT 6 Kabel zu verwenden. Die Abschirmung darf wegen möglicher Störungen keinesfalls mit dem GND verbunden sein! Bei Kabellängen über etwa 3 m oder bei Störungen muss an den Enden je ein 120 Ohm Widerstand zur Terminierung platziert werden. Bei mir war das nicht notwendig. Eine andere Herausforderung ist jedoch, die richtige Anschlussbuchse am Endgerät zu finden. Im besten Fall existiert eine RS485 oder CAN-Buchse, an die man das eine Ende eines CAT6-Kabels steckt. Das andere Ende des CAT6-Kabels muss jedoch vom Stecker befreit und frei mit dem Konverter verdrahtet werden. Ich verwende immer die Drahtfarben: orange/weiß = A (Pin1), orange = B (Pin2), blau/ weiß = GND (Pin3). Die Abschirmung eines Kabelende wird mit einem gelb-grünen Erdungsdraht des Stromnetzes verbunden. Wegen möglicher Störungen lässt man das 2. Abschirmungsende offen (kurz abkneifen).
    Modbus12.jpg

    Sofern mehrere Endgeräte an dem selben Modbus-Konverter hängen, wird es etwas umfangreicher. Mein Weg dazu war ein längeres CAT6-Kabels, welches ich an den erforderlichen Stellen auftrennte und die 3 Drähte an CAT6-Modulbuchsen crimpte.
    Modbus13.jpg Modbus14.jpg

    Konfiguration:

    Für die Smart-Home-Devices wird aus Sicherheitsgründen zumindest ein separates Subnetz empfohlen. Der Modbus-Konverter – bevorzugt mit LAN-Anschluss - muss zuerst mit einer IP-Adresse ans interne Netzwerk gekoppelt werden. Bei den Waveshare-Geräten gibt es die voreingestellte IP-Adresse 192.168.1.254, die man z.B. auf 192.168.0.xxx ändert. Sodann kann man sich mit dem Gerät im Internet-Browser verbinden via http:// 192.168.0.xxx .

    Modbus10.jpg Bild Modbus 10

    Wichtig sind die Einstellungen

    • IP-Adresse aus dem internen Netzwerk, möglichst fix, z.B. 192.168.0.xxx
    • IP-Gateway und Subnet Mask
    • Baud-Rate = 9600
    • Modbus-Adress-Nr. (1, 2, …) aus der Modbus-Konfiguration des angekoppelten Gerätes
    • Protokoll: Modbus TCP
    • Arbeitsmodus: TCP-Server
    • Device-Port: meist 502.

    Die IP-mäßige Kommunikation sollte dann mit einem PING auf die IP-Adresse und einer grünen LED auf dem Konverter angezeigt werden.

    Nun wird im IOBroker der Modbus-Adapter installiert und wie folgt eingerichtet:

    SMA Modbus 2.jpg

    Zum Testen eines Registers gibt man zunächst nur eine Nummer im entsprechenden Tab ein:

    • diskrete Eingänge: 10001 bis 20000
    • diskrete Ausgänge: 1 bis 1000
    • Eingangsregister: 30001 und 40000
    • Holdingregister: 40001 bis 60000

    Diese Nummernbereiche können jedoch erheblich von den Komponentenherstellern abweichen. Am Besten verwendet man eine Liste des Herstellers. Sobald eine Registernummer einen plausiblen Wert im Datenpunkt unter „Objekte“ zurückgibt, kann man die - oft zahlreichen - Registernummern auch als TSV-Datei in den Adapter importieren. Der Dateikopf hängt von der Registerart ab:

    Eingänge:
    _address	deviceId	name	description	formula	role	room	cw	isScale
    
    Ausgänge:
    _address	deviceId	name	description	formula	role	room	poll	wp	cw	isScale
    
    Eingangsregister:
    _address	deviceId	name	description	unit	type	len	factor	offset	formula	role	room	cw	isScale
    
    Holdingregister:
    _address	deviceId	name	description	unit	type	len	factor	offset	formula	role	room	poll	wp	cw	isScale
    
    

    Es kann aber vorkommen, dass man etwas mit den Registernummern jonglieren muss, etwa Registernummer + 1 oder Registernummer -1. Hier ist etwas Ausdauer gefragt – oder das Befragen der fleißigen Helfer im Forum.

    [EDIT]
    Wenn man damit auch keinen Erfolg hat, kann man noch diverse Modbus-Tools zum Lokalisieren von Registernummern einsetzen, etwa GModbus. Damit werden die verfügbaren Registernummern samt Werten aufgelistet. Das Abfragen geht leider etwas mühsam. Man muss die Adressnummern etappenweise eingeben und kann den Count auf max. 120 stellen.

    GModbus.jpg GModbus2.jpg

    Ich hoffe, dass mit dieser Information vielen User/innen im Forum die Arbeit etwas erleichtert wird!

    Viel Erfolg zu diesem Thema wünscht,
    Fuzzy1955

    Raspberry PI5 mit Linux Debian 13, IoBroker v7.7.22, VIS-2, MariaDB (MySQL)
    Shellies: 1G4, 1MiniG3, PlusI4DC, PlusPlugS, Pro0110PM, ProSmoke. Modbus: Waveshare Relay 8 Channels, Waveshare RS485-TO-ETH.
    PV: 10 kWp Module, 2 x Deye WR SUN-10K, 2 x 10 kWh MeritSun LiFe Speicher, KEBA P30 Wallbox, Fronius Wattpilot home 11

    1 Antwort Letzte Antwort
    0
    Antworten
    • In einem neuen Thema antworten
    Anmelden zum Antworten
    • Älteste zuerst
    • Neuste zuerst
    • Meiste Stimmen


    Support us

    ioBroker
    Community Adapters
    Donate

    592

    Online

    32.6k

    Benutzer

    82.1k

    Themen

    1.3m

    Beiträge
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
    ioBroker Community 2014-2025
    logo
    • Anmelden

    • Du hast noch kein Konto? Registrieren

    • Anmelden oder registrieren, um zu suchen
    • Erster Beitrag
      Letzter Beitrag
    0
    • Home
    • Aktuell
    • Tags
    • Ungelesen 0
    • Kategorien
    • Unreplied
    • Beliebt
    • GitHub
    • Docu
    • Hilfe