Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen

Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 1:

In den folgenden Beispielen wird zu Vereinfachung die DIN-Syntax mit kanalspezifischer Ausgabe verwendet. Die Parametrierung erfolgt mit dem bekannten Parameter P-CHAN-00041 (m_synch[..]).

MVS_SVS

Freigabe der Bewegung erst nach Quittierung der M-Funktion durch die PLC

Initialisierung in der Kanalparameterliste

m_synch[..] 0x2

Programmierbeispiel

N20 G00 X25
N30     X50
N40     X75 M25 (M25 vom Typ MVS_SVS )
N50 G01 X100 F2000
N60 X125 Z100
M30
Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 2:
Abbildung 1-1: Synchronisationsart MVS_SVS

Bei Bearbeitung des Satzes N40 wird M25 ausgegeben und vor Beginn der Bewegung in N40 auf die Quittierung der PLC gewartet.

MVS_SNS

Bearbeitung des nachfolgenden CNC-Satzes erst nach Quittierung der M-Funktion durch die PLC.

Initialisierung in der Kanalparameterliste

m_synch[..] 0x4

Programmierbeispiel

N20 G00 G90 X25
N30     X50
N40     X75 M25 (M25 vom Typ MVS_SNS )
N50 G01 X100 F2000
N60     X125 Z100
M30
Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 3:
Abbildung 1-2: Synchronisationsart MVS_SNS

Bei Bearbeitung des Satzes N40 wird M25 ausgegeben und die Bewegung fortgesetzt. Ist die Quittierung von M25 nicht rechtzeitig erfolgt, so wird am Ende von N40 angehalten.

MNS_SNS

Anhalten am Satzende bis zur Quittierung der M-Funktion durch die PLC.

Initialisierung in der Kanalparameterliste

m_synch[..] 0x8

Programmierbeispiel

N20 G00 X25
N30     X50
N40     X75 M25 (M25 vom Typ MNS_SNS )
N50 G01 X100 F2000
N60 X125 Z100
M30
Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 4:
Abbildung 1-3: Synchronisationsart MNS_SNS

Nach Bewegung in N40 wird in jedem Fall angehalten und nach Ausgabe von M25 auf die Quittierung durch die PLC gewartet.

MNE_SNS

Die Ausgabe der M-Funktion wird durch ein Ereignis ausgelöst. Bewegungsfreigabe über das Satzende hinaus erst nach Quittierung der M-Funktion durch die PLC.

Initialisierung in der Kanalparameterliste

m_synch[..] 0x20

Programmierbeispiel

N05 X0 Y0
N10
G108 (Start Messen Kantenstoßen)
N20 G01 X90 Y90
F20
N30 G01 X150 Y150
M33 F8 (M33 vom TypMNE_SNS)
N40
G107 (Ende Messen Kantenstoßen)
N50 G00 X200 Y200
M30
Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 5:
Abbildung 1-4: Synchronisationsart MNE_SNS

Ein Messereignis in N30 führt zur Ausgabe von M33. Dann wird noch der durch das Messverfahren bestimmte Restweg zurückgelegt. Anschließend wird auf die Quittierung von M33 durch die PLC gewartet.

MVS_SLM

Satzübergreifende, implizite Synchronisation bei Übergang zum nächsten Vorschub-Bewegungssatz (G01, G02, G03). Bewegungsfreigabe über das Ende dieses Bewegungssatzes hinaus erst nach Quittierung der M-Funktion durch die PLC

Initialisierung in der Kanalparameterliste

m_synch[..] 0x4000

Programmierbeispiel

N05 M24     (M24,Synchronisationstyp MVS_SLM)
N10 M25 G00 X25 (M25,Synchronisationstyp MVS_SLM)
N20 X50
N30 X75
N40 X100
N50 G01 X125 F2000  <--Triggerung von M24, M25 vor
Ausführung des Bewegungssatzes
N60 Z100
M30
Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 6:
Abbildung 1-5: Synchronisationsart MVS_SLM
Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 7:

Wird die MVS_SLM M-Funktion im Vorschubbewegungssatz programmiert, so erfolgt entsprechend MVS_SVS die Synchronisation vor Beginn dieser Bewegung.Bsp. N10 G01 F100 M24

