Meine Frage bezieht sich auf die Registerkarte Skalieren/Mapping des SM_Drive_EtherCAT_SoE_Standard.
Und zwar gibt es ja darin die Möglichkeit, die Skalierung zu bearbeiten. Die Frage ist nun wie CodeSys dies
intern bewerkstelligt.
Die Frage kam mir mit meinem Versuchsaufbau:
Steuerung: Raspberry Pi 3 (Codesys Control for Raspberry Pi MC SL)
Regler: Bosch Rexroth IndraDrive C (MPE20)
Bus: EtherCAT
Protokoll: SoE
Am Regler hängt eine rotativer Motor, der sich soweit auch schon bewegen lässt. Soweit so gut.
Jedoch nicht so wirklich kontrolliert. Ich möchte beispielsweise eine 360° Drehung durchführen und
gebe daher dem Funktionsblock MC_MoveRelative eine Distanz von 360. Die Achse dreht sich jedoch weiter als 360°.
Daher vermute ich, dass der Fehler bei meiner Konfiguration der Skalierung liegt, die ich bis dahin nicht verstanden habe.
CodeSys erhält vom Regler über das Positionsfeedback den Lageistwert und keine Inkremente, oder liege ich falsch in der Annahme?
Ein Screenshot meiner Konfiguration ist angehängt.
Auf den Wert 524288 komme ich aufgrund des Gebers und der Auflösung des Reglers. Liegt der Fehler bei dem Wert?
Ich möchte, dass eine technical unit u einem Grad entspricht.
Ich hoffe meine Situation und Frage einigermaßen verständlich dargestellt zu haben.
Ich bin für jede Hilfe dankbar.
-
Benjamin
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo zusammen,
Meine Frage bezieht sich auf die Registerkarte Skalieren/Mapping des SM_Drive_EtherCAT_SoE_Standard.
Und zwar gibt es ja darin die Möglichkeit, die Skalierung zu bearbeiten. Die Frage ist nun wie CodeSys dies
intern bewerkstelligt.
Die Frage kam mir mit meinem Versuchsaufbau:
Steuerung: Raspberry Pi 3 (Codesys Control for Raspberry Pi MC SL)
Regler: Bosch Rexroth IndraDrive C (MPE20)
Bus: EtherCAT
Protokoll: SoE
Am Regler hängt eine rotativer Motor, der sich soweit auch schon bewegen lässt. Soweit so gut.
Jedoch nicht so wirklich kontrolliert. Ich möchte beispielsweise eine 360° Drehung durchführen und
gebe daher dem Funktionsblock MC_MoveRelative eine Distanz von 360. Die Achse dreht sich jedoch weiter als 360°.
Daher vermute ich, dass der Fehler bei meiner Konfiguration der Skalierung liegt, die ich bis dahin nicht verstanden habe.
CodeSys erhält vom Regler über das Positionsfeedback den Lageistwert und keine Inkremente, oder liege ich falsch in der Annahme?
Ein Screenshot meiner Konfiguration ist angehängt.
Auf den Wert 524288 komme ich aufgrund des Gebers und der Auflösung des Reglers. Liegt der Fehler bei dem Wert?
Ich möchte, dass eine technical unit u einem Grad entspricht.
Ich hoffe meine Situation und Frage einigermaßen verständlich dargestellt zu haben.
Ich bin für jede Hilfe dankbar.
-
Benjamin
Hi,
ich könnte mir vorstellen das dieser "alte" Post dir weiterhelfen könnte:
l viewtopic.php?f=6&t=8119#p18970 l
Grüße
Edwin
Hallo Edwin,
Danke für die Antwort. Die Auflösung hatte ich bisher nicht gefunden, dann wurde es klar.
Hatte wohl Tomaten auf den Augen.
-
Benjamin