Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched.
Close
ich brauch unbedingt mal eure Hilfe. Ich bin schon seit mehreren Tagen dran, einen Schrittmotor über Codesys zum laufen zu bringen.
Zum generellen Aufbau:
Codesys soll auf einen Raspberry Pi laufen und ist mit einem Feldbus über EtherCat verbunden.
Die Motorsteuerung ist von Nanotec und das Model ist N5.
Der Schrittmotor verfügt über einen Encoder.
Soweit läuft das auch alles. Im Programm selber kann ich die Inputs verwenden, nachdem ich die PDO-Info vom Gerät geladen habe. Ich habe die Hilfe von Codesys durchgelesen und das Beispiel Programm abgetippt und auch soweit verstanden. Wenn ich das Programm jetzt Ausführe schaltet sich der Motor auch an, d.h. er könnte sich jetzt bewegen, aber da liegt mein Problem, der Motor macht nichts. Ich habe auch versucht die Variable Adressen im Schrittmotor zu ändern, nachdem die Automatisches Mapping meiner Meinung nach nicht ganz funktioniert hat, aber nach meinen Änderungen hat das Programm auch nicht viel mehr gemacht. Ich hoffe ihr könnt mir da weiter helfen.
Hier nochmal der Quellcode aus dem Programm:
CASEiStatusOF0:Â Â Power1(Enable:=TRUE,bRegulatorOn:=TRUE,bDriveStart:=TRUE,Axis:=y_Achse);Â Â IFPower1.StatusTHENÂ Â Â Â iStatus:=iStatus+1;Â Â END_IF1:Â Â MoveAbsolute(Execute:=TRUE,Position:=p,Velocity:=100,Acceleration:=100,Deceleration:=100,Axis:=y_Achse);Â Â IFMoveAbsolute.DoneTHENÂ Â Â Â MoveAbsolute(Execute:=FALSE,Axis:=y_Achse);Â Â Â Â iStatus:=iStatus+1;Â Â END_IF2:Â Â MoveAbsolute(Execute:=TRUE,Position:=0,Velocity:=100,Acceleration:=100,Deceleration:=100,Axis:=y_Achse);Â Â IFMoveAbsolute.DoneTHENÂ Â Â Â MoveAbsolute(Execute:=FALSE,Axis:=y_Achse);Â Â Â Â iStatus:=1;Â Â END_IFEND_CASE
So sieht die Variable Einstellung im Schrittmotor aus:
und so im Feldbus:
Wenn ihr mehr Informationen braucht hier hätte ich auch das Projket.
das eigeneltich Problem ist behoben bzw. es liegt garnicht an den Einstellungen. Wenn ich das grade richtig sehe liegt es eher dadran das der aus dem Closed Loop in den Open Loop geht ohne das ich das wollte. Ich muss den Encoder noch rein bekommen und den Closed Loop drin behalten. Ich glaub dann würde der sich bewegen.
Ein Admin kann denn Beitrag gern schließen.
Lieben Gruß.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo Leute,
ich brauch unbedingt mal eure Hilfe. Ich bin schon seit mehreren Tagen dran, einen Schrittmotor über Codesys zum laufen zu bringen.
Zum generellen Aufbau:
Codesys soll auf einen Raspberry Pi laufen und ist mit einem Feldbus über EtherCat verbunden.
Die Motorsteuerung ist von Nanotec und das Model ist N5.
Der Schrittmotor verfügt über einen Encoder.
Soweit läuft das auch alles. Im Programm selber kann ich die Inputs verwenden, nachdem ich die PDO-Info vom Gerät geladen habe. Ich habe die Hilfe von Codesys durchgelesen und das Beispiel Programm abgetippt und auch soweit verstanden. Wenn ich das Programm jetzt Ausführe schaltet sich der Motor auch an, d.h. er könnte sich jetzt bewegen, aber da liegt mein Problem, der Motor macht nichts. Ich habe auch versucht die Variable Adressen im Schrittmotor zu ändern, nachdem die Automatisches Mapping meiner Meinung nach nicht ganz funktioniert hat, aber nach meinen Änderungen hat das Programm auch nicht viel mehr gemacht. Ich hoffe ihr könnt mir da weiter helfen.
Hier nochmal der Quellcode aus dem Programm:
So sieht die Variable Einstellung im Schrittmotor aus:
und so im Feldbus:
Wenn ihr mehr Informationen braucht hier hätte ich auch das Projket.
Lieben Gruß und danke im Vorraus.
SoftMotion_Test.project [333.82 KiB]
Hey Leute,
das eigeneltich Problem ist behoben bzw. es liegt garnicht an den Einstellungen. Wenn ich das grade richtig sehe liegt es eher dadran das der aus dem Closed Loop in den Open Loop geht ohne das ich das wollte. Ich muss den Encoder noch rein bekommen und den Closed Loop drin behalten. Ich glaub dann würde der sich bewegen.
Ein Admin kann denn Beitrag gern schließen.
Lieben Gruß.