[TIPP] MODBUS PROFIL: APC bzw. Schneider Electric USV "SMT1000IC" via Modbus TCP
Forumsregeln
HIER NUR FERTIGE MODBUS PROFILE.
Wünsche und Fragen zum Modbus oder für neue Profile bitte im Modbus Unterforum
HIER NUR FERTIGE MODBUS PROFILE.
Wünsche und Fragen zum Modbus oder für neue Profile bitte im Modbus Unterforum
-
- Reactions:
- Beiträge: 56
- Registriert: Mo Dez 09, 2019 11:30 am
- Hat sich bedankt: 7 Mal
- Danksagung erhalten: 12 Mal
Wow, da hast Du ja die komplette Liste reingehämmert.
Bei mir funktioniert das einwandfrei, eine Kleinigkeit ist mir aufgefallen. Zum Teil werden (eigentlich Pseudo-) ENUM Werte verwendet (z.B. 40155), bei denen -1 bis -x eine besondere Bedeutung hat und nur ein Teilbereich eine gültige Zahl (hier 0-32768) ist.
Ich habe ein bisschen gespielt und evtl. könnte man das so umsetzen:
Werte innerhalb 0 und 32768 mit Anpassung (/128) und Einheit "%" und für den eigentlichen Wert.
Für jeden Sonderfall eine separate Registerabfrage mit Wertebereich -1 bis -8 und einer Formel für die Wertanpassung: z.B. "x == -5 ? 1 : 0", der Typ ist dann Boolean. Ob diese Formel supported ist, weiß ich nicht, sie geht aber...
Betroffen sind 40154-40170 und 41030, 41031, 41035, 41036, 41040, 41041, 41045 und 41046, wobei nur 40154 komplexer ist, die anderen haben nur -1 als Sonderfall. Kann aber verstehen, wenn Du das nicht einpflegen magst...
VG
Bernd
Bei mir funktioniert das einwandfrei, eine Kleinigkeit ist mir aufgefallen. Zum Teil werden (eigentlich Pseudo-) ENUM Werte verwendet (z.B. 40155), bei denen -1 bis -x eine besondere Bedeutung hat und nur ein Teilbereich eine gültige Zahl (hier 0-32768) ist.
Ich habe ein bisschen gespielt und evtl. könnte man das so umsetzen:
Werte innerhalb 0 und 32768 mit Anpassung (/128) und Einheit "%" und für den eigentlichen Wert.
Für jeden Sonderfall eine separate Registerabfrage mit Wertebereich -1 bis -8 und einer Formel für die Wertanpassung: z.B. "x == -5 ? 1 : 0", der Typ ist dann Boolean. Ob diese Formel supported ist, weiß ich nicht, sie geht aber...
Betroffen sind 40154-40170 und 41030, 41031, 41035, 41036, 41040, 41041, 41045 und 41046, wobei nur 40154 komplexer ist, die anderen haben nur -1 als Sonderfall. Kann aber verstehen, wenn Du das nicht einpflegen magst...
VG
Bernd
TWS 960Q #460, TWS 3500XL #1283 | VPN und Reboot nach Absprache
-
- Reactions:
- Beiträge: 2375
- Registriert: Sa Sep 15, 2018 10:26 am
- Wohnort: Kerpen
- Hat sich bedankt: 902 Mal
- Danksagung erhalten: 704 Mal
Hallo Bernd,
ja, das Teil hat ganz schön Nerven gekostet. ich schaue heute im Laufe des Tages mal drüber. Schön dass das aber grundsätzlich schon mal bei dir funzt.
Liebe Grüße
Jens
ja, das Teil hat ganz schön Nerven gekostet. ich schaue heute im Laufe des Tages mal drüber. Schön dass das aber grundsätzlich schon mal bei dir funzt.
Liebe Grüße
Jens
-
- Reactions:
- Beiträge: 393
- Registriert: Mo Sep 10, 2018 8:40 pm
- Hat sich bedankt: 268 Mal
- Danksagung erhalten: 266 Mal
Hallo Jens
Das ganze klappt, es liefert Werte wenn ich die einzelnen Messwerte anklicke.
Vielen dank für Deine Arbeit
Gruss
Dani
Das ganze klappt, es liefert Werte wenn ich die einzelnen Messwerte anklicke.
Vielen dank für Deine Arbeit
Gruss
Dani
TW 3500L (#882) + TW 950Q (#321, im Moment inaktiv), VPN offen, Reboot nach Rücksprache
-
- Reactions:
- Beiträge: 2375
- Registriert: Sa Sep 15, 2018 10:26 am
- Wohnort: Kerpen
- Hat sich bedankt: 902 Mal
- Danksagung erhalten: 704 Mal
Hallo Bernd,
ich gebe dir Recht, bei den ENUM's habe ich noch einen Bock. Wobei ich noch überlege, ob es nicht sinnvoll ist, eine Applikation für die "Normalen" Werte zu bauen und die negativen Werte gemeinschaftlich durch eine Applikation auszuleiten. Dann würde man sich die Applikation greifen und dann über den "Verknüpfungsassistenten" (bisher DOS) weiterleiten und seine Auswertungslogik erst "dahinter" legen. Das hätte den Charme, dass immer nur genau ein Wert gleichzeitig gesetzt sein kann. Würde man mehrere Applikationen bauen, wäre diese zwingende Exklusivität nach meinem Verständnis vom konkreten Timing des Modbus-Devices abhängig. Es könnte theoretisch dazu kommen, dass bei einzeln augeleiteten Applikationen sich eigentlich widersprechende Boolsche-Werte gesetzt seien könnten. Mag sein, dass sich das jetzt sehr theoretisiert anhört, aber Stefan hat ja bei den diversen Modubus-Geräten schon über recht abstruse Timing-Situationen berichtet.
Ich bin mal gespannt, was sich da hinterher im Felde so für Effekte zeigen werden... (Ist ja keinesfalls nur auf dieses Device hier beschränkt.)
Beste Grüße
Jens
ich gebe dir Recht, bei den ENUM's habe ich noch einen Bock. Wobei ich noch überlege, ob es nicht sinnvoll ist, eine Applikation für die "Normalen" Werte zu bauen und die negativen Werte gemeinschaftlich durch eine Applikation auszuleiten. Dann würde man sich die Applikation greifen und dann über den "Verknüpfungsassistenten" (bisher DOS) weiterleiten und seine Auswertungslogik erst "dahinter" legen. Das hätte den Charme, dass immer nur genau ein Wert gleichzeitig gesetzt sein kann. Würde man mehrere Applikationen bauen, wäre diese zwingende Exklusivität nach meinem Verständnis vom konkreten Timing des Modbus-Devices abhängig. Es könnte theoretisch dazu kommen, dass bei einzeln augeleiteten Applikationen sich eigentlich widersprechende Boolsche-Werte gesetzt seien könnten. Mag sein, dass sich das jetzt sehr theoretisiert anhört, aber Stefan hat ja bei den diversen Modubus-Geräten schon über recht abstruse Timing-Situationen berichtet.
Ich bin mal gespannt, was sich da hinterher im Felde so für Effekte zeigen werden... (Ist ja keinesfalls nur auf dieses Device hier beschränkt.)
Beste Grüße
Jens
-
- Reactions:
- Beiträge: 56
- Registriert: Mo Dez 09, 2019 11:30 am
- Hat sich bedankt: 7 Mal
- Danksagung erhalten: 12 Mal
Hallo Jens,
jetzt hast Du mich verloren. Was meinst Du mit "Applikation bauen"? Gibt es da eine Möglichkeit innerhalb vom Timberwolf oder meinst Du außen rum? Bisher habe ich mir über die Nutzung der Daten über die Visualisierung in Grafana hinaus noch gar keine großen Gedanken gemacht...
Das mit den widersprüchlichen Werten hängt doch irgendwo auch an der Abfragesystematik vom Timberwolf. Wenn ich aus einem einzigen Register verschiedene Bool Werte ableite, dann wäre es natürlich hilfreich, wenn das Register für alle Konvertierungen nur einmal gelesen würde. Wenn ich es richtig verstanden habe, kann man bei Modbus ja auch mehrere Register auf einmal abfragen, sodass man eigentlich die ganzen Werte die in einem Profil definiert sind, mit einer Handvoll Abfragen setzen können sollte. Ist sicher performancetechnisch billiger, als 200 Werte im 10ms Takt im Kreis abzufragen.
SG
Bernd
jetzt hast Du mich verloren. Was meinst Du mit "Applikation bauen"? Gibt es da eine Möglichkeit innerhalb vom Timberwolf oder meinst Du außen rum? Bisher habe ich mir über die Nutzung der Daten über die Visualisierung in Grafana hinaus noch gar keine großen Gedanken gemacht...
Das mit den widersprüchlichen Werten hängt doch irgendwo auch an der Abfragesystematik vom Timberwolf. Wenn ich aus einem einzigen Register verschiedene Bool Werte ableite, dann wäre es natürlich hilfreich, wenn das Register für alle Konvertierungen nur einmal gelesen würde. Wenn ich es richtig verstanden habe, kann man bei Modbus ja auch mehrere Register auf einmal abfragen, sodass man eigentlich die ganzen Werte die in einem Profil definiert sind, mit einer Handvoll Abfragen setzen können sollte. Ist sicher performancetechnisch billiger, als 200 Werte im 10ms Takt im Kreis abzufragen.
SG
Bernd
TWS 960Q #460, TWS 3500XL #1283 | VPN und Reboot nach Absprache
-
- Reactions:
- Beiträge: 2375
- Registriert: Sa Sep 15, 2018 10:26 am
- Wohnort: Kerpen
- Hat sich bedankt: 902 Mal
- Danksagung erhalten: 704 Mal
Hallo Bernd,
vorsicht doppeldeutige Begriffe....
Die Kollegen der ElabNET haben eine einzelne "Zeile" in einem Modbus-Profil "Applikation" getauft. Daher habe ich diesen "Sprech" hier bewusst übernommen.
Um diesen Appikationstypus ging es mir hier.
Beste Grüße
Jens
vorsicht doppeldeutige Begriffe....
Die Kollegen der ElabNET haben eine einzelne "Zeile" in einem Modbus-Profil "Applikation" getauft. Daher habe ich diesen "Sprech" hier bewusst übernommen.
Um diesen Appikationstypus ging es mir hier.
Beste Grüße
Jens
-
- Reactions:
- Beiträge: 2375
- Registriert: Sa Sep 15, 2018 10:26 am
- Wohnort: Kerpen
- Hat sich bedankt: 902 Mal
- Danksagung erhalten: 704 Mal
Hallo zusammen,
hier ist nun auch das überarbeitete Profil 168-23 für die USV.
Für die ENUM-Register für die das von Relevanz war, habe ich nun noch einzelne Applikationszeilen eingefügt, welche die Sonderwerte der Enumerationen gemäßt Bernds Vorschlag aus dem Post 11, als separaten Boolschen Wert greifbar macht. Zudem gibt es die Applikationszeile "Efficiency_EN-1-8". Hier wird alles was an Sonderwerten aus dem Register "40155" kommen kann (-8 bis -1) dann transparent verfügbar.
Zudem ist mir in der Schneider-Doku eine Inkonsistenz aufgefallen..... Für die Register "40156" und "40157" ist als Permission "ReadOnly" dokumentiert. In der Description findet sich jedoch für beide Register der Text "Reading: no countdown in progress. Writing: cancel shutdown."
Da ich das nicht getestet habe, habe ich hier in diesem Profil noch kein Schreiben vorgesehen.
"Der Schöpfer dieses Modbus Geräte Profiles überträgt die Nutzungsrechte gemäß der TOLL ("Timberwolf Open Logikblock License") die unter https://wrgt.news/TOLL zum Download zur Verfügung steht."
Viel Spaß bei der Nutzung.
Beste Grüße
Jens
hier ist nun auch das überarbeitete Profil 168-23 für die USV.
Für die ENUM-Register für die das von Relevanz war, habe ich nun noch einzelne Applikationszeilen eingefügt, welche die Sonderwerte der Enumerationen gemäßt Bernds Vorschlag aus dem Post 11, als separaten Boolschen Wert greifbar macht. Zudem gibt es die Applikationszeile "Efficiency_EN-1-8". Hier wird alles was an Sonderwerten aus dem Register "40155" kommen kann (-8 bis -1) dann transparent verfügbar.
Zudem ist mir in der Schneider-Doku eine Inkonsistenz aufgefallen..... Für die Register "40156" und "40157" ist als Permission "ReadOnly" dokumentiert. In der Description findet sich jedoch für beide Register der Text "Reading: no countdown in progress. Writing: cancel shutdown."
Da ich das nicht getestet habe, habe ich hier in diesem Profil noch kein Schreiben vorgesehen.
"Der Schöpfer dieses Modbus Geräte Profiles überträgt die Nutzungsrechte gemäß der TOLL ("Timberwolf Open Logikblock License") die unter https://wrgt.news/TOLL zum Download zur Verfügung steht."
Viel Spaß bei der Nutzung.
Beste Grüße
Jens
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von blaubaerli am Sa Feb 20, 2021 7:09 pm, insgesamt 1-mal geändert.
-
- Reactions:
- Beiträge: 56
- Registriert: Mo Dez 09, 2019 11:30 am
- Hat sich bedankt: 7 Mal
- Danksagung erhalten: 12 Mal
Hallo Jens,
Interessant wäre hier aber dann tatsächlich noch die Abfragesystematik vom Timberwolf. Wie wird damit umgegangen, wenn ein Register mehrfach abgefragt wird. Ist das ein Aufruf, oder mehrere. Im zweiten Fall kann es ja zu ungültigen Kombinationen kommen. @StefanW, Kannst Du hier Licht ins Dunkel bringen?
VG
Bernd
Okay verstanden. Hab's jetzt auch bewusst gelesen.blaubaerli hat geschrieben: ↑Sa Feb 20, 2021 6:54 pm vorsicht doppeldeutige Begriffe....
Die Kollegen der ElabNET haben eine einzelne "Zeile" in einem Modbus-Profil "Applikation" getauft. Daher habe ich diesen "Sprech" hier bewusst übernommen.
Um diesen Appikationstypus ging es mir hier.
Interessant wäre hier aber dann tatsächlich noch die Abfragesystematik vom Timberwolf. Wie wird damit umgegangen, wenn ein Register mehrfach abgefragt wird. Ist das ein Aufruf, oder mehrere. Im zweiten Fall kann es ja zu ungültigen Kombinationen kommen. @StefanW, Kannst Du hier Licht ins Dunkel bringen?
VG
Bernd
TWS 960Q #460, TWS 3500XL #1283 | VPN und Reboot nach Absprache
-
- Reactions:
- Beiträge: 2375
- Registriert: Sa Sep 15, 2018 10:26 am
- Wohnort: Kerpen
- Hat sich bedankt: 902 Mal
- Danksagung erhalten: 704 Mal
Hi Bernd,
ich habe da noch mal ein wenig drüber nachgesonnen. Das Register wird bestimmt nur einmal gelesen und dann alle auf diesem Register basierenden Applikationen aus dem identischen Grundwert versorgt. Stefan hatte bereits mal erwähnt, dass die Sendezyklen und Regeln dann erst auf höherer Architekturebene definiert werden. Hat man dann für mehrere Applikationen des identischen Registers jedoch unterschiedliche Senderegeln definiert, kann auch das hintenraus wieder potentielle Ungereimtheiten generieren. Man muss da schon wissen, was man macht.
Beste Grüße
Jens
ich habe da noch mal ein wenig drüber nachgesonnen. Das Register wird bestimmt nur einmal gelesen und dann alle auf diesem Register basierenden Applikationen aus dem identischen Grundwert versorgt. Stefan hatte bereits mal erwähnt, dass die Sendezyklen und Regeln dann erst auf höherer Architekturebene definiert werden. Hat man dann für mehrere Applikationen des identischen Registers jedoch unterschiedliche Senderegeln definiert, kann auch das hintenraus wieder potentielle Ungereimtheiten generieren. Man muss da schon wissen, was man macht.
Beste Grüße
Jens
-
- Elaborated Networks
- Reactions:
- Beiträge: 9885
- Registriert: So Aug 12, 2018 9:27 am
- Wohnort: Frauenneuharting
- Hat sich bedankt: 4892 Mal
- Danksagung erhalten: 7854 Mal
- Kontaktdaten:
Hallo Bernd,
Für eine Abfragegruppe gibt es Abfrageauslöser (zunächst nur als ein Abfrageintervall) und dieser führt dann zum Lesen aller Register der Applikationen in der Gruppe zusammen. Diese Abfragen erfolgen somit gesammelt und direkt hintereinander.
Ob wir das beim ersten Rollout des Gerätemanagers noch hinbekommen, dass Applikationen innerhalb der selben Abfragegruppen, die auf das SELBE Register zugreifen dabei nur einmal am Bus abgefragt werden, kann ich noch nicht versichern.
Wir haben darüber zwar diskutiert, aber wir müssen auch eben auch fertig werden und das Leistungsmerkmal Modbus an unsere Nutzer ausrollen. Wir brauchen schließlich auch noch Verbesserungspotential für Updates.
Ein Vorschaubild auf den Modbus Gerätemanager:
lg
Stefan
Der Modbus Gerätemanager unterstützt das Anlegen von Abfragegruppen (bzw. auch das Anlegen von Übertragungsgruppen für das zusammengefasste Schreiben zum Modbus Gerät hin).
Für eine Abfragegruppe gibt es Abfrageauslöser (zunächst nur als ein Abfrageintervall) und dieser führt dann zum Lesen aller Register der Applikationen in der Gruppe zusammen. Diese Abfragen erfolgen somit gesammelt und direkt hintereinander.
Ob wir das beim ersten Rollout des Gerätemanagers noch hinbekommen, dass Applikationen innerhalb der selben Abfragegruppen, die auf das SELBE Register zugreifen dabei nur einmal am Bus abgefragt werden, kann ich noch nicht versichern.
Wir haben darüber zwar diskutiert, aber wir müssen auch eben auch fertig werden und das Leistungsmerkmal Modbus an unsere Nutzer ausrollen. Wir brauchen schließlich auch noch Verbesserungspotential für Updates.
Ein Vorschaubild auf den Modbus Gerätemanager:
lg
Stefan
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von StefanW am So Feb 21, 2021 12:41 pm, insgesamt 2-mal geändert.
Stefan Werner
Product Owner für Timberwolf Server, 1-Wire und BlitzART
Bitte WIKI lesen. Allg. Support nur im Forum. Bitte keine PN
Zu Preisen, Lizenzen, Garantie, HW-Defekt an service at elabnet dot de
Link zu Impressum und Datenschutzerklärung oben.
Product Owner für Timberwolf Server, 1-Wire und BlitzART
Bitte WIKI lesen. Allg. Support nur im Forum. Bitte keine PN
Zu Preisen, Lizenzen, Garantie, HW-Defekt an service at elabnet dot de
Link zu Impressum und Datenschutzerklärung oben.