Andy082
Level-2
- Beiträge
- 177
- Reaktionspunkte
- 2
-> Hier kostenlos registrieren
Abend.
Bin gerade wieder mal dabei für die Arbeit mein Privatleben zu opfern und zimmere mir gerade einen Schrittablauf für meine zukünftigen Projekte.
Die Programmsteuerung der 200er macht mir grundlegend keine Probleme und ich denke ich kenne deren Grenzen und Möglichkeiten so gut, dass ich guten Gewissen behaupten kann, meine Abläufe funktionieren zuverlässig.
Was mich nun aber eben zum Grübeln bringt ist, dass ich für jedes "Segment" oder "Schritt" eine eigene Verzögerungszeit sowie eine eigene Zeit für meine Fehlerkennung benötige.
Ich hätte es nun bereits mal mit einem generellen Timer für alle Verzögerungen und einem generellen Timer für alle Fehler versucht und lade immer die benötigte Zeit in den jeweiligen Timer.
Nur startet mir dann der jeweilige Timer nicht mehr.
Ich hab hier mal auszugsweise etwas meines letzten Ablaufes reingestellt.
Liegt's grundlegend an der Programmsteuerung der 200er, oder überseh ich hier mal wieder etwas....
mfg,
Andy
Bin gerade wieder mal dabei für die Arbeit mein Privatleben zu opfern und zimmere mir gerade einen Schrittablauf für meine zukünftigen Projekte.
Die Programmsteuerung der 200er macht mir grundlegend keine Probleme und ich denke ich kenne deren Grenzen und Möglichkeiten so gut, dass ich guten Gewissen behaupten kann, meine Abläufe funktionieren zuverlässig.
Was mich nun aber eben zum Grübeln bringt ist, dass ich für jedes "Segment" oder "Schritt" eine eigene Verzögerungszeit sowie eine eigene Zeit für meine Fehlerkennung benötige.
Ich hätte es nun bereits mal mit einem generellen Timer für alle Verzögerungen und einem generellen Timer für alle Fehler versucht und lade immer die benötigte Zeit in den jeweiligen Timer.
Nur startet mir dann der jeweilige Timer nicht mehr.
Ich hab hier mal auszugsweise etwas meines letzten Ablaufes reingestellt.
PHP:
//set maschine in home position
LD V450.2
UN S0.0
S S0.0, 1
R S0.1, 255
//set maschine in automatic mode
LD V1.4
O V1.3
U V451.2
= S1.0
//home position - mark 0 --------------------------------------------
//initiate positioning on home.
LSCR S0.0
MOVW 0, VW400
SCRT S0.1
SCRE
//home position - mark 1 --------------------------------------------
//move "Keyence"-measurement sensor back to 0-pos. / expensive things first!
LSCR S0.1
MOVW 1, VW400
TON T104, 100 //set sequencer-error
LDN A0.6 //Q used instead of I, no sensores used!
O A0.7
R A0.7, 1
S A0.6, 1
LD A0.6
TON T103, 20
LD T103
U E2.1 //LO-signal of keyence sensor used to controll backward position
SCRT S0.2
LD T104
MOVW 10, VW2
= V9904.6
SCRE
//home position - mark 2 --------------------------------------------
//move peening back to home-position
LSCR S0.2
MOVW 2, VW400
TON T106, 100
LDN E0.4
R A0.5, 1
S A0.4, 1
LD A0.4
TON T105, 20
LD T105
U E0.4
SCRT S0.3
LD T106
MOVW 10, VW2
= V9904.4
SCRE
//home position - mark 3 --------------------------------------------
//move testcylinder back to home-position
LSCR S0.3
MOVW 3, VW400
TON T108, 100
LDN E0.0
R A0.1, 1
S A0.0, 1
LD A0.0
TON T107, 20
LD T107
U E0.0
SCRT S0.4
LD T108
MOVW 10, VW2
= V9904.0
SCRE
Liegt's grundlegend an der Programmsteuerung der 200er, oder überseh ich hier mal wieder etwas....
mfg,
Andy