MCO 305 Projektierungshandbuch
Programmbeispiel: Absolute Positionierung für das Anwendungsbeispiel Palettierer
/********************** Programmbeispiel absolute Positionierung **********************/
// Inputs:
1
Zur Greiferposition fahren
//
2
Zur Übergabeposition fahren
//
3
HOME Referenzschalter
//
8
Fehler löschen
// Outputs: 1
In Greiferposition
//
2
In Übergabeposition
//
8
Fehler
/****************************** Interrupts **************************************/
ON ERROR GOSUB
errhandle
// Bei Fehler in die Fehlerroutine springen; diese muss immer enthalten sein.
/****************************
VEL
80
// Positionier-Geschwindigkeit bezogen auf Par. 32-80 Maximalgeschwindigkeit setzen
ACC
100
// Positionier-Beschleunigung bezogen auf Par. 32-81 kürzeste Rampe setzen
DEC
100
// Positionier-Verzögerung bezogen auf Par. 32-81 kürzeste Rampe setzen
/*********************** Anwendungsparameter definieren *****************************/
LINKGPAR
1900 "Greiferposition" 0 1073741823 0
LINKGPAR
1901 "Übergabeposition" 0 1073741823 0
/****************** HOME (0) Position nach dem Hochfahren definieren *****************/
SET
I_FUNCTION_3 1
HOME
/************************* Hauptprogrammschleife *************************/
MAIN:
IF (IN
1
== 1) AND
(IN
2 ==
OUT
2 0
POSA (GET
1900)
OUT
1 1
ELSEIF (IN
1
== 0) AND
(IN
OUT
1 0
POSA (GET
1901)
OUT
2 1
ELSE
MOTOR STOP
ENDIF
GOTO MAIN
/*********************** Unterprogramm starten *************************************/
SUBMAINPROG
/************************* Fehlerbehandlung ****************************************/
SUBPROG
errhandle
err = 1
// Fehler-Flag setzen, um solange in der Fehlerroutine zu bleiben, bis der Fehler gelöscht ist.
OUT
8 1
WHILE
err
DO
IF IN
8
THEN
ERRCLR
err=0
ENDIF
ENDWHILE
OUT
8 0
RETURN
/*****************************************************************************/
ENDPROG
/***************************
20
__ Funktionen und Beispiele __
Grundeinstellungen
// Eingang 3 als HOME Referenzschalter-Eingang setzen
// Referenzschalter anfahren und Position auf 0 setzen
0)
THEN
// wenn nur Eingang 1 high, zur Greiferposition fahren
// Ausgang "in Übergabeposition" zurücksetzen
// Positionieren
// Ausgang "in Greiferposition" setzen
2 ==
1)
THEN
// wenn nur Eingang 2 high, zur Übergabeposition fahren
// Ausgang "in Greiferposition" setzen
// Positionieren
// Ausgang "in Übergabeposition" setzen
// Anhalten, falls beide Eingänge low oder high sind.
// Ausgang für Fehler setzen
// In der Fehlerroutine bleiben, bis die Reset-Meldung empfangen ist.
// Fehlermeldung zurücksetzen wenn Eingang 8 high.
// Fehler löschen.
// Fehler-Flag zurücksetzen.
// Ausgang Fehler zurücksetzen
Programmende
************************************/
®
MG.33.L5.03 – VLT
ist ein eingetragenes Warenzeichen von Danfoss.
*******************************/