MVS_SLP

Programmierte Synchronisation (#EXPL_SYN)

Initialisierung in der Kanalparameterliste

m_synch[..] 0x8000

Programmierbeispiel

N05 M26 G00 X25 (M26, Synchronisationstyp MVS_SLP)
N10 M27    (M27, Synchronisationstyp MVS_SLP)
N20 X50N30 X75N40 X100N50 G01 X125 F2000
N60 #EXPL SYN Triggerung von M26, M27 vor          
Ausführung des nächsten Satzes
N70 G00 X0
N80 X0 Y0
M30
Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 8:
Abbildung 1-6: Synchronisationsart MVS_SLP

Verhalten der „späten“ Synchronisation (MVS_SLM, MVS_SLP) bei Programmende

Ist nach Programmierung einer MVS_SLM M-Funktion kein Vorschub Bewegungssatz, bzw. nach Programmierung einer M-Funktion mit Synchronisationsart MVS_SLP kein #EXPL SYN mehr im aktuellen CNC-Programm vorhanden, so bleibt die M-Funktion auch über das CNC-Programmende hinaus aktiv. Eine Synchronisation findet dann in einem folgenden CNC-Programm bei Erreichen der Trigger-Bedingung statt.

Programmierbeispiel

%PRG1
N05 M26 G00
X25    (M26, Synchronisationstyp MVS_SLM)
N10 M27     (M27, Synchronisationstyp MVS_SLP)
M30   (M26, M27 am Programmende noch)
      (aktiv)
%PRG2
N10 G01 F100 X10  
<--Triggerung von M26 vor
              Ausführung der Bewegung
N20 #EXPL SYN     Triggerung von M27 vor
          Ausführung des nächsten Satzes
M30

Sind beim Start eines CNC-Programms noch ausstehende M-Funktionen mit „später“ Synchronisationsart aus dem vorangegangenen CNC-Pro-gramm vorhanden, so kann hier grundsätzlich eine Synchronisation erzwungen werden.

Hierzu ist der Kanalparameter P-CHAN-00033 (late_sync_ready) mit 1 zu belegen.

Initialisierung in der Kanalparameterliste

late_sync_ready 1

Programmierbeispiel

%PRG1
N05 M26 G00 X25 (M26, Synchronisationstyp MVS_SLM)
N10 M27 (M27, Synchronisationstyp MVS_SLP)
M30 (M26, M27 am Programmende noch aktiv)
%PRG2 <--Triggerung und warten auf Quittierung von
M26, M27 vor Start des Programms
N10 G01 F100 X10
M30

MET_SVS, MEP_SVS

Vorgezogene Ausgabe der M-Funktion gemäß Weg- oder Zeitangabe, Bewegungsfreigabe erst nach Quittierung der M-Funktion durch die PLC

Initialisierung in der Kanalparameterliste

m_synch[..] 0x01000000 (Synchronisation MEP_SVS)
m_synch[..]0x02000000 (Synchronisation MET_SVS)

Programmierbeispiel

N10 G01 X10 G90
F5000
N20     X20
N30     X30
N40     X40
N50 M96 (M96 MEP_SVS m_pre_outp = 250000,)
(oder MET_SVS m_pre_outp = 300000us)
N55 X80
N60 X0
M30
Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 9:
Abbildung 1-7: Synchronisationsart MET_SVS, MEP_SVS

Festlegung des Wegvorlaufes bzw. Zeitvorlaufes

Die Kanalparameter P-CHAN-00070(m_pre_outp[i]) und P-CHAN-00107(h_pre_outp[i]) werden in Verbindung mit den Synchronisationstypen MET_SVS und MEP_SVS verwendet. Die Parameter legen den Wert für die Ausgabe vor Bearbeitung der M/H-Funktionen im Bahninterpolator fest. Beim Typ MET_SVS erfolgt die Angabe des Zeitvorlaufs, beim Typ MEP_SVS erfolgt die Angabe des Wegvorlaufes

Beispielhafte Initialisierung in der Kanalparameterliste für 2 M-Funktionen:

# Festlegung der M-Funktionen und Synchronisationsarten
#======================================================
:
m_synch[96]              0x01000000     MEP_SVS
m_synch[97]              0x02000000     MET_SVS
#
# Einstellung Vorausgabezeit/-weg mit MET_SVS, MEP_SVS
#=======================================================
m_pre_outp[96]             100000     in 0.1 um
m_pre_outp[97]             40000     in us
Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 10:

Die Festlegung des Weg-/Zeitvorlaufes einer M/H-Funktion kann auch über das NC-Programm durch entsprechende Variablen verändert werden (z.B. V.G.M_FCT[MNr].PRE_OUTP_PATH , siehe[PROG]).

MOS_TS

Ausgabe der M-Funktion vor dem Satz, keine Synchronisation. Bei diesem Typ wird ein Zeitoffsetwert bezogen auf den Satzwechselpunkt bereitgestellt.

Bedingt durch die Abtastung mit der Zykluszeit tzykl liegt zwar der Ausgabepunkt einer M-Funktion auf Interpolatorebene zeitlich im Abtastraster, aber um maximal einen Abtasttakt zeitlich versetzt zum Satzwechselpunkt. In der PLC kann der exakte Ausgabezeitpunkt mit Hilfe des mitgeführten Zeitoffsets der M-Funktion in der PLC ermittelt und ausgeführt werden. (siehe auch[HLI], pMHTechno^.D_Time).

Initialisierung in der Kanalparameterliste

m_synch[..] 0x00040000 (MOS_TS)

Programmierbeispiel

N10 G01 X25 G90 F5000
N20     X50
N30     M25 (M25 MOS_TS)
N40     X100
N50     X200
M30
Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 11:
Abbildung 1-8: Synchronisationsart MOS_TS

Der Ausgabepunkt der M-Funktion liegt zeitlich im Abtastraster, aber nicht exakt auf der Satzgrenze zwischen den beiden Bewegungsätzen N20 und N40. Zur Steuerung der hochgenauen Ausgabe in der PLC wird der Zeitoffset tcr (Bruchteil eines Zyklustaktes, kennzeichnet die exakte Lage des Abtasttaktes bezogen auf die Satzgrenze) bei der Berechnung des Ausgabezeitpunktes berücksichtigt.

Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 12:

Typischerweise wird die exakte zeitliche Ausgabe mit Hilfe einer speziellen zeitlich hochauflösenden Timer-Hardware realisiert.

ProgrammierbeispielExakte wegsynchrone Ansteuerung von I/Os

Ein Laser (100µm Strahlbreite) soll beim Schneiden positionsgenau ein-/ausgeschaltet werden. Die Toleranz liegt im Bereich von 10 µs bzw. von ½ Strahlbreite = 50 µm. Die zeitliche Auflösung durch den Interpolationstakt der CNC (typisch 1ms) ist hierfür nicht ausreichend. Durch Verwendung einer zeitlich hochauflösenden Hardware und Algorithmen in der PLC lässt sich das Problem lösen.

Die Totzeit in der Systemkette CNC zum Antrieb muss größer sein als die Totzeit in der Systemkette zum Lasersystem.

Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 13:
Abbildung 1-9: Übersicht Totzeiten der Systemketten

Im vorliegenden Fall wird von einer typischen Totzeit von 800μs des Lasersystems ausgegangen. Bei der Positionierkette CNC – Antrieb liegt die Totzeit typisch bei 5 Taktzyklen (5 * 1 ms = 5 ms). Das Positionsregelsystem im Antrieb arbeitet schleppabstandsfrei (aktive Vorsteuerung). Wenn dennoch erforderlich, muß der Schleppabstand abgeschätzt werden. In der PLC wird die Totzeit der Positionierkette für die Ansteuerung des Lasers mit der Zeit TDPLC berücksichtigt. Die PLC verzögert also den von der CNC bereitgestellten M-Code des Bahninterpolators um n Takte. Das exakte Schaltsignal für den Laser innerhalb des Folgetaktes wird in der PLC auf Basis der Interpolationsdaten und der Totzeit berechnet und über eine Hardwareklemme mit einem hohen Basistakt (z. B. 1µs) erzeugt.

Beispiele zu den Synchronisationsarten im Zusammenhang mit Bewegungen 14:
Abbildung 1-10: Schema der Totzeitkompensation