WarenzeichenVLT ist ein eingetragenes Warenzeichen von Danfoss.
Hiperface® ist ein eingetragenes Warenzeichen der Sick Stegmann GmbH, Max Stegmann GmbH
Antriebstechnik-Elektronik.
Microsoft, Windows 2000 und Windows XP sind entweder eingetragene Warenzeichen oder Warenzeichen der
Microsoft Corporation in den USA und/oder anderen Ländern.
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 1
MCO 305 Befehlsreferenz
MCO 305 Befehlsreferenz lesen
Befehlsreferenz lesen
Die Befehlsreferenz ergänzt das MCO 305 Projektierungshandbuch mit der detaillierten Beschreibung aller
Befehle. Bitte lesen Sie auch das Produkthandbuch, um sicher und professionell mit dem System zu
arbeiten und beachten Sie vor allem auch die Sicherheitshinweise und allgemeinen Warnungen.
Das Kapitel Befehlsreferenz lesen informiert
über die Symbole, Abkürzungen und Definitionen,
die in diesem Handbuch benutzt werden.
Seitenteiler für „Befehlsreferenz lesen”.
Das Kapitel Befehlsreferenz enthält die detaillierte Beschreibung aller Befehle mit deren Syntax
sowie Programmbeispielen.
Seitenteiler für „Befehlsreferenz”.
Das Kapitel Anhang berichtet über „Neues in der
aktuellen Version”. Erfahrene Anwender finden ausführliche Informationen in der Technischen
Referenz zum Beispiel „Array Structure of CAM
Profiles”. Das Handbuch schließt mit einem Stichwortverzeichnis.
Seitenteiler für „Anhang”.
In der Online-Hilfe finden Sie im Kapitel Programmbeispiele etwa 50 kurze Beispiele, die Sie benutzen
können, um sich mit dem Programm vertraut zu machen oder direkt in Ihr Programm kopieren können.
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 3
MCO 305 Befehlsreferenz
__ MCO 305 Befehlsreferenz lesen __
Verfügbare Literatur für FC 300, MCO 305 und MCT 10 Motion Control Tool
Das MCO 305 Produkthandbuch liefert die erforderlichen Informationen zum Einbau und für die
Inbetriebnahme des MCO 305 sowie für die Optimierung der Steuerung.
Das MCO 305 Projektierungshandbuch enthält alle technischen Informationen über die Optionskarte
sowie Informationen für die Realisierung kundenspezifischer Designs und Anwendungen.
Diese MCO 305 Befehlesreferenz ergänzt das MCO 305 Projektierungshandbuch mit der detaillierten
Beschreibung aller Befehle.
Das VLT® AutomationDrive FC 300 Produkthandbuch liefert die erforderlichen Informationen für die
Inbetriebnahme und den Betrieb des Frequenzumrichters.
Das VLT® AutomationDrive FC 300 Projektierungshandbuch enthält alle technischen Informationen zum
Frequenzumrichter sowie Informationen zur kundenspezifischen Anpassung und Anwendung.
Das VLT® AutomationDrive FC 300 MCT 10 Produkthandbuch bietet Informationen für die Installation
und den Gebrauch der Software auf einem PC.
Die technische Literatur von Danfoss Drives ist auch online unter www.danfoss.com/drives verfügbar.
4MG.34.R1.03 – VLT
®
ist ein eingetragenes Warenzeichen von Danfoss.
MCO 305 Befehlsreferenz
__ MCO 305 Befehlsreferenz lesen __
Symbole und Konventionen
In diesem Handbuch verwendete Symbole:
ACHTUNG!:
Kennzeichnet einen wichtigen Hinweis.
Kennzeichnet eine allgemeine Warnung.
Konventionen
Die Informationen in diesem Handbuch sind weitestgehend systematisiert und typografisch folgendermaßen
beschrieben:
Menüs und Funktionen, Befehle und Parameter
Menüs und Funktionen sind kursiv geschrieben, zum Beispiel Steuerung o Parameter.
Befehle und Parameternamen sind in Großbuchstaben geschrieben, zum Beispiel: AXEND und KPROP;
Parameter sind kursiv geschrieben, zum Beispiel: Proportionalfaktor.
Parameter-Einstellungen
Werte, die für Parameter-Einstellungen ausgewählt werden können, stehen in eckigen Klammern, z. B. [3].
Tasten
Die Namen der Tasten und Funktionstaten stehen ebenfalls in eckigen Klammern, zum Beispiel die
Steuerungstaste [Strg]-Taste oder nur [Strg], die [Esc]-Taste oder die [F1]-Taste.
Abkürzungen
Ampere, Milliampere A, mA
Benutzereinheiten BE
Digitaler Signal-Prozessor DSP
Frequenzumrichter FU
Hauptistwert HIW
Hauptsollwert HSW
LCP Bedieneinheit LCP
Bit mit dem niedrigsten Stellenwert LSB
Motion Control Option MCO
Motion Control Tool MCT
Minute Min
Maschinennullpunkt MN
Höchstwertiges Bit MSB
Master Unit MU
Nach plus schaltender digitaler
Ausgang
Parameter Par.
PID Regelung PID
Nach minus schaltender digitaler
Ausgang
Pulse pro Umdrehung [PPR] Pulse/U
Quadcounts qc
Sekunde, Millisekunde s, ms
Abtastzeit (Sample time) st
Steuerwort STW
Umdrehungen pro Minute U/Min
VoltV
Zustandswort ZSW
NPN
PNP
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 5
MCO 305 Befehlsreferenz
__ MCO 305 Befehlsreferenz lesen __
Definitionen
MLONG
Eine untere oder obere Grenze für viele Parameter ist:
-MLONG = -1.073.741.824
MLONG = 1.073.741.823
Quadcounts
Inkrementalgeber: 4 Quadcounts entsprechen
einer Drehgeber-Umdrehung.
Absolutgeber: 1:1 (1 qc entspricht einer Drehgeber-Umdrehung).
Aus den beiden Spuren (A/B) der Inkrementalgeber
wird durch Flankenauswertung eine Vervierfachung
der Inkremente erzeugt. Dies verbessert die Auflösung.
Ableitung der Quadcounts.
Benutzereinheiten
Die Einheiten für den Antrieb oder den Slave und den Master können in beliebiger Weise definiert werden,
so dass der Anwender mit sinnvollen Werten arbeiten kann.
Die Faktoren SYNCFACTM / SYNCFACTS, POSFACT_Z / POSFACT_N sind ab Version MCO 5.00 nicht mehr auf
kleine Werte begrenzt.
Intern werden sie wie folgt behandelt: Wann immer ein Wert mit einem Getriebefaktor multipliziert werden
muss (d.h. Master Inkremente per ms), wird zuerst geprüft, ob eine Multiplikation einen Überlauf erzeugt.
Falls dies der Fall wäre, wird ein Faktor (64 Bit) benutzt, bestehend aus
SYNCFACTS/SYNCFACTM zum Multiplizieren von delta_master.
Falls kein Überlauf entsteht, wird zuerst mit SYNCFACTS multipliziert und dann durch SYNCFACTM geteilt.
Der Fehler wird wie folgt behandelt:
Normaler Fall
Die Multiplikation mit SYNCFACTS erzeugt keinen Fehler, aber die Division durch SYNCFACTM besagt, dass
das Ergebnis um 1/2³² falsch sein kann. Das bedeutet, dass (im schlimmsten Fall) solch ein Fehler jede ms
auftritt, d.h. dass nach 1193 Stunden (49,71 Tage) ein Fehler von 1 qc (Slave) gemacht wird.
Hohe Faktor-Werte
In diesem Fall könnte der benutzte Faktor selbst (SYNCFACTS/SYNCFACTM) um 1/2³²
falsch sein. Das heißt,
dass im schlimmsten Fall jede ms ein Fehler von delta_master * 1/2³² auftritt. Angenommen, es wird ein
Drehgeber mit 1000 Strichen (4000 qc) pro Umdrehung eingesetzt. Weiter angenommen, dass mit
2000 U/min gefahren wird, d.h. mit einer Geschwindigkeit von 133 qc/ms. Das bedeutet, dass ein Fehler
von 133 * 1/2³²
per ms gemacht wird. Daraus folgt, dass im schlimmsten Fall (maximaler Fehler jede ms
immer in der gleichen Richtung) ein Fehler von 1 qc nach 9 Stunden entstehen könnte.
Das sollte in den meisten Anwendungen nicht relevant sein.
6MG.34.R1.03 – VLT
®
ist ein eingetragenes Warenzeichen von Danfoss.
MCO 305 Befehlsreferenz
__ MCO 305 Befehlsreferenz lesen __
Benutzereinheiten [BE]
Wegangaben in Fahrbefehlen erfolgen immer in Benutzereinheiten und werden intern in Quadcounts umgerechnet. Diese wirken sich auf alle Befehle für das Positionieren aus: z.B. APOS, POS.
Auch für die Kurvenscheibensteuerung kann der Anwender sinnvolle Einheiten wählen, um die Kurve für den
Master und den Slave zu beschreiben. Zum Beispiel 1/100 mm oder bei Anwendungen, bei denen eine Umdrehung betrachtet wird 1/10 Grad.
Bei der Kurvenscheibensteuerung wird der maximale Fahrabstand des Slaves bzw. die Zykluslänge des
Slaves in Benutzereinheiten BE [qc] angegeben.
Sie normieren die Einheit mit einem Faktor. Dieser ist ein Bruch, der sich aus Zähler und Nenner zusammensetzt:
Die Normierung bestimmt, wie viele Quadcounts eine Benutzereinheit ergeben: Wenn der Faktor zum
Beispiel 50375/1000 beträgt, entspricht eine BE genau 50,375 qc.
ACHTUNG!:
Wenn die Benutzereinheiten in qc umgerechnet werden, wird der Integer-Wert benutzt. Wenn qc in
Benutzereinheiten umgerechnet werden, wird gerundet.
Master Units [MU]
Die Kurvenlänge bzw. Master-Zykluslänge und andere Angaben (zum Beispiel der Markerabstand) für die
Kurvenscheibensteuerung werden in Master-Units MU angeben.
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 7
MCO 305 Befehlsreferenz
Befehlsreferenz
Im folgenden Abschnitt finden Sie alle Befehle in alphabetischer Reihenfolge ausführlich beschrieben mit
Syntax-Beispielen sowie kurzen Programmbeispielen. Bitte lesen Sie auch den Abschnitt „Grundlagen” im
Kapitel „Programmieren” im MCO 305 Projektierungshandbuch.
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 9
MCO 305 Befehlsreferenz
__ Befehlsreferenz __
ACC
KurzinfoBeschleunigung für Fahrbefehle setzen
Syntax ACC a
Parameter a = Beschleunigung
Beschreibung Der Befehl ACC bestimmt die Beschleunigung für die nächsten Fahrbefehle
(Drehzahl-, Positionier- oder Synchronisationsmodus). Der Wert bleibt solange
gültig, bis mit einem weiteren ACC Befehl eine neue Beschleunigung gesetzt wird.
Der Wert bezieht sich auf die Parameter 32-81 Kürzeste Rampe und 32-80
Maximalgeschwindigkeit sowie 32-83 Geschwindigkeitsteiler.
ACHTUNG!:
Wurde vor einem Fahrbefehl noch keine Beschleunigung definiert, wird mit dem
Default-Wert aus Par. 32-85 Default-Beschleunigung beschleunigt.
ACHTUNG!:
Wenn die MCO 305 zum Steuern des FC 300 benutzt wird, sollten die Rampen
immer über die Optionskarte eingestellt werden und nicht im FC 300. Die FC 300Rampen müssen dabei immer auf Minimum stehen.
Rückgabewerterg = Istposition in Benutzereinheiten (BE) absolut zum aktuellen Nullpunkt
Wegangaben in Fahrbefehlen erfolgen immer in Benutzereinheiten und werden
intern in Quadcounts umgerechnet. (Siehe auch Benutzerfaktor Zähler und Nenner
in Parameter 32-12 und 32-11.)
Die Benutzereinheit (BE) entspricht in der Standardeinstellung der Anzahl Quadcounts:
Parameter
Beschreibung Der Befehl APOS kann die Position der Achse absolut zum aktuellen Nullpunkt
abfragen.
ACHTUNG!:
Wenn ein mit SETORIGIN gesetzter und aktiver Temporärnullpunkt existiert, bezieht
sich der Positionswert auf diesen Nullpunkt.
__ Befehlsreferenz __
ZählernheitBenutzerei12-32Par.
NennernheitBenutzerei11-32Par.
1
ACHTUNG!:
Das Ergebnis muss nicht der Ziel- oder Sollposition entsprechen, wenn man mit
APOS die Position abfragt. Es können sich Fehler oder Abweichungen durch die
Mechanik und den abgerundeten Dezimalstellen in den Benutzereinheiten ergeben.
APOS wird von den Parametern 32-12 und 32-11 sowie den Befehlen SETORIGIN p
und DEFORIGIN beeinflusst.
Beispiel:
POSA 2000
Initial
PRINT "Istposition erreicht", APOS
Ausgabe:
Istposition erreicht 2000
(abhängig von den PID Einstellungen könnte
eine kleine Abweichung auftreten)
Beispiel mit SETORIGIN
SETORIGIN 2000
POSA 2000
PRINT "Istposition”, APOS
Ausführung
2000
Ausgabe:
Istposition 2000
Beim Programmstart wird in diesem Beispiel die absolute Position 2000 qc als Startposition festgelegt; dann wird der Antrieb um 2000 qc entsprechend dem
Positionierbefehl weiter gefahren.
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 11
MCO 305 Befehlsreferenz
g
APOSDIFF
KurzinfoOverflow-Handling von Inkrementalgebern in Anwendungen.
Syntax erg = APOSDIFF oldpos
Parameter n = Achsnummer
oldpos = APOS zu einem früheren Zeitpunkt
RückgabewertLiefert die Differenz zwischen APOS und oldpos (erg = APOS – oldpos) in BE.
Beschreibung Dieser Befehl vereinfacht die Behandlung des Überlaufs von Inkrementalgebern in
Anwendungen. Wenn zum Beispiel der Anwender eine aktuelle Position in seinem
Pro
den Überlauf der Position berücksichtigen. Statt dessen kann dieser Befehl benutzt
werden; siehe unten.
Intern prüft diese Routine, ob die Differenz größer als POS_LIMIT (0x3FFFFFFF) ist.
Falls ja, wird angenommen, dass ein Überlauf stattfand und es wird korrekt
gehandhabt.
ACHTUNG!:
Dies löst aber nicht das Überlaufproblem wenn in der Anwendung
Benutzereinheiten BE benutzt werden.
__ Befehlsreferenz __
ramm speichert und später die Differenz berechnen will, muss er normalerweise
Portabilität
Standardbefehl ab MCO 5.00
BefehlsgruppeSYS
Querverweise APOS
Syntax-Beispieloldpos = APOS
…..
diff = APOSDIFF oldpos
// liefert die Differenz zwischen APOS und oldpos in BE
// zur Handhabung von Overflow, falls notwendig (diff = APOS – oldpos)
AVEL
KurzinfoAktuelle Geschwindigkeit der Achse abfragen.
Syntax erg = AVEL
Rückgabewerterg = aktuelle Geschwindigkeit der Achse in BE/s; Wert mit Vorzeichen
Beschreibung Diese Funktion liefert die aktuelle Geschwindigkeit der Achse in Benutzereinheiten
pro Sekunde (BE/s) zurück. Die Genauigkeit der Werte hängt von der Messdauer
(Mittelung) ab. Diese ist standardgemäß auf 20 ms eingestellt, kann aber vom
Anwender mit dem _GETVEL Befehl verändert werden. Es genügt den Befehl einmal
aufzurufen, um von da an mit einer anderen Messzeit zu arbeiten. So stellt der
Befehl:
var = _GETVEL 100
die Messdauer auf 100 ms ein, so dass man bei AVEL und MAVEL eine wesentlich
bessere Auflösung der Geschwindigkeit erhält, schnelle Änderungen dagegen erst
mit einer Verzögerung von maximal 100 ms.
BefehlsgruppeSYS
Querverweise MAVEL, APOS, _GETVEL
Syntax-BeispielPRINT AVEL /* aktuelle Geschwindigkeit der Achse am PC ausgeben */
12MG.34.R1.03 – VLT
®
ist ein eingetragenes Warenzeichen von Danfoss.
MCO 305 Befehlsreferenz
__ Befehlsreferenz __
AXEND
KurzinfoStatus der Programmausführung abfragen.
Syntax erg = AXEND
Rückgabewert erg = Achsstatus mit folgender Bedeutung:
Wert Bit
128 7 1 = Motor ist zurückgesetzt (reset), d.h. er ist startbereit und
regelt wieder, z.B. nach ERRCLR, MOTOR STOP, MOTOR ON
64 6 1 = Lageregelung ist abgeschaltet, Motor ist aus 4 - 5 nicht verwendet 8 3 1 = Motor ist im Zustand STOP 4 Bit 2 1 = Drehzahlmodus ist aktiv 2 Bit 1 1 = Positioniervorgang ist aktiv 1 Bit 0 1 = Zielposition erreicht; Motor im Stillstand
Beschreibung Der Befehl AXEND liefert den aktuellen Status der Achse bzw. den Stand der
Programmausführung.
Damit können Sie zum Beispiel abfragen, wann die „Position erreicht” ist und ein
Positionierbefehl (POSA, POSR) wirklich abgeschlossen ist. Wenn Bit 1 auf [0]
gesetzt ist, ist der Positioniervorgang abgeschlossen und die Position erreicht.
Wenn aber der Positionierbefehl mit MOTOR STOP unterbrochen wurde und später
mit CONTINUE fortgesetzt wird, dann würden folgende Bits auf [1] gesetzt sein:
das Bit 0 für „Motor ist im Stillstand”
das Bit 1 für „Positioniervorgang aktiv”
das Bit 3 für „Motor ist im Zustand STOP”
das Bit 6 für „Lageregelung abgeschaltet”
Der Befehl AXEND eignet sich besonders um im NOWAIT ON Zustand festzustellen,
ob eine Bewegung abgeschlossen ist.
Befehlsgruppe SYS
Querverweise WAITAX, STAT, NOWAIT
Syntax-BeispielNOWAIT ON // nicht warten bis Position erreicht ist
POSA 100000
WHILE (AXEND&2) DO
// Solange Positioniervorgang aktiv, Schleife wiederholen
IF IN1 THEN // wenn Eingang 1 gesetzt ist
VEL 100 // Geschwindigkeit erhöhen
POSA 100000
WAIT IN1 OFF // warten, bis Taste losgelassen
ENDIF
ENDWHILE // Position erreicht
Syntax-Beispiel IF (AXEND&64) THEN
OUT 1 1 // Ausgang 01 setzen, wenn Lageregelung abgeschaltet
ELSE
OUT 1 0
ENDIF
Programmbeispiel AXEND_01.M
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 13
MCO 305 Befehlsreferenz
j
CANDEL
KurzinfoLöscht alle oder einzelne CAN-Objekte
Syntax CANDEL objnr
Parameter objnr = Objektnummer, die beim Definition des Objektes zurück gegeben wurde
= –1 löscht alle Objekte (außer den Standardobjekten)
Beschreibung Mit dem Befehl CANDEL können CAN-Ob
DEFCANIN oder DEFCANOUT angelegt wurden.
ACHTUNG!
Standardobjekte für die gepufferte Ein-/Ausgabe (OUTMSG oder INMSG) können
damit nicht gelöscht werden. Diese können nur beim Initialisieren nicht angelegt
werden.
CANIN
Portabilität
Befehlsgruppe CAN
Syntax-Beispiel CANDEL –1 /* es werden alle CAN-Objekte gelöscht */
Optionaler Befehl; Funktion „Einzelnes Objekt löschen” ab MCO 5.00.
__ Befehlsreferenz __
ekte wieder gelöscht werden, die zuvor mit
KurzinfoLiest ein Objekt über den CAN-Bus
Syntax status = CANIN objnr timeout control varhi varlo
Parameter objnr = Objektnummer, die beim Definition des Objektes zurückgegeben
wurde.
Timeout = –1 es wird nicht auf die Daten gewartet
= 0 es wird gewartet, bis die Daten kommen
> 0 es wird
timeout [ms] auf die Daten gewartet
control = 0 es wird geprüft, ob neue Daten gekommen sind.
Anschließend werden neue Daten in die Variablen kopiert
= 1 es wird ein Remote-Frame gesendet, und es wird in
Abhängigkeit von
timeout auf die Daten gewartet
varhi Byte 0 bis 3 der CAN-Objektdaten
varlo Byte 4 bis 7 der CAN-Objektdaten
Rückgabewert status = –1 keine Daten angekommen
= 0 ok
Beschreibung Der Befehl CANIN kopiert die Daten (falls vorhanden) des CAN-Objektes objnr in
die Variablen
varhi und varlo. Wenn control = 1 ist, werden die Daten zuerst ange-
fordert.
Es ist möglich alle Transmit-PDOs eines digitalen Eingangs-Moduls oder des CAN-
Drive-Status unter Verwendung eines einzigen CAN-Telegramms zu sammeln.
Diese Funktion ist auf den Master-Bus
beschränkt. Die Funktion muss das CANObjekt 15 benutzen, das intern die Anzahl der verwendbaren CAN-Objekte auf dem
Master-Bus um 1 reduziert.
Zum Aktivieren der Funktion muss der Befehl CANINI 999 benutzt werden
Dieser Befehl aktiviert den Empfang der TxPDOs durch Interrupt und speichert
jedes erhaltene PDO in einen Puffer mit der Tiefe von 1. Dies funktioniert für alle
IDs von 1 bis 127. Das heißt, wenn irgendein I/O-Modul in diesem Bereich ein
TxPDO sendet, wird es erfasst und im Puffer gespeichert. Das nächste TxPDO des
gleichen Moduls überschreibt natürlich das erste. Der Puffer kann mit folgendem
Befehl ausgelesen werden:
erg = CANIN (id * 100) timeout 0 hi lo
14MG.34.R1.03 – VLT
®
ist ein eingetragenes Warenzeichen von Danfoss.
MCO 305 Befehlsreferenz
__ Befehlsreferenz __
Dieser Befehl liefert -1 wenn keine neue Information im Puffer war, andernfalls
liefert er 0. Timeout kann normal benutzt werden:
-1 wartet nicht,
0 wartet auf neue Information (ohne Abbruch),
n wartet n ms.
Das Ergebnis wird in hi und lo geliefert, aber es wird gleich in Bytes angeordnet, so
dass diese benutzt werden können, falls sie mit PDO[] gelesen werden. Das heißt,
wenn lo eine 32-Bit Zahl enthält, kann es sofort benutzt werden, ohne die Bytes
neu zu ordnen.
Wann immer ein neuer CANINI Befehl benutzt oder ein neues Programm gestartet
wird, ist diese Funktion deaktiviert.
Natürlich beansprucht diese Funktion den Prozessor weil sie starken PDO Traffic auf
dem Bus verursacht.
Es ist nicht
Befehlen auf dem gleichen Bus zu verwenden. Dies kann zu unerwarteten Ergebnissen führen. Wenn zum Beispiel ein digitales CANopen-I/O-Modul mit ID 3 auf
dem Master-Bus mit einem IN (3*256+1) oder CANINI 3 999 benutzt wird, wird
dies zu einer Situation führen, in der der Befehl IN zwar arbeitet, aber es werden
nicht die PDOs mit den oben beschriebenen CANIN Befehl geliefert. Der Grund
hierfür ist, dass zwei CAN-Objekte mit der gleichen ID existieren. In diesem Fall
bedient der Prozessor nur die erste. Wie oben erwähnt, wird Objekt 15 für den
Empfang von allen PDOs benutzt, in diesem Fall also das letzte.
Portabilität Optionaler Befehl;
erweiterte Befehle CANINI und CANIN für den Einsatz eines einzigen CANTelegramms ab MCO 5.0.
Befehlsgruppe CAN
Querverweise CANOUT, CANDEL, DEFCANOUT, DEFCANIN
Syntax-BeispielMSG = 0
temp = 0 /* Variablen definieren */
rx1 = DEFCANIN 42 8 /* es wird ein RX-Objekt angelegt */
STAT = CANIN rx1 1000 0 MSG temp /* 1s auf Daten warten */
Programmbeispiel CAN_sample.M, CANIN.M
empfehlenswert diese Funktion gemeinsam mit anderen CAN-IO
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 15
MCO 305 Befehlsreferenz
CANINI
KurzinfoInitialisiert die notwendigen Objekte (PDOs) für den Datenaustausch mit CANopen-
Teilnehmern oder aktiviert die erweiterte CANINI, CANIN Funktion.
Syntax CANINI nr, nr, nr, …,
CANINI 999
CANINI nr, nr, 999, nr
ist auch möglich, jedoch nur im gleichen Befehl. Der nächste neue Befehle würde
sonst die vorhergehenden Parameter löschen.
Parameter nr = guard * (busoffset * 1000 + id)
guard = –1, +1 (ohne / mit Guarding)
busoffset = 100000 , 0 (Slave-Bus, Master-Bus)
Beispiele für CANINI Werte:
Beschreibung Der Befehl CANINI nimmt Kontakt zu den CAN-Modulen auf und legt entsprechende
permanente CAN-Objekte an, um mit diesen Modulen kommunizieren zu können
(PDO). Das hat den Vorteil, dass diese Eingangsmodule auch für Interrupt-Funktionen verwendet werden können ohne den Bus permanent zu belasten.
Wenn Sie keine Interrupts benötigen, können Sie mit CANINI die Abarbeitung der
Befehle IN und INB beschleunigen, da die entsprechenden Module dann bei jeder
Zustandsänderung eines Eingangs diese Information selbstständig schicken.
Es wird dringend empfohlen Eingangsmodule die mit CANINI initialisiert wurden
auch mit Guarding zu überwachen (d.h. CANINI > 0), um sicherzustellen, dass das
Modul noch präsent ist und an der Bus-Kommunikation teilnimmt. Falls ein Teilnehmer nicht mehr vorhanden ist, wird durch die fehlende Rückantwort auf das GUARDObjekt ein Fehler 188 ausgelöst. Auf diesen kann dann in der mit ON ERROR
definierten Fehlerbehandlung reagiert werden.
Wenn CANINI für Antriebe ausgeführt wird, wird ein entsprechendes PDO erzeugt
und – falls notwendig – auch das SYNC Objekt. Wenn die Überwachung gestartet
wird, wird alle 20 ms ein Guarding-Telegramm zu einem Modul gesendet. Sind zum
Beispiel 4 Module vorhanden, dauert es 80 ms, um jedes Modul zu überprüfen.
Wenn innerhalb von 100 ms keine Antwort kommt, wird der Fehler 188 (guarding
error) angezeigt.
Es können maximal 16 Module intern gespeichert werden.
Jeder erneute CANINI Befehl initialisiert alle, früher mit CANINI angelegten Objekte,
d.h. die Überwachung (GUARD) und auch die SYNC Telegramme werden gestoppt.
Allerdings nicht, wenn es permanente Objekte von einem Parameter
30
automatisch angelegten PDOs gemäß der Definition in den Parametern 32-00 und
32-30.
Der CANINI Befehl startet gleichzeitig die Module, d.h. für jedes Modul wird eine
NMT0 Meldung gesendet, um das Modul auf den Status „betriebsbereit” zu setzen.
Wenn CANINI fehlschlägt kann die SYSVAR 67 [0x01220244] GuardErrorId ausgelesen werden, um herauszufinden welche ID das Problem verursacht hat.
__ Befehlsreferenz __
0 Löscht alle zuvor mit CANINI definierten Objekte
Aktiviert den Empfang von allen TPDO1s (0x181-0x1FF) durch
999
Interrupt und speichert jeden erhaltenen PDO in einen Puffer mit der
Tiefe 1.
1…127 CAN I/O mit Bus-ID 1…127 mit Guarding
–1…–127 CAN I/O mit Bus-ID 1…127 ohne Guarding
32-00 oder 32-
Inkrementalgeber Signaltyp gibt. Diese bleiben ebenso erhalten, wie die intern
16MG.34.R1.03 – VLT
®
ist ein eingetragenes Warenzeichen von Danfoss.
MCO 305 Befehlsreferenz
__ Befehlsreferenz __
Portabilität
Befehl ab MCO 5.00 verfügbar.
ACHTUNG!
Falls der CANINI Befehl auf Steuerungen mit mehreren, getrennten CAN-BusKreisen eingesetzt wird, wird die GUARD- und SYNC-Funktionalität nur auf dem so
genannten Slave-Bus unterstützt.
Befehlsgruppe SYS
Querverweise IN, INAD, INB, OUT, OUTB, OUTDA,
32-00 oder 32-30
Par.
Syntax-Beispiel CANINI 1,2,3,4
/* Initialisieren der CAN-Module mit voreingestellter Teilnehmernummer */
Programmbeispiel CAN_sample.M
CANOUT
KurzinfoNachricht mit interner Nummer abschicken
Syntax CANOUT nr werthi wertlo
Parameter werthiByte 0 bis 3 der CAN-Objektdaten
wertlo Byte 4 bis 7 der CAN-Objektdaten
Beschreibung Mit diesem Befehl wird eine CAN-Nachricht von einem durch DEFCANOUT definierten
Sendeobjekt abgeschickt. Die Werte
Portabilität
Befehlsgruppe CAN
Querverweise CANIN, CANDEL, DEFCANIN, DEFCANOUT
Syntax-Beispiel wertlhi = 21
optionaler Befehl
wertlo = 41
tx1 = DEFCANOUT 500 8
/* ein TX-Objekt mit Id=500 und Datenlänge = 8 Bytes wird definiert */
CANOUT tx1 valhi vallo /* eine CAN-Nachricht wird gesendet */
Inkrementalgeber Signaltyp
hi und lo sind 4 Bytes lang.
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 17
MCO 305 Befehlsreferenz
COMOPTGET
KurzinfoLiest ein Telegramm der Kommunikationsoption.
Syntax COMOPTGET anz array
Parameter array = der Name eines Arrays, das mindestens die Größe 'anz' haben muss
anz = Anzahl Datenworte, die gelesen werden sollen
Beschreibung COMOPTGET liest aus dem Puffer der Kommunikationsoption 'anz' Datenworte aus
und schreibt sie in das Array 'array' beim ersten Element beginnend.
Kompatibilität Mit eingebauter Kommunikationsoption.
Kommunikations-
option
Kontrolldaten Die Funktion des Steuerwortes (STW) und der Hauptsollwertes (HSW) hängt davon
ProzessdatenPCD's 1 – 4 von PPO Typ 2/ 4 und PCD's 1 – 8 von PPO Typ 5 sind nicht mit einer
BefehlsgruppeKommunikationsoption
Querverweis COMOPTSEND
Programmbeispiel COM_OPT
Funktion der Kommunikationsoption: Parameter: Die Lese- und Schreibparameter
werden von der Optionskarte nicht verändert.
ACHTUNG!:
Die Parameter 9-15 und 9-16 müssen zusätzlich mit den richtigen Werten gesetzt
werden.
ab, wie der Par. 33-82
(ZSW) und der Hauptistwert (HIW) sind immer aktiv.
„MCO 305 EIN” „MCO 305 AUS”
STW/HSW nicht aktiv aktiv
ZSW/HIW aktiv aktiv
Parameternummer 9-15 und 9-16 festgelegt, sondern können frei in einem APOSSProgramm benutzt werden.
Der Befehl COMOPTGET kopiert die empfangenen Daten der Kommunikationsoption
in ein Array, in dem jedes Array-Element ein Datenwort (16 Bit) enthält.
Der Befehl COMOPTSEND kopiert die Daten von einem Array, in dem jedes Array
Element ein Datenwort (16 Bit) enthält, in einen Sendepuffer der Kommunikationsoption, von dem es via Netzwerk zum Master gesendet wird.
__ Befehlsreferenz __
Statusüberwachung Antrieb gesetzt ist; das Zustandswort
Parameter 33-82 Parameter 33-82
COMOPTSEND
KurzinfoSchreibt in den Puffer der Kommunikationsoption.
Syntax COMOPTSEND anz array
Parameter array = Name eines Arrays, das mindestens die Größe 'anz' haben muss
anz = Anzahl der Datenworte, die gesendet werden sollen
Beschreibung COMOPTSEND schreibt in den Puffer der Kommunikationsoption. Dabei werden aus
'array' die ersten 'anz' Datenworte gesendet.
Kompatibilität Mit eingebauter Kommunikationsoption.
Kommunikations-
Funktion der Kommunikationsoption: Siehe COMOPTGET Befehl
option
BefehlsgruppeKommunikationsoption
Querverweis COMOPTGET
Programmbeispiel COM_OPT
18MG.34.R1.03 – VLT
®
ist ein eingetragenes Warenzeichen von Danfoss.
MCO 305 Befehlsreferenz
__ Befehlsreferenz __
CONTINUE
KurzinfoAbgebrochene Positionier- und Drehzahlbefehle fortsetzen.
Syntax CONTINUE
Beschreibung Mit dem Befehl CONTINUE können Positionier- und Drehzahlbefehle, die durch den
Befehl MOTOR STOP oder einen Fehlerzustand abgebrochen oder mit MOTOR OFF
angehalten wurden, fortgesetzt werden.
CONTINUE kann besonders in einem Fehlerunterprogramm in Verbindung mit dem
Befehl ERRCLR eingesetzt werden, um nach einem Fehlerabbruch den Bewegungsablauf korrekt weiterzuführen.
ACHTUNG!:
CONTINUE setzt aber nicht abgebrochene Synchronisationsbefehle fort.
KurzinfoAktuelle Sollposition einer Achse abfragen.
Syntax erg = CPOS
Rückgabewert erg = Absolute Sollposition in Benutzereinheiten (BE) bezogen auf den aktuellen
Nullpunkt
Beschreibung Mit dem Befehl CPOS kann die aktuelle Sollposition einer Achse absolut zum aktuel-
len Nullpunkt abgefragt werden. Unter der Sollposition versteht man die temporäre
Sollposition, die durch die Lageregelung während eines Positioniervorgangs oder
einer Bewegung im Drehzahlmodus jede ms neu berechnet wird.
Die Sollposition kann unabhängig vom Betriebszustand (Lageregelung im Stillstand,
Positioniervorgang, Drehzahlregelung oder Synchronisation) abgefragt werden.
ACHTUNG!:
Wenn ein mit SETORIGIN gesetzter und aktiver Temporärnullpunkt existiert, ist der
Positionswert auf diesen Nullpunkt bezogen.
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 19
MCO 305 Befehlsreferenz
CPOSDIFF
KurzinfoOverflow-Handling von Inkrementalgebern in Anwendungen.
Syntax erg = CPOSDIFF oldpos
Parameter oldpos = CPOS zu einem früheren Zeitpunkt
RückgabewertLiefert die Differenz zwischen CPOS und oldpos (erg = CPOS – oldpos) in BE.
Beschreibung Dieser Befehl vereinfacht die Behandlung des Überlaufs von Inkrementalgebern in
Anwendungen. Wenn zum Beispiel der Anwender eine aktuelle Position in seinem
Programm speichert und später die Differenz berechnen will, muss er normalerweise
den Überlauf der Position berücksichtigen. Statt dessen kann dieser Befehl benutzt
werden; siehe unten.
Intern prüft diese Routine, ob die Differenz größer als POS_LIMIT (0x3FFFFFFF) ist.
Falls dies der Fall ist, wird angenommen, dass ein Überlauf stattfand und korrekt
behandelt.
ACHTUNG!:
Dies löst aber nicht das Problem des Überlaufs, wenn in der Anwendung Benutzereinheit BE verwendet werden.
__ Befehlsreferenz __
Portabilität
Standardbefehl ab MCO 5.00
BefehlsgruppeSYS
Querverweise CPOS
Syntax-Beispieloldpos = CPOS
…..
diff = CPOSDIFF oldpos
// liefert die Differenz zwischen CPOS und oldpos in BE
// Behandlung eines Overflows falls notwendig (diff = CPOS – oldpos)
CSTART
KurzinfoStarten des Drehzahlmodus.
Syntax CSTART
Beschreibung Mit dem Befehl CSTART wird ein drehzahlgeregelter Fahrbefehl gestartet.
Die Beschleunigungsrampe sowie die Drehzahl sollte vor dem Starten des Drehzahlmodus mit den Befehlen ACC, DEC und CVEL festgelegt werden.
CSTART enthält nicht den Befehl MOTOR ON der die Motorregelung einschaltet.
Nach vorangegangenem MOTOR OFF ist bei Verwendung von CSTART also ein
explizites Aufrufen von MOTOR ON notwendig.
ACHTUNG!:
Wenn zum Zeitpunkt des CSTART noch kein Drehzahlwert mit CVEL definiert wurde,
wird die Default-Geschwindigkeit 0 verwendet. Der Motor dreht sich nicht, die Lageregelung ist aber aktiv.
Alle nach dem Start des Drehzahlmodus folgenden CVEL Befehle werden sofort
ausgeführt: Es wird sofort eine entsprechende Drehzahlanpassung mit der durch
ACC bzw. DEC definierten Beschleunigungs- bzw. Bremsrampe vorgenommen.
Befehlsgruppe DRE
Querverweise ACC, DEC, CVEL, CSTOP
Syntax-Beispiel CSTART /* Drehzahlmodus starten */
Programmbeispiel CMODE_01.M
20MG.34.R1.03 – VLT
®
ist ein eingetragenes Warenzeichen von Danfoss.
MCO 305 Befehlsreferenz
__ Befehlsreferenz __
CSTOP
KurzinfoStoppen des Antriebs im Drehzahlmodus.
Syntax CSTOP
Beschreibung Mit dem CSTOP Befehl wird der Modus Drehzahlregelung verlassen und in den
Positioniermodus geschaltet. Dabei wird eine noch drehende Achse mit der durch
DEC definierten Verzögerung abgebremst und der Motor in der Stopp-Position
angehalten.
ACHTUNG!:
Ein im Positioniermodus ausgeführter CSTOP Befehl führt ebenfalls zu einem
abrupten Abbrechen des Positioniervorgangs.
Befehlsgruppe DRE
Querverweise ACC, DEC, CVEL, CSTART
Syntax-Beispiel CSTOP /* Drehzahlmodus stoppen */
Programmbeispiel CMODE_01.M
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 21
Rückgabewert erg = Slave-Position in CAM-Einheiten (BE) absolut zum aktuellen Nullpunkt.
Beschreibung Mit dem Befehl CURVEPOS kann die Slave-Kurvenposition, die der aktuellen
Master-Position entspricht, abgefragt werden.
Die Position kann unabhängig vom Betriebszustand (Lageregelung im Stillstand,
Positioniervorgang, Drehzahlregelung oder Synchronisation) abgefragt werden.
CMASTERCPOS (SYSVAR) und CURVEPOS werden aktualisiert, auch wenn SYNCC
nicht weiter aktiv ist. Die Aktualisierung dieser Werte beginnt nach einem
SETCURVE Befehl (wenn Par. 33-23
SYNCC und den ersten Master-Marker (wenn Par. 33-23 = 2000).
Die Aktualisierung wird also auch nach dem Stoppen des SYNCC Befehls fortgeführt, wenn Par. 33-23
ACHTUNG!:
Die Position ist nur definiert, wenn zuvor ein SETCURVE gesetzt wurde.
__ Befehlsreferenz __
Startverhalten für Sync ist < 2000) oder nach
Startverhalten für Sync. < 2000.
ACHTUNG!:
Wenn ein mit SETORIGIN gesetzter und aktiver Temporärnullpunkt existiert,
bezieht sich der Positionswert auf diesen Nullpunkt.
ACHTUNG!:
DEFMCPOS und DEFMORIGIN können diese Position noch verändern.
Syntax-BeispielPRINT CURVEPOS // aktuelle Slave-Position der Kurve ausgeben
Beispiel
Fixpunkte einer Kurve:
Master Slave
0
500
700
1000
0
500
300
1200
Wir nehmen an, dass die aktuelle Master-Position 800 sei. Dann gibt CURVEPOS
die entsprechende Slave-Position von 450 aus.
Fall 1: Istposition Master ist 800 und Istposition Slave ist 200.
CURVEPOS gibt den Wert 450 aus.
Fall 2: Istposition Master ist 800 und Istposition Slave ist 700.
CURVEPOS gibt den Wert 450 aus.
Also ist CURVEPOS unabhängig von der Slave-Position.
22MG.34.R1.03 – VLT
®
ist ein eingetragenes Warenzeichen von Danfoss.
MCO 305 Befehlsreferenz
CVEL
KurzinfoGeschwindigkeit für drehzahlgeregelte Motorbewegungen setzen.
Syntax CVEL v
Parameter v = Normierter Geschwindigkeitswert (negativ für andere Drehrichtung)
__ Befehlsreferenz __
*V[U/Min]indigkeitSollgeschw
Beschreibung Mit dem CVEL Befehl wird die Geschwindigkeit für die nächsten drehzahlgeregelten
itchwindigkeMaximalges80-32Par.
ergkeitsteilGeschwindi83-32Par.
Motorbewegungen gesetzt. Der Wert bleibt solange gültig bis mit einem weiteren
CVEL Befehl eine neue Geschwindigkeit gesetzt wird.
Der zu übergebende Geschwindigkeitswert bezieht sich auf die Parameter 32-80
Maximalgeschwindigkeit und 32-83 Geschwindigkeitsteiler.
ACHTUNG!:
CVEL Befehle, die nach einem CSTART folgen, werden sofort ausgeführt, das heißt
die Geschwindigkeit wird mit der durch ACC/DEC vorgegebenen Beschleunigung
bzw. Verzögerung auf den mit CVEL übergebenen Wert angepasst.
Wurde vor dem Starten des Drehzahlmodus (CSTART) noch keine Geschwindigkeit
definiert, beträgt die Standardvorgabe 0. Der Motor dreht sich nicht und erst eine
Geschwindigkeitsvorgabe mit CVEL startet die Bewegung im Drehzahlmodus.
Beschreibung Mit dem Befehl DEC bestimmen Sie die Verzögerung (negative Beschleunigung) für
die nächsten Fahrbefehle im Drehzahl-, Positionier- oder Synchronisationsmodus.
Der Wert bleibt solange gültig, bis mit einem weiteren Befehl DEC eine neue Ver-
zögerung gesetzt wird. Der Wert bezieht sich auf die Parameter 32-81
Rampe
ACHTUNG!:
Wurde vor einem Positionierbefehl noch keine Verzögerung definiert, wird mit dem
in Parameter 32-85
ACHTUNG!:
Wenn Sie mit MCO 305 arbeiten, dann sollten Sie immer die Rampen mittels der
Optionskarte setzen und nicht im FC 300. Die FC Rampen müssen dabei immer auf
Minimum stehen.
dlen = Datenlänge des Objektes in Bytes (max. 8 Bytes)
Rückgabewert objnr
Ein positiver Wert bedeutet, dass ein Ob
ist eine interne Nummer des Objektes und wird von anderen APOSS-CAN-Befehlen
benutzt. Ein negativer Wert meldet einen Fehler.
Beschreibung Mit diesem Befehl wird im CAN-Controller ein Empfangs-Kommunikations-Objekt
definiert.
Dieser Befehl kann auch mit dem Offset für den Slave-Bus genutzt werden
(Telegramm ID 100000).
Diese Objekte können nun einzeln mit dem Befehl CANDEL objnr gelöscht werden,
objnr die Nummer ist, die von DEFCANIN oder DEFCANOUT zurückgegeben
var2 = 0
rx1= DEFCANIN 500 8
/* es wird ein RX-Objekt mit Id=500 und Datenlänge = 8 Bytes definiert */
CANIN rx1 0 0 var1 var /* es wird eine CAN-Nachricht gelesen */
ekt erfolgreich angelegt wurde. Dieser Wert
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 25
MCO 305 Befehlsreferenz
j
g
DEFCANOUT
KurzinfoDefiniert ein Sendeobjekt im CAN-Controller
Syntax objnr = DEFCANOUT id dlen
Parameter id = CAN-Identifikationsnummer
dlen = Datenlänge des Objektes in Bytes (max. 8 Bytes)
Rückgabewert objnr
Ein positiver Wert bedeutet, dass ein Ob
ist eine interne Nummer des Objektes und wird von anderen APOSS-CAN-Befehlen
benutzt. Ein negativer Wert meldet einen Fehler.
Beschreibung Mit diesem Befehl wird im CAN-Controller ein Objekt definiert. Das Objekt ist ein
Sendeobjekt mit Länge in n-Bytes und der CAN-Identifizierung (id). Objnr ist dann
eine interne Nummer des Objektes ld und wird vom Befehl CANOUT benutzt.
Dieser Befehl kann mit dem Offset für Slave-Bus auch genutzt werden (Telegramm
ID 100000).
Diese Objekte können mit dem Befehl CANDEL objnr nun einzeln gelöscht werden,
objnr die Nummer ist, den von DEFCANIN oder DEFCANOUT zurückgegeben
wobei
wird.
Portabilität
Befehlsgruppe CAN
Querverweise DEFCANIN, CANOUT, CANIN
Syntax-Beispiel nr = DEFCANOUT 500 8
Der Befehl ist ab MCO 5.00 verfügbar.
// wird ein Objekt mit id =500 und Länge 8 Bytes definiert,
// die Funktion liefert eine 1 zurück,
// eine Nachricht mit id =500 und langen 8 Bytes kann jetzt mit
// dem Befehl CANOUT 1 wert1 wert2 abgeschickt werden */
nr = DEFCANOUT id len
__ Befehlsreferenz __
ekt erfolgreich angelegt wurde. Dieser Wert
DEFCORIGIN
KurzinfoSollposition als Nullpunkt setzen
Syntax DEFCORIGIN
Beschreibung Mit dem DEFCORIGIN Befehl wird die Sollposition als Nullpunkt gesetzt. Alle absolu-
ten Positionierbefehle (POSA etc.) beziehen sich fortan auf diesen Nullpunkt.
Auf diese Weise wird CPOS auf Null
DEFCORIGIN /* Sollposition als Nullpunkt definieren */
26MG.34.R1.03 – VLT
®
ist ein eingetragenes Warenzeichen von Danfoss.
MCO 305 Befehlsreferenz
DEFMCPOS
KurzinfoAnfangsposition des Masters definieren.
Syntax DEFMCPOS p
Parameter p = Position in Benutzereinheiten (MU)
Beschreibung DEFMCPOS definiert die Anfangsposition des Masters (in MU) im CAM-Modus und
somit, wo die Kurve startet, sobald die Masterpulse gezählt werden.
Befehlsgruppe CAM
Querverweise DEFMORIGIN, SETMORIGIN, SYNCC,
Parameter: 33-23
Syntax-BeispielDEFMCPOS 1000 // internen MU-Zähler auf 1000 setzen
BeispielDEFMCPOS positioniert die physikalische Ist-Master-Position auf die angegebene
Master-Kurvenposition ungeachtet dessen, was im MAPOS Befehl steht.
__ Befehlsreferenz __
Startverhalten für Sync.
DEFMORIGIN
Beschreibung DEFMORIGIN definiert die aktuelle Master-Position als Nullpunkt für den Master.
Wenn ein DEFMCPOS 500 begonnen ist, wird die physikalische Position des Masters
als Position 500 der Kurve definiert.
Wenn ein DEFMCPOS 500 begonnen ist, wird die physikalische Position des Masters
als Position 500 der Kurve definiert.
KurzinfoAktuelle Master-Position als Nullpunkt für den Master setzen.
Syntax DEFMORIGIN
Die Master-Position (MAPOS) bezieht sich bis zu einer erneuten Definition mit
DEFMORIGIN oder SETMORIGIN auf diesen Nullpunkt.
ACHTUNG!:
Der Befehl DEFMORIGIN kann bei Einsatz von Absolutgebern (siehe Par. 32-30
Inkrementalgeber Signaltyp) nicht verwendet werden.
Befehlsgruppe INI
Querverweise MAPOS, SETMORIGIN
Syntax-BeispielDEFMORIGIN /* Nullpunkt für Master definieren. */
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 27
MCO 305 Befehlsreferenz
g
__ Befehlsreferenz __
DEFORIGIN
KurzinfoIstposition als Nullpunkt setzen.
Syntax DEFORIGIN
Beschreibung Mit dem DEFORIGIN Befehl wird die Istposition als Nullpunkt
Positionierbefehle (POSA etc.) beziehen sich fortan auf diesen Nullpunkt.
Die Istposition, die in einem Positionierbefehl erreicht wird, ist die Zielposition plus
möglicher Fehler, die nicht automatisch kompensiert werden, während DEFORIGIN
ausgeführt wird.
ACHTUNG!:
Der Befehl DEFORIGIN kann bei Einsatz von Absolutgebern (siehe Par. 32-00
Inkrementalgeber Signaltyp) nicht verwendet werden.
Position vor neuem Nullpunkt 2000,
Position danach 0
Programmbeispiel DORIG_01.M, ORIG_01.M
Initial
esetzt. Alle absoluten
Nach der
0
Ausführung
(nach DEFORIGIN)
0
DEFSYNCORIGIN
KurzinfoDefiniert das Verhältnis Master:Slave für den nächsten SYNCP oder SYNCM Befehl
Syntax DEFSYNCORIGIN mcpos spos
Parameter mcpos = Master Sollposition in qc, oder
Beschreibung Dieser Befehl definiert, wie viel Abstand vor oder nach dem Slave im Verhältnis zur
oder die Startwerte für Standardkurven mit SYNCC Befehl.
Master Kurvenposition in qc
spos = Slave Sollposition oder
spos < SlaveCurveLenght = Slave Kurvenposition
spos > SlaveCurveLength = die aktuelle Kurvenposition wird als korrekte Position
innerhalb der Kurve entsprechend zur Masterposition
mcpos betrachtet
Masterposition sein soll. Damit kann das Verhältnis zwischen Master und Slave für
den nächsten SYNCP oder SYNCM Befehl definiert werden. Er setzt die interne
Slave-Sollposition auf den Wert des Slaves.
Der Wert des Masters wird für einen internen MOVE SYNCORIGIN benutzt. Dafür wird
ein MOVESYNCORIGN durch diesen Befehl überschrieben. Beide Aktionen werden in
dem Moment ausgeführt, wenn der SYNC Befehl aktiviert wird. Das garantiert, dass
Master und Slave auf die o.g. Master-Slave-Position synchronisiert werden.
Mit SYNCC kann der Befehl DEFSYNCORIGIN benutzt werden um die Startwerte für
Standardkurven wie folgt zu definieren:
28MG.34.R1.03 – VLT
®
ist ein eingetragenes Warenzeichen von Danfoss.
MCO 305 Befehlsreferenz
Dabei meldet mcpos der Steuerung, dass die aktuelle Masterposition (MAPOS) einer
Master-Kurvenposition von
spos hat zwei verschiedene Bedeutungen:
spos < SlaveCurveLenght = definiert die aktuelle Position des Slaves als die
spos > SlaveCurveLength = die aktuelle Kurvenposition wird als die korrekte
Beispiel: Angenommen die Kurve ist eine gerade Linie, die von 0,0 nach 2000,4000
mittels (master,slave) geht.
Weiterhin sei angenommen, dass der Slave auf der Position 11000 qc ist und dass
der Master eine aktuelle Position von 15000 qc hat. Um es einfach zu machen, sei
angenommen, dass die Getriebefaktoren 1 : 1 sind.
Wenn nun ein SETCURVE ohne irgendwelche weiteren Befehle durchgeführt wird,
passiert Folgendes: Die Steuerung versucht zu herauszufinden, wo sich der Slave
innerhalb einer Kurve befindet. Daher berechnet sie den Rest von 11000 / 4000,
welcher 3000 ist und den Rest von 15000 / 2000, welcher 1000 ist. Das heißt, das
Ergebnis wäre eine aktuelle MCPOS (Master-Kurvenposition) von 1000. Daher sollte
die entsprechende Slave-Kurvenposition 2000 sein. Tatsächlich ist der Slave aber in
diesem Moment auf einer Kurvenposition von 3000. (Die csstart Position ist die
Startposition der letzten Kurve, welche in unserem Fall 8000 sein würde.) Wenn
diese Kurve gestartet wird, würde der Slave versuchen die Position zu korrigieren
und auf 2000 fahren.
Wenn nun der Befehl
DEFSYNCORIGIN 500 100000
benutzt wird, passiert Folgendes:
Die aktuelle Masterposition ist als Master-Kurvenposition 500 definiert. Und da
100000 größer ist als die Slave-Kurvenlänge 4000, entspricht die aktuelle SlavePosition (von 11000 qc) der Slave-Kurvenposition 1000, die zur Master-Kurvenposition 500 gehört. Daher wird csstart auf 10000 gesetzt. Wenn nun die Kurve
gestartet wird, wird sie korrekt berechnet und folgt der Kurve, sobald der Master
die Fahrbewegung startet.
DEFSYNCORIGIN in Verbindung mit CU_GRAD Kurven (Typ 3)
Im Fall einer CU_GRAD Kurve, kann DEFSYNCORIGIN benutzt werden, um die
absolute Endposition einer Kurve in qc zu definieren. In diesem Fall wird die Kurve
sofort gestartet und in so berechnet, dass die Endpositionen am Ende der Kurve
ereicht werden.
ACHTUNG!
Um degenerierte Polynome zu vermeiden, muss der Abstand in einer korrekten
Relation stehen. Wenn mit der Geschwindigkeit Null gestartet wird, die in einer
Geschwindigkeit 1 enden soll (Slave hat die gleiche Geschwindigkeit wie der
Master), dann sollte die Masterdistanz geringer sein, als die zweifache SlaveDistanz. Andernfalls wird das Polynom innerhalb des Intervalls Schwankungen
aufweisen. In anderen Fällen ist dies schwieriger vorauszuberechnen (Startgeschwindigkeit nicht 0 oder Endgeschwindigkeit nicht 1). Deshalb kann man das
PG_FLAG_CURVE_ERR prüfen, um zu sehen, ob die letzte SETCURVE eine Kurve mit
Schwankungen produzierte (siehe STAT). Dann kann man die SYSVAR
PFG_LASTERROR auslesen (siehe SDO Dictionary) um zu entscheiden, was die
Ursache war.
__ Befehlsreferenz __
mcpos entspricht.
Slave-Kurvenposition
Position innerhalb der Kurve betrachtet, die der Masterposition
tung, sie muss nur größer als die Slave-Kurvenlänge sein).
mcpos entspricht (spos selbst hat keine Bedeu-
spos.
MG.34.R1.03 – VLT® ist ein eingetragenes Warenzeichen von Danfoss. 29
MCO 305 Befehlsreferenz
Portabilität Definition der Startwerte für Kurven ist ab MCO 5.00 möglich.
Befehlsgruppe SYN
Querverweise MOVESYNCORIGIN
BeispielIn diesem Beispiel soll der Slave auf Position 4000 qc sein, wenn der Master auf
2000 qc ist, d.h. der Slave sollte einen Vorsprung von 2000 qc auf den Master
haben.
Ebenso soll der Slave auf Position 5000 qc sein, wenn der Master auf 3000 qc ist.
__ Befehlsreferenz __
30MG.34.R1.03 – VLT
®
ist ein eingetragenes Warenzeichen von Danfoss.
Loading...
+ 137 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.