Programmierung einer Handhabungsmaschine mit TwinCAT2

dme

Level-1
Beiträge
3
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich muss für ein Projekt eine Handhabungsmaschine programmieren und komme nicht weiter:

Ich hab 7 Eingänge und 5 Ausgänge.

[TABLE="class: grid, width: 500, align: left"]
[TR]
[TD]E1[/TD]
[TD]X-Achse eingefahren[/TD]
[/TR]
[TR]
[TD]E2[/TD]
[TD]X-Achse ausgefahren[/TD]
[/TR]
[TR]
[TD]E3[/TD]
[TD]Z-Achse eingefahren[/TD]
[/TR]
[TR]
[TD]E4[/TD]
[TD]Z-Achse ausgefahren[/TD]
[/TR]
[TR]
[TD]E5[/TD]
[TD]Greifer offen[/TD]
[/TR]
[TR]
[TD]E6[/TD]
[TD]Greifer geschlossen[/TD]
[/TR]
[TR]
[TD]E7[/TD]
[TD]Programm aktivieren[/TD]
[/TR]
[TR]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]A1[/TD]
[TD]X_Achse ausfahren[/TD]
[/TR]
[TR]
[TD]A2[/TD]
[TD]Z-Achse ausfahren[/TD]
[/TR]
[TR]
[TD]A3[/TD]
[TD]Greifer oeffnen[/TD]
[/TR]
[TR]
[TD]A4[/TD]
[TD]Anzeige Error[/TD]
[/TR]
[TR]
[TD]A5[/TD]
[TD]Anzeige OK[/TD]
[/TR]
[/TABLE]

Nun sollen folgende Zustände nacheinander abgespielt werden:
[TABLE="class: grid, width: 600"]
[TR]
[TD][/TD]
[TD]Anzeige OK[/TD]
[TD]Greifer öfnnen[/TD]
[TD]Z-Achse ausfahren[/TD]
[TD]Greifer schließen[/TD]
[TD]Z-Achse einfahren[/TD]
[TD]X-Achse ausfahren[/TD]
[TD]Greifer Öffnen[/TD]
[TD]X-Achse einfahren;Greifer schließen[/TD]
[/TR]
[TR]
[TD]E1[/TD]
[TD]X[/TD]
[TD]X[/TD]
[TD]X[/TD]
[TD]X[/TD]
[TD]X[/TD]
[TD]X-->O[/TD]
[TD]O[/TD]
[TD]O-->X[/TD]
[/TR]
[TR]
[TD]E2[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O-->X[/TD]
[TD]X[/TD]
[TD]X-->O[/TD]
[/TR]
[TR]
[TD]E3[/TD]
[TD]X[/TD]
[TD]X[/TD]
[TD]X-->O[/TD]
[TD]O[/TD]
[TD]O-->X[/TD]
[TD]X[/TD]
[TD]X[/TD]
[TD]X[/TD]
[/TR]
[TR]
[TD]E4[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O-->X[/TD]
[TD]X[/TD]
[TD]X-->O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[/TR]
[TR]
[TD]E5[/TD]
[TD]O[/TD]
[TD]O-->X[/TD]
[TD]X[/TD]
[TD]X-->O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O-->X[/TD]
[TD]X-->O[/TD]
[/TR]
[TR]
[TD]E6[/TD]
[TD]X[/TD]
[TD]X-->O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O-->X[/TD]
[/TR]
[TR]
[TD]E7[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[/TR]
[TR]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[TD][/TD]
[/TR]
[TR]
[TD]A1[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O-->X[/TD]
[TD]X[/TD]
[TD]X-->O[/TD]
[/TR]
[TR]
[TD]A2[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O-->X[/TD]
[TD]X[/TD]
[TD]X-->O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[/TR]
[TR]
[TD]A3[/TD]
[TD]O[/TD]
[TD]O-->X[/TD]
[TD]X[/TD]
[TD]X-->O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O-->X[/TD]
[TD]X-->O[/TD]
[/TR]
[TR]
[TD]A4[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[TD]O[/TD]
[/TR]
[TR]
[TD]A5[/TD]
[TD]O-->X[/TD]
[TD]X[/TD]
[TD]X[/TD]
[TD]X[/TD]
[TD]X[/TD]
[TD]X[/TD]
[TD]X[/TD]
[TD]X-->O[/TD]
[/TR]
[/TABLE]
X = TRUE und O= FALSE ; --> bedeutet S bzw R

Nun habe ich das Problem mit der Programmierung wenn ich Beispielsweise A1 auf TRUE setze, soll E2 auf TRUE und E1 auf FALSE gesetzt werden. Genau dasselbe soll bei A2, für E3 und E4, und bei A3, für E5 und E6 gelten.
Ich hoffe ich habe es verständlich ausgedrückt und mir kann hier Jemand helfen. Am besten wäre es wenn man dieses bei Änderungen des Programms nicht neu einstellen muss und es als eine Art Grundeinstellung beibeahalten wird.

Grüße
dme
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Das war nur die Schilderung meiner Arbeit. Mein Problem ist die Programmierung der untenstehenden Frage. Wie ich A1 auf TRUE setze und dabei E1 False und E2 True wird und umgekehrt. Dies als Grundeinstellung.

Ich wollte keinesfalls das mir das komplette Programm geschrieben wird.
 
Code:
A1 := TRUE;
(* Simulationsteil *)
IF bSimON then
   E1 := A1;
   E2 := NOT E1;
END_IF

Mal ganz ehrleich, da muss schon noch etwas mehr Engagement kommen! Es gibt zu jeder Steuerung Handbücher, Tutorials, Übungsbeispiele etc... (Es gibt sogar Bücher in der Bibliothek über dieses Thema -> Forensuche)

Schau dir doch bitte mal diese Unterlagen an, und stelle konkrete Fragen zu konkreten Problemem. Hier im Forum wird dir niemand die Arbeit abnehmen!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Frage wäre, ob du eine Maschine dahinter hängen hast oder nicht.

Wenn ja, dann ändern sich die Eingänge automatisch, wenn du die zugehörigen Ausgänge ansteuerst, die Aktoren sich bewegen und dann ihre Endlagen erreichen. Wenn nein, dann mußt du das simulieren, siehe dazu gloerus Vorschlag.
 
Zurück
Oben