Profinet IRT Gateway Datentypen ändern

Für Themen rund um die Konfigurationsoftware des Revolution Pi
Post Reply
sebastian
Posts: 13
Joined: 11 Oct 2022, 12:05

Profinet IRT Gateway Datentypen ändern

Post by sebastian »

Hallo zusammen,

mich würde interessieren, ob es möglich ist, die Datentypen der Werte meines Profinet IRT Gateways anzupassen.
Aktuell habe im Ausgangszustand z.B. die Variablen "Input__1" - "Input__512", wobei jedes genau ein Byte groß ist.
Ist es möglich, hier den Datentypen anzupassen und z.B. "Input__1" - "Input__4" zu einem uint32 zusammenzufassen?

Mein use case hierfür ist, dass ich einen virtuellen OPC/UA Server hinzugefügt habe, und dieser ja exportierte Werte der anderen Module automatisch als Nodes zur Verfügung stellt. Nun haben also OPC/UA Clients einen Baum an Nodes, wobei jeder Node genau ein Byte lang ist. Hier wäre es wesentlich angenehmer, wenn ich diese Baumstruktur mehr an meine reale API anpassen könnte.

Ist das irgendwie möglich?

Viele Grüße
Sebastian
User avatar
nicolaiB
KUNBUS
Posts: 1131
Joined: 21 Jun 2018, 10:33
Location: Berlin
Contact:

Re: Profinet IRT Gateway Datentypen ändern

Post by nicolaiB »

Hallo,

du kannst in der Datei /etc/revpipyload/replace_ios.conf die IO Definitionen anpassen bzw. umschreiben. Das Datenformat findest du hier https://revpimodio.org/en/doc2/ (siehe replace_io_file).

Gruß Nicolai
Nicolai
sebastian
Posts: 13
Joined: 11 Oct 2022, 12:05

Re: Profinet IRT Gateway Datentypen ändern

Post by sebastian »

Hallo Nicolai,

danke für den Link. Ich habe mir das durchgelesen, hätte dazu aber noch eine Folgefrage. Mir ist nicht ganz klar, wo ich alle möglichen Parameter für dieses File finden kann. Ich habe auf meinem RevPi mal das default file angeschaut:

Code: Select all

cat /etc/revpipyload/replace_ios.conf
# Replace IO

# [NewIoName]
# replace = OldIoName
# frm = StructFormat
# bit = 0-n (Only with '?' struct)
# byteorder = little/big
# wordorder = little/big
# bmk = JustText
Unter deinem Link finde ich nicht wirklich viele oder gar keine Infos zu den hier aufgeführten Parametern (Ctrl+f mit byteorder als Beispiel ergibt 0 Treffer).

Außerdem ist mir hier auch nicht ersichtlich, wie ich mehrere bytes zusammenfassen kann. Die Syntax sieht für mich aktuell so aus, als ob ich auf ein Byte limitiert wäre und davon höchstens einzelne Bits zusammenfassen kann?

Gibt es da nicht irgendwo eine genau Dokumentation der verfügbaren Parameter?

Vielen Dank im Voraus,

Sebastian
sebastian
Posts: 13
Joined: 11 Oct 2022, 12:05

Re: Profinet IRT Gateway Datentypen ändern

Post by sebastian »

EDIT: Diese Seite hier hat mehr Infos. Ich versuche es mal damit :) https://revpimodio.org/en/doc2/io/
sebastian
Posts: 13
Joined: 11 Oct 2022, 12:05

Re: Profinet IRT Gateway Datentypen ändern

Post by sebastian »

Ich habe nun als Beispiel diese Datei definiert:

Code: Select all

# Replace IO

[Test]
replace = Input__1
frm = H
#bit = 0-n (Only with '?' struct)
#byteorder = little/big
#wordorder = little/big
#bmk = JustText
Das hat nun erfolgreich die Inputs "Input__1" und "Input__2" zu einem 16Bit Wert zusammengefasst.

Danke für die Hilfe, damit komme ich weiter! :)
User avatar
nicolaiB
KUNBUS
Posts: 1131
Joined: 21 Jun 2018, 10:33
Location: Berlin
Contact:

Re: Profinet IRT Gateway Datentypen ändern

Post by nicolaiB »

Ja, da hast du die Korrekte Seite gefunden. Ich habe parallel dazu angeregt unsere Online Doku um das OPC UA Modul zu erweitern.

Gruß Nicolai
Nicolai
Post Reply