TIA Festo CMMO-ST

tka

Member
Beiträge
9
Punkte Reaktionen
0
Zuviel Werbung?
->Hier kostenlos registrieren
Hallo,

ich bin neu in der PLC Programmierung, und benötige dringend Hilfe.

Mein erstes Projekt ist es mit einem S7-1200 CPU1215C DC/DC/DC drei Festo Motor-Controller über den I/O interface anzusteuern. Bei den Motoren handelt es sich um drei Schrittmotoren EMMS-ST-57-M-SE-G2.

Ich habe bereits viel programmiert und viel probiert, jedoch ist es mir bis jetzt nicht gelungen über die SPS den Motorcontroller freizugeben, die Motoren zu referenzieren oder Sätze auszuführen.
Die Motorcontroller sind schon Parametriert, über das Festo Configuration Tool kann ich die Schrittmotoren problemlos ansteuern.

Im Programm Steuer ich alles laut dem Datenblatt an.

Ich freue mich über jede Hilfe :)
 

TP-Inc

Well-known member
Beiträge
722
Punkte Reaktionen
135
Benutzt du SINA_POS? Warum nimmst du FCT und nicht Festo Automation Suite? Parameter Freigabe über EA und Feldbus ist richtig gesetzt?
 
OP
T

tka

Member
Beiträge
9
Punkte Reaktionen
0
Nein benutzte SINA_POS nicht. FCT benutzte ich weil ich es schon zur Verfügung hatte, sollte eigentlich kein unterschied zur Automation Suite machen oder?
Parameter sind richtig gesetzt
 
OP
T

tka

Member
Beiträge
9
Punkte Reaktionen
0
Erstmal Danke dass du immer so schnell antwortest :)
Nein ich benutze keine fertigen Bausteine.
Ich erkläre dir kurz was ich bis jetzt probiert habe.
In meinem Programm schalte ich die Ausgänge vom SPS, um Signale an den Motorcontroller zu schicken. Der Motorcontroller ist direkt mit der I/O Schnittstelle am SPS angeschlossen. Die Signale werden wie im Datenblatt beschrieben geschaltet.
Ich hoffe ich konnte mein Problem gut beschreiben.
 

SPS-Pascal

Well-known member
Beiträge
86
Punkte Reaktionen
24
Ist dein FU mit einer Ethernetleitung mit deiner CPU verbunden?
Welche IP Adresse hast du dem Motor Controller zugewiesen?

Gruß Pascal
 

TP-Inc

Well-known member
Beiträge
722
Punkte Reaktionen
135
Zuviel Werbung?
->Hier kostenlos registrieren
Ich würde mal nach SINA_POS googeln und den verwenden. Von Festo heißt der glaub ich PTP_Drive oder so. Ist aber das selbe wie Siemens SINA_POS. Wenn die Freigabe per EA(Klemme) und Bus erfolgt muss im T111 etliches auf „TRUE“ stehen. AUS1,AUS2, AUS3 z.B. das regelt alles der SINA_POS

Edit: Wenn du aus Österreich bist bist würd ich gleich das MotionLab in Wien kontaktieren. Festo Motion Support in Ö ist top.
 
Zuletzt bearbeitet:

blimaa

Well-known member
Beiträge
880
Punkte Reaktionen
77
Geht überhaupt FCT für die neuen Schrittmotoren drives?
Du musst ja das Telegramm auch im Drive etc. einstellen.
Festo stellt ja extra Bausteine für Telegramm 111 zum Download bereit inkl. Beispiel
 

blimaa

Well-known member
Beiträge
880
Punkte Reaktionen
77
Zuviel Werbung?
->Hier kostenlos registrieren
Ah hab gerade gesehen du hast ja noch die alten CMMO Drives.
Ja dafür braucht man natürlich die FCT Software.
Im FCT kann man eigentlich gut schauen, welche Eingänge kommen und was dem Schrittmotor noch für Signale (Freigaben, etc.) fehlt.
Danach fährst du mit Satztabellen denke ich. Hast du etwas in der Satztabelle hinterlegt?
 
OP
T

tka

Member
Beiträge
9
Punkte Reaktionen
0
Ah hab gerade gesehen du hast ja noch die alten CMMO Drives.
Ja dafür braucht man natürlich die FCT Software.
Im FCT kann man eigentlich gut schauen, welche Eingänge kommen und was dem Schrittmotor noch für Signale (Freigaben, etc.) fehlt.
Danach fährst du mit Satztabellen denke ich. Hast du etwas in der Satztabelle hinterlegt?
Über die FCT-Software funktioniert alles einwandfrei. Die Sätze lassen sich ausführen, kann die Motoren Referenzieren usw...
Jedoch Scheiter ich daran die Signale übers SPS zu schalten. Wird dann wohl ein Code-Fehler sein oder?
 

blimaa

Well-known member
Beiträge
880
Punkte Reaktionen
77
1. Immer zuerst Freigabe geben und erst danach den Satz starten!
2. Immer zuerst Satz anwählen und danach den Satz starten, nie gleichzeitig, das Timing ist beim CMMO recht besch....
3. Bei SCL musst du bei "IF" keine Abfrage auf = True machen, das ist Standart (if meineAnweisung = TRUE then --> IF meineAnweisung then (reine Kosmetik)
4. Kommen die Signale beim CMMO an? Du kannst auch gleichzeitig im FCT die Signale beobachten, musst ja keine Freigabe vom FCT übernehmen.
 
OP
T

tka

Member
Beiträge
9
Punkte Reaktionen
0
Die Freigaben setze ich beim Einschalten der Anlage in einem anderen Baustein (oder muss ich vor jedem Satz nochmal eine Freigabe setzen?)
Ob die Signale tatsächlich ankommen kann ich derzeit nicht überprüfen :/
Zum zweiten Punkt: in meinem Code wähle ich ja mit dem jeweiligen Case über die HMI den jeweiligen Satz und setzte dementsprechend Ablaufvariablen auf True um später den Satz ausführen zu können. Somit sollte das Timing-Problem beseitigt sein oder nicht?
 

blimaa

Well-known member
Beiträge
880
Punkte Reaktionen
77
Zuviel Werbung?
->Hier kostenlos registrieren
Du hast eine Verzögerung von 3ms... ziemlich optimistisch, deine Zykluszeit wird da warscheinlich schon grösser sein, und der CMMO wird dies als als keine Verzögerung ansehen.
Kommentier mal deine Baustein Aufrufe aus und beschreib mal deine Ausgangssignale von einer Beobachtungstabelle aus. Dann kannst du alles mal gaaanz langsam durchspielen. So kannst du mal schauen, ob deine überlegte Logik stimmt (oder auch die Verdrahtung).
Sozusagen Grundlagenforschung. Sollte dies gehen, ist der Fehler in deinem Code.


Code:
Case Spule.in OF

1: if Refenziert_MT1.in ......

    Freigabe.out := true;
    Start Satz.out := true;
    Satz_ausführen.out := true;
Wird das nicht alles Gleichzeitig ausgeführt?
 
OP
T

tka

Member
Beiträge
9
Punkte Reaktionen
0
Ja diese befehle werden gleichzeitig ausgeführt. Laut Datenblatt braucht nur der Startbefehl eine Zeitverzögerung.
Der Sartbefehl ist ein Impuls, muss mir nochmal Gedanken machen wie ich das programmieren kann. In meinem Fall funktioniert es nicht so wie ich es mir vorstelle.
 

blimaa

Well-known member
Beiträge
880
Punkte Reaktionen
77
Ja das ist so, es braucht eine Zeitverzögerung. Der Controller ist aber langsam, also reichen 3ms nicht.
Hast du nun mal die ganze Sache von Hand aus der SPS aus probiert?
 
Oben