Herunterladen Diese Seite drucken

Danfoss VLT MCO 305 Projektierungshandbuch Seite 166

Vorschau ausblenden Andere Handbücher für VLT MCO 305:

Werbung

MCO 305 Projektierungshandbuch
Tipps zur Erhöhung der Programmlesbarkeit
Verwenden Sie Groß- und Kleinschreibung, zum Beispiel alle Befehle groß, Variablen klein.
Fügen Sie Leerzeichen zwischen den Befehlsteilen ein.
Kommentieren Sie Ihr Programm. Die Kommentare stehen zwischen /* ... */ oder nach //...
/* Beginn KOMMENTAR Ende */ oder
// Beginn KOMMENTAR Ende
Unzulässig ist die aber Schachtelung von Kommentaren (/* ... /* ... */ ... */)
Verwenden Sie Zeileneinzüge innerhalb von Schleifen.
Befehlsstruktur
Jeder Befehl besteht aus einem BEFEHLSWORT+ ggf. Parameter. Eine Variable kann auch als Parameter
statt einer absoluten Zahl benutzt werden.
Beispiel
oder
Werteeingaben
Wie in anderen Programmiersprachen werden Werteeingaben auch hier nicht geprüft. Es liegt also in der
Verantwortung des Programmierers, wenn zu extreme Werte Probleme bereiten. Bei der Suche nach solchen
Problemen können Sie den Debug-Modus benutzen.
Fehlerhandhabung (Error Handling)
Es können immer Situationen wie Timeout,
Positionsfehler (Schleppfehler) oder ein Nothalt
auftreten und müssen daher berücksichtig werden;
im Allgemeinen benutzt man dafür Unterprogram-
me. Andernfalls würde das Programm ohne jede
Möglichkeit, den Fehler zu löschen abbrechen.
In diesem Programmbeispiel wird der Fehlerstatus
mittels einer Fehlernummer ausgewertet und das
Unterprogramm „errhandle" aufgerufen, wenn ein
Fehler auftritt.
166
__ Programmieren mit APOSS __
POSA 10000
pos = 10000
POSA pos
®
MG.33.L5.03 – VLT
ist ein eingetragenes Warenzeichen von Danfoss.
ON ERROR GOSUB errhandle
PRINT "Temporären Fehlerzustand erzeugen "
PRINT "durch Betätigen des Endschalters."
endlos:
/* Endlosschleife */
GOTO endlos
/* UNTERPROGRAMMBEREICH
SUBMAINPROG
SUBPROG errhandle
// Fehlernummer auswerten und
// Fehlermeldung rücksetzen
PRINT "Aktuelle Fehlernummer: ",ERRNO
IF (ERRNO == 25) THEN
/* Endschalter oder Maschinen-Stopp */
PRINT "HW Endschalter aktiviert"
ELSE
PRINT "ok, obwohl es kein Endschalter war."
ENDIF
RINT "Sie haben 10 Sek. Zeit, ";
PRINT "den Fehler zu beheben"
DELAY 10000
/* 10 Sekunden warten */
PRINT "Fehlerstatus zurücksetzen ..."
ERRCLR
/* Fehlermeldung zurücksetzen */
PRINT "... und Programm beenden."
EXIT
/* Programmabbruch */
RETURN
ENDPROG
*/

Werbung

loading