ModBus TCP Proxy

Der MODBUS Proxy oder auch MODBUS Server soll den Datenverkehr, von mehereren Geräten, stabil regeln.

Moderator: Ulrich

Cerina
Beiträge: 11
Registriert: Di 9. Mai 2023, 10:50

Re: ModBus TCP Proxy

Beitrag von Cerina »

Hallo alfabravo

darf ich dich fragen wie du modbus-proxy auf der Synology mit Docker zum laufen gebracht hast? Ich ende immer bei dem Fehler:

Code: Alles auswählen

thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" }', /modbus-proxy-rs/src/lib.rs:181:67
Leider sind meiner Erfahrungen mit Linux und Docker sehr begrenzt.

Code: Alles auswählen

{
   "CapAdd" : [],
   "CapDrop" : [],
   "cmd" : "-c /etc/modbus-proxy.yml",
   "cpu_priority" : 50,
   "enable_publish_all_ports" : false,
   "enable_restart_policy" : false,
   "enable_service_portal" : null,
   "enabled" : true,
   "env_variables" : [
      {
         "key" : "TZ",
         "value" : "Europe/Berlin"
      }
   ],
   "exporting" : false,
   "id" : "457ef935c58b2c7b7a73b6b7b3c2789da2c3afc33fd78305e176c8a3dd25d30f",
   "image" : "tiagocoutinho/modbus-proxy:latest",
   "is_ddsm" : false,
   "is_package" : false,
   "labels" : {},
   "links" : [],
   "memory_limit" : 0,
   "name" : "tiagocoutinho-modbus-proxy-1",
   "network" : [
      {
         "driver" : "bridge",
         "name" : "bridge"
      }
   ],
   "network_mode" : "bridge",
   "port_bindings" : [
      {
         "container_port" : 502,
         "host_port" : 502,
         "type" : "tcp"
      }
   ],
   "privileged" : false,
   "service_portals" : [],
   "shortcut" : {
      "enable_shortcut" : false,
      "enable_status_page" : false,
      "enable_web_page" : false,
      "web_page_url" : ""
   },
   "use_host_network" : false,
   "version" : 2,
   "volume_bindings" : [
      {
         "host_volume_file" : "/docker/modbus-proxy/modbus-config.yml",
         "is_directory" : false,
         "mount_point" : "/etc/modbus-proxy.yml",
         "type" : "rw"
      }
   ]
}
Viele Grüße
Sebastian

alfabravo
Beiträge: 8
Registriert: Mo 11. Jul 2022, 12:43
Hat sich bedankt: 3 Mal

Re: ModBus TCP Proxy

Beitrag von alfabravo »

@Cerina
Hallo,

mit docker-compose.yml

Code: Alles auswählen

services:

modbus-proxy:
container_name: modbus-proxy
image: tiagocoutinho/modbus-proxy:latest
ports:
 - "5020:502"
environment:
TZ: 'Europe/Berlin'
volumes:
- /volume1/docker/modbus/config.yml:/etc/modbus-proxy.yml
restart: unless-stopped
oder du kannst übers Terminal:

Code: Alles auswählen

docker run -d -p 5020:502 -v /volume1/docker/modbus/config.yml:/etc/modbus-proxy.yml tiagocoutinho/modbus-proxy

Cerina
Beiträge: 11
Registriert: Di 9. Mai 2023, 10:50

Re: ModBus TCP Proxy

Beitrag von Cerina »

Hallo alfabravo,

ich habe beide Methoden nochmal ausprobiert, doch leider enden beide Methoden bei dem gleichen, schon erwähnten, Fehler. Aber trotzdem danke für die schnelle Reaktion auf meine Frage.
BTW: DSM ist auf 7.2

Viele Grüße
Sebastian

alfabravo
Beiträge: 8
Registriert: Mo 11. Jul 2022, 12:43
Hat sich bedankt: 3 Mal

Re: ModBus TCP Proxy

Beitrag von alfabravo »

@Cerina

ich habe doch den selben Fehler.:(

exel90
Beiträge: 3
Registriert: Sa 10. Jun 2023, 00:26

Re: ModBus TCP Proxy

Beitrag von exel90 »

alfabravo hat geschrieben:
Di 4. Jul 2023, 20:44
Hallo,

kann mir jemand mit Modbus Proxy helfen?
Bei mir läuft das Ganze im Docker auf einer Synology.
Ich möchte Solarnazeige und EVCCmit meinem WR Huawei SUN 2000 über Modbus proxy verbinden.
Container habe ich zum laufen gebracht:

Code: Alles auswählen

version: "3"
services:

modbus-proxy:
container_name: modbus-proxy
image: tiagocoutinho/modbus-proxy:latest
ports:
 - "5020:502"
environment:
TZ: 'Europe/Berlin'
volumes:
- /volume1/docker/modbus/config.yml:/etc/modbus-proxy.yml
restart: unless-stopped
config.yml:

Code: Alles auswählen

devices:
- modbus:
    url: 192.168.30.53:502
  listen:
    bind: 0:5020
Meine NAS IP: 192.168.30.5

Code: Alles auswählen

$Regler = "62";
$WR_IP = "192.168.30.5";  
$WR_Port = "5020";
$WR_Adresse = "1"; 
wenn ich aber diese IP in der Einstellungen Solaranzeige eintrage bekomme ich eine Fehlermeldung: keine Verbindung zur LAN.
Was mache ich falsch?
Danke im Voraus
Viele Grüße
Ich würde sagen, du musst in der config.yml bind: 0:502 angeben nicht "5020", da innerhalb des Containers 502 verwendet wird und von außen ist dieser über 5020 erreichbar.

alfabravo
Beiträge: 8
Registriert: Mo 11. Jul 2022, 12:43
Hat sich bedankt: 3 Mal

Re: ModBus TCP Proxy

Beitrag von alfabravo »

@exei90

leider auch kein Erfolg:

Code: Alles auswählen

note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" }', /modbus-proxy-rs/src/lib.rs:181:67
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

arnovy
Beiträge: 4
Registriert: Mo 27. Nov 2023, 12:16
Hat sich bedankt: 3 Mal
Danksagung erhalten: 2 Mal

Re: ModBus TCP Proxy

Beitrag von arnovy »

Ulrich hat geschrieben:
Mi 29. Jun 2022, 13:38
Python 3.9.2-3 ist installiert. Somit kann jeder den MODBUS TCP Proxi mit einer Zeile installieren. Das ist aber dann noch nicht alles. Er muss ja auch konfiguriert und eingerichtet werden. Für einen Python Kenner jedoch alles kein Problem. ( Ist also dabei.. )
Hallo @Ulrich, ich habe den MODBUS Proxy erfolgreich installiert und eingerichtet.
Tut auch was er soll. Jetzt wollte ich den Proxy per Crontab starten damit er auch bei einem Reboot automatisch gestartet wird.
Folgende Zeile habe ich in der Crontab ergänzt:

@reboot ./usr/local/bin/modbus-proxy -c /var/www/modbus-config.yml >/dev/null

leider startet der Modbux Proxy trotzdem nicht.
Hat jemand eine Idee?

VG

Arnovy

Benutzeravatar
Ulrich
Administrator
Beiträge: 5587
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 157 Mal
Danksagung erhalten: 889 Mal
Kontaktdaten:

Re: ModBus TCP Proxy

Beitrag von Ulrich »

Was für eine Meldung kommt denn, wenn du auf der Konsole folgendes eingibst:

./usr/local/bin/modbus-proxy -c /var/www/modbus-config.yml


Ich glaube der Punkt am Anfang muss weg.
-----------------------------------------------------
Ulrich . . . . . . . . [Projekt Administrator]

arnovy
Beiträge: 4
Registriert: Mo 27. Nov 2023, 12:16
Hat sich bedankt: 3 Mal
Danksagung erhalten: 2 Mal

Re: ModBus TCP Proxy

Beitrag von arnovy »

Danke! läuft zwar, aber der Huawei Dongle ist trotz "timeout 20" zickig und blockt irgendwann die Abfragen.
Ich werde die ModBus Idee an der Stelle einstellen.

sh9wito1
Beiträge: 14
Registriert: Mi 8. Nov 2023, 20:51
Danksagung erhalten: 4 Mal

Re: ModBus TCP Proxy

Beitrag von sh9wito1 »

Ich habe sehr gute Erfahrungen mit evcc.io gemacht. Nutze ich für das PV Überschussladen.

In evcc ist ein eigener Modbus Proxy integriert, der über einen Eintrag in der evcc.yaml Konfigdatei aktiviert werden kann.
Ich habe seitdem kein Probleme mehr mit dem parallelen Zugriff von evcc und Solaranzeige auf meinen Huawei Wechselrichter.

# --------------------
# Modbus Proxy fuer solaranzeige Zugriff auf Huawei SUN2000 Wechselrichter
# --------------------
modbusproxy:
- port: 5021
uri: 192.168.xxx.xxx:502

VG Torsten
- Hybrid-Wechselrichter Huawei Sun2000-10KTL-M1
- Speicher Huawei Luna2000-10-S0 10 KWh
- Huawei Smart Meter DTSU-666 H 250A
- SDongleA-05 per LAN verbunden
- Wallbox 2x Daheimladen Touch 11KW
- Raspberry PI 4b

Antworten

Zurück zu „MODBUS Proxy“