Mehrere ModBus RTU Geräte über ein Gateway anschließen?

Hallo Zusammen,

ist es inzwischen möglich, mehrere ModBus RTU Geräte an einem tatsächlichen Bus zu betreiben, d.h. dass alle Geräte an derselbe seriellen Schnittstelle in Symcon hängen?

Soweit ich mich erinnern kann, war Symcon in den vorherigen Versionen auf Grund des Timings nicht in der Lage mit mehreren Geräten umzugehen - hat sich hier inzwischen etwas geändert?

Ja, IPS kann dies inzwischen… naja fast :slight_smile:

Je nachdem welches Gateway und welche Geräte du am Bus hast, kann es sein dass es dennoch nicht funktioniert.
Ich habe einige Stromzähler, welche nach dem senden (der Antwort) leider den Bus zu lange belegen (> 3,5 Zeichen) und somit die nächste Anfrage von IPS ins ‚leere‘ läuft.

Erst ca 200ms nach dem Empfangen der Antwort geben meine Zähler den Bus wieder frei :frowning:
Workaround ist die Timer aller Instanzen zu deaktivieren und per Script selbst abzufragen (ModBus_RequestRead).

Michael

Hallo Michael

Ich hatte das gleichen probleem, deine Erklärung hat mir weiter geholfen.

Ich hatte mich de folgende script dafür geschrieben:

<?
$IDs = array( // array with all the ModBus ID's
12786, /*[I/O Variabelen\Verwarming\Woonkamer\MB_Act.Temp]*/
22185, /*[I/O Variabelen\Verwarming\Woonkamer\MB_Act.Humidity]*/
13498, /*[I/O Variabelen\Verwarming\Keuken\MB_Act.Temp]*/
20136 /*[I/O Variabelen\Verwarming\Keuken\MB_Act.Humidity]*/
);

foreach ($IDs as $id){ //update all the ID's from the array above.
	ModBus_RequestRead($id);
	usleep(500);
}
?>

Das script wird mit ein cyclisch ereignis jeden 5 Sekonden ausgeführt.

Vielleicht hilft es nog eine :wink: