RONIN
Level-3
- Beiträge
- 2.574
- Reaktionspunkte
- 805
-> Hier kostenlos registrieren
Hallo Leute
Ich schreibe gerade einen Multiinstanz-Fb zur Steuerung eines Danfoss Frequenzumformers via Profibus. Im statischen Bereich des FB´s habe ich einen UDT mit den erforderlichen Sende- (Byte 20-40) und Empfangsdaten Byte (0-20).
Jetzt geht es um die Bausteine DPRD_DAT und DPWR_DAT, genauer um den Reccord Eingang. Die Bausteine brauchen einen Any-Pointer auf den Datenbereich der zu senden bzw empfangen ist. Beim DPRD_DAT bzw. DPWR_DAT muss ich jeweils 20 Byte übertragen, ich kann also nicht einfach den UDT am Reccord Eingang angeben (Siehe Bild) sondern muss irgendwie einen ANY Pointer auf den UDT von 0 bis 20 angeben.Also etwas wie
Im Normalfall (DB) schreibt man einfach P#DB201.DBX20.0 BYTE 20 oder P#M 20.0 BYTE 20 usw.
Leider funktionert P#Fudaten BYTE 20 oder ähnliches nicht.
Kann man das doch irgenwie so schreiben oder muss ich mir den Erforderlichen Pointer erst händisch zusammenbauen.
mfg RONIN
Ich schreibe gerade einen Multiinstanz-Fb zur Steuerung eines Danfoss Frequenzumformers via Profibus. Im statischen Bereich des FB´s habe ich einen UDT mit den erforderlichen Sende- (Byte 20-40) und Empfangsdaten Byte (0-20).
Jetzt geht es um die Bausteine DPRD_DAT und DPWR_DAT, genauer um den Reccord Eingang. Die Bausteine brauchen einen Any-Pointer auf den Datenbereich der zu senden bzw empfangen ist. Beim DPRD_DAT bzw. DPWR_DAT muss ich jeweils 20 Byte übertragen, ich kann also nicht einfach den UDT am Reccord Eingang angeben (Siehe Bild) sondern muss irgendwie einen ANY Pointer auf den UDT von 0 bis 20 angeben.Also etwas wie
Im Normalfall (DB) schreibt man einfach P#DB201.DBX20.0 BYTE 20 oder P#M 20.0 BYTE 20 usw.
Leider funktionert P#Fudaten BYTE 20 oder ähnliches nicht.
Kann man das doch irgenwie so schreiben oder muss ich mir den Erforderlichen Pointer erst händisch zusammenbauen.
mfg RONIN