-> Hier kostenlos registrieren
Hallo zusammen,
ich habe einen Kübler Profinet Multiturngeber (8.5888.xxxx.C112) im Einsatz. Dieser hat eine Auflösung von 16 Bit ST und 12 Bit MT.
Meine Anlage laufen damit schon seit einiger Zeit problemlos. Trotzdem habe ich mir meine Software nochmal genauer angeschaut und
zweifle gerade daran ob die Positionsumrechnung für eine Rundachse mit dem genannten Encoder stimmt.
Meine HW-Konfig:
Mich interessiert für meinen Anwendungsfall nur das ST_POS_SubMod hier "PED10".
Den Rohwert rechne ich folgendermaßen um:
Nun zweifle ich ob ich mit der Auflösung von den 8192 etwas falsch gemacht habe. ST sind doch 16 Bit folglich 65536 ???????
Und vor allem auch mit der Bitmaske DW#16#1FFF beim berechnen des Rohwertes. Wenn 16 Bit ST, dann brauche ich aus dem WORD ja auch gar nichts
auszumaskieren.
Sehe ich das so richtig???
Grüße Pico
ich habe einen Kübler Profinet Multiturngeber (8.5888.xxxx.C112) im Einsatz. Dieser hat eine Auflösung von 16 Bit ST und 12 Bit MT.
Meine Anlage laufen damit schon seit einiger Zeit problemlos. Trotzdem habe ich mir meine Software nochmal genauer angeschaut und
zweifle gerade daran ob die Positionsumrechnung für eine Rundachse mit dem genannten Encoder stimmt.
Meine HW-Konfig:
Mich interessiert für meinen Anwendungsfall nur das ST_POS_SubMod hier "PED10".
Den Rohwert rechne ich folgendermaßen um:
Code:
T_INT_Geber_Aufloesung := 8192;
T_DW_SSI_Rohwert := PED10;
T_DW_SingleTurn_Rohwert := T_DW_SSI_Rohwert AND DW#16#1FFF;
IF CAM_CH.INVERT THEN
CAM_CH.ACTUAL_POS := 360.0 - (DINT_TO_REAL(DWORD_TO_DINT(T_DW_SingleTurn_Rohwert)) * 360.0) / INT_TO_REAL(T_INT_Geber_Aufloesung);
ELSE
CAM_CH.ACTUAL_POS := (DINT_TO_REAL(DWORD_TO_DINT(T_DW_SingleTurn_Rohwert)) * 360.0) / INT_TO_REAL(T_INT_Geber_Aufloesung);
END_IF;
Nun zweifle ich ob ich mit der Auflösung von den 8192 etwas falsch gemacht habe. ST sind doch 16 Bit folglich 65536 ???????
Und vor allem auch mit der Bitmaske DW#16#1FFF beim berechnen des Rohwertes. Wenn 16 Bit ST, dann brauche ich aus dem WORD ja auch gar nichts
auszumaskieren.
Sehe ich das so richtig???
Grüße Pico