ifm electronic RM3011 Benutzerhandbuch
Seite 26

Drehgeber mit ProfiNet-Schnittstelle
26
Beispiel eines Parameterauftrags für Preset mit Record Read-Write für SIMATIC
CPU300
RecordWriteData] = {
0x00,0x02,0x00,0x01, // Dateikopf
0x10,0x00,0xFD,0xE8,0x00,0x00, // Parameteraddresse (Preset)
0x43,0x01,0x00,0x00,0x00,0x64 // Parameterwert(Presetwert=100=0x64h)
};
Bedeutung:
0x00,0x02,0x00,0x01,
| | | |------- Anzahl der Parameter = 1
| | |------------- Achse-Nr�/DO-ID = 0
| |------------------ Anfrage ID = 2 ändere Wert
|---------------------- Referenzabfrage
0x10,0x00,0xFD,0xE8,0x00,0x00, // Parameteraddresse (Preset)
| | | | | |--- Subindex LOW Byte
| | | | |------- Subindex HIGH Byte
| | | |------------ Parameter Nummer (PNU) LOW Byte
| | |----------------- Parameter Nummer (PNU) HIGH Byte
| |---------------------- Anzahl der Elemente
|-------------------------- Attribute
0x43,0x01,0x00,0x00,0x00,0x64 // Parameterwert(Presetwert=100=0x64h)
| | | | | |--- Presetwert LSB
| | | | |------- Presetwert �
| | | |------------ Presetwert �
| | |----------------- Presetwert MSB
| |---------------------- Anzahl der Werte =1
|-------------------------- Format : 0x43= Doppelwort oder Integer 32Bit
SIMATIC S7:
-SFB53
-FC x:
CALL „WRREC“ , DB53
REQ :=M41�7
// activate sfb request
ID :=DW#16#0
// logical slot address -> anpassen
INDEX :=W#16#B02E
// record index number
LEN := 16
// data length in byte sizeof(RecordWriteData[])
DONE :=M41�1
// request finished
BUSY :=M41�2
// busy bit
ERROR :=M41�3
// error bit
STATUS:=MD46
// error number, if error bit = 1
RECORD:= RecordWriteData // record buffer address -> anpassen