Forum: Mikrocontroller und Digitale Elektronik Modbus Register Beschreibungs Sprache gesucht


von Blume (Gast)


Lesenswert?

Hallo,

gibt es eine Beschreibungssprache, um die Register eines Modbus Gerätes 
zu beschreiben?
Mit einer maschinenlesbaren Datei könnte man die SW generieren und 
gleichzeitig die Dokumentation erstellen

Beispielhaft gibt es bei LIN die LDF Dateien.

Kennt jemand was ähnliches für die Modbus Register?
Oder wie wird das Problem sonst gelöst?

Beitrag #6285302 wurde von einem Moderator gelöscht.
von Landwirt (Gast)


Lesenswert?

Blume schrieb:
> Mit einer maschinenlesbaren Datei
Ein XML?

Damit lässt sich da Objektbezogen Beschreiben, an welcher Adresse jetzt 
welches Coil/usw. liegt. Dazu kann man noch Trivialnamen und 
Langtextbeschreibungen der Coils usw. vergeben.

Außerdem kann man Hierarchie in XML abbilden. Ein Modbus-Netz besteht 
aus mehreren Knoten und einem gemeinsamen Beschreibungsteil (RTU oder 
ASCII oder Mixed, welche Baudrate, welches Medium, ...)

Frage mich auch warum es das nicht gibt. Verkaufe die Idee doch an 
Vector Informatik und werde reich!

von TR.0LL (Gast)


Lesenswert?

Landwirt schrieb:
> Blume schrieb:
>> Mit einer maschinenlesbaren Datei
> Ein XML?
>
> Damit lässt sich da Objektbezogen Beschreiben, an welcher Adresse jetzt
> welches Coil/usw. liegt. Dazu kann man noch Trivialnamen und
> Langtextbeschreibungen der Coils usw. vergeben.
>
> Außerdem kann man Hierarchie in XML abbilden. Ein Modbus-Netz besteht
> aus mehreren Knoten und einem gemeinsamen Beschreibungsteil (RTU oder
> ASCII oder Mixed, welche Baudrate, welches Medium, ...)
>
> Frage mich auch warum es das nicht gibt. Verkaufe die Idee doch an
> Vector Informatik und werde reich!

Das geht mi JSON oder YAML auch.

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Meine Eigenbau Modbusgeräte habe ich mit YAML beschrieben.
Damit kann ich die direkt in meine Pytyonscripte reinladen.

von Blume (Gast)


Lesenswert?

Mw E. schrieb:
> Meine Eigenbau Modbusgeräte habe ich mit YAML beschrieben.
> Damit kann ich die direkt in meine Pytyonscripte reinladen.

Hört sich gut an!!!
hast du mal ein Beispiel?
Du hast dir den YAML Aufbau selbst ausgedacht oder eine Vorlage benutzt?

???

mfg

Blume

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

YAML hat ja schonmal einen vorgeschriebenen Aufbau.

Momentan sind die YAML sehr daran orientiert was meine Scripte so 
wollen.
Nämlich zB Register für Spannung/Strom setzen/lesen.

Hier ein Ausschnitt für ein DPS5005 (China Netzteil mit Modbus):
1
reg_set_current:
2
 unitprefix: milli
3
 unitcoding: uint16
4
 unitlsb: 1
5
 registerlo: 40002
6
 registerhi:
7
 
8
reg_set_voltage:
9
 unitprefix: milli
10
 unitcoding: uint16
11
 unitlsb: 10
12
 registerlo: 40001
13
 registerhi:

unitprefix -> es werden hier millies gelesen, also zB milli Ampere
unitcoding -> 16Bit/32Bit/float/double etc
unitlsb -> ob 1 LSB so 1mA oder 10mV sind
registerlo -> Adresse des lo Registers oder des einzigen bei 16Bit
registerhi -> Adresse des Registers für die oberen 16Bit für 32Bit Werte

Hier von meiner Eigenbau E-Last:
1
reg_set_current:
2
 unitprefix: milli
3
 unitcoding: uint32
4
 unitlsb: 1
5
 registerlo: 40001
6
 registerhi: 40002

Das ließe sich natürlich noch viel allgemeiner aufziehen.

von Martin S. (strubi)


Lesenswert?

Blume schrieb:
> Hallo,
>
> gibt es eine Beschreibungssprache, um die Register eines Modbus Gerätes
> zu beschreiben?
> Mit einer maschinenlesbaren Datei könnte man die SW generieren und
> gleichzeitig die Dokumentation erstellen
>
> Beispielhaft gibt es bei LIN die LDF Dateien.
>
> Kennt jemand was ähnliches für die Modbus Register?
> Oder wie wird das Problem sonst gelöst?

Gibt's, in `netpp` findest du einiges (unterstuetzt grundsaetzlich alle 
register-basierten Protokolle). Register/Bits und allenfalls abstrakte 
Eigenschaften (falls das Geraet noch ueber TCP/UDP ansteuerbar sein 
soll) designst du im Prinzip per XML-Editor und backst das .exe mit 
'make'.
Doku wird im XML docbook-Format erzeugt.

Source-Repo:
https://gitlab.com/hackfin/netpp


P.S. Du kannst dir natuerlich auch den schwergewichtigen EDDL-Ansatz 
reinziehen..

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.