Hallo Zusammen,
wir haben an unserem Roboter ein Taktband. An diesem Band gibt es zwei Sensoren. einen für den Takt und einen für ein eventuelles Werkstück. Das Taktband soll über die sps.sub in unserem KRC4 Roboter gesteuert werden. Die Idee ist folgende:
Wenn der Taktsensor den Takt erkennt (positive Flanke) soll das Taktband für 1 sek stehen bleiben und danach weiterfahren sofern ein Werkstück erkannt wurde.
Das ganze habe ich wie folgt in der sps.sub Programmiert (gekürzt):
;Taktband in Position
bPTRIG1 = di_CO_BE1 AND bPTRIG1HM
bPTRIG1HM = NOT di_CO_BE1
;Anlauf Verzögerung
bFTRIG1 = NOT do_KC1 AND bFTRIG1HM
bFTRIG1HM = do_KC1
IF bPTRIG1 THEN
bConvPos2 = FALSE
ENDIF
IF bFTRIG1 OR $timer_stop[3] THEN
$OUT[99] = FALSE
$timer_stop[3]=true
$timer[3]=0
$timer_stop[3]=false
ENDIF
;Taktband
bConvRel = ($Timer[3] > 2000) AND NOT di_CO_BT1
bConvStop = bPTRIG1
IF bConvRel THEN
do_KC1 = TRUE
ENDIF
IF bConvStop THEN
do_KC1 = FALSE
ENDIF
Alles anzeigen
Alle Variablen sind in der config.dat deklariert.
Unser Problem ist jetzt folgendes:
Zu 95% funktioniert der Ablauf. Aber es kommt Proradich (aller 1-2h) dazu ,dass das Taktband nicht stoppt und durch fährt.
Woran kann das liegen?
Ein Hardware Fehler kann ausgeschlossen werden. Es muss an der Programmierung liegen.