wir möchten eines unserer Produkte Profinet fähig machen und haben uns dazu einen RevPi Core 3 und ein Profinet IRT Gateway von Kunbus gekauft.
In der Vergangenheit haben wir schon das Profibus Gateway in einer ähnlichen Konfiguration erfolgreich eingesetzt, das ist allerdings alles an Erfahrung, das wir haben.
Ich habe bereits folgende Tutorials / Handbücher komplett gelesen (und teilweise verstanden):
- https://revolutionpi.de/tutorials/revpi ... igurieren/
- https://www.kunbus.com/files/media/bedi ... ofinet.pdf
- viewtopic.php?t=927
Ich habe ein paar Fragen zu Profinet im Allgemeinen und zu dem Gateway im Speziellen und hoffe, dass mir hier geholfen werden kann.
- Das GW hat laut Handbuch 512 Bytes als Input / Output zur Verfügung. Davon sind 320 Bytes fest als Slots konfiguriert mit bestimmten Modulen (16,16,32,32,32,64,64,64 Bytes Größe). Die restlichen 192 Bytes scheinen wohl für azyklische Datenübertragung zur Verfügung zu stehen (Records). Meine Frage ist, wenn ich in Pictory nun 512 Inputs/Outputs festlege, und dann mit der piTest cli z.B. ausführe, würde ich dann das erste Byte des ersten Records setzen? Wie ist die genaue Anordnung der zyklischen / azyklischen Daten?
Code: Select all
piTest -w Output_321,1
- Im Profinet Gateway Tutorial gibt es den Abschnitt "Addressierung". Diesen verstehe ich nicht ganz, dort heißt es nämlich:
Wie können für die Records plötzlich bis zu 512 Bytes verfügbar sein? Ich dachte, man hätte 192 Bytes pro Input/Output Seite?Adressierung
Alle Records werden über API 0, Slot 0, Subslot 1 adressiert. Die Daten werden dabei im Big-Endian-Format übertragen. Beim Big-Endian-Format werden zuerst die höherwertigen Bytes übertragen und an den Speicherplätzen mit den niedrigsten Adressen abgelegt.
Pro Index werden immer 2 Byte Adressiert:
Offset 0 + Offset 1 → Record 0
Offset 510 + Offset 511 → Record 255 (0x00ff)
Index 0x0000 – 0x00ff beinhaltet die Input Daten, die vom anderen RevPi Gate gesendet wurden.
Index 0x1000 – 0x10ff beinhaltet die Output Daten , die an die an das andere RevPi Gate gesendet werden.
Weiterhin verstehe ich nicht ganz, was es heißt, dass pro Index immer 2 Bytes adressiert werden. Gilt das für die Profinet Seite, dass also die PLC immer nur Words als minimum adressieren kann, und nicht bytes? - Die PLC/SPS würde die GDSML Datei des Gateways laden und diese "Slots" sehen. Wenn wir also in unserer API z.B. definieren, dass in Slot 2, Byte 12-15 ein uint64 steht, der bspw. einen Sensorwert darstellt, dann müssten wir auf unserer Seite (mit piTest als Beispiel) so etwas in der Art ausführen, um den Sensorwert zu aktualisieren
Code: Select all
piTest -w Output_92,1 piTest -w Output_93,2 piTest -w Output_94,3 piTest -w Output_95,4
- Ich habe im englischen Forum eine Frage gestellt, vielleicht kann diese hier ja ebenfalls beantwortet werden. Zusammengefasst, wenn ich über Pictory die Anzahl der Inputs/Outputs des GW auf 512 erhöhe, dann kann ich über piTest keine einzige Variable mehr schreiben oder lesen.
Link: https://revolutionpi.com/forum/viewtopi ... 7596cb8833
Vielen Dank im Voraus für jegliche Hilfe