Home

F - Epson

image

Contents

1. Error Message werden 2833 Die Daten k nnen nicht von der angegebenen Netzwerk Schnittstelle gelesen werden 2834 Zeit berlauf beim Lesen der Daten von der angegebenen Netzwerk Schnittstelle 2835 Die angegebene Netzwerk Schnittstelle wird in einer anderen Task verwendet 2836 Fehler beim ffnen der Netzwerk Schnittstelle 2837 Verbindung konnte nicht aufgebaut werden 2838 Die Netzwerkeinstellungen k nnen nicht ver ndert werden w hrend die Netzwerk Schnittstelle verwendet wird 2839 Zeit berlauf f r WAITCOM an der angegebenen Schnittstelle 2840 Server oder Client erwartet 2841 Netzwerkoption wurde nicht installiert 2851 Die angegebene Kommunikationsschnittstelle ist ung ltig 2852 Die gew hlte Baudrate ist ung ltig 2853 Die gew hlte Daten Bit L nge ist ung ltig 2854 Das gew hlte Stoppbit ist ung ltig 2855 Die gew hlte Parit t ist ung ltig 2856 Der gew hlte Begrenzer ist ung ltig 2857 System Fehler 2858 System Fehler 2859 Der angegebene Zeit berlauf liegt au erhalb des Nennbereichs 2860 Die angegebene Schnittstellennummer ist nicht f r die Netzwerk Schnittstelle 2861 Der angegebene Hostname ist ung ltig 2862 Die angegebene Schnittstellennummer ist nicht f r die Netzwerk Schnittstelle 2901 Speicherzuweisungsfehler f r den Bereich der lokalen Variablen 2902 Fehl
2. Error Message 1002 Falsch angezeigter Parameter 1003 Eine Wertzuweisung mit ber 100 Zeichen ist nicht zul ssig 1004 System Fehler 1010 Eine Wertzuweisung f r amp H oder amp B berschreitet den zul ssigen Bereich 8 bzw 32 Zeichen 1011 Die Wertzuweisung der Real Variablen berschreitet den negativen Bereich minus 307 1012 Bereichs Unter oder berschreitung 1020 Zeilennummer ist zu gro 1030 Parameter ist nicht im g ltigen Bereich 1040 Die Gr e eines Array muss zwischen 1 bis 65535 sein 1146 System Fehler 1147 Zeichenkettenausdruck ist nicht korrekt 1148 Variablen und Zeichenketten Name sind nicht richtig 1149 Ung ltiger Funktionsname 1150 Integer und Variablen die nicht mit gekennzeichnetz sind sind falsch 1151 System Fehler 1152 System Fehler 1161 Zeilennummern und Label sind falsch 1162 Ausdruck ist falsch 1163 Fehler im Ausdruck In Klammern setzen 1164 Positionsausdruck ist falsch 1170 Der Ausdruck f r die Eingangsbedingung ist falsch 1174 Punktedaten sind fehlerhaft 1175 Angegebener Punkt ist fehlerhaft 1176 Direkt vorgesehener Punkt ist falsch 1177 Funktionsname ist nicht korrekt 1178 Die Anordnung der Definitionsargumente ist falsch 1179 Der Zeichenkettenausdruck Pfadliste ist falsch 1180 Der Zeichenkettenausdruck Verzeichnispfadliste ist falsch 1181 Laufwerksangabe ist fa
3. 88 E A ist bereits eine Remotefunktion 92 Unterschiedliche Eingangssignale im T rsicherheitskreis 94 Wartezeit f r WAIT SW ist berschritten 119 Arm bewegt sich nach dem Ausschalten zu viel 120 Gebrauch eines besonderen Befehls in nicht korrekter Einstellung 121 Befehl w hrend NOT AUS nicht ausf hrbar 122 Unzul ssiger Datentyp wird verwendet 123 Der Befehl wird vom Steuerger t nicht unterst tzt 124 Nummerischer Wert Bereichs berschreitung 125 Arm erreicht Grenzen des Arbeitsbereichs 126 Arm erreicht XYLIM Grenzen 129 LIMZ Fehler 143 HOME Position nicht definiert 146 Bewegung unter SFREE nicht m glich 150 Befehl unter MOTOR OFF nicht ausf hrbar 151 Position innerhalb FINE nicht erreichbar 12 SPEL Language Reference Rev 3 5 SPEL Fehlermeldungen Error Message 173 Max Drehmoment im Low Power Modus berschritten 174 Max Drehmoment im High Power Modus berschritten 185 Unterbrechung Encodersignal 190 Encoder ist berhitzt 191 Encoder berdrehzahl 193 Batteriefehler im Manipulatorsockel 194 Encoder Pr fsummenfehler 195 Encoder Back up Alarm 230 Der Befehl MCORG wurde nicht ausgef hrt 231 Der Befehl MCAL wurde nicht ausgef hrt 233 Fehler bei der Erfassung des Encoder Z Phasen Signals 359 Die Option Barcode lesen ist nicht freigeschaltet 360 Undefinierte Vision Sequenz 3
4. 5112 Servo Alarm C 5120 Servo berlastung D 5136 Der Absolut Encoder wurde initialisiert 5152 Servo Alarm D 6001 System Fehler 6002 System Fehler 6003 System Fehler 6004 System Fehler 6005 System Fehler 6006 System Fehler 6007 System Fehler 6008 System Fehler 6102 Eingangssignal Fehler des ATTEND NORMAL Schalters 6103 Der angebene Roboter wird an der Remote E A nicht gefunden 6104 Fehler am NOT AUS Eingang 6500 Keine Antwort vom Optional Device 6501 Das Optional Device ist belegt 6502 Daten k nnen nicht auf das Optional Device gesendet geschrieben werden 6503 Einstellungen f r Optional Device k nnen nicht gefunden werden 6504 System Fehler 6505 COM3 ist nicht bereit 6506 System Fehler SPEL Language Reference Rev 3 5 479 SPEL Fehlermeldungen Error Message 6507 COM3 Anordnungsfehler Framing Fehler 6508 COM3 berlauffehler 6509 COM3 Fehler Empfangsspeicher voll 6510 COMS3 Parity Fehler 6511 COMS3 anderer Fehler 6701 Fehler TCP IP Schnittstelle offen 6901 Unerwartete Version der Roboterdaten 6902 Roboterdaten Datei Lesefehler 6903 Roboterdaten Datei Schreibfehler 6904 Roboterdaten Speicher Zuordnungsfehler 6905 Roboterdaten k nnen nicht ge ndert werden 7000 System Fehler 7103 Zu viele Z h
5. Die durch Function Fend definierte Kombination von Anweisungen kann als Beh ltnis betrachtet werden in dem alle Anweisungen die sich zwischen den Anweisungen Function und Fend befinden zu der Funktion geh ren In einer Programmdatei k nnen multiple Funktionen vorkommen Verwandte Befehle Call Fend Halt Quit Return Xqt SPEL Language Reference Rev 3 5 185 SPEL Sprachreferenz Function Fend Beispiel 186 Function main Xqt 2 task2 Xqt 3 task3 weiter Das folgende Beispiel zeigt 3 Funktionen innerhalb einer einzigen Datei Die Funktionen mit dem namen fask2 und task3 werden als Hintergrundtasks Background Tasks ausgef hrt w hrend der Haupttask mit Namen Main im Vordergrund ausgef hrt wird F hrt task2 im Hintergrund aus F hrt task3 im Hintergrund aus Fend Function task2 while TRUE On 1 On 2 Off 1 Off 2 Wend Fend Function task3 While TRUE On 10 Wait 1 off 10 Wend Fend Anweisungen SPEL Language Reference Rev 3 5 SPEL Sprachreferenz GetCurrentUser Funktion Gibt den aktuellen EPSON RC Anwender aus Syntax GetCurrentUser R ckgabewerte Zeichenkette die die aktuelle Anwender logID enth lt Hinweis Dieser Befehl ist nur dann anwendbar wenn die Security Option Sicherheitsoption installiert ist Verwandte Befehle LogIn Anweisung Beispiel einer GetCurrentUser Funktion String currUser currUser GetCurrentUser SPE
6. Hinweis Dieser Befehl funktioniert nur dann wenn die EtherNet I O Option installiert ist Verwandte Befehle ENetlO_Analn ENetIO_AnaOut Beispiel einer ENetIlO_AnaSetConfig Anweisung Real gain offset loScale hiScale ENetIO_AnaGetConfig 8 gain offset loScale hiScale loScale 5 hiScale 5 ENetIO_AnaSetConfig 8 gain offset 1loScale hiScale SPEL Language Reference Rev 3 5 133 SPEL Sprachreferenz ENetlO_AnaOut Anweisung Stellt das Ausgangslevel f r einen analogen Ausgabekanal ein Syntax ENetIO_AnaOut channel value Parameter channel Integer Ausdruck oder I O Label welches einen der analogen Ausgangsports repr sentiert value Real Ausdruck der den Wert zur Einstellung des analogen Ausgabekanal repr sentiert R ckgabewerte Beschreibung Hinweis Dieser Befehl funktioniert nur dann wenn die EtherNet I O Option installiert ist Verwandte Befehle ENetlO_Analn ENetlO_Off ENetIO_On ENetlO_Oport ENetlO_Out ENetlO_Sw Beispiel einer ENetIO_AnaOut Funktion ENetIO_AnaOut 8 2 5 134 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ENetlO_ClearLatches Anweisung L scht On und Off Latches f r einen Ethernet I O Digitaleingang Syntax ENetlO_ClearLatches bitNumber Parameter bitNumber Integer Ausdruck welcher die Bitnummer repr sentiert Beschreibung ENetlO_ClearLatches l scht sowohl das On Latch als auch as Off Latch f r den angegebenen Punkt
7. Hinweise Regeln f r numerische Eingaben Wenn numerische Werte eingegeben werden sollen und andere als numerische Werte eingegeben werden au er dem Trennzeichen Komma streicht die Input Anweisung die nicht numerischen und alle folgenden Werte Regeln f r Zeichenketten Eingaben Wenn Zeichenketten eingegeben werden sind numerische und Buchstabenzeichen als Daten gestattet Weitere Regeln f r den Input Befehl Wenn im Befehl mehr als eine Variable angegeben ist m ssen die Eingaben numerischer Daten f r jede Variable durch Kommazeichen voneinander getrennt werden Numerische Variablennamen und Zeichenketten Variablennamen sind gestattet Der Eingabe Datentyp muss jedoch dem Variablentyp entsprechen Potentielle Fehler Die Anzahl der Variablen und der Eingabedaten sind unterschiedlich Wenn sich die Anzahl der Variablen wie sie im Befehl definiert ist unterscheidet von der Anzahl der vom Ger t empfangenen numerischen Daten tritt Fehler Nr 30 auf Verwandte Befehle Input Line Input Line Input Beispiel einer Input Anweisung Diese Funktion zeigt einige einfache Beispiele einer Input Anweisung Function GetData Integer A String B OpenCom 1 Print 1 Send Input 1 A Nimmt numerische Daten vom Port 1 an Input 1 A Nimmt Zeichenketten Daten vom Port 1 an CloseCom 1 Fend 228 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz InputBox Anweisung s Zeigt ein Prompt in e
8. SPEL Language Reference Rev 3 5 77 SPEL Sprachreferenz Cnv_Point Funktion F Gibt einen Roboterpunkt im Koordinatensystem des spezifizierten Conveyors aus der von Sensorkoordinaten abgeleitet wird Syntax Cnv_Point conveyorNumber sensorX sensorY Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert sensorX Real Ausdruck f r die X Koordinate des Sensors sensorY Real Ausdruck f r die Y Koordinate des Sensors R ckgabewerte Roboterpunkt im Koordinatensystem des Conveyors Beschreibung Die Cnv_Point Funktion muss verwendet werden um Punkte zu erzeugen die einem Conveyor Queue hinzugef gt werden Bei Vision Conveyorn sind sensorX und sensorY Bild Koordinaten der Kamera Bei Sensor Conveyorn k nnen sensorX und sensorY 0 sein da dies der Ursprung des Conveyor Koordinatensystems ist Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_Speed Beispiel einer Cnv_Point Funktion Boolean found Integer i numFound Real x y u Cnv_Trigger 1 VRun FindParts VGet FindParts Part NumberFound numFound For i 1 To numFound VGet FindParts Part CameraXYU i found x y u Cnv_QueAdd 1 Cnv_Point 1 x y Next i 78 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Cnv_PosErr Funktion Gibt die Abweichung von der aktuellen Tracking Position im Vergleich zum Tracking Ziel aus Syntax
9. Yr is Atan2 x y Fend SPEL Language Reference Rev 3 5 mm SPEL Sprachreferenz Base Anweisung s Definiert das Basis Koordinatensystem und zeigt es an Syntax 1 Base pBase1 pRobot1 pBase2 pRobot2 L R 2 Base originX originY originZ originU Parameter localnum Integer von 1 15 welcher die zu definierende Nummer des lokalen Koordinatensystems repr sentiert pBase1 pBase2 Punktvariablen mit Punktdaten im Basiskoordinatensystem pRobot1 pRobot2 Punktvariablen mit Punktdaten im absoluten Roboter Koordinatensystem L R Optional Richte den Basisursprung an dem linken ersten oder rechten zweiten absoluten Roboterpunkt aus originX Ursprung der X Achse im Basiskoordinatensystem originY Ursprung der Y Achse im Basiskoordinatensystem originZ Ursprung der Z Achse im Basiskoordinatensystem originU Rotationswinkel des Basiskoordinatensystems Beschreibung Definiert das lokale Koordinatensystem indem dessen Ursprung und der Rotationswinkel im Verh ltnis zum Roboter Koordinatensystem angegeben werden Um das Basiskoordinatensystem auf seine Vorgabewerte zur ckzusetzen f hren Sie die folgende Anweisung aus Dies macht das Basiskoordinatensystem dem Roboter absoluten Koordinatensystem gleich Base 0 0 0 0 Hinweise nderungen des Basiskoordinatensystems l scht alle lokalen Definitionen Alle lokalen Koordinatensysteme sind undefiniert Sie m ssen nach der Ausf hrung des BASE Be
10. ifdef DEBUG Print AS A endif Print The End define SHOWVAL x Print var x Integer a a 25 SHOWVAL a SPEL Language Reference Rev 3 5 17 SPEL Sprachreferenz ifdef else endif s if define falls definiert if not define falls nicht definiert Bedingte Kompilierung Syntax ifdef ID Zeichenkette schreiben Sie den zur bedingten Kompilierung ausgew hlten Quellcode an diese Stelle else schreiben Sie den ausgew hlten Quellcode f r die falsche Bedingung hierher endif Parameter Hinweise zur ID Zeichenkette Anwenderdefiniertes Schl sselwort welches so es definiert ist es gestattet dass der zwischen ifdef und else oder endif befindliche Quellcode kompiliert wird Daher agiert die ID Zeichenkette als Bedingung f r die bedingte Kompilierung Beschreibung ifdef else endif gestattet bedingtes Kompilieren eines ausgew hlten Quellcodes Die Bedingung ob diese Kompilierung durchgef hrt wird oder nicht h ngt von der ID Zeichenkette ab ifdef pr ft zuerst ob die angegebene ID Zeichenkette derzeit von define definiert wird Die else Anweisung ist nicht unbedingt erforderlich Wenn definiert und die else Anweisung nicht genutzt wird werden die Anweisungen zwischen ifdef und endif kompiliert Anderenfalls d h sollte die else Anweisung genutzt werden werden die Anweisungen zwischen ifdef und else kompiliert Wenn nicht definiert und die else Anweis
11. CZ pick 30 0 SPEL Language Reference Rev 3 5 s 117 SPEL Sprachreferenz Date Anweisung Spezifiziert das aktuelle Datum in der Steuerung und zeigt es an Syntax Date yyyy mm dd Parameter yyyy Integer Ausdruck f r eine Jahreszahl mm Integer Ausdruck f r einen Monat dd Integer Ausdruck f r einen Tag R ckgabewerte Wenn der Date Befehl ohne jegliche Parameter eingegeben wird wird das aktuelle Datum angezeigt Beschreibung Spezifiziert das aktuelle Date Datum f r die Steuerung Dieses Datum wird f r die Dateien in der Steuerung verwendet Alle in der Steuerung befindlichen Daten sind mit einem Datum versehen Date berechnet automatisch den Tag der Woche f r die Date Anzeige Verwandte Befehle Time Date Beispiel der Date Anweisung Die folgenden Beispiele werden vom Online Fenster aus ausgef hrt gt Date 1999 09 27 gt Date 1999 10 1 gt Date 1999 10 01 118 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Date Funktion Gibt das Systemdatum aus Syntax Date R ckgabewerte Eine Zeichenkette die das Datum im folgenden Format beihaltet yyyy mm dd Beschreibung Date wird verwendet um das Datum des Steuerungssystems in einer Programmanweisung zu erhalten Sie m ssen die Date Anweisung verwenden um das Systemdatum einzustellen Verwandte Befehle Date GetDate Time Time Beispiel einer Date Funktion Function LogErr errNum As Integer AOpen
12. SPEL Sprachreferenz And Operator s Logischer Operator der verwendet wird um eine logische UND Verkn pfung von zwei Ausdr cken herzustellen Syntax Wenn expr UND exrp2 Dann Ergebnis exrpT UND exrp2 Parameter exp1 Jeder g ltige Ausdruck der ein Boolesches Ergebnis ausgibt exp2 Jeder g ltige Ausdruck der ein Boolesches Ergebnis ausgibt R ckgabewerte Die logische UND Verkn pfung zweier Ausdr cke gibt ein Boolesches Ergebnis aus Wahr oder Falsch Beschreibung Eine logische UND Verkn pfung wird normalerweise verwendet um die Ergebnisse zweier oder mehrerer Ausdr cke in ein Boolesches Ergebnis zu kombinieren Die folgende Tabelle listet m gliche Kombinationen auf expr1 expr2 Ergebnis Ausdruck 1 Ausdruck 2 WAHR WAHR WAHR Falsch FALSCH FALSCH FALSCH FALSCH FALSCH Verwandte Befehle LShift Not Or RShift Xor Beispiel des UND Operators Function andtest Integer X Y Z Print Enter 1 or 2 Input x Print Enter 3 or 4 Input y Select TRU Case x Case x Case x Case x Default Print X or Y value entered is invalid Print Please re enter DJ NNE EBBE aQAAQA KE E K el u I a u ID WB Ww Send Print X x And Y y Fend SPEL Language Reference Rev 3 5 31 SPEL Sprachreferenz Arc Anweisung s Bewegt den Arm mittels einer kreisinterpolierten Bewegung an den spezifizierten Punkt in der XY Ebene Syntax Arc midPoint endPo
13. Verwandte Befehle Force_Sensor Anweisung Beispiel einer Force_Sensor Funktion var Force_Sensor SPEL Language Reference Rev 3 5 177 SPEL Sprachreferenz Force_Sensor Anweisung Stellt den aktuellen Kraftsensor f r den aktuellen Task ein Syntax Force_Sensor sensorNumber Parameter sensorNumber Integer Ausdruck welcher die Sensornummer repr sentiert Beschreibung Wenn mehrere Kraftsensoren im selben System verwendet werden m ssen Sie den aktuellen Kraftsensor einstellen bevor Sie andere Kraftmessungsbefehle verwenden Wenn Ihr System nur ber einen Sensor verf gt m ssen Sie die Force_Sensor Anweisung nicht verwenden da die Vorgabe Sensornummer 1 ist Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Force Sensing installiert ist Verwandte Befehle Force_Sensor Funktion Beispiel einer Force_Sensor Funktion Force_Sensor 1 178 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Force_SetTrigger Anweisung Stellt die Kraftausl sung f r den Till Befehl ein Syntax Force_SetTrigger axis Threshold CompareType Parameter axis Integer Ausdruck der die gew nschte Kraftsensorachse enth lt Achse Konstante Wert X Kraft KRAFT_XKRAFT 1 Y Kraft KRAFT_YKRAFT 2 Z Kraft KRAFT_ZKRAFT 3 X Drehmoment KRAFT_XDREHMOMENT 4 Y Drehmoment KRAFT_YDREHMOMENT 5 Z Drehmoment KRAFT_ZDREHMOMENT 6 Threshold Real Ausdruck der den gew nschten Schwellwert in Einheiten f r den verwendeten Se
14. gt Print Space 3 ABC ABC gt SPEL Language Reference Rev 3 5 395 SPEL Sprachreferenz Speed Anweisung s Definiert oder zeigt die Armgeschwindigkeit f r die Verwendung mit den PTP Befehlen Go Jump und Pulse an Syntax Speed percent ZupSpeed Zdnspeed Parameter percent Integer Ausdruck zwischen 1 100 der die Armgeschwindigkeit als Prozentteil der maximalen Geschwindigkeit darstellt ZupSpeed Integer Ausdruck zwischen 1 100 der die Geschwindigkeit der Aufw rtsbewegung der Z Achse f r den Jump Befehl darstellt ZdnSpeed Integer Ausdruck zwischen 1 100 der die Geschwindigkeit der Abw rtsbewegung der Z Achse f r den Jump Befehl darstellt R ckgabewerte Zeigt die aktuellen Speed Werte an wenn sie ohne Parameter verwendet werden Beschreibung Speed spezifiziert die Armgeschwindigkeit zur Verwendung mit allen PTP Befehlen Dies bezieht auch Bewegungen ein die durch die Roboter Bewegungsbefehle Go Jump und Pulse ausgel st wurden Die Geschwindigkeit ist als Prozentteil der maximalen Geschwindigkeit spezifiziert Der Bereich der zul ssigen Werte liegt zwischen 1 100 1 stellt 1 das maximalen Geschwindigkeit dar und 100 stellt 100 der maximalen Geschwindigkeit dar Speed 100 repr sentiert die maximal m gliche Geschwindigkeit Die Werte f r die Geschwindigkeit der Aufw rts und Abw rtsbewegung der Z Achse beziehen sich ausschlie lich auf den Jump Befehl Wenn die Werte weggelassen werden wird je
15. 1 Parameter destination Der Zielort einer Bewegung die einen Punktausdruck verwendet CP Optional Spezifiziert die Continuous Path CP kontinuierlicher Weg Bewegung searchExpr Optional Ein Till oder Find Ausdruck Till Find Till Sw expr Ein Aus Find Sw expr Ein Aus L Optional Parallelbearbeitungsanweisungen k nnen hinzugef gt werden um E A und andere Befehle w hrend der Bewegung auszuf hren Beschreibung Move bewegt den Arm in einer geraden Linie von seiner aktuellen Position zu seiner destination Move koordiniert alle 4 Achsen dahingehend dass sie zur selben Zeit starten und stoppen Die destination Koordinaten m ssen vor der Ausf hrung des Move Befehls eingeteacht worden sein Die Koordinaten k nnen nicht im Move Befehl selber spezifiziert werden Beschleunigung und Verz gerung f r die Move Anweisung werden durch den AccelS Befehl gesteuert Die Geschwindigkeit f r die Bewegung wird durch den SpeedS Befehl gesteuert Wenn der SpeedS Geschwindigkeitswert die erlaubte Geschwindigkeit f r eine beliebige Achse berschreitet wird der Strom f r alle vier Achsmotoren abgeschaltet und der Roboter h lt an Die optionale Till Bedingung gestattet es dem Anwender eine Bedingung zu definieren die den Roboter dazu veranlasst bis zum vollst ndigen Stopp zu verz gern bevor der Move Befehl vollst ndig ausgef hrt wurde Die spezifizierte Bedingung ist ganz einfach eine Gegenpr fung zu einem der Eing nge
16. 226 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Beispiel einer Input Anweisung Diese Funktion zeigt einige einfache Beispiele einer Input Anweisung Function InputNumbers Integer A B Print Please enter 1 number Input A Print Please enter 2 numbers separated by a comma Input B C Print A A PANG TB Syaa By VO Me Fend Eine Mustersitzung des oben ablaufenden Programmes wird im Folgenden dargestellt Verwenden Sie das Run Men der die Taste F5 um das Programm zu starten Please enter 1 number 10000 Please enter 2 numbers separated by a comma 229 1 799 10000 29b 99 B 2531 CS 99 gt SPEL Language Reference Rev 3 5 227 SPEL Sprachreferenz Input AnweisungXXX s Gestattet es Zeichenketten oder numerische Daten von einer Datei oder einer Kommunikationsschnittstelle zu empfangen und in einer Variable n zu speichern Syntax Input handle varName varName varName Parameter handle Die Datei oder Kommunikationsport wird in einer Open Anweisung definiert Dateiports k nnen in ROpen WOpen und AOpen Anweisungen definiert werden Kommunikationsports k nnen in OpenCom RS232 und OpenNet TCP IP Anweisungen definiert werden varName Variablename um Daten zu empfangen Beschreibung Der Input Befehl empf ngt numerische oder Zeichenkettendaten von dem Ger t das mit handle gekennzeichnet ist und ordnet die Daten der den Variable n zu
17. 4049 Die Anzahl der Parallelbearbeitungen liegt au erhalb des g ltigen Bereichs 4050 Ung ltige Anzahl der angegebenen Punkte 4051 LOCAL oder Orientierung sind nicht f r alle Punkte der Kurve gleich 4052 Nicht gen gend Speicher zum Ausf hren der Kurvendatei 4053 Datei der Kurve konnte nicht erzeugt werden berpr fen Sie die Punkte 4054 Fehler in der Kurvendatei 4055 Ung ltiger Abstand zwischen Kurvenpunkten 4099 Servo Fehler erkannt 4100 Die Berechnung des aktuellen Punktes und der Pulsedaten ist fehlgeschlagen weil ein Kommunikationsfehler im Motion Control Modul vorhanden ist 4101 Die Berechnung des aktuellen Punktes und der Pulsedaten ist fehlgeschlagen weil ein Kommunikationsfehler im Motion Control Modul vorhanden ist 4102 Die Versorgungsspannung der Drive Unit ist nicht eingeschaltet 4150 Fehler am NOT AUS Eingang 4151 Fehler am Eingang der Sicherheitsabschrankung 4180 Die angebene Roboter Nummer ist ung ltig 4181 Der angebene Roboter wird von einem anderen Task verwendet 4182 Robotername ist zu lang 4183 Versionsfehler der Roboterdaten 4184 Es ist mehr als ein Gelenk einer einzelnen Achse zugewiesen 4185 Es ist mehr als ein Roboter einer einzelnen Achse zugewiesen 4186 Erforderliche Hardware wurde nicht gefunden 4187 System Fehler 4188 System Fehler 4189 System Fehler 4190 System Fehler 4191
18. 432 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Trap Anweisung s Definiert Traps und was passieren soll wenn sie eintreten Syntax 1 Trap trapNumber inputCondition GoTo linenum label Trap trapNumber inputCondition GoSub linenum label Trap trapNumber inputCondition Call funcname Trap trapNumber 2 Trap Emergency Call funcName Trap Error Call funcName Trap Pause Call funcName Trap SGOpen Call funcName Trap SGClose Call funcName Trap Abort Call funcName Parameter trapNumber inputCondition lineNumber label funcname Beschreibung Integer von 1 bis 4 die darstellt welcher von 4 Trapnummern verwendet werden soll SPEL unterst tzt bis zu 4 aktive Traps zur selben Zeit Diese Bedingung muss einen TRUE 1 oder FALSE 0 Wert ausgeben Die folgenden Funktionen und Operatoren k nnen f r die inputCondition verwendet werden Funktionen Sw Sw In In Operatoren And Or Xor Andere Klammern um bestimmten Operationen und Variablen Priori t einzur umen Die Zeilennummer an welche die Programmausf hrung bertragen wird wenn die Befehle GoTo oder GoSub mit Trap verwendet werden und die Trap Bedingung erf llt ist Die Marke an welche die Programmausf hrung bertragen wird wenn die Befehle GoTo oder GoSub mit Trap verwendet werden und die Trap Bedingung erf llt ist Die Funktion die aufgerufen wird wenn Call mit den Trapbefehlen verwendet wird und
19. B und C zu konvertieren Das amp H bedeutet dass die folgende Nummer hexadezimal repr sentiert wird amp H41 bedeutet Hex 41 Function Test String temp temp Chr sH41 Chr sH42 Chr amp H43 Print The value of temp temp Fend SPEL Language Reference Rev 3 5 67 SPEL Sprachreferenz Clear s Initialisiert den Positionsdatenbereich f r den aktuellen Roboter Syntax Clear Beschreibung Clear initialisiert den Positionsdatenbereich f r den aktuellen Roboter Dieser Befehl wird zum L schen von im Speicher befindlichen Punktdefinitionen verwendet bevor neue Punkte eingeteacht werden Verwandte Befehle New Plist Beispiel einer Clear Anweisung Das folgende Beispiel zeigt einfache Beispiele der Verwendung des Clear Befehls vom Online Fenster Beachten Sie dass beim Initiieren des Plist Befehls keine Teach Punkte angezeigt werden sobald der Clear Befehl erfolgt ist gt P1 100 200 20 0 R gt P2 0 300 0 20 L gt Plist P1 100 200 20 0 R P2 0 300 0 20 L gt clear gt Plist gt 68 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Close Anweisung Ss Die Close Anweisung schlie t eine Datei die mit den Befehlen AOpen ROpen oder WOpen ge ffnet wurde Syntax Close fileNumber Parameter fileNumber Integer Ausdruck dessen Wert zwischen 30 63 liegt Beschreibung Schlie t die durch den Dateiport fileNumber referenzierte Datei und gibt sie aus Verwandt
20. Display cosine of 30 degrees gt print cos DegToRad 30 0 866025403784439 gt 96 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Cp Anweisung s Stellt den CP Continuous Path Bewegungsmodus ein Syntax CP On Off Parameter On Off Das Schl sselwort On Ein wird verwendet um den CP Modus aktivieren Das Schl sselwort Off Aus wird verwendet um den CP Modus zu deaktivieren Beschreibung Der CP Continuous Path Bewegungsmodus kann f r die Roboter Bewegungsbefehle Arc Go und Move verwendet werden Wenn CP aktiviert ist gestatten Arc Go und Move die Ausf hrung der n chsten Anweisung bei Beginn der Verz gerung Verwandte Befehle CP Funktion Arc Move Go Beispiel einer CP Anweisung CP On Move P1 Move P2 CP Off SPEL Language Reference Rev 3 5 97 SPEL Sprachreferenz Cp Funktion Gibt den Status einer CP Bewegung aus Syntax CP R ckgabewerte 0 CP Bewegung aus 1 CP Bewegung ein Verwandte Befehle CP Anweisung Beispiel einer CP Funktion If CP Off Then Print CP is off EndIf 98 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Ctr Funktion Gibt den Z hlerwert des angegebenen Z hlereingangs aus Syntax Ctr bitNumber Parameter bitNumber Nummer des Hardwareeingangs als Z hler eingestellt Es k nnen gleichzeitig nur 16 Z hler aktiv sein R ckgabewerte Der aktuelle Z hlstand des angegebenen Z hlereingangs Beschreib
21. Ein Ein Aus Aus Aus Ein Ein n 255 On On On On On On On 5 Ein Ein Ein Ein Ein Ein Ein Ein per SPEL Language Reference Rev 3 5 309 SPEL Sprachreferenz Einschr nkung Der Unterschied zwischen OpBCD und Out Die Befehle Out und OpBCD sind einander in der Sprache SPEL sehr hnlich Es gibt jedoch einen Hauptunterschied zwischen den beiden Dieser Unterschied wird im Folgenden aufgezeigt Der OpBCD Befehl verwendet das BCD Format zur Spezifizierung eines 8 Bit Wertes der verwendet wird um die Ausg nge ein oder auszuschalten Da das BCD Format den Gebrauch der Werte amp HA amp HB amp HC amp HD amp HE oder amp HF ausschlie t k nnen nicht alle Kombinationen f r die Einstellung der 8 Ausg nge erf llt werden Der Out Befehl funktioniert hnlich dem OpBCD Befehl mit der Ausnahme dass der Out Befehl es gestattet den Bereich der 8 Bit Werte der f r das Ein oder Ausschalten der Ausg nge verwendet werden darf zwischen 0 und 255 anzusiedeln gegen ber 0 bis 99 f r OpBCD Dies gestattet es alle m glichen Kombinationen f r die 8 Ausgangsgruppen den Anwender Spezifikationen folgend zu initialisieren Der Unterschied zwischen Out und Out Es ist sehr wichtig dass der Anwender den Unterschied zwischen den Befehlen Out und Out versteht Dieser Unterschied wird im Folgenden aufgezeigt Der Out Befehl arbeitet mit dem internen Merker und hat keinerlei
22. Erstellt ein Unterverzeichnis auf dem aktuellen PC Laufwerk Syntax MkDir dirName Parameter dirName Zeichenkettenausdruck der den Namen des zu erstellenden Verzeichnisses definiert Sie k nnen auch einen Pfad mit einbeziehen Beschreibung Erstellt ein Unterverzeichnis im spezifizierten Pfad Es kann immer nur ein Unterverzeichnis gleichzeitig erstellt werden Wenn dieser Vorgang vom Online Fenster aus get tigt wird k nnen Sie die Anf hrungsstriche auslassen Verwandte Befehle ChDir ChDrive Dir Rendir MkDir Beispiel Die folgenden Beispiele werden vom Online Fenster aus ausgef hrt gt mkdir USR gt mkdir USR PNT SPEL Language Reference Rev 3 5 275 SPEL Sprachreferenz Mod Operator s Gibt den Restbetrag aus den man erh lt indem man einen numerischen Ausdruck durch einen anderen dividiert Syntax number Mod divisor Parameter number Die Zahl die geteilt wird Der Dividend divisor Die Zahl durch welche number geteilt wird R ckgabewerte Gibt den verbleibenden Rest nachdem number durch divisor geteilt wurde aus Beschreibung Mod wird verwendet um den verbleibenden Restbetrag zu erhalten nachdem man 2 Zahlen dividiert hat Bei dem Rest handelt es sich um eine ganze Zahl Eine geschickte Verwendung des Mod Befehls ist es festzustellen ob eine Zahl gerade oder ungerade ist Die Methode mit der der Mod Befehl arbeitet ist folgende number wird durch divisor geteilt Der nach dieser Div
23. For tre 1 to LO Go Pctr Next ctr r For ctr 10 to 1 Step 1 Go Pctr Next ctr Fend 286 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Not Operator F hrt die Bit weise Umkehrung des Operandenwertes aus Syntax Not operand Parameter operand Integer Ausdruck R ckgabewerte Umkehrung des Operandenwertes Beschreibung Die Not Funktion f hrt die Bit weise Umkehrung des Operandenwertes aus Jedes resultierende Bit ist die Umkehrung des entsprechenden Bits im Operanden mit tats chlicher nderung von 0 Bits nach 1 und 1er Bits nach 0 Verwandte Befehle Abs And Atan Atan2 Cos Int LShift Mod Or RShift Sgn Sin Sqr Str Tan Val Xor Beispiel des Not Operators Dies ist ein einfaches Online Fenster Beispiel bez glich der Verwendung des Not Befehls gt print not 1 2 gt SPEL Language Reference Rev 3 5 287 SPEL Sprachreferenz Off Anweisung s Schaltet den angegebenen Ausgang aus der nach einer definierten Zeit durch Time wieder eingeschaltet werden kann Syntax Off bitNumber outputLabel time parallel Parameter bitNumber Integer Ausdruck dessen Wert zwischen 0 511 liegt Sagt dem Off Befehl welcher Ausgang ausgeschaltet werden soll outputLabel Ausgangslabel time Optional Gibt ein Zeitintervall in Sekunden an f r das der Ausgang ausgeschaltet bleiben soll Nachdem das Zeitintervall abgelaufen ist wird der Ausgang wieder eingeschaltet
24. Kein Fehlerbehandlungsprogramm in dieser Funktion Daher l st die n chste Zeile den Error Trap aus Print 1 0 Loop Exit Function Fend Function CriticalHandler Print Critical error occurred Print Restarting program Restart Fend 436 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Tw Funktion Gibt den Status der Befehle Wait WaitNet und WaitSig aus Syntax Tw R ckgabewerte Wenn die Wait Bedingung erf llt ist wird 0 ausgegeben Wenn das Zeitintervall abgelaufen ist wird 1 ausgegeben Beschreibung Die Timer Wait Funktion Tw gibt den Status der vorangehenden Wait Bedingung mit Zeitintervall als O Wait Bedingung erf llt oder 1 Zeitintervall abgelaufen aus Verwandte Befehle Wait Beispiel einer Tw Funktion Wait Sw 0 On 5 Wartet bis zu 5 Sekunden darauf dass Eingang 0 eingeschaltet wird If Tw 1 Then Goto TIME_UP Verzweige nach TIME_UP nach 5 Sekunden EndIf SPEL Language Reference Rev 3 5 437 SPEL Sprachreferenz Type Befehl Zeigt den Inhalt der angegebenen Datei an Syntax Type fileName Parameter fileName Pfad und Name der anzuzeigenden Datei Beschreibung Type zeigt die Inhalte der angegebenen Datei an Da nur ASCII Dateien angezeigt werden k nnen stellen Sie bitte sicher dass nur ASCII Dateien spezifiziert sind Der Zweck von Type ist es den Inhalt von Dateien anzuzeigen und nicht Dateien zu bearbeiten ASCII Dateien
25. Next i Fend 60 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Chain Anweisung Ss Stoppt die Ausf hrung der aktuellen Programmgruppe und beginnt mit der Ausf hrung der spezifizierten Programmgruppe Syntax Chain groupName Parameter groupName Ein Zeichenkettenausdruck der den Namen der auszuf hrenden Programmgruppe repr sentiert Die Programmgruppe muss Teil des aktuellen Projektes sein Beschreibung Die Chain Anweisung stoppt die Ausf hrung des aktuellen Programms in der aktuellen Programmgruppe Dann beginnt sie mit der Ausf hrung des ersten Programms in der durch die Chain Anweisung spezifizierten Programmgruppe Das erste Programm in der Gruppe ist dasjenige welches f r die Programmgruppe als Hauptprogramm definiert wurde Bitte beachten Sie dass der Anwender die Option hat separate Punktdateien f r jede Programmgruppe zu spezifizieren Dies bedeutet dass wenn der Chain Befehl veranlasst eine neue Programmgruppe zu verwenden auch eine neue Punktdatei benutzt werden kann je nachdem ob der Anwender separate Punktdateien f r jede Programmgruppe spezifiziert hat oder nicht Die Chain Anweisung ist n tzlich f r die Ausf hrung der Verzweigung von einer Programmgruppe zur anderen Der Anwender kann beispielsweise zehn unterschiedliche Produkttypen haben von denen jedes sein eigenes Programm hat und m glicherweise seinen eigenen Satz an Teachpunkten In diesem Falle kann die Chain Anweisung verwendet
26. R ckgabewerte Gibt den f r die Maschinenkalibrierung definierten Parameter aus Verwandte Befehle Mcal Mcorg Ver Beispiel einer MCofs Funktion Integer a a MCofs 1 268 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz MCordr Anweisung s Definiert die Bewegungs Achsreihenfolge f r die Maschinenkalibrierung Mcal und zeigt sie an Wird nur f r Roboter mit inkrementellen Encodern ben tigt Syntax MCordr Step1 Step2 Step3 Step4 Parameter Step1 Bitmuster aus dem hervorgeht welche Achsen w hrend des 1 Schrittes des MCal Prozesses kalibriert werden sollen Eine beliebige Anzahl von Achsen von 0 bis zu allen 4 kann w hrend des 1 Schrittes kalibriert werden bzgl der Definition von Bitmustern siehe unten Step2 Bitmuster aus dem hervorgeht welche Achsen w hrend des 2 Schrittes des MCal Prozesses kalibriert werden sollen Eine beliebige Anzahl von Achsen von 0 bis zu allen 4 kann w hrend des 2 Schrittes kalibriert werden bzgl der Definition von Bitmustern siehe unten Step3 Bitmuster aus dem hervorgeht welche Achsen w hrend des 3 Schrittes des MCal Prozesses kalibriert werden sollen Eine beliebige Anzahl von Achsen von 0 bis zu allen 4 kann w hrend des 3 Schrittes kalibriert werden bzgl der Definition von Bitmustern siehe unten Step4 Bitmuster aus dem hervorgeht welche Achsen w hrend des 4 Schrittes des MCal Prozesses kalibriert werden sollen Eine beliebige Anzahl
27. VRun FindParts VGet FindParts Part NumberFound numFound For i 1 To numFound VGet FindParts Part CameraXYU i found x y u Cnv_QueAdd 1 Cnv_Point 1 x y Next i SPEL Language Reference Rev 3 5 93 SPEL Sprachreferenz Cont Anweisung s Der Cont Befehl setzt einen Task nach Ausf hrung einer Pausen Anweisung wieder fort oder wenn eine Pause durch die Schutzabschrankung hervorgerufen wurde Syntax Cont Beschreibung Verwenden Sie den Cont Befehl um alle Tasks wieder fortzusetzen die durch die Pausen Anweisung oder die Schutzabschrankung unterbrochen wurden Verwandte Befehle Pause Beispiel einer Cont Anweisung Function main Xqt 2 monitor NoPause Do Jump P1 Jump P2 Loop Fend Function monitor Do If Sw pswitch On then Pause Wait Sw pswitch Off Cont End If Loop Fend 94 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Copy Befehl Kopiert eine Datei an einen anderen Ort Syntax Copy source destination Parameter source Pfad und Dateiname des Ursprungsortes der zu kopierenden Datei en destination Pfad und Dateiname des Zielortes an den die angegebenen Ursprungsdateien kopiert werden sollen Beschreibung Kopiert den angegebenen source Dateinamen zum angegebenen destination Dateinamen Wenn der Zielort bereits existiert tritt ein Fehler auf Platzhalter sind in den definierten Dateinamen nicht gestattet Derselbe Pfad und Dateiname darf nicht f r U
28. t Time ds d STNE N Br tS FmtStr d mmddhhmm f fS fot dat WOpen f as 30 Print 30 data Close 30 Fend 170 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz FolderExists Funktion berpr ft die Existenz eines Ordners Syntax FolderExists pathName Parameter pathName Ein Zeichenkettenausdruck der den Pfad des zu berpr fenden Ordners enth lt Das Laufwerk kann ebenfalls enthalten sein R ckgabewerte WAHR wenn die Datei existiert FALSCH wenn sie nicht existiert Verwandte Befehle FileExists Beispiel einer FolderExists Funktion If Not FolderExists d data Then MkDir d data EndIf SPEL Language Reference Rev 3 5 171 SPEL Sprachreferenz For Next s Die Befehle For Next werden zusammen verwendet um eine Schleife herzustellen in welcher Befehle die sich zwischen den Befehlen For und Next befinden mehrfach ausgef hrt werden wie vom Anwender angegeben Syntax For var initValue To finalValue Step increment statements Next var Parameter var Die Z hlvariable die mit der For Next Schleife verwendet wird Diese Variable wird normalerweise als Integer definiert kann jedoch auch als Realvariable definiert werden initValue Der Anfangswert f r den Z hler var finalValue Der Endwert des Z hlers var Sobald dieser Wert erreicht ist ist die For Next Schleife vollst ndig und die Ausf hrung wird mit der Anweisung welche auf den Next
29. 2 und PI 2 ca 1 57079 bis 1 5709 Verwenden Sie die RadToDeg Funktion um Radiantenwerte in Gradzahlen umzuwandeln Verwandte Befehle Abs Atan2 Cos DegToRad Int Mod Not RadToDeg Sgn Sin Sqr Str Tan Val Atan Funktionsbeispiel Das folgende Beispiel zeigt ein einfaches Programm welches den Atan Befehl nutzt Function atantest Real x y x 0 y 1 Print Atan of x is Atan x Print Atan of y is Atan y Fend 46 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Atan2 Funktion Gibt den Winkel der imagin ren Linie aus in Radiantenwerten welche die Punkte 0 0 und X Y verbindet Syntax Atan2 X Y Parameter X Numerischer Ausdruck der die X Koordinate repr sentiert Y Numerischer Ausdruck der die Y Koordinate repr sentiert R ckgabewerte Numerischer Wert in Radianten Pl 2 bis PI 2 Beschreibung Atan2 X Y gibt den Winkel der Linie aus welche die Punkte 0 0 und X Y verbindet Diese trigonometrische Funktion gibt einen Arkustangenswinkel in allen vier Quadranten aus Verwandte Befehle Abs Atan Cos DegToRad Int Mod Not RadToDeg Sgn Sin Sqr Str Tan Val Atan2 Funktionsbeispiel Das folgende Beispiel zeigt ein einfaches Programm welches den Atan2 Befehl nutzt Function at2test Real x y Print Please enter a number for the X Coordinate Input x Print Please enter a number for the Y Coordinate Input y Print Atan2 of x
30. 617 Durch ndern des Remote LP Power Low Eingangs wurden alle Tasks abgebrochen 618 Der Befehl GOTO wird erwartet 619 SPEL Runtime Treiber nicht aktiviert Bitte aktivieren Sie den Treiber unter Setup Optionen 620 SPEL muss neu gestartet werden bitte berpr fen Sie die Spannungsversorgung zur Drive Unit 621 Der Neustart von SPEL ist fehlgeschlagen Bitte berpr fen Sie die Spannungsversorgung zur Drive Unit 700 Ung ltige Ethernet E A Rack Nummer 701 Ung ltiger Ethernet E A Typ 702 Zeit berlauf bei der Ethernet Kommunikation 703 Allgemeiner Ethernet E A Fehler 704 Der Ethernet E A Schnittstellenanschluss wurde nicht gefunden 705 Es konnte kein Ethernet E A Anschlu erzeugt werden 706 Es konnte keine Verbindung zum Ethernet E A Anschluss hergestellt werden 707 Ung ltige R ckmeldung vom Ethernet E A Hauptmodul 708 Die Option Ethernet E A ist nicht aktiviert 750 Die Option Kraftmessung ist nicht aktiviert 751 Ung ltiger Kraftsensor 752 Ung ltige Kraftsensor Achse 800 Die Sicherheitsoption ist nicht installiert 801 Ung ltiger Benutzer 802 Ung ltiges Password 803 Zugriff verweigert 900 Die Option Code Lesen ist nicht aktiviert 1000 Fehlerz hler bersteigt die maximale Anzahl von 20 die Kompilierung wurde abgebrochen 1001 System Fehler SPEL Language Reference Rev 3 5 469 SPEL Fehlermeldungen
31. 9402 System Fehler 9403 System Fehler 9404 System Fehler 9701 System Fehler 9702 System Fehler 9703 System Fehler 9704 System Fehler 9705 System Fehler 9706 System Fehler 9707 System Fehler 9800 System Fehler 9880 System Fehler 9901 System Fehler 9950 System Fehler SPEL Language Reference Rev 3 5 481 Glossar abgeblendet Wenn ein Men punkt ein Radiobutton eine Checkbox ein Button usw einen helleren Farbton hat normalerweise grau ist dieser Punkt nicht verf gbar Alphanumerisch Ein Zeichen das ein Buchstabe a z A Z oder eine Zahlzeichen 0 9 ist ANSI American National Standards Institute US amerikanisches Komitee f r Standards Normung Die ANSI RIA 15 06 Spezifikation ist beispielsweise der US amerikanische Standard f r Roboter Sicherheitsanforderungen Arbeitsbereich Der gesamte Arbeitsbereich einer Roboter Arbeits Zelle Der Arbeitsbereich ist als der Bereich definiert welchen die Roboter Arbeits Zelle belegt Der Arbeitsbereich kann in drei Teile unterteilt warden Der maximale Bereich Der gr te m gliche Bereich oder Rauminhalt in welchem sich der Roboter bewegen kann Der begrenzte Bereich Der Anteil des maximalen Bereiches auf welchen der Roboter durch begrenzende Ger te begrenzt wird Der Betriebsbereich Der Bereich in dem der Roboter arbeitet ASCII American Standard Code for Information Interchange Amerikanischer Standard Code f r Informat
32. Ausg ngen ausgew hlt von portNumber Da g ltige Ausg nge im BCD Format im Bereich von 0 bis 9 f r jede Stelle liegen kann nicht jede E A Kombination ausgeben werden Die Tabelle unten zeigt einige der m glichen E A Kombinationen und ihre entsprechenden outnum Werte davon ausgehend dass die portNumber Q ist 300 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Aus Aus Aus Aus Aus Aus Ein Aus Aus Aus Aus Ein Aus Aus Aus Aus Aus Ein Aus Aus Aus FAAEA AENEA Ein Aus Aus Ein Ein Aus Aus Bitte beachten Sie dass das BCD Format nur die Spezifizierung von Dezimalwerten zul sst Dies bedeutet dass es durch die Verwendung des BCD Formats nicht m glich ist alle Ausg nge mit dem OpBCD Befehl einzuschalten Bitte beachten Sie dass der Maximalwert f r jede outnum Ziffer 9 ist Dies bedeutet dass der gr te Wert den man mit OpBCD verwenden kann 99 ist Aus der Tabelle oben ist leicht ersichtlich dass 99 nicht alle Ausg nge einschaltet Stattdessen schaltet 99 die Ausg nge 0 3 4 und 7 ein und alle anderen aus Einschr nkung Der Unterschied zwischen OpBCD und Out Die Befehle OpBCD und Out sind einander in der SPEL Sprache sehr hnlich Es gibt jedoch einen Hauptunterschied zwischen den beiden Dieser Unterschied wird im Folgenden aufgezeigt Der OpBCD Befehl verwendet das BCD Format zur Spezifizierung eines 8 Bit W
33. Bewegungskombination horizontal und vertikal 3 W hrend der Horizontalbewegung in der LimZ Z Position D h keine Vertikalbewegung 4 Nachdem der Arm sich in Z Der Arm stoppt an seiner abw rts bewegt Zielposition Hinweise Auslassen des archNumber Parameters Wenn der optionale archnum Parameter weggelassen wird lautet der Vorgabe Arch Eintrag f r die Verwendung mit dem Jump Befehl C7 Dies verursacht die Gate Bewegung wie oben beschrieben Der Unterschied zwischen Jump und Go Der Go Befehl ist Jump in sofern hnlich als beide PTP Bewegungen verursachen Dabei gibt es jedoch viele Unterschiede Der wichtigste Unterschied ist dass der Go Befehl PTP Bewegungen verursacht bei denen alle Achsen zur selben Zeit starten und anhalten sie sind synchronisiert Der Jump Befehl unterscheidet sich davon indem er die vertikale Z Bewegung zu Beginn und Ende der Bewegung ausf hrt Der Jump Befehl ist ideal f r Best ckungs Anwendungen Verz gerung bis zum vollst ndigen Halt mit dem Jump Befehl Korrekte Geschwindigkeits und Beschleunigungs Befehle mit Jump Die Befehle Speed und Accel werden verwendet um Geschwindigkeit und Beschleunigung des Roboters w hrend der Jump Bewegung zu definieren Achten Sie darauf dass die Befehle Speed und Accel sich auf PTP Bewegungen beziehen Go Jump etc w hrend f r linearinterpolierte und kreisinterpolierte Bewegungen wie Move oder Arc die Befehle SpeedS und AccelS verwendet we
34. Conveyor Tracking installiert ist Verwandte Befehle Cnv_MakePoint Anweisung Beispiel einer Cnv_RobotConveyor Funktion Integer cnvNum cnvNum Cnv_RobotConveyor 1 SPEL Language Reference Rev 3 5 91 SPEL Sprachreferenz Cnv_Speed Funktion Gibt die aktuelle Geschwindigkeit eines Conveyors aus Syntax Cnv_Speed conveyorNumber Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert R ckgabewerte Real Wert in Millimetern pro Sekunde Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_Pulse Beispiel einer Cnv_Speed Anweisung Print Conveyor speed Cnv_Speed 1 92 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Cnv_Trigger Anweisung s Speichert den aktuellen Zustand der Conveyor Position f r die n chste Cnv_QueAdd Anweisung Syntax Cnv_Trigger conveyorNumber Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert Beschreibung Cnv_Trigger ist ein Software Triggerbefehl der verwendet werden muss wenn kein Hardware Trigger existiert der mit der PG Platine f r den Conveyor Encoder verkabelt ist Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_QueAdd Beispiel einer Cnv_Trigger Anweisung Boolean found Integer i numFound Real x y u Cnv_Trigger 1
35. Dies wird durch Verwenden des Sw Befehls erreicht Der Anwender kann berpr fen ob die Eing nge aus oder eingeschaltet sind und den Arm dazu veranlassen anzuhalten je nachdem welche Bedingung spezifiziert ist Dieses Feature arbeitet hnlich wie eine Unterbrechung Interrupt bei der Move unterbrochen gestoppt wird sobald die Eingangs Bedingung erf llt ist Wenn die Bedingung w hrend des Move Befehls nie erf llt wird erreicht der Arm erfolgreich den durch destination definierten Punkt F r weitere Informationen bez glich der Till Bedingung lesen Sie bitte unter Till Befehl weiter Hinweise Was die Move Anweisung nicht kann 1 Move kann keine ausschlie liche U Achsen Bewegung ausf hren 2 Move kann keine Bereichs berpr fung der Bewegungsbahn durchf hren bevor die Bewegung selbst gestartet wird Es ist dem System daher m glich sogar f r Zielpositionen die sich innerhalb eines gestatteten Bereiches befinden auf dem Weg zum Zielpunkt eine verbotene Position zu finden In diesem Fall kann der Arm abrupt zum Stehen kommen was einen Sto und den Servo Aus Zustand des Arms hervorrufen kann Um dem vorzubeugen sollten Sie sicherstellen dass bei niedriger Geschwindigkeit Bereichs berpr fungen durchgef hrt werden bevor Sie Move bei hohen Geschwindigkeiten verwenden Zusammenfassend hei t das dass obschon sich die Zielposition innerhalb des Armbereiches befindet es einige Bewegungen gibt die nicht ausgef hrt w
36. Function SubTask WaitSig 1 Print signal received Fend SPEL Language Reference Rev 3 5 449 SPEL Sprachreferenz Weight Anweisung s Definiert die Last des Roboterarms bzw gibt es aus Syntax Weight payloadWeight distance Parameter payloadWeight Das zu tragende Gewicht in kg distance Der Abstand zwischen dem Rotationsmittelpunkt des zweiten Arms zum Schwerpunkt des Greifers angegeben in mm R ckgabewerte Zeigt die aktuellen Weight Einstellungen an wenn die Parameter weggelassen werden Beschreibung Spezifiziert Parameter zur Kalkulation der maximalen Beschleunigung von PTP Bewegungen Die Weight Anweisung spezifiziert das Gewicht des Greifers und der zu tragenden Teile Die Spezifikation der Arml nge distance ist nur bei SCARA Robotern notwendig Die Arml nge ist der Abstand von der zweiten Arm Rotationsachsen Mittellinie zum kombinierten Schwerpunkt aus Roboterhand und Arbeitsst ck Wenn der quivalenzwert des Werkst ck Gewichtes welcher aus den spezifizierten Parametern berechnet wird die maximal erlaubte Nutzlast berschreitet tritt ein Fehler auf Potentielle Fehler Das Gewicht berschreitet das Maximum Wenn die quivalente Last welche aus dem eingegebenen Wert kalkuliert wird die maximale Last berschreitet tritt ein Fehler auf Potentieller Schaden des Manipulatorarms Beachten Sie dass die Spezifikation eines Weight Roboterhandgewichts welches bedeutsam niedriger ist al
37. Gain F8F9 Offset FDFE Motor 2 Enabled Power 100 Gain 601 Offset 2 Motor 3 Enabled Power 100 Gain C09 Offset FEFE Motor 4 Enabled Power 50 Gain FA00 Offset FFC ROBOT 1 XM3064 11 PN XM3064 11PN ARCH 0 30 30 ARCH 1 40 40 ARCH 2 50 50 ARCH 3 60 60 ARCH 4 70 70 ARCH 5 80 80 ARCH 6 90 90 ARMSET 0 0 0 0 0 0 CALPLS Undefined HOFS 0 0 0 0 HOMESET O 0 0 0 HORDR 4 11 0 0 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz HTEST 0 0 0 0 MCOFS 11 5943 8040 2330 42620 0 MCORDR 12 3 0 0 RANGE 90112 90112 60075 60075 92160 0 172032 172032 WEIGHT 5 0 XYLIM 0 0 0 0 ROBOT 2 EC250 120 EC251S ARCH 0 30 30 ARCH 1 40 40 ARCH 2 50 50 ARCH 3 60 60 ARCH 4 70 70 ARCH 5 80 80 ARCH 6 90 90 ARMSET O 125 0 0 125 0 CALPLS Undefined HOFS 0 0 0 0 HOMESET 0 0 0 0 HORDR 4 11 0 0 HTEST O 0 0 0 RANGE 0 163840 76800 76800 36864 0 46695 46695 WEIGHT 1 125 XYLIM 0 0 0 0 Verwandte Befehle Verinit Ver Beispiel gt Ver SPEL Language Reference Rev 3 5 443 SPEL Sprachreferenz Verinit Befehl Initialisiert die Robotersystem Parameter Syntax Verinit Beschreibung Verinit stellt Vorgabewerte f r alle Roboter ein Verinit initialisiert die folgenden Daten Befehl Standardwert Accel Variiert dem Manipulator Typ entsprechend AccelS Variiert dem Manipulator Typ entsprechend Arch 0 30 30 1
38. Language Reference Rev 3 5 SPEL Sprachreferenz Cnv_QueMove Anweisung s Bewegt Daten vom Conveyor Queue entgegen F rderrichtung zu einem Conveyor Queue in F rderrichtung Syntax Cnv_QueMove conveyorNumber index userData Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert index Optional Integer Ausdruck welcher den Index des ersten zu bewegenden Objekts in der Queue spezifiziert userData Optional Real Ausdruck der verwendet wird um Anwenderdaten zusammen mit dem Objekt abzuspeichern Beschreibung Der Befehl Cnv_QueMove wird verwendet um ein oder mehrere Objekte von einem Conveyor Queue zu seinem zugeh rigen Conveyor Queue in F rderrichtung zu bewegen Wenn index angegeben ist werden alle Objekte vom index bis zum Ende des Queue verschoben Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_QueGet Beispiel einer Cnv_QueMove Anweisung Cnv_QueMove 1 SPEL Language Reference Rev 3 5 85 SPEL Sprachreferenz Cnv_QueReject Anweisung s Stellt die Entfernung f r die Verwerfung aus dem Queue ein und zeigt sie an Syntax Cnv_QueReject conveyorNumber rejectDistance Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert rejectDistance Optional Real Ausdruck der die minimal erlaubte Entfernung zwischen Teilen innerhalb eines Queue in Millimetern definie
39. Language Reference Rev 3 5 21 SPEL Sprachreferenz Accel Anweisung s Acceleration Beschleunigung Stellt Beschleunigungs und Verz gerungsrampen f r die Roboter Bewegungsbefehle Go Jump und Pulse ein bzw zeigt sie an Syntax Accel accel decel Zupa Zupd Zdna Zdnd Parameter accel Integer Ausdruck zwischen 1 100 der f r einen Prozentteil der maximalen Beschleunigungsrampe steht decel Integer Ausdruck zwischen 1 100 der f r einen Prozentteil der maximalen Verz gerungsrampe steht Zupa Optional Z Achse Beschleunigung aufw rts G ltige Eintr ge sind 1 100 Zupd Optional Z Achse Verz gerung aufw rts G ltige Eintr ge sind 1 100 Zdna Optional Z Achse Beschleunigung abw rts G ltige Eintr ge sind 1 100 Zdnd Optional Z Achse Verz gerung abw rts G ltige Eintr ge sind 1 100 R ckgabewerte Wenn Parameter ausgelassen werden werden die aktuellen Accel Parameter angezeigt Beschreibung Accel spezifiziert Beschleunigung und Verz gerung f r alle Bewegungen des PTP Typs Dies bezieht auch Bewegungen ein die durch die Roboter Bewegungsbefehle Go Jump und Pulse ausgel st wurden Jeder durch den Accel Befehl definierte Beschleunigungs und Verz gerungsparameter kann ein Integer Wert von 1 100 sein Diese Zahl steht f r einen Prozentwert der erlaubten maximalen Beschleunigung oder Verz gerung Der Accel Befehl kann verwendet werden um neue Beschleunigungs und Verz gerungswerte einzustellen oder
40. On schaltet das angegebene Bit ein und Off schaltet das angegebene Bit aus Einschr nkung Der Unterschied zwischen Sw und Sw Es ist sehr wichtig dass der Anwender den Unterschied zwischen den Befehlen Sw und Sw versteht Der Off Befehl arbeitet mit dem internen Merker und hat keinerlei Auswirkungen auf die Hardware E As des Systems Der Sw Befehl arbeitet mit den Hardware Eingangskan len die sich auf der R ckseite des Steuerger tes befinden Diese HARDWAREkan le sind einzelne Eing nge die mit Ger ten au erhalb des Steuerger tes kommunizieren Verwandte Befehle In In InBCD Off Off On On OpBCD Oport Out Out Sw Wait SPEL Language Reference Rev 3 5 411 SPEL Sprachreferenz Sw Beispiel Das folgende Beispiel zeigt 2 Tasks Jeder der beiden Tasks hat die M glichkeit Bewegungsbefehle zu initiieren Jedoch wird ein Sicherungsmechanismus zwischen den beiden Tasks verwendet um sicherzustellen dass ein Task erst dann die Kontrolle ber die Bewegungsbefehle des Roboters erh lt wenn der andere Task deren Verwendung abgeschlossen hat Dies erm glicht es 2 Tasks Bewegungsbefehle korrekt und in geordneter vorhersehbarer Art und Weise auszuf hren Sw wird in Kombination mit dem Wait Befehl verwendet um zu warten bis Merker Nr 1 den richtigen Wert erreicht hat von dem an es sicher ist eine neue Bewegung auszuf hren Andere einfache Beispiele vom Online Fenster sehen aus wie folgt 412 Func
41. Real varl Real A 10 Eindimensionale Feldvariable aus Reals Real B 10 10 Zweidimensionale Feldvariable aus Reals Real C 10 10 10 Dreidimensionale Feldvariable aus Reals Real arrayVar 10 Integer i Print Pleas nter a Real Number Input varl Print The Real variable varl varl For i 1 To 5 Print Pleas nter a Real Number Input arrayVar i Print Value Entered was arrayVar i Next i Fend 358 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Redim Anweisung s Re dimensioniert eine Feldvariable Array w hrend der Laufzeit Syntax Redim Preserve arrayName subscripts Parameter Preserve Optional Spezifiziert den vorherige Inhalt der Feldvariable zu erhalten Wird die Angabe weggelassen so wird der Inhalt der Feldvariable gel scht arrayName Name der Feldvariable folgt den Standardkonventionen f r Variablenbenennung Die Feldvariable muss bereits deklariert worden sein subscripts Neue Dimensionen der Feldvariable Sie m ssen dieselbe Anzahl von Dimensionen wie bei der Deklaration der Variable angeben Die Syntax sieht aus wie folgt dim1 dim2 dim3 dim1 dim2 dim3 kann ein Integer Ausdruck zwischen O und 32767 sein Beschreibung Verwenden Sie Redim um die Dimensionen einer Feldvariable w hrend der Laufzeit zu ndern Verwenden Sie Preserve um die vorherigen Werte beizubehalten Verwandte Befehle Erase UBound Beispiel einer Re
42. Unter dem SPEL Options Reiter in der Systemkonfiguration erhalten Sie mehr Details Verwandte Befehle Accel AccelS LimZ Motor Off On SFree SLock Speed SpeedS Verinit Beispiel einer Reset Anweisung Dieses Beispiel zeigt den Reset Befehl vom Online Fenster aus ausgegeben gt reset gt 362 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Resume Anweisung s Setzt einen Task fort der durch den Halt Befehl unterbrochen war Syntax Resume taskldentifier All Parameter taskldentifier Taskname oder Integer Ausdruck der die Tasknummer repr sentiert Ein Taskname ist der Funktionsname der in einer Xqt Anweisung verwendet wird oder eine Funktion die vom Run oder vom Operator Fenster aus gestartet wird Wenn ein Integer Ausdruck verwendet wird liegt der Bereich zwischen 1 und 32 All Bestimmt dass alle Tasks fortgesetzt werden sollen Beschreibung Die Resume Anweisung setzt die Ausf hrung der Tasks fort die durch den Halt Befehl unterbrochen wurden Verwandte Befehle Halt Quit Xqt Beispiel einer Resume Anweisung Dieses Beispiel zeigt die Verwendung des Resume Befehls nach dem Halt Befehl Function main xqt 2 flicker F hrt Flicker als Task 2 aus Do Wait 3 Erlaubt Flicker 3 Sekunden lang auszuf hren Halt flicker H lt den Flicker Task an Wait 3 Resume flicker Setzt den Flicker Task fort Loop Fend Function flicker Do On 1 Wait 0 2 OFE T Wait 0 2 Loop
43. Versatzwert Hofs Dieser Versatz ist notwendig um den Ursprung eines jeden Roboterachsenmotors an den entsprechenden mechanischen Ursprung des Roboters anzugleichen Der Calib Befehl sollte verwendet werden wenn sich der Motor Pulse Wert ge ndert hat Zumeist kommt dieser Befehl nach dem Austausch eines Motors zur Anwendung Normalerweise passen die Pulse Werte der Kalibrierungsposition zu den CalPls Pulse Werten Nach Wartungsarbeiten wie z B dem Austausch von Motoren passen diese Werte jedoch nicht mehr zusammen was eine Kalibrierung notwendig macht Die Kalibrierung kann ausgef hrt werden indem Sie den Arm in die gew nschte Kalibrierungsposition bringen und dann den Calib Befehl ausf hren Durch die Ausf hrung des Calib Befehls wird der Pulse Wert der Kalibrierungsposition in den CalPls Wert ge ndert korrekter Pulse Wert f r die Kalibrierungsposition Um eine ordnungsgem e Kalibrierung durchzuf hren m ssen Hofs Werte bestimmt werden Um Hofs Werte automatisch zu berechnen bewegen Sie den Arm in die gew nschte Kalibrierungsposition und f hren Sie den Calib Befehl aus Die Steuerung berechnet Hofs Werte automatisch auf Basis der Pulse Werte der Kalibrierung und der CalPls Pulse Werte Hinweise Vorsicht beim Verwenden des Calib Befehls Die Verwendung des Calib Befehls ist ausschlie lich f r Wartungszwecke vorgesehen F hren Sie daher Calib nur aus wenn notwendig Die Ausf hrung von Calib bewirkt dass der Hofs We
44. lastPointNum muss ein Integer sein Beschreibung L scht spezifizierte Postitionsdaten aus dem Controller Punktspeicher f r den aktuellen Roboter L scht alle Positionsdaten angefangen bei firstPointNum bis lastPointNum einschlie lich Um zu verhindern dass Fehler Nr 2 auftritt muss firstPointNum kleiner sein als lastPointNum PDel Beispiel pl 10 300 10 0 L gt gt p2 0 300 40 0 gt pl0 50 350 0 0 gt pdel 1 2 L scht die Punkte 1 und 2 gt plist P10 50 000 350 000 0 000 0 000 R 0 gt pdel 50 L scht Punkt 50 gt pdel 100 200 L scht die Punkte 100 bis 200 gt 326 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz PList Zeigt Punktdaten an Syntax Plist Zeigt die Koordinatendaten der aktuellen Arm position an Plist StartPoint EndPoint Listet die spezifizierten Anfangs und Endpunkte auf Parameter StartPoint Der Startpunkt Index Der Indexbereich betr gt 0 bis number of points 1 EndPoint Der Endpunkt Index Der Indexbereich betr gt 0 bis number of points 1 R ckgabewerte Punktdaten Beschreibung Plist zeigt alle Punktdaten an die durch den Bereich Start und Endpunkt spezifiziert werden Wenn keine Punktdaten im spezifizierten Punktbereich vorhanden sind oder ein Startpunkt Index gr er als der Endpunkt Index spezifiziert ist werden keine Daten angezeigt SPEL Language Reference Rev 3 5 327 SPEL Sprachreferenz Di
45. localNumber Parameter point Pnumber oder P expr oder Punktlabel localNumber Ein Integer Ausdruck der die neue Local Nummer repr sentiert Der Bereich liegt zwischen 0 und 15 Verwandte Befehle PLocal Funktion Beispiel einer PLocal Anweisung PLocal pick 1 330 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz PLocal Funktion Gibt die lokale Nummer f r einen spezifizierten Punkt aus Syntax PLocal point Parameter point Pnumber oder P expr oder Punktlabel R ckgabewerte Local Nummer f r einen spezifizierten Punkt Verwandte Befehle PLocal Anweisung Beispiel einer PLocal Funktion Integer localNum localNum PLocal pick SPEL Language Reference Rev 3 5 331 SPEL Sprachreferenz Pls Funktion Gibt den aktuellen Encoder Pulswert f r jede Achse an der aktuellen Position aus Syntax PlIs jointNumber Parameter jJointNumber Die spezifische Achse f r die der aktuelle Encoder Pulswert ermittelt werden soll 1 XM X Achse Linearachse SCARA 1 Achse Rotationsachse 2 XM Y Achse Linearachse SCARA 2 Achse Rotationsachse 3 Z Achse 3 Achse Linearachse 4 UAchse 4 Achse Rotationsachse R ckgabewerte Gibt einen Nummernwert aus der den aktuellen Encoder Pulswert f r die durch jointNumber spezifizierte Achse ausgibt Beschreibung PIs wird verwendet um die aktuelle Encoderposition Pulswert jeder Achse zu lesen Diese Werte k nnen gespeichert und sp ter
46. 1000 Function tcpipl OpenNet 128 WaitNet 128 Print 128 Data from host 1 Fend PC 2 Port 128 Host Name PC1 TCP IP Port 1000 Function tcpip2 String data OpenNet 128 WaitNet 128 Input 128 data Print received data from host 1 Fend SPEL Language Reference Rev 35mm HT SPEL Sprachreferenz WaitPos Anweisung s Wartet bis der Roboter im CP Modus zum Stillstand verz gert hat bevor die n chste Anweisung ausgef hrt wird Syntax WaitPos robotNumber Parameter robotNumber Optional Spezifiziert auf welchen Roboter gewartet werden soll Verwandte Befehle Wait WaitSig Cp Beispiel einer WaitPos Anweisung Off 1 CP On Move P1 Move P2 WaitPos Wartezeit bis der Roboter verz gert On 1 CP Off 448 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz WaitSig Anweisung s Wartet auf ein Signal von einem anderen Task Syntax WaitSig signalNumber timeOuf Parameter signalNumber Integer Ausdruck der f r die zu empfangende Signalnummer steht Der Bereich liegt zwischen 0 und 127 timeOut Optional Real Ausdruck der die maximale Wartezeit repr sentiert Beschreibung Verwenden Sie WaitSig um auf ein Signal eines anderen Tasks zu warten Das Signal wird erst empfangen nachdem WaitSig begonnen hat Vorangegangene Signale werden ignoriert Verwandte Befehle Wait WaitPos Signal WaitSig Beispiel Function Main Xqt SubTask Wait 1 Signal 1 Fend
47. 121 SPEL Sprachreferenz Beispiel einer Declare Anweisung Declare MyDLLTest mystuff dll MyDLLTest As Long Function main Print MyDLLTest Fend Deklariert ein r DLL Funktion mit zwei Integer Argumenten und verwendet ein define um den DLL Dateinamen festzulegen define MYSTUFF mystuff dl1l Declare MyDLLCall MYSTUFF MyTestFunc Integer As Integer varl As Integer var2 As 122 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz DegToRad Function Konvertiert Gradma e zu Radianten Syntax DegToRad degrees Parameter degrees Real Ausdruck welcher die Gradzahlen repr sentiert die in Radianten konvertiert werden sollen R ckgabewerte Ein Double Wert der die Zahl des Radianten enth lt Verwandte Befehle ATan ATan2 RadToDeg Function Beispiel einer DegToRad Funktion s SPEL Language Reference Rev 3 5 Cos DegToRad x 123 SPEL Sprachreferenz Del Befehl L scht eine oder mehrere Dateien Syntax Del fileName Parameter fileName Pfad und Name der zu l schenden Datei en Der Dateiname sollte mit einer Dateinamenerweiterung spezifiziert werden Beschreibung L scht die angegebene n Datei en von der Festplatte des PCs Dateinamen und Dateinamenerweiterungen d rfen Platzhalter wie oder enthalten Wird an Stelle eines Dateinamens eingegeben erscheint die folgende Nachricht Are You Sure Y N Um alle
48. 255 308 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Die Tabelle unten zeigt einige der m glichen E A Kombinationen und ihre entsprechenden outData Werte davon ausgehend dass die portNumber 0 oder entsprechend 1 ist Ausgangseinstellungen wenn Per me Ausgangsnummer OutData Wert 7 6 5 3 2 J fo Tee Aus Aus Aus Aus Aus Aus Aus Ein P Aus taus Aus aus Aus aus Ein Aus Aus Aus Aus Aus Ein Aus ee Aus Aus Aus Au A Au Ein N Aus aus aus Aus ein au Aus a Aus Aus Aus Au Ei Au Aus Aus AAN Aus Aus Aus A Ei Au u ael al al al alala Aus Aus Au Ei Au Au Aus Aus amp us A aus Aus Aus Me En Rus Aus s Ein 99 Off On Aus Ein gt ne Au ER nn n 255 On On en On On On on Ein Ein Ein Ein Ein Ein Ein Ein Ausgangseinstellungen wenn portNumber 1 Ausgangsnummer OutData Wert 15 4 11 ee Aus Aus Aus A Aus Aus En aus i Aus Aus Aus Aus Em Aus Aus Aus Aus Aus Aus Ein Aus ee Aus Aus Aus Au A Au Ein N Aus Aus Aus Aus Em Als Als A Aus Aus Aus Aus Ei Aus Aus Aus Off Off On 0 Aus Aus le As Ein A En ano taus em taus ala Aus Aus Aus A Aus Aus Aus Aus Aus Aus i Aus Aus Als Ein Aus Aus Aus en NAAR Aus
49. 3 5 SPEL Sprachreferenz Agl Funktion Angle Winkel Gibt den Achswinkel f r die ausgew hlte Rotationsachse aus oder die Position f r die ausgew hlte Linearachse Syntax Agl Achsnummer Parameter Hinweise zur Achsnummer Integer Ausdruck der die Achsnummer repr sentiert SCARA Roboter Bei denen 1 die T1 Achse ist 2 die T2 Achse 3 die Z Achse und 4 die U Achse Kartesische Roboter Bei denen 1 die X Achse ist 2 die Y Achse 3 die Z Achse und 4 die U Achse R ckgabewerte Der Achswinkel f r die ausgew hlte Rotationsachse oder die Position f r die ausgew hlten Linearachsen Beschreibung Die Agl Funktion wird verwendet um den Achswinkel f r die ausgew hlte Rotationsachse oder die Position f r die ausgew hlte Linearachse zu erhalten Wenn die gew hlte Achse eine Rotationsachse ist gibt Agl den gegenw rtigen Winkel aus Dieser wird in Grad gemessen von der Nullposition der gew hlten Achse aus Der ausgegebene Wert ist eine Real Zahl Wenn die gew hlte Achse eine Linearachse ist gibt Agl die aktuelle Position in Millimetern mm aus von der Nullposition der gew hlten Achse aus gemessen Der ausgegebene Wert ist eine Real Zahl Wurde ber die Arm Anweisung ein zus tzlicher Arm ausgew hlt gibt Agl den Winkel bzw die Position von der Null Pulse Position des Standardarms zum gew hlten Arm aus Verwandte Befehle PAgl PIs PPIs Agl Funktionsbeispiel Die folgenden
50. 40 40 2 50 50 3 60 60 4 70 70 5 80 80 6 90 90 Arm 0 ArmSet L scht die Nutzer Definitionen Arm 1 bis 3 Arm 0 bleibt unver ndert Base 0 Entspricht dem urspr nglichen Roboter Koordinatensystem Base 1 15 Gel scht CtrIDev PC Fine Variiert entsprechend dem Manipulator Typ HomeSet Gel scht Hordr Variiert entsprechend dem Manipulator Typ LimZ 0 LOCAL 0 Entspricht dem urspr nglichen Roboter Koordinatensystem LOCAL 1 15 Gel scht MCordr Variiert dem Manipulator Typ entsprechend Speed Variiert dem Manipulator Typ entsprechend SpeedS Variiert dem Manipulator Typ entsprechend TLSet L scht die Nutzer Definitionen Tool 1 bis 3 Tool O bleibt unver ndert Tool 0 Weight Variiert dem Manipulator Typ entsprechend XYLim 0 0 0 0 Hinweis Dieser Befehl ist ausschlie lich zu Wartungszwecken zu verwenden Dieser Befehl ist f r Wartungszwecke vorgesehen Verinit initialisiert Werte wie oben beschrieben In den F llen in denen die Werte der Initialisierungsanweisung nicht gew nscht sind sollten Sie diese nach Ausf hrung des Verinit Befehls wieder ndern Verwandte Befehle Ver Beispiel eines Verinit Befehls gt verinit Initializing parameters for all robots gt 444 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Wait Anweisung s Veranlasst das Programm entweder eine definierte Zeit lang zu warten oder solange zu warten bis die spezifizierte Eingangsbedingung unter Verwendung
51. 5 SPEL Sprachreferenz Tmr Funktion Timer Funktion welche die Zeit die abgelaufen ist seit der Timer gestartet wurde in Sekunden angibt Syntax Tmr timerNumber Parameter timerNumber Integer Ausdruck der darstellt von welchem der 64 Timer die Zeit berpr ft werden soll R ckgabewerte Laufzeit des angegebenen Timers dargestellt als Real Zahl in Sekunden Der Timer deckt den Bereich von O bis ca 1 7E 31 ab Die Timer Aufl sung betr gt 0 000001 Sekunden Beschreibung Gibt die Zeit die vergangen ist seit der spezifizierte Timer gestartet wurde in Sekunden aus 64 Timer sind verf gbar nummeriert mit 0 63 Timer werden mit TmReset auf Null gestellt SPEL Timer verwenden die hochaufl senden Leistungsz hler der CPU des PCs Wenn sehr kleine Zeitintervalle ausgewertet werden beachten Sie dass es eine geringe Systemverwaltungszeit beim Abfragen der Timerwerte aus Ihrem SPEL Programm gibt Sie k nnen die Systemverwaltungszeit berechnen indem Sie Tmr direkt nach TMReset aufrufen Da die Systemverwaltungszeit sehr klein ist sie betr gt ca 10 Mikrosekunden ist es normalerweise nicht erforderlich dies in Betracht zu ziehen Real overhead TmReset 0 overHead Tmr 0 Verwandte Befehle TmReset Beispiel einer Tmr Funktion TmReset 0 Setzt den Timer 0 zur ck For I 1 To 10 F hrt Operationen 10 mal durch GoSub Cycle Next Print Tmr 0 10 Berechnet die Taktzeit und zeigt sie an SPEL Lang
52. Anzahl der Eintr ge als Integer Beschreibung Man verwendet Cnv_QueLen um herauszufinden wie viele Objekte in einem Queue zur Verf gung stehen Normalerweise wird man herausfinden wollen wieviele Objekte sich im Aufnahmebereich befinden Sie k nnen Cnv_QueLen auch als Argument zur Wait Anweisung verwenden Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_QueGet Beispiel einer Cnv_QueLen Funktion Do Do While Cnv_QueLlen 1 CNV_OUELEN_DOWNSTREAM gt 0 Cnv_QueRemove 1 0 Loop If Cnv_Quelen 1 CNV_QOUELEN_PICKUPAREA gt 0 Then Jump Cnv_QueGet 1 0 CO On gripper Wait 1 Cnv_QOueRemove 1 0 Jump place Off gripper Jump idlePos EndIf Loop SPEL Language Reference Rev 3 5 83 SPEL Sprachreferenz Cnv_QueList Anweisung s Zeigt eine Liste der Objekte an die sich im Queue des Conveyors befinden Syntax Cnv_QueList conveyorNumber numOfltems Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert num Ofltems Optional Integer Ausdruck der spezifiziert wie viele Objekte angezeigt werden sollen Wird dieser Parameter weggelassen werden alle Objekte angezeigt Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_QueGet Beispiel einer Cnv_QueList Anweisung Cnv_QueList 1 84 SPEL
53. Auswirkungen auf den Hardware E A Der Out Befehl arbeitet mit den Hardware Ausgangsports die sich auf der R ckseite des Steuerger tes befinden Diese Hardwareports sind einzelne Ausg nge die mit Ger ten au erhalb der Steuerung kommunizieren Verwandte Befehle In In InBCD Off Off On On Op Oport Out Sw Sw Wait Out Beispiel Das Beispiel unten zeigt wie der Haupttask einen Hintergrundtask namens iotask startet iotask ist ein einfacher Task um abwechselnd die Ausg nge 0 3 ein und dann wieder auszuschalten Der Out Befehl macht dies m glich indem nur 1 Befehl verwendet wird anstatt jeden Ausgang einzeln ein und auszuschalten Function main Xgt iotask Do Go P1 Go P2 Loop Fend Function iotask Do Out 0 amp HOF Out 0 amp HOO wait 10 Loop Fend Weiter einfache Beispiele vom Online Fenster gt Out 1 6 Schaltet die Ausg nge 9 amp 10 ein gt Out 2 1 Schaltet den Ausgang 8 ein gt Out 3 91 Schaltet die Ausg nge 24 25 27 28 und 30 ein 310 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Out Funktion Gibt den Status eines Ausgangsbytes aus Syntax Out portNumber Parameter portNumber Integer Ausdruck zwischen 0 und 63 der jeweils eine der 64 Ausgangsgruppen repr sentiert jede Gruppe enth lt 8 Ausg nge welche die Standard und die erweiterten Hardwareausg nge einschlie en Die portNumber Auswahl entspricht den folgenden Ausg ngen R ckgabewerte
54. Befehl folgenden Befehl weitergegeben Programmanweisungen die der For Anweisung folgen werden ausgef hrt bis ein Next Befehl erreicht wird Die Z hlervariable var wird dann durch den Step Wert inkrementiert der durch den Parameter increment definiert ist Wird die Step Option nicht genutzt wird der Z hler um 1 inkrementiert SPEL Language Reference Rev 3 5 285 SPEL Sprachreferenz Die Z hlervariable var1 wird dann mit dem Endwert finalval verglichen Wenn der Z hlerstand kleiner oder gleich dem Endwert finalval ist werden die Anweisungen die dem For Befehl folgen erneut ausgef hrt Wenn die Z hlervariable gr er als der Endwert finalval ist wird die Ausf hrung au erhalb der For Next Schleife verzweigt und f hrt mit dem Befehl fort welcher direkt auf den Next Befehl folgt Eine Verschachtelung von For Next Anweisungen wird bis zu einer Tiefe von 10 Leveln unterst tzt Dies bedeutet dass eine For Next Schleife in einer weiteren For Next Schleife verschachtelt werden kann usw bis 10 Verschachtelungen von For Next Schleifen vorhanden sind HINWEIS NEGATIVE Step Werte Wenn der Wert der Step Inkrementierung increment negativ ist wird die Z hlervariable varT bei jedem Durchlauf durch die Schleife dekrementiert verringert und der Erstwert initval muss gr er sein als der Endwert damit die Schleife funktioniert Verwandte Befehle For For Next Beispiel Function fornext Integer cer
55. Beispiel einer SavePoints Anweisung Clear For i 1 To 10 P i i 100 0 0 Next i SavePoints TEST PNT SPEL Language Reference Rev 3 5 379 SPEL Sprachreferenz Seek Anweisung s ndert die Position des Dateizeigers f r eine spezifizierte Datei Syntax Seek fileNumber pointer Parameter fileNumber Dateinummer zur Durchf hrung der Seek Operation pointer Gew nschte zu suchende Position beginnend bei 1 bis zur gesamten L nge der Datei Verwandte Befehle Read Write Beispiel einer Seek Anweisung Seek 30 20 Read 30 data 2 380 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Select Send s Definiert die Verzweigungsformel sowie die entsprechenden Anweisungssequenzen zum Verzweigen Syntax Select formula Case item statement Case item statement Default statement Send Parameter formula Das Vergleichs Objekt funktioniert dahingehend dass wenn eines der Case Objekte gleich formula ist die entsprechende Anweisungen ausgef hrt wird Formula kann Konstanten Variablen Variablenformeln und Logische Operatoren das schlie t And Or oder Xor ein beinhalten item Kann Konstanten oder Variablen beinhalten Dieses Objekt wird mit jeder Case Zeile verwendet und mit formula verglichen statement Jeglicher g ltige SPEL Anweisungs Befehl Beschreibung Wenn irgendein Case Objekt dem Select formula Ergebnis entspricht wird diese Case Objekt Anweisung ausgef hrt Nac
56. Beispiel einer Tan Funktion Function tantest Real num Print Enter number in radians to calculate tangent for Input num Print The tangent of num is Tan num Fend Das folgende Beispiel zeigt einige typische Resultate der Verwendung des Tan Befehls vom Online Fenster aus print tan 0 00 print tan 45 6197751905439 VHVONVM 414 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz TaskDone Funktion Syntax TaskDone taskldentifier Parameter taskldentifier Taskname oder Integer Ausdruck der die Tasknummer repr sentiert Ein Taskname ist der Funktionsname der in einer Xqt Anweisung verwendet wird oder eine Funktion die vom Run oder vom Operator Fenster aus gestartet wird Wenn ein Integer Ausdruck verwendet liegt der Bereich zwischen 1 und 32 R ckgabewerte TRUE wenn der Task abgeschlossen wurde FALSE wenn er nicht abgeschlossen wurde Beschreibung Verwenden Sie TaskDone um zu ermitteln ob ein Task abgeschlossen wurde Verwandte Befehle TaskState TaskWait Beispiel einer TaskDone Funktion Xgt 2 conveyor Do Loop Until TaskDone conveyor SPEL Language Reference Rev 3 5 415 SPEL Sprachreferenz TaskState Funktion Syntax TaskState taskldentifier Parameter taskldentifier Taskname oder Integer Ausdruck der die Tasknummer repr sentiert Ein Taskname ist der Funktionsname der in einer Xqt Anweisung verwendet wird oder eine Funktion die vom Run oder vom Operator F
57. Beispiel zeigt ein einfaches Programm das den Sqr Befehl nutzt Function sqrtest Real x Print Please enter a numeric value Input x Print The Square Root of x is Sqr x Fend 404 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Stat Funktion Gibt Informationen ber den Ausf hrungsstatus der Steuerung aus Syntax Stat address Parameter address Definiert welche Status Bits berpr ft werden sollen R ckgabewerte Gibt einen 4 Byte Wert aus der den Status der Steuerung darstellt Siehe Tabelle unten Beschreibung Der Stat Befehl gibt Informationen aus wie in der Tabelle unten gezeigt Adresse Bit Angegebener Status der Steuerung wenn das Bit eingeschaltet ist 0 0 amp HO Task 1 wird ausgef hrt Xqt oder ist im Halt Status bis bis bis amp H8000 Task 16 wird ausgef hrt Xgqt oder ist im Halt Status amp H10000 Task s wird werden ausgef hrt Pausezustand Fehlerzustand Attend Modus Not Halt Zustand Low Power Modus Energie ist niedrig Eingang der Sicherheitsabschrankung ist geschlossen Freigabeschalter ist offen 24 31 Nicht definiert amp HO Protokolleintragung des Stopps ber der Zielposition bei erf llter Bedingung in der Jump Sense Anweisung Dieser Protokolleintrag wird gel scht wenn eine andere Jump Anweisung ausgef hrt wird 1 amp H1 Protokolleintragung des Stopps an einer Zwischenposition bei erf llter Bedingung in der Go Jump Move Ti
58. Beispiele werden mittels des Print Befehls vom Online Fenster aus get tigt gt print agl 1 agl 2 11 234 85 355 SPEL Language Reference Rev 3 5 29 SPEL Sprachreferenz AOpen Anweisung s Append Open ffnen zum Anf gen ffnet eine Datei um Daten anzuf gen Syntax AOpen Dateiname As Dateinummer Close Dateinummer Parameter Hinweise zum Dateinamen Zeichenkettenausdruck der einen g ltigen Pfad und Dateinamen spezifiziert Hinweise zur Dateinummer Integer Ausdruck der Werte von 30 63 repr sentiert Beschreibung ffnet die angegebene Datei und identifiziert sie durch die spezifizierte Dateinummer Diese Anweisung wird verwendet um Daten an eine spezifizierte Datei anzuh ngen Der Befehl Close schlie t die Datei und gibt die Dateinummer aus Die spezifizierte Datei muss auf Diskette vorhanden sein anderenfalls tritt ein Fehler auf Die spezifizierte Dateinummer identifiziert die Datei w hrend sie ge ffnet ist und kann nicht dazu verwendet werden auf eine andere Datei zu verweisen bis die erste Datei geschlossen wurde Die Dateinummer wird von den Anweisungen Print und Close verwendet Verwandte Befehle Close Print ROpen WOpen Beispiel einer AOpen Anweisung Real data 200 WOpen TEST VAL As 30 For i 0 To 100 Print 30 data i Next I Close 30 AOpen TEST VAL As 30 For i 101 to 200 Print 30 data i Next i Close 30 30 SPEL Language Reference Rev 3 5
59. Das minimale Zeitintervall betr gt 0 01 Sekunden parallel Optional Wenn ein Timer eingestellt ist kann der parallel Parameter dazu verwendet werden festzulegen wann der n chste Befehl ausgef hrt wird 0 sofort nachdem der Ausgang ausgeschaltet wurde 1 nach Ablauf des definierten Zeitintervalls Vorgabewert Beschreibung Off schaltet den angegebenen Ausgang aus setzt ihn auf 0 Wenn der time Intervallparameter definiert ist wird der durch bitNumber spezifizierte Ausgang ausgeschaltet und nach Ablauf des Zeitintervalls wieder eingeschaltet Wenn der Ausgang vor Auf hrung von Off bereits ausgeschaltet war wird er nach Ablauf des Zeitintervalls wieder eingeschaltet Die parallel Parametereinstellungen sind anwendbar wenn das Zeitintervall wie folgt definiert ist 1 Schaltet den Ausgang aus nach Ablauf eines definierten Zeitintervalles wieder ein und f hrt dann den n chsten Befehl aus Dies ist auch der Vorgabewert f r den parallel Parameter Wird dieser Parameter weggelassen ist dies das gleiche als w rde der Parameter auf 1 gesetzt 0 Schaltet den Ausgang aus und f hrt gleichzeitig den n chsten Befehl aus Einschr nkung Ausg nge die als Remote Control Ausg nge konfiguriert sind Wenn ein Ausgang spezifiziert wird der als Systemausgang eingestellt war so tritt ein Fehler auf Remote Control Ausg nge werden je nach Systemstatus automatisch ein oder ausgeschaltet Verhalten der Ausg nge im Falle von Not Ha
60. Dateien im aktuellen Verzeichnis zu l schen treffen Sie folgende Wahl Y Um den Del Befehl abzubrechen treffen Sie folgende Wahl N Verwandte Befehle Kill Del Beispiel Die folgenden Beispiele werden mittels des Del Befehls vom Online Fenster aus get tigt gt Del pnt L scht alle Punktdatein aus dem aktuellen Verzeichnis gt Del BAK L scht alle Dateien aus dem BAK Unterverzeichnis 124 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Dir Befehl Zeigt den Inhalt des angegebenen Verzeichnisses an Syntax Dir filename Parameter fileName Pfad und Name der im angegebenen Pfad zu suchenden Datei Der Dateiname wird nur verwendet um spezifische Dateien im angegebenen Verzeichnis anzuzeigen anstatt alle Dateien anzuzeigen Dateiname und Dateinamenerweiterung d rfen Platzhalter enthalten R ckgabewerte Zeigt den Inhalt des angegebenen Verzeichnisses an Beschreibung Zeigt Dateinamen Verzeichnisnamen Dateigr e und Datum und die Zuschreibung von Datum und Uhrzeit f r bestimmte Verzeichnisse und Dateien an F r diejenigen Anwender die bereits Erfahrungen mit DOS haben der Dir Befehl in SPEL funktioniert hnlich dem dir Befehl unter DOS Hinweise Wenn Pfad oder Dateiname weggelassen werden Wenn der Pfad weggelassen wird zeigt Dir die Datei en im aktuellen Verzeichnis an Wenn der Dateiname weggelassen wird zeigt Dir alle Dateien im aktuellen Verzeichnis an Dies entspricht de
61. Den Ausgangsstatus als 8 Bit Wert f r den spezifizierten Port Verwandte Befehle Out Anweisung Beispiel einer Out Funktion Print Out 0 SPEL Language Reference Rev 3 5 311 SPEL Sprachreferenz Out Anweisung s Stellt gleichzeitig 8 S W Merker ein Syntax Out portNumber outData Parameter portNumber Integer Ausdruck zwischen 0 und 63 der jeweils eine der 64 Ausgangsgruppen repr sentiert jede Gruppe enth lt 8 Ausg nge die die 512 Merker Ausg nge bilden Die portNumber Auswahl entspricht den folgenden Ausg ngen Portnummer Ausg nge 0 0 7 1 8 15 63 496 511 outData Integer zwischen 0 und 255 der das Ausgangsmuster f r die mit der Anweisung portNumber ausgew hlte Ausgangsgruppe repr sentiert Wenn sie in hexadezimaler Form dargestellt wird wird der Bereich von amp HO bis amp HFF abgedeckt Die niedrigere Ziffer repr sentiert die niederwertigen Stellen oder die ersten 4 Ausg nge und die obere Ziffer repr sentiert die h herwertigen Stellen oder die zweiten 4 Ausg nge Beschreibung Out setzt unter Nutzung der vom Anwender angegebenen Kombination aus portNumber und outData Werten gleichzeitig 8 S W Merker Die 512 Merker werden in 64 Gruppen mit jeweils 8 Eing ngen unterteilt Der portNumber Parameter f r den Out Befehl definiert welche 8er Ausgangsgruppe verwendet werden soll wobei portNumber 0 die Ausg nge 0 7 bedeutet portNumber 1 bedeutet die Ausg nge 8 15 etc Sobald ein
62. ENetlO_Off ENetIO_On ENetlO_Oport ENetlO_Out ENetlO_Sw Beispiel einer ENetIO_In Funktion Print ENetIO_In 1 136 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ENetlO_Off 5 Schaltet einen EtherNet I O Ausgang aus Syntax ENetlO_Off bitNumber time Parameter bitNumber Integer Ausdruck der die auszuschaltende Bitnummer repr sentiert time Optionaler Parameter Gibt ein Zeitintervall in Sekunden an f r das der Ausgang ausgeschaltet bleiben soll Nachdem das Zeitintervall abgelaufen ist wird der Ausgang wieder eingeschaltet Das minimale Zeitintervall betr gt 0 01 Sekunden Beschreibung ENetlO_Off schaltet den angegebenen EtherNet I O Ausgang aus setzt ihn auf 0 Wenn der Zeitintervall Parameter definiert ist wird der durch bitNumber spezifizierte Ausgang ausgeschaltet und nach Ablauf des Zeitintervalls wieder eingeschaltet Wenn der Ausgang vor Auf hrung von ENetlO_Off bereits ausgeschaltet war wird er nach Ablauf des Zeitintervalls wieder eingeschaltet Hinweis Dieser Befehl funktioniert nur dann wenn die EtherNet I O Option installiert ist Verwandte Befehle ENetlO_Analn ENetIO_AnaOut ENetlO_In ENetlO_On ENetlO_Oport ENetlO_Out ENetlO_Sw Beispiel einer ENetIO_Off Anweisung ENetIO_Off 1 SPEL Language Reference Rev 3 5 137 SPEL Sprachreferenz ENetlO_On 5 Schaltet einen EtherNet I O Ausgang ein Syntax ENetlO_On bitNumber time Parameter bitNumber Integer Aus
63. FileExists Funktion If FileExists d data mydata dat Then Kill d data mydata dat EndIf gt SPEL Language Reference Rev 3 5 159 SPEL Sprachreferenz FileLen Funktion Gibt die L nge einer Datei aus Syntax FileLen fileName Parameter fileName Ein Zeichenkettenausdruck der den zu berpr fenden Dateinamen enth lt Laufwerk und Pfad k nnen ebenfalls enthalten sein R ckgabewerte Gibt die Anzahl von Bytes in der Datei aus Verwandte Befehle FileDateTime FileExists Beispiel einer FileExists Funktion Print FileLen c data mydata txt gt 160 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Find Anweisung s Gibt die Bedingung an unter der Koordinaten w hrend einer Bewegung gespeichert werden oder zeigt sie an Syntax Find condition Parameter condition Konditionaler Ausdruck der veranlasst dass die Koordinaten gespeichert werden Verwandte Befehle FindPos Go Jump PosFound Beispiel einer Find Anweisung Find Sw 5 On Go P10 Find If PosFound Then Go FindPos Else Print Cannot find the sensor signal End If SPEL Language Reference Rev 3 5 161 SPEL Sprachreferenz FindPos Funktion Gibt einen Roboterpunkt aus der w hrend einer Bewegung durch die Find Anweisung gespeichert wurde Syntax FindPos R ckgabewerte Ein Roboterpunkt der w hrend einer Bewegung durch die Find Anweisung gespeichert wurde Verwandte Befehle Find Go Jump PosFo
64. Function main Xgt monitor NoPause Dieser Task wird nicht angehalten Go P1 On 1 Jump P2 off 1 Pause Unterbricht die Programmausf hrung Go P40 Jump P50 Fend SPEL Language Reference Rev 3 5 323 SPEL Sprachreferenz PauseOn Funktion Gibt den aktuellen Pause Status aus Syntax PauseOn R ckgabewerte TRUE wenn sich der Controller im Pause Status befindet sonst FALSE Beschreibung PauseOn gibt TRUE aus wenn sich der Controller im Pause Status befindet PauseOn entspricht Stat 0 And amp H20000 lt gt 0 Verwandte Befehle EStopOn SafetyOn Stat Beispiel einer PauseOn Funktion If PauseOn Then Print Pause condition is On EndIf 324 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz PDef Funktion Gibt den Definitionsstatus eines spezifizierten Punktes aus Syntax PDef Point Parameter point Integer Ausdruck oder Pnumber oder P expr oder Punktlabel R ckgabewerte TRUE wenn der Punkt definiert ist sonst FALSE Verwandte Befehle Here Anweisung PDel Beispiel einer PDef Funktion If Not PDef 1 Then Here P1 Endif SPEL Language Reference Rev 3 5 325 SPEL Sprachreferenz PDel L scht spezifizierte Positionsdaten Syntax PDel firstPointNum lastPointNum Parameter firstPointNum Die erste Punktnummer in einer zu l schenden Punktsequenz firstPointNum muss ein Integer sein lastPointNum Die letzte Punktnummer in einer zu l schenden Punktsequenz
65. Hinweis Dieser Befehl funktioniert nur dann wenn die EtherNet I O Option installiert ist Verwandte Befehle ENetlO_In ENetlO_Off ENetlO_On ENetlO_Oport ENetlO_Out ENetlO_Sw Beispiel einer ENetIO_ClearLatches Funktion ENetIO_ClearLatches 1 SPEL Language Reference Rev 3 5 135 SPEL Sprachreferenz ENetIO_In Funktion Gibt den Status des angegebenen EtherNet I O Eingangsports aus Jeder Port enth lt 4 EtherNet I O Eingabekan le Syntax ENetlO_In portNumber Parameter portNumber Integer Ausdruck der einen der Eingangsports repr sentiert Beachten Sie dass jeder Port 4 Eingabekan le hat R ckgabewerte Gibt einen Integer Wert zwischen 0 und 15 aus Der R ckgabewert betr gt 4 Bits wobei jedes Bit einem EtherNet I O Eingabekanal entspricht Beschreibung ENetlO_In gibt Ihnen die M glichkeit die Werte von 4 EtherNet I O Eingabekan len gleichzeitig zu betrachten Da 4 Kan le zur gleichen Zeit gepr ft werden rangieren die R ckgabewerte zwischen 0 und 15 Bitte pr fen Sie die unten stehende Tabelle nach um zu sehen wie die R ckgabewerte den einzelnen EtherNet I O Eingabekan len entsprechen ENet Eingabekanal Ergebnis R ckgabewerte 3 2 1 0 1 Off Off Off On Aus Aus Aus Ein 5 Off On Off On Aus Ein Aus Ein 15 On On On On Ein Ein Ein Ein Hinweis Dieser Befehl funktioniert nur dann wenn die EtherNet I O Option installiert ist Verwandte Befehle ENetlO_Analn ENetIO_AnaOut
66. Liest On Latch und Off Latch des EtherNet I O Digitaleinganges Syntax ENetlO_SwLatch bitNumber latchType Parameter bitNumber Integer Ausdruck oder I O Label welches einen der EtherNet I O Digitaleing nge repr sentiert latchType On Off Beschreibung Jeder digitale Eingang hat zwei Latches Das On Latch wird gesetzt f r den Fall dass der Eingang jemals von Aus nach Ein umschaltet Das Off Latch wird gesetzt f r den Fall dass der Eingang jemals von Ein nach Aus umschaltet ENetlO_SwLatch wird verwendet um den Status eines Latches abzulesen ENetlO_ClearLatches wird verwendet um beide Latches zu l schen Hinweis Dieser Befehl funktioniert nur dann wenn die EtherNet I O Option installiert ist Verwandte Befehle ENetlO_In ENetlO_Off ENetIO_On ENetlO_Oport ENetlO_Out ENetlO_Sw Beispiel einer ENetlO_SwLatch Funktion Boolean latchStatus latchStatus ENetIO_SwLatch 0 On 142 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Eof Funktion Gibt den Status des Dateiendes aus Syntax Eof fileNumber Parameter fileNumber Integer Ausdruck der die zu pr fende Zahl repr sentiert R ckgabewerte WAHR wenn sich der Dateizeiger am Ende der Datei befindet ansonsten FALSCH Verwandte Befehle Lof Eof Beispiel Ropen test dat As 30 Do While Not Eof 30 Line Input 30 tLine Print tLine Loop Close 30 SPEL Language Reference Rev 3 5 143 SPEL Sprachreferenz EPrint An
67. Mid Space Str Val Right Beispiel Das Beispiel unten zeigt ein Programm das eine Part Zeichenkette als Eingang verwendet und Partnummer Partnamen und Part Z hlerstand aufteilt Function SplitPartData Dataln As String ByRef PartNum As String ByRef PartName As String ByRef PartCount As Integer PartNum Left Dataln 10 DataIn Right datain Len Dataln pos pos Instr DataIn PartName Mid DatalIn 11 10 PartCount Val Right dataIn s 5 Fend Einige andere Beispielergebnisse des Right Befehls vom Online Fenster gt Print Right ABCDEFG 2 FG gt Print Right ABC 3 ABC SPEL Language Reference Rev 3 5 367 SPEL Sprachreferenz RmDir Befehl Entfernt l scht ein leeres Unterverzeichnis aus dem Dateispeicher des Steuerger tes Syntax Rmdir dirName Parameter dirName Pfad und Name des zu entfernenden Verzeichnisses Beschreibung Entfernt l scht das spezifizierte Unterverzeichnis Vor der Ausf hrung von Rmdir m ssen alle Dateien des Unterverzeichnisses mit Ausnahme von und gel scht werden Das aktuelle Verzeichnis oder ein bergeordnetes Verzeichnis k nnen nicht gel scht werden Rmdir Beispiel Im Folgenden sehen Sie ein einfaches Beispiel vom Online Fenster gt Rd USR2 368 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Rnd Funktion Gibt eine Zufallszahl aus Syntax Rnd maxValue Parameter maxVal
68. On On On On On On On Ein Ein Ein Ein Ein Ein Ein Ein Einschr nkung Der Unterschied zwischen Out und Out Es ist sehr wichtig dass der Anwender den Unterschied zwischen den Befehlen Out und Out versteht Dieser Unterschied wird im Folgenden aufgezeigt Der Out Befehl arbeitet mit dem internen Merker und hat keinerlei Auswirkungen auf die Hardware E As Der Out Befehl arbeitet mit den Hardware Ausgangsports die sich auf der R ckseite des Steuerger tes befinden Diese Hardwareports sind einzelne Ausg nge die mit Ger ten au erhalb der Steuerung kommunizieren Verwandte Befehle In In InBCD Off Off On On OpBCD Oport Out Sw Sw Wait Out Beispiel Das Beispiel unten zeigt wie der Haupttask einen Hintergrundtask namens iotask startet iotask ist ein einfacher Task um abwechselnd S W E A Nrn 0 3 ein und dann wieder auszuschalten Der Out Befehl macht dies m glich indem nur 1 Befehl verwendet wird anstatt jeden S W Merker einzeln mit On und Off zu setzen Function main Xqt 2 iotask Go P1 Fend Function iotask Out 0 amp HOF Out 0 amp H0 Wait 0 GoTo OFend Andere einfache Beispiele vom Online Fenster sehen aus wie folgt gt Out 1 6 Schaltet die Ausg nge 9 amp 10 ein gt Out 2 1 Schaltet den Ausgang 8 ein gt Out 3 91 Schaltet die Ausg nge 24 25 27 28 und 30 ein SPEL Language Reference Rev 3 5 313 SPEL Sprachreferenz OutW An
69. SPEL Sprachreferenz Verwendung der Parameter L und R W hrend Local wie oben beschrieben im Wesentlichen Mittelpunkte f r die Positionierung der Achsen Ihres lokalen Koordinatensystems verwendet k nnen Sie optional das linke oder rechte Local auch ber die Parameter L und R definieren Left Local Linkes Local Left local definiert ein lokales Koordinatensystem durch Definition des Punktes pLocal1 entsprechend Punkt pBase1 im Basiskoordinatensystem die Z Achsen Richtung ist eingeschlossen Right Local Rechtes Local Right local definiert ein lokales Koordinatensystem durch Definition des Punktes pLocal2 entsprechend Punkt pBase2 im Basiskoordinatensystem Die Z Achsen Richtung ist eingeschlossen Verwendung des BaseU Parameters Wenn der Parameter BaseU weggelassen wird wird die U Achse des lokalen Koordinatensystems automatisch gem der X und Y Koordinatenwerte der definierten vier Punkte korrigiert Die zwei Punkte im Basiskoordinatensystem k nnen daher zun chst U Koordinaten Werte haben Es kann der Wunsch bestehen die U Achse des lokalen Koordinatensystems auf der Grundlage der U Koordinaten Werte der zwei Punkte im Basiskoordinatensystem selbst zu korrigieren anstatt sie automatisch korrigieren zu lassen z B Korrektur der Rotationsachse durch Teach In Um dies zu erreichen geben Sie bitte den BaseU Parameter an Hinweise Unter folgenden Bedingungen gehen lokale Definitionen verloren Die Definitionen der loka
70. Sie den Robot Befehl verwenden um den aktuellen Roboter auszuw hlen bevor Sie den Motor Befehl ausf hren Um den Roboter bewegen zu k nnen muss der Motorenstrom eingeschaltet sein Bei Robotern mit inkrementellen Encodern muss nach dem Systemstart auch noch der Mcal Befehl ausgef hrt werden F hren Sie Reset nach einem Not Halt aus oder nachdem ein Fehler aufgetreten ist welcher ein Reset mit dem Reset Befehl notwendig macht und f hren Sie dann Motor On aus Motor On stellt die folgenden Werte automatisch ein Power Niedrig Fine Vorgabewerte Speed Vorgabewerte SpeedS Vorgabewerte Accel Vorgabewerte AccelS Vorgabewerte Verwandte Befehle Power Reset Robot SFree SLock Beispiel der Motor Anweisung Die folgenden Beispiele werden vom Online Fenster aus ausgef hrt gt Motor On gt Motor Off SPEL Language Reference Rev 3 5 277 SPEL Sprachreferenz Motor Funktion Gibt den Status der Motore aus Syntax Motor R ckgabewerte 0 Motore aus 1 Motore eingeschaltet Verwandte Befehle Motor Anweisung Beispiel der Motor Funktion If Motor Off Then Motor On EndIf 278 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Move Anweisung s Bewegt den Arm von seiner aktuellen Position mittels linearer Interpolation an den definierten Punkt d h Bewegung in einer geraden Linie bei gleich bleibender Werkzeugmittelpunkt Geschwindigkeit Syntax Move destination CP searchExpr
71. TGo destination CP searchExpr Parameter destination Der Zielort der Bewegung unter Verwendung eines Punktausdrucks CP Optional Spezifiziert die Continuous Path CP kontinuierlicher Weg Bewegung searchExpr Optional Ein Till oder Find Ausdruck Till Find Till Sw expr Ein Aus Find Sw expr Ein Aus L Optional Parallelbearbeitungsanweisungen k nnen hinzugef gt werden um I O und andere Befehle w hrend der Bewegung auszuf hren Beschreibung F hrt eine relative PTP Bewegung im ausgew hlten Werkzeug Koordinatensystem aus Die Till Bedingung wird verwendet um TGo durch Verz gerung und Stoppen des Roboters an einer Zwischenposition des Verfahrweges abzuschlie en wenn die aktuelle Till Bedingung erf llt wird Der Find Befehl wird verwendet um einen Punkt in FindPos zu speichern wenn die Find Bedingung w hrend der Bewegung erf llt wird Verwandte Befehle TGo Beispiel Im Folgenden sehen Sie ein einfaches Beispiel vom Online Fenster gt TGo 100 0 0 0 Bewegt das aktuell gew hlte Werkzeug um 100mm in die X Richtung im Werkzeugkoordinatensystem 418 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Till Anweisung s Spezifiziert und zeigt die Eingangsbedingung an die wenn erf llt den durchgef hrten Bewegungsbefehl Jump Go Move usw abschlie t indem der Roboter an einer Zwischenposition verz gert und angehalten wird Syntax Till inputCondition
72. Wait TMOut Beispiel TMOut 5 wait Sw 0 If Tw Then Print Time out occurred EndIf SPEL Language Reference Rev 3 5 427 SPEL Sprachreferenz TMove Anweisung s F hrt im gew hlten Werkzeug Koordinatensystem eine linearinterpolierte Relatirbewegung aus Syntax TMove destination CP searchExpr Parameter destination Der Zielort der Bewegung unter Verwendung eines Punktausdrucks CP Optional Spezifiziert die Continuous Path CP kontinuierlicher Weg Bewegung searchExpr Optional Ein Till oder Find Ausdruck Till Find Till Sw expr Ein Aus Find Sw expr Ein Aus L Optional Parallelbearbeitungsanweisungen k nnen hinzugef gt werden um E A und andere Befehle w hrend der Bewegung auszuf hren Beschreibung F hrt im gew hlten Werkzeug Koordinatensystem eine linearinterpolierte Relatirbewegung aus Die Till Bedingung wird verwendet um TMove durch Verz gerung und Stoppen des Roboters an einer Zwischenposition des Verfahrweges abzuschlie en wenn die aktuelle Till Bedingung erf llt ist Der Find Befehl wird verwendet um einen Punkt in FindPos zu speichern wenn die Find Bedingung w hrend der Bewegung erf llt wird Verwandte Befehle TMove Beispiel Im Folgenden sehen Sie ein einfaches Beispiel vom Online Fenster gt TMove 100 0 0 O Bewegt das aktuell gew hlte Werkzeug um 100mm in die X Richtung im Werkzeugkoordinatensystem 428 SPEL Language Reference Rev 3
73. Z Achse w hrend der Ausf hrung des JUMP Befehls 6 Angegebener Wert der Verz gerung in der Abw rtsbewegung der Z Achse w hrend der Ausf hrung des JUMP Befehls R ckgabewerte Integer von 1 100 Verwandte Befehle Accel Anweisung Accel Funktionsbeispiel Dieses Beispiel benutzt die Accel Funktion in einem Programm Integer currAccel currDecel Holt die aktuellen Werte f r accel und decel currAccel Accel l currDecel Accel 2 Accel 50 50 Jump pick Speichert die vorangegangenen Einstellungen Accel currAccel currDecel SPEL Language Reference Rev 3 5 25 SPEL Sprachreferenz AccelS Anweisung s Stellt die die Beschleunigungs und Verz gerungsrampen f r geradlinige und CP Roboter Bewegungsbefehle ein z B Move und Arc Syntax AccelS accel decel Parameter accel Integer Ausdruck zwischen 1 5000 angegeben in mm sec um Beschleunigungs und Verz gerungswerte f r geradlinige und CP Roboter Bewegungsbefehle zu definieren Wenn decel ausgelassen wird so wird accel verwendet um sowohl Beschleunigungs als auch Verz gerungsrampen zu spezifizieren decel Optional Integer Ausdruck zwischen 1 5000 mm sec um den Verz gerungswert zu definieren R ckgabewerte Zeigt Beschleunigungs und Verz gerungswerte an wenn sie ohne Parameter verwendet werden Beschreibung AccelS spezifiziert Beschleunigung und Verz gerung f r alle Typen der Interpolationsbewegung inklusive linearer und
74. Zeigt die aktuellen Hofs Werte ohne Verwendung von Parametern an Beschreibung Hofs zeigt die Home Position Offset Pulse an oder stellt sie ein Wenn der Roboter die Achsen zu ihren Home Positionen bringt berpr ft das Steuerger t die Position mittels Home Sensor und Encoder Z Phase Normalerweise sind die Werte des Home Sensors und der Encoder Z Phase jedoch unterschiedlich Hofs wird daher verwendet um diesen Offset Wert zu definieren Hofs definiert den Offset vom Encoder Nullpunkt zum mechanischen Nullpunkt Obwohl die Bewegungssteuerung des Roboters auf dem Nullpunkt des Encoders basiert der auf jeden Achsmotor montiert ist stimmen Encoder Nullpunkt und mechanischer Nullpunkt des Roboters nicht notwendigerweise berein Der Korrektur Pulse des Hofs Offset Pulse wird verwendet um eine Softwarekorrektur am mechanischen Nullpunkt basierend auf dem Encoder Nullpunkt durchzuf hren Hinweis Hofs Werte SOLLTEN NICHT ge ndert werden es sei denn dies ist unumg nglich notwendig Die Hofs Werte werden vor der Auslieferung korrekt definiert Es besteht die Gefahr dass die unn tige Ver nderung des Hofs Wertes in Positionsfehlern und unvorhersehbaren Bewegungen resultiert Wir legen Ihnen daher dringend nahe die Hofs Werte nicht zu ndern es sei denn es ist absolut notwendig Automatische Berechnung von Hofs Werten Um Hofs Werte automatisch zu berechnen bewegen Sie den Arm in die gew nschte Kalibrierungsposition und f hren Sie den
75. an 1 f r Sonntag bis 7 f r Samstag Zeigt die Woche im Jahr als Zahl an 1 54 Zeigt den Monat als Zahl ohne vorangehende Null an 1 12 Wenn m direkt auf h oder hh folgt wird eher die Minute als der Monat angezeigt Zeigt den Monat als Zahl mit vorangehender Null an 01 12 Wenn m direkt auf h oder hh folgt wird eher die Minute als der Monat angezeigt Zeigt den Monat als Abk rzung an Jan Dez Zeigt den Monat mit vollem Monatsnamen an Januar Dezember Zeigt das Jahresquartal als Zahl an 1 4 Zeigt den Tag im Jahr als Zahl an 1 366 Zeigt das Jahr als zweistellige Zahl an 00 99 Zeigt das Jahr als vierstellige Zahl an 100 9999 Zeigt die Stunde als Zahl ohne vorangehende Null an 0 23 Zeigt die Stunde als Zahl mit vorangehenden Nullen an 0 23 Zeigt die Minute als Zahl ohne vorangehende Nullen an 0 59 Zeigt die Minute als Zahl mit vorangehenden Nullen an 0 59 Zeigt die Sekunde als Zahl ohne vorangehende Nullen an 0 59 Zeigt die Sekunde als Zahl mit vorangehenden Nullen an 0 59 Zeigt die Zeit als vollst ndige Zeit an inklusive Stunde Minute und Sekunde formatiert unter Verwendung des Zeittrennzeichens definiert durch das Zeitformat das von Ihrem System erkannt wird Eine vorangehende Null wird angezeigt wenn die entsprechende Option angew hlt ist und die Zeit vor 10 00Uhr morgens oder abends ist F r Microsoft Windows lautet das Vorgabe Zeitformat h mm ss Verwendet die 12 Stunden Uhr un
76. anzuhalten wird die weitere Programmausf hrung solange verz gert bis alle Parallelbearbeitungsanweisungen vollst ndig ausgef hrt wurden Hinweise JUMP Anweisung und Parallelbearbeitung Sollten Parallelbearbeitungsanweisungen ausgef hrt werden die zusammen mit dem JUMP Befehl verwendet werden so beginnen diese nachdem die vertikale Hubbewegung vollst ndig ausgef hrt wurde und enden am Beginn der abfallenden Bewegung Verwandte Befehle Arc Go Jump Move Pulse Das folgende Beispiele zeigt unterschiedliche Arten und Weisen wie das Parallelbearbeitungsfeature im Zusammenhang mit Bewegungsbefehlen verwendet werden kann Parallelbearbeitung mit dem JUMP Befehl schaltet Ausgang 1 am Ende der Aufw rtsbewegung der Z Achse ein und zwar dann wenn sich die erste zweite und vierte Achse zu bewegen beginnen Ausgang 1 wird dann wieder ausgeschaltet wenn 50 der JUMP Verfahrbewegung ausgef hrt worden sind Function test Jump P1 D0 On 1 D50 0 1 Fend Parallelbearbeitung mit dem JUMP Befehl schaltet Ausgang 5 ein nachdem die sich hebende Z Achse ihre Bewegung beendet hat und wenn das erste zweite und vierte Achse 10 ihrer Bewegung zum Punkt P1 zur ckgelegt haben 0 5 Sekunden sp ter schaltet der Ausgang 5 aus Function test2 Move P1 D10 On 5 Wait 0 5 0 f 5 Fend SPEL Language Reference Rev 3 5 15 SPEL Sprachreferenz define s Definiert eine ID Zeichenkette die durch eine festgelegte Ersatzzeichenk
77. damit der Roboter an einer Zwischenposition bis zum Halt abbremst noch bevor er die durch den Go Befehl verursachte Bewegung beendet Wenn die Till Bedingung nicht erf llt wird bewegt sich der Roboter zu seiner Zielposition Der Go Befehl mit der Till Bedingung kann auf zwei Arten und Weisen benutzt werden wie im folgenden beschrieben 1 Go Befehl mit Till Bedingung berpr ft ob die aktuelle Till Bedingung erf llt wird Wenn sie erf llt wird wird dieser Befehl durch Verz gerung und Anhalten des Roboters an einer Zwischenposition beendet 2 Go Befehl mit Till Bedingung Sw Eingangsnummer Bedingung und Eingangsbedingung Diese Version des Go Befehls mit Till Bedingung gestattet es dem Anwender die Till Bedingung in derselben Zeile wie den Go Befehl zu spezifizieren anstatt die aktuelle Definition zu verwenden die im Vorangegangenen f r Till definiert wurde Die spezifizierte Bedingung ist ganz einfach eine Gegenpr fung zu einem der Eing nge Dies wird durch Verwenden des Sw Befehls erreicht Der Anwender kann berpr fen ob die Eing nge aus oder eingeschaltet sind und den Arm dazu veranlassen anzuhalten je nachdem welche Bedingung spezifiziert ist Dieses Feature arbeitet hnlich wie eine Unterbrechung Interrupt bei der eine Bewegung unterbrochen gestoppt wird sobald die Eingangs Bedingung erf llt ist Wenn die Bedingung w hrend der Roboterbewegung nie erf llt wird erreicht der Arm erfolgreich den durch destinatio
78. den Arm Befehl ausgew hlt Die Parameter link1Dist und orientAngOffset sind optional Wenn sie ausgelassen werden werden die Vorgabewerte als Standard Armwerte verwendet Die Konfigurationsm glichkeit des Zusatzarmes erlaubt es dem Anwender die richtigen Roboterparameter f r seinen Roboter zu konfigurieren sollte die tats chliche Roboterkonfiguration sich leicht von der eines Standardroboters unterscheiden Wenn der Anwender beispielsweise eine zweite Ausrichtungsachse an die zweiten Roboterachse montiert hat wird der Anwender wahrscheinlich die richtigen Roboterachsverbindungen f r den neu angegliederten Roboterarm definieren wollen SPEL Language Reference Rev 3 5 41 SPEL Sprachreferenz Dies erm glicht die korrekte Funktionsweise des neu definierten Roboterarmes unter den folgenden Bedingungen ein einzelner Datenpunkt soll von zwei oder mehr Armen angefahren werden bei Verwendung des Befehls PALLET bei Angabe einer CP Bewegung bei Spezifikation einer relativen Position bei Verwendung lokaler Koordinaten Beim Betrieb eines SCARA Roboters mit drehbaren Achsen oder Robotern mit Zylinderkoordinaten in einem kartesischen Koordinatensystem werden die Berechnungen zu den Achswinkeln auf der Basis der ArmSet Parameter ausgef hrt Daher ist dieser Befehl kritisch wenn eine Definition f r einen Zusatzarm oder eine Hand ben tigt wird Hinweise Arm 0 Arm 0 kann durch den Anwender nicht definiert oder ge nde
79. den ersten Jump Befehl ist nicht mehr verf gbar Stellen Sie sicher dass Sie ihre JS Status Checks f r Jump Befehle immer direkt nach einem ausgef hrten zu pr fenden Jump Befehl t tigen Verwandte Befehle JT Jump Sense Beispiel einer JS Funktion Function SearchSensor As Boolean Sense Sw 5 1 Jump PO Jump Pl Sense If JS 1 Then Print Sensor was found SearchSensor TRUE EndIf Fend 238 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz JT Funktion Gibt den Status des zuletzt ausgegebenen JUMP Befehls f r den aktuellen Roboter aus Syntax JT R ckgabewerte JT gibt einen Long Wert aus angegeben durch die folgenden Bits Bit 0 Auf 1 gesetzt wenn die Hubbewegung begonnen hat oder die Hubdistanz 0 betr gt Bit 1 Auf 1 gesetzt wenn die Horizontalbewegung begonnen hat oder die Horizontaldistanz 0 betr gt Bit 2 Auf 1 gesetzt wenn die Senkbewegung begonnen hat oder die Senkdistanz 0 betr gt Bit 16 Auf 1 gesetzt wenn die Hubbewegung abgeschlossen ist oder die Hubdistanz 0 betr gt Bit 17 Auf 1 gesetzt wenn die Horizontalbewegung abgeschlossen ist oder die Horizontaldistanz O betr gt Bit 18 Auf 1 gesetzt wenn die Senkbewegung abgeschlossen ist oder die Senkdistanz 0 betr gt Beschreibung JT wird verwendet um den Status des zuletzt ausgef hrten Jump Befehls festzustellen der vor seiner Vervollst ndigung durch einen der Befehle Sense Till Abort etc gestoppt wurde Verwa
80. der neuen Mittellinie der Ausrichtungsachse gezogen wird Diese zwei Linien sollten sich an der Ellbogen Mittellinie berschneiden und der dadurch gebildete Winkel hei t Joint2Offset F r kartesische Roboter Der Positionsversatz in Y Achsen Richtung zur urspr nglichen Y Position wird in mm angegeben Hinweise zum zOffset F r SCARA amp kartesische Roboter Der Unterschied des Z H henversatzes zwischen der Mitte der neuen Ausrichtungsachse und der Mitte der alten Ausrichtungsachse Dabei handelt es sich um eine Entfernung Hinweise zur link1Dist F r SCARA Roboter Die Entfernung der Schulter Mittellinie zur Ellbogen Mittellinie der Ellbogenausrichtung der neuen Zusatzachse F r kartesische Roboter Hierbei handelt es sich um einen Dummy Parameter Spezifiziert mit 0 Hinweise zum orientAngOffset F r SCARA amp kartesische Roboter Der Winkelversatz in Grad f r die neue Ausrichtungsachse gegen ber der alten Ausrichtungsachse R ckgabewerte Wenn der ArmSet Befehl ohne Parameter initiiert wird zeigt das System die aktuellen Definitionsparameter des Zusatzarms an ArmSet gibt jedoch keine R ckgabewerte aus Beschreibung Der Befehl gestattet es dem Anwender Zusatzarm Parameter zu spezifizieren die zus tzlich zur Konfigurierung des Standard Arms verwendet werden k nnen Dies ist sehr n tzlich wenn am Roboter ein Zusatzarm oder eine Zusatzhand angebracht sind Wenn ein Zusatzarm verwendet wird so wird er durch
81. des Operators je nachdem von wo das Programm gestartet wurde Wird die CIrScr Anweisung aus einem Programm ausgef hrt welches vom Online Fenster aus gestartet wurde so wird sie ignoriert Verwandte Befehle Cls CirScr Beispiel Wenn dieses Beispiel vom Run oder vom Operator Fenster aus gestartet wird so wird der Textbereich des Fensters gel scht wenn ClrScr ausgef hrt wird Function main Integer i Do For i 1 To 10 Print i Next i Wait 3 ClrScr Loop Fend 72 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Cnv_AbortTrack Anweisung s Bricht einen Bewegungsbefehl an den Punkt eines Conveyor Queues ab Syntax Cnv_AbortTrack stopZheight Parameter stopZheight Optional Real Ausdruck der die Z Position spezifiziert zu der sich der Roboter nach Abbruch der Verfolgung bewegen sollte Beschreibung Wenn ein Bewegungsbefehl zu einem Punkt eines Conveyor Queues abl uft kann der Befehl Cnv_AbortTrack ausgef hrt werden um den Bewegungsbefehl abzubrechen Wird stopZHeight weggelassen wird der Roboter bis zum Halt verz gert abh ngig von der aktuellen QP Einstellung Wird stopZHeight spezifiziert wird sich der Roboter nur bis zu diesem Wert bewegen wenn sich die Position der Z Achse zum Zeitpunkt des Abbruchs unterhalb von stopZHeight befindet Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_RobotConveyor Anwei
82. die folgenden Bedingungen eintreten Ein Conveyor wird erzeugt Die SPEL Treiber werden gestartet Reset Motor On SFree oder SLock werden ausgef hrt Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_Fine Funktion Beispiel einer Cnv_Fine Anweisung Cnv_Fine 1 40 SPEL Language Reference Rev 3 5 75 SPEL Sprachreferenz Cnv_Name Funktion Gibt den Namen des spezifizierten Conveyors aus Syntax Cnv_Name conveyorNumber Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert R ckgabewerte Eine Zeichenkette String die den Namen des Conveyors enth lt Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_Number Beispiel einer Cnv_Name Funktion Print Conveyor 1 Name Cnv_Name 1 76 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Cnv_Number Funktion Gibt die Nummer eines namentlich spezifizierten Conveyors aus Syntax Cnv_Number conveyorName Parameter conveyorName Zeichenkettenausdruck welcher den Conveyornamen repr sentiert R ckgabewerte Integer Conveyornummer Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_Name Beispiel einer Cnv_Number Funktion Integer cnvNum envNum Cnv_Number Main Conveyor
83. einfach um die aktuellen Werte auszudrucken Wenn der Accel Befehl verwendet wird um neue Beschleunigungs und Verz gerungswerte einzustellen so sind die ersten 2 Parameters accel und decel im Accel Befehl erforderlich Die n chsten vier Parameter Zupa Zupd Zdna Zdnd sind jedoch optional Diese Werte sind nur f r den Jump Befehl wirksam Die Parameter Zupa Zupd Zdna und Zdnd repr sentieren Beschleunigungs und Verz gerungswerte f r die aufw rtsgerichtete Bewegung der Z Achse am Beginn der Jump Bewegung und f r die abw rtsgerichtete Bewegung der Z Achse am Ende der Jump Bewegung Zupa Beschleunigungsrampe w hrend des Jump Befehls Z Achse aufw rts Zupd Verz gerungsrampe w hrend des Jump Befehls Z Achse aufw rts Zdna Beschleunigungsrampe w hrend des Jump Befehls Z Achse abw rts Zdnd Verz gerungsrampe w hrend des Jump Befehls Z Achse abw rts Der Accel Wert wird auf die Standardwerte zur ckgesetzt niedrige Beschleunigung wenn eine der folgenden Aktionen ausgef hrt wird Einschalten der Versorgungsspannung Software Reset Befehl MOTOR ON Befehl SFree oder SLock Befehl VERINIT Dr cken der CTRL C Taste um den Roboter anzuhalten 22 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Einschr nkungen Ausf hren des Accel Befehls im Low Power Modus Power Low Wird Accel ausgef hrt wenn sich der Roboter im Low Power Modus befindet Power Low so werden die neuen Werte gespeichert d
84. f r eine Achse des aktuellen Sensors aus Gibt die aktuellen Werte f r alle Achsen des aktuellen Sensors in einer Matrix aus Stellt den aktuellen Sensor f r den aktuellen Task ein bzw gibt ihn aus Stellt den Kraftbegrenzungsausl ser des aktuellen Sensors f r Bewegungsbefehle ein Stellt den aktuellen Modus der Drehmomentsteuerung f r den aktuellen Roboter ein bzw gibt ihn aus Stellt die aktuellen Drehmoment Begrenzungen f r den aktuellen Roboter ein bzw gibt sie aus Stellt die aktuelle Geschwindigkeit nach Erreichen der Drehmoment Begrenzungen f r den aktuellen Roboter ein bzw gibt sie aus Gibt den aktuellen EPSON RC Anwender aus Logot als anderer Anwender in EPSON RC ein 11 SPEL Sprachreferenz Dieser Teil beschreibt jeden SPEL Befehl in folgenderArt und Weise Syntax Parameter R ckgabewerte Beschreibung Einschr nkung Hinweise Verwandte Befehle Beispiel Die Syntax beschreibt das Format das f r jeden Befehl benutzt wird F r einige Befehle wird mehr als eine Syntax angezeigt zusammen mit einer Zahl auf die in der Befehlsbeschreibung Bezug genommen wird Parameter werden in Kursivschrift dargestellt Beschreibt jeden in diesem Befehl enthaltenen Parameter Beschreibt alle Werte die auf den Befehl hin ausgegeben werden Beschreibt Details hinsichtlich der Funktionsweise des Befehls Zeigt potentielle Probleme auf wenn dieser Befehl in bestimmten Situationen genutzt wird
85. gew nschte Position zu bringen bevor der Arc Befehl ausgef hrt wird 32 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Potentielle Fehler nderung der Armattribute Achten Sie besonders auf die Armattribute der Punkte die mit dem Arc Befehl verwendet werden Wenn sich die Ausrichtung des Arms w hrend der Interpolationsbewegung ndert von rechtsarmiger zu linksarmiger Orientierung oder umgekehrt tritt ein Fehler auf Dies bedeutet dass die Armattributwerte L Lefty oder R Righty f r die aktuelle Position den Mittelpunkt und den Endpunkt identisch sein m ssen Versuch den Arm au erhalb des Arbeitsbereiches zu bewegen Wenn die spezifizierte Kreisbewegung versucht den Arm au erhalb seines Arbeitsbereiches zu bewegen tritt ein Fehler auf Verwandte Befehle IParallelbearbeitung AccelS Move SpeedS Arc Beispiel Das folgende Diagramm zeigt eine Bogenbewegung die ihren Ursprung bei Punkt P100 hatte sich dann durch Punkt P101 bewegt und bei Punkt P102 endet Die folgende Funktion w rde einen solchen Bogen generieren Function ArcTest Go P100 Arc P101 P102 Fend gt eP102 P101 P100 Annahme Es wird angenommen dass die Punkte P100 P101 und P102 vor Implementierung dieses Beispiels eingeteacht wurden Tipp Wenn Sie den Arc Befehl zum ersten Mal verwenden ist es ratsam einen einfachen Bogen mit Punkten direkt vor dem Roboter und ungef hr in der Mitte seines Arbeitsbereiches zu w hlen Vers
86. gheitsmoment in kgm um das Zentrum von Achse 4 definiert inklusive Endeffektor und Teil eccentricity Optional Real Ausdruck der die Exzentrizit t in mm um das Zentrum von Achse 4 definiert inklusive Endeffektor und Teil R ckgabewerte Wenn die Parameter weggelassen werden so werden die aktuellen Tr gheits Parameter angezeigt Beschreibung Die Inertia Anweisung wird von Robotern ab der E2 Serie unterst tzt Wenn Inertia mit Robotern lteren Typs verwendet wird treten Fehler auf Verwenden Sie die Inertia Anweisung um das vollst ndige Tr gheitsmoment f r die Last an Achse 4 zu definieren Dies gestattet es dem System Beschleunigung Verz gerung und Servoverst rkung f r Achse 4 akkurater zu kompensieren Sie k nnen auch die Entfernung vom Zentrum der Achse 4 zum Schwerpunkt von Endeffektor und Teil definieren indem Sie den Parameter eccentricity verwenden Verwandte Befehle Inertia Funktion Beispiel einer Inertia Anweisung Inertia 0 02 1 SPEL Language Reference Rev 3 5 223 SPEL Sprachreferenz Inertia Funktion Gibt den Wert des Tr gheits Parameters aus Syntax Inertia paramNumber Parameter paramNumber Integer Ausdruck der die folgenden Werte haben kann 0 Veranlasst die Funktion 1 auszugeben wenn der Roboter Tr gheitsparameter unterst tzt oder 0 wenn sie nicht unterst tzt werden 1 Veranlasst die Funktion die Lasttr gheit in kgm2 auszugeben 2 Veranlasst die Funktion die Exz
87. hat ein Alarmsignal erkannt 5000 Fehlfunktion des Servo Gate Arrays 5001 Kabeltrennung Encodersignal 5002 Motortreiber ist nicht installiert 5003 Zeit berlauf bei der Initialisierung des Inkremental Encoders 5004 Zeit berlauf bei der Initialisierung des Absolut Encoders 5005 Einstellungen f r die Encoderteilung sind ung ltig 5006 Absolut Encoder Zeichenfehler 5007 Absolut Encoder Rotations berlauf 5008 Pulsez hler berlauf 5016 Back up Alarm des absoluten Encoders 5017 Pr fsummenfehler des absoluten Encoders 5018 Batteriefehler im absoluten Encoder 5019 Absolut Encoder Absoluter Fehler 5020 berdrehzahl im absoluten Encoder 5021 Absoluter Encoder ist berhitzt 5032 Servo Alarm A 5040 Fehler im Motorendrehmoment im High Power Status 5041 Fehler im Motorendrehmoment im LOW Power Modus 5042 Positionsfehler im High Power Modus 5043 Positionsfehler im Low Power Modus 5044 Geschwindigkeitsfehler im High Power Modus 5045 Geschwindigkeitsfehler im Low Power Modus 5046 Zu hohe Geschwindigkeit im High Power Modus 5047 Zu hohe Geschwindigkeit im Low Power Modus 5048 berspannung 5049 berstrom 5050 Zu hohe Geschwindigkeit im Modus der Drehmomentsteuerung 5054 Servo berlastung A 5055 Servo berlastung B 5072 Servo Alarm B 5080 Servo berlastung C
88. ihn aus Definiert die Arbeitsbereichsgrenzen f r eine Achse bzw gibt sie aus Definiert die Grenzwerte f r alle Achsen Definiert die kartesischen Grenzwerte des Roboter Arbeitsbereiches bzw gibt sie aus Definiert den Koordinatenwert der X Achse eines Punktes bzw gibt ihn aus Definiert den Koordinatenwert der Y Achse eines Punktes bzw gibt ihn aus Definiert den Koordinatenwert der Z Achse eines Punktes bzw gibt ihn aus Definiert den Koordinatenwert der U Achse eines Punktes bzw gibt ihn aus Gibt den Pulse Wert einer Achse aus Gibt den Achswinkel der aktuellen Position aus Gibt den Achswert eines bestimmten Punktes aus Gibt die Pulse Position einer spezifizierten Achse f r einen bestimmten Punkt aus Zusammenfassung der SPEL Befehle Robot Definiert den aktuellen Roboter bzw gibt ihn aus Eingangs Ausgangs Befehle On Off Oport Sw In InW InBCD Out OutW OpBCD On off Sw In Out ZeroFlg Wait TMOut Tw Input Print Line Input Input Print Line Input Lof CIrScr EPrint InputBox LPrint MsgBox Schaltet den angegebenen Ausgang ein Schaltet den angegebenen Ausgang aus Liest den Status eines Ausganges Gibt den Status des Einganges aus Liest 8 Eing nge Gibt den Status des spezifizierten Eingangs Wordport aus Liest 8 Eing nge als BCD Code Bin r Dezimal Code Setzt 8 Ausg nge bzw gibt deren Status aus Setzt 16 Ausg nge gleichze
89. indem er den And Or oder Xor Befehl verwendet Mehr ber Wait erfahren Sie im Beispielabschnitt 3 Wait mit Eingangsbedingung und Zeitintervall Spezifiziert Wait Bedingung und Zeitintervall Wenn die Wait Bedingung erf llt ist oder das Zeitintervall abgelaufen ist springt die Programmsteuerung zum n chsten Befehl Verwenden Sie Tw um zu verifizieren ob die Wait Bedingung erf llt wurde oder ob das Zeitintervall abgelaufen ist Wichtige Hinweise Befehle die mit Wait arbeiten Die Wait Anweisung kann mit den Befehlen Sw oder Sw verwendet werden Sw wird verwendet um einzelne Hardware Eing nge zu berpr fen Sw wird verwendet um Merker zu berpr fen Siehe Einschr nkungen unten Die Wait Anweisung kann ferner mit dem Oport Befehl verwendet werden um den Status der Hardware Ausg nge zu berpr fen Um 8 I O Kan le gleichzeitig zu berpr fen kann der Wait Befehl mit den Befehlen In oder In verwendet werden In wird verwendet um 8 Hardware Eing nge gleichzeitig zu berp fen In wird verwendet um 8 Merker gleichzeitig zu berpr fen SPEL Language Reference Rev 3 5 445 SPEL Sprachreferenz Der Unterschied zwischen Wait Sw und Wait Sw F r den Nutzer ist es sehr wichtig den Unterschied zwischen den Befehlen Sw und Sw zu verstehen wenn diese mit dem Wait Befehl verwendet werden Der Wait Befehl erlaubt es dem System basierend entweder auf Hardware Eing ngen unter Verwendung des Sw Be
90. is Robot SPEL Language Reference Rev 3 5 371 SPEL Sprachreferenz RobotModel Funktion Gibt den Namen des Robotermodells aus Syntax RobotModel robotNumber Parameter robotNumber Optional Ein Integer Ausdruck der eine Roboternummer repr sentiert Wird diese Angabe weggelassen so wird die Nummer des aktuellen Roboters verwendet R ckgabewerte Eine Zeichenkette die den Namen des Modells enth lt Das ist der Name der auf der Roboterr ckseite steht Verwandte Befehle RobotType RobotModel Beispiel Print The robot model is RobotModel 372 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz RobotType Funktion Gibt den Robotertyp aus Syntax RobotType robotNumber Parameter robotNumber Optional Ein Integer Ausdruck der eine Roboternummer repr sentiert Wird diese Angabe weggelassen so wird die Nummer des aktuellen Roboters verwendet R ckgabewerte 1 ACHSE 2 KARTESISCH 3 SCARA 4 ZYLINDRISCH Verwandte Befehle RobotModel RobotType Beispiel If RobotType 2 Then Print Robot type is Cartesian EndIf SPEL Language Reference Rev 3 5 373 SPEL Sprachreferenz ROpen Anweisung s ffnet eine Datei zum Lesen Syntax ROpen fileName As fileNumber Parameter fileName Ein Zeichenkettenausdruck der den Namen der Datei enth lt aus der gelesen werden soll Laufwerk und Pfad k nnen ebenfalls enthalten sein fileNumber Integer Ausdruck zwischen 30 und
91. jedoch vom Run oder vom Operator Fenster aus gestartet wird werden alle Variablen automatisch gel scht Verwandte Befehle Redim UBound Beispiel einer Erase Anweisung Integer i a 10 For i 1 To 10 a i i Next i L scht alle Elemente von a Erase a 146 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz EResume Anweisung s Setzt die Ausf hrung nach Beendigung einer Fehlerbehandlungsroutine fort Syntax EResume Next Beschreibung EResume Wenn der Fehler in derselben Prozedur auftrat wie die Fehlerbehandlungsroutine wird die Ausf hrung mit der Anweisung die den Fehler verursacht hat fortgesetzt Wenn der Fehler in einer aufgerufenen Prozedur auftrat wird die Ausf hrung mit einer Anweisung fortgesetzt Als Anweisung wird diejenige verwendet welche zuletzt aus der Prozedur die eine Fehlerbearbeitungsroutine enth lt aufgerufen wurde EResume Next Wenn der Fehler in derselben Prozedur auftrat wie die Fehlerbehandlungsroutine wird die Ausf hrung mit der Anweisung fortgesetzt welche direkt auf diejenige folgt welche den Fehler verursacht hat Wenn der Fehler in einer aufgerufenen Prozedur auftrat wird die Ausf hrung mit einer Anweisung fortgesetzt Als Anweisung wird diejenige verwendet die direkt auf jene folgt welche zuletzt aus der Prozedur die eine Fehlerbearbeitungsroutine enth lt aufgerufen wurde Verwandte Befehle OnErr Beispiel einer EResume Anweisung Function LogDat
92. kurvenf rmiger Interpolationen Dies schlie t die Bewegungen ein die durch die Bewegungsbefehle Move und Arc initiiert wurden Der AccelS Wert wird auf die Standardwerte zur ckgesetzt niedrige Beschleunigung wenn eine der folgenden Aktionen ausgef hrt wird Einschalten der Versorgungsspannung Software Reset Befehl MOTOR ON Befehl SFree oder SLock Befehl VERINIT Dr cken der CTRL C Taste um den Roboter anzuhalten Einschr nkungen Ausf hren des AccelS Befehls im Low Power Modus Power Low Wird AccelS ausgef hrt wenn sich der Roboter im Low Power Modus befindet Power Low so werden die neuen Werte gespeichert aber die aktuellen Werte werden auf niedrige Werte begrenzt Die aktuellen Beschleunigungswerte sind wirksam wenn Power auf High eingestellt ist und der Attend Modus ausgeschaltet ist Der Unterschied zwischen den Befehlen Accel und AccelS Es ist wichtig zu wissen dass der AccelS Befehl nicht die Beschleunigungs und Verz gerungswerte f r PTP Bewegungen einstellt D h f r Bewegungen die durch die Befehle Go Jump und Pulse initiiert wurden Beschleunigungs und Verz gerungswerte f r PTP Bewegungen werden mit dem Accel Befehl eingestellt Verwandte Befehle Accel Arc Power Move TMove SpeedS 26 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz AccelS Beispiel Das folgende Beispiel zeigt ein einfaches Bewegungsprogramm in welchem die geradlinige CP Beschleunigung AccelS und die g
93. maximale L nge nicht berschritten wird Sie m ssen ebenfalls sicherstellen dass der Zeichenkette Platz zugeordnet wird bevor die DLL aufgerufen wird Es ist das Beste ber die Space Funktion 256 Bytes zuzuordnen wie im folgenden Beispiel gezeigt Declare ChangeString mystuff dl1 ChangeString ByRef a As String As Long Function main String a Weist der Zeichenkett in Leerzeichen zu bevor die DLL aufgerufen wird a Space 256 Call ChangeString a Print a after DEL call is p a Fend Numerische Matrizen durch ByRef weitergeben SPEL Declare MyDLLFunc mystuff dAll MyDLLFunc ByRef a As Long As Long VC long _stdcall MyDllFunc long a Ausgabe von Werten von der DLL Funktion Die DLL Funktion kann einen Wert f r jeglichen Datentyp ausgeben inklusive String Zeichenketten F r eine Zeichenkette muss jedoch ein Datenzeiger an eine der DLL zugeordnete Zeichenkette ausgegeben werden Und der Funktionsname muss in einem Dollarzeichen enden so wie bei allen SPEL Zeichenkettenvariablen und Funktionen Bitte beachten Sie dass alias kein Dollarzeichen Suffix hat Zum Beispiel Declare ReturnLong mystuff dll ReturnLong As Long Declare ReturnString mystuff dll ReturnString As String Function main Print ReturnLong ReturnLlong Print ReturnString ReturnString Fend Verwandte Befehle Function Fend SPEL Language Reference Rev 3 5
94. mit dem Pulse Befehl verwendet werden Verwandte Befehle CU CX CY CZ Pulse Beispiel einer Pls Funktion Im Folgenden wird ein einfaches Beispiel gezeigt wie man die Pulse Werte f r jede Achse erh lt und sie druckt Function plstest Real tl t2 z u t1 pls 1 t2 pls 2 z pls 3 u pls 4 Print T1 joint current Pulse Value t1 Print T2 joint current Pulse Value t2 Print Z joint current Pulse Value z Print U joint current Pulse Value u Fend 332 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz PNumber Funktion Gibt die mit einem Punktlabel verbundene Punktnummer aus Syntax PNumber pointLabel Parameter pointLabel Ein Punktlabel das in der aktuellen Punktdatei verwendet wird oder ein Zeichenkettenausdruck der ein Punktlabel enth lt Verwandte Befehle PDef Funktion PLabel Funktion Beispiel einer PNumber Funktion nteger pNum tring pointName nH Num PNumber pick Num PNumber pick P P pointName place pNum PNumber pointName SPEL Language Reference Rev 3 5 333 SPEL Sprachreferenz Punkt Zuweisung s Definiert einen Roboterpunkt indem er einem Punktausdruck zugeordnet wird Syntax point pointExpr Parameter point Ein Roboterpunkt spezifiziert wie folgt Pnumber P expr pointLabel pointExpr Punktausdruck Beschreibung Definiert einen Roboterpunkt indem er einem anderen P
95. nutzen kann der Anwender auch ein Label definieren empfohlene L sung Wenn der Anwender ein Label definiert an Stelle der Zeilennummer wird die Programmausf hrung zu der Zeile wechseln in der sich dieses Label befindet Das Label kann bis zu 24 Zeichen lang sein Das erste Zeichen muss jedoch ein Buchstabe sein keine Zahl Beschreibung Der GoSub Befehl bewirkt dass die Programmsteuerung an eine durch den Anwender definierte Anweisungs Zeilennummer oder zu einem gleicherma en definierten Label verzweigt wird Das Programm f hrt dann die Anweisung in dieser Zeile aus und f hrt mit der Ausf hrung in den darauf folgenden Zeilennummern fort bis es auf einen Return Befehl trifft Der Return Befehl veranlasst die Programmsteuerung zur ck zu der Zeile zu wechseln welche direkt auf diejenige folgt die GoSub urspr nglich initiiert hatte D h der GoSub Befehl veranlasst die Ausf hrung eines Unterprogramms wonach die Ausf hrung zu der Anweisung zur ckkehr die auf den GoSub Befehl folgt Stellen Sie sicher dass jedes Unterprogramm mit Return beendet wird Diese Vorgehensweise veranlasst die Programmausf hrung zu der Zeile zur ckzukehren die auf den GoSub Befehl folgt Potentielle Fehler Verzweigen zu einer nicht existierenden Anweisung Wenn der GoSub Befehl versucht die Steuerung an eine nicht existente Zeilennummer oder Label zu verzweigen wird Fehler Nr 8 ausgegeben Der Verschachtelungslevel f r GoSub Befehle ist zu tie
96. r die Arch Bewegung verwendet werden soll die durch den Jump Befehl hervorgerufen wird Der archNumber muss immer der Buchstabe C vorangestellt werden G ltige Eintr ge sind CO C7 zLimit Optional Dies ist ein Z Grenzwert der die Maximalposition repr sentiert zu der sich die Z Achse w hrend einer Jump Bewegung bewegen l sst Man kann dies als Z H hen Obergrenze f r den Jump Befehl betrachten Jeglicher g ltige Z Achsen Koordinatenwert ist zul ssig searchExpr Optional Ein Sense Till oder Find Ausdruck Sense Till Find Sense Sw expr Ein Aus Till Sw expr Ein Aus Find Sw expr Ein Aus I Optional Parallelbearbeitungsanweisungen k nnen zum Jump Befehl hinzugef gt werden um I O und andere Befehle w hrend der Bewegung auszuf hren Beschreibung Jump bewegt den Arm von seiner aktuellen Position zur destination unter Verwendung der so genannten Arch Bewegung Bogen Bewegung Man kann Jump als drei Bewegungen in einer betrachten Wenn beispielsweise der durch archNumber definierte Arch Tabellen Eintrag 5 ist werden die folgenden drei Bewegungen ausgef hrt 1 Die Bewegung beginnt nur mit der Z Achse bis diese die H he erreicht hat die durch die Arch Nummer errechnet wurde welche f r den Jump Befehl verwendet wird 2 Als n chstes bewegt der Arm sich horizontal w hrend er in der Z Achse noch immer die Hubbewegung durchf hrt in Richtung der Zielpunkt Position bis der obere Grenzpunkt der Z
97. s Stellt die erlaubten Grenzwerte des Arbeitsbereichs der XY Ebene f r den Roboter ein oder zeigt diese an Syntax XYLim minX maxX minY maxY Parameter minX Die minimale X Koordinatenposition zu welcher der Manipulatorarm verfahren kann Der Manipulatorarm darf zu keiner Position verfahren deren X Koordinate kleiner als minX ist maxX Die maximale X Koordinatenposition zu welcher der Manipulatorarm verfahren kann Der Manipulatorarm darf zu keiner Position verfahren deren X Koordinate gr er als maxX ist minY Die minimale Y Koordinatenposition zu welcher der Manipulatorarm verfahren kann Der Manipulatorarm darf zu keiner Position verfahren deren Y Koordinate kleiner als minY ist maxY Die maximale Y Koordinatenposition zu welcher der Manipulatorarm verfahren kann Der Manipulatorarm darf zu keiner Position verfahren deren Y Koordinate gr er als maxY ist R ckgabewerte Zeigt die aktuellen XYLim Werte wenn keine Parameter verwendet werden Beschreibung XYLim wird verwendet um die Arbeitsbereich Grenzwerte der XY Ebene zu definieren Viele Robotersysteme erlauben es dem Anwender Arbeitsbereichsgrenzen zu definieren die SPEL Sprache jedoch gestattet es sowohl die Arbeitsbereichsgrenzen als auch die Grenzwerte f r die XY Ebene zu definieren In der Tat ist es den Nutzern so m glich einen XY Ebenen Arbeitsbereich f r ihre Anwendung anzulegen Bedenken Sie dass die Grenzwerte des Achsenbereichs ebenfalls m
98. sein Verwandte Befehle Boolean Byte Global Integer Long Real String Beispiel einer Double Anweisung Das folgende Beispiel zeigt ein einfaches Programm das unter Verwendung von Double einige Variablen deklariert Function Double Double Double Double Double Integer i qd v A B C a oubletest arl 10 Eindimensionale Feldvariable aus Doubles 10 10 Zweidimensionale Feldvariable aus Doubles 10 10 10 Dreidimensionale Feldvariable aus Doubles rrayvar 10 Print Please enter a Number Input varl Print The variable varl varl For I 1To5 Print Please enter a Number Input arrayvar i Print Value Entered was arrayvar i Next I Fend 128 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ECIr Anweisung s L scht den Fehlerstatus nach Auftreten eines Fehlers Syntax ECir Beschreibung EClir wird verwendet um den Fehlerstatus nach Auftreten eines Fehlers zu l schen und wird normalerweise in einem Fehlerbehandlungs Unterprogramm benutzt Wenn im Normalfall ein Fehler auftritt und keine OnErr Anweisung vorhanden ist d h es wird keine Fehlerbehandlung benutzt wird der Task abgebrochen und es wird der entsprechende Fehlercode angezeigt Wenn jedoch eine Fehlerbehandlungsroutine verwendet wird um den Fehler abzufangen durch Verwendung des OnErr Befehls muss der Fehler gel scht werden um eine erfolgreiche R ckkehr von der Fehlerbehandlun
99. sein dass ein Fehler ausgegeben wird mit dem Hinweis dass die aktuelle Position nicht aufrecht erhalten werden konnte Das liegt daran dass sich der Roboter ohne Drehmomentsteuerung nicht zur richtigen Position bewegen kann Verwandte Befehle Force_TCLim Anweisung Beispiel einer Force_TC Anweisung Speed 5 Setzt die Drehmomentbegrenzung der Z Achse auf 20 Prozent Force_TCLim 1 1 20 1 Force_TCSpeed 5 Force_TC On Go Place Force_TC Off 180 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Force_TCLim Funktion Gibt die aktuelle Drenmomentbegrenzungs Einstellung f r einen definierten Punkt aus Syntax Force_TCLim jointNumber Parameter JointNumber Integer Ausdruck welcher die Achsnummer repr sentiert f r die die Drehmomentbegrenzungs Einstellung ausgegeben werden soll R ckgabewerte Ganze Zahl welche die aktuelle Drehmomentbegrenzung enth lt 1 zeigt dass die Drehmomentbegrenzung deaktiviert ist Verwandte Befehle Force_TCLim Anweisung Beispiel einer Force_TCLim Funktion Print The current torque limit for Z is Force_TCLim 3 SPEL Language Reference Rev 3 5 181 SPEL Sprachreferenz Force_TCLim Anweisung s Stellt die Drehmomentbegrenzung f r alle Achsen f r die Drehmomentsteuerung ein Syntax Force_TCLim j1TorqueLimit j2TorqueLimit j3TorqueLimit j4TorqueLimit Parameter J TorqueLimit Integer Ausdruck der den Drehmomentbegrenzungswert f r Achse 1 in Pr
100. u erst links steht R ckgabewerte Gibt eine Zeichenkette der u erst links stehenden Zeichen aus der durch den Anwender definierten Buchstabenzeichenkette aus Beschreibung Left gibt die u erst links gelegenen Zeichen einer durch den Anwender definierten Zeichenkette aus Left kann so viele Zeichen ausgeben wie in der Zeichenkette vorhanden sind Verwandte Befehle Asc Chr Len Mid Right Space Str Val Beispiel einer Left Funktion Das Beispiel unten zeigt ein Programm das Daten eines Teils als Zeichenkette bergeben bekommt und diese in Teilnummer Teilnamen und Teileanzahl zerlegt Function ParsePartData Dataln As String ByRef PartNum As String ByRef PartName As String ByRef PartCount As Integer Integer pos String temp pos Instr Dataln s PartNum Left DataIln pos 1 DataIn Right datain Len Dataln pos pos Instr Dataln PartName Left Dataln pos 1 PartCount Val Right datain Len Dataln pos Fend Einige weitere Beispiele des Left Befehls vom Online Fenster gt Print Left ABCDEFE 2 AB gt Print Left ABC 3 ABC SPEL Language Reference Rev 3 5 247 SPEL Sprachreferenz Len Funktion Gibt die Anzahl von Zeichen in einer Zeichenkette aus Syntax Len string Parameter string Zeichenkettenausdruck R ckgabewerte Gibt eine Integer Zahl aus welche die Anzahl der Zeichen in der string Zeichenkette darstell
101. umgehend stoppt sobald die Till Bedingung erf llt ist Tats chlich stoppt der Roboter auf der definierten LimZ H he Wenn LimZ nicht definiert ist bewegt sich der Roboter zu der H henposition in der Z 0 ist Wenn die Bedingung w hrend des Jump Befehls nie erf llt wird erreicht der Arm erfolgreich den durch destination definierten Punkt Es ist wichtig zu beachten dass die Till Bedingung w hrend der Roboterbewegung berpr ft wird bis die Z Achse Achse 3 die Abw rtsbewegung beginnt Sobald die Z Achse Achse 3 die Abw rtsbewegung beginnt wird die Till Bedingung nicht mehr gepr ft Die Stat Funktion kann verwendet werden um zu verifizieren ob die Till Bedingung erf llt wurde und dieser Befehl vollst ndig ausgef hrt wurde oder ob die Till Bedingung nicht erf llt wurde und der Roboter an der Zielposition angehalten hat 242 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Positionstabelle f r Till Im Folgenden sehen Sie die Positionstabelle welche mehrere F lle auflistet f r die dieTill Bedingung erf llt wurde und die entsprechende Stopp Position des Roboters Position Bedingung erf llt Position Bewegung gestoppt 1 W hrend der vertikalen Der Arm f hrt bis zur LimZ Hubbewegung Position hoch und verz gert dann bis zum vollst ndigen Stopp Die Horizontalbewegung verz gert und stoppt Die Vertikalbewegung geht aufw rts und stoppt Der Arm verz gert und stoppt 2 W hrend der
102. von Achsen von 0 bis zu allen 4 kann w hrend des 4 Schrittes kalibriert werden bzgl der Definition von Bitmustern siehe unten R ckgabewerte Zeigt die aktuelle Maschinenkalibrierungs Reihenfolge an wenn die Parameter weggelassen werden Beschreibung Nachdem die Versorgungsspannung am System eingeschaltet wurde oder nach Ausf hrung des Verinit Befehls muss der Mcal Befehl ausgef hrt werden bevor eine Operation mit dem Roboterarm ausgef hrt wird Wenn der Mcal Befehl ausgef hrt wird f hrt jede der vier Roboterachsen in ihre entsprechende Kalibrierungsposition Definiert die Bewegungsreihenfolge f r den Mcal Befehl D h die Anweisung definiert welche Achse zuerst in ihre Home Position zur ckgef hrt werden soll und welche als 2 3 usw kalibriert wird Der Zweck des MCordr Befehls ist es dem Anwender zu erm glichen die Reihenfolge zu ndern in der die Achsen in ihre Home Position zur ckgef hrt werden sollen Die Homing Reihenfolge ist in vier unterschiedliche Schritte unterteilt Der Anwender verwendet MCordr dann um die spezifischen Achsen zu definieren die sich w hrend eines jeden Schrittes mit dem Mcal Befehl in die Kalibrierungsposition bewegen Es ist wichtig zu verstehen dass mehr als eine Achse definiert werden kann die sich w hrend eines einzigen Schrittes in die Kalibrierungsposition bewegen soll Dies bedeutet dass es m glich ist alle vier Achsen zur selben Zeit in ihre Kalibrierungsposition zur ck
103. werden um die Verzweigung zum richtigen Programm herzustellen je nachdem um welchen Produkttyp es sich handelt Die Chain Anweisung kann ebenfalls verwendet werden um die aktuelle Programmgruppe erneut zu starten Dies ist n tzlich wenn ein kritischer Fehler aufgetreten ist und Sie das Programm noch einmal von Anfang an starten wollen Sie k nnen die Chain Anweisung auch aus einem Fehlerbehandlungsprogramm ausf hren um dies zu erreichen Einschr nkungen E A Bedingungen werden beibehalten Da beim Ausf hren der Chain Anweisung kein Software Reset durchgef hrt wird werden die Bedingungen f r Ausgang und Merker beibehalten OnErr Ausnahme Wenn der Anwender die Chain Anweisung mit einem nicht vorhandenen groupName Gruppennamen ausf hrt ruft dies einen Fehler hervor In diesem Fall kann der OnErr Befehl nicht zur Fehlerbehandlung verwendet werden Verwandte Befehle Xat SPEL Language Reference Rev 3 5 61 SPEL Sprachreferenz Beispiel der Chain Funktion 62 Verwenden Sie die Chain Anweisung in Ihren Programmen um eine andere Programmgruppe im Projekt zu starten Wenn die Chain Anweisung ausgef hrt wird l dt diese die Punkte f r das Programm das angeh ngt wird und startet dann das Hauptprogramm der Gruppe Um die Chain Anweisung zu nutzen m ssen die Programmgruppen aktiviert werden Diese Aktivierung erfolgt im Projekteditor Projekt gt Edit Hier ist ein einfaches Beispiel das die Chain Anweisung ve
104. wird kein CRLF hinzugef gt R ckgabewerte Variablendaten oder die spezifizierte Buchstabenzeichenkette Beschreibung Print zeigt die Variablendaten oder die Buchstabenzeichenkette auf dem Steuerger t an Ans Ende der Zeile wird automatisch CRLF carriage return and line feed Wagenr cklauf mit Zeilenvorschub angeh ngt es sei denn am Ende der Anweisung wird ein Komma verwendet Verwandte Befehle Print LPrint EPrint Beispiel einer Print Anweisung Das folgende Beispiel extrahiert denWert der U Achsen Koordinate von Punkt P100 und verlegt den Koordinatenwert in die Variable uvar Der Wert wird dann auf dem aktuellen Anzeigefenster ausgegeben Function test Real uvar uvar CU P100 Print The U Axis Coordinate of P100 is uvar Fend 344 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Print Anweisung s Gibt Daten an die angegebene Kommunikationsschnittstelle aus Syntax Print PortNumber Arg1 Arg2 Arg3 Parameter PortNumber Nummer der Kommunikationsschnittstelle Einer der Standard RS232 Ports 1 bis 16 Der Portnummer sollte immer ein Nummern Zeichen vorangestellt werden z B 1 Arg1 Arg2 Arg3 Jedes Argument kann ein Variablenname ein numerischer Wert oder eine Buchstabenzeichenkette sein Beschreibung Print gibt den numerischen Wert oder die Buchstabenzeichenkette an die Kommunikationsschnittstelle aus die durch die Portnummer spezifiziert wird Verwandte Be
105. zu 32 Tasks k nnen zur selben Zeit in der Robotersteuerung laufen Tool Werkzeug Eine Vorrichtung oder ein End Effektor der am Handgelenk des Roboterarms montiert ist Ort und Ausrichtung des Tools mit dem TLSet Befehl wird von Ihnen definiert Verz gerung Die Rate um welche der Roboterarm am Ende einer Bewegung verz gert oder verz gert wenn er an einen Stopp kommt Die Verz gerungsrampe wird in Strecke Zeit gemessen Die Definition der Verz gerung einer Bewegung erfolgt durch die Verwendung des Befehls Accel oder AccelS 486 SPEL Language Reference Rev 3 5
106. 0 50 50 gt Accel Zeigt die aktuellen Beschleunigungswerte an Low Power Mode 100 100 100 100 100 100 gt Power High Setzt den High Power Modus gt Jump P2 Bewegt den Roboter mit hoher Geschwindigkeit SPEL Language Reference Rev 3 5 341 SPEL Sprachreferenz Power Funktion Gibt den Power Status aus Syntax Power R ckgabewerte 0 Power Low 1 Power High Verwandte Befehle Power Anweisung Beispiel einer Power Funktion If Power 0 Then Print Low Power Mode EndIf 342 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz PPIs Funktion Gibt die Pulse Position einer bestimmten Achse f r einen angebenen Punkt aus Syntax PPIs point jointNumber Parameter point Punktausdruck JointNumber Definiert die Achsnummer ganze Zahl von 1 bis 4 unter Verwendung eines Ausdruckes oder eines numerischen Wertes R ckgabewerte Gibt die errechnete Achsposition aus Long Wert in Pulsen Verwandte Befehle Agl CU CX CY CZ PAgl PPIs Beispiel Integer pulsesl pulsesl PPls P10 1 SPEL Language Reference Rev 3 5 343 SPEL Sprachreferenz Print Anweisung s Gibt Daten zum aktuellen Anzeigefenster aus einschlie lich des Run Fensters Operator Fensters Online Fensters und Makro Fensters Syntax Print expression expression Parameter expression Optional Eine Zahl oder ein Zeichenkettenausdruck comma Optional Wenn am Ende der Anweisung ein Komma steht
107. 0 Jump P3 Bewegt die Achse f r den Jump Befehl aufw rts in die Position Z 10 Fend SPEL Language Reference Rev 35mm M SPEL Sprachreferenz LimZ Funktion Gibt die aktuelle LimZ Einstellung aus Syntax LimZ R ckgabewerte Real Zahl welche die aktuelle LimZ Einstellung enth lt Verwandte Befehle LimZ Anweisung Beispiel einer LimZ Funktion Real savLimz savLimz LimZ LimZ 25 Go pick LimZ savLimz 250 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Line Input Anweisung S Liest eine Zeile der Eingangsdaten und ordnet die Daten einer Zeichenkettenvariable zu Syntax Line Input stringVar Parameter stringVar Name einer Zeichenkettenvariable Bedenken Sie dass die Zeichenkettenvariable mit dem Zeichen enden muss Beschreibung Line Input liest eine Zeile der Eingangsdaten des Steuerungsger tes und ordnet die Daten der Zeichenkettenvariable zu die in der Line Input Anweisung verwendet wird Wenn die Line Input Anweisung bereit ist Daten vom Anwender zu empfangen wird ein Prompt auf dem Steuerungsger t angezeigt Die Eingangsdatenzeile nach dem Prompt wird dann als Wert f r die Zeichenkettenvariable aufgenommen Nach Eingabe der Datenzeile dr cken Sie bitte die ENTER Taste Verwandte Befehle Input Input Line Input ParseStr Beispiel einer Line Input Anweisung Das folgende Beispiel zeigt die Verwedung von Line Input Function Main String A Lin
108. 00 600 9600 56000 1200 14400 57600 Vorgabeeinstellung 9600 dataBits Optional Bestimmt die Anzahl der Datenbits pro Zeichen G ltige Werte sind 7 und 8 stopBits Optional Bestimmt die Anzahl der Stopbits pro Zeichen G ltige Werte sind 1 und 2 parity Optional Bestimmt die Parit t G ltige Werte sind O Odd ungerade E Even gerade und N None keine terminator Optional Bestimmt die Zeilenabschluss Zeichen G ltige Werte sind CR LF CRLF HWFlow Optional Bestimmt die Hardwaresteuerung G ltige Werte sind RTS und NONE SWFlow Optional Bestimmt die Softwaresteuerung G ltige Eintr ge sind XON und NONE timeOut Optional Bestimmt die maximale Zeit f r die bermittlung oder den Empfang angegeben in Sekunden Wenn der Wert 0 ist gibt es kein Timeout Hinweise SetCom ersetzt Config Bei den SRC 3xx Steuerger ten wurde die Config Anweisung verwendet um d e seriellen Anschl sse der Robotersteuerung zu konfigurieren Config wird nicht mehr verwendet Wenn ein Projekt aus einer fr heren Version ge ffnet wird die Config verwendet hat werden die Config Anweisungen in SetCom Anweisungen konvertiert Verwandte Befehle OpenCom CloseCom SetNet SetCom Beispiel SetCom 1 9600 8 1 N CRLF NONE NONE 0 SetCom 2 4800 SPEL Language Reference Rev 3 5 385 SPEL Sprachreferenz SetNet Anweisung s Stellt die Parameter f r einen TCP IP Port ein Syntax 7 SeNet portNumber hostAddre
109. 1 to 4 olRates i OLRate i If olRate i gt 5 Then Print Warning OLRate i is over 5 EndIf Next i Loop Fend SPEL Language Reference Rev 3 5 293 SPEL Sprachreferenz On Anweisung s Schaltet den angegebenen Ausgang ein der nach einer definierten Zeit durch Time wieder ausgeschaltet werden kann Syntax On bitNumber outputLabel time parallel Parameter bitNumber Integer Ausdruck dessen Wert zwischen 0 511 liegt Sagt dem On Befehl welcher Ausgang eingeschaltet werden soll outputLabel Ausgangslabel time Optional Gibt ein Zeitintervall in Sekunden an f r das der Ausgang eingeschaltet bleiben soll Nachdem das Zeitintervall abgelaufen ist wird der Ausgang wieder ausgeschaltet Das minimale Zeitintervall betr gt 0 01 Sekunden parallel Optional Wenn ein Timer eingestellt ist kann der parallel Parameter dazu verwendet werden festzulegen wann der n chste Befehl ausgef hrt wird 0 sofort nachdem der Ausgang eingeschaltet wurde 1 nach Ablauf des definierten Zeitintervalls Vorgabewert Beschreibung On schaltet den angegebenen Ausgang ein setzt ihn auf 1 Wenn der Zeitintervall Parameter definiert ist wird der durch outnum spezifizierte Ausgang eingeschaltet und nach Ablauf des Zeitintervalls wieder ausgeschaltet Die parallel Parametereinstellungen sind anwendbar wenn das Zeitintervall wie folgt definiert ist 1 Schaltet den Ausgang ein nach Ablauf eines definie
110. 2 2013 Die eingegebene Achsnummer liegt au erhalb des g ltigen Bereichs 1 6 2015 Der angegebene E A Port existiert nicht 2016 Der abgegebene BCD Wert liegt au erhalb des g ltigen Bereichs 2017 Die angegebene Signalnummer f r SIGNAL oder WAITSIG liegt au erhalb des g ltigen Bereichs 0 511 2018 Die angegebene Merkernummer liegt au erhalb des g ltigen Bereichs 0 511 2019 Der angegebene Merkerport liegt au erhalb des g ltigen Bereichs 0 63 2020 Zu viele Ereignisbedingungen f r den WAIT Befehl 2021 Zu viele Ereignisbedingungen f r den TRAP Befehl 2022 Der eingegebene Worttyp liegt au erhalb des g ltigen Bereichs 0 65535 2023 System Fehler 2024 Das angegebene Verzeichnis oder der Dateiname kann nicht gefunden werden 2025 Die COM Nummer liegt au erhalb des g ltigen Bereichs 2026 Division durch Null 2027 Die DSW Nummer liegt au erhalb des g ltigen Bereichs 2028 Der angegebene Roboter existiert nicht 2029 Sie d rfen nicht alle Eingangsbedingungen f r WAIT maskieren 2030 Sie d rfen die Bit Bedingung f r WAIT nicht maskieren 2032 Die Elementenanzahl in dem Array ist au erhalb des g ltigen Bereichs 2033 Die Anzahl der Arrays bersteigt der Definition 2034 Die Gruppennummer liegt au erhalb des g ltigen Bereichs 1 16 2035 Der angegebene Dateiname kann nicht gefunden werden 2036 Die Anzahl der in
111. 2 gt Off 2 SPEL Language Reference Rev 3 5 289 SPEL Sprachreferenz Off Anweisung s Schaltet das spezifizierte Bit des S W Merkers aus Syntax Off bitNumber memlOLabel Parameter bitNumber Integer Ausdruck zwischen 0 511 der einen der 512 S W Merker repr sentiert HINWEIS Das Dollarzeichen muss vor Bitnummer oder Label gesetzt werden um zu verdeutlichen dass es sich hierbei um einen Merker und nicht um einen Hardware Ausgang handelt memlOLabel Merker Label Beschreibung Off schaltet das definierte Bit des Merkers aus setzt es auf 0 Die 512 Merker Bits sind normalerweise eine gute Wahl f r die Verwendung als Status Bits f r Zwecke wie Ein Aus Wahr Falsch Erledigt Nicht Erledigt etc Der Befehl On schaltet den Merker ein w hrend Off ihn ausschaltet Der Befehl Sw wird verwendet um den aktuellen Status den angegebenen Merkers zu berpr fen Der Befehl Wait kann ebenfalls mit dem Merker verwendet werden um das System dazu zu veranlassen zu warten bis ein definierter S W Status eingestellt ist Einschr nkung Der Unterschied zwischen Off und Off Es ist sehr wichtig dass der Anwender den Unterschied zwischenden Befehlen Off und Off versteht Der Off Befehl arbeitet mit dem internen Merker und hat keinerlei Auswirkungen auf die Hardware E As Der Off Befehl arbeitet mit den Standard und mit der Erweiterungs Hardware Ausgangsports Diese Hardwareports sind einzelne Ausg nge die m
112. 2 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Beschreibung MsgBox formatiert die Nachricht automatisch Wenn Sie Leerzeichen w nschen verwenden Sie Chr 13 Chr 10 in der Nachricht Siehe Beispiel Verwandte Befehle InputBox MsgBox Beispiel Dieses Beispiel zeigt ein Nachrichtenfenster an das den Operator fragt ob er fortfahren m chte oder nicht Das Nachrichtenfenster zeigt zwei Buttons an Yes und No Ja und Nein Ein Fragezeichen Icon wird ebenfalls angezeigt Nach Return von MsgBox nachdem der Anwender auf einen Button geklickt hat wird die Antwort berpr ft Wenn sie auf No Nein lautet werden alle Tasks mit dem Quit Befehl beendet Function msgtest String msg title Integer mFlags answer msg Operation complete Chr 13 Chr 10 msg msg Ready to continue title Sample Application mElags MB_YESNO MB_ICONQUESTION MsgBox msg mFlags title answer If answer IDNO then Quit All EndIf Fend Ein Bild des Nachrichtenfensters das dieser Code erzeugt wird unten dargestellt Sample Application C Operation complete Ready to continue SPEL Language Reference Rev 3 5 283 SPEL Sprachreferenz MyTask Funktion Gibt die Tasknummer des aktuellen Programmes aus Syntax MyTask R ckgabewerte Die Tasknummer des aktuellen Tasks G ltige Eintr ge sind die Integers 1 32 Beschreibung MyTask gibt die Tasknummer des aktuellen Programms mi
113. 2 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz OLRate Funktion Gibt den berlastgrad f r eine Achse des aktuellen Roboters aus Syntax OLRate jointNumber Parameter JointNumber Integer Ausdruck dessen Wert zwischen 1 und 4 liegt R ckgabewerte Gibt die OLRate f r die angegebene Achse aus Die Werte variieren zwischen 0 0 und 2 0 Beschreibung OLRate kann verwendet werden um festzustellen ob ein bestimmter Zyklus das Servosystem berbeansprucht Faktoren wie Temperatur und Strom k nnen Servofehler w hrend der Anwendung in Hochleistungszyklen verursachen OLRate kann dabei helfen zu berpr fen ob das Robotersystem kurz vor einem Servofehler steht W hrend eines Zyklus sollten Sie einen weiteren Task ausf hren um OLRate zu berwachen Wenn die OLRate 1 0 f r eine beliebige Achse berschreitet so tritt ein Servofehler auf Servofehler treten am ehesten bei hohen Nutzlasten auf Durch die Verwendung von OLRate in einem Testzyklus k nnen Sie sicherstellen dass durch die Geschwindigkeits und Beschleunigungseinstellungen kein Servofehler im Produktionsmodus auftritt Um g ltige Messwerte zu erhalten m ssen Sie OLRate ausf hren w hrend sich der Roboter bewegt Verwandte Befehle OLRate Anweisung Beispiel einer OLRate Funktion Function main Power High Speed 50 Accel 50 50 Xgt 2 MonitorOLRate Do Jump PO Jump P1 Loop Fend Function MonitorOLRate Integer i Real olRates 4 Do For i
114. 2 Winkelversatz in Grad 3 H henversatz in mm 4 Horizontale Entfernung von Achse 1 zu Achse 2 in mm 5 Winkelversatz der Ausrichtungsachse in Grad KARTESISCHE Roboter paramNumber Parameternummer Ausgegebener Wert 1 Positionsversatz der Achsen Richtung f r die X Koordinate in mm 2 Positionsversatz der Achsen Richtung f r die Y Koordinate in mm 3 H henversatz in mm 4 Reserviert Muss Null 0 betragen 5 Winkelversatz der Ausrichtungsachse in Grad R ckgabewerte Real Zahl die den Wert eines spezifizierten Parameters enth lt wie unten beschrieben Verwandte Befehle Armset Anweisung SPEL Language Reference Rev 35mm SPEL Sprachreferenz ArmsSet Funktionsbeispiel Real x x ArmSet 1 1 44 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Asc Funktion Gibt den ASCII Code des ersten Zeichens in einer Zeichenkette aus Syntax Asc string Parameter Hinweise zur Zeichenkette Jeder g ltige Zeichenketten Ausdruck von mindestens einem Zeichen L nge R ckgabewerte Gibt einen Integer aus der den ASCII Code des ersten Zeichens einer Zeichenkette repr sentiert welche zur ASC Funktion geschickt wird Beschreibung Die Asc Funktion wird verwendet um ein Zeichen in seine numerischen ASCII Darstellung zu verwandeln Bei der zur ASC Funktion gesendeten Zeichenkette kann es sich sowohl um eine konstante als auch um eine variable Zeichenkette handeln Hinweis Es wird
115. 2 und 18 f r Achse 1 betragen Beseitigen Sie jegliche Hindernisse aus dem Bereich bevor Sie Mcorg ausf hren 8 F hren Sie den Mcal Befehl aus um die Maschinenkalibrierung durchzuf hren 9 F hren Sie den Pulse Befehl aus um den Arm in die 0 Pulse Position der ersten und zweiten Achse zu bringen gt Pulse 0 0 0 0 10 Nachdem sich der Arm in die Pulse Position 0 0 0 0 bewegt hat stellen Sie sicher dass die Armachsen 1 und 2 gerade sind und sich auf der X Achse des Roboterkoordinatensystems befinden Sollte dies nicht der Fall sein bedeutet dies dass die Armposition zu dem Zeitpunkt an dem Mcorg ausgef hrt wurde nicht korrekt war Gehen Sie in diesem Falle zur ck zu Punkt 2 und beginnen Sie erneut Hinweise Was passiert wenn Mcorg nicht in der korrekten Position ausgef hrt wird Bei Robotern mit mehreren Kalibrierungspunkten wie z B den Robotern der TT8000 Serie werden die Kalibrierungsparameter nicht korrekt berechnet wenn Mcorg nicht an der richtigen Stelle ausgef hrt wird Wenn die Parameter falsch sind bewegt sich der Roboter nicht richtig Wenn Sie Mcorg versehentlich ausf hren f hren Sie keine Bewegungsbefehle aus In dieser Situation sollten Sie Mcorg nochmals von der korrekten Position ausf hren oder die bei Lieferung urspr nglich eingestellten MCofs Daten finden und diese Daten eingeben um den MCofs Befehl zu verwenden Verwandte Befehle Mcal MCofs Beispiel einer Mcorg Anweisung Das folgen
116. 298 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Einschr nkungen Denken Sie daran dass alle Fehler mit der ECIr Anweisung gel scht werden m ssen Wenn der Anwender in der Fehlerbehandlungsroutine jedoch keine EClr Anweisung verwendet um den Fehler zu l schen kann das System in einer Endlosschleife stecken bleiben Wenn der Fehler nicht mithilfe der Fehlerbehandlungsroutine zur ckgesetzt wird gibt das System auf den OnErr Befehl hin die Steuerung sofort nach seiner R ckkehr zur Hauptroutine an das Fehlerbearbeitungsprogramm zur ck Der Grund daf r ist dass das System davon ausgeht es sei erneut ein Fehler aufgetreten w hrend es tats chlich nur auf den vorangegangenen Fehler reagiert der nicht gel scht wurde Da die Fehlerbehandlungsroutine den Fehler nicht zur cksettzt tritt eine Endlosschleife auf Seien Sie daher vorsichtig Verschachtelte Fehlerbehandlung SPEL unterst tzt keine verschachtelte Fehlerbehandlung Das bedeutet dass wenn beim Beheben eines Fehlers ein neuer Fehler auftritt das System nicht in der Lage ist erneut zur Fehlerbehandlungsroutine zu wechseln um den zweiten Fehler zu beheben In diesem Fall bricht das System den Task einfach ab und gibt eine Fehlermeldung aus Verwandte Befehle EClr Err OnErr Beispiel Das folgende Beispiel zeigt ein einfaches Dienstprogramm das pr ft ob ob die Punkte PO P399 existieren Wenn der Punkt nicht existiert erscheint eine Nachricht auf dem Bildsc
117. 2WDiff Parameter sensorLogic Integer Ausdruck welcher die Sensorlogik repr sentiert j1Pulses Die Pulse Werte zwischen dem Einschalten des Sensors und Erkennen der Z Phase am definierten Punkt der ersten Achse j2Pulses Die Pulse Werte zwischen dem Einschalten des Sensors und Erkennen der Z Phase am definierten Punkt der zweiten Achse j3Pulses Die Pulse Werte zwischen dem Einschalten des Sensors und Erkennen der Z Phase am definierten Punkt der dritten Achse j4Pulses Die Pulse Werte zwischen dem Einschalten des Sensors und Erkennen der Z Phase am definierten Punkt der vierten Achse J1WDiff Der Unterschied zwischen dem logischen Wert und der Breite der Sensorkante an der definierten Position der ersten Achse j2wDiff Der Unterschied zwischen dem logischen Wert und der Breite der Sensorkante an der definierten Position der zweiten Achse R ckgabewerte Zeigt die aktuellen MCofs Werte an wenn die Parameter weggelassen werden Beschreibung Definiert die Parameter f r die Maschinenkalibrierung Dieser Parameter ist notwendig um die Maschinenkalibrierung mit Mcal durchzuf hren Wenn Sie alle Spezifikationswerte definieren werden diese als Parameter f r die Maschinenkalibrierung eingesetzt Die Parameter f r die Kalibrierung werden automatisch berechnet wenn der Roboterarm mit Mcorg bewegt wird Es wird empfohlen Mcorg zu verwenden um Mcofs Werte zu erzeugen Wenn diese Werte jedoch im Voraus bekannt sind k nnen Sie diese Werte ber den
118. 40546 D sseldorf TEL 49 211 5603 391 Vertriebsinnendienst FAX 49 211 5603 444 E MAIL robot infos epson de SPEL Language Reference Rev 3 5 5 Inhaltsverzeichnis Zusammenfassung der SPEL Befehle 1 Systemverwaltungsbefehle 4444444444Hnnsnnnnnnnnnnnnnnnennnnnnnnnnnnnne essen nennnnnnn nn 1 Roboter Steuerungsbefehle 4u4224444nssnnnnnnnnnnnnnnnnnnnennennnnnnennnnnne nn nenn 2 Eingangs Ausgangs Befehle 2444442snnnnnnennnnnnnennnnnnennnnnnnnnnnnnnennnnnnnn ern 4 Befehle zur nderung von Koordinaten unueeennennnnsennnnennnnnnnnnnnnnnnnnn 5 Befehle zur Programmsteuerung uurnnessnennnnnnnnnnnnnnennnnnnnnnnnnnnnnnnnnnnnnn nenn 5 Befehle zur Programmausf hrung 44s4nnesnnnnnnnnennnnnnnnnnnnnnnnennennnnnne nn nn nn 6 Pse udo Anweisungen u m rn Rind 6 Befehle zur Dateiverwaltung 444444s444Hnnnnnnnnnnennnnnnnnnnnnnnnnnnnnnennnnnnne nn nme nn 7 Befehle f r Vanaema aarioita an aan a 7 Befehle bez glich numerischer Werte uuuesssennnennnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn nn 8 Zeichenketten Befehle u2 22 2 Reese 9 Logische Operatoren risan ten Henn a en 9 Befehle zur Variablendefinition s444Hnssnnnnnnennnnnennennnnnnennnnnnne nn nme nn 10 Mit VB Guide benutzte Befehle 44ss440nnesnnnnnnennnnnnnnnnnnnnennnnnnne nn nnn ern 10 Ethernet E A Befehle rire esis
119. 61 Undefiniertes Vision Objekt 362 Undefinierte Vision Eigenschaft 363 Vision Objekt nicht gefunden 364 Ung ltiger Wert f r die Kalibrier Einstellung 365 Die vorhergehende Sequenz hat keine Zuordnung 366 Ung ltiger Eigenschaftswert 367 Ung ltiges Ergebnis f r dieses Objekt 368 Ung ltige Eigenschaft oder Ergebnis 369 Falsche Anzahl von Argumenten 370 Modell wurde nicht eingelernt 371 Kalibrierung nicht vollst ndig 372 Undefinierte Kalibrierung 373 Kalibrierungspunkte wurden nicht eingerichtet 374 Drucker Fehler 375 Keine Steuerung 376 Falscher Objekttyp 377 Vision System Fehler 378 Sequenz existiert bereits 379 Pfad wurde nicht gefunden 380 Ung ltige Kamera 381 Falsches String Format 382 Ung ltige Bildatei 383 Die Eigenschaft angle enabled wurde nicht aktiviert 384 Objekt existiert bereits 385 Markierung f r die Kalibrierung nicht gefunden 386 Der Wert der Kalibrier Sequenz mu f r Number to find gleich 9 sein 387 Nicht gen gend Schritte in der Kalibrier Sequenz 388 F r Kamera unterhalb des Roboter Arbeitsbereichs wurde keine Sequenz festgelegt 389 Kalibrier Sequenz f r Kamera unterhalb des Roboter Arbeitsbereichs ist nicht vorhanden 390 Kalibrier Sequenz f r Kamera unterhalb des Roboter Arbeitsbereichs ist nicht vollst ndig 391 Die Referenz Kalib
120. 63 der als Kennung f r die Datei verwendet wird Beschreibung ffnet den spezifizierten Dateinamen zum Lesen und identifiziert ihn durch die spezifizierte fileNumber Diese Anweisung wird verwendet um eine spezifizierte Datei zu ffnen und Daten aus dieser Datei zu lesen Der Befehl Close schlie t die Datei und gibt die Dateinummer aus Der spezifizierte Dateiname muss der Name einer auf dem PC existierenden Datei sein Die fileNumber identifiziert die Datei solange sie ge ffnet ist Die Datei wird von der Input Anweisung zum Lesen und zum Schlie en Close verwendet Entsprechend kann die Dateinummer nicht zur Spezifikation einer anderen Datei verwendet werden bis die aktuelle Datei geschlossen ist Verwandte Befehle AOpen Close Input Print WOpen Beispiel einer ROpen Anweisung Das unten gezeigte einfache Beispiel ffnet eine Datei schreibt einige Daten hinein ffnet dieselbe Datei sp ter wieder und liest deren Daten in eine Feldvariable Real DATA 200 WOpen TEST VAL As 30 For I 0 To 100 Print 30 DATA i Next I Close 30 ROpen TEST VAL As 30 For I 0 to 100 Input 30 DATA I Next I Close 30 374 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz RShift Funktion Verschiebt numerische Daten um eine vom Anwender definierte Bitanzahl nach rechts Syntax RShift number shiftBits Parameter number Der numerische Ausdruck der verschoben werden soll shi
121. 88 Der Befehl TO wird erwartet 468 SPEL Language Reference Rev 3 5 SPEL Fehlermeldungen Error Message 589 Der Befehle THEN wird erwartet 590 Der Befehl WHILE oder UNTIL wird erwartet 591 Nicht definiertes Label 592 Falsche Anzahl von Argumenten 593 Keine entsprechende SEND Anweisung 594 Ung ltige TRAP nummer Werte von 1 bis 4 sind g ltig 595 Include Datei ist nicht vorhanden 596 Die Include Datei ist nicht im aktuellen Projekt vorhanden 597 Ung ltiger Include Dateiname 598 Die Variable ist bereits als Globale Variable deklariert 599 Die Variable ist bereits im Modullevel deklariert 600 Die Variable ist bereits als Funktionsparameter deklariert 601 Ungleiche Typen 602 Eine Datei kann nicht sich selbst beinhalten 603 Eine Punktnummer oder ein wird erwartet 604 Dateinummer oder Variable erwartet 605 Zu viele Parameter 606 Die Include Datei ist bereits eingebunden 607 Task Typ erwartet 608 Ung ltiger Task Typ 609 Kann den Bereich nicht auf eine Variable bertragen Verwenden Sie BYREF 610 Dieser Befehl ist nur im Online Fenster m glich 611 Task l uft bereits 612 Ung ltiger Parameter 613 Rechte Klammer wird erwartet 614 Zu viele ELSE Anweisungen im Ausdruck 615 Ein Punkte Label wird erwartet 616 Ung ltige Timernummer
122. 99 gt SPEL Language Reference Rev 35mm SPEL Sprachreferenz Ver Befehl Zeigt die Systemkonfigurationsparameter an Syntax Ver R ckgabewerte Zeigt die Systemkonfigurationsparameter an Beschreibung Zeigt die aktuell definierten Werte der Systemsteuerungsdaten an Nach Lieferung des Roboters oder bei nderung der Daten sollten diese Daten gesichert werden Diese Sicherung k nnen Sie mit dem Befehl Mkver aus dem Wartungsdialog durchf hren Au erdem sollten Sie diese Daten ausdrucken und an einem sicheren Ort aufbewahren da Informationen wie Kalibrierungsdaten und Roboter Spezifikations Informationen mit dem Ver Befehl angezeigt werden Die R ckgabewerte des Ver Befehls k nnen aus dem Druck Dialog in EPSON RC gedruckt werden indem der Ausgabe Dialog des Ver Befehls markiert wird Die folgenden Daten werden angezeigt Die folgenden Daten sind nur zur Bezugnahme da die Daten von Steuerger t zu Steuerger t variieren 442 Version EPSON RC 3 0 0 Options SPEL Runtime Drivers Vision Guide VB Guide HOUR 5 887 Drive Unit 1 MIB I O Address 300 MIB Mem Address D8000 Motor 1 Enabled Power 800 Gain F7F6 Offset FE00 Motor 2 Enabled Power 400 Gain FDFD Offset 200 Motor 3 Enabled Power 100 Gain FDFC Offset FF04 Motor 4 Enabled Power 50 Gain F7F8 Offset FDFC Drive Unit 2 MIB I O Address 320 MIB Mem Address D0000 Motor 1 Enabled Power 100
123. Achse definiert durch LimZ erreicht ist Dann beginnt der Arm sich in Z Richtung abw rts zu bewegen w hrend er mit den X Y und U Achsen Bewegungen fortf hrt bis die endg ltigen X Y und U Achsen Positionen erreicht sind 3 Der Jump Befehl wird dann abgeschlossen indem der Arm nur mit einer Bewegung der Z Achse abw rts bewegt wird bis die Zielposition der Z Achse erreicht ist Die destination Koordinaten Die Zielposition f r die Bewegung m ssen vor dem Ausf hren des Jump Befehls eingeteacht werden Die Koordinaten k nnen nicht im Jump Befehl selber spezifiziert werden Beschleunigung und Verz gerung f r die Jump Anweisung werden durch den Accel Befehl gesteuert Die Geschwindigkeit f r die Bewegung wird durch den Speed Befehl gesteuert archnum Details Der Bogen f r die Jump Anweisung kann auf der Basis des archNumber Wertes der optional zusammen mit dem Jump Befehl definiert wird ver ndert werden Dies gestattet es dem Anwender zu definieren wie viel der Z Bewegung zur ckgelegt werden soll bevor mit der Bewegung der X Y und U Achse begonnen wird Der Anwender kann so den Arm aufw rts bewegen und aus dem Weg von Teilen Feedern und anderen Gegenst nden halten bevor mit der Horizontalbewegung begonnen wird G ltige archNumber Eintr ge f r den Jump Befehl bewegen sich zwischen CO und C7 Die Arch Tabellen Eintr ge f r CO C6 k nnen ber den Arch Befehl vom Anwender definiert werden C7 ist jedoch ein besonder
124. Arm den Punkt P2 erreicht dann f hrt der Arm zu allen Punkten zwischen und inklusive P3 und P10 Curve MyFile C 0 4 Pl P2 ON 2 P 3 10 Beschreibung Der Curve Befehl erzeugt Daten die den Manipulatorarm die durch die Punkstserie pointList definierte Kurve entlang bewegen und speichert die Daten im Dateispeicher der Robotersteuerung Der CVMove Befehl verwendet die von Curve erzeugten Daten um den Manipulator in einer Art CP Bewegung zu bewegen Die erzeugten Daten sind Curve Informationen definiert im orthogonalen Koordinatensystem Es ist nicht notwendig vor der Ausf hrung des Curve Befehls Geschwindigkeiten oder Beschleunigungen festzulegen Die Parameter f r Armgeschwindigkeit und Beschleunigung k nnen vor Ausf hren von CVMove jederzeit mittels der Befehle Speeds oder Accels ge ndert werden Durch die Befehle Base oder Local definierte Punkte k nnen in Serie verwendet werden um die Kurve an der gew nschten Position zu lokalisieren Die Punkte k nnen wenn sie zum lokalen Koordinatensystem geh ren durch einen dem Curve Befehl folgenden Local Befehl ge ndert werden Definieren Sie dazu alle spezifizierten Punkte in der Punktserie f r den Curve Befehl als Punkte mit Base oder Local Attributen Hinweis Verwenden Sie nach M glichkeit die Tangentialkorrektur Es wird empfohlen immer wenn m glich die Tangentialkorrektur zu verwenden insbesondere wenn CVMove in einer kontinuierlichen Schleife durch dieselben P
125. Befehl folgt fortgesetzt increment Ein optionaler Parameter der das Z hl Inkrement f r jedes Mal definiert welches die Next Anweisung innerhalb der For Next Schleife ausgef hrt wird Diese Variable kann positiv oder negativ sein Wenn der Wert jedoch negativ ist muss der Erstwert der Variable gr er sein als ihr Endwert Wird der Inkrement Wert weggelassen inkrementiert das System automatisch um 1 statements Jede g ltige SPEL Anweisung kann in die For Next Schleife eingef gt werden Beschreibung For Next f hrt einen Satz von Anweisungen innerhalb einer Schleife eine definierte Anzahl von Malen aus Die For Anweisung stellt den Anfang der Schleife dar Die Next Anweisung ist das Ende der Schleife Die Male welche die Anweisungen innerhalb der Schleife ausgef hrt werden werden mithilfe einer Variable gez hlt Der erste numerische Ausdruck initValue ist der Erstwert des Z hlers Dieser Wert kann positiv oder negativ sein solange die Variable finalValue und die Step Inkrementierung einander korrekt entsprechen Der zweite numerische Ausdruck finalValue ist der Endwert des Z hlers Dies ist der Wert der sobald er erreicht ist die Beendigung der For Next Schleife ausl st und die Steuerung des Programms wird an den n chsten auf den Next Befehl folgenden Befehl weitergegeben Programmanweisungen die der For Anweisung folgen werden ausgef hrt bis ein Next Befehl erreicht wird Die Z hlervariable var wird dan
126. Beispiel flags BSet flags 1 52 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz BTst Funktion Syntax BTst number bitNum Parameter Hinweise zur number Zahl Spezifiziert die Nummer f r den Bit Test mit einem Ausdruck oder numerischem Wert Hinweise zur bitNum Bitnummer Spezifiziert das zu testende Bit positiver Integer R ckgabewerte Gibt die Resultate des Bit Tests Integer 1 oder 0 des spezifizierten numerischen Wertes aus Verwandte Befehle BCIr BSet BTst Beispiel If BTst flags 1 Then Print Bit 1 is set End If SPEL Language Reference Rev 3 5 53 SPEL Sprachreferenz Byte Anweisung s Deklariert Byte Variablen 1 Byte Integer Syntax Byte varName subscripts varName subscripts Parameter Hinweise zum varName Variablenname Variablenname den der Anwender als Byte deklarieren will Hinweise zu den subscripts Optional Dimensionen einer Feldvariable es k nnen bis zu drei multiple Dimensionen deklariert werden Die Syntax sieht aus wie folgt dim1 dim2 dim3 dim1 dim2 dim3 k nnen jeweils ein Integer zwischen 0 32767 sein Beschreibung Byte wird verwendet um Variablen als Byte zu deklarieren Byte Variablen k nnen Integers im Wertebereich von 128 bis 127 enthalten Variablen sollten in einer Funktion ganz oben deklariert sein Verwandte Befehle Boolean Double Global Integer Long Real String Byte Beispiel Das folgende Beispi
127. Bewegung nach R ckkehr des Armes zur Startposition der angegebenen Punktserie f r den Curve Befehl zu stoppen Spezifiziert ob der Arm automatisch in Tangentenrichtung der U Achse interpoliert wird oder nicht Modus Tangential Einstellung korrektur 0 Nein 2 Ja Wenn eine Tangentialkorrektur spezifiziert wird verwendet der Curve Befehl nur die U Achsen Koordinate des Startpunktes in der Punktserie Die Tangentialkorrektur beh lt fortlaufend die Ausrichtung der Werkzeugtangente der Kurve in der XY Ebene bei Sie wird spezifiziert wenn Werkzeuge wie z B Abschneidevorrichtungen installiert werden die fortlaufender Tangentenausrichtung bed rfen Wird mit dem Parameter closure eine geschlossenen Kurve spezifiziert mit automatischer Interpolation in der Tangentenrichtung der U Achse so rotiert die U Achse von ihrem Startpunkt aus um 360 Es ist daher notwendig vor Ausf hrung des CVMove Befehls mit dem Range Befehl den Bewegungsbereich der U Achse einzustellen damit die 360 Rotation der U Achse keinen Fehler hervorruft Integer Nummer zwischen 2 und 4 welche die Anzahl der in der Kurvenbewegung gesteuerten Achsen wie folgt spezifiziert 2 Generiert eine Kurve in der XY Ebene ohne Bewegung der Z Achse oder Rotation der U Achse 3 Generiert eine Kurve in der XYZ Ebene ohne Rotation der U Achse Theta 1 Theta2 und Z 4 Generiert eine Kurve in der XYZ Ebene mit Rotation der U Achse Steuert alle 4 Achsen SPEL L
128. CLim 1 1 20 1 Force_TCSpeed 5 Force_TC On Go Place 182 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Force_TCSpeed Funktion Gibt die aktuelle Geschwindigkeitseinstellung f r die Drenmomentsteuerung aus Syntax Force_TCSpeed R ckgabewerte Aktuelle Force_TCSpeed Einstellung Verwandte Befehle Force_TCSpeed Anweisung Beispiel einer Force_TCSpeed Funktion Integer var var Force_TCSpeed SPEL Language Reference Rev 3 5 183 SPEL Sprachreferenz Force_TCSpeed Anweisung Stellt die Geschwindigkeit f r die Drenmomentsteuerung ein Syntax Force_TCSpeed speed Parameter speed Integer Ausdruck der die Geschwindigkeit f r die Drehmomentsteuerung repr sentiert Der Bereich liegt zwischen 1 und 100 Beschreibung Force_TCSpeed ist die Geschwindigkeit in der der Roboter sich nach Erreichen der Drehmomentbegrenzung bewegt Verwandte Befehle Force_TCLim Force_TCSpeed Funktion Beispiel einer Force_TCSpeed Anweisung Speed 5 Setzt die Drehmomentbegrenzung der Z Achse auf 20 Prozent Force_TCLim 1 1 20 1 Force_TCSpeed 5 Force_TC On Go Place 184 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Function Fend s Eine Funktion ist eine Gruppe von Programmanweisungen welche eine Funktion Anweisung als erste und eine Fend Anweisung als letzte Anweisung beinhaltet Syntax Function funcName argList As type statements Fend Parameter fun
129. Calib Befehl aus Die Steuerung berechnet die Hofs Werte dann automatisch auf Basis der CalPls Pulse Werte und der Pulse Werte der Kalibrierungsposition Speichern und Wiederherstellen von Hofs Hofs kann mit den Befehlen Mkver und SetVer aus dem Wartungsdialog im Tools Men gespeichert und wiederhergestellt werden Verwandte Befehle Calib CalPls Home Hordr HTest Mcal Ver 202 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Beispiel einer Hofs Anweisung Dies sind einfach Beispiele im Online Fenster bei denen im ersten Fall der Home Offset f r die 1 Achse auf 545 eingestellt wird f r die 2 Achse der Home Offset Wert auf 514 und die Home Offset Werte f r Z und U Achse beide auf 0 Dann werden die aktuellen Home Offset Werte angezeigt gt hofs 545 514 0 O gt hofs 545 514 0 0 gt SPEL Language Reference Rev 3 5 203 SPEL Sprachreferenz Hofs Funktion Gibt die Offset Pulse aus die f r die softwarem ige Nullpunktkorrektur verwendet werden Syntax Hofs jointNumber Parameter JointNumber Integer Ausdruck der die Achsnummer darstellt f r die der Hofs Wert ausgegeben werden soll R ckgabewerte Der Offset Pulse Wert Integer Wert in Pulsen Verwandte Befehle Calib CalPls Home Hordr HTest Mcal Ver Beispiel einer Hofs Funktion Dieses Beispiel benutzt die Hofs Funktion in einem Programm Function DisplayHofs Integer i Print Hofs settings For i 1 To 4 Prin
130. Cnv_PosErr conveyorNumber Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert R ckgabewerte Real Wert in Millimetern Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_MakePoint Beispiel einer Cnv_PosErr Funktion Print Conveyor 1 position error Cnv_PosErr 1 SPEL Language Reference Rev 3 5 79 SPEL Sprachreferenz Cnv_Pulse Funktion Gibt die aktuelle Position eines Conveyors in Pulsen aus Syntax Cnv_Pulse conveyorNumber Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert R ckgabewerte Long Wert aktueller Pulse f r den angegebenen Conveyor Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_Trigger Beispiel einer Cnv_Pulse Funktion Print Current conveyor position Cnv_Pulse 1 80 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Cnv_QueAdd Anweisung s F gt einem Conveyor Queue einen Roboterpunkt hinzu Syntax Cnv_Que Parameter Add conveyorNumber pointData userData conveyorNumber Integer Ausdruck der die Nummer des zu verwendenden Conveyors angibt pointData userData Der Roboterpunkt der zum Conveyor Queue hinzugef gt wird Optional Real Ausdruck der verwendet wird um Anwenderdaten zusammen mit dem Punkt abzuspeichern Besc
131. EPSON SPEL Referenzhandbuch EMO27S925U SPEL Referenzhandbuch Version 3 5 1 Juni 2001 Copyright 1997 2002 SEIKO EPSON CORPORATION Alle Rechte vorbehalten SPEL Language Reference Rev 3 5 1 GARANTIE Das Robotersystem sowie alle Optionen werden vor Versand an den Kunden sehr strengen Qualit tskontrollen Tests und Untersuchungen unterzogen um sicher zu stellen dass das System in einwandfreiem Zustand ist und unseren hohen Leistungsanforderungen gen gt Alle Sch den bzw Fehlfunktionen die trotz normaler Betriebsbedingungen und Handhabung entstanden sind werden innerhalb der normalen Garantiezeit kostenlos repariert Bitte informieren Sie sich bei Ihrem regionalen EPSON Vertrieb ber die bliche Garantiezeit F r die Reparatur folgender Sch den muss der Kunde aufkommen selbst wenn sie innerhalb der Garantiezeit auftreten 1 Sch den oder Fehlfunktionen die durch nachl ssige Bedienung oder Bedienvorg nge verursacht wurden die nicht in diesem Handbuch beschrieben sind Unerlaubte kundenseitige Modifikation oder Demontage Sch den oder Fehlfunktionen die durch unerlaubte Einstellungen oder Reparaturversuche verursacht wurden Durch Naturkatastrophen wie z B Erdbeben Wassersch den etc hervorgerufene Sch den Warnungen Vorsichtsgebote Nutzung 1 Wird der Roboter oder mit ihm verbundene Ausr stung au erhalb der daf r bestimmten Betriebsbedingungen und Produktspezifikatio
132. Erl Err Errhist Ert OnErr Trap ErrMsg Beispiel Das folgende Beispiel zeigt ein einfaches Programm das die Ert Funktion verwendet um festzustellen in welchem Task und in welchem Zusammenhang der Fehler auftrat Erl wo der Fehler auftrat Err welcher Fehler auftrat Era ob der Fehler von einer Achse verursacht wurde Trap Error Call ER_PRINT Einstellung f r Fehlerfall Function ER_PRINT Fehlerbehandlungsroutine Print Task number at which error occurred is Ert If Era Then Print Joint which caused error is Era Print The Error code is Err Print The Error Message is ErrMsg Err Print The line where th rror occurred is Line Erl End Fend 152 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Error Anweisung s Simuliert das Auftreten eines Fehlers Syntax Error errorNumber Parameter errorNumber Integer Ausdruck der eine g ltige Fehlernummer repr sentiert Die Anwender Fehlernummern beginnen bei 30000 Beschreibung Verwenden Sie die Error Anweisung um system oder benutzerdefinierte Fehler zu generieren Verwandte Befehle EClr Era Erl Err ErrHist OnErr Beispiel einer Error Anweisung define ER_VAC 30000 If Sw vacuum Off Then Error ER_VAC EndIf SPEL Language Reference Rev 3 5 153 SPEL Sprachreferenz Ert Funktion Gibt die Tasknummer aus in der ein Fehler aufgetreten ist Syntax
133. Ert OnErr Trap Beispiel einer Erl Funktion Das folgende Beispiel zeigt ein einfaches Programm das die Ert Funktion verwendet um festzustellen in welchem Task und in welchem Zusammenhang der Fehler auftrat Erl wo der Fehler auftrat Err welcher Fehler auftrat Era ob der Fehler von einer Achse verursacht wurde Trap Error Call ER_PRINT Stellt ein wann ein Fehler auftritt Function ER_PRINT Fehlerbehandlungsroutine Print Task number at which error occurred is Ert If Era 0 Then Print Joint which caused error is Era 0 EndIf Print The Error code is Err 0 Print The line where th rror occurred is Line Erl 0 Fend 148 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Err Funktion Gibt den zuletzt aufgetretenen Fehlerstatus aus Syntax Err taskNumber Parameter taskNumber Optional Integer Ausdruck der eine Tasknummer von 0 bis 32 repr sentiert 0 gibt den aktuellen Task an R ckgabewerte Gibt einen numerischen Fehlercode in Integer Form aus Beschreibung Err gestattet es dem Anwender den aktuellen Fehlercode zu lesen Zusammen mit den Fehlerbehandlungsf higkeiten von SPEL versetzt dies den Anwender in die Lage festzustellen welcher Fehler aufgetreten ist und entsprechend zu reagieren Err wir zusammen mit OnErr verwendet Wenn ein Fehler in einem Programm innerhalb von OnErr Return auftritt kann es schwierig sein die Fehlernummer festzuste
134. Ert R ckgabewerte Die Tasknummer in welcher der Fehler aufgetreten ist Beschreibung Wenn ein Fehler auftritt wird Ert verwendet um festzustellen in welchem Task der Fehler aufgetreten ist Die ausgegebene Zahl wird zwischen 1 und 32 liegen Verwandte Befehle ECir Era Erl Err ErrHist ErrMsg OnErr Trap Beispiel einer Ert Funktion Das folgende Beispiel zeigt ein einfaches Programm das die Ert Funktion verwendet um festzustellen in welchem Task und in welchem Zusammenhang der Fehler auftrat Erl wo der Fehler auftrat Err welcher Fehler auftrat Era ob der Fehler von einer Achse verursacht wurde Trap Error Call ER_PRINT Einstellung f r Fehlerfall Function ER_PRINT Fehlerbehandlungsroutine Print Task number at which error occurred is Ert If Era 0 Then Print Joint which caused error is Era 0 EndIf Print The Error code is Err 0 Print The Error Message is ErrMsg Err 0 Print The line where th rror occurred is Line Erl 0 End Fend 154 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz EStopOn Funktion Gibt den aktuellen Emergency Stop Not Halt Status aus Syntax EStopOn R ckgabewerte WAHR wenn der Emergency Stop Kreis unterbrochen wurde ON sonst FALSCH Beschreibung EStopOn gibt WAHR aus nachdem der Emergency Stop Kreis ausgel st wurde Selbst nach Schlie en des Kreises was normalerweise durch herausz
135. Fend SPEL Language Reference Rev 3 5 363 SPEL Sprachreferenz Restart Anweisung s Startet die aktuelle Programmgruppe neu Syntax Restart Beschreibung Restart stoppt alle Tasks und f hrt die zuletzt gelaufene Programmgruppe erneut aus Diese Anweisung ist dem Chain Befehl hnlich mit der Ausnahme dass die Programmgruppe nicht spezifiziert ist Dar berhinaus kann Restart au erdem in einer Trap Emergency oder Trap Fehler Routine verwendet werden Das erlaubt es Ihnen nach einem Not Halt oder einem kritischen Fehler neu zu starten Verwandte Befehle Chain Quit Trap Xqt Beispiel einer Restart Anweisung Function main Trap Emergency Call tEmer If Stat 0 And 1048576 1048576 Then Print Clear Emergency stop while Stat 0 And 1048576 1048576 Reset wait 1 Wend Print Emergency stop cleared Endif Motor On while TRUE Call PickPlac Wend Fend Function tEmer Restart Fend 364 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Return Anweisung s Die Return Anweisung wird zusammen mit der GoSub Anweisung verwendet GoSub bertr gt die Programmsteuerung an ein Unterprogramm Sobald das Unterprogramm vollst ndig ausgef hrt ist veranlasst Return dass die Programmausf hrung in der Zeile fortgesetzt wird die auf den GoSub Befehl folgt der das Unterprogramm initiiert hatte Syntax Return Beschreibung Die Return Anweisung wird zusammen mit der A
136. Funktion s Cos RadToDeg x SPEL Language Reference Rev 3 5 353 SPEL Sprachreferenz Randomize Anweisung Initialisiert den Zufallszahlengenerator Syntax Randomize Verwandte Befehle Rnd Randomize Beispiel Function main Real r Randomize Integer randNum randNum Int Rnd 10 1 Print Random number is randNum Fend 354 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Range Anweisung s Spezifiziert die Bewegungs Grenzen f r jede der Servo Achsen und zeigt sie an Syntax Range j7Min j1Max j2Min j2Max j3Min j3Max j4Min j4Max Parameter 1Min Der untere Grenzwert f r die erste Achse T1 angegeben in Pulsen j1Max Der obere Grenzwert f r die erste Achse T1 angegeben in Pulsen j2Min Der untere Grenzwert f r die zweite Achse T2 angegeben in Pulsen j2Max Der obere Grenzwert f r die zweite Achse T2 angegeben in Pulsen J3Min Der untere Grenzwert f r die dritte Achse Z angegeben in Pulsen J3Max Der untere Grenzwert f r die dritte Achse Z angegeben in Pulsen J4Min Der untere Grenzwert f r die vierte Achse U angegeben in Pulsen jJ4Max Der obere Grenzwert f r die vierte Achse U angegeben in Pulsen R ckgabewerte Zeigt den aktuellen Range Wert an wenn Range ohne Parameter eingegeben wurde Beschreibung Range bestimmt den unteren und oberen Grenzwert f r jede Motorenachse angegeben in Pulsen Diese Arbeitsbereichsgrenzen werden in Puls Einheiten de
137. Gibt zus tzliche Informationen die hinsichtlich dieses Befehls wichtig sein k nnen Zeigt andere mit diesem Befehl zusammenh ngende Befehle Schauen Sie bitte im Inhaltsverzeichnis nach der Seitennummer dieser verwandten Befehle Gibt ein oder mehrere Beispiele wie dieser Befehl benutzt wird SPEL Language Reference Rev 3 5 SPEL Sprachreferenz SYMBOLE Dieses Handbuch benutzt die folgenden Symbole um zu zeigen in welchem Kontext dieser Befehl benutzt werden kann gt Kann als Online Modus Befehl verwendet werden Kann als Anweisung in einem SPEL Programm verwendet werden ne f Funktion Bestimmt f r INC Roboter ausgestattet mit inkrementellem Encoder Wird ein so gekennzeichneter Befehl bei einem ABS Roboter mit absolutem Encoder ausgef hrt tritt Fehler 123 auf Z O SPEL Language Reference Rev 3 5 13 SPEL Sprachreferenz I Parallelbearbeitung s Verarbeitet Ein Ausgangsanweisungen parallel zur Ausf hrung von Bewegungsbefehlen Syntax motion cmd statements Parameter motion cmd Jeder g ltige Bewegungsbefehl der folgenden Liste Jump Go Move Arc oder Pulse statements Alle g ltigen Parallelbearbeitungs E A Anweisung en die w hrend der Bewegung ausgef hrt werden k nnen Siehe unten stehende Tabelle Beschreibung Parallelbearbeitungsbefehle sind Bewegungsbefehlen angegliedert damit E A Anweisungen gleichzeitig mit dem Beginn der Verfahrbewegung ausgef hrt werden k n
138. In ENetlO_Off ENetlO_On ENetlO_Out ENetlO_Sw Beispiel einer ENetlO_Oport Anweisung Print ENetIO_Oport 5 SPEL Language Reference Rev 3 5 139 SPEL Sprachreferenz ENetlO_Out Anweisung s Setzt gleichzeitig 4 EtherNet I O Ausg nge ein Modul Syntax ENetlO_Out portNumber outData Parameter portNumber Integer Ausdruck der eine der Ausgangsgruppen repr sentiert jede Gruppe enth lt 4 Ausg nge aus denen die EtherNet I O Ausg nge bestehen outData Integer Ausdruck zwischen 0 und 15 der das Ausgangsmuster f r die mit der Anweisung portNumber ausgew hlte Ausgangsgruppe repr sentiert Wenn er in hexadezimaler Form dargestellt wird wird der Bereich von amp HO bis amp HF abgedeckt Beschreibung ENetlO_Out setzt unter Nutzung der vom Anwender angegebenen Kombination aus portNumber und outData Werten gleichzeitig 4 EtherNet I O Ausg nge um festzusetzen welche Ausg nge eingestellt werden Sobald eine Portnummer ausgew hlt wurde d h es wurde eine Gruppe von vier Ausg ngen ausgew hlt muss ein spezifisches Ausgangsmuster definiert werden Daf r wird der Parameter outData verwendet Der outData Parameter kann einen Wert zwischen 0 und 15 haben und kann in hexadezimalem oder Integer Format repr sentiert werden d h amp HO amp HF oder 0 15 Die folgende Tabelle zeigt einige der m glichen Ausgangskombinationen und ihre zugeh rigen outData Werte Ausgangs Einstellungen outData Wert 3 Aus Aus Au
139. L Language Reference Rev 3 5 187 SPEL Sprachreferenz Global Anweisung s Deklariert Variablen mit globalem G ltigkeitsbereich Globale Variablen sind frei zug nglich Syntax Global Preserve dataType varName subscripts varName subscripts Parameter Preserve Optional Wenn Preserve definiert ist werden die Werte der Variable beibehalten indem ihr Inhalt auf Diskette gespeichert wird Die Werte werden nur durch Erase gel scht oder wenn die Anzahl der Dimensionen ge ndert wird Die Werte werden ber Sessions oder Projekt nderungen hinaus beibehalten dataType Datentypen wie z B Boolean Integer Long Real Double Byte oder String varName Variablenname Namen d rfen bis zu 24 Zeichen lang sein subscripts Optional Dimensionen einer Feldvariable es k nnen bis zu drei multiple Dimensionen deklariert werden Die Syntax sieht aus wie folgt dim1 dim2 dim3 dim1 dim2 dim3 k nnen ein Integer zwischen 0 32767 sein Beschreibung Globalvariablen sind Variablen die in mehr als einer Datei desselben Projektes verwendet werden k nnen Sie werden gel scht wann immer eine Funktion vom Run Fenster oder Operator Fenster aus gestartet wird es sei denn sie sind mit der Preserve Option deklariert Globale Variablen k nnen im Online Fenster verwendet werden sobald die Projektgenerierung abgeschlossen ist Globale Variablen k nnen ebenfalls mit der VB Guide Option verwendet werden Es wird empf
140. LEDIGT etc Der Befehl On schaltet den Merker ein w hrend Off ihn ausschaltet Der Befehl Sw wird verwendet um den aktuellen Status den angegebenen Merkers zu berpr fen Der Befehl Wait kann ebenfalls mit dem Merker verwendet werden um das System dazu zu veranlassen zu warten bis ein definierter S W Status eingestellt ist Einschr nkung Der Unterschied zwischen On und On Es ist sehr wichtig dass der Anwender den Unterschied zwischenden Befehlen On und On versteht Der On Befehl arbeitet mit dem internen Merker und hat keinerlei Auswirkungen auf die Hardware E As des Roboters Der On Befehl arbeitet mit den Standard und mit der Erweiterungs Hardware Ausgangsports Diese Hardwareports sind einzelne Ausg nge die mit Ger ten au erhalb der Steuerung kommunizieren Verwandte Befehle In In InBCD Off Off On OpBCD Oport Out Out Sw Sw Wait 296 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Beispiel einer On Anweisung Das folgende Beispiel zeigt 2 Tasks Jeder der beiden Tasks hat die M glichkeit Bewegungsbefehle zu initiieren Jedoch wird ein Sicherungsmechanismus zwischen den beiden Tasks verwendet um sicherzustellen dass ein Task erst dann die Kontrolle ber die Bewegungsbefehle des Roboters erh lt wenn der andere Task deren Verwendung abgeschlossen hat Dies erm glicht es 2 Tasks Bewegungsbefehle korrekt und in geordneter vorhersehbarer Art und Weise auszuf hren Sw wird in Kombi
141. Lock setzt einige System Objekte zur ck auf ihren Anfangsstatus SFree setzt aus Sicherheitsgr nden Parameter zur ck die die Roboterarmvorschubgeschwindigkeit Speed und SpeedS die Beschleunigung Accel und AccelS und den LimZ Parameter betreffen Verwandte Befehle LimZ Reset SFree SLock Beispiel Dies ist ein einfaches Beispiel f r die Verwendung einer SLock Anweisung Function test Sfree 1 2 Gibt die Ansteuerung der Achse 1 Achse 2 frei und kontrolliert die Z und U Achse f r die Teileinrichtung Go P1 SLock 1 2 Gibt die Ansteuerung der Achsen 1 und 2 wieder her Fend 394 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Space Funktion Gibt eine Zeichenkette von count Leerzeichen aus wie vom Anwender spezifiziert Syntax Space count Parameter count Die Anzahl von Leerzeichen die in die Ausgabe Zeichenkette eingesetzt werden sollen R ckgabewerte Gibt eine Zeichenkette von count Leerzeichen aus Beschreibung Space gibt eine vom Anwender spezifizierte Zeichenkette von count Leerzeichen aus Space kann bis zu 255 Zeichen ausgeben die maximale Anzahl von Zeichen die in einer Stringvariable erlaubt ist Der Space Befehl wird f r gew hnlich verwendet um Leerzeichen vor nach oder zwischen anderen Buchstabenzeichenketten einzuf gen Verwandte Befehle Asc Chr Left Len Mid Right Str Val Beispiel einer Space Funktion gt Print XYZ Space 1 ABC XYZ ABC
142. MCofs Befehl eingeben Hinweise WICHTIG MCofs sollte nur f r Wartungszwecke verwendet werden Wenn die Maschinenkalibrierung mit Mcal ausgef hrt wird so wird die aktuelle Position auf diesem Parameter basierend erkannt Diese Daten m ssen daher angegeben werden Wenn die falschen Daten definiert werden sind die Roboterkoordinaten nicht korrekt und die falschen Daten l sen eine unerlaubte Bewegung aus Abschalten der Versorgungsspannung und Ausf hren des Verinit Befehls Die MCofs Werte werden sowohl bei Abschalten der Versorgungsspannung als auch nach Ausf hrung des Verinit Befehls beibehalten Roboter mit absoluten Encodern Wenn Sie versuchen MCOFS f r Roboter mit absoluten Encodern auszuf hren so tritt Fehler Nr 409 auf was bedeutet das dieser Befehl f r diesen Robotertyp nicht unterst tzt wird Roboter mit absoluten Encodern ben tigen die MCOFS Anweisung nicht Verwandte Befehle Mcal Mcorg Ver 266 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Beispiel einer MCofs Anweisung Die folgenden Beispiele werden vom Online Fenster aus ausgef hrt gt MCofs 04 1364 50 4506 6304 479 469 gt MCofs amp H04 1364 50 4506 6304 479 469 SPEL Language Reference Rev 3 5 267 SPEL Sprachreferenz MCofs Funktion Syntax MCofs paramNumber Parameter paramNumber Definiert die MCOFS Einstellungsnummern ganze Zahl von 0 bis 7 dargestellt durch einen Ausdruck oder einen numerischen Wert
143. O Go P1 Speed fast Go PO Go P1 Next I Fend Vom Online Fenster aus kann der Anwender auch Speed Werte einstellen gt Speed 100 100 50 Die Abw rtsbewegung der Z Achse wird auf 50 gesetzt gt Speed 50 gt Speed Low Power State Speed is limited to 5 50 50 50 gt SPEL Language Reference Rev 3 5 397 SPEL Sprachreferenz Speed Funktion Gibt eine der drei Geschwindigkeitseinstellungen aus Syntax Speed paramNumber Parameter paramNumber Integer Ausdruck der einen der unten gezeigten Werte bewertet 1 Geschwindigkeit der PTP Bewegung 2 Geschwindigkeit der JUMP Aufw rtsbewegung 3 Geschwindigkeit der JUMP Abw rtsbewegung R ckgabewerte Integer Wert von 1 bis 100 Verwandte Befehle Speed Statement Beispiel einer Speed Funktion Integer savSpeed savSpeed Speed 1 Speed 50 Go pick Speed savSpeed Fend 398 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz SpeedS Anweisung s Spezifiziert oder zeigt die Armgeschwindigkeit an die mit den CP Befehlen wie Move und Arc verwendet wird Syntax SpeedS mmPerSec Parameter mmPerSec Integer Ausdruck der die Armgeschwindigkeit in der Einheit mm s darstellt Der maximale Wert h ngt vom Robotertyp ab R ckgabewerte Zeigt den aktuellen SpeedS Wert an wenn keine Parameter verwendet werden Beschreibung SpeedS spezifiziert die Werkzeugmittelpunkt Geschwindigkeit zur Verwendung mit allen CP Bewegungsbefehlen Dies schlie t auch Beweg
144. Parameter inputCondition Till muss mit der Sw oder Sw Eingabe Anweisung verwendet werden um die Bedingung der Hardware Eing nge oder Merker zu berpr fen Der Zustand muss einen WAHR 1 oder FALSCH 0 Wert ausgeben Die folgenden Funktionen und Operatoren k nnen f r die inputCondition verwendet werden Funktionen Sw Sw In In Force Operatoren And Or Xor Andere Klammern um bestimmten Operationen und Variablen Priorit t einzur umen Beschreibung Die Till Bedingung muss mindestens 1 Input oder Merker Input Funktion enthalten F gen Sie in die Till Bedingung nur die Operatoren ein die im vorangegangenen Abschnitt Parameter beschrieben werden Die Verwendung eines anderen Operators erzeugt zwar keinen Fehler f hrt aber zu unvorhersehbaren Bewegungen Die Till Anweisung kann in einer separaten Zeile oder als Suchausdruck in einer Bewegungsbefehl Anweisung verwendet werden Wenn Variablen mit einbezogen sind werden ihre Werte w hrend der Till Ausf hrung berechnet Multiple Till Anweisungen sind erlaubt Die zuletzt aufgetretene Till Bedingung bleibt solange aktuell bis sie ersetzt wird Wenn der Parameter weggelassen wird werden die aktuellen Till Definitionen angezeigt Hinweis Till Einstellung bei Einschalten der Versorgungsspannung Wenn die Stromzufuhr eingeschaltet wird wird die Till Bedingung auf Till Sw 0 1 initialisiert Verwenden Sie Stat um Till zu verifizieren Nach dem Ausf hren
145. Quellprogramm PRG Punktdaten Datei PNT Dateien die durch ROpen oder WOpen erzeugt wurden Verwandte Befehle List Type Beispiel Schreiben Sie den Inhalt einer Textdatei gt type test dat MyData Line 1 MyData Line 2 MyData Line 3 gt 438 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz UBound Funktion den gr ten verf gbaren Index f r die angegebene Dimension einer Matrix aus Syntax Gibt UBound arrayName dimension Parameter arrayName Name der Feldvariable folgt den Standardkonventionen f r Variablenbenennung dimension Optional Integer Ausdruck der angibt von welcher Dimension die Obergrenze ausgegeben wird Verwenden Sie 1 f r die erste Dimension 2 f r die zweite und 3 f r die dritte Wenn dimension weggelassen wird dann wird von Dimension 1 ausgegangen Verwandte Befehle Erase Redim UBound Function Example Integer i a 10 For i 0 to UBound a a i i Next SPEL Language Reference Rev 3 5 439 SPEL Sprachreferenz Ucase Funktion Gibt eine in Gro buchstaben umgewandelte Zeichenkette aus Syntax UCase string Parameter string Zeichenkettenausdruck R ckgabewerte Die konvertierte Gro buchstaben Zeichenkette Verwandte Befehle LCase Ucase Beispiel Data UCase str t SErS DATA SEES SEES 440 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Val Funktion Konvertiert eine aus Zahlen bestehende Buchstab
146. SPEL Sprache sehr hnlich Es gibt jedoch einen Hauptunterschied zwischen den beiden Dieser Unterschied wird im Folgenden aufgezeigt Der InBCD Befehl verwendet das BCD Format um das Format des R ckgabewertes f r die 8 Eing nge zu definieren Da das BCD Format den Gebrauch der Werte amp HA amp HB amp HC amp HD amp HE oder amp HF ausschlie t k nnen nicht alle Kombinationen f r die 8 Eing nge verwendet werden Der In Befehl ist dem InBCD Befehl sehr hnlich au er dass In es gestattet den R ckgabewert f r alle 8 Eing nge zu verwenden D h O bis 255 im Vergleich zu 0 99 f r InBCD Dies gestattet es dass alle m glichen Kombinationen f r die 8 Bit Eingangsgruppen gelesen werden SPEL Language Reference Rev 3 5 221 SPEL Sprachreferenz Verwandte Befehle In Off Off On On OpBCD Oport Out Out Sw Sw Wait InBCD Beispiel Einige einfache Beispiele vom Online Fenster sehen aus wie folgt Nehmen wir an dass an den Eing ngen 0 4 10 16 17 und 18 Spannung anliegt Die restlichen Eing nge sind ohne Spannung gt Print InBCD 0 11 gt Print InBCD 1 04 gt Print InBCD 2 07 gt 222 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Inertia Anweisung Spezifiziert die vollst ndige Massentr gheit und Exzentrizit t f r den aktuellen Roboter Syntax Inertia oadInertia eccentricity Parameter loadInertia Optional Real Ausdruck der das totale Tr
147. Sense Eingangs Bedingung erf llt wurde gibt JS eine 1 aus 0 Wenn der Arm die normale Bewegung abschlie t und den durch den Jump Befehl definierten Zielort erreicht gibt JS eine 0 aus Beschreibung JS wird zusammen mit den Befehlen Jump und Sense verwendet Der Zweck des JS Befehls ist es ein Statusergebnis zur Verf gung zu stellen welches aussagt ob ein eine Eingabebedingung die durch den Sense Befehl definiert wurde w hrend einer Bewegung die durch den Jump Befehl ausgel st wurde erf llt wird oder nicht Wenn die Eingabebedingung erf llt wird gibt JS eine 1 aus Wenn die Eingabebedingung nicht erf llt wird und der Arm die Zielposition erriecht gibt JS eine 0 aus JS ist einfach ein Befehl zur Status berpr fung verursacht keinerlei Bewegung oder spezifiziert welcher Eingang w hrend der Bewegung berpr ft werden soll Der Jump Befehl wird verwendet um Bewegungen zu initiieren und der Sense Befehl wird verwendet um zu spezifizieren welcher Eingang w hrend einer durch den Jump Befehl ausgel sten Bewegung berpr ft werden soll so berhaupt einer berpr ft werden soll HINWEIS JS funktioniert nur mit dem zuletzt verwendeten Jump Befehl JS kann nur verwendet werden um den Eingangs Check des zuletzt verwendeten Jump Befehls zu berpr fen welcher durch den Sense Befehl initiiert wurde Sobald ein zweiter Jump Befehl initiiert wird kann JS nur den Status f r den zweiten Jump Befehl ausgeben Der JS Status f r
148. Sie einfach einen Punkt an jedem Ende ein und definieren Sie dann wie folgt Spezifizieren Sie 1 als Anzahl der Teile zwischen demselben Punkt gt Palette 2 P20 P21 P20 5 1 Definiert eine 5x1 Palette Verwandte Befehle Pallet Funktion Beispiel einer Pallet Anweisung Der folgende Befehl vom Online Fenster erstellt die Palette die durch die Punkte P1 P2 und P3 definiert ist und teilt die Palettenebene in 15 gleich verteilte Palettenpunkt Positionen bei denen Palettenpunkt Nr 1 Palettenpunkt Nr 2 und Palettenpunkt Nr 3 entlang der Seite P1 bis P2 angeordnet sind gt pallet 1 Pl P2 P3 3 5 gt jump pallet 1 2 Springt zur Position auf der Palette Die resultierende Palette sieht aus wie folgt P3 13 14 15 10 11 12 7 8 9 4 5 6 12 3 P1 P2 318 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Pallet Funktion Spezifiziert eine Position in einer vorher definierten Palette Syntax Pallet palletNumber palletPosition Pallet palletNumber column row Parameter palletNumber Palettennummer repr sentiert durch einen Integer Ausdruck zwischen 0 und 15 PalletPosition Die Palettenposition wird durch einen Integer zwischen 1 und 32767 repr sentiert column Die Palettenspalte wird durch einen Integer Ausdruck zwischen 1 und 32767 repr sentiert row Die Palettenzeile wird durch einen Integer Ausdruck zwischen 1 und 32767 repr sentiert Beschreibung Pallet gibt eine Position in einer Palett
149. Sprachreferenz Hinweis zur Roboterinstallation Z Achsen Raum wird f r den Homing Prozess ben tigt Wenn die Z Achse in ihre Ausgangsposition zur ckkehrt f hrt sie zun chst aufw rts dann abw rts und bewegt sich dann in die Home Position Dies bedeutet dass es sehr wichtig ist den Roboter korrekt zu installieren so dass genug Platz vorhanden ist damit der Arm in Z Position in seine Home Position gelangen kann Es wird empfohlen ber dem oberen Limit 6 mm Raum zu lassen Installieren Sie keine Werkzeuge oder Einbauten im Raum von 6 mm ber dem Roboter damit f r Z Achsen R ckkehr in die Home Position gen gend Platz vorhanden ist Verwandte Befehle Hofs HTest Home Hordr Mcorg MCOrdr MCofs Mcal Beispiel Das folgende Beispiel wird vom Online Fenster aus ausgef hrt gt Motor On gt Mcal gt 264 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz MCalComplete Funktion Gibt den Status von MCal aus Syntax MCalComplete R ckgabewerte WAHR wenn MCal abgeschlossen wurde sonst FALSCH Verwandte Befehle MCal Beispiel von MCalComplete If Not MCalComplete Then MCal EndIf SPEL Language Reference Rev 3 5 265 SPEL Sprachreferenz MCofs Anweisung Spezifiziert die Kalibrierungs Offsetparameter f r die Maschinenkalibrierung und zeigt sie an Nur ben tigt f r Roboter mit inkrementellen Encodern Syntax MCofs sensorLogic j1Pulses j2Pulses j3Pulses j4Pulses j1WDiff j
150. System Fehler 4192 Kommunikationsfehler mit dem Servo Modul 4210 Der RAS Kreislauf entdeckte eine Fehlfunktion der Steuerung 4211 Servo CPU interner RAM Fehler 4212 Drive Unit Dual Port RAM Fehler 4213 Servo CPU Programm RAM Fehler 4214 Servo CPU Pr fsummenfehler in der lnitialisierungsanweisung 4215 Servo CPU berlauf 4216 Servo Echtzeit Befehls berlauf 4217 Servo Pr fsummenfehler im Echtzeitbefehl 4218 Servo Langzeit Befehls berlauf 4219 Servo Pr fsummenfehler im Langzeitbefehl 4220 Fehler in der Zeit berwachung der Drive Unit 4230 Servo Pr fsummenfehler im Echtzeitstatus 4231 Servo Pr fsummenfehler im Langzeitstatus 4232 Servo Fehler im Freilaufz hler 4233 Servo CPU Kommunikationsfehler 4240 Ung ltigen Interrupt erkannt 4241 Zu hohe Geschwindigkeit im Low Power Modus 4242 Ung ltiger Beschleunigungswert wurde erkannt 4243 Ung ltiger Geschwindigkeitswert wurde im High Power Modus erkannt 4250 Der Arm hat die Grenze des Arbeitsbereiches erreicht 4251 Der Arm hat die Grenze des X Y Arbeitsbereiches erreicht festgelegt durch 478 SPEL Language Reference Rev 3 5 SPEL Fehlermeldungen Error Message XYLIM 4252 Der Arm hat die Grenze des Arbeitsbereiches erreicht 4301 Das Pulse Generating Board hat ein Begrenzungssignal erkannt 4302 Das Pulse Generating Board
151. User Funktion Beispiel einer LogIn Anweisung LogIn operator oprpass 258 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Long Anweisung s Deklariert Long Integer Variablen 4 Byte Integer Syntax Long varName subscripts varName subscripts Parameter varName Variablenname den der Anwender als Long deklarieren will subscripts Optional Dimensionen einer Feldvariable es k nnen bis zu drei multiple Dimensionen deklariert werden Die Syntax sieht aus wie folgt dim1 dim2 dim3 dim1 dim2 dim3 k nnen eine ganze Zahl zwischen 0 32767 sein Beschreibung Long wird verwendet um Variablen als Long zu deklarieren Long Variablen k nnen ganze Zahlen im Wertebereich zwischen 2 147 483 648 und 2 147 483 647 enthalten Alle Variablen sollten ganz oben in einer Funktion deklariert sein Verwandte Befehle Boolean Byte Double Global Integer Real String Beispiel einer Long Anweisung Das folgende Beispiel zeigt ein einfaches Programm das unter Verwendung von Long einige Variablen als Long deklariert Function longtest Long A 10 Eindimensionale Feldvariable aus Longs Long B 10 10 Zweidimensionale Feldvariable aus Longs Long C 10 10 10 Dreidimensionale Feldvariable aus Longs Long varl arrayVar 10 Long i Print Please enter a Long Number Input varl Print The Integer variable varl varl Por L T TOS Print Please enter a Long Number Input arrayVar i Pri
152. Value Entered was arrayvar i Next I Fend SPEL Language Reference Rev 3 5 233 SPEL Sprachreferenz InW Funktion Gibt den Status des spezifizierten Eingangs Wordport aus Jeder Wordport enth lt 16 Eingabebits Syntax InW number Parameter number Spezifiziert die Wordportnummern innerhalb des angegebenen I O Platinen Bereichs unter Verwendung eines Integer Ausdrucks R ckgabewerte Gibt den aktuellen Eingabe Status aus Long Integers von 0 bis 65535 Verwandte Befehle In Out OutW Beispiel einer InW Funktion Long wordO word0 InW 0 234 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz JA Funktion Gibt einen in Achswinkeln spezifizierten Roboterpunkt aus Syntax JA j 1 j2 J3 j4 Parameter j1 j4 Real Ausdr cke welche Achswinkel repr sentieren R ckgabewerte Ein Roboterpunkt dessen Ort durch die dargestellten Achswinkel bestimmt wird Verwandte Befehle XY Beispiel einer JA Funktion P10 JA 60 30 50 45 GO JA 135 90 50 90 SPEL Language Reference Rev 3 5 235 SPEL Sprachreferenz JRange Anweisung s Definiert den erlaubten Arbeitsbereich der spezifizierten Achse in Pulsen Syntax JRange jointNumber lowerLimit upperLmit Parameter jointNumber Integer Ausdruck zwischen 1 und 4 der die Achse repr sentiert f r das JRange spezifiziert wird lowerLmit Long Integer Ausdruck der den Z hlstand der die Encoder Pulse Position f r den Ber
153. While condition statements Wend Parameter condition Eine beliebige g ltige Bedingung welche die berpr fung der E A mit dem Sw Befehl oder der Vergleich von Variablen sein kann statements Optional Eine oder mehrere Anweisungen werden wiederholt w hrend die condition Bedingung WAHR ist Beschreibung Spezifiziert die While Bedingung Wenn erf llt werden die Anweisungen zwischen While und Wend ausgef hrt Dann wird die While Bedingung erneut gepr ft Die Ausf hrung der While Wend Anweisungen und das Nachpr fen der While Bedingung dauert an solange die While Bedingung erf llt ist Wenn die While Bedingung nicht erf llt wird springt die Programmsteuerung zu dem Befehl der auf Wend folgt F r eine While Bedinung die beim ersten Pr fen nicht erf llt wird werden die Anweisungen innerhalb der While Wend Anweisung niemals ausgef hrt Hinweise Regeln f r While Wend Auf jedes While muss ein Wend folgen Innerhalb einer While Wend Schleife k nnen bis zu 16 While Wend Schleifen verschachtelt sein Jedes Wend entspricht dem vorausgehenden While Ein Wend ohne vorausgehendes While f hrt zu einem Fehler In der While Bedingung kann jeder g ltig Operator enthalten sein Verwandte Befehle If Then Else While Beispiel Long i real While i lt 60 F hrt Anweisungen zwischen While Wend aus wenn i lt 60 SPEL Language Reference Rev 3 5 453 SPEL Sprachreferenz WOpen Anweisung s
154. Wird BaseU weggelassen befinden sich die U Achsen Koordinaten im lokalen Koordinatensystem Ursprung der X Achse im lokalen Koordinatensystem Ursprung der Y Achse im lokalen Koordinatensystem Ursprung der Z Achse im lokalen Koordinatensystem Rotationswinkel des lokalen Koordinatensystems 1 Local definiert ein lokales Koordinatensystem durch die Spezifizierung zweier Punkte pLocal1 und pLocal2 die darin enthalten sind und die mit zwei Punkten pBase1 und pBase2 bereinstimmen welche im Basiskoordinatensystem vorhanden sind Beispiel LOCAL 1 Pl PI11 P2 P12 P1 und P2 sind Punkte im lokalen Koordinatensystem P1 und P2 sind Punkte im Basiskoordinatensystem Wenn die Entfernung zwischen den zwei definierten Punkten im lokalen Koordinatensystem nicht mit der Entfernung zwischen den zwei definierten Punkten im Basiskoordinatensystem bereinstimmt wird die XY Ebene des lokalen Koordinatensystem in der Position definiert in welcher der Mittelpunkt zwischen den zwei definierten Punkten im lokalen Koordinatensystem mit dem zwischen den zwei definierten Punkten im Basiskoordinatensystem bereinstimmt Gleicherma en wird die Z Achse des lokalen Koordinatensystems in der Position definiert in welcher die Mittelpunkte miteinander bereinstimmen 2 Definiert ein lokales Koordinatensystem durch Definition von Ursprung und Rotationswinkel im Verh ltnis zum Basiskoordinatensystem 254 SPEL Language Reference Rev 3 5
155. a Funktion eine O Null aus Verwandte Befehle ECIr Erl Err Errhist ErrMsg Ert OnErr Trap Beispiel einer Era Funktion Das folgende Beispiel zeigt ein einfaches Programm das die Era Funktion verwendet um festzustellen in welchem Task und in welchem Zusammenhang der Fehler auftrat Erl wo der Fehler auftrat Err welcher Fehler auftrat Era ob der Fehler von einer Achse verursacht wurde Trap Error Call ER_PRINT Stellt ein wann ein Fehler auftritt Function ER_PRINT Fehlerbehandlungsroutine Integer errTask errTask t Print Task number at which error occurred is errTask If Era errTask Then Print Joint which caused error is Era errTask EndIf Print The Error code is Err errTask Print The line where th rror occurred is Line Erl errTask Fend SPEL Language Reference Rev 3 5 145 SPEL Sprachreferenz Erase Anweisung s L scht alle Elemente einer Matrix oder einer Variable Syntax Erase varName All Parameter varName Name einer zu l schenden Matrix oder Variable All L scht alle Matrizen oder Variablen im aktuellen Projekt Beschreibung Erase kann zum L schen jeglicher Variable verwendet werden Nummervariablen werden auf 0 gesetzt und Zeichenkettenvariablen werden auf leere Zeichenketten gesetzt Erase All wird normalerweise verwendet um alle Variablen zur ckzusetzen nachdem ein Chain Befehl ausgef hrt worden ist Wenn ein Programm
156. a data As String OnErr GoTo LogDataErr Integer answer String msg WOopen a test txt As 30 Print 30 data Close 30 Exit Function LogDataErr msg Cannot open file on floppy CRLF msg msg Please insert floppy in drive MsgBox msg MB_OK Error answer EResume Fend SPEL Language Reference Rev 35mm AT SPEL Sprachreferenz Erl Funktion Gibt die Zeilennummer aus in welcher der Fehler aufgetreten ist Syntax Erl taskNumber Parameter taskNumber Integer Ausdruck der eine Tasknummer von 0 bis 32 repr sentiert 0 gibt den aktuellen Task an R ckgabewerte Zeilennummer in welcher der letzte Fehler auftrat Beschreibung Erl wir zusammen mit OnErr verwendet Wenn ein Fehler in einem Programm innerhalb von OneErr Return auftritt ist es mitunter schwierig die Fehlerquelle festzustellen Erl gibt die Zeilennummer aus in welcher der Fehler aufgetreten ist Wird Erl in Kombination mit Err Ert und Era verwendet erh lt der Anwender wesentlich mehr Informationen ber den aufgetretenen Fehler Einschr nkungen Denken Sie daran Erl auszuf hren bevor Sie ECIr verwenden Da der im Fehlerbehandlungsprogramm interne ECiIr Befehl die Fehlerzeilennummer auf O zur cksetzt sollten Sie sichergehen dass Sie Erl vor ECIr ausf hren Anderenfalls werden Sie nicht feststellen k nnen in welcher Zeilennummer der Fehler auftrat Verwandte Befehle ECiIr Era Err Errhist ErrMsg
157. ach die Motoren aus und bewegen Sie den Arm von Hand aus der Grenze des Arbeitsbereiches Die tats chliche Bewegungsentfernung bei der Maschinenkalibrierung ist von Modell zu Modell unterschiedlich Bitte lesen Sie das entsprechende Roboter Handbuch f r weitere Details Potentielle Fehler F r SCARA Roboter mit inkrementellen Encodern Bei SCARA Robotern mit inkrementellen Encodern sollte die vierte Achse nicht um mehr als 180 Grad rotiert werden wenn die Steuerung ausgeschaltet ist Wenn Sie nach Rotation der Achse die Versorgungsspannung einschalten und Mcal ausf hren tritt Fehler 237 auf In diesem Fall sollten Sie die Versorgungsspannung ausschalten und die vierte Achse ungef hr in die vorangegangene Position bewegen dann den Strom einschalten und erneut versuchen Mcal auszuf hren Der Versuch einen Bewegungsbefehl auszuf hren ohne zuvor Mcal ausgef hrt zu haben Wenn Sie versuchen einen Bewegungsbefehl oder einen beliebigen anderen Befehl auszuf hren f r den die aktuellen Positionsdaten z B der Plist Befehl ben tigt werden ohne zuerst die Maschinenkalibrierung durchzuf hren tritt ein Fehler auf Roboter mit absoluten Encodern Wenn Sie versuchen Mcal f r Roboter mit absoluten Encodern auszuf hren tritt Fehler Nr 123 auf was bedeutet das dieser Befehl f r diesen Robotertyp nicht unterst tzt wird Roboter mit absoluten Encodern ben tigen die Mcal Anweisung nicht SPEL Language Reference Rev 3 5 263 SPEL
158. adlinig bewegt Der Go Befehl wird verwendet wenn es dem Anwender prim r um die Ausrichtung des Arms bei Erreichen des Punktes geht Der Move Befehl wird verwendet wenn es wichtig ist den Pfad des Roboterarms zu steuern w hrend er sich bewegt Der Unterschied zwischen Go und Jump Sowohl der Jump Befehl als auch der Go Befehl veranlassen den Roboterarm zu einer PTP Bewegung Der Jump Befehl hat jedoch ein zus tzliches Feature Jump veranlasst den Endeffektor des Roboters dazu zun chst bis zum LimZ Wert zu steigen sich dann in horizontaler Richtung zu bewegen bis er sich ber dem Zielpunkt befindet und schlie lich abw rts zum Zielpunkt Dies gestattet es den Jump Befehl zu verwenden um das Umfahren von Hinderniss zu garantieren und was wichtiger ist um die Zykluszeiten f r Best ckungsbewegungen zu verbessern Korrekte Geschwindigkeits und Beschleunigungs Befehle mit Go Die Befehle Speed und Accel werden verwendet um Geschwindigkeit und Beschleunigung des Manipulators w hrend der Go Bewegung zu definieren Achten Sie darauf dass die Befehle Speed und Accel sich auf PTP Bewegungen beziehen wie der f r den Go Befehl w hrend die Befehle SpeedS und AccelS f r linearinterpolierte und kreisinterpolierte Bewegungen verwendet werden 190 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Verwenden von Go mit der optionalen Till Bedingung Die optionale Till Bedingung gestattet es dem Anwender eine Bedingung zu definieren
159. age Reference Rev 3 5 SPEL Sprachreferenz InStr Funktion Gibt die Position einer Zeichenkette innerhalb einer anderen aus Syntax InStr string searchString Parameter string Zeichenkettenausdruck in dem gesucht werden soll searchString Zeichenkettenausdruck nach dem innerhalb von string gesucht werden soll R ckgabewerte Gibt die Position der Suchkette aus wenn der Ort gefunden wird sonst wird 1 ausgegeben Verwandte Befehle Mid Beispiel einer Instr Funktion Integer pos pos InStr abc b SPEL Language Reference Rev 3 5 231 SPEL Sprachreferenz Int Funktion Konvertiert eine Real Zahl in eine Integer Zahl Gibt den gr ten Integer aus der kleiner oder gleich dem spezifizierten Wert ist Syntax Int number Parameter number Ein Ausdruck mit einer Real Zahl R ckgabewerte Gibt einen Integer Wert der in number verwendeten Real Zahl aus Beschreibung Int number nimmt den Wert von number und gibt den gr ten Integer aus der kleiner oder gleich number ist Hinweis F r Werte kleiner als 1 negative Zahlen Wenn der Parameter number einen Wert von weniger als 1 hat dann hat der R ckgabewert einen gr eren Absolutwert als number Wenn die Zahl z B folgenderma en lautet 1 35 so wird 2 ausgegeben Verwandte Befehle Abs Atan Atan2 Cos Mod Not Sgn Sin Sqr Str Tan Val Beispiel einer Int Funktion Einige einfache Beispiele vom Online Fenster sehen aus wie folgt Prin
160. age Reference Rev 3 5 377 SPEL Sprachreferenz SafetyOn Funktion Gibt den aktuellen Sicherheitsstatus aus Syntax SafetyOn R ckgabewerte TRUE wenn der Sicherheitskreis ge ffnet ist On ansonsten FALSCH Beschreibung SafetyOn gibt TRUE aus nachdem der Sicherheitskreis ge ffnet worden ist SafetyOn entspricht Stat 0 And amp H400000 lt gt 0 Verwandte Befehle EStopOn PauseOn Stat Beispiel einer SafetyOn Funktion If SafetyOn Then Print Safe Guard is open EndIf 378 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz SavePoints Anweisung s Speichert f r den aktuellen Roboter Punktdaten aus dem Hauptspeicher in eine Datei Syntax SavePoints fileName Parameter fileName Zeichenkettenausdruck der die Datei enth lt in welche die Punkte gespeichert werden Die Dateinamenerweiterung muss PNT lauten Beschreibung SavePoints speichert die Roboterpunkte in die spezifizierte Datei Die Erweiterung PNT muss immer spezifiziert sein Der SavePoints Befehl f gt die Punktdatei au erdem dem Projekt des aktuellen Roboters hinzu Potentielle Fehler Speicherkapazit t berschritten Wenn kein Speicherplatz mehr vorhanden ist wird Fehler Nr 60 ausgegeben Ung ltiger Dateiname Wird ein Dateiname eingegeben der mehr als 24 Zeichen lang ist Leerzeichen beinhaltet oder andere ung ltige Dateinamen Eigenschaften aufweist wird Fehler Nr 62 ausgegeben Verwandte Befehle LoadPoints
161. alt einer Textdatei an L scht eine Datei L scht eine Datei Kopiert eine Datei Benennt eine Datei um ffnet eine Datei zum Anf gen von Daten ffnet eine Datei zum Einlesen von Daten ffnet eine Datei zum Schreiben von Daten Liest ein oder mehrere Zeichen aus einer Datei oder von einem Port Verschiebt einen Dateizeiger f r den Direktzugriff Schreibt ein oder mehrere Zeichen in eine Datei oder einen Port Schlie t eine Datei Befehle f r Variablen Zeigt im Speicher befindliche globale Variablen an Zusammenfassung der SPEL Befehle Befehle bez glich numerischer Werte Oport Sw Ctr CTReset Tmr TmReset Time Js CX CY CZ CU PIs Agl Era Erl Err Ert Tw MyTask Lof Stat Sin Cos Tan Atan Atan2 Sqr Liest den Status eines Ausganges Gibt den Status eines Einganges aus Liest 8 Eing nge Liest 8 Eing nge als BCD Code Bin r Dezimal Code Gibt den Status eines Merkers aus Liest 8 Merker Gibt den Status eines Merkers vor der letzten Zustands nderung aus Gibt den Z hlerstand eines Z hlers aus Setzt einen Z hler zur ck Gibt den Z hlerstand eines Timers aus Setzt einen Timer auf 0 zur ck Stellt die Systemzeit ein Gibt den Status eines mit SENSE gekennzeichneten JUMP Vorganges aus Definiert den Koordinatenwert der X Achse eines Punktes bzw gibt ihn aus Definiert den Koordinatenwert der Y Achse eines Punktes bzw gibt ihn aus Defin
162. anguage Reference Rev 3 5 107 SPEL Sprachreferenz Die Achsen die nicht zur Steuerung w hrend des Curve Befehls angew hlt wurden halten ihre vorherigen Codiererpulslagen bei und bewegen sich w hrend der Curve Bewegung nicht pointList Punktausdruck P start finish output command Dieser Parameter besteht in der Realit t aus einer Serie von Punktnummern und optionalen Ausgangsanweisungen die entweder durch Kommata voneinander getrennt sind oder aus einem aufsteigenden Bereich von Punkten getrennt durch Doppelpunkt Normalerweise sind die Punktserien durch Kommata voneinander getrennt wie im folgenden gezeigt Curve MyFile O 0 4 Pl P2 P3 P4 Manchmal definiert der Anwender eine Punktserie unter Verwendung eines aufsteigenden Bereichs von Punkten wie unten dargestellt Curve MyFile O 0 4 P 1 4 Im oben dargestellten Beispiel hat der Anwender eine Kurve mit den Punkten P1 P2 P3 und P4 definiert Der output command ist optional und wird verwendet um den Ausgabebetrieb w hrend der Kurvenbewegung zu steuern F r digitale Ausg nge und Merker k nnen die Befehle On oder Off verwendet werden Die Eingabe eines Ausgabebefehls nach einer Punktnummer in der Punktserie veranlasst die Ausf hrung des output Befehls wenn der Arm den Punkt unmittelbar vor dem output Befehl erreicht Eine Curve Anweisung darf maximal 16 Ausgangsbefehle enthalten Im folgenden Beispiel wird der On 2 Befehl ausgef hrt sobald der
163. anguage Reference Rev 3 5 335 SPEL Sprachreferenz Relativer Versatz und absolute Koordinaten machen es einfach einen Punkt vor bergehend zu modifizieren Beispielsweise bewegt dieser Code den Roboter schnell an die Position 10 mm ber den Pick Punkt Dabei wird ein relativer Versatz f r Z von 10 mm verwendet Anschlie end bewegt sich der Roboter dann langsam zum Pick Punkt selbst Speed fast Jump pick 2 10 Speed slow Go pick Dieser Code bewegt den Roboter von der aktuellen Position direkt aufw rts indem ein absoluter Wert von 0 Null f r die Z Achse spezifiziert wird Limz 0 Jump P 2 0 Verwendung von lokalen Koordinatensystemen locals Sie k nnen mit einem Schr gstrich oder einem Zeichen eine Local Nummer spezifizieren Jedes dieser Zeichen hat eine separate Funktion Verwenden Sie den Schr gstrich um die Koordinaten einer Local Nummer zu kennzeichenen Beispielsweise bedeutet das Hinzuf gen von 1 in der folgenden Anweisung dass P1 sich am Ort 0 0 0 0 in Local 1 befindet P1 0 0 0 O 1 Das Zeichen wird verwendet um Koordinaten in Local Koordinaten zu bertragen Dieses Beispiel zeigt wie ein Punkt in einer Local Nummer eingeteacht wird Pl P 1 Die aktuelle Position wird in ihre Position in Local 1 bertragen Verwandte Befehle Go Local Pallet Pdel Plist Beispiel einer Point Expression Punktausdruck Hier sind einige Beispiele der Verwendung von Punktausdr cken in Zuordnu
164. as Datumstrennzeichen trennt Tag Monat und Jahr wenn die Datumswerte formatiert SPEL Language Reference Rev 3 5 SPEL Sprachreferenz d dd ddd dddd ddddd dddddd mmm mmmm yy yyyy h hh nn SS ttttt AM PM am pm A P a p AMPM werden Das Zeichen welches tats chlich als Datumstrennzeichen in den formatierten Ausgabedaten verwendet wird h ngt von Ihren Systemeinstellungen ab Zeigt das Datum als ddddd an und die Zeit als ttttt in dieser Reihenfolge Zeigt nur dann Datumsinformationen an wenn die Datums Seriennummer keine Nachkommastellen hat Zeitinformationen werden nur angezeigt wenn kein Integer Anteil vorhanden ist Zeigt den Tag als Zahl ohne vorangehenden Null an 1 31 Zeigt den Tag als Zahl mit vorangehender Null an 01 31 Zeigt das Datum als Abk rzung an Sun Sat dt So Sa Zeigt das Datum in ganzen Worten an Sunday Saturday dt Sonntag Samstag Zeigt das Datum als komplettes Datum an inclusive Tag Monat und Jahr das in Abh ngigkeit von den Kurzes Datum Formateinstellungen Ihres Systems formatiert wird F r Microsoft Windows lautet das Vorgabeformat f r das Kurzdatum m d yy Zeigt eine Datums Seriennummer als komplettes Datum an inclusive Tag Monat und Jahr das in Abh ngigkeit von den Long Datum Formateinstellungen Ihres Systems formatiert wird F r Microsoft Windows lautet das Vorgabeformat f r das Langdatum mmmm dd yyyy Zeigt den Wochentag als Zahl
165. ation einer relativen Position bei Verwendung lokaler Koordinaten Beim Betrieb eines SCARA Roboters mit drehbaren Achsen oder Robotern mit Zylinderkoordinaten in einem kartesischen Koordinatensystem werden die Berechnungen zu den Achswinkeln auf der Basis der ArmSet Parameter ausgef hrt Daher ist dieser Befehl kritisch wenn eine Definition f r einen Zusatzarm oder eine Hand ben tigt wird Hinweise Arm 0 Arm 0 kann vom Anwender nicht ber den ArmSet Befehl definiert oder ge ndert werden Er ist reserviert da er dazu verwendet wird die Standard Roboterkonfiguration zu definieren Wenn der Anwender Arm auf 0 setzt bedeutet dies dass die Standardparameter des Roboterarmes verwendet werden sollen Armnummer nicht definiert Die Anwahl einer zuvor nicht durch den ArmSet Befehl definierten Zusatzarm Nummer f hrt zu einem Fehler Verwandte Befehle ArmSet 38 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Beispiel einer Arm Anweisung Die folgenden Beispiele enthalten potentielle Zusatzarm Definitionen welche die Befehle ArmSet und Arm verwenden Der ArmSet Befehl definiert den Zusatzarm und die Arm Anweisung definiert welcher Arm als aktueller Arm genutzt wird Arm 0 ist der Vorgabe Roboterarm und kann vom Anwender nicht eingestellt werden ber das Online Fenster gt ArmSet 1 300 12 30 300 0 gt ArmSet arm0 250 0 0 300 0 armi 300 12 30 300 0 gt Arm 0 gt Jump P1 Springt unter Verwe
166. aufgerufen Verwandte Befehle Call Era Erl Err Ert ErrMsg GoSub GoTo OnErr Trap Beispiel lt Beispiel 1 gt Fehlerprozess durch den Anwender definiert Sw 0 Eingang wird als anwenderdefinierter Fehlereingang betrachtet Function Main Trap 1 Sw 0 On GoTo EHandle Definiert Trap EHandle On 31 Signalampellicht OpenCom 1 Print 1 Error is issued CloseCom 1 Fend lt Beispiel 2 gt Verwendungsweise wie beim Multi Tasking Function Main Trap 2 Sw 0 1 Or Sw 1 1 Call Feeder Fend Function Feeder Select TRUE Case Sw 0 On off 0 On 2 Case Sw 1 On off S1 On 3 Send R stet den Trap f r das n chste Mal auf Trap 2 Sw 0 On Or Sw 1 On Call Feeder Fend SPEL Language Reference Rev 3 5 435 SPEL Sprachreferenz lt Beispiel 3 gt Not Halt Behandlungsroutine Wenn der Eingang Sw 31 eingeschaltet ist wird der Wait Status unterbrochen und die Ausf hrung zum Trap Prozess Unterprogramm verzweigt Function Main Trap Emergency Call EstopHandler Print Starting main Do Print Main is running Wait 1 Loop Exit Function Fend Function EstopHandler Print EStop occurred Print Clear the EStop to continue Do Reset Loop Until Not EStopOn Print Restarting program Restart Fend lt Beispiel 4 gt Behandlungsroutine f r kritische Fehler Function Main Trap Error Call CriticalHandler Print Starting main Do Wait 1
167. aus Der numerische Ausdruck radians muss in Radianteneinheiten angegeben werden Der von der Sin Funktion ausgegebenen Wert bewegt sich zwischen 1 und 1 Verwenden Sie die RadToDeg Funktion um Radiantenwerte in Gradzahlen umzuwandeln Verwandte Befehle Abs Atan Atan2 Cos Int Mod Not Sgn Sqr Str Tan Val Beispiel einer Sin Funktion Das folgende Beispiel zeigt ein einfaches Programm welches den Sin Befehl nutzt Function sintest Real x Print Please enter a value in radians Input x Print Sin of x is Sin x Fend SPEL Language Reference Rev 3 5 393 SPEL Sprachreferenz SLock Anweisung s Schaltet nach SFree wieder die Leistung auf die angegebene Servoachse Syntax SLock jointNumber jointNumber Parameter jointNumber Die Servoachsennummer Diese kann 1 2 3 oder 4 sein entsprechend der Achsen 1 2 Z oder U bei SCARA Robotern bzw der Achsen X Y Z oder U bei kartesischen Robotern Beschreibung SLock stellt Servo Power f r die angegebene Servoachse wieder her die f r das direkte Teachen oder die Teileinrichtung durch den SFree Befehl abgeschaltet war Wenn die Achsennummer weggelassen wird werden alle Achsen aktiviert Die Aktivierung der dritten Achse Z bewirkt dass die Bremse gel st wird Um alle Achsen zu aktivieren kann auch Motor On anstelle von SLock verwendet werden Die Verwendung von SLock w hrend des Motor Off Status verursacht einen Fehler Hinweise S
168. aus Jedes Bit des Ergebnisses ist der Xor verkn pfte Wert zwei einander entsprechender Bits der beiden Operanden Verwandte Befehle And LShift Not Or RShift Xor Operator Beispiel gt print 2 Xor 6 4 gt 456 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Xqt Anweisung s Beginnt die Ausf hrung eines Tasks aus einem anderen Task heraus Syntax Xqt taskNumber funcName argList NoPause Parameter taskNumber Optional Die Tasknummer des auszuf hrenden Tasks Der Bereich f r die Tasknummer liegt zwischen 1 und 32 Hinweis Die SPEL Sprache der SRC 3xx Serie Steuerungen hat ein Ausrufezeichen vor der Tasknummer verwendet Das Ausrufezeichen ist nicht mehr notwendig und wird ignoriert funcName Der Name der auszuf hrenden Funktion argList Optional Liste von Argumenten die an die Funktionsprozedur weitergegeben werden wenn diese aufgerufen wird Multiple Argumente werden durch Kommata voneinander getrennt NoPause Optional Spezifiziert dass der Taks nicht pausiert wenn eine Pauseanweisung oder ein Signal eintritt Beschreibung Xat startet die spezifizierte Funktion und kehrt unverz glich zur ck Normalerweise wird der Parameter faskNumber nicht ben tigt Wenn taskNumber weggelassen wird ordnet SPEL der Funktion automatisch eine Tasknummer zu so m ssen Sie nicht die bersicht dar ber behalten welche Tasknummern gerade verwendet werden Hinweise Die SPEL Sprache der SRC 3xx Serie Ko
169. ausender von Hundertern innerhalb einer Zahl die vier oder mehr Stellen zur Linken der Dezimalstellen Trennung besitzt Die standardm ige Verwendung des Tausendertrennzeichens wird definiert wenn das Format ein Tausendertrennzeichen enth lt welches von Zahlzeichen Platzhaltern umgeben ist 0 oder Zwei nebeneinander stehende Tausendertrennzeichen oder ein Tausendertrennzeichen direkt SPEL Language Reference Rev 3 5 167 SPEL Sprachreferenz E E zur Linken der Dezimalstellen Trennung je nachdem ob eine Dezimalstelle definiert ist oder nicht bedeutet eine Skalierung der Zahl indem man sie durch 1000 teilt und rundet falls n tig Beispielsweise k nnen Sie die Format Zeichenkette 0 verwenden um 100 Millionen als 100 darzustellen Zahlen kleiner als 1 Million werden als 0 angezeigt Zwei nebeneinander stehende Tausendertrennzeichen in einer anderen Position als direkt zur Linken der Dezimalstellen Trennung stellen eine Spezifizierung der Nutzung eines Tausendertrennzeichens dar Das Zeichen welches tats chlich als Tausendertrennzeichen in den formatierten Ausgabedaten verwendet wird h ngt ab von dem Zahlen Format das Ihr System erkennt Zeittrennzeichen Es kann vorkommen dass in einigen Darstellungen andere Zeichen verwendet werden um das Zeittrennzeichen darzustellen Das Zeittrennzeichen trennt Stunden Minuten und Sekunden wenn die Zeitwerte formatiert werden Das Zeichen welches tats chlich a
170. bene Homing Reihenfolge werksseitige Einstellung Werksseitig ist die Homing Reihenfolge dahingehend eingestellt dass die Z Achse im 1 Schritt in sein Home Position zur ckgef hrt wird Im 2 Schritt werden dann die Achsen 1 2 und U gleichzeitig in ihre Home Position zur ckgef hrt Die Schritte 3 und 4 werden in der Vorgabekonfiguration nicht verwendet Die vorgegebenen Hordr Werte lauten wie folgt Hordr amp BO100 amp B1011 0 0 Der Verinit Befehl Zur cksetzen der vorgegebenen Hordr Werte Die Hordr Werte werden durch Ausf hren des Verinit Befehls auf die o a Werte zur ckgesetzt Hordr Werte werden beibehalten Die Hordr Werte werden dauerhaft gespeichert und nicht ge ndert bis sie entweder vom Anwender ge ndert werden oder ein Verinit Befehl ausgef hrt wird Die Z Achse sollte im Normalfall zuerst in ihre Home Position zur ckgef hrt werden Der Grund warum die Z Achse als Erste und ausschlie lich bewegt werden soll liegt darin dass das Roboterwerkzeug ber die Arbeitsfl che angehoben werden soll bevor mit einer Horizontalbewegung begonnen wird Dies tr gt dazu bei zu verhindern mit dem Roboterwerkzeug w hrend des Homing Prozesses im Arbeitsbereich gegen etwas zu sto en Verwandte Befehle Mcal MCordr Home HomeSet Beispiel einer HOrdr Anweisung Im Folgenden sehen Sie einige Online Fenster Beispiele Dieses Beispiel instruiert den Roboterarm die Homing Reihenfolge wie folgt zu definieren Z Achse im
171. cName argList Name der einer spezifischen Gruppe von Anweisungen gegeben wird die zwischen die Befehle Function und Fend eingebunden werden Der Funktionsname muss alphanumerische Zeichen enthalten und darf bis zu 32 Zeichen lang sein Unterstriche sind ebenfalls gestattet Optional Liste von Variablen die Argumente repr sentieren die an die Funktionsprozedur weitergegeben werden wenn diese aufgerufen wird Multiple Variablen werden durch Kommata getrennt Das arglist Argument hat die folgende Syntax ByRef ByVal varName As type ByRef ByVal varName As type R ckgabewerte Optional Spezifizieren Sie ByRef wenn Sie m chten dass Ver nderungen im Variablenwert von der Calling Funktion gesehen werden Optional Spezifizieren Sie ByVal wenn Sie nicht m chten dass Ver nderungen im Variablenwert von der Calling Funktion gesehen werden Dies ist die Vorgabeeinstellung Erforderlich Name der Variable welche das Argument repr sentiert folgt den Standardkonventionen f r Variablenbenennung Erforderlich Der Argumenttyp muss definiert werden Wert dessen Datentyp mit dem As Ausdruck am Ende der Funktionsdeklaration definiert wird Beschreibung Die Anweisung Funktion zeigt den Beginn einer Gruppe von SPEL Anweisungen an Um anzuzeigen wo eine Funktion endet wird die Anweisung Fend verwendet Alle Anweisungen die sich zwischen Function und Fend befinden werden als Teile der Funktion betrachtet
172. che f r jedes Robotermodell da diese Werte sich von Modell zu Modell unterscheiden Verwandte Befehle Range JRange Funktion Beispiel einer JRange Anweisung Die folgenden Beispiele werden vom Online Fenster aus ausgef hrt gt JRange 2 6000 7000 Definiert den zweiten Armbereich gt JRange 1 0 7000 Definiert den ersten Armbereich 236 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz JRange Funktion Syntax JRange jointNumber paramNumber Parameter JointNumber Spezifiziert die Referenz Achsnummer Integer von 1 bis 6 durch einen Ausdruck oder einen numerischen Wert paramNumber Integer Ausdruck der einen von zwei Werten enth lt 1 Spezifiziert den Wert der unteren Grenze 2 Spezifiziert den Wert der oberen Grenze R ckgabewerte Bereichseinstellung Integer Wert Pulses der spezifizierten Achse Verwandte Befehle Range JRange Anweisung Beispiel einer JRange Funktion Long i oldRanges 3 1 For i 0 To 3 oldRanges i 0 oldRanges i 1 Next i il w fa Q T 2 N SPEL Language Reference Rev 3 5 237 SPEL Sprachreferenz JS Funktion Jump Sense ermittelt ob der Arm angehalten hat bevor ein Jump Befehl der einen Sense Eingang verwendet hat vollst ndig ausgef hrt wurde oder ob der Arm die Jump Bewegung ganz ausgef hrt hat Syntax JS R ckgabewerte Gibt eine 1 oder eine 0 aus 1 Wenn der Arm gestoppt wurde bevor er seinen Zielpunkt erreicht hat weil eine
173. chricht die dem Anwender mitteilt welcher Punkt nicht definiert war Function eclrtest Integer i errnum Real temp OnErr Goto eHandle For i 0 To 399 temp CX P i ext i End VKAKKAKKKAKKAKKKAKKAAKKRA KK KK KK A KH KH AK AK KH RK A AK AK AK A KH KH A UO Error Handler ITkkkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkkxkxkxkxkxkxkxkxkxkkkkkx k eHandle errnum Err 0 EClr berpr ft ob ein undefinierter Punkt verwendet wird If errnum 78 Then Print Point number P i is undefined Else Print ERROR Error number errnum Occurred End If EResume Next Fend SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ENetlO_Analn Funktion Gibt den Status des angegebenen EtherNet I O Analog Ports aus Syntax ENetlO_Analn channe Parameter channel Integer Ausdruck oder I O Label welches einen der analogen Eingangsports repr sentiert R ckgabewerte Gibt einen Integer Wert zwischen 0 und 255 aus Der R ckgabewert betr gt 8 Bits wobei jedes Bit einem analogen EtherNet I O Eingabekanal entspricht Beschreibung Hinweis Dieser Befehl funktioniert nur dann wenn die EtherNet I O Option installiert ist Verwandte Befehle ENetlO_AnaOut ENetlO_Off ENetlO_On ENetlO_Oport ENetlO_Out ENetlO_Sw Beispiel einer ENetIO_Analn Funktion Print ENetIO_Analn 3 SPEL Language Reference Rev 3 5 131 SPEL Sprachreferenz ENetlO_AnaGetConfig An
174. cripts Optional Dimensionen einer Feldvariable es k nnen bis zu drei multiple Dimensionen deklariert werden Die Syntax sieht aus wie folgt dim1 dim2 dim3 dim1 dim2 dim3 k nnen ein Integer zwischen 0 32767 sein Beschreibung Boolean wird verwendet um Variablen als Boolean zu deklarieren Boolean Variablen k nnen einen von zwei Werten beinhalten 0 Falsch und 1 Wahr Alle Variablen sollten ganz oben in einer Funktion deklariert sein Verwandte Befehle Byte Double Global Integer Long Real String Beispiel einer Boolean Anweisung Boolean partOK Boolean A 10 Eindimensionale Feldvariable aus Booleschen Boolean B 10 10 Zweidimensionale Feldvariable aus Booleschen Boolean C 10 10 10 Dreidimensionale Feldvariable aus Booleschen partOK CheckPart If Not partoK Then Print Part check failed EndIf SPEL Language Reference Rev 3 5 51 SPEL Sprachreferenz BSet Function Stellt ein Bit in einer Zahl ein und gibt den neuen Wert aus Syntax BSet number bitNum Parameter Hinweise zur number Zahl Spezifiziert den Wert dessen Bit durch einen Ausdruck oder numerischen Wert einstellt wird Hinweise zur bitNum Bitnummer Spezifiziert das Bit positive Integer das durch einen Ausdruck oder einen numerischen Wert eingestellt werden soll R ckgabewerte Gibt den Eingestellten Bit Wert des spezifizierten numerischen Wertes Integer aus Verwandte Befehle BCIr BTst BSet
175. d Pass Beispiel Das Beispiel zeigt die Handhabung des Roboterarms mit Hilfe des Pass Befehls Function main Jump P1 Pass P2 Bewegt den Arm zu P2 und f hrt den n chsten Befehl durch bevor P2 erreicht wird On 2 Pass P3 Pass P4 OFf 0 Pass P5 Fend 322 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Pause Anweisung s Vor bergehender Stopp der Ausf hrung aller Programme f r welche die Pause Anweisung aktiviert ist Syntax Pause Beschreibung Wenn die Pause Anweisung ausgef hrt wird wird die Programmausf hrung f r all jene Tasks unterbrochen f r die Pause aktiviert ist Ebenso werden alle Tasks unterbrochen die gerade einen Bewegungsbefehl ausf hren selbst wenn Pause f r diese Tasks nicht aktiviert ist Einschr nkung QP und die Auswirkungen auf Pause Der QP Befehl wird verwendet um den Arm direkt bei Pause zu stoppen oder um die aktuelle Bewegung abzuschlie en und das Programm dann zu pausieren Bitte lesen Sie die Hilfe Funktion des QP Befehls f r weitere Informationen Verwandte Befehle Cont Resume Beispiel einer Pause Anweisung Das Beispiel unten zeigt die Verwendung des Pause Befehls zur vor bergehenden Aussetzung der Programmausf hrung Der Task f hrt Programmanweisungen aus bis er die Zeile erreicht die einen Pause Befehl enth lt An diesem Punkt wird der Task ausgesetzt Der Anwender kann dann auf den Button Continue im Run Window klicken um mit der Ausf hrung fortzufahren
176. d Beschleunigung f r die Bogenbewegung Geschwindigkeit und Beschleunigung f r die Arc Anweisung werden mithilfe der Befehle SpeedS und AccelS eingestellt SpeedS und AccelS erlauben es dem Anwender eine Geschwindigkeit in mm sec und eine Beschleunigung in mm sec zu spezifizieren Einschr nkung Der Arc Befehl funktioniert ausschlie lich auf horizontaler Ebene Der Arc Pfad ist ein tats chlicher Bogen in der horizontalen Ebene Der Pfad ist interpoliert und verwendet die endPoint Werte als Basis f r Z und U Dreidimensionale B gen sind daher mit dem Arc Befehl nicht m glich berpr fen eines Bereichs f r den Arc Befehl Die Arc Anweisung kann vor der Arc Bewegung keine Bereichs berpr fung der Trajektorie berechnen Daher gilt dass der Roboter sogar auf dem Weg zu Zielpositionen die sich innerhalb eines erlaubten Bereichs befinden versuchen kann einen Pfad entlang zu fahren der einen ung ltigen Bereich hat In diesem Fall h lt der Manipulator abrupt an und kann dadurch erheblich besch digt werden Um dies zu vermeiden f hren Sie Bereichs berpr fungen aus wenn das Programm bei langsamer Geschwindigkeit operiert Lassen Sie das Programm erst danach bei h herer Geschwindigkeit laufen Hinweise Vorgeschlagene Bewegung um die Arc Bewegung einzurichten Da die Arc Bewegung von der aktuellen Position aus beginnt kann es notwendig sein den Go Jump oder einen anderen verwandten Bewegungsbefehl zu verwenden um den Roboter in die
177. d nicht definiert 8014 Der Palettenteilungswert ist au erhalb des g ltigen Bereichs 8015 Koordinaten Achsen Fehler 8016 Punkt Flag ist ung ltig 8017 Eine Punkte Label Tabelle kann nicht erzeugt werden 8018 Das angegebene Punkt Label kann nicht gefunden werden 8019 Die angegebene Systempunktedatei kann nicht gefunden werden 8020 Punktdaten Datei Schreibfehler 8021 Die angegebene Punktdatei wird bereits benutzt 8022 Die lokalen Koordinaten der angegebenen Positionen sind nicht bereinstimmend 8100 Das angegebene Punkt Label wurde nicht definiert 9081 System Fehler 9082 System Fehler 9083 Parameterfehler in der SRCLoad Beendigungs Funktion 9100 System Fehler 9101 System Fehler 9102 System Fehler 9103 System Fehler 9104 System Fehler 480 SPEL Language Reference Rev 3 5 SPEL Fehlermeldungen Error Message 9201 System Fehler 9202 System Fehler 9203 System Fehler 9204 System Fehler 9205 System Fehler 9206 System Fehler 9207 System Fehler 9208 System Fehler 9209 System Fehler 9210 System Fehler 9211 System Fehler 9212 System Fehler 9213 System Fehler 9214 System Fehler 9215 System Fehler 9216 System Fehler 9217 System Fehler 9301 System Fehler 9302 System Fehler 9401 System Fehler
178. d y 3 Then GoTo 50 If test lt 10 Then Print Test Failed I Sw 0 1 Or Sw 1 1 Then Print Everything OK SPEL Language Reference Rev 3 5 217 SPEL Sprachreferenz In Funktion Gibt den Status des spezifizierten Eingangsports aus Jeder Port enth lt 8 Eingangskan le Syntax In portNumber Parameter portNumber Zahl zwischen 0 und 63 die einen der 64 I O Ports darstellt Bitte beachten Sie dass jeder Port 8 Eingangskan le enth lt was damit 512 Eingangskan le ausmacht R ckgabewerte Gibt einen Integer Wert zwischen 0 und 255 aus Der R ckgabewert betr gt 8 Bits wobei jedes Bit einem Eingangskanal entspricht Beschreibung In gibt Ihnen die M glichkeit die Werte von 8 Eingangskan len gleichzeitig zu betrachten Der In Befehl kann verwendet werden um den Status der 8 Eingangskan le in einer Variable zu speichern Alternativ kann er auch mit dem Wait Befehl verwendet werden um zu warten bis eine spezifische Bedingung erf llt ist die mehr als einen Eingangskanal einschlie t Da 8 Kan le zur gleichen Zeit gepr ft werden rangieren die R ckgabewerte zwischen 0 und 255 Bitte beachten Sie die Tabelle unten um zu sehen wie die R ckgabewerte den einzelnen Eingabekan len entsprechen Das System unterst tzt standardm ig 16 Eing nge und 16 Ausg nge f r jede Drive Unit Dies bedeutet dass die Ports 0 und 1 des In Befehls f r jedes System zur Verf gung stehen Wenn drei Drive Units verwendet we
179. d zeigt f r jede Stunde vor dem Mittag ein gro buchstabiges AM an und f r jede Stunde zwischen Mittag und 11 59 Uhr am Abend ein gro buchstabiges PM Verwendet die 12 Stunden Uhr und zeigt f r jede Stunde vor dem Mittag ein kleinbuchstabiges AM an und f r jede Stunde zwischen Mittag und 11 59 Uhr am Abend ein kleinbuchstabiges P M Verwendet die 12 Stunden Uhr und zeigt f r jede Stunde vor dem Mittag ein gro buchstabiges A an und f r jede Stunde zwischen Mittag und 11 59 Uhr am Abend ein gro buchstabiges P Verwendet die 12 Stunden Uhr und zeigt f r jede Stunde vor dem Mittag ein kleinbuchstabiges A an und f r jede Stunde zwischen Mittag und 11 59 Uhr am Abend ein kleinbuchstabiges P Verwendet die 12 Stunden Uhr und zeigt das AM Zeichenketten Buchstabensymbol bei jeder Stunde vor 12 Uhr Mittag so wie es in Ihrem System definiert ist Das PM Zeichenketten Buchstabensymbol wird f r jede Stunde zwischen Mittag und 11 59 am SPEL Language Reference Rev 3 5 169 SPEL Sprachreferenz Abend angezeigt so wie es in Ihrem System definiert ist AMPM kann gro oder klein geschrieben werden aber die Schreibung der angezeigten Zeichenkette entspricht der die in Ihren Systemeinstellungen definiert ist F r Microsoft Windows lautet das Vorgabeformat AM PM Verwandte Befehle Left Right Str FmtStr Beispiel Function SaveData String d t Erstellt den Dateinamen im Format Monat Tag Stunde Minute d Date
180. de Verwandte Befehle Find Beispiel einer PosFound Funktion Find Sw 5 ON Go P10 Find If PosFound Then Go FindPos Else Print Error Cannot find the sensor signal EndIf SPEL Language Reference Rev 3 5 339 SPEL Sprachreferenz Power Anweisung s In lteren Fassungen Lp genannt Schaltet den Power Modus auf High oder Low und zeigt den aktuellen Status an Power Syntax Power High Low Parameter High Low Die Einstellung kann High oder Low sein Die Vorgabeeinstellung ist Low R ckgabewerte Zeigt den aktuellen Power Status an wenn der Parameter weggelassen wird Beschreibung Die Anweisung schaltet den Power Modus auf High oder Low Au erdem wird der aktuelle Modusstatus angezeigt On Wenn Power auf Low eingestellt ist ist der Low Power Modus eingeschaltet Das bedeutet dass der Roboter langsam verf hrt unter 250 mm sec und die Servo Steifigkeit auf niedrig eingestellt wird damit die Servoachse freigeschaltet wird wenn der Roboter gegen ein Objekt st t Dies ist die normale Betriebsart zum Teachen von Punkten On Wenn Power auf High eingestellt ist ist der Low Power Modus ausgeschaltet Das bedeutet dass der Roboter mit voller Geschwindigkeit und mit voller Servo Steifigkeit verfahren kann Dies ist die normale Betriebsart f r den Ablauf tats chlicher Anwendungen Die folgenden Operationen bewirken ein Umschalten in den Low Power Modus In diesem Fall werden die Einstellungen
181. de Beispiel wurde vom Online Fenster aus ausgef hrt gt mcorg 1 2 Berechnet die Parameter f r die Maschinenkalibrierung der ersten und zweiten Achse SPEL Language Reference Rev 3 5 273 SPEL Sprachreferenz Mid Funktion Gibt eine Zeichenkette der mittleren count Buchstaben der Zeichenkette string aus beginnend mit dem position Buchstaben Syntax Mid string position count Parameter string Quell Zeichenkettenausdruck position Die Startposition in der Buchstaben Zeichenkette f r das Kopieren von count Buchstaben count Anzahl der zu kopierenden Zeichen aus string beginnend mit dem durch position definierten Zeichen R ckgabewerte Gibt eine Teilkette von Zeichen aus string aus Beschreibung Mid gibt eine Teilkette von so vielen count Zeichen aus wie mit dem position Zeichen in string beginnen Verwandte Befehle Asc Chr Left Len Right Space Str Val Beispiel einer Mid Funktion Das Beispiel unten zeigt ein Programm welches die zwei mittleren Buchstaben aus der Zeichenkette ABCDEFGHIJ zieht Function midtest String basestr middle basestr ABCDEFGHIJ middle Mid basestr Len basestr 2 2 Print The middle 2 characters are middle Fend Einige weitere Beispiele des Mid Befehls vom Online Fenster gt Print Mid ABCDEFG 4 2 DE gt Print Mid ABCDEF 1 3 ABC gt 274 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz MkDir
182. de Palettennummer 557 Fehlende Toolnummer 558 Ausf hren von MKVER Systemdatensicherung 559 Der Befehl NEXT wird erwartet 560 Es werden keine Argumente erwartet 561 End of Anweisung erwartet 562 Ein Schl sselwort kann nicht als eine Funktion verwendet werden 563 Dieser Befehl kann nicht vom Online Fenster aus ausgef hrt werden 564 Es wird nur eine Variable erwartet kein Array 565 Dieser Befehl wird von SPEL nicht unterst tzt 566 Dieser Befehl wird noch nicht unterst tzt 567 Vision System ist nicht aktiviert 568 Ung ltiger Wert f r Parallelbearbeitung 569 Ung ltige Anweisung f r die Parallelbearbeitung 570 Anweisung f r die Parallelbearbeitung erwartet 571 Das Argument f r die Parallelbearbeitung wird noch nicht unterst tzt 572 Ung ltige Parit t 573 Ein Punkt oder Komma wird erwartet 574 Ein Punkt mu angegeben werden 575 erwartet 576 Ausrufezeichen werden erwartet 577 Not Aus Ausgang oder Roboter mu angegeben werden 578 Falsche Dimensionsanzahl 579 Rechte Klammer erwartet 580 Ein Semikolon wird erwartet 581 Ausf hren von SETVER Systemdaten zur ckspielen 582 Zeichenkette erwartet 583 STEP erwartet 584 Ung ltige Stop bits 585 Fehlender Parameter bei SetCom 1 XON oder None fehlt 586 Tasknummer 1 bis 32 erwartet 587 Ung ltiges EndZzeichen 5
183. de nicht gefunden 2604 Eine entsprechende IF Anweisung f r eine ENDIF Anweisung wurde nicht gefunden 2605 Eine entsprechende FOR Anweisung f r eine NEXT Anweisung wurde nicht gefunden 2606 Eine entsprechende FOR Anweisung f r eine EXIT FOR Anweisung wurde nicht gefunden 2607 Eine entsprechende DO Anweisung f r eine EXIT DO Anweisung wurde nicht gefunden 2608 Sie k nnen nur einen String f r eine String Variable eingeben 2609 Der festgelegte Parameter ist keine String Variable 2610 Ein erwarteter Parameter wurde angegeben 2611 Der Typ des CASE Eintrags passt nicht zum Variablentyp von SELECT 2612 Eine entsprechende SELECT Anweisung f r eine CASE Anweisung wurde nicht gefunden 2614 In einer DECLARE Anweisung muss dem ein nummerischer Wert folgen 2700 Die angegebene Dateinummer ist au erhalb des g ltigen Bereichs 30 63 2701 Die angegebene Dateinummer wird bereits verwendet 2702 Die angegebene Datei wird bereits in einer anderen Task verwendet 2703 Dateinummer nicht verf gbar 2705 Die angegebene Datei kann nicht geschlossen werden 2708 Datei Suchfehler 2709 Die angegebene Datei wurde nicht mit ROPEN ge ffnet 2710 Die angegebene Datei wurde nicht mit WOPEN ge ffnet 2711 Die angegebene Datei wurde nicht mit AOPEN ge ffnet 2712 Der angegebene Pfadname Dateiname ist zu lang 2713 Ein ung ltiger Pfadname Dateinam
184. den Koordinatenwert an die Variable x Function cxtest Real x x CX pick Print The X Axis Coordinate of point pick is x Fend 112 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz CX Anweisung Stellt die X Koordinate eines Punktes ein Syntax CX point value Parameter point Pnumber oder P expr oder Punktlabel value Real Ausdruck der den neuen Koordinatenwert repr sentiert Verwandte Befehle CX Funktion Beispiel einer CX Anweisung CX pick 25 34 SPEL Language Reference Rev 3 5 s 113 SPEL Sprachreferenz CY Funktion Extrahiert den Y Achsen Koordinatenwert eines Punktes Syntax CY point Parameter point Punktausdruck R ckgabewerte Gibt einen numerischen Koordinatenwert aus der die Y Achsen Position repr sentiert Der ausgegebene Wert ist eine Real Zahl Beschreibung Wird verwendet um den individuellen Koordinatenwert f r die Y Achse eines spezifischen Punktes zu erhalten Um die aktuelle Y Achsen Position des Roboters zu erhalten verwenden Sie bitte P oder Here f r den Punktparameter Verwandte Befehle CU CX CZ Beispiel einer CY Funktion Das folgende Beispiel extrahiert den Y Achsen Koordinatenwert von Punkt pick und bergibt den Koordinatenwert an die Variable y Function cytest Real y y CY pick Print The Y Axis Coordinate of point pick is y Fend 114 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz CY Anweisun
185. den Buttons spezifizieren den Stil der Icons und die Identit t des Default Buttons EPSON RC schlie t vordefinierte Konstanten mit ein die f r diesen Parameter verwendet werden k nnen Die folgende Tabelle zeigt die Werte an die verwendet werden k nnen Symbolische Konstante Wert Bedeutung MB_OK 0 Ausschl Anzeige des OK Buttons MB_OKCANCEL 1 Anzeige der Buttons OK und Cancel MB_ABORTRETRYIGNORE 2 Anzeige der Buttons Abort Retry und Ignore MB_YESNOCANCEL 3 Anzeige der Buttons Yes No und Cancel MB_YESNO 4 Anzeige der Buttons Yes und No MB_RETRYCANCEL 5 Anzeige der Buttons Retry und Cancel MB_ICONSTOP 16 Stop Zeichen MB_ICONQUESTION 32 Fragezeichen MB_ICONEXCLAMATION 64 Ausrufezeichen MB_DEFBUTTON1 0 Der erste Button entspricht der Vorgabeeinstellung MB_DEFBUTTON2 256 Der zweite Button entspricht der Vorgabeeinstellung title Zeichenkettenausdruck der in der Titelzeile des Dialogfensters angezeigt wird answer Eine Integer Variable die einen Wert empf ngt welcher die vom Anwender gew hlte Aktion angibt EPSON RC schlie t vordefinierte Konstanten mit ein die f r diesen Parameter verwendet werden k nnen Die Tabelle unten zeigt Werte an die in answer ausgegeben werden Symbolische Konstante Wert Bedeutung IDOK 1 OK Button ausgew hlt IDCANCEL 2 Cancel Button ausgew hlt IDABORT 3 Abort Button ausgew hlt IDRETRY 4 Retry Button ausgew hlt IDYES 6 Yes Button ausgew hlt IDNO 7 Kein Button ausgew hlt 28
186. der Befehle Sw oder Sw erf llt ist An Stelle von Sw kann auch Oport verwendet werden um die Hardware Ausg nge zu berpr fen Syntax 1 Wait time 2 Wait inputCondition 3 Wait inputCondition time Parameter time Real Ausdruck zwischen 0 und 2 147 483 der den Zeitraum darstellt der abgewartet werden soll wenn der Wait Befehl verwendet wird um zeitbasiert zu warten Die Zeit wird in Sekunden angegeben Das kleinste Inkrement ist 01 Sekunden Inputcondition Diese Bedingung muss den Wert TRUE 1 oder FALSE 0 zur ckgeben Die folgenden Funktionen und Operatoren k nnen f r die inputCondition Eingangsbedingung verwendet werden Funktionen Sw Sw In In Operatoren And Or Xor Andere Klammern um verschiedenen Operationen und Variablen Priori t einzur umen Beschreibung 1 Wait mit Zeitintervall Als Timer verwendet veranlasst die Wait Anweisung das Programm f r einen bestimmten Zeitraum anzuhalten und f hrt dann das Programm weiter aus 2 Wait mit Eingangsbedingung ohne Zeitinterval Wenn Wait als bedingte Wait Verriegelung verwendet wird veranlasst der Wait Befehl das Programm zu warten bis eine bestimmte Bedingung basierend auf Merkern oder Hardware Eing ngen erf llt wurde Wenn nach TMOut das Zeitintervall abgelaufen ist und die Wait Bedingung noch nicht erf llt wurde tritt ein Fehler auf Au erdem kann der Nutzer mehrere Bedingungen mit einem einzelnen Wait Befehl berpr fen
187. der Punktedatei definierten Punkte liegt ber der Anzahl der maximal zul ssigen Punkte 2037 Die Definition der Koordinatenachse in der Punktedatei entspricht nicht der Punktdatendefinition im Speicher 2038 Der SHUTDOWN Parameter liegt nicht im zul ssigen Bereichs 0 4 472 SPEL Language Reference Rev 3 5 SPEL Fehlermeldungen Error Message 2039 Der Zeitparameter f r ON OFF ist zu gro max 10sec 2040 Ung ltiges Datum Zeit Format 2041 System Fehler 2042 Die eingegebene Zahl liegt au erhalb des zul ssigen Bereichs 2043 Die Nummer der Applikation liegt au erhalb des g ltigen Bereichs 2044 Die Nummer der Konzeptdatei liegt au erhalb des g ltigen Bereichs 2045 System Fehler 2046 System Fehler 2047 Die CONFIG Modus Nummer ist ung ltig 2048 Die CONFIG Protokol Nummer ist ung ltig 2049 Die CONFIG Baud Raten Nummer ist ung ltig 2050 System Fehler 2051 Der eingegebene TCSPEED Wert liegt au erhalb des g ltigen Bereichs 1 100 2052 Der eingegebene HTASKTYPE Wert liegt au erhalb des g ltigen Bereichs 0 3 2053 Das angegebene E A Label ist nicht definiert 2054 System Fehler 2055 System Fehler 2056 System Fehler 2057 Das eingegebene Positionslabel ist nicht definiert 2058 Punktenummer ist ung ltig 2059 Die eingegebene Ausrichtungsnummer f r PORIENT ist ung ltig 0 1
188. der Wert auf den percent Vorgabewert gesetzt Der Speed Wert wird auf seine Vorgabewerte zur ckgesetzt wenn einer der folgenden Befehle ausgef hrt wird Power On Software Reset Motor On SFree SLock Verinit 396 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Im Low Power Modus ist die maximale Speed Einstellung 5 Vorgabewert Wenn eine h here Geschwindigkeit direkt vom Online Fenster aus oder in einem Programm angegeben wurde wird die Geschwindigkeit auf diesen Vorgabewert gesetzt Im High Power Modus ist die Einstellung von Speed gleich dem eingegebenen Wert Wenn eine Bewegung bei h herer Geschwindigkeit n tig ist setzen Sie den High Power Modus unter Verwendung von Power High und schlie en Sie die Sicherheitst r Wenn die Sicherheitst r offen ist werden die Speed Einstellungen in ihre Vorgabewerte ge ndert Das folgende Beispiel zeigt dass der Roboter sich mit der vorgegebenen Geschwindigkeit 5 bewegt weil er im Low Power Modus ist obschon der eingestellte Geschwindigkeitswert von Speed 80 betr gt gt speed 80 gt speed Low Power Mode 80 80 80 gt Verwandte Befehle Accel Go Jump Power Pass Pulse SpeedS TSpeed Beispiel einer Speed Anweisung Speed kann vom Online Fenster aus oder in einem Programm verwendet werden Unten angegeben sind einfache Beispiele beider Methoden Function speedtst Integer slow fast i slow 10 fast 100 For I 1 To 10 Speed slow Go P
189. der eine 0 was zeigt dass der Merker entweder ein oder ausgeschaltet ist Sw kann jeden der 512 S W Merker einzeln pr fen Der In Befehl ist dem Sw Befehl sehr hnlich da auch er verwendet wird um den Status der S W Merker zu berpr fen Es gibt jedoch einen deutlichen Unterschied Der In Befehl berpr ft gleichzeitig 8 S W Merker Kan le wohingegen der Sw Befehl wie oben gesehen immer nur einen einzigen Kanal berpr fen kann In gibt einen Wert zwischen 0 und 255 aus der dem Anwender anzeigt welcher der 8 Merker ein und welcher ausgeschaltet ist Verwandte Befehle In INBCD Off Off On On OpBCD Oport Out Out Sw Sw Wait In Beispiel Das Programmbeispiel unten liest den Wert der ersten 8 S W Merker und stellt vor dem Fortfahren sicher dass momentan alle 8 I O auf 0 gesetzt sind Wenn sie nicht auf 0 stehen wird eine Fehlermeldung an den Operator ausgegeben und der Task angehalten Function main Integer varl varl In 0 Holt die ersten 8 S W E A Werte If varl 0 Then Go P1 Go P2 Else Print Error in initialization Print First 8 S W I O channels were not all set to 0 EndIf Fend Andere einfache Beispiele vom Online Fenster sehen aus wie folgt gt out 0 1 print In 0 on 1 print In 0 out 31 3 print In 31 off 249 print In 31 VHVVWVVWVVHNMV Einschr nkung Der Unterschied zwischen InBCD und In Die Befehle InBCD und In sind in der
190. der zwischen ifndef und else oder endif befindliche Quellcode kompiliert wird Daher agiert die ID Zeichenkette als Bedingung f r die bedingte Kompilierung Beschreibung Dieser Befehl wird if not defined falls nicht definiert Befehl genannt ifndef else endif gestattet bedingtes Kompilieren eines ausgew hlten Quellcodes Die else Anweisung ist nicht unbedingt erforderlich Wenn definiert und die else Anweisung nicht genutzt wird werden die Anweisungen zwischen ifndef und endif nicht kompiliert Anderenfalls d h sollte die else Anweisung genutzt werden werden die Anweisungen zwischen else und endif kompiliert Wenn nicht definiert und die else Anweisung nicht genutzt wird werden die Anweisungen zwischen ifndef und endif kompiliert Anderenfalls d h sollte die else Anweisung genutzt werden werden die Anweisungen zwischen else und endif nicht kompiliert Hinweis Der Unterschied zwischen ifdef und ifndef Der grundlegende Unterschied zwischen ifdef und ifndef ist dass der ifdef Befehl den angegebenen Quellcode kompiliert wenn die ID Zeichenkette definiert ist Der ifndef Befehl kompiliert den angegebenen Quellcode wenn die ID Zeichenkette NICHT definiert ist Verwandte Befehle define ifdef ifndef Beispiel Ein Abschnitt des Codes aus einem Beispielprogramm welches ifndef verwendet ist unten abgebildet Im unten stehenden Beispiel erfolgt ein Ausdruck des A Variablenwertes je
191. die Maschinenkalibrierung f r Roboter mit inkrementellen Encodern durch Syntax MCal Beschreibung Es ist notwendig Roboter mit inkrementellen Encodern zu kalibrieren Die Kalibrierung muss nach Einschalten der Versorgungsspannung ausgef hrt werden Wenn Sie versuchen einen Bewegungsbefehl oder einen beliebigen anderen Befehl auszuf hren f r den die aktuellen Positionsdaten ben tigt werden ohne zuerst die Maschinenkalibrierung durchzuf hren tritt ein Fehler auf Die Maschinenkalibrierung wird in der Reihenfolge der Achsbewegungen durchgef hrt welche mit dem MCordr Befehl definiert ist Der Vorgabewert von MCordr zum Zeitpunkt der Lieferung variiert von Modell zu Modell Lesen Sie daher bitte das entsprechende Roboterhandbuch bez glich weiterer Details Normalerweise wird MCal ausgef hrt wenn sich der Roboter im Zentrum des Bewegungs Arbeitsbereiches befindet Bei SCARA Robotern die mehrfache Kalibrierungspunkte haben ist die kombinierte Bewegung von erster und zweiter Achse w hrend Mcal auf 15 16 Grad im oder gegen den Uhrzeigersinn eingeschr nkt Dies hilft die zur Kalibrierung des Roboters notwendige Zeit zu reduzieren Wenn Mcal in N he der Arbeitsbereichsgrenze ausgef hrt wird kann es sein dass der Arm versucht sich aus dem Bereich heraus zu bewegen In diesem Fall kann ein Fehler ausgegeben werden oder der Arm f hrt gegen den mechanischen Anschlag Um Mcal auszuf hren nachdem dies geschehen ist schalten Sie einf
192. die Trap Bedingung erf llt ist Grunds tzlich gibt es zwei Arten von Traps Die eine verwendet Syntax 1 und ist f r Hardware oder Merker Eing nge vorgesehen die andere verwendet die Syntax 2 und ist f r verschiedene Systembedingungen vorgesehen Wenn ein Trap auftritt der Call verwendet m ssen Sie den Trap durch Ausf hrung einer Trap Anweisung am Ende der Trap Funktion erneut definieren Wenn Sie den Trap wieder erneut definieren bevor die Funktion endet und die Trap Bedingung auftritt bevor die erste Trap Funktion abgeschlossen ist tritt ein Fehler auf Sie sollten den Code in den Trap Behandlungsroutinen so klein wie m glich halten Syntax 1 F hrt einen Trapprozess aus welcher durch GoTo GoSub oder Call spezifiziert ist wenn die spezifizierte Eingangsbedingung erf llt ist Sobald der Trap Prozess ausgef hrt wurde ist die Trap Einstellung gel scht Wenn derselbe Interrupt Prozess noch einmal ben tigt wird muss der Trap Befehl ihn erneut definierten SPEL Language Reference Rev 3 5 433 SPEL Sprachreferenz Wenn eine Eingangsbedingung erf llt wird w hrend eine andere Funktion durch den Call Befehl ausgef hrt wird wird der Trap Prozess durch GoTo GoSub in der Trap Einstellung nicht ausgef hrt Um eine Trap Einstellung zu l schen f hren Sie einfach den Trap Befehl nur mit dem trapNumber Parameter durch Beispielsweise l scht Trap 3 den Trap Nr 3 Wenn GoTo spezifiziert ist Der Befehl der a
193. diesem verwendet werden Function InitRobot Reset If Motor Off Then Motor On EndIf Home Fend Or it can be issued from the Monitor window like this gt home gt SPEL Language Reference Rev 3 5 205 SPEL Sprachreferenz Homeset Anweisung s Definiert die Home Position und zeigt sie an Syntax HomeSet j1Pulses j2Pulses j3Pulses j4Pulses Parameter j1Pulses Der Home Position Encoder Pulse Wert f r Achse 1 j2Pulses Der Home Position Encoder Pulse Wert f r Achse 2 j3Pulses Der Home Position Encoder Pulse Wert f r Achse 3 j4Pulses Der Home Position Encoder Pulse Wert f r Achse 4 R ckgabewerte Zeigt die Pulse Werte an die f r die aktuelle Home Position definiert sind wenn die Parameter weggelassen werden Beschreibung Gestattet es dem Anwender eine neue Home Standby Position zu definieren indem er die Pulse Werte f r jede der vier Achsen eingibt Hinweise Der Home Befehl kalibriert den Roboter nicht Dieser Hinweis bezieht sich ausschlie lich auf Roboter mit Inkrementalencoder Obgleich der HomeSet Befehl die Home Position Encoder Werte einstellt ist es sehr wichtig zu beachten dass der Home Befehl den Roboter nicht kalibriert Zur Kalibrierung des Roboters wird der Mcal Befehl verwendet Wenn die Versorgungsspannung zum ersten Mal eingeschaltet wird muss der Roboter ber den Mcal Befehl kalibriert werden Verinit und sein Effekt auf die HomeSet Werte Die Ausf hrung des V
194. dim Anweisung Integer i numParts a 0 Print Enter number of parts Input numParts Redim a numParts For i 0 to UBound a a i i Next Re dimensioniert die Feldvariable mit 20 weiteren Elementen Redim Preserve a numParts 20 Die Werte des ersten Elementes werden beibehalten For i 0 to UBound a Print a i Next SPEL Language Reference Rev 3 5 359 SPEL Sprachreferenz Rename Befehl Benennt eine Datei um Syntax Rename oldFileName newFileName Parameter oldFileName Zeichenketten Ausdruck der den Pfad und den Namen der umzubenennenden Datei enth lt Dateiname und Dateinamenerweiterung d rfen Platzhalter enthalten newFileName Der neue Name f r die Datei die durch oldFileName spezifiziert ist Beschreibung ndert den Namen der spezifizierten Datei oldFileName in newFileName Wenn der Pfad weggelassen wird sucht Rename im aktuellen Verzeichnis nach oldFileName F r newFileName kann kein Pfad angegeben werden Daher befindet sich die umbenannte Datei im selben Pfad wie die umzubenennende Datei vorher Eine Datei kann nicht umbenannt werden wenn der gew nschte Name bereits an eine Datei im selben Pfad vergeben ist Rename erlaubt die Verwendung von Platzhaltern Platzhalter die in filiename1 verwendet werden veranlassen Rename dazu alle entsprechenden Dateien umzubenennen Um beispielsweise die Namen aller Dateien zu ndern die von A nach B umbenannt werden solle
195. druck der die einzuschaltende Bitnummer repr sentiert time Optionaler Parameter Gibt ein Zeitintervall in Sekunden an f r das der Ausgang eingeschaltet bleiben soll Nachdem das Zeitintervall abgelaufen ist wird der Ausgang wieder ausgeschaltet Das minimale Zeitintervall betr gt 0 01 Sekunden Beschreibung ENetlO_On schaltet den angegebenen EtherNet I O Ausgang ein setzt ihn auf 1 Wenn der Zeitintervall Parameter definiert ist wird der durch bitNumber spezifizierte Ausgang eingeschaltet und nach Ablauf des Zeitintervalls wieder ausgeschaltet Hinweis Dieser Befehl funktioniert nur dann wenn die EtherNet I O Option installiert ist Verwandte Befehle ENetlO_Analn ENetIO_AnaOut ENetlO_In ENetlO_Off ENetlO_Oport ENetlO_Out ENetlO_Sw Beispiel einer ENetlIO_On Anweisung ENetIO_On 1 138 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ENetIO_Oport Funktion Gibt den Status des angegebenen EtherNet I O Ausgangs aus Syntax ENetlO_Oport outnum Parameter outnum Zahl die einen der EtherNet I O Ausg nge repr sentiert R ckgabewerte Gibt den angegebenen Ausgangsstatus als entweder 0 oder 1 aus 0 Off Aus Status 1 On Ein Status Beschreibung ENetlO_Oport gibt Ihnen die M glichkeit einen Status Check f r die EtherNet I O Ausg nge durchzuf hren Hinweis Dieser Befehl funktioniert nur dann wenn die EtherNet I O Option installiert ist Verwandte Befehle ENetlO_Analn ENetlIO_AnaOut ENetlO_
196. e condition Bedingung WAHR ist Beschreibung Eine Anzahl von Exit Do Anweisungen kann an einem beliebigen Ort innerhalb von Do Loop platziert werden als alternative Art und Weise einen Do Loop zu verlassen Exit Do wird oft nach der Bewertung einer Bedingung verwendet z B If Then in welchem Fall die Exit Do Anweisung die Steuerung an die direkt auf Loop folgende Anweisung bertr gt Wenn Exit Do innerhalb verschachtelter Do Loop Anweisungen verwendet wird bertr gt Exit Do die Steuerung an den Loop der sich eine Verschachtelungsebene ber dem Loop befindet in dem Exit Do auftritt Verwandte Befehle For Next While Wend Beispiel einer Do Anweisung ROpen test dat As 30 Do While Not Eof 30 Line Input 30 tLine Print tLine Loop Close 30 SPEL Language Reference Rev 3 5 127 SPEL Sprachreferenz Double Anweisung Deklariert Double Variablen 8 Byte Zahl Syntax Double varName subscripts varName subscripts Parameter varName subscripts Beschreibung Variablenname den der Anwender als Double deklarieren will Optional Dimensionen einer Feldvariable es k nnen bis zu drei multiple Dimensionen deklariert werden Die Syntax sieht aus wie folgt dim1 dim2 dim3 dim1 dim2 dim3 k nnen eine ganze Zahl zwischen 0 32767 sein Double wird verwendet um Variablen als Double zu deklarieren Alle Variablen sollten in einer Funktion ganz oben deklariert
197. e wurde angegeben 2715 Es wurde eine Read Only Datei nur Lesezugriff angegeben 2716 Der angegebene Ordner ist nicht leer oder er existiert nicht 2717 Die Datei kann nicht kopiert werden Pfad oder Diskettenfehler 2718 Die angegebene Datei wurde nicht ge ffnet 2800 Die angegebene Kommunikationsschnittstelle ist nicht verf gbar 2801 Die angegebene Kommunikationsschnittstelle wird in einer anderen Task verwendet 2802 Die Daten k nnen nicht auf die angegebene Kommunikationsschnittstelle geschrieben werden 2803 Die Daten k nnen nicht von der angegebene Kommunikationsschnittstelle gelesen werden 2804 Zeit berlauf beim Lesen der Daten von der festgelegten Kommunikationsschnittstelle 2805 Die angegebene Kommunikationsschnittstelle wird in einer anderen Task verwendet 2806 Fehler beim ffnen der Kommunikationsschnittstelle 2807 Die angegebene Kommunikationsschnittstelle wurde nicht installiert 2808 Die angegebene Kommunikationsschnittstelle wird von einer anderen Applikation verwendet 2809 Die angegebene Einstellung wird von der Kommunikationsschnittstelle nicht unterst tzt 2830 Die angegebene Netzwerk Schnittstelle kann nicht verwendet werden 2831 Die angegebene Netzwerk Schnittstelle wird in einer anderen Task verwendet 2832 Die Daten k nnen nicht auf die angegebene Netzwerk Schnittstelle geschrieben SPEL Language Reference Rev 3 5 475 SPEL Fehlermeldungen
198. e Bedingungen f r eine SELECT Anweisung 1706 Die bedingte Anweisungen sind zu gro Maximum 32 1750 Zu viele Pause Deklarationen Maximum 4 1755 Zu viele String String Ausdr cke Maximum 16 1756 Zu viele String Funktionen Maximum 8 1757 Zu viele Parameter 1758 Zu viele String Konstanten String Variable oder String Funktionen Max 17 1760 Zu viele Parallelprozessanweisungen 1761 Zu viele Ausgangsbefehle bei einer CURVE Anweisung MAX 16 1800 Der eingegebene Befehl oder die Anweisung kann nicht verwendet werden 1908 Dieselbe Zeilennummer wurde mehrfach vergeben 1909 Derselbe Label Name wurde mehrmals vergeben 1910 Derselbe Variablenname wurde mehrmals definiert 1912 Zu viele Buchstaben 1913 Zu viele Zeichen in einer Zeile verwendet 1914 Zu viele Variablen in einer Zeile verwendet 1920 Derselbe Funktionsname wurde mehrfach definiert 1921 Derselbe Name einer externen Funktion wurde mehrmals definiert 1930 Das Dateiende ist abnormal 1940 Undefinierte Variable 1941 Variable wurde nicht als ARRAY definiert 1942 Die ARRAY Gr e ist falsch 1943 Variable wurde als ARRAY definiert 1944 Stringbereiche k nnen nur zwei Dimensionen beinhalten 1950 Unbestimmter interner Funktionscode SPEL Language Reference Rev 3 5 471 SPEL Fehlermeldungen Error Message 1960 Fehlen de
199. e Befehle AOpen Input Print ROpen WOpen Close Beispiel Dieses Beispiel ffnet eine Datei schreibt Daten in diese Datei ffnet dieselbe Datei sp ter wieder und liest deren Daten in eine Feldvariable Real data 200 WOpen TEST VAL As 30 For I 0 To 100 Print 30 data i Next I Close 30 ROpen TEST VAL As 30 For I 0 to 100 Input 30 data I Next I Close 30 SPEL Language Reference Rev 3 5 69 SPEL Sprachreferenz CloseCom Anweisung s Schlie t die zuvor mit dem Befehl OpenCom ge ffnete Kommunikationsschnittstelle Syntax CloseCom portNum All Parameter portNum Integer Ausdruck f r die zu schlie ende Schnittstellennummer Verwandte Befehle ChkCom OpenCom Beispiel einer CloseCom Anweisung CloseCom 1 70 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz CloseNet Anweisung Schlie t den zuvor mit dem Befehl OpenNet ge ffneten Netzwerkport Syntax CloseNet portNum Parameter portNum Integer Ausdruck f r die zu schlie ende Schnittstellennummer Der Bereich liegt zwischen 128 und 131 Verwandte Befehle ChkNet OpenNet Beispiel einer CloseNet Anweisung CloseNet 1 SPEL Language Reference Rev 3 5 s 71 SPEL Sprachreferenz CIrScr Anweisung s L scht den EPSON RC Run den Operator oder den Online Fenster Textbereich Syntax CirScr Beschreibung CIrScr l scht entweder den EPSON RC Run Fenstertextbereich oder den
200. e Eingabekan le wohingegen der Sw Befehl wie oben gesehen immer nur einen einzigen Kanal berpr fen kann Er gibt einen Wert zwischen 0 und 255 aus der dem Anwender anzeigt welcher der 8 I O Kan le ein und welcher ausgeschaltet ist Verwandte Befehle In InBCD Off Off On On OpBCD Oport Out Out Sw Sw Wait Beispiel einer In Funktion Das unten folgende Beispiel gehen wir davon aus dass die Eingangskan le 28 29 30 und 31 alle mit sensorischen Ger ten verbunden sind sodas die Anwendung nicht startet bis jedes dieser Ger te ein ON Signal ausgibt und damit Startbereitschaft signalisiert Das Programmbeispiel erh lt den aktuellen Wert der letzten 8 Eing nge und stellt vor dem Fortfahren sicher dass die Kan le 28 29 30 und 31 eingeschaltet sind Wenn sie nicht eingeschaltet sind d h sie geben einen Wert von 1 aus wird eine Fehlermeldung an den Operator ausgegeben und der Task angehalten Im Programm wird die Variable var1 mit der Zahl 239 verglichen weil der R ckgabewert der eingeschalteteten Eing nge 28 29 30 und 31 IN 3 gr er als 240 ist Die Eing nge 24 25 26 und 27 werden in diesem Fall vernachl ssigt so dass jeglicher Wert zwischen 240 und 255 dem Programm gestattet fortzufahren Function main Integer varl varli In 3 Holt die letzten 8 Eing nge If varl gt 239 Then Go P1 Go P2 Hier werden anderen Bewegungs Anweisungen ausgef hrt y Else Print Error in ini
201. e Input A Liest eine Zeile der Eingangsdaten in A ein Print A Fend Starten Sie das obige Programm mit der F5 Taste oder aus dem Run Men des EPSON RC Hauptfensters Eine sich ergebende Run Session kann wie folgt aussehen VAr By C Ap Bp C SPEL Language Reference Rev 3 5 251 SPEL Sprachreferenz Line Input Anweisung s Liest die Daten einer Zeile von der angegebenen Datei oder der Kommunikationsschnittstelle Syntax Line Input portNumber stringVar Parameter portNumber Integer Ausdruck der eine Dateinummer oder die Nummer einer Kommunikationsschnittstelle rep sentiert stringVar Eine Zeichenkettenvariable Bedenken Sie dass Zeichenkettenvariablen mit dem Zeichen enden m ssen Beschreibung Line Input liest Zeichenkettendaten einer Zeile aus der Datei oder der Kommunikationsschnittstelle die durch den Parameter portNumber spezifiziert ist und ordnet die Daten der Zeichenkettenvariable string Var zu Verwandte Befehle Input Input Line Input Beispiel einer Line Input Anweisung In diesem Beispiel werden die Zeichenkettendaten von Kommunikationsschnittstelle Nr 1 empfangen und der Zeichenkettenvariablen and A zugeordnet Function lintest String a Print 1 Please input string to be sent to robot Line Input 1 a Print Value entered a Fend 252 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz LoadPoints Anweisung s L dt eine Punktda
202. e Portnummer ausgew hlt wurde d h es wurde eine Gruppe von 8 Ausg ngen ausgew hlt muss ein spezifisches Ausgangsmuster definiert werden Daf r wird der Parameter outData verwendet Der outData Parameter kann einen Wert zwischen 0 und 255 haben und kann in hexadezimalem oder Integer Format repr sentiert werden D h amp HO amp HFF oder 0 255 Die Tabelle unten zeigt einige der m glichen E A Kombinationen und ihre entsprechenden outData Werte davon ausgehend dass die portNumber O oder entsprechend 1 ist Ausgangseinstellungen wenn portNumber 0 Ausgangsnummer OutData Wert 7 6 5 4 3 2 1 0 n Ra Ka Koloa aE Aus Aus Aus Aus Aus Aus Aus Ein AM Aus Aus Aus Aus Aus Aus Ein Aus ein Z aus Ein K i Ein a Ein z n 312 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Ausgangseinstellungen wenn portNumber Ausgangsnummer OutData Wert H 14 2 1 1 2 8 01 AA Aus Aus Aus Aus Aus Aus Ein nl Aus Aus Aus Aus Aus Aus Ein Ana nl na Aus Aus Aus Aus Ein Aus Aus Taunus Aus us ein Aus lu Aus Aus Aus Aus Ein Aus Aus T RaRa Ral ann Aus Aus Aus Ein Aus Aus Aus 11 Chus Auo Rus Em Aus Aus aus Aus Aus Aus Ein Aus Aus Aus r Eaa E ka a En Aus Ein Ein Aus Aus Aus Ein 255 On
203. e Reihenfolge ist in Bitmustern spezifiziert gt MCordr amp BO100 amp BO001 amp B0010 amp B1000 Dieses Beispiel instruiert den Roboterarm die Z Achse als erste zu kalibrieren in Step Schritt 1 danach die Achsen 1 2 und U gleichzeitig amp B1011 oder 11 als Dezimalwert in Step Schritt 2 Die Maschinenkalibrierungs Reihenfolge ist in Dezimalwerten spezifiziert gt MCordr 4 11 0 O Dieses Beispiel zeigt die aktuelle Maschinenkalibrierungs Reihenfolge in Dezimalzahlen gt mcordr 4 11 0 8 gt 270 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz MCordr Funktion Syntax MCordr paramNumber Parameter paramNumber Definiert die Referenz Einstellungsnummern Integers von 1 bis 4 repr sentiert durch einen Ausdruck oder einen numerischen Wert R ckgabewerte Gibt Bin rwerte aus Integers die die Achsen der definierten Einstellungsnummer repr sentieren welche die Maschinenkalibrierung ausf hren sollen Beschreibung Gibt die Achsen Bewegungsreihenfolge aus um mit Mcal die Maschinenkalibrierung durchzuf hren Verwandte Befehle Mcal MCofs Beispiel einer MCordr Funktion Dieses Beispiel benutzt die MCordr Funktion in einem Programm Integer a a MCordr 1 SPEL Language Reference Rev 3 5 271 SPEL Sprachreferenz Mcorg Anweisung Berechnet die korrekten Kalibrierungsparameter f r die Maschinenkalibrierung Mcal Syntax Mcorg jointNumber jointNumber jointNumber jointNumbe
204. e aus die zuvor durch die Pallet Anweisung definiert wurde Verwenden Sie die Funktion zusammen mit den Befehlen Go oder Jump um den Arm zu der spezifizierten Palettenposition zu bewegen Die Palettenpositionsnummer kann arithmetisch oder einfach unter Verwendung eines Integers definiert werden Verwandte Befehle Pallet Anweisung Beispiel einer Pallet Funktion Das folgende Programm transferiert Teile von Palette 1 nach Palette 2 Function main Integer index Pallet 1 Pl P2 P3 3 5 Definiert Pallete 1 Pallet 2 P12 P13 Pill 5 3 Definiert Pallete 2 For index 1 To 15 Jump Pallet 1 index Bewegt den Arm zum Punkt Index auf Palette 1 On 1 H lt das Werkst ck Wait 0 5 Jump Pallet 2 index Bewegt den Arm zum Punkt Index auf Palette 2 OCE Gibt das Werkst ck frei Wait 0 5 Next I Fend SPEL Language Reference Rev 3 5 319 SPEL Sprachreferenz ParseStr Anweisung Funktion s Analysiert eine Zeichenkette syntaktisch und gibt eine Textelement Matrix aus Syntax ParseStr inputString tokens delimiters numTokens ParseStr inputString tokens delimiters Parameter inputString Zeichenkettenausdruck der syntaktisch analysiert geparst werden soll tokens Ausgangsmatrix von Zeichenketten welche die Textelemente enthalten delimiters Zeichenkettenausdruck der einen oder mehrere Textelement Begrenzungen enth lt R ckgabewerte Wird ParseStr als Funktion ver
205. eger Ausdruck welcher die Moduseinstellungen repr sentiert die unten beschrieben werden Moduseinstellung Beschreibung Kein Modus Zeigt einen Dialog an der es dem Anwender erlaubt die Shutdown Option zu w hlen 0 F hrt EPSON RC und Windows herunter 1 F hrt EPSON RC herunter und startet Windows neu 2 F hrt EPSON RC herunter Beschreibung ShutDown erm glicht es Ihnen die aktuelle EPSON RC Session aus einem SPEL Programm zu verlassen Verwandte Befehle Restart Beispiel einer Shutdown Anweisung Exit EPSON RC and Windows ShutDown 0 SPEL Language Reference Rev 3 5 391 SPEL Sprachreferenz Signal Anweisung s Sendet ein Signal an die Tasks die WaitSig ausf hren Syntax Signal signalNumber Parameter signalNumber Zu bertragende signalNumber Der Bereich liegt zwischen 0 und 127 Beschreibung Das Signal kann verwendet werden um Multi Task Ausf hrungen zu synchronisieren Verwandte Befehle WaitSig Beispiel einer Signal Anweisung Function Main Xqt 2 SubTask Call InitSys Signal 1 Fend Function SubTask WaitSig 1 Fend 392 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Sin Funktion Gibt den Sinus eines numerischen Ausdrucks aus Syntax Sin radians Parameter radians Real Ausdruck in Radianten R ckgabewerte Numerischer Wert der den Sinus des numerischen Ausdrucks radians repr sentiert Beschreibung Sin gibt den Sinus des numerischen Ausdrucks
206. ehlerbehandlungsroutine bergeben und auf dem Bildschirm erscheint eine Nachricht die dem Anwender mitteilt welcher Punkt nicht definiert war Beachten Sie dass der Fehlercode vom System in errnum Variable gespeichert wird bevor Sie EClIr aufrufen Function eclrtest Integer i errnum Real temp OnErr Goto eHandle 0 To 399 CX P i For i temp Next i End Ikkxkxkxkxkxkxkxkxkxkxkxk xkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkkxkxkxkxkkkkxxkxx k 1x Error Handler VKAKKAKKKAKKAKKKAKKAAKKKRA KK IK KK KR AH HK KH AK AK KH KH A AK KH AK A KH KH A UO eHandle errnum Err 0 berpr ft ob ei If errnum Print Else Print ERROR End If EResume Next Fend 150 ECclr Point number P Error number n undefinierter Punkt verwendet wird 78 Then 3 is undefined Occurred errnum SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ErrHist Befehl Zeigt ein Protokoll unl ngst aufgetretener Fehler an Syntax ErrHist CLEAR filter Parameter CLEAR Optional L scht das gesamte Protokoll filter Optional Filterabfrage nach einer Protokollauflistung Sie k nnen jegliche Zeichenkette angeben Jede Protokollzeile welche die Filter Zeichenkette enth lt wird angezeigt Beschreibung Anzeige der zuletzt aufgetretenen Fehler Die folgenden Punkte werden angezeigt Datum und Uhrzeit des Auftretens des Fehlers EPSON RC Version Fehle
207. eich des unteren Grenzwerts der angegebenen Achse repr sentiert upperLmit Long Integer Ausdruck der den Z hlstand der die Encoder Pulse Position f r den Bereich des oberen Grenzwerts der angegebenen Achse repr sentiert Beschreibung Definiert den erlaubten Arbeitsbereich f r die definierte Achse mit unterem und oberem Grenzpunkt in Encoder Pulsen JRange ist dem Range Befehl hnlich Jedoch m ssen f r den Range Befehl alle Grenzwerte der 4 Achsen angegeben werden w hrend der JRange Befehl verwendet werden kann um den Grenzwert jeder Achse individuell einzustellen was wiederum die Anzahl der ben tigten Parameter reduziert Um den definierten Arbeitsbereich zu berpr fen verwenden Sie bitte den Range Befehl Hinweise Die unteren Grenzwerte d rfen die oberen Grenzwerte nicht berschreiten Der untere Grenzwert der im JRange Befehl definiert ist darf den oberen Grenzwert nicht berschreiten Wenn der untere Grenzwert den oberen Grenzwert bersteigt ruft dies einen Fehler hervor Faktoren die JRange ndern k nnen Sobald JRange Werte eingestellt sind bleiben sie bestehen bis der Anwender diese Werte entweder durch den Range oder den JRange Befehl ndert Weder das Ausschalten der Versorgungsspannung noch die Ausf hrung des Verinit Befehls ndert die Werte der JRange Achs Grenzwerte Maximaler und minimaler Abeitsbereich Lesen Sie bitte die Spezifikationen im Roboterhandbuch bez glich der maximalen Arbeitsberei
208. eichen an der Stelle hat an welcher in der Formatzeichenkette ein Zeichen erscheint so wird es angezeigt Ansonsten wird an dieser Stelle gar nichts angezeigt Dieses Symbol arbeitet wie der 0 Zahlzeichen Platzhalter mit der Ausnahme dass die vorangehenden und die anh ngenden Nullen nicht angezeigt werden wenn die Zahl ebenso viele oder weniger Zahlzeichen als Zeichen auf beiden Seiten der Dezimaltrennung im Formatausdruck Dezimaler Platzhalter In einigen Darstellungen wird ein Komma zur Tennung von Dezimalstellen verwendet Der dezimale Platzhalter bestimmt wie viele Zahlzeichen zur Linken und Rechten der Dezimalstellen Trennung angezeigt werden Wenn der Formatausdruck ausschlie lich Nummernzeichen zur Linken dieses Symbols beinhaltet beginnen Zahlen kleiner als 1 mit einer Dezimalstellen Trennung Um eine vorangehende Null mit Nachkommastellen anzuzeigen verwenden Sie 0 als ersten Zahlzeichen Platzhalter zur Linken der Dezimalstellen Trennung Das Zeichen welches tats chlich als dezimaler Platzhalter in den formatierten Ausgabedaten verwendet wird h ngt ab von dem Nummern Format das Ihr System erkennt Prozentwert Platzhalter Der Ausdruck wird mit 100 multipliziert Das Prozentzeichen wird an der Stelle in die Position eingef gt an der es in der Formatzeichenkette erscheint Tausendertrennzeichen In einigen Darstellungen wird ein Punkt als Tausendertrennzeichen verwendet Das Tausendertrennzeichen trennt T
209. eichzeitig nur 16 Z hler aktiv sein Beschreibung CtrReset arbeitet mit der CTR Funktion um es Hardwareeing ngen zu erm glichen als Z hler zu funktionieren CTReset stellt den angegebenen Eingang als Z hler ein und startet den Z hler dann Wird der angegebenen Eingang bereits als Z hler genutzt so wird er zur ckgesetzt und neu gestartet Hinweise Ausschalten des Stroms und die Auswirkungen auf die Z hler Das Abschalten der Versorgungsspannung gibt alle Z hler frei Verwendung der Ctr Funktion Die Ctr Funktion wird f r den Erhalt der aktuellen Werte des Z hlereingangs verwendet Verwandte Befehle Ctr Beispiel einer CTReset Anweisung Das folgende Beispiel zeigt ein Code Muster das verwendet werden k nnte um den Wert eines Z hlereingangs zu erhalten CTReset 3 Setzt den Z hler 3 auf 0 zur ck On 0 Schaltet einen Ausgangsschalter ein Do While Ctr 3 lt 5 Loop off 0 Wenn 5 Eingabezyklen f r Eingang 3 gez hlt wurden wird ausgeschaltet Ausgang 0 aus 100 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz CtrIDev Befehl s Spezifiziert das aktuelle Steuerger t Syntax CtriDev device Parameter device PC Der PC kann Programme starten Vorgabeeinstellung Remote Programme k nnen mit der Remote E A Steuerung ausgef hrt werden Beschreibung CtrIDev spezifiziert das Steuerger t PC Erm glicht dem PC Programme zu starten zu unterbrechen fortzusetzen and anzuha
210. eigt sie an Syntax Time hours minutes seconds Parameter hours Die Stunde des Tages auf welche die Uhr der Steuerung eingestellt werden soll Integer Ausdruck zwischen 1 und 24 minutes Die Minute des Tages auf welche die Uhr der Steuerung eingestellt werden soll Integer Ausdruck zwischen 0 und 59 seconds Die Sekunde des Tages auf welche die Uhr der Steuerung eingestellt werden soll Integer Ausdruck zwischen 0 und 59 R ckgabewerte Wenn die Parameter weggelassen werden wird die aktuelle Zeit im 24 Stunden Format angezeigt Beschreibung Spezifiziert die aktuelle Zeit Die Zeit wird im 24 Stunden Format angegeben Verwandte Befehle Date GetTime GetDate Time Beispiel Hier sind einige Beispiele vom Online Fenster Time The current time is 10 15 32 gt Time 1 5 0 gt Time The current time is 1 05 15 SPEL Language Reference Rev 3 5 421 SPEL Sprachreferenz Time Funktion Gibt die Betriebsstunden der Robotersteuerung aus Syntax Time unitSelect Parameter unitSelect Ein Integer zwischen 0 und 2 Dieser Integer spezifiziert welche Zeiteinheit das Steuerger t ausgibt 0 Stunden 1 Minuten 2 Sekunden Beschreibung Gibt die Betriebsstunden der Robotersteuerung als Integer aus Verwandte Befehle Hour Beispiel einer Time Funktion Hier sind einige Beispiele vom Online Fenster Function main Integer h m 8 h Time 0 Speichert die Zeit in Stunden m Time 1 Speichert di Z
211. eines Bewegungsbefehles der die Till Bedingung verwendet kann es F lle geben in denen Sie verifizieren m chten ob die Till Bedingung erf llt wurde oder nicht Das k nnen Sie tun indem Sie die Stat Funktion verwenden Verwandte Befehle Find Go Jump Move Stat Sw Sw TillOn Till Beispiel Unten angegeben sind einige Zeilen eines Programms das die Till Anweisung verwendet Till Sw 1 0 Definiert di Till Bedingung Eingang 1 aus Go P1 Till Stoppt wenn die Bedingung der vorigen Zeile erf llt ist Till Sw 1 1 And Sw 1 1 Definiert die neue Till Bedingung Move P2 Till Stoppt wenn die Bedingung der vorigen Zeile erf llt ist Move P5 Till Sw 10 1 Stoppt wenn die Bedingung in dieser Zeile erf llt ist SPEL Language Reference Rev 35mm SPEL Sprachreferenz TillOn Funktion Gibt den aktuellen Till Status aus Syntax TillOn R ckgabewerte TRUE wenn die Till Bedingung im vorangegangenen Bewegungsbefehl der Till verwendet hat aufgetreten ist Beschreibung TillOn gibt WAHR aus wenn die Till Bedingung aufgetreten ist TillOn entspricht Stat 1 And 2 lt gt 0 Verwandte Befehle EStopOn SafetyOn Stat Beispiel einer TillOn Funktion Go PO Till Sw 1 1 If TillOn Then Print Till condition occurred during move to PO EndIf 420 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Time Befehl Spezifiziert die aktuelle Zeit und z
212. einhaltet Bits die bereits f r die Remotesteuerung zugewiesen wurden 2317 Ung ltiger INBCD Wert 2318 Es k nnen nicht mehr als 4 TRAPSs gleichzeitig verwendet werden 2319 System Fehler 2320 System Fehler 2321 Meldungsfehler 2322 Meldung berschreitet Puffergrenze 2323 Der angegebene Roboter f hrt bereits eine Parallelbearbeitung aus 2324 W hrend der Parallelbearbeitung trat ein Fehler auf 2325 Der festgelegte Pfad Datei wurde nicht gefunden SPEL Language Reference Rev 3 5 473 SPEL Fehlermeldungen Error Message 2327 Der angegebene Task wird verwendet 2328 Die angegebene Tasknummer liegt au erhalb des g ltigen Bereichs 1 32 2329 GOSUB Anweisung kann im TRAP Vorgang nicht verwendet werden 2330 CALL Anweisung kann im TRAP Vorgang nicht verwendet werden 2331 Argumente k nnen in einer TRAP Funktion nicht verwendet werden 2333 System Fehler 2334 Parameter Stack berlauf 2335 Die angegebene DLL Datei wurde nicht gefunden 2336 Die angegebene Funktion wurde bereits definiert 2337 Nicht mehr gen gend Platz vorhanden f r DLLFAT 2338 Die angegebene Kommunikations Schnittstellennummer kann nicht gefunden werden 2339 Die angegebene Gruppe kann nicht gefunden werden 2340 Die angegebene Gruppe kann nicht gefunden werden 2341 Hauptfunktion wurde nicht deklariert 2342 Hauptfunkti
213. eispiele von Arch Einstellungen die ber das Online Fenster vorgenommen wurden gt arch 0 15 15 gt arch 1 25 50 gt jump pl cl gt arch arch0 15 000 15 000 archl 25 000 50 000 arch2 50 000 50 000 arch3 60 000 60 000 arch4 70 000 70 000 arch5 80 000 80 000 arch6 90 000 90 000 gt 36 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Arch Funktion Gibt die Arch Einstellungen aus Syntax Arch archNumber paramNumber Parameter Hinweise zur archNumber Bogen Nummer Integer Ausdruck welcher die Arch Einstellungen zur Ausgabe eines Parameters 0 bis 6 repr sentiert Hinweise zur Parameternummer 1 vertikale Hubstrecke 2 vertikale Absenkstrecke R ckgabewerte Eine Real Zahl welche die Strecke beinhaltet Verwandte Befehle Arch Anweisung Arch Funktionsbeispiel Real archValues 6 1 Integer i Speichert die aktuellen Arch Werte For i 0 to 6 archValues i 0 archValues i 1 Next i Arch i 1 Arch i 2 SPEL Language Reference Rev 3 5 37 SPEL Sprachreferenz Arm Anweisung s W hlt die zu verwendende Armnummer aus bzw zeigt sie an Syntax Arm armNumber Parameter Hinweise zur Armnummer armNumber Optionaler Integer Ausdruck G ltiger Bereich 0 3 Der Anwender kann bis zu vier verschiedene Arme ausw hlen Arm 0 ist der Standard Vorgabe Roboterarm Die Arme 1 3 sind Zusatzarme die ber die Nutzung des ArmSet Befehls definiert
214. eit in Minuten s Time 2 Speichert die Zeit in Sekunden Print This controller has been used Print h hours Print m minutes Print s seconds Fend 422 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Time Funktion Gibt die Systemzeit aus Syntax Time R ckgabewerte Eine Zeichenkette welche die aktuelle Zeit im 24 Stunden Format hh mm ss enth lt Beschreibung Time wird verwendet um die Systemzeit in einer Programmanweisung zu erhalten Um die Systemzeit einzustellen m ssen Sie den Time Befehl vom Online Fenster aus ausf hren Verwandte Befehle Date Date GetDate GetTime Time Time Beispiel Function LogErr Integer errNum errNum Err 0 AOpen errlog dat As 30 Print 30 Error errNum ErrMsg errNum Date Time Close 30 EClr Fend SPEL Language Reference Rev 3 5 423 SPEL Sprachreferenz TLSet Anweisung s Definiert ein Werkzeugkoordinatensystem oder zeigt es an Syntax TLSet toolNum Xposition Yposition Zposition RotAngle Parameter toolNum Xposition Yposition Zposition RotAngle R ckgabewerte Integer von 1 bis 3 die darstellt welches von 3 Werkzeugen Tools definiert werden soll Werkzeug 0 ist das Vorgabewerkzeug und kann nicht modifiziert werden Ursprung der X Position des Werkzeugkoordinatensystems Ursprung der Y Position des Werkzeugkoordinatensystems Ursprung der Z Position des Werkze
215. el deklariert eine Byte Variable und ordnet ihr dann einen Wert zu Dann wird eine Bit weise UND Verkn pfung durchgef hrt um zu sehen ob das hohe Bit des Wertes in der Variablen Test_ok Ein 1 oder Aus 0 geschaltet ist Das Ergebnis wird auf Bildschirm ausgegeben Nat rlich ist in diesem Beispiel das hohe Bit der Variablen test_ok immer eingestellt da wir der Variablen den Wert 15 zugeordnet haben Function Test Byte A 10 Eindimensionale Feldvariable aus Bytes Byte B 10 10 Zweidimensionale Feldvariable aus Bytes Byte C 10 10 10 Dreidimensionale Feldvariable aus Bytes Byte test_ok test_ok 15 Print Initial Value of test_ok test_ok test_ok test_ok And 8 If test_ok lt gt 8 Then Print test_ok high bit is ON Else Print test_ok high bit is OFF End If Fend 54 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Calib Anweisung s Ersetzt die aktuellen Pulse Werte der Armstellung durch die aktuellen CalPls Werte Syntax Calib jointNumbert jointNumber2 jointNumber3 jointNumber4 Parameter JointNumber Achsnummer Integer Zahl von 1 bis 4 welche die zu kalibrierende Achsnummer repr sentiert W hrend normalerweise zu einem bestimmten Zeitpunkt nur jeweils eine Achse kalibriert werden muss so kann man mithilfe des Calib Befehls alle vier Achsen gleichzeitig kalibirieren Beschreibung Berechnet und spezifiziert automatisch den Offset Wert
216. en war 3302 Ein Ausgangsbefehl kann mit offener Sicherheitsabschrankung nicht ausgef hrt werden 3310 Fehler am ATTEND NORMAL Eingang Starten Sie die Steuerung RC neu 3311 Fehler am Eingang der Sicherheitsabschrankung Starten Sie die Steuerung RC neu 3312 Fehler am NOT AUS Eingang Starten Sie die Steuerung RC neu 4003 Kommunikationsfehler im Motion Control Modul 4004 Fehler w hrend des Wartens auf ein Ereignis im Motion Control Modul 4006 Die Zielpunktposition liegt ber dem angebenen LIMZ Wert 4008 Die aktuelle Punktposition oder der angebene LIMZ Wert liegen au erhalb des Arbeitsbereichs 4010 Die angebene Local Coordinate wurde nicht definiert 4013 Interner Rechenfehler im Motion Control Modul 4016 Es wurde versucht SFREE f r eine nicht zul ssige Achse auszuf hren 4017 Es wurde versucht MCAL MCORG auszuf hren obwohl nicht alle Achsen aktiv waren 4018 Kommunikationsfehler im Motion Control Modul 4019 Der angebene Befehl wird mechanisch nicht unterst tzt 4021 Die durch LOCAL definierten Punktpositionen sind zu nah 4022 Die Punktdaten f r LOCAL sind ung ltig 4023 Der angegebene Befehl kann mit ausgeschalteten Motoren nicht ausgef hrt werden 4026 Kommunikationsfehler im Motion Control Modul 4027 Kommunikationsfehler im Motion Control Modul 4028 Kommunikationsfehler im Motion Control Modul 4029 Kommunikationsfe
217. en Daten number um die festgelegte Bitanzahl shiftBits nach links an eine h herwertige Stelle Die nachr ckenden Bits niedrigeren Wertes werden 0 gesetzt Die einfachste Erkl rung f r LShift ist dass es einfach das Ergebnis von number 2shiftBits ausgibt Number wird multipliziert mit 2 hoch shiftBit Hinweis Typ numerischer Daten Die numerischen Daten num k nnen aus jeglichem g ltigen numerischen Datentyp bestehen LShift arbeitet mit den Datentypen Byte Integer und Real Verwandte Befehle And Not Or RShift Xor Beispiel einer LShift Funktion Function lshiftst Integer i Integer num snum num 1 For i 1 to 10 Print i i snum LShift num i Print The shifted num is snum Next i Fend Einige weitere Beispiele des LShift Befehls vom Online Fenster gt Print LShift 2 2 gt Print LShift 5 1 gt Print LShift 3 2 SPEL Language Reference Rev 3 5 261 SPEL Sprachreferenz LTrim Funktion Gibt eine Zeichenkette aus die mit der definierten Zeichenkette identisch ist ohne vorangestellte Leerzeichen Syntax LTrim string Parameter string Zeichenkettenausdruck R ckgabewerte Spezifizierte Zeichenkette bei der die vorangehenden Leerzeichen entfernt wurden Verwandte Befehle RTrim Beispiel einer LTrim Funktion data LTrim str str data str strs 262 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz MCal Anweisung s F hrt
218. en Koordinatenwert f r die U Achse eines spezifischen Punktes zu erhalten Um die aktuelle U Achsen Position des Roboters zu erhalten verwenden Sie bitte P oder Here f r das Punktargument Verwandte Befehle CX CY CZ CU Beispiel Das folgende Beispiel extrahiert den U Achsen Koordinatenwert von Punkt P100 und bergibt den Koordinatenwert an die Variable u Function test Real u u CU P100 Print The U Axis Coordinate of P100 is u Fend SPEL Language Reference Rev 3 5 103 SPEL Sprachreferenz CU Anweisung s Stellt die U Koordinate eines Punktes ein Syntax CU point value Parameter point Pnumber oder P expr oder Punktlabel value Real Ausdruck der den neuen Koordinatenwert repr sentiert Verwandte Befehle CU Funktion Beispiel einer CU Anweisung CU pick 45 0 104 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz CurDir Funktion Gibt eine Zeichenkette aus die den aktuellen Pfad repr sentiert Syntax CurDir R ckgabewerte Eine Zeichenkette die das aktuelle Laufwerk und den aktuellen Pfad beinhaltet Verwandte Befehle ChDir CurDrive Beispiel einer CurDir Funktion Print The current directory is CurDir SPEL Language Reference Rev 3 5 105 SPEL Sprachreferenz CurDrive Funktion Gibt eine Zeichenkette aus die das aktuelle Laufwerk repr sentiert Syntax CurDrive R ckgabewerte Eine Zeichenkette die den aktuellen Laufwerksbuchstaben enth l
219. en oder Armen mit unterschiedlicher Betriebsh he Sense Details Der optionale Sense Parameter gestattet es dem Anwender eine Eingangsbedingung zu berpr fen oder S W Speicher I O Bedingung bevor die endg ltige Abw rtsbewegung der Z Achse beginnt Ist sie erf llt dann wird dieser Befehl beendet und der Roboter stoppt ber der Zielposition von wo nur die Bewegung der Z Achse ben tigt wird um die Zielposition zu erreichen Es ist wichtig zu beachten dass der Roboterarm bei Wahrnehmen der Sense Eingangsbedingung nicht sofort anh lt Die Befehle Js oder Stat k nnen dann verwendet werden um zu beurteilen ob die Sense Bedingung erf llt wurde und der Roboter vor seiner Zielposition gestoppt hat oder ob die Sense Bedingung nicht erf llt wurde und der Roboter seinen Weg bis zur Zielposition fortgesetzt hat Till Details Die optionale Till Bedingung gestattet es dem Anwender eine Bedingung zu definieren die den Roboter dazu veranlasst zu bis zum vollst ndigen Stopp zu verz gern bevor der Jump Befehl vollst ndig ausgef hrt wurde Die definierte Bedingung ist einfach nur ein Gegenpr fung zu einem der 512 Eing nge oder einem der S W Merker Dies wird durch Verwenden der Funktionen Sw oder Sw erreicht Der Anwender kann berpr fen ob die Eing nge aus oder eingeschaltet sind und den Arm dazu veranlassen zu verz gern und anzuhalten je nachdem welche Bedingung spezifiziert ist Es ist wichtig zu beachten dass der Robter nicht
220. end Do Loop Trap OnErr Era Erl EClir Err Ert ErrMsg SPEL Language Reference Rev 3 5 Befehle zur nderung von Koordinaten Definiert den aktuellen Arm bzw gibt ihn aus Definiert einen Arm Definiert die aktuelle Werkzeugnummer bzw gibt sie aus Definiert ein Werkzeugkoordinatensystem oder zeigt es an Definiert ein lokales Werkzeugkoordinatensystem Definiert das Basis Koordinatensystem und zeigt es an Befehle zur Programmsteuerung Deklariert eine Funktion F hrt eine oder mehrere Anweisungen in Form einer Schleife bis zum angegebenen Z hlwert aus F hrt ein Unterprogramm aus R ckkehr zum Hauptprogramm nach Ausf hrung eines Unterprogramms Verzweigt ohne Bedingung zu einer Zeilennummer oder zu einem Label Ruft eine Anwender Funktion auf F hrt eine Anweisung bedingt aus Wird mit der If Anweisung benutzt damit Anweisungen auch dann ausgef hrt werden k nnen wenn die f Anweisung falsch ist Else ist eine Option f r die If Then Anweisung Definiert die Verzweigungsformel sowie die entsprechenden Anweisungssequenzen zum Verzweigen F hrt eine angegebene Anweisung aus solange eine festgelegte Bedingung erf llt ist Do Loop Konstrukt Spezifiziert eine Interrupt Behandlungsroutine Definiert eine Fehlerbehandlungsroutine Gibt die Roboterachsnummer f r den zuletzt aufgetretenen Fehler aus Gibt die Zeilennummer des Fehlers aus L scht den aktuellen Fehler Gibt die Fehlernu
221. enster aus gestartet wird Wenn ein Integer Ausdruck verwendet wird liegt der Bereich zwischen 1 und 32 R ckgabewerte 0 Der Task l uft nicht 1 Der Task l uft Der Task wartet auf ein Ereignis Der Task wurde angehalten Der Task ist mit QuickPause angehalten worden Der Task befindet sich im Fehlerzustand Der Task f hrt die Wait Anweisung durch Beschreibung Verwenden Sie TaskState um den Status f r den angebenen Task zu erhalten Sie k nnen die Tasknummer oder den Tasknamen spezifizieren OJAN Verwandte Befehle TaskDone TaskWait Beispiel einer TaskState Funktion If TaskState conveyor 0 Then Xqt 2 conveyor EndIf 416 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz TaskWait Anweisung s Wartet darauf dass ein Task beendet wird Syntax TaskWait taskldentifier Parameter taskldentifier Taskname oder Integer Ausdruck der die Tasknummer repr sentiert Ein Taskname ist der Funktionsname der in einer Xqt Anweisung verwendet wird oder eine Funktion die vom Run oder vom Operator Fenster aus gestartet wird Wenn ein Integer Ausdruck verwendet wird liegt der Bereich zwischen 1 und 32 Verwandte Befehle TaskDone TaskState Beispiel einer TaskWait Anweisung Xqt 2 conveyor TaskWait conveyor SPEL Language Reference Rev 3 5 417 SPEL Sprachreferenz TGoAnweisung s F hrt eine relative PTP Bewegung im aktuellen Werkzeug Koordinatensystem aus Syntax
222. entifiziert werden k nnen Verwandte Befehle Do Loop While Wend For Next Beispiel Function fornext Integer ctr For ctr 1 to 10 Go Pctr Next ctr For ctr 10 to 1 Step 1 Go Pctr Next ctr Fend SPEL Language Reference Rev 3 5 173 SPEL Sprachreferenz Force_Calibrate Anweisung s Setzt Null Offsets f r alle Achsen des aktuellen Kraftsensors Syntax Force_Calibrate Parameter On Off Die Drehmomentsteuerung kann ein oder ausgeschaltet sein Beschreibung Sie sollten Force_Calibrate f r jeden Sensor aufrufen wenn ihre Anwendung startet Dies definiert das Gewicht der Komponenten die auf dem Sensor montiert sind Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Force Sensing installiert ist Verwandte Befehle Force_Sensor Anweisung Beispiel einer Force_Calibrate Anweisung Force_Calibrate 174 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Force_GetForce Funktion Gibt die Kraft f r eine angegebenen Achse aus Syntax Force_GetForce axis Parameter axis Integer Ausdruzck welcher die Achse repr sentiert Achse Konstante Wert X Kraft KRAFT_XKRAFT 1 Y Kraft KRAFT_YKRAFT 2 Z Kraft KRAFT_ZKRAFT 3 X Drehmoment KRAFT _XDREHMOMENT 4 Y Drehmoment KRAFT_YDREHMOMENT 5 Z Drehmoment KRAFT_ZDREHMOMENT 6 R ckgabewerte Gibt einen Real Wert aus Beschreibung Verwenden Sie Force_GetForce um die aktuellen Krafteinstellungen f r eine Achse zu lesen Die Einheiten
223. entrizit t in mm auszugeben R ckgabewerte Verwandte Befehle Inertia Anweisung Beispiel einer Inertia Funktion Real loadInertia eccentricity loadInertia Inertia l eccentricity Inertia 2 224 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz InPos Funktion Gibt den aktuellen Positionsstatus des spezifizierten Roboters aus Syntax InPos robotNumber Parameter robotNumber Optional Definiert f r welchen Roboter der Positionsstatus ausgegeben werden soll Wird diese Angabe weggelassen wird vom aktuellen Roboter ausgegangen R ckgabewerte WAHR wenn der letzte Bewegungsbefehl erfolgreich beendet wurde sonst FALSCH Verwandte Befehle CurPos FindPos Beispiel einer InPos Funktion Function main PO 0 100 0 OQ P1 0 100 0 O Xqt MonitorPosition NoPause Do Jump PO Wait 5 Jump P1 Wait 5 Loop Fend Function MonitorPosition Boolean oldInPos pos Do Pos InPos If pos lt gt oldInPos Then Print InPos pos EndIf oldInPos pos Loop Fend SPEL Language Reference Rev 3 5 225 SPEL Sprachreferenz Input Anweisung s Gestattet es numerische Daten von der Tastatur zu empfangen und in einer Variable n zu speichern Syntax Input varName varName varName Parameter varName Variablenname Mit dem Input Befehl k nnen mehrfache Variablen verwendet werden solange sie durch Kommata voneinader getrennt werden Beschreibung Input empf ngt numer
224. enzeichenkette in ihren numerischen Wert und gibt diesen Wert aus Syntax Val string Parameter string Zeichenkettenausdruck der nur aus numerischen Zeichen besteht R ckgabewerte Gibt ein Integer oder Flie komma Ergebnis aus abh ngig von der Zeichenketten Eingabe Wenn die Zeichenketten Eingabe ein Dezimalpunkt Zeichen enth lt wird die Zahl in eine Flie kommazahl umgewandelt Anderenfalls ist der R ckgabewert ein Integer Beschreibung Val konvertiert eine Buchstabenzeichenkette in einen numerischen Wert Das Ergebnis kann ein Integer oder eine Flie kommazahl sein Wenn die Zeichenkette der Val Instruktion welche bergeben wird ein Dezimalzeichen enth lt wird eine Flie kommazahl zur ckgegeben Anderenfalls wird ein Integer ausgegeben Verwandte Befehle Abs Asc Chr Int Left Len Mid Mod Right Sgn Space Str Val Beispiel Das folgende Beispiel zeigt ein Programm welches mehrere verschiedene Zeichenketten in Zahlen umwandelt und diese dann auf dem Bildschirm ausgibt Function ValDemo String realstr intstr Real realsqr realvar Integer intsqr intvar realstr 2 5 realvar Val realstr realsqr realvar realvar Print The value of realstr squared is realsqr intstr 25 intvar Val intstrSs intsqr intvar intvar Print The value of intstr squared is intsqr Fend Das folgende Beispiel wird vom Online Fenster ausgef hrt gt Print Val 25 999 25 9
225. er eingehend wenn Sie diese Software benutzen Halten Sie dieses Handbuch zu jedem Zeitpunkt griffbereit E Dieses Zeichen weist Sie auf die Gefahr N W ARN U N G schwerster Verletzung oder m glicher Todesfolge hin wenn diese Anweisungen nicht eingehalten werden E Dieses Zeichen weist Sie auf Verletzungsgefahr N VO R S C H T von Personen und m glichen physischen Schaden an Ger ten und Betriebsanlagen hin sollten diese Hinweise missachtet werden SPEL Language Reference Rev 3 5 SERVICE CENTER Wenn Reparaturen Wartungsma nahmen oder Neueinstellungen notwendig werden wenden Sie sich bitte an Ihr EPSON Service Center Halten Sie dabei bitte Informationen zur Software Version und eine kurze Problembeschreibung bereit Sollten an dieser Stelle keine Information bez glich Ihres Service Centers angegeben sein wenden Sie sich bitte an Ihren regionalen EPSON Vertrieb der im folgenden Abschnitt LIEFERANTEN aufgef hrt ist LIEFERANTEN Japan amp Andere SEIKO EPSON CORPORATION Suwa Minimi Plant Factory Automation Systems Div 1010 Fujimi Fujimi machi Suwa gun Nagano 399 0295 Japan TEL _ 81 266 61 1802 FAX 81 266 61 1846 Nord amp S d EPSON AMERICA INC Amerika Factory Automation Robotics 18300 Central Avenue Carson CA 90746 TEL 562 290 5900 FAX 562 290 5999 E MAIL info robots epson com Europa EPSON DEUTSCHLAND GmbH Factory Automation Division Z lpicher Str 6 D
226. er Arch Eintrag der immer die so genannte Gate Bewegung definiert Gate Bewegung bedeutet dass der Roboter die Z Achse zuerst vollst ndig zu der durch LimZ definierten SPEL Language Reference Rev 3 5 241 SPEL Sprachreferenz Koordinate bewegt bevor die X Y oder U Achsen Bewegungen begonnen werden Sobald der LimZ Z Grenzwert erreicht ist beginnt die Bewegung der Achsen X Y und U Nachdem die Achsen X Y und U jeweils ihre Zielposition erreicht haben kann die Z Achse mit ihrer Abw rtsbewegung zur letzten Z Achsen Koordinatenposition beginnen die durch destination den Zielpunkt definiert wurde Die Gate Bewegung sieht aus wie folgt LIMZ Origin Pt Destination Pt Pend LimZ Details LimZ zCoord spezifiziert den oberen Z Koordinatenwert f r die Horizontalbewegungs Ebene Die Definition von archnum kann die Achsen X Y und U dazu veranlassen mit ihrer Bewegung zu beginnen bevor LimZ erreicht ist aber LimZ ist immer die maximale Z H he f r die Bewegung Wenn der optionale LimZ Parameter weggelassen wird wird der davor durch den LimZ Befehl spezifizierte Wert f r die Definition der Horizontalbewegungsebene verwendet Es ist wichtig zu beachten dass die Spezifikation der LimZ zLimit H henbegrenzung den Z Achsen Wert f r das Roboterkoordinatensystem darstellt Es ist nicht der Z Achsen Wert f r Arm Tool oder LOCALO Koordinaten Treffen Sie daher die notwendigen Schutzvorkehrungen f r den Gebrauch von Werkzeug
227. er beim Ausf hren des Interpreters 2903 Fehler beim Freigeben des Bereichs f r die lokalen Variablen 2904 Fehler beim Zuweisen des Arbeitsbereiches f r Stringoperationen 2905 Fehler beim Freigeben des Arbeitsbereiches f r Stringoperationen 2906 Die Registry kann nicht ge ffnet werden 2907 Fehler beim Lesen von Daten aus der Registry 2908 Fehler beim Schreiben von Daten in die Registry 2909 Roboterfehler 2910 Fehler am Roboter aufgetreten 3000 Die angegebene Achsennummer ist au erhalb des g ltigen Bereichs 1 6 3001 Der angegebene Wert berschreitet die obere Grenze des Parameters 3002 Der angegebene Wert unterschreitet die untere Grenze des Parameters 3003 Ein ung ltiger Wert 0 wurde angegeben 3004 Ung ltiger Wert Ein positiver Wert kann nicht angegeben werden 3005 Ung ltiger Wert Ein negativer Wert kann nicht angegeben werden 3006 Die Anzahl der gegebenen Parameter ist ung ltig 3007 Direkt vorgesehene Positionsnummer ist falsch 3008 Der angegebene Wert liegt au erhalb des g ltigen Bereichs 1 6 von ACCEL 3009 Der angegebene Wert liegt au erhalb des g ltigen Bereichs 1 3 von SPEED 3010 Der angegebene Wert liegt au erhalb des g ltigen Bereichs 1 2 von ACCELS 3011 Die angegebene Achsennummer liegt au erhalb des g ltigen Bereichs 1 6 von FINE 3012 Die angegebene Achsennummer liegt au erhalb des g ltigen Bereichs 1 6 von JRANGE 3013 Die angegebene Referenz Datenn
228. er jeweils eine der 64 Ausgangsgruppen repr sentiert jede Gruppe enth lt 8 Ausg nge die die Standard und die erweiterten Ausg nge bilden Die portnum Auswahl entspricht den folgenden Ausg ngen Portnummer Ausg nge 0 0 7 1 8 15 2 16 23 3 24 31 63 504 511 outData Integer zwischen 0 und 255 der das Ausgangsmuster f r die mit der Anweisung portNumber ausgew hlte Ausgangsgruppe repr sentiert Wenn sie in hexadezimaler Form dargestellt wird wird der Bereich von amp HO bis amp HFF abgedeckt Die niedrigere Ziffer repr sentiert die niederwertigen Stellen oder die ersten 4 Ausg nge und die obere Ziffer repr sentiert die h herwertigen Stellen oder die zweiten 4 Ausg nge Beschreibung Out setzt unter Nutzung der vom Anwender angegebenen Kombination aus portNumber und outData Werten gleichzeitig 8 Ausg nge Die Ausg nge werden in 16 Gruppen zu je 8 Eing ngen unterteilt Der portNumber Parameter f r den OpBCD Befehl definiert welche 8er Ausgangsgruppe verwendet werden soll wobei portNumber 0 die Ausg nge 0 7 bedeutet portNumber 1 bedeutet die Ausg nge 8 15 etc Sobald eine Portnummer ausgew hlt wurde d h es wurde eine Gruppe von 8 Ausg ngen ausgew hlt muss ein spezifisches Ausgangsmuster definiert werden Daf r wird der Parameter outData verwendet Der outData Parameter kann einen Wert zwischen 0 und 255 haben und kann in hexadezimalem oder Integer Format repr sentiert werden D h amp HO amp HFF oder 0
229. eradlinige CP Geschwindigkeit SpeedS unter Zuhilfenahme vordefinierter Variablen eingestellt werden Function acctest Integer slow accslow fast accfast slow 20 setzt die slow speed Variable fast 100 setzt die high speed Variable slow 200 setzt die slow acceleration Variable accfast 5000 setzt die fast acceleration Variable AccelS accslow SpeedS slow Move P1 On 1 AccelS accfast SpeedS fast Jump P2 Fend lt Beispiel 2 gt Nehmen Sie an der Roboter befindet sich gegenw rtig im Low Power Modus Power Low und der Anwender versucht ber das Online Fenster den AccelS Wert auf 1000 einzustellen Weil sich der Roboter im Low Power Modus befindet wird automatisch ein maximaler Beschleunigungswert von 200 eingestellt Das System gestattet im Low Power Modus keinen Beschleunigungswert gt 200 gt AccelS 1000 gt AccelS Low Power Mode 1000 000 1000 000 gt SPEL Language Reference Rev 3 5 27 SPEL Sprachreferenz AccelS Funktion Gibt Beschleunigung und Verz gerung f r geradlinige Bewegungsbefehle aus Syntax AccelS Parameternummer Parameter Hinweise zur Parameternummer Integer Ausdruck der die folgenden Werte haben kann 1 Angegebener Wert der Beschleunigung 2 Angegebener Wert der Verz gerung R ckgabewerte Integer von 1 100 Verwandte Befehle AccelS Anweisung AccelS Funktionsbeispiel Integer savAccelS savAccelS AccelS 1 28 SPEL Language Reference Rev
230. erden k nnen Das liegt daran dass der Arm einige der Zwischenpositionen nicht erreichen kann die w hrend der Move Bewegung ben tigt werden SPEL Language Reference Rev 3 5 279 SPEL Sprachreferenz Verwendung von Move mit CP Der CP Parameter veranlasst den Arm zur destination zu fahren ohne langsamer zu werden oder an dem durch destination definierten Punkt anzuhalten Dadurch wird dem Anwender erm glicht eine Serie von Bewegungsbefehlen miteinander zu verketten was den Arm veranlasst sich entlang eines kontinuierlichen Weges zu bewegen und w hrend dieser Bewegung eine bestimmte Geschwindigkeit einzuhalten Der Move Befehl ohne CP veranlasst den Arm immer dazu bevor er das Ziel destination erreicht hat mit dem Herunterbremsen zu beginnen Move mit CP entspricht dem CMove auf den SRC 3xx Steuerungen Korrekte Speed Geschwindigkeit und Acceleration Beschleunigung Befehle mit Move Die Befehle SpeedS und AccelS werden verwendet um Geschwindigkeit und Beschleunigung des Roboters w hrend der Move Bewegung zu definieren Achten Sie darauf dass SpeedS und AccelS sich auf linearinterpolierte und kreisinterpolierte Bewegungen beziehen w hrend eine PTP Bewegung die Befehle Speed und Accel verwendet Potentielle Fehler Versuch nur die U Achse zu bet tigen Da Move alle 4 Achsen im kartesischen Koordinatensystem steuert ist es unm glich ausschlie lich die U Achse bet tigen zu wollen Wird dies versucht tritt ein Fehler a
231. ereichs bewegen tritt ein Fehler auf Verwandte Befehle Hofs Mcal Beispiel einer HTest Anweisung Zeigt die aktuellen HTest Werte im Online Fenster an gt htest 344 386 254 211 gt 214 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz HTest Funktion Gibt den HTEST Wert f r das angegebene Glenk aus Syntax HTest jointNumber Parameter JointNumber Ein Integer Ausdruck der die Achsnummer repr sentiert f r welche der HTest Wert ausgegeben werden soll R ckgabewerte Gibt den HTEST Wert der spezifizierten Achse Integer Wert in Pulsen aus Verwandte Befehle HTest Anweisung Beispiel einer HTest Funktion Dieses Beispiel benutzt die HTest Funktion in einem Programm Function DisplayHTest Integer i Print HTest values For i 1 To 4 Print HTest i Next i Fend SPEL Language Reference Rev 3 5 215 SPEL Sprachreferenz If Then Else Endlf Anweisung s F hrt Befehle auf der Basis einer angegebenen Bedingung aus Syntax 1 If condition Then stmtT1 Elself condition Then stmtT1 Else stmtF1 Endif 2 If condition Then stmtT1 stmtT2 Else stmtF1 stmtF2 Parameter condition Jegliche g ltige Bedingung die ein WAHRes beliebige Zahl au er 0 oder FALSCHes Resultat ausgibt als 0 ausgegeben S u f r Beispielbedingungen stmtT1 Wird ausgef hrt wenn die Bedingung WAHR ist Mehrfachanweisungen k nnen in geblocktem If Then Else Stil hier
232. erhalten Wait 01 Fend 464 SPEL Language Reference Rev 3 5 SPEL Fehlermeldungen Um Hilfe zu irgendeinem SPEL Fehler zu erhalten platzieren Sie den Cursor auf der Fehlermeldung die auf dem Online Fenster angezeigt wird und dr cken Sie die Taste F1 Error Message 2 Syntax Fehler oder undefinierte Angaben 3 RETURN wurde ohne GOSUB ausgef hrt 4 Zu viele GOTO GOSUB oder Sprungmarken Maximum 512 5 Numerischer Wert au erhalb des g ltigen Bereichs 6 7 9 berlauf von numerischen Werten oder Variablen Es gibt mehr verschachtelte GOSUB Anweisungen als erlaubt 16 Feldvariable au erhalb der Definition 16 Eine Programmzeile befindet sich nicht innerhalb von FUNCTION FEND 19 Zu viele Zeichen in einer Zeile 27 Angew hlter E A existiert nicht 30 INPUT Anzahl der Daten Variablen ungleich 33 Pufferspeicher berlauf von RS 232C 34 Parit ts berlauf Anordnungsfehler von RS 232C 36 Zu viele Zeichen an den RS 232C Port gesendet 37 Overtime Fehler der RS232 Kommunikation 53 Datei existiert nicht 57 Es existiert bereits eine Datei mit diesem Namen 58 Der Dateiname ist falsch oder existiert bereits 62 Falscher Dateiname Datei kann nicht ge ffnet werden 63 Diskette nicht bereit 65 Disketten Lesefehler 66 Disketten Schreibfehler 77 Punktdefinition nicht korrekt 78 Undefinierter Punkt
233. erinit Befehls l scht die aktuellen HomeSet Werte Potentielle Fehler Homingversuch ohne definierte HomeSet Werte Der Versuch den HomeSet Befehl am Roboter auszuf hren ohne die HomeSet Werte zu setzen resultiert in Ausgabe des Fehlers Nr 143 Der Versuch HomeSet Werte anzuzeigen ohne dass HomeSet Werte definiert sind Der Versuch Home Position Pulse Werte anzuzeigen ohne dass HomeSet Werte definiert sind resultiert in Ausgabe des Fehlers Nr 143 Verwandte Befehle Home Hordr Mcal PIs 206 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz HomesSet Beispiel Die folgenden Beispiele werden vom Online Fenster aus ausgef hrt gt home IlError 143 Home position is not defined gt homeset IlError 143 Home position is not defined gt homeset 0 0 0 0 Setzt die Home Position auf 0 0 0 0 gt homeset 0 0 0 0 gt home Der Roboter kehrt zur Home Position 0 0 0 0 zur ck Die Pls Funktion wird verwendet um die aktuelle Position des Armes als Home Position zu definieren gt homeset Pls 1 Pls 2 Pls 3 Pls 4 SPEL Language Reference Rev 3 5 207 SPEL Sprachreferenz Homeset Funktion Gibt die Pulse Werte der Home Position f r die angegebene Achse aus Syntax HomesSet jointNumber Parameter JointNumber Integer Ausdruck der die Achsnummer darstellt f r die der HomeSet Wert ausgegeben werden soll R ckgabewerte Gibt den Pulse Wert der Home Position der Achse aus Wenn die jo
234. erkports aus Syntax ChkNet portNumber Parameter portNumber Integer Ausdruck f r die zu berpr fende Schnittstellennummer R ckgabewerte Anzahl der empfangenen Zeichen Integer Wenn die Schnittstelle keine Zeichen empfangen kann werden die folgenden negativen Zeichen ausgegeben um den Schnittstellenstatus auszugeben 1 Der Port ist offen aber es wurde keine Kommunikation hergestellt 2 Schnittstelle wird von einem anderen Task verwendet 3 Der Port ist nicht offen Verwandte Befehle CloseNet OpenNet Read Write ChknNet Beispiel Integer numChars numChars ChkNet 128 66 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Chr Funktion Gibt das Zeichens eines numerischen ASCIlI Wertes aus Syntax Chr number Parameter number Integer Ausdruck zwischen 1 und 255 R ckgabewerte Gibt ein Zeichen aus welches dem spezifizierten ASCII Code entspricht spezifiziert durch den number Wert Beschreibung Chr gibt eine Zeichenkette aus 1 Zeichen die den ASCII Wert des Parameters number hat Wenn die spezifizierte number Nummer au erhalb des Bereiches von 1 bis 255 liegt tritt ein Fehler auf Verwandte Befehle Asc Left Len Mid Right Space Str Val Beispiel einer Chr Funktion Das folgende Beispiel deklariert eine Zeichenketten String Variable und ordnet ihr dann die Zeichenkette ABC zu Der Chr Befehl wird verwendet um die numerischen ASCII Werte in die Zeichen A
235. errlog dat As 30 Print 30 Error errNum ErrMsg errNum Date Time Close 30 Fend SPEL Language Reference Rev 3 5 119 SPEL Sprachreferenz Declare Anweisung s Definiert eine externe Funktion in einer Dynamic Link Library DLL Syntax Declare funcName dllFile alias argList As type Parameter funcName Der Name der Funktion so wie sie von Ihrem Programm aufgerufen wird dllFile Pfad und Name der Library Datei Dabei muss es sich um eine Buchstabensymbol Zeichenkette handeln Zeichen durch Anf hrungsstriche begrenzt Sie k nnen ebenfalls ein durch define definiertes Makro verwenden alias Der tats chliche Name der Funktion in der DLL Er muss aus einer Buchstabensymbol Zeichenkette bestehen und es wird Gro und Kleinschreibung unterschieden Zeichen durch Anf hrungsstriche begrenzt Sie k nnen ebenfalls ein durch define definiertes Makro verwenden arglist Optional Liste der DLL Argumente Siehe Syntax weiter unten type Erforderlich Sie m ssen den Funktionstyp definieren Das arglist Argument hat die folgende Syntax ByRef ByVal varName As type ByRef Optional Spezifizieren Sie ByRef wenn Sie m chten dass Ver nderungen im Variablenwert von der Calling Funktion gesehen werden ByVal Optional Spezifizieren Sie ByVal wenn Sie nicht m chten dass Ver nderungen im Variablenwert von der Calling Funktion gesehen werden Dies ist die Vorgabeeinstellun
236. ersten Schritt Achse 1 im zweiten Schritt Achse 2 im dritten Schritt und dann die U Achse im vierten Schritt Die Reihenfolge ist in Bitmustern spezifiziert gt hordr amp BO100 amp B0001 amp B0010 amp B1000 Dieses Beispiel instruiert den Roboterarm die Z Achse als Erste in ihre Home Position zur ckzuf hren in Step Schritt 1 und danach die Achsen 1 2 und U gleichzeitig amp B1011 oder 11 als Dezimalwert in Step Schritt 2 Die Homing Reihenfolge ist mit Dezimalwerten spezifiziert gt hordr 4 11 0 O Dieses Beispiel zeigt die aktuelle Homing Reihenfolge in Hexadezimalzahlen gt hordr APE EAE 0 gt 210 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz HOrdr Funktion Gibt den Hordr Wert f r einen spezifizierten Schritt aus Syntax Hordr stepNumber Parameter stepNumber Integer Ausdruck welcher den auszugebenden Hordr Schritt repr sentiert R ckgabewerte Integer der den Hordr Wert f r den angegebenen Schritt enth lt Verwandte Befehle Mcal MCordr Home HomeSet Beispiel einer HOrdr Funktion Integer a a Hordr 1 SPEL Language Reference Rev 3 5 211 SPEL Sprachreferenz Hour Anweisung Zeigt die Betriebszeit der Steuerung an Syntax Hour Beschreibung Zeigt die Zeit an die der PC bereits eingeschaltet ist und SPEL ausf hrt Kumulierte Betriebszeit Die Zeit wird immer in ganzen Stunden angezeigt Verwandte Befehle Time Hour Beispiel Das folgende Beispiel
237. ertes der verwendet wird um die Ausg nge ein oder auszuschalten Da das BCD Format den Gebrauch der Werte amp HA amp HB amp HC amp HD amp HE oder amp HF ausschlie t k nnen nicht alle Kombinationen f r die Einstellung der 8 Ausg nge erf llt werden Der Out Befehl funktioniert hnlich dem OpBCD Befehl mit der Ausnahme dass der Out Befehl es gestattet den Bereich der 8 Bit Werte der f r das Ein oder Ausschalten der Ausg nge verwendet werden darf zwischen 0 und 255 anzusiedeln gegen ber 0 bis 99 f r OpBCD Dies erlaubt es alle m glichen Kombinationen f r die 8 Ausgangsgruppen den Anwender Spezifikationen folgend zu initialisieren Ausg nge die als Remote konfiguriert sind Wird ein als Remote eingestellter Ausgang so spezifiziert dass er durch OpBCD eingeschaltet wird so tritt ein Fehler auf Remote Ausg nge werden je nach Systemstatus automatisch ein oder ausgeschaltet F r weitere Remote Details lesen Sie bitte das EPSON RC Benutzerhandbuch Die einzelnen Bits f r den Remote Connector k nnen vom ber das Setup Men erreichbaren EPSON RC Remote Konfigurationsdialog als Remote oder als E A eingestellt werden Verhalten der Ausg nge im Falle von Not Halt EPSON RC hat ein Feature das veranlasst dass bei Eintreten eines Not Halt alle Ausg nge ausgeschaltet werden Dieses Feature wird ber einen der Option Schalter aktiviert oder deaktiviert Um das Feature zu konfigurieren gehen Sie bitte auf den SPEL Opti
238. erweise enthalten Include Dateien define Anweisungen Eine include Anweisung muss au erhalb jeglicher Funktionsdefinition verwendet werden Wenn der Pfadname ausgelassen wird sucht include nach einer Include Datei aus dem aktuellen Verzeichnis Ein Include Datei kann eine sekund re Include Datei beinhalten Beispielsweise kann FILE2 in FILE1 enthalten sein und FILE3 in FILE2 Dieser Vorgang wird als Verschachtelung bezeichnet Zeilennummern in einzubeziehenden Dateien sind nicht gestattet Verwandte Befehle define ifdef ifndef include Beispiel Include Datei Defs inc define DEBUG 1 define MAX_PART_COUNT 20 Programmdatei main prg include defs inc Function main Integer i Integer Parts MAX_PART_COUNT Fend 20 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ABS Funktion Absolut Gibt den Absolutwert einer Zahl aus Syntax Abs Zahl Parameter Zahl Jeglicher g ltige numerische Ausdruck R ckgabewerte Der Absolutwert einer Zahl Beschreibung Der Absolutwert einer Zahl ist seine vorzeichenlose Gr e Beispielsweise ist das Ergebnis von Abs 1 und Abs 1 in beiden F llen 1 Verwandte Befehle Atan Atan2 Cos Int Mod Not Sgn Sin Sqr Str Tan Val Abs Funktionsbeispiel Die folgenden Beispiele werden mittels des Print Befehls vom Online Fenster aus get tigt print abs 1 print abs 1 print abs 3 54 gt 1 gt 1 gt 3 54 z SPEL
239. es in ihre Home Position zur ckgef hrt werden sollen Eine beliebige Anzahl von Achsen von 0 bis zu allen 4 kann w hrend des 3 Schrittes in ihre Home Position zur ckgef hrt werden bzgl der Definition von Bitmustern siehe unten step4 Bitmuster aus dem hervorgeht welche Achsen w hrend des 4 Schrittes des Homing Prozesses in ihre Home Position zur ckgef hrt werden sollen Eine beliebige Anzahl von Achsen von 0 bis zu allen 4 kann w hrend des 4 Schrittes in ihre Home Position zur ckgef hrt werden bzgl der Definition von Bitmustern siehe unten R ckgabewerte Zeigt die aktuellen Home Order Einstellungen an wenn die Parameter weggelassen werden Beschreibung Hordr definiert die Bewegungsreihenfolge f r den Home Befehl D g die Anweisung definiert welche Achse zuerst in seine Home Position zur ckgef hrt werden soll welches als 2 3 usw Der Zweck des Hordr Befehls ist es dem Anwender zu gestatten die Reihenfolge zu ndern in der die Achsen in ihre Home Position zur ckgef hrt werden sollen Die Homing Reihenfolge ist in vier unterschiedliche Schritte unterteilt Der Anwender verwendet Hordr dann um die spezifischen Achsen zu definieren die sich w hrend eines jeden Schrittes in die Home Position bewegen Es ist wichtig sich zu verdeutlichen dass mehr als eine Achse definiert werden kann welche sich w hrend eines einzigen Schrittes in die Home Position bewegen soll Dies bedeutet dass alle vier Achsen potentiell
240. eser Plist Befehl im Online Fenster zeigt die Punktdaten der aktuellen Armposition an PList Beispiel gt plist 300 150 0 0 gt Dieses Beispiel zeigt die spezifizierten Punktdaten an gt plist 2 p2 160 400 0 0 gt Dieses Beispiel zeigt die Punktdaten innerhalb des Bereiches von 10 und 20 an In diesem Beispiel befinden sich in diesem Bereich lediglich drei Punkte gt plist 10 20 p10 160 100 0 0 p12 55 340 0 0 p20 50 200 100 100 gt Dieser Plist Befehl zeigt die Punktedaten innerhalb eines Bereichs von 0 und dem spezifizierten Endpunkt an gt plist 20 p2 160 400 0 0 p10 160 100 0 0 p12 55 340 0 0 p20 50 200 100 100 gt Plist in einem festen Format gt Plist W P000 450 000 400 000 P001 13253 330 170 P011 200 000 328 400 000 100 000 0 000 8 000 L 150 000 1 R 0 000 58 200 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz PLabel Funktion Gibt das mit einer Punktnummer verbundene Punktlabel aus Syntax PLabel pointNumber Parameter pointNumber Ein Integer Ausdruck der eine Punktnummer enth lt die in der aktuellen Punktedatei verwendet wird Verwandte Befehle PDef Function PNumber Function Beispiel einer PLabel Funktion Print PLabel 1 SPEL Language Reference Rev 3 5 329 SPEL Sprachreferenz PLocal Anweisung s Stellt das lokale Attribut f r einen Punkt ein Syntax PLocal point
241. eter f r die Maschinenkalibrierung bzw zeigt die aktuellen Parameter an Zeigt die Pulse Z hlung vom Home Sensor zur Encoder Z Phase an bzw gibt sie aus Definiert den Servo Power Modus bzw gibt ihn aus Schaltet die Motoren ein bzw aus Schaltet die angegebene Servoachse frei Schaltet die angegebene Servoachse wieder ein nach SFREE Bewegung zu einem Punkt mittels einer PTP Bewegung Definiert die Bogenparameter f r die JUMP Bewegung bzw gibt sie aus Definiert die Z Achsenh he f r die JUMP Bewegung bzw zeigt den aktuellen Wert an Definiert und zeigt die Bedingungen an die zu einem Stop einer mit SENSE gekennzeichneten JUMP Bewegung ber dem Zielpunkt f hrt Gibt den Status eines mit SENSE gekennzeichneten JUMP Vorganges aus Gibt den Status des zuletzt ausgegebenen JUMP Befehls f r den aktuellen Roboter an Roboterbewegung zu einem Punkt mittels einer PTP Bewegung F hrt gleichzeitig vier PTP Bewegungen aus und bewegt den Manipulatorarm dabei an festgelegten Punkten vorbei Verschleifen von Hilfspunkten ohne diese exakt zu berfahren Bewegt den Roboter zu einer in Pulsen definierten Position F hrt eine relative PTP Bewegung im aktuellen Werkzeug Koordinatensystem aus F hrt im gew hlten Werkzeug Koordinatensystem eine linearinterpolierte Bewegung aus Definiert bzw gibt die Eingabebedingung aus durch die wenn erf llt die aktuell ausgef hrte Bewegung beendet wird Verarbeitet Prozessa
242. ette ausgetauscht werden soll Syntax define identifier parameter parameter string Parameter Hinweise zur ID Zeichenkette Vom Anwender definiertes Schl sselwort welches eine Abk rzung f r den Zeichenketten Parameter ist Die Regeln f r Zeichenketten lauten wie folgt Das erste Zeichen muss ein Alphabetzeichen die brigen k nnen alphanumerisch oder Unterstriche _ sein Leerzeichen oder Tabulatoren sind als Teil einer ID Zeichenkette nicht gestattet Hinweise zu den Parametern Werden normalerweise benutzt um eine oder mehrere Variable n zu spezifizieren die von der Ersatzzeichenkette verwendet werden k nnen Dies sorgt f r einen dynamischen define Mechanismus der wie ein Makro benutzt werden kann F r den define Befehl d rfen maximal 8 Parameter verwendet werden Die einzelnen Parameter m ssen jedoch durch Kommata voneinander getrennt werden und die Parameterliste muss in Klammern stehen Hinweise zur Zeichenkette Dies ist die Ersatzzeichenkette welche die ID Zeichenkette ersetzt wenn das Programm kompiliert wird Die Regeln f r Ersatzzeichenketten lauten wie folgt Leerzeichen oder Tabulatoren sind als Teil einer Ersatzzeichenkette nicht gestattet ID Zeichenketten die mit anderen define Anweisungen verwendet werden k nnen nicht als Ersatzzeichenketten genutzt werden Wird das Kommentarsymbol ebenfalls eingebracht werden die Zeichen nach dem Kommentarsymbol als Kommentar interpretiert u
243. ette zu definieren Um eine Palette zu definieren teachen Sie dem Roboter zun chst entweder 3 oder 4 Eckpunkte ein und definieren Sie dann die Palette wie folgt Eine mit 4 Punkten definierte Palette P1 P2 P3 und P4 wird unten gezeigt Es gibt 3 Positionen von P1 P2 und 4 Positionen von P1 P3 Dies ergibt eine Palette mit einer Gesamtzahl von 12 Positionen Die Syntax f r die Definition dieser Palette lautet wie folgt PALLET 1 Pl P2 P3 P4 3 4 Punkten die Teile einer Palette repr sentieren werden automatisch Teilnummern zugeordnet die in diesem Beispiel bei P1 beginnen Diese Teilnummern werden auch von der Pallet Funktion ben tigt SPEL Language Reference Rev 3 5 317 SPEL Sprachreferenz Hinweise Die Maximale Palettengr e Die Gesamtanzahl von Punkten die durch eine spezifische Palette definiert ist muss weniger als 32767 betragen Nicht korrekte Palettenform Definitionen Beachten Sie bitte dass eine falsche Punktreihenfolge oder eine falsche Anzahl von Teilen zwischen den Punkten eine nicht korrekte Palettenform Definition zur Folge hat Definition der Palettenebene Die Palettenebene wird durch Z Achsen Koordinatenwerte der 3 Paletteneckpunkte definiert Daher k nnen auch vertikale Paletten definiert werden Palettendefinition f r eine Palette mit einer einzigen Reihe Eine Palette mit nur einer einzigen Reihe kann mit einer 3 Punkte Pallet Anweisung oder einem Befehl definiert werden Teachen
244. etzen Sie ihn f r die Vorgabeeinstellung auf 0 Normalerweise wird Gain f r sehr pr zise Spannungskalibrierung verwendet offset Real Ausdruck der den Eingangs Offset enth lt Setzen Sie ihn f r die Vorgabeeinstellung auf 0 Normalerweise wird der Offset f r sehr pr zise Spannungskalibrierung verwendet loScale Real Ausdruck der den niedrigsten auszugebenden Wert enth lt hiScale Real Ausdruck der den h chsten auszugebenden Wert enth lt Beschreibung Dieser Befehl wird verwendet um die Konfiguration f r den Kanal des Analogmodules einzustellen Zun chst sollten Sie die Konfigurationswerte mithilfe von ENetlO_AnaGetConfig lesen danach die notwendigen Parameter ndern und dann ENetlO_SetConfig aufrufen Gain und Versatz Normalerweise sollten Gain und Offset auf O eingestellt sein werksseitige Vorgabeeinstellung Wenn Sie Module pr zise kalibrieren m ssen k nnen Sie Offset und Gain unter Verwendung einer kalibrierten Quelle einstellen Wenn Sie beispielsweise 50mv bis 50mv lesen m ssen das Modul jedoch diese Werte beim Vergleich mit einem Voltmeter nicht liest stellen Sie Versatz und Gain ein damit die Ablesungen korrekt sind Skalierung Stellen Sie die oScale und hiScale Parameter ein so dass sie den von Ihnen ben tigten Einheiten entsprechen Wenn Sie beispielsweise ein analoges Eingangsmodul verwenden das 10 bis 10 Volt liest k nnen Sie oScale auf 0 setzen und hiScale auf 100 um den Prozentwert abzulesen
245. eue des Conveyors auszugeben Wenn queNumber weggelassen wird wird der erste Punkt im Queue ausgegeben Anderenfalls wird ein Punkt von der angegebenen queNumber ausgegeben Cnv_QueGet l scht den Punkt nicht aus dem Queue Sie m ssen den Befehl Cnv_QueRemove verwenden um ihn wirklich zu l schen Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_QueLen Cnv_QueRemove Beispiel einer Cnv_QueGet Funktion Springt zum ersten Teil in der Queue und verfolgt sie Jump Cnv_QueGet 1 On gripper Wait 1 Jump place Off gripper Wait 1 Cnv_QueRemove 1 82 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Cnv_QueLen Funktion Gibt die Anzahl der sich im Queue des Conveyors befindlichen Objekte aus Syntax Cnv_QueLen conveyorNumber paramNumber Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert paramNumber Parameternummer Optional Integer Ausdruck f r welche Daten die L nge ausgegeben werden soll Symbolische Konstante Wert Bedeutung CNV_QUELEN ALL 0 Gibt die vollst ndige Anzahl Objekte aus die sich in dem Queue des Conveyors befinden CNV_QUELEN_UPSTREAM 1 Gibt die Anzahl der Objekte entgegen der F rderrichtung aus CNV_QUELEN_PICKUPAREA 2 Gibt die Anzahl der Objekte im Aufnahmebereich aus CNV_QUELEN_DOWNSTREAM 3 Gibt die Anzahl der Objekte in F rderrichtung aus R ckgabewerte
246. euerung die Trap Prozess Funktion aus nachdem der Shutdown Prozess f r den Task beendet ist Das bedeutet dass die Trap Routine der letzte auszuf hrende Code ist nachdem alle Tasks gestoppt haben Jedoch ist der Restart Befehl verf gbar den Sie in der Trap Emergency Behandlungsroutine verwenden k nnen um die aktuelle Gruppe neu zu starten Sie k nnen auch den Chain Befehl verwenden um einen spezifizierte Gruppe zu starten Wenn der E A Status so konfiguriert ist dass er beim Erkennen von Not Halt auf Null zur ckgesetzt wird k nnen die Anweisungen On Off und Out f r E A in der Trap Prozess Funktion nicht ausgef hrt werden Wenn der E A Status so konfiguriert ist dass er beibehalten werden soll wenn Not Halt erkannt wird sind alle E A Anweisungen verf gbar Dieses Feature wird ber einen der Option Schalter eingestellt oder deaktiviert Um das Feature zu konfigurieren gehen Sie bitte auf den SPEL Options Tab im System Konfigurationsdialog den Sie ber das Setup Men erreichen k nnen Wenn Error spezifiziert ist Wenn ein Fehler einschlie lich einem Fehler der innerhalb des Systems aufgetreten ist ausgegeben wird f hrt das System die Trap Prozess Funktion aus nachdem der Shutdown Prozess f r den Task beendet ist Das bedeutet dass die Trap Routine der letzte auszuf hrende Code ist nachdem alle Tasks gestoppt haben Jedoch ist der Restart Befehl verf gbar den Sie in Trap Emergency Behandlungsroutine verwende
247. ewerte Gibt die berechnete Achsposition aus Real Wert deg f r eine Rotationsachse mm f r eine lineare Achse Verwandte Befehle Ag CU CX CY CZ PPIs Beispiel einer PAgl Funktion Real jointl jointl PAgl P10 1 316 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Pallet Anweisung s Definiert Paletten und zeigt sie an Syntax Pallet palletNumber Pi Pj Pk Pm columns rows Parameter palletNumber Palettennummer repr sentiert durch einen Integer zwischen 0 und 15 Pi Pj Pk Punktvariablen welche die Standard 3 Punkte Palette definieren Pm Optional Punktvariable die mit Pi Pj und Pk verwendet wird um eine 4 Punkte Palette zu definieren columns Integer Ausdruck der die Anzahl von Punkten auf der Pi bis Pj Seite der Palette repr sentiert Der Bereich liegt zwischen 1 und 32767 rows Integer Ausdruck der die Anzahl von Punkten auf der Pi bis Pk Seite der Palette repr sentiert Der Bereich liegt zwischen 1 und 32767 R ckgabewerte Wenn die Parameter weggelassen werden werden alle definierten Paletten angezeigt Beschreibung Definiert eine Palette indem dem Roboter mindestens die Punkte Pi Pj und Pk eingeteacht werden und indem die Anzahl von Punkten von Pi bis Pj und von Pi bis Pk angegeben wird Wenn die Palette eine gleichm ig rechteckige Form hat m ssen nur 3 der 4 Eckpunkte definiert werden In den meisten F llen ist es jedoch besser 4 Eckpunkte zu verwenden um eine Pal
248. f GoSub Befehle d rfen bis zu 16 Level tief verschachtelt werden Das bedeutet dass ein weiterer GoSub Befehl von innerhalb eines Unterprogramms ausgef hrt werden kann usw bis zu 16 Mal Sobald jedoch 16 verschachtelte GoSub Befehle ausgef hrt sind wird der Versuch einen 17 GoSub Befehl auszuf hren in der Ausgabe des Fehlers Nr 7 resultieren Return Befehl ohne GoSub Befehl gefunden Ein Return Befehl wird verwendet um aus einem Unterprogramm ins Ursprungsprogramm zur ckzukehren das den GoSub Befehl ausgegeben hat Wenn ein Return Befehl gefunden wird ohne dass dem ein GoSub Befehl voran gegangen ist wird Fehler Nr 3 ausgegeben Ein alleinstehender Return Befehl ist bedeutungslos da das System nicht wei wohin es zur ckkehren soll Verwandte Befehle GoTo OnErr Return SPEL Language Reference Rev 3 5 193 SPEL Sprachreferenz Beispiel einer GoSub Anweisung Das folgende Beispiel zeigt eine einfache Funktion die einen GoSub Befehl verwendet um zu einem Label zu verzweigen einige E A Befehle auszuf hren und dann zur ckzukehren Function main Integer varl var2 GoSub checkio GoSub unter Verwendung von Label On 1 On 2 Exit Function checkio Hier startet die Subroutine varl In 0 var2 In l If varl 1 And var2 1 Then On 1 Else OEL dl EndIf Return Hier endet die Subroutine Fend 194 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Goto Anweisung s Der G
249. f r Geschwindigkeit und Beschleunigung auf niedrige Werte begrenzt Conditions to Cause Power Low Values Limited e Reset Command Speed e Motor On gt Accel Power S peedS e All tasks aborted Low Ace e Attend mode ON Hinweise Der Low Power Modus Power Low und seine Auswirkungen auf die maximale Geschwindigkeit Max Speed Im Low Power Modus ist die Motorkraft begrenzt und die Einstellung der effektiven Bewegungsgeschwindigkeit ist niedriger als der Vorgabewert Wenn im Low Power Modus eine h here Geschwindigkeit direkt vom Online Fenster aus oder in einem Programm spezifiziert wurde wird die Geschwindigkeit auf den Vorgabewert gesetzt Wenn eine h here Bewegungsgeschwindigkeit ben tigt wird setzen Sie Power auf High Der High Power Modus Power High und seine Auswirkungen auf die maximale Geschwindigkeit Max Speed Im High Power Modus k nnen h here Geschwindigkeiten als der Vorgabewert eingestellt werden 340 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Verwandte Befehle Accel AccelS Speed SpeedS TSpeed TSpeedS Power Beispiel Die folgenden Beispiele werden vom Online Fenster aus ausgef hrt gt Speed 50 Bestimmt hohe Geschwindigkeit im Low Power Modus gt Accel 100 100 Spezifiziert hohe Beschleunigung gt Jump P1 Bewegt den Roboter mit niedriger Geschwindigkeit und niedriger Beschleunigung gt Speed Zeigt die aktuellen Geschwindigkeitswerte an Low Power Mode 5
250. fehle Print Print Beispiel Im Folgenden sehen Sie einige Print Beispiele Function printex String temp Print 1 5 Sendet das Zeichen 5 an die Serielle Schnittstellt 1 temp hello Print 1 temp Print 2 temp Print 1 Next message for port 1 Print 2 Next message for port 2 Fend SPEL Language Reference Rev 35mm 3 SPEL Sprachreferenz PTran Anweisung s F hrt eine relative Bewegung einer Achse in Pulsen aus Syntax PTran joint pulses Parameter joint Integer Ausdruck der die zu bewegende Achse repr sentiert pulses Integer Ausdruck der die Anzahl der zu verfahrenden Pulse repr sentiert Beschreibung PTran wird verwendet um eine Achse ber eine definierte Anzahl von Pulsen von der aktuellen Position zu bewegen Verwandte Befehle Go JTran Jump Move Beispiel einer PTran Anweisung PTran 1 2000 346 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Pulse Funktion Gibt einen Roboterpunkt aus dessen Koordinaten in Pulsen spezifiziert sind Syntax Pulse jointT joint21 joint3T joint4 Parameter joint1 joint2 joint3 joint4 Der Pulswert f r jede der vier Achsen Der Pulswert muss in dem durch den Range Befehl definierten Bereich liegen und sollte ein Integer oder ein Long Ausdruck sein R ckgabewerte Ein Roboterpunkt der durch die angegebenen Pulse bestimmt ist Verwandte Befehle Go JA Jump Move Pulse Anweisung XY Beispiel einer Pul
251. fehls neu definiert werden Verwandte Befehle Local Beispiel der Base Anweisung Definiert den Ursprung des Basiskoordinatensystems bei 100 mm auf der X Axis und bei 100 mm auf der Y Achse gt Base 100 100 0 O 48 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz BClir Function L scht ein Bit in einer Zahl und gibt den neuen Wert aus Syntax BClir number bitNum Parameter Hinweise zur number Zahl Spezifiziert den numerischen Wert dessen Bit eingestellt wird durch einen Ausdruck oder numerischen Wert Hinweise zur bitNum Bitnummer Spezifiziert das Bit positive Integer welches eingestellt werden soll durch einen Ausdruck oder einen numerischen Wert R ckgabewerte Gibt den neuen Wert des spezifizierten numerischen Wertes Integer aus Verwandte Befehle BSet BTst BClir Beispiel flags BClr flags 1 SPEL Language Reference Rev 3 5 49 SPEL Sprachreferenz Beep Anweisung s L sst einen Signalton durch den Lautsprecher des Rechners ert nen Syntax Beep Verwandte Befehle Beispiel der Beep Anweisung Beep Print Initializing robot 50 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Boolean Anweisung s Deklariert Boolesche Variablen 1 Byte Integer Syntax Boolean varName subscripts varName subscripts Parameter Hinweise zum varName Variablenname Variablenname den der Anwender als Boolean deklarieren will Hinweise zu den subs
252. fehls mit Wait oder Merkern unter Verwendung des Sw Befehls mit Wait zu warten Der Sw Befehl arbeitet mit internen Merkern normalerweise f r Status Zwecke verwendet und hat keinerlei Auswirkungen auf die Hardware I O des Roboters Der Sw Befehl arbeitet mit den Hardware Eingangsports Diese Hardwareports sind einzelne Eing nge die mit Ger ten au erhalb der Steuerung kommunizieren Spezifikation einer Zeit berschreitung Timeout f r den Gebrauch mit Wait Wenn der Wait Befehl ohne ein Zeitintervall verwendet wird kann eine Zeit berschreitung spezifiziert werden Diese setzt ein Zeitlimit f r das Warten auf den definierten Sw oder Sw Befehl Diese Zeit berschreitung wird durch den TMOut Befehl gesetzt Bitte lesen Sie die Beschreibung dieses Befehls f r weitere Informationen Die Vorgabeeinstellung f r TMOut ist 0 Das bedeutet dass keine Zeit berschreitung definiert ist Verwandte Befehle In In InBCD Off Off On On Op Oport Out Out OutW Sw Sw TMOut Wait Beispiel Das folgende Beispiel zeigt 2 Tasks Jeder der beiden Tasks hat die M glichkeit Bewegungsbefehle zu initiieren Jedoch wird ein Sicherungsmechanismus zwischen den beiden Tasks verwendet um sicherzustellen dass ein Task erst dann die Kontrolle ber die Bewegungsbefehle des Roboters erh lt wenn der andere Task deren Verwendung abgeschlossen hat Dies erm glicht es 2 Tasks Bewegungsbefehle korrekt und in geordneter vorhersehbarere Ar
253. ference Rev 3 5 SPEL Sprachreferenz Verwandte Befehle XYLim Karteikarte Roboterparameter Befehl Projektmen Range Beispiel einer XYLim Anweisung Dieses einfache Beispiel vom Online Fenster stellt die aktuellen XYLim Einstellungen ein und zeigt sie dann an gt xylim 200 300 0 500 gt XYLim 200 000 300 000 0 000 500 000 SPEL Language Reference Rev 3 5 461 SPEL Sprachreferenz XYLim Funktion Gibt Punktdaten f r die obere oder die untere Grenze des XYLim Bereiches aus Syntax XYLim limit Parameter limit Integer Ausdruck der spezifiziert welche Grenze ausgegeben werden soll 1 Untergrenze 2 Obergrenze R ckgabewerte Punkt der die spezifizierten Grenzkoordinaten beinhaltet Verwandte Befehle XYLim Anweisung Biespiel einer XYLim Funktion P1 XYLim 1 P2 XYLim 2 462 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ZeroFlg Funktion Gibt den Status des Merkers vor dem letzen Ein oder Ausschalten aus Syntax ZeroFlg R ckgabewerte Gibt den Status des Merkers vor dem letzen Ein oder Ausschalten aus Gibt eine 0 oder eine 1 aus Beschreibung ZeroFlg dient der exklusiven Steuerung einer einzelnen Ressource wie z B einem RS232 Port w hrend mehrere Tasks gleichzeitig laufen Nach dem Einschalten eines Merkers verwenden Sie ZeroFlg um festzustellen ob der aktuelle Task der Task ist der den Merker eingeschaltet hat wohingegen einige andere Tasks den Merker zur
254. ffnet eine Datei zum Schreiben Syntax WOpen fileName As fileNumber Parameter fileName Ein Zeichenkettenausdruck der den Namen der Datei enth lt aus der gelesen werden soll Laufwerk und Pfad k nnen ebenfalls enthalten sein fileNumber Integer zwischen 30 und 63 welche als Bezeichner f r die Datei verwendet wird Beschreibung ffnet den spezifizierten Dateinamen zum Schreiben und identifiziert ihn durch die spezifizierte fileNumber Diese Anweisung wird verwendet um eine spezifizierte Datei zu ffnen und Daten in diese Datei zu schreiben Der Befehl Close schlie t die Datei und gibt die Dateinummer aus Um Daten anzuh ngen lesen Sie bitte die Erkl rung zu Aopen Wenn der spezifizierte Dateiname nicht auf dem aktuellen Verzeichnis der Diskette existiert erstellt die Anweisung WOpen die Datei und beschreibt sie Wenn der spezifizierte Dateiname existiert l scht Wopen alle Daten in dieser Datei und beschreibt sie neu Die fileNumber identifiziert die Datei so lange wie die Datei ge ffnet ist Die Datei wird von der Input Anweisung zum Lesen von der Print Anweisung zum Drucken und zum Schlie en Close verwendet Entsprechend kann die Dateinummer nicht zur Spezifikation einer anderen Datei verwendet werden bis die aktuelle Datei geschlossen ist Verwandte Befehle AOpen Close Input ROpen WOpen Beispiel Das unten gezeigte einfache Beispiel ffnet eine Datei schreibt einige Daten hinein ffnet dieselbe Datei
255. finiert Das erlaubt es dem Anwender einen maximalen und einen minimalen Achsen Bewegungsbereich f r jede einzelne Achse zu definieren XY Koordinaten Grenzwerte k nnen auch mit Hilfe des Befehls XYLim eingestellt werden Die Range Ausgangswerte sind f r jeden Roboter unterschiedlich Die Werte die durch diesen Befehl definiert werden bleiben auch erhalten nachdem der Strom ausgeschaltet wurde Der Verinit Befehl initialisiert diese Werte auf die Vorgabewerte Wenn die Parameter weggelassen werden werden die aktuellen Range Werte angezeigt Wichtige Hinweise Die Range Einstellung wird durch den Verinit Befehl nicht beeinflusst Weder das Ausschalten der Versorgungsspannung noch der Verinit Befehl ndern die Range Einstellungen Potentielle Fehler Der Versuch den zul ssigen Bereich zu verlassen Wenn der Roboterarm versucht sich ber eine der Arbeitsbereichsgrenzen hinaus zu bewegen tritt ein Fehler auf Die Achse verf hrt nicht Wenn der untere Pulsgrenze der oberen Pulsgrenze entspricht oder gr er als diese ist bewegt sich die Achse nicht Verwandte Befehle Ver Verinit XYLim SPEL Language Reference Rev 3 5 355 SPEL Sprachreferenz Range Beispiel Das einfache Beispiel vom Online Fenster zeigt die aktuelle Range Einstellung an gt range 1777 33777 15993 15555 13333 0 25000 25000 gt range 0 32000 0 32224 10000 0 40000 40000 gt 356 SPEL Language Reference Rev 3 5 SPEL S
256. ftBits Bitanzahl um die die numerischen Daten nach rechts verschoben werden R ckgabewerte Gibt ein numerisches Ergebnis aus das dem number Wert entspricht nachdem die Bits um die in shiftBits definierte Anzahl von Bits nach rechts verschoben wurden Beschreibung RShift verschiebt die spezifizierten numerischen Daten number um die festgelegte Bitanzahl shiftBits nach rechts an eine geringerwertige Stelle Die verschobenen Bits h heren Wertes werden durch 0 ersetzt Die einfachste Erkl rung f r RShift ist dass es einfach das Ergebnis von number 2shiftBits ausgibt Number wird dividiert durch 2 shiftBit Male Hinweis Typ numerischer Daten Die numerischen Daten number k nnen aus jeglichem g ltigen numerischen Datentyp bestehen RShift arbeitet mit den Datentypen Byte Integer und Real Verwandte Befehle And LShift Not Or Xor RShift Beispiel Das unten gezeigte Beispiel zeigt ein Programm welches alle m glichen RShift Werte f r einen Integer Datentypen aufzeigt beginnend mit dem auf 0 gesetzten Integer Function rshiftst Integer num snum i num 32767 For i 1 to 16 Print i i snum RShift num 1 Print RShift 32767 i snum Next i Fend Einige andere Beispielergebnisse des RShift Befehls vom Online Fenster gt Print RShift 10 1 5 gt Print RShift 8 3 1 gt Print RShift 16 2 4 SPEL Language Reference Rev 3 5 375 SPEL Sprachreferenz RTrim Funktion G
257. g varName Erforderlich Name der Variable welche das Argument repr sentiert folgt den Standardkonventionen f r Variablenbenennung Matrizen k nnen f r alle Datentypen au er String weitergereicht werden und m ssen ByRef sein type Erforderlich Der Argumenttyp muss definiert werden Beschreibung Verwenden Sie die Declare Anweisung um DLL Funktionen aus einem beliebigen Programm in der aktuellen Programmgruppe aufzurufen Die Declare Anweisung muss au erhalb von Funktionen verwendet werden Numerische Variablen durch ByVal weitergeben SPEL Declare MyDLLFunc mystuff dll MyDLLFunc a As Long As Long VC long _stdcall MyDllFunc long a Zeichenkettenvariablen durch ByVal weitergeben SPEL Declare MyDLLFunc mystuff dll MyDLLFunc a As String As Long VC long _stdcall MyDllFunc char a 120 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Numerische Variablen durch ByRef weitergeben SPEL Declare MyDLLFunc mystuff dll MyDLLFunc ByRef a As Long As Long VC long _stdcall MyDllFunc long a Zeichenkettenvariablen durch ByRef weitergeben SPEL Declare MyDLLFunc mystuff dl1l MyDLLFunc ByRef a As String As Long VC long _stdcall MyDllFunc char a Wenn Sie eine Zeichenkette mithilfe von ByRef weitergeben k nnen Sie die Zeichenkette in der DLL ndern Die maximale L nge der Zeichenkette betr gt 256 Zeichen Sie m ssen sicherstellen dass die
258. g Stellt die Y Koordinate eines Punktes ein Syntax CY point value Parameter point Pnumber oder P expr oder Punktlabel value Real Ausdruck der den neuen Koordinatenwert repr sentiert Verwandte Befehle CY Funktion Beispiel einer CY Anweisung CY pick 33 3 SPEL Language Reference Rev 3 5 s 115 SPEL Sprachreferenz CZ Funktion Extrahiert den Z Achsen Koordinatenwert eines Punktes Syntax CZ point Parameter point Punktausdruck R ckgabewerte Gibt einen numerischen Koordinatenwert aus der die Z Achsen Position repr sentiert Beschreibung Wird verwendet um den individuellen Koordinatenwert f r die Z Achse eines spezifischen Punktes zu erhalten Um die aktuelle Z Achsen Position des Roboters zu erhalten verwenden Sie bitte P oder Here f r den Punktparameter Verwandte Befehle CU CX CY Beispiel einer CZ Funktion Das folgende Beispiel extrahiert den Z Achsen Koordinatenwert von Punkt pick und bergibt den Koordinatenwert an die Variable z Function cztest Real z z CZ pick Print The Z Axis Coordinate of point pick is z Fend 116 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz CZ Anweisung Stellt die Z Koordinate eines Punktes ein Syntax CZ point value Parameter point Pnumber oder P expr oder Punktlabel value Real Ausdruck der den neuen Koordinatenwert repr sentiert Verwandte Befehle CZ Funktion Beispiel einer CZ Anweisung
259. g Integer Ausdruck R ckgabewerte Werden die Parameter weggelassen werden die aktuellen CalPls Werte angezeigt Beschreibung Spezifiziert den die korrekten Positions Pulse Wert e und beh lt ihn sie bei CalPis soll f r Wartungszwecke genutzt werden wie z B nach dem Austausch von Motoren oder wenn die Nullposition des Motors mit der mechanischen Nullposition des entsprechenden Armes abgeglichen werden muss Dieses Abgleichen der Nullposition des Motors mit der mechanischen Nullposition des entsprechenden Armes wird Kalibrierung genannt Normalerweise passen die Pulse Werte der Kalibrierungsposition zu den CalPls Pulse Werten Nach der Ausf hrung von Wartungsarbeiten wie z B dem Austausch von Motoren passen diese Werte jedoch nicht mehr zusammen was eine Kalibrierung notwendig macht Die Kalibrierung kann ausgef hrt werden indem Sie den Arm in eine bestimmte Kalibrierungsposition bringen und dann den Calib Befehl ausf hren Durch die Ausf hrung des Calib Befehls wird der Pulse Wert der Kalibrierungsposition in den CalPls Wert umge ndert korrekter Pulse Wert f r die Kalibrierungsposition Um eine ordnungsgem e Kalibrierung durchzuf hren m ssen Hofs Werte bestimmt werden Um Hofs Werte automatisch zu berechnen bewegen Sie den Arm in die gew nschte Kalibrierungsposition und f hren Sie den Calib Befehl aus Die Steuerung berechnet Hofs Werte automatisch auf Basis der Positions Pulse Werte der Kalibrierung und der CalPls We
260. g eines bestimmten Tasks oder aller Tasks ab Syntax Quit taskldentifier All Parameter taskldentifier Taskname oder Integer Ausdruck der die Tasknummer repr sentiert Ein Taskname ist der Funktionsname der in einer Xqt Anweisung verwendet wird oder eine Funktion die vom Run oder vom Benutzer Fenster aus gestartet wird Wenn ein Integer Ausdruck verwendet wird liegt der Bereich zwischen 1 und 32 All Bestimmt dass alle Tasks abgebrochen werden sollen Beschreibung Quit stoppt die Tasks die gerade ausgef hrt werden oder die vor bergehend mit Halt unterbrochen wurden Verwandte Befehle Exit Funktion Halt Resume Xqt Quit Beispiel Dieses Beispiel zeigt zwei Tasks die nach 10 Sekunden abgebrochen werden Function main Xqt wincl Startet die Funktion wincl Xqt winc2 Startet die Funktion winc2 Wait 10 Quit wincl Bricht den Task wincl ab Quit winc2 Bricht den Task winc2 ab Fend Function wincl Do On 1 Wait 0 2 Off 1 Wait 0 2 Loop Fend Function winc2 Do On 2 Wait 0 5 Off 2 Wait 0 5 Loop Fend 352 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz RadToDeg Funktion Konvertiert Radiant zu Grad Syntax RadToDeg radians Parameter radians Real Ausdruck welcher die Radianten darstellt die in Grad konvertiert werden sollen R ckgabewerte Ein Double Wert der die Anzahl der Grade enth lt Verwandte Befehle ATan ATan2 DegToRad Funktion Beispiel einer RadToDeg
261. g multiple Dateien existieren Ist keine Dateinamenerweiterung angegeben wird von der Endung CRV ausgegangen Der Anwender kann mit den Befehlen Speeds und Accels Geschwindigkeit und Beschleunigung f r die CP Bewegung f r CVMove ndern Wenn der Curve Befehl im Vorangegangenen bereits unter Verwendung von Punkten mit Local Definitionen ausgef hrt wurde k nnen Sie die Arbeitsposition mithilfe des Local Befehls ndern Bevor Sie den CVMove Befehl ausf hren stellen Sie sicher dass sich der gesamte Bewegungspfad innerhalb des Bewegungsbereichs des Manipulatorarms befindet Wenn der Pfad bestimmt wird pr ft das System nicht ob sich der definierte Pfad innerhalb des Bewegungsbereiches befindet oder nicht Hinweise Der neue Befehlsname lautet CVMove In lteren SPEL Versionen hie dieser Befehl CVMOV wurde aber sp ter zu CVMove modifiziert da die meisten Anwender den CVMove Befehlsnamen besser identifizieren konnten Verwandte Befehle Accels Funktion Arc Curve Move Speeds Till TillOn Beispiel einer CVMove Anweisung Das folgende Beispiel bestimmt den Dateinamen der Daten der freien Kurve als MYCURVE CRV erzeugt eine Kurve die die Punkte P1 bis P7 entlang f hrt schaltet bei P2 den Ausgangsport 2 EIN und verz gert den Arm bei P7 Erstellen der Kurve gt curve mycurve O 0 4 Pl P2 On 2 P 3 7 Bewegen des Armes zu P1 in einer geraden Linie gt jump P1 Bewegen des Armes nach der Mycurve genannten Ku
262. gegeben wurde schaltet QP den Quick Pause Modus Aus QP zeigt die aktuelle Einstellung die entscheidet ob der Roboterarm auf die Pause Eingabe reagieren soll indem er sofort anh lt oder nachdem der aktuelle Arbeitsgang des Armes abgeschlossen ist QP ist schlicht ein Status Befehl der verwendet wird um anzuzeigen ob der Quick Pause Modus Ein On oder Aus Off geschaltet ist Hinweis Der Quick Pause Modus wird vorgabem ig auf On gestellt nachdem die Versorgungsspannung eingeschaltet wurde Der Quick Pause Modus der durch den QP Befehl eingestellt wurde bleibt nach dem Reset Befehl bestehen Wenn jedoch der PC Strom oder der Strom der Antriebseinheit aus und dann wieder eingeschaltet wird wird der Quick Pause Modus auf die Vorgabeeinstellung On zur ckgesetzt QP und der Eingang der Sicherheitsabschrankung Auch wenn der QP Modus auf Off geschaltet ist h lt der Roboter sofort an wenn sich die Sicherheitsabschrankung ffnet Verwandte Befehle Pause Verinit 350 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Beispiel einer QP Anweisung Dieses Online Fenster Beispiel zeigt die Einstellung die dem Roboterarm sagt ob er sofort anhalten soll wenn Pause eingegeben wird d h der QP Modus ist Ein On oder Aus Off geschaltet gt qp OP ON gt qp On Setzt OP aus den Quick Pause Modus gt SPEL Language Reference Rev 3 5 351 SPEL Sprachreferenz Quit Anweisung s Bricht die Ausf hrun
263. gew hlt ist wird die Bewegung in Bezug auf das Ende des Werkzeuges wie in der Werkzeugdefinition definiert durchgef hrt Hinweis Abschalten der Versorgungsspannung und die Auswirkungen auf die Werkzeugwahl Das Ausschalten der Versorgungsspannung ndert die Werkzeugkoordinatensystem Wahl nicht Jedoch setzt die Ausf hrung des Verinit Befehls die Werkzeugkoordinatensytem Wahl auf das Standardwerkzeug Tool 0 zur ck Verwandte Befehle TGo TLSet TMove Beispiel einer Tool Anweisung Das folgende Beispiel zeigt einen guten Test der vom Online Fenster ausgef hrt werden kann Er hilft dabei den Unterschied zwischen Bewegungen mit einem Tool und ohne ein Tool zu verstehen gt tlset 1 100 0 0 0 Definiert das Werkzeugkoordinatensystem f r Werkzeug 1 plus 100 mm in X Richtung vom Arm Koordinatensystem gt tool 1 w hlt Werkzeug 1 wie durch TLSet definiert gt tgo P1 Positioniert die Spitze des Werkzeugs 1 auf Pl gt tool 0 Sagt dem Roboter dass er f r zuk nftige Bewegungen kein Werkzeug verwenden soll gt go P1 Positioniert den Mittelpunkt der U Achse auf Pl SPEL Language Reference Rev 3 5 431 SPEL Sprachreferenz Tool Funktion Gbit die aktuelle Werkzeugnummer aus Syntax Tool R ckgabewerte Integer welcher die aktuelle Werkzeugnummer beinhaltet Verwandte Befehle Tool Anweisung Beispiel einer Tool Funktion Integer savTool savTool Tool Tool 2 Go P1 Tool savTool
264. gsroutine zu gestatten Einschr nkungen Denken Sie daran dass alle Fehler mit der ECIr Anweisung gel scht werden m ssen Wenn der Anwender in der Fehlerbehandlungsunterroutine jedoch keine ECIr Anweisung verwendet um den Fehler zu l schen kann das System in einer Endlosschleife stecken bleiben Wenn der Fehler nicht mithilfe der Fehlerbehandlungsroutine zur ckgesetzt wird gibt das System auf den OnErr Befehl hin die Steuerung sofort nach seiner R ckkehr zur Hauptroutine an das Fehlerbearbeitungsprogramm zur ck Der Grund daf r ist dass das System davon ausgeht es sei erneut ein Fehler aufgetreten w hrend es tats chlich nur auf den vorangegangenen Fehler reagiert der nicht gel scht wurde Da die Fehlerbehandlungsroutine den Fehler nicht zur cksetzt tritt eine Endlosschleife auf Seien Sie daher vorsichtig Verwandte Befehle Err OnErr Return SPEL Language Reference Rev 3 5 129 SPEL Sprachreferenz Beispiel einer ECIr Anweisung 130 Das folgende Beispiel zeigt ein einfaches Dienstprogramm das pr ft ob die Punkte PO P399 existieren Wenn der Punkt nicht existiert erscheint eine Nachricht auf dem Bildschirm um den Anwender diesen Umstand wissen zu lassen Das Programm verwendet den CX Befehl um jeden einzelnen Punkt dahin gehend zu testen ob er definiert wurde oder nicht Wenn ein Punkt nicht definiert ist wird die Steuerung an die Fehlerbehandlungsroutine bergeben und auf dem Bildschirm erscheint eine Na
265. gungsspannung Beim Einschalten des Stroms lautet die Sense Bedingung Sense Sw 0 1 Eingang 0 ist eingeschaltet Verwendung von JS und Stat zur Verifizierung von Sense Verwenden Sie JS oder Stat um zu verifizieren ob die Sense Bedingung erf llt wurde Verwandte Befehle Js Jump Stat 1 Sw Sw SPEL Language Reference Rev 3 5 383 SPEL Sprachreferenz Beispiel einer Sense Anweisung Dies ist ein einfaches Beispiel f r die Verwendung der Sense Anweisung Function test TrySense Sense Sw 1 0 Bestimmt dass der Arm ber dem Ziel h lt wenn der Eingang 1 ausgeschaltet ist Jump Pl C2 Sense Wenn der Arm am durch Js 0 1 definierten Punkt stehen bleibt wird ERRPRC ausgef hrt und das Programm springt zu TrySense If Js 0 1 Then GoSub ERRPRC GoTo TrySense EndIf On Lyo Wait 0 22 OFf 4 Fend lt Beispiele mit anderer Syntax gt gt Sense Sw 1 1 And Sw 1 1 gt Sense Sw 0 Or Sw 1 And Sw 1 384 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz SetCom Anweisung s Stellt die Parameter f r eine Kommunikationsschnittstelle ein Syntax SetCom portNumber baud dataBits stopBits parity terminator HWFIlow SWFlow timeOut JJJ Parameter portNumber Gibt an f r welchen RS232 Port Parameter eingestellt werden sollen G ltige Eintr ge sind 1 16 baud Optional Gibt die Baudrate an G ltige Eintr ge sind 110 2400 19200 115200 300 4800 384
266. h der Ausf hrung bergibt die Programmsteuerung an den Befehl der auf Send folgt Select End Wenn kein Case Objekt dem Select formular Ergebnis entspricht wird die Standardanweisung Default ausgef hrt und die Programmsteuerung wechselt zu dem Befehl der auf Send folgt Wenn Default ausgelassen wird wird nichts ausgef hrt und die Programmkontrolle wechselt zu dem Befehl der direkt auf Send folgt Select kann Konstanten Variablen Variablenformeln und Logische Operatoren die And Or oder Xor verwenden beinhalten Das Case Objekt kann Konstanten und Variablen beinhalten Case Objekt Anweisungen k nnen au erdem Mehrfachanweisungen oder Mehrfachzeilen Anweisungen sein Bis zu 32 Case Objekte sind f r 1 Select Anweisung erlaubt Verwandte Befehle If Then Else SPEL Language Reference Rev 3 5 381 SPEL Sprachreferenz Select Beispiel Im Folgenden sehen Sie ein einfaches Beispiel f r Select Send Function Main Integer I For I 0 To 10 Select I Case 0 Off 1 On 2 Jump P1 Case 3 On 1 0 f 2 Jump P2 Move P3 On 3 Case 7 On 4 Default On 7 Send Next Fend 382 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Sense Anweisung s Spezifiziert und zeigt die Eingangsbedingung an die wenn erf llt den gerade in der Ausf hrung befindlichen JUMP durch anhalten des Roboters ber der Zielposition abschlie t Syntax Sense inputCondition Parameter Inputcondition Sense muss mit der Sw
267. h selber wird nicht angezeigt Die Verwendung eines Backslash bedeutet dasselbe als stellten Sie das n chste Zeichen in Anf hrungsstriche Um einen Backslash anzuzeigen verwenden Sie zwei Backslashes Beispiele von Zeichen die ABC nicht als Buchstabensymbol Zeichen angezeigt werden k nnen sind diejenigen die zur Formatierung von Datum und Uhrzeit verwendet werden a c d h m n p q S t w y und die Zeichen zur numerischen Formatierung 0 E e Komma und Punkt und die Zeichen zur Formatierung von Zeichenketten amp lt gt und Zeigen Sie die Zeichenkette innerhalb der Anf hrungsstriche an Um eine Zeichenkette im Format von innerhalb des Codes einzubeziehen m ssen Sie Chr 34 verwenden um den Text einzuschlie en 34 ist der Zeichencode f r ein Anf hrungszeichen Datum Zeit Formatspezifikationssymbole Zeichen Beschreibung 168 Zeittrennzeichen Es kann vorkommen dass in einigen Darstellungen andere Zeichen verwendet werden um das Zeittrennzeichen darzustellen Das Zeittrennzeichen trennt Stunden Minuten und Sekunden wenn die Zeitwerte formatiert werden Das Zeichen welches tats chlich als Zeittrennzeichen in den formatierten Ausgabedaten verwendet wird h ngt von Ihren Systemeinstellungen ab Datumstrennzeichen Es kann vorkommen dass in einigen Darstellungen andere Zeichen verwendet werden um das Datumstrennzeichen darzustellen D
268. her geschrieben werden stmtF1 Wird ausgef hrt wenn die Bedingung FALSCH ist Mehrfachanweisungen k nnen in geblocktem If Then Else Stil hierher geschrieben werden Beschreibung 1 If Then Else f hrt stmtT1 aus usw wenn die bedingte Anweisung WAHR ist Ist die Bedingung FALSCH wird stmtF1 usw ausgef hrt Der Else Teil des If Then Else Befehls ist optional Wird die Else Anweisung weggelassen und die bedingte Anweisung ist FALSCH wird die Anweisung ausgef hrt welche auf die EndIf Anweisung folgt F r geblockte If Then Else Anweisungen muss die Endlf Anweisung den Block schlie en egal ob ein Else genutzt wird oder nicht Eine Verschachtelung von bis zu 20 Leveln wird f r die geblockte If Then Else Anweisung unterst tzt 2 If Then Else kann auch nicht geblockt verwendet werden Dies gestattet es Anweisungen f r If Then Else in dieselbe Zeile zu schreiben Bitte bechten Sie dass die EndIf Anweisung nicht ben tigt wird wenn If Then Else in nicht geblockter Form verwendet wird Wenn die in dieser Zeile spezifizierte Bedingung erf llt wird WAHR werden die Anweisungen zwischen Then und Else ausgef hrt Wenn die Bedingung nicht erf llt wird FALSCH werden die Anweisungen ausgef hrt die auf Else folgen Der Else Teil von If Then Else wird nicht ben tigt Existiert kein Else Schl sselwort wird die Steuerung an die n chste Anweisung im Programm weitergegeben wenn die If Bedingu
269. hes Beispiel um den Arm nach Punkt P1 zu bewegen gt Go P1 U 30 Bewegt den Arm nach Punkt 1 verwendet aber 30 als Position zu welcher sich die U Achse bewegen soll gt Go P1 L Bewegt den Arm zu Pl stellt aber sicher dass der Arm in der linken Position anh lt gt Go 50 450 0 30 Bewegt den Arm in die Position X 50 Y 450 Z 0 U 30 lt Ein weiteres Code Beispiel gt Till Sw 1 0 And Sw 2 On Legt die Till Bedingungen f r die Eing ngen 1 amp 2 fest Go P1 Til Stoppt den Arm wenn die aktuelle Till die in der vorangegangenen Zeil definiert wurde erf llt ist Go P2 Till Sw 2 ON Stoppt wenn der Eingang 2 eingeschaltet ist Go P3 Till Stoppt den Arm wenn die aktuelle Till Bedingung die in der vorangegangenen Zeil definiert wurde erf llt ist 192 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz GoSub Return s GoSub bertr gt die Programmsteuerung an ein Unterprogramm Sobald das Unterprogramm vollst ndig ist kehrt die Programmsteuerung wieder zu der Zeile zur ck die auf den GoSub Befehl folgt welcher das Unterprogramm initiiert hatte Syntax GoSub lineNum label lineNum label statements Return Parameter lineNum Dies ist die Zeilennummer zu der die Programmausf hrung wechselt wenn der GoSub Befehl ausgef hrt wird G ltige Zeilennummern liegen zwischen 0001 und 32767 Jegliche g ltige Zeilennummer ist zul ssig label Anstatt eine Zeilennummer zu
270. hirm um den Anwender diesen Umstand wissen zu lassen Das Programm verwendet den CX Befehl um jeden einzelnen Punkt dahin gehend zu testen ob er definiert wurde oder nicht Wenn ein Punkt nicht definiert ist wird die Steuerung an die Fehlerbehandlungsroutine bergeben und auf dem Bildschirm erscheint eine Nachricht die dem Anwender mitteilt welcher Punkt nicht definiert war Function errDemo Integer i errNum OnErr GoTo errHandler For i 0 To 399 temp CX P i Next i Exit Function Ikkxkxkxk xkxkxkxk xkxkxk xkxkxk xk xkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkxkkk kxxk kxxk Error Handler TAKKKAKKKAKKKKKAKAKAKKKAKKAKH HH IH KH KH KH KH KH KH AK AH AH AH AH AH AH KH AH KH KH KU errHandler errNum Err 0 EClr berpr ft ob ein undefinierter Punkt verwendet wird If errNum 78 Then Print Point number P i is undefined Else Print ERROR Error number errNum occurred while Print trying to process point P i EndIf EResume Fend SPEL Language Reference Rev 3 5 299 SPEL Sprachreferenz OpBCD Anweisung s Setzt 8 Ausg nge gleichzeitig unter Verwendung des BCD Formats Bin r codierte Dezimalstelle Syntax OpBCD portNumber outData Parameter portNumber Integer Ausdruck dessen Wert zwischen 0 und 63 liegt und jeweils eine der 64 Ausgangsgruppen repr sentiert jede Gruppe enth lt 8 Ausg nge die die Standard und die erwe
271. hler im Motion Control Modul 4030 berlauf bei Berechnung des RMS Wertes des Drehmoments 4033 Der angebene Befehl unterst tzt keine Achsen des Pulse Generating Boards 4034 Der angebene Befehl wird von diesem Robotertyp nicht unterst tzt 4035 Die Zielposition ist in einem CP Befehl ohne r umliche Anordnung des Arms angegeben 4036 Die Zielposition in einem CP Bewegungsbefehl ist nicht verf gbar Die Zielposition ist zu nahe an der aktuellen Position 4037 Die Armorientierung zwischen Start und Zielposition ist unterschiedlich bei CP Befehl 4038 Zwei Punktpositionen eines ARC Befehls liegen zu dicht beieinander 4039 Die drei f r einen ARC Befehl angegebenen Punktpositionen liegen auf einer geraden Linie 4040 Kommunikationsfehler mit dem Pulse Generating Board 4041 Es wurde versucht einen Bewegungsbefehl im verbotenen Bereich auszuf hren SPEL Language Reference Rev 3 5 477 SPEL Fehlermeldungen Error Message 4042 Interrupt Detektionsfehler 4043 Der angebene Befehl wird nicht von diesem Robotertyp oder dieser Achse unterst tzt 4044 Die angebene Kurvenform wird nicht unterst tzt 4045 Der angebene Modus wird nicht unterst tzt 4046 Die Anzahl der Koordinaten liegt au erhalb des g ltigen Bereichs 4047 Nicht alle Punkte sind angegeben 4048 Die Parallelbearbeitung wurde angegeben bevor die Punkte bestimmt wurden
272. hreibung pointData wird zum Ende des spezifizierten Conveyor Queues hinzugef gt Es wird zusammen mit der aktuell gehaltenen Conveyor Pulse Position registriert Wenn sich die Entfernung zwischen pointData und dem vorangegangenen Punkt in dem Queue unterhalb nicht hinz Ein Fehle Hinweis des durch Cnv_QueReject definierten Wertes befindet werden die Punktdaten dem Queue ugef gt und es tritt auch kein Fehler auf r tritt dann auf wenn der Queue voll ist Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_RobotConveyor Anweisung Beispiel einer Cnv_QueAdd Anweisung Boo Lean found Integer i numFound Real Xr Y U Cnv_Trigger 1 VRun FindParts VGet FindParts Part NumberFound numFound For i 1 To numFound VGet FindParts Part CameraXYU i found x y u Cnv_QueAdd 1 Cnv_Point 1 x y Next i SPEL Language Reference Rev 3 5 81 SPEL Sprachreferenz Cnv_QueGet Funktion Gibt einen Punkt aus dem spezifizierten Conveyor Queue aus Syntax Cnv_QueGet conveyorNumber index Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert index Optional Integer Ausdruck welcher den Index der Daten repr sentiert die aus dem Queue ausgegeben werden R ckgabewerte Ein Roboterpunkt im Koordinatensystem des spezifizierten Conveyors Beschreibung Cnv_QueGet wird verwendet um Punkte aus dem Qu
273. hrung des Tasks an der Stelle fortzufahren wo er unterbrochen wurde Verwenden Sie Quit um die Ausf hrung eines Tasks vollst ndig abzubrechen Um den Taskstatus anzuzeigen klicken Sie auf das Task Manager Icon auf der EPSON RC Werkzeugleiste um den Taskmanager auszuf hren Verwandte Befehle Quit Resume Xqt SPEL Language Reference Rev 3 5 197 SPEL Sprachreferenz Beispiel einer Halt Anweisung Das folgende Beispiel zeigt eine Funktion mit Namen flicker die von Xqt gestartet wird tempor r von Halt gestoppt und danach von Resume wieder aufgenommen wird Function main Xqgt 2 flicker Do Wait 3 Halt flicker Wait 3 Resume flicker Loop Fend Function flicker Do On 1 wait 0 2 OFF 1 Wait 0 2 Loop Fend 198 F hrt die Flicker Funktion aus F hrt den Task Flicker 3 Sekunden lang aus H lt den Task Flicker 3 Sekunden lang an SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Here Anweisung s Teacht einen Roboterpunkt an der aktuellen Position ein Syntax Here point Parameter point Roboterpunkt Verwandte Befehle Here Funktion Beispiel einer Here Anweisung Here P1 Ist gleichbedeutend wie P1 P Here pick Ist gleichbedeutend wie P SPEL Language Reference Rev 3 5 199 SPEL Sprachreferenz Here Funktion Gibt die aktuelle Roboterposition als Punkt aus Syntax Here R ckgabewerte Ein Punkt der die aktuelle Roboterposition repr sentiert Beschreibu
274. hwindigkeitswert von SpeedS 800 betr gt gt SpeedS 800 Low Power State SpeedS is limited to 50 gt gt SpeedS Low Power State SpeedS is limited to 50 800 gt SPEL Language Reference Rev 3 5 399 SPEL Sprachreferenz Verwandte Befehle AccelS Arc Move Speed TSpeed TSpeedS SpeedS Beispiel SpeedS kann vom Online Fenster aus oder in einem Programm verwendet werden Unten angegeben sind einfache Beispiele beider Methoden Function speedtst Integer slow fast i slow 50 fast 500 For I 1 To 10 SpeedS slow Go PO Move P1 SpeedS fast Go PO Move P1 Next I Fend Vom Online Fenster aus kann der Anwender auch SpeedS Werte setzen gt speeds 1000 gt speeds 500 gt speed 30 Setzt die Point to Point Geschwindigkeit gt go pO Point to Point Bewegung gt speeds 100 Setzt die geradlinige Geschwindigkeit in mm s gt move P1 Geradlinige Bewegung 400 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz SpeedS Funktion Gibt die aktuelle SpeedS Einstellung aus Syntax SpeedS R ckgabewerte Real Zahl in mm s Verwandte Befehle SpeedS Statement SpeedS Beispiel Real savSpeeds savSpeeds SpeedS SPEL Language Reference Rev 3 5 401 SPEL Sprachreferenz SPELCom_Event Anweisung s Generiert ein Anwender Event f r ein VB Guide SPELCom Steuerelement die in einem Host Programm verwendet wird Syntax SPELCom_Event eventNumber msgArg1 msgArg2 msgA
275. ibt eine Zeichenkette aus die mit der definierten Zeichenkette identisch ist wobei die nachfolgenden Leerzeichen nicht angef hrt werden Syntax RTrim string Parameter string Zeichenkettenausdruck R ckgabewerte Spezifizierte Zeichenkette bei der die nachfolgenden Leerzeichen entfernt wurden Verwandte Befehle LTrim Beisspiel einer RTrim Funktion str data str RTrim str str data 376 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz RunDialog Anweisung s L sst einen EPSON RC Dialog aus einem SPEL Programm ablaufen Syntax RunDialog dialogID Parameter dialogID Integer Ausdruck der eine g ltige Dialog ID beinhaltet Diese Werte sind vordefinierte Konstanten wie unten angezeigt DLG_JOG 100 Run Jog and Teach dialog DLG_IOMON 102 Run I O Monitor DLG_ROBOTPANEL 104 Run Robot Control Panel DLG_VGUIDE 110 Run Vision Guide dialog Beschreibung Verwenden Sie RunDialog um EPSON RC Dialoge aus einem SPEL Task laufen zu lassen Der Task wird solange unterbrochen bis der Operator den Dialog schlie t Wenn Dialoge laufen die Roboter Befehle ausf hren sollten Sie sichergehen dass keine anderen Tasks den Roboter steuern w hrend der Dialog angezeigt wird Anderenfalls tritt ein Fehler auf Verwandte Befehle RunDialog Beispiel If Motor Off Then RunDialog DLG_ROBOTPANEL If Motor Off Then Print Motors are off aborting program Quit All EndIf EndIf SPEL Langu
276. iches zu bewegen Wenn mit dem Go Befehl explizite Koordinaten verwendet werden m ssen Sie sicherstellen dass die definierten Koordinaten sich innerhalb des Roboter Arbeitsbereiches befinden Jeglicher Versuch den Roboter au erhalb dieses g ltigen Arbeitsbereiches zu bewegen ruft eine Fehlermeldung hervor Verwandte Befehle Pulse Speed Sw Till SPEL Language Reference Rev 3 5 191 SPEL Sprachreferenz Go Beispiel Das folgende Beispiel zeigt eine einfache PTP Bewegung zwischen den Punkten PO und P1 und die darauf folgende geradlinige R ckkehr zum Punkt PO Sp ter im Programm bewegt sich der Arm geradlinig zu Punkt P2 bis Eingang 2 einschaltet Wenn Eingang 2 w hrend der Bewegung einschaltet dann verz gert sich der Arm bis zum vollst ndigen Stopp bevor er Punkt P2 erreicht und der n chste Programmbefehl ausgef hrt wird Funktionsbeispiel Integer i Home Go PO Go P1 For i 1 to 10 Go P i Next i Go P2 Till Sw 2 On If Sw 2 On Then Print Input 2 came on during the move and Print the robot stopped prior to arriving on Print point P2 Else Print The move to P2 completed successfully Print Input 2 never came on during the move End If Fend Einige Syntax Beispiele vom Online Fenster sehen aus wie folgt gt Go P X 50 Bewegt den Arm nur in die X Richtung 50 mm aus der aktuellen Position gt Go P1 Einfac
277. ie Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_QueUserData Funktion Beispiel einer Cnv_QueUserData Anweisung Cnv_QueUserData 1 1 angle SPEL Language Reference Rev 3 5 89 SPEL Sprachreferenz Cnv_QueUserData Funktion Gibt den Wert der Anwender Daten wieder der mit einem Objekt in dem Conveyor Queue verbunden ist aus Syntax Cnv_QueUserData conveyorNumber index Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert index Optional Integer Ausdruck welcher den Index der Objektnummer im Queue definiert R ckgabewerte Real Wert Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_QueUserData Anweisung Beispiel einer Cnv_QueUser Data Funktion Real userData userData Cnv_QueUserData 1 1 90 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Cnv_RobotConveyor Funktion Gibt den Conveyor aus der von einem Roboter verfolgt wird Syntax Cnv_RobotConveyor robotNumber Parameter robotNumber Integer Ausdruck welcher die Roboternummer repr sentiert R ckgabewerte Integer Conveyornummer 0 es wird kein Conveyor verfolgt Beschreibung Werden mehrere Roboter benutzt so kann Cnv_RobotConveyor verwendet werden um zu sehen welcher Conveyor aktuell von einem Roboter verfolgt wird Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option
278. ie Schleife der sich eine Verschachtelungsebene ber der Schleife befindet in dem Exit For auftritt Exit Funktion Verl sst sofort die Funktionsprozedur in der es erscheint Die Ausf hrung f hrt mit der Anweisung fort welche auf diejenige folgt die die Funktion aufgerufen hat Verwandte Befehle Do Loop For Next Function Fend Beipiel einer Exit Anweisung For i 1 To 10 If Sw 1 On Then Exit For EndIf Jump P i Next i SPEL Language Reference Rev 3 5 157 SPEL Sprachreferenz FileDateTime Funktion Gibt Dateidatum und zeit aus Syntax FileDateTime fileName Parameter fileName Ein Zeichenkettenausdruck der den zu berpr fenden Dateinamen enth lt Laufwerk und Pfad k nnen ebenfalls enthalten sein R ckgabewerte Gibt eine Zeichenkette aus die Datum und Uhrzeit der letzten nderung in folgendem Format enth lt m d yyyy hh mm ss Verwandte Befehle FileExists FileLen Beispiel einer FileDateTime Funktion Print FileDateTime c data myfile txt 158 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz FileExists Funktion berpr ft die Existenz einer Datei Syntax FileExists fileName Parameter fileName Ein Zeichenkettenausdruck der den zu berpr fenden Dateinamen enth lt Laufwerk und Pfad k nnen ebenfalls enthalten sein R ckgabewerte WAHR wenn die Datei existiert FALSCH wenn sie nicht existiert Verwandte Befehle FolderExists Beispiel einer
279. ie aktuellen Werte werden jedoch auf niedrige Werte begrenzt Die aktuellen Beschleunigungswerte sind wirksam wenn Power auf High eingestellt ist und der Attend Modus ausgeschaltet ist Der Unterschied zwischen den Befehlen Accel und AccelS Es ist wichtig zu wissen dass der Accel Befehl nicht die Beschleunigungs und Verz gerungswerte f r geradlinige und Bogenbewegungen einstellt D h f r Bewegungen die durch die Befehle Move und Arc initiiert wurden Der Befehl AccelS wird verwendet um Beschleunigungs und Verz gerungsrampen f r geradlinige und Bogenbewegungen einzustellen Verwandte Befehle AccelS Go Jump Power Pulse Speed TGo SPEL Language Reference Rev 3 5 23 SPEL Sprachreferenz Beispiel f r eine Accel Anweisung Das folgende Beispiel zeigt ein einfaches Bewegungsprogramm in welchem Beschleunigung Accel und Geschwindigkeit Speed unter Zuhilfenahme vordefinierter Variablen eingestellt werden 24 Function acctest Integer slow slow fast slow slow slow slow Accel accslow 20 100 20 20 100 100 Speed slow Jump pick On gripper Accel accfast Speed fast Jump place Fend lt Beispiel 2 gt accslow decslow fast accfast decfast setzt die slow speed Variable setzt die high speed Variable setzt die slow acceleration Variable setzt die slow deceleration Variable setzt die fast acceleration Variable setzt die fast deceleration Variable decslow decfast Neh
280. iehen des Not Halt Schalters geschieht gibt EStopOn TRUE aus Sie m ssen Reset oder Reset Emergency ausf hren um den Zustand zu l schen EStopOn entspricht Stat 0 And amp H100000 lt gt 0 Verwandte Befehle PauseOn SafetyOn Stat Beipiel einer EStopOn Funktion Function main Trap Emergency Call eTrap Do Print Program running Wait 1 Loop Fend Function eTrap String msg Integer ans msg Estop Is on Please clear it and Retry Do While EStopOn MsgBox msg MB_RETRYCANCEL Clear E stop and click Retry ans If ans IDRETRY Then Reset Else Exit Function EndIf Wait 1 Loop Restart Fend SPEL Language Reference Rev 3 5 155 SPEL Sprachreferenz Eval Funktion F hrt eine Online Fenster Anweisung aus und gibt den Fehlerstatus aus Syntax Eval command reply Parameter command Ein Zeichenkettenausdruck der einen Online Modusbefehl enth lt reply Optional Eine Zeichenkettenvariable die die Antwort des Befehls beinhaltet R ckgabewerte Der Fehlercode der vom Ausf hren des Befehls ausgegeben wird Beschreibung Eval wird verwendet um Online Befehle von einem anderen Ger t aus auszuf hren Beispielsweise k nnen Sie Befehle ber RS 232 oder TCP IP eingeben und sie dann ausf hren Verwenden Sie den reply Parameter um die Anwort von dem Befehl auszugeben Wenn z B der Befehl Print Sw 1 lautete w rde reply eine 1 oder eine 0 enthal
281. iert den Koordinatenwert der Z Achse eines Punktes bzw gibt ihn aus Definiert den Koordinatenwert der U Achse eines Punktes bzw gibt ihn aus Gibt den Pulse Wert einer Achse aus Gibt den Achswinkel der aktuellen Position aus Gibt die Roboterachsnummer f r den zuletzt aufgetretenen Fehler aus Gibt die Zeilennummer des Fehlers aus Gibt die Fehlernummer aus Gibt die Tasknummer des Fehlers aus Gibt den Status der WAIT Bedingung Zeit berschreitung und des WAIT Timer Intervalls aus Gibt den aktuellen Task aus Gibt die Anzahl von Zeilen in einem Kommunikationspuffer aus Gibt den Status der Robotersteuerung aus Gibt den Sinuswert eines Winkels aus Gibt den Kosinuswert eines Winkels aus Gibt den Tangenswert eines Winkels aus Gibt den Arkustangens aus Gibt den Arkustangens auf der Basis der X Y Position aus Gibt die Quadratwurzel einer Zahl aus SPEL Language Reference Rev 3 5 Zusammenfassung der SPEL Befehle Abs Sgn Int Not LShift RShift Gibt den Absolutwert einer Zahl aus Gibt das Vorzeichen einer Zahl aus Konveriiert eine relle Zahl in einen Integer NICHT Operator Verschiebt Bits nach links Verschiebt Bits nach rechts Zeichenketten Befehle String Asc Chr Left Mid Right Len Space Str Val ErrMsg LCase UCase LTrim RTrim ParseStr FmtStr Definiert Zeichenkettenvariablen Gibt den ASCII wert eines Zeichens aus Gibt das Zeichens e
282. imZ bestimmt die maximale H he die die Z Achse erreicht wenn der Jump Befehl verwendet wird wobei der Roboterarm die Z Achse hebt sich in der X Y Ebene bewegt und die Z Achse wieder senkt Einfach ausgedr ckt ist LimZ der Vorgabewert f r die Z Achse der verwendet wird um die h chste zu verwendende Position zu definieren die bei einer durch den Jump Befehl ausgel sten Bewegung verwendet wird Wenn ein spezifischer LimZ Wert im Jump Befehl nicht definiert ist wird die letzte LimZ Einstellung f r den Jump Befehl verwendet Hinweis Zur cksetzen des LimZ Wertes auf 0 Ein Neustart der Software und die Ausf hrung der Befehle SFree SLock Motor On und Verinit setzen den LimZ Wert auf 0 zur ck Der LimZ Wert ist nicht g ltig f r Arm Werkzeug oder Lokale Koordinaten Die H henbegrenzung f r die Z Achse entspricht dem Z Achsen Wert f r das Roboter Koordinatensystem Es ist nicht der Z Achsen Wert f r Arm Tool oder lokale Koordinaten Treffen Sie daher die notwendigen Schutzvorkehrungen f r den Gebrauch von Werkzeugen oder Greifern mit unterschiedlicher Betriebsh he Verwandte Befehle Jump Beispiel einer LimZ Anweisung Das Beipiel unten zeigt die Verwendung von LimZ in Jump Operationen Function main LimZ 10 Setzt den LimZ Standardwert Jump P1 Bewegt die Achse f r den Jump Befehl aufw rts in die Position Z 10 Jump P2 LimZ 20 Bewegt die Achse f r den Jump Befehl aufw rts in die Position Z 2
283. in eiaa al BR a 10 Kraftmessungsbefehle rm ee RE a ERRE 11 Sicherheitsbefehle 2 rs 2 ee ee rl 11 SPEL Sprachreferenz 12 SPEL Fehlermeldungen 465 Glossar 483 SPEL Language Reference Rev 3 5 Zusammenfassung der SPEL Befehle Im folgenden lesen Sie ein Zusammenfassung der SPEL Befehle Systemverwaltungsbefehle Reset Stat Ver Date Time Date Time Hour Time Errhist 12 Setzt die Robotersteuerung zur ck Gibt den Status der Robotersteuerung aus Zeigt die Systemdaten der Robotersteuerung an Stellt das Systemdatum ein Stellt die Systemzeit ein Gibt das Systemdatum aus Gibt die Systemzeit als Zeichenkette aus Zeigt die Betriebsstunden der Robotersteuerung an oder gibt sie aus Stellt die Systemzeit ein Zeigt ein Fehlerprotokoll an SPEL Language Reference Rev 3 5 Zusammenfassung der SPEL Befehle Roboter Steuerungsbefehle Calib CalPls Hofs Mcal MCordr Mcorg MCofs HTest Power Motor SFree SLock Jump Arch LimZ Sense Js Jt Go Pass Pulse TGo TMove Till Kalibriert die Motoren Definiert bzw zeigt die Kalibrierungswerte Definiert die Offset Pulse zwischen Encoder Ursprung und Home Sensor oder gibt sie aus Kalibriert Inkremental Encoder Roboter Definiert die Reihenfolge der Achsenbewegung bei der Maschinenkalibrierung bzw gibt die aktuellen Werte aus Berechnet die Parameter f r die Maschinenkalibrierung Definiert die Param
284. in oder aus Strecken Sie den Arm aus wie in der gepunkteten Linie unten gezeichnet so dass er parallel zur Y Achse der Roboterkoordinaten steht D h direkt von der Basis wegzeigend In dieser Position schalten sich die LEDs HOME1 und HOMEZ ein 4 W hrend Sie die LED HOME2 beobachten bewegen Sie das zweite Armgelenk von Hand im Uhrzeigersinn W hrend Sie das zweite Armgelenk bewegen halten Sie das erste Armgelenk fest so dass es sich nicht bewegt Stoppen Sie die Bewegung des zweiten Armgelenks ungef hr in der Mitte des Bereichs in dem die HOME2 LED sich zum ersten Mal ausschaltet 5 Als n chstes w hrend Sie die LED HOME1 beobachten bewegen Sie das erste Armgelenk von Hand im Uhrzeigersinn Stoppen Sie die Bewegung des ersten Armgelenks ungef hr in der Mitte des Bereichs in dem die HOME1 LED sich zum ersten Mal ausschaltet Der ungef hre Mittelpunkt sollte sich ca 8 Grad von der Mittellinie der Y Achse entfernt befinden Der ungef hre Mittelpunkt des zweiten Armgelenks wird sich ca 7 Grad von der Mittellinienposition der ersten Gelenksachse entfernt befinden Sie unten stehende Zeichnung 272 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz 7 deg max 6 Schalten Sie mit Hilfe des Motor On Befehls die Motoren ein 7 Wenn Sie in dieser Position den Mcorg Befehl ausf hren bewegen sich die erste und zweite Achse gegen den Uhrzeigersinn Die maximale Bewegung sollte 15 f r Achse
285. ine zu gehen um den Fehler automatisch zu beheben Bei Empfang eines Fehlers verzweigt OnErr die Steuerung zur im OnErr Befehl designierten Zeilennummer oder dem entsprechenden Label Auf diese Art und Weise wird der Task nicht abgebrochen und dem Anwender wird die M glichkeit gegeben den Fehler automatisch zu beheben Dies macht den Arbeitsablauf in Roboter Arbeitszellen wesentlich reibungsloser da potentielle Probleme immer auf die gleiche Weise behandelt und behoben werden W hrend der Ausf hrung der Fehlerbehandlungsroutine ein Fehlerbehandlungs Unterprogramm muss der Fehler behoben werden damit die Steuerung in das Hauptprogramm zur ckkehren kann Dies wird mit dem EClIr Befehl erreicht Siehe unten stehende Einschr nkungen Sobald der ECiIr Befehl den Fehler gel scht hat kann die Steuerung zu der Anweisungs Zeile zur ckkehren welche direkt auf diejenige Zeile folgt in welcher der Fehler zuerst auftrat Wenn der OnErr Befehl mit dem 0 Parameter spezifiziert wird wird die aktuelle OnErr Einstellung gel scht D h nach der Ausf hrung von OnErr 0 wird die Programmausf hrung unterbrochen wenn ein Fehler auftritt Tipps Platzierung des OnErr Befehls Bedenken Sie bitte dass die Fehlerbehandlung deaktiviert ist bis der OnErr Befehl ausgef hrt wurde Daher ist es normalerweise eine gute Idee den OnErr Befehl an den Anfang eines Programms zu setzen damit Fehler von Programmbeginn an automatisch bearbeitet werden k nnen
286. inen Punktausdruck verwendet CP Optional Spezifiziert die Continuous Path CP kontinuierlicher Weg Bewegung searchExpr Optional Ein Till oder Find Ausdruck Till Find Till Sw expr Ein Aus Find Sw expr Ein Aus lal Optional Parallelbearbeitungsanweisungen k nnen hinzugef gt werden um E A und andere Befehle w hrend der Bewegung auszuf hren Beschreibung Go bewegt die Achsen eins bis vier des Roboterarmes gleichzeitig in einer PTP Bewegung Das Ziel des Go Befehls kann in vielerlei Hinsicht definiert werden Verwenden eines spezifischen Punktes auf welchen man sich zubewegt Zum Beispiel Go P1 Verwenden einer expliziten Koordinatenposition auf welche man sich zubewegt Zum Beispiel Go 50 400 0 0 Verwenden eines Punktes mit Koordinatenversatz Zum Beispiel Go P1 X 50 Verwenden eines Punktes mit einem andere Koordinatenwert Zum Beispiel Go P1 X 50 Der Speed Befehl bestimmt die Armgeschwindigkeit f r die Bewegung welche durch den Go Befehl initiiert wurde Der Accel Befehl definiert die Beschleunigung Der Go Befehl veranlasst den Arm immer dazu vor dem Erreichen der Zielposition mit dem Abbremsen zu beginnen Hinweise Der Unterschied zwischen Go und Move Sowohl der Move als auch der Go Befehl veranlassen den Roboterarm zu einer Bewegung Der prim re Unterschied zwischen den beiden Befehlen ist jedoch dass der Go Befehl eine PTP Bewegung verursacht w hrend der Move Befehl den Arm ger
287. iner Dialogbox an wartet darauf dass der Anwender Text eingibt oder einen Button anw hlt und gibt den Inhalt der Box aus Syntax InputBox prompt title default answer Parameter prompt Zeichenkettenausdruck der als Nachricht im Dialogfeld angezeigt wird title Zeichenkettenausdruck der in der Titelzeile des Dialogfensters angezeigt wird default Zeichenkettenausdruck der im Textfenster als Vorgabeantwort angezeigt wird Wenn keine Vorgabe gew nscht wird ist eine leere Zeichenkette zu verwenden answer Eine Zeichenkettenvariable die enth lt was der Anwender eingibt Wenn der Anwender nicht eingibt oder auf Cancel klickt so lautet diese Zeichenkette Beschreibung InputBox zeigt den Dialog an und wartet darauf dass der Anwender auf OK oder Cancel klickt answer ist eine Zeichenkette die enth lt was der Anwender eingegeben hat Verwandte Befehle MsgBox Beispiel einer InputBox Anweisung Diese Funktion zeigt ein InputBox Beispiel Function GetPName String tprompt def title answer tprompt Enter part name title Sample Application def NamPart InputBox tprompt title def answer If answer lt gt Then NamPart answer EndIf Fend SPEL Language Reference Rev 3 5 229 SPEL Sprachreferenz Beispiel Ausgabe Das folgende Bild zeigt ein Beispiel der Ausgabe des InputBox Beispiel Codes wie oben gezeigt Sample Application x Enter part name 230 SPEL Langu
288. ines numerischen ASCIlI Wertes aus Gibt eine Teilkette von der linken Seite einer Zeichenkette aus Gibt eine Teilkette aus Gibt eine Teilkette von der rechten Seite einer Zeichenkette aus Gibt die L nge einer Zeichenkette aus Gibt eine Zeichenkette aus die Leerzeichen enth lt Konvertiert eine Zahl in eine Zeichenkette Konvertiert eine numerische Zeichenkette in eine Nummer Gibt die Fehlermeldung aus Konvertiert eine Zeichenkette in Kleinbuchstaben Konvertiert eine Zeichenkette in Gro buchstaben Entfernt Zeichen von der linken Seite der Zeichenkette Entfernt Zeichen von der rechten Seite der Zeichenkette Analysiert eine Zeichenkette syntaktisch und gibt eine Textelement Matrix aus Formatiert eine Zahl oder Zeichenkette Logische Operatoren And Or LShift Mod Not RShift Xor SPEL Language Reference Rev 3 5 F hrt eine logische und Bit weise UND Operation durch ODER Operator Verschiebt Bits nach links Modulo Operator Negation Verschiebt Bits nach rechts EXKLUSIV ODER Operator Zusammenfassung der SPEL Befehle Befehle zur Variablendefinition Boolean Byte Double Integer Long Real String Deklariert Boolesche Variablen Deklariert Byte Variablen Deklariert doppelte Variablen Deklariert Integer Variablen Deklariert Long Integer Variablen Deklariert Real Variablen Deklariert Zeichenkettenvariablen Mit VB Guide benutzte Befehle SPELCom_Event SPELCom_Return L st ei
289. int CP searchExpr Parameter Hinweise zum midpoint Mittelpunkt Punktausdruck Der Mittelpunkt vorher vom Anwender geteacht ber den der Arm auf seinem Weg vom aktuellen Punkt zum zum endPoint Endpunkt hinweg verf hrt Hinweise zum endpoint Endpunkt Punktausdruck Der Endpunkt vorher vom Anwender geteacht zu welchem der Arm w hrend einer Bogenbewegung verf hrt Dies ist die Endposition am Ende der Bogenbewegung CP Optional Spezifiziert die Continuous Path kontinuierlicher Weg Bewegung Hinweise zum searchExpr Suchausdruck Optional Ein Till oder Find Ausdruck Till Find Till Sw expr Ein Aus Find Sw expr Ein Aus La Parallelbearbeitungsanweisungen d rfen zusammen mit der Arc Anweisung verwendet werden Diese sind optional Bitte lesen Sie die Beschreibung der Parallelbearbeitungsanweisungen f r detailliertere Informationen Beschreibung Arc wird verwendet um den Arm in einer Kreisbewegung von seiner gegenw rtigen Position ber den Mittelpunkt zum Endpunkt zu verfahren Das System berechnet automatisch eine auf drei Punkten basierende Kurve aktuelle Position Endpunkt und Mittelpunkt und bewegt sich an dieser Kurve entlang bis der als Endpunkt definierte Punkt erreicht wird Die Koordinaten von Mittel und Endpunkt m ssen geteacht werden bevor der Arc Befehl ausgef hrt wird Die Koordinaten k nnen nicht im Arc Befehl selber spezifiziert werden Einstellen von Geschwindigkeit un
290. intNumber O betr gt wird 1 ausgegeben wenn HomeSet ausgef hrt wurde und 0 wenn HomesSet nicht ausgef hrt wurde Verwandte Befehle Homeset Anweisung Beispiel einer HomeSet Funktion Dieses Beispiel verwendet die Homeset Funktion in einem Programm Function DisplayHomeset Integer i If HomeSet 0 FALSE Then Print HomeSet is not defined Else Print HomeSet values For i 1 To 4 Print J i HomeSet i Next i EndIf Fend 208 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Hordr Anweisung s Definiert die Reihenfolge in welcher die Achsen in ihre Home Position zur ckkehren oder zeigt sie an Syntax Hordr step1 step2 step3 step4 Parameter step1 Bitmuster aus dem hervorgeht welche Achsen w hrend des 1 Schrittes des Homing Prozesses in ihre Home Position zur ckgef hrt werden sollen Eine beliebige Anzahl von Achsen von 0 bis zu allen 4 kann w hrend des 1 Schrittes in ihre Home Position zur ckgef hrt werden bzgl der Definition von Bitmustern siehe unten step2 Bitmuster aus dem hervorgeht welche Achsen w hrend des 2 Schrittes des Homing Prozesses in ihre Home Position zur ckgef hrt werden sollen Eine beliebige Anzahl von Achsen von 0 bis zu allen 4 kann w hrend des 2 Schrittes in ihre Home Position zur ckgef hrt werden bzgl der Definition von Bitmustern siehe unten step3 Bitmuster aus dem hervorgeht welche Achsen w hrend des 3 Schrittes des Homing Prozess
291. ionsaustausch Ein weit verbreitetes numerisches System zur Kodierung von Buchstaben Ziffern Satzzeichen Zeichen und anderen Zeichen wie Bin rzahlen 12 SPEL Language Reference Rev 3 5 Glossar asynchron Das Konzept Zeichen zwischen einem Start und ein Stop Bit einzuschlie en wird als asynchrone bertragung bezeichnet Das Startbit signalisiert der empfangenden Seite die Zeit wann nach den Zeichenbits Ausschau gehalten werden soll das Stopbit l sst es die Dateneinheit wissen wenn das gesamte Zeichen empfangen wurde Das timing f r die Kommunikation wird von den Start und Stopbits bestimmt Daher k nnen Zeichen bermittlungen aufgrund der asynchronen bermittlungstechnik in sporadischen oder nicht synchronisierten Intervallen erfolgen d h asynchron bedeutet nicht zeitlich festgelegt nicht regelm ig oder nicht synchronisiert Ausrichtung des Armes Bei der Verwendung von SCARA Robotern bezieht sich die Ausrichtung des Armes auf die Ausrichtung des Ellbogengelenks Es gibt zwei m gliche Ausrichtungen Lefty Linksarm oder Righty Rechtsarm Wenn der Ellbogen wie ein menschlicher linker Arm konfiguriert ist wird dies Linksarm Orientierung genannt Wenn der Ellbogen wie ein menschlicher rechter Arm konfiguriert ist wird dies Rechtsarm Orientierung genannt Beschleunigung Die Rate um welche der Roboterarm zu Beginn einer bestimmten Bewegung beschleunigt oder bis zur Nutzer definierten Geschwindigkeit hochl
292. ioset Print Input 2 came on during the move and Print the robot stopped prior to arriving on Print point P2 GoTo continue movefin Print The move to P2 completed successfully Print Input 2 never came on during the move continue Fend Dieses Beispiel verwendet Move mit CP Das Diagramm unten zeigt eine Bogenbewegung die am Punkt P100 ihren Anfang nimmt in einer geraden Linie durch Punkt P101 l uft an welchem der Arm beginnt einen Bogen zu schlagen Der Bogen wird dann fortgesetzt durch den Punkt P102 und weiter bis P103 Danach bewegt sich der Arm in einer geraden Linie zu Punkt P104 wo er sich dann endlich bis zum vollst ndigen Stopp verz gert Bitte beachten Sie dass sich der Arm zwischen den einzelnen Punkten nicht verz gert bis er am Punkt P104 ankommt Die folgende Funktion w rde eine solche Bewegung generieren P103 P104 P102 P101 P100 Function CornerArc Go P100 Move CP P101 Stoppt nicht bei P101 Arc CP P102 P103 Stoppt nicht bei P103 Move P104 Verz gert um bei P104 zu stoppen Fend SPEL Language Reference Rev 3 5 281 SPEL Sprachreferenz MsgBox Anweisung s Zeigt eine Nachricht in einem Dialogfenster an und wartet darauf dass der Anwender einen Button ausw hlt Syntax MsgBox msgS type title answer Parameter msg Die Nachricht die angezeigt wird type Ein numerischer Ausdruck der die Summe von Werten darstellt welche die Anzahl und den Typ der anzuzeigen
293. ische Daten vom Steuerger t und ordnet die Daten der den Variable n zu die mit dem Input Befehl verwendet werden Wenn der Input Befehl ausgef hrt wird erscheint ein Prompt am Steuerger t Nach der Eingabe der Daten bet tigen Sie bitte die Return Enter Taste auf der Tastatur Hinweise Regeln f r numerische Eingaben Wenn numerische Werte eingegeben werden sollen und andere als numerische Werte eingegeben werden au er dem Trennzeichen Komma streicht die Input Anweisung die nicht numerischen und alle folgenden Werte Regeln f r Zeichenketten Eingaben Wenn Zeichenketten eingegeben werden sind numerische und Buchstabenzeichen als Daten gestattet Weitere Regeln f r den Input Befehl Wenn im Befehl mehr als eine Variable angegeben ist m ssen die Eingaben numerischer Daten f r jede Variable durch Kommazeichen voneinander getrennt werden Numerische Variablennamen und Zeichenketten Variablennamen sind gestattet Der Eingabe Datentyp muss jedoch dem Variablentyp entsprechen Potentielle Fehler Die Anzahl der Variablen und der Eingabedaten sind unterschiedlich F r Mehrfachvariablen muss die Anzahl der Eingabedaten mit der Anzahl der Eingabe Variablennamen bereinstimmen Wenn sich die Anzahl der Variablen wie sie im Befehl definiert ist unterscheidet von der Anzahl der von der Tastatur empfangenen numerischen Daten tritt Fehler Nr 30 auf Verwandte Befehle Input Line Input Line Input Print String
294. ision verbleibende Rest ist dann der R ckgabewert f r den Mod Befehl Verwandte Befehle Abs Atan Atan2 Cos Int Not Sgn Sin Sqr Str Tan Val Beispiel f r den Mod Operator Das Beispiel unten zeigt an ob eine Zahl var1 gerade oder ungerade ist Wenn die Zahl GERADE ist gibt das Ergebnis des Mod Befehls eine O aus Ist die Zahl UNGERADE gibt das Ergebnis des Mod Befehls eine 1 aus Function modtest Integer varl result Print Enter an integer number Input varl result varl Mod 2 If result 0 Then IRRE REN Print Result result eek Print The number is EVEN Else Print Result result Print The number is ODD EndIf Fend Einige weitere Beispiele des Mod Befehls vom Online Fenster gt Print 36 Mod 6 gt 0 gt Print 25 Mod 10 gt 5 gt 276 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Motor Anweisung s Schaltet den Motorenstrom f r alle Achsen des aktuellen Roboters Ein oder Aus Syntax Motor ON OFF Parameter ON OFF Das Schl sselwort ON wird verwendet um den Motorenstrom einzuschalten Das Schl sselwort OFF wird verwendet um den Motorenstrom auszuschalten Beschreibung Der Befehl Motor On wird verwendet um den Motorenstrom einzuschalten und die Bremsen f r alle Achsen freizuschalten Motor Off wird verwendet um den Motorenstrom auszuschalten und die Bremsen anzuziehen In einem Multi Roboter System sollten
295. it SPEL definiert werden k nnen Der Arbeitsbereich der mit XYLim Werten angelegt wurde bezieht sich nur auf die Zielpositionen von Bewegungsbefehlen und nicht auf Bewegungsbahnen von der Start zur Zielposition Daher kann sich der Arm w hrend der Bewegung au erhalb des XYLim Bereichs bewegen D h der XYLim Bereich hat keine Auswirkungen auf den Pulse Befehl Hinweise Ausschalten der berpr fung der XY Ebenen Begrenzung Es gibt viele Anwendungen f r die keine berpr fung der XY Ebenen Begrenzung n tig ist Aus diesem Grund gibt es eine einfache Methode diese berpr fung auszuschalten Um die berpr fung der XY Ebenen Begrenzung auszuschalten setzen Sie die XY Ebenen Begrenzungswerte minX maxX minY und maxY auf 0 Zum Beispiel XYLim O O O 0 Vorgabe Grenzwerte der XY Ebene Es gibt einige F lle die das System dazu veranlassen alles auf die urspr nglichen Vorgabewerte zur ckzusetzen Zum Beispiel veranlasst der Verinit Befehl dass alle Systemwerte auf ihre Vorgabewerte zur ckgesetzt werden Die Vorgabewerte f r den XYLim Befehl lauten 0 0 0 0 berpr fung der XY Ebenen Begrenzung ist ausgeschaltet Tipp Point amp Click Installation f r XYLim EPSON RC hat ein Point amp Click Dialogfenster zur Definition der Grenzwerte der XY Ebene Die einfachste Methode um die XYLim Werte zu setzen ist die Verwendung des XYLim Karteikarte Roboterparameter Befehl Projektmen 460 SPEL Language Re
296. it Ger ten au erhalb der Steuerung kommunizieren Verwandte Befehle In In InBCD Off On On OpBCD Oport Out Out Sw Sw Wait Beispiel einer Off Anweisung Das folgende Beispiel zeigt 2 Tasks Jeder der beiden Tasks hat die M glichkeit Bewegungsbefehle zu initiieren Jedoch wird ein Sicherungsmechanismus zwischen den beiden Tasks verwendet um sicherzustellen dass ein Task erst dann die Kontrolle ber die Bewegungsbefehle des Roboters erh lt wenn der andere Task deren Verwendung abgeschlossen hat Dies erm glicht es 2 Tasks Bewegungsbefehle korrekt und in geordneter vorhersehbarere Art und Weise auszuf hren Sw wird in Kombination mit dem Wait Befehl verwendet um zu warten bis der Merker Nr 1 den richtigen Wert erreicht hat von dem an es sicher ist eine neue Bewegung auszuf hren On und Off werden verwendet um den S W Merker f r die richtige Synchronisierung ein oder auszuschalten Function main Integer I off 1 Xqt 2 task2 For I 1 to 100 Wait Sw S1 0 Go P i On 1 Next I Fend 290 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Function task2 Integer I For I 101 to 200 Wait Sw S1 1 Go P i off EST Next I Fend Andere einfache Beispiele vom Online Fenster sehen aus wie folgt On 1 Schaltet den Merker 1 ein Print Sw 1 off S1 Schaltet den Merker 1 aus Print Sw 1 OY Yyy SPEL Language Reference Rev 3 5 291 SPEL Sprachreferenz OLRate Anwei
297. iterten Ausg nge des Systems bilden Die portNumber Auswahl entspricht den folgenden Ausg ngen PortNummer Ausg nge 0 0 7 1 8 15 2 16 23 3 24 31 63 504 511 outData Integer Ausdruck zwischen 0 und 99 der das Ausgangsmuster f r die mit der Anweisung portNumber ausgew hlte Ausgangsgruppe repr sentiert Die 2 Ziffer Einer Ziffer genannt wird repr sentiert durch die unteren 4 Ausg nge in der ausgew hlten Gruppe und die 1 Ziffer Zehner Ziffer genannt wird repr sentiert durch die oberen 4 Ausg nge in der ausgew hlten Gruppe Beschreibung OpBCD setzt 8 Ausg nge gleichzeitig unter Verwendung des BCD Formats Die Standard und Erweiterungs Ausg nge werden in Gruppen von 8 unterteilt Der portNumber Parameter f r den OpBCD Befehl definiert welche 8er Ausgangsgruppe verwendet werden soll wobei portNumber 0 die Ausg nge 0 7 bedeutet portNumber 1 bedeutet die Ausg nge 8 15 etc Sobald eine Portnummer ausgew hlt wurde d h es wurde eine Gruppe von 8 Ausg ngen ausgew hlt muss ein spezifisches Ausgangsmuster definiert werden Dies wird im BCD Format unter zuhilfenahme des outdata Parameters getan Der outdata Parameter kann 1 oder 2 Ziffern haben G ltige Eintr ge liegen im Bereich von O bis 99 Die erste Stelle oder die Zehnerstelle entspricht den oberen 4 Ausg ngen der Gruppe von 8 Ausg ngen ausgew hlt von portNumber Die zweite Stelle oder die Einerstelle entspricht den unteren 4 Ausg ngen der Gruppe von 8
298. itig Definiert 8 Ausg nge gleichzeitig unter Verwendung des BCD Formats Schaltet einen Merker ein Schaltet einen Merker aus Gibt den Status eines Merkers aus Liest 8 Merker Setzt 8 Merker bzw gibt deren Status aus Gibt den Status eines Merkers vor der letzten Zustands nderung aus Wartet auf eine Bedingung oder Zeit Definiert das Zeitlimit f r die WAIT Anweisung Gibt den Status der WAIT Bedingung Zeit berschreitung und des WAIT Timer Intervalls aus Aufforderung zur Eingabe einer oder mehrerer Variablen ber das aktuelle Anzeigeger t Zeigt Daten auf dem aktuellen Anzeigeger t an Dateneingabe einer Zeichenkette vom aktuellen Anzeigeger t Aufforderung zur Eingabe einer oder mehrerer Variablen aus einer Datei oder von einem Port Datenausgabe an eine Datei oder einen Port Eingabe einer Zeichenkette aus einer Datei oder von einem Port Gibt die Anzahl von Zeilen in einem Kommunikationspuffer aus L scht den EPSON RC Run oder den Bedienerfenster Textbereich Beendet eine Drucksequenz von LPrint Anweisungen und sendet an den Drucker Zeigt die Eingabebox an und gibt die Anwender Antwort aus Sendet eine Zeile zum Standarddrucker Zeigt dem Anwender eine Nachricht an SPEL Language Reference Rev 3 5 Zusammenfassung der SPEL Befehle Arm ArmSet Tool TLSet Local Base Function For Next GoSub Return GoTo Call If Then Else Endlf Else Select Send While W
299. k die die Roboterarmgeschwindigkeit Speed und SpeedS die Beschleunigung Accel und AccelS und den LimZ Parameter betreffen Wichtig SFree und seine Verwendung mit der Z Achse Die Z Achse hat elektronische Bremsen Daher erlaubt es die Einstellung von SFree f r die Z Achse nicht sofort die Z Achse zu bewegen Um die Z Achse von Hand zu bewegen muss die Bremse gel st werden Bet tigen Sie dazu den Schalter der Bremse oben auf dem Roboterarm Ausf hrung von Bewegungsbefehlen w hrend die Achsen im SFree Status sind Der Versuch einen Bewegungsbefehl w hrend des SFree Status auszuf hren verursacht einen Fehler im Standardstatus der Steuerung Um jedoch Bewegungen zu erlauben solange 1 oder mehrere der Achsen im SFree Status sind bet tigen Sie den Optionsschalter Bewegung unter sfree erm glichen Allow Motion with one or more axes free Dieser Schalter kann ber die Roboterkonfigurations Dialogbox in der Tabelle mit den Optionsschaltern eingestellt werden Sie erreichen die Dialogbox aus dem Setup Men im EPSON RC Verwandte Befehle LimZ Motor SFree Function SLock SPEL Language Reference Rev 3 5 387 SPEL Sprachreferenz Beispiel einer SFree Anweisung Dies ist ein einfaches Beispiel f r die Verwendung einer SFree Anweisung Function GoPick Speed pickSpeed Gibt die Ansteuerung der Achse 1 und Achse 2 frei und kontrolliert die z Achse f r die Teil Installation SFree 1 2 Go pick SLock 1 2 Stell
300. kann jedoch leicht zu Problemen f hren wenn man sich mit zu vielen GoTo Anweisungen innerhalb des Quellcodes bewegt Potentielle Fehler Verzweigen zu einer nicht existierenden Anweisung Wenn der GoTo Befehl versucht die Steuerung an eine nicht existente Zeilennummer oder Label zu verzweigen wird Fehler Nr 8 ausgegeben Verwandte Befehle GoSub OnErr SPEL Language Reference Rev 3 5 195 SPEL Sprachreferenz Beispiel einer GoTo Anweisung Das folgende Beispiel zeigt eine einfache Funktion die einen GoTo Befehl verwendet um zu einem Zeilenlabel zu verzweigen Function main If Sw 1 Off Then GoTo mainAbort EndIf Print Input 1 was On continuing cycle Exit Function mainAbort Print Input 1 was OFF cycle aborted Fend 196 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Halt Anweisung Ss Unterbricht vor bergehend die Ausf hrung eines spezifizierten Tasks Syntax Halt taskldentifier Parameter taskldentifier Taskname oder Integer Ausdruck der die Tasknummer repr sentiert Ein Taskname ist der Funktionsname der in einer Xqt Anweisung verwendet wird oder eine Funktion die vom Run oder vom Operator Fenster aus gestartet wird Wenn ein Integer Ausdruck verwendet wird liegt der Bereich zwischen 1 und 32 Beschreibung Halt unterbricht vor bergehend die Ausf hrung des aktuellen Tasks wie durch den Tasknamen oder die Nummer definiert Verwenden Sie Resume um mit der Ausf
301. ktion zu wechseln Die Programmausf hrung f hrt dann in dieser Funktion fort bis ein Exit Funktion oder ein Fend Befehl erreicht wird Bei der n chsten Anweisung nach dem Call Befehl wird die Steuerung dann wieder an die urspr ngliche Aufruf Funktion zur ckgegeben Sie k nnen die Klammern f r Call Schl sselwort und Argument weglassen Als Beispiel sehen Sie hier eine Call Anweisung die mit oder ohne Call Schl sselwort verwendet wird Call MyFunc 1 2 MyFunc 1 2 Verwenden Sie GoSub Return um ein Unterprogramm innerhalb einer Funktion auszuf hren Verwandte Befehle Function GoSub Beispiel einer Call Anweisung lt File1 MAIN PRG gt Function main Call InitRobot 1 Fend lt File2 INIT PRG gt Function InitRobot robotNumber As Integer Integer savRobot savRobot Robot Robot robotNumber Motor On If Not MCalComplete Then MCal End If Robot savRobot Fend SPEL Language Reference Rev 3 5 57 SPEL Sprachreferenz CalPls Anweisung s Spezifiziert Position und Orientierungs Pulse Werte f r die Kalibrierung und zeigt sie an Syntax CalPls j1Pulses j2Pulses j3Pulses j4Pulses Parameter j1Pulses Pulse Wert f r die erste Achse Dieses ist ein Long Integer Ausdruck j2Pulses Pulse Wert f r die zweite Achse Dieses ist ein Long Integer Ausdruck j3Pulses Pulse Wert f r die dritte Achse Dieses ist ein Long Integer Ausdruck j4Pulses Pulse Wert f r die vierte Achse Dieses ist ein Lon
302. larieren Variablen des Typs String k nnen bis zu 255 Zeichen beinhalten Alle Variablen sollten ganz oben in einer Funktion deklariert sein String Operatoren Die folgenden Operatoren k nnen verwendet werden um String Variablen zu manipulieren F gt Buchstaben Strings zusammen Kann in Zuweisungskommandos f r String Variablen oder im Print Befehl verwendet werden Beispiel name fname lIname Vergleicht Buchstaben Strings TRUE wird nur ausgegeben wenn die beiden Zeichenketten v llig gleich sind Beispiel If temp1 A Then GoSub test lt gt Vergleicht Buchstaben STRINGs TRUE wird ausgegeben wenn ein oder mehrere Zeichen in den beiden Zeichenketten unterschiedlich sind Beispiel If templ1 lt gt A Then GoSub test 408 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Hinweise Variablennamen m ssen das Dollarzeichen enthalten Bei Variablen des String Typs muss an letzter Stelle des Variablennamens das Dollarzeichen stehen Verwandte Befehle Boolean Byte Double Global Integer Long Real String Beispiel String password String A 10 Eindimensionale Feldvariable aus Zeichenketten String B 10 10 Zweidimensionale Feldvariable aus Zeichenketten String C 10 10 10 Dreidimensionale Feldvariable aus Zeichenketten Print Enter password Input password If UCase password EPSON Then Call RunMaintenance Else Print Pa
303. len Koordinatensysteme 1 bis 15 gehen verloren wenn der Strom abgeschaltet wird oder wenn die Befehle Base oder Verinit ausgef hrt werden Verwandte Befehle Base Local Beispiel Hier sind einige Beispiele vom Online Fenster pl 0 05 05 0 1 p2 100 0 0 0 1 pril 150 150 050 pl2 300 150 0 0 local 1 P1 P11 P2 Pl2 L VVVVAMV v p21 50 0 0 0 1 go p21 v SPEL Language Reference Rev 3 5 255 SPEL Sprachreferenz Local Funktion F Syntax Local localNumber Parameter localNumber Nummer des lokalen Koordinatensystems ganze Zahl von 0 bis 15 repr sentiert durch einen Ausdruck oder einen numerischen Wert R ckgabewerte Spezifizierte Daten des lokalen Koordinatensystems als Punktdaten Verwandte Befehle Local Anweisung Beispiel einer Local Funktion P1 XYLim 1 256 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Lof Funktion berpr ft ob der angegebene RS 232 oder TCP IP Port Datens tze hat Syntax Lof portNumber Parameter portNumber Nummer der Kommunikationsschnittstelle R ckgabewerte Die Anzahl der Datens tze im Puffer Wenn sich keine Daten im Puffer befinden betr gt der R ckgabewert von Lof Null 0 Beschreibung Lof berpr ft ob die angegebenen Schnittstelle Daten empfangen hat oder nicht Die empfangenen Daten werden unabh ngig vom Input Befehl im Puffer gespeichert Verwandte Befehle ChkCom ChkNet Input Beispiel einer Lof Funk
304. ler 7350 Fehler beim Einrichten eines asynchronen Ausgangs 7351 System Fehler 7352 System Fehler 7353 Fehler beim Erzeugen einer Speicher Mapped Datei 7901 Fehler beim Erzeugen einer Meldungstabelle 7902 System Fehler 7903 Fehler beim Erstellen des Bereiches f r die Programmierung 7904 Fehler beim Erstellen des Bereiches f r das Untersystem 7905 Fehler beim Erstellen des Bereiches f r die Breakpoint Informationsdaten 7906 Fehler beim Erstellen des Bereiches f r die Timer Informationsdaten 7907 Fehler beim Erstellen des Bereiches f r den Steuerungsblock 7908 Fehler beim Erstellen des Bereiches f r die Roboter Informationsdaten 7909 Fehler beim Erstellen des Bereiches f r die lokalen Variablendaten 7910 System Fehler 7911 System Fehler 8000 Die Systempunktedatei ist ung ltig 8001 Die Systempunktedatei kann nicht erzeugt werden 8002 Die Systempunktedatei kann nicht geschlossen werden 8003 Die Roboterummer ist ung ltig 8004 Die Systempunktedatei wurde bereits erzeugt 8006 Ung ltige Punktnummer 8009 Die angebene Punktedatei kann nicht ge ffnet werden 8010 Der Bereich f r die Palettendefinition kann nicht erstellt werden 8011 Der Bereich f r die Palettendefinition kann nicht freigegeben werden 8012 Die Palettennummer ist au erhalb des g ltigen Bereichs 8013 Die angebenen Palettendaten sin
305. lermeldung ausgegeben Punktedatei f r den aktuellen Roboter nicht gefunden Um dies zu korrigieren f gen Sie die Punktdatei dem Robter im Projekteditor hinzu oder f hren Sie SavePoints zun chst vom Online Fenster aus aus nachdem Sie den aktuellen Robter eingestellt haben Verwandte Befehle Dir Robot SavePoints Beispiel einer LoadPoints Anweisung Function main L dt gemeinsame Punkte f r den aktuellen Roboter LoadPoints RlCommon pnt H ngt Punkte f r Modell 1 an LoadPoints R1lModell pnt Merge Robot 2 L dt Punktdateien f r den Roboter 2 LoadPoints R2Modell pnt Fend SPEL Language Reference Rev 3 5 253 SPEL Sprachreferenz Local Anweisung s Definiert lokale Koordinatensysteme und zeigt sie an Syntax 1 Local ocalNumber pLocal1 pBase1 pLocal2 pBase2 L R BaseU 2 Local ocalNumber X Y Z U Parameter localNumber pLocal1 pLocal2 pBase1 pBase2 L R BaseU x Y Z U Beschreibung Die Nummer des lokalen Koordinatensystems Es kann eine Gesamtzahl von 15 lokalen Koordinatensystemen definiert werden mit Integer Werten von 1 bis 15 Punktvariablen mit Punktdaten im lokalen Koordinatensystem Punktvariablen mit Punktdaten im Basiskoordinatensystem Optional Richtet den lokalen Ursprung an dem linken ersten oder rechten zweiten Basispunkt aus Optional Wird BaseU angegeben befinden sich die U Achsen Koordinaten im Basiskoordinatensystem
306. lgt der nicht Pass lautet h lt der Roboter am letzen definierten Punkt des vorangegangenen Pass Befehls an Eine Fine Positionierung wird jedoch nicht durchgef hrt Wenn direkt auf Pass ein Befehl eine Anweisung oder eine Funktion folgt die kein Bewegungsbefehl ist kann der direkt darauf folgende Befehl die Anweisung oder die Funktion ausgef hrt werden bevor der Roboter den letzen Punkt des vorangegangenen Pass Befehls erreicht hat Wenn eine Fine Positionierung an der Zielposition gew nscht wird lassen Sie auf den Pass einen Go Befehl folgen und spezifizieren Sie die Zielposition wie im folgenden Beispiel gezeigt Pass P5 Go P5 On 1 Move P10 Je gr er die Werte f r Beschleunigung und Verz gerung sind desto n her f hrt der Arm an den angegebenen Punkt Der Pass Befehl kann auch so verwendet werden dass der Roboterarm Hindernisse umgeht Einschr nkung SPEL unterst tzt keine CP Spezifikation Continuous Point Spezifikation In der Version der SPEL Sprache die f r SRC 3xx Controller verwendet wurde war es erlaubt einen fortlaufenden Punktesatz zu spezifizieren Zum Beispiel Pass P1 P10 In der SPEL Sprache bedeutet die obige Anweisung jedoch dass eine Bewegung zu einem einzigen Punkt ausgef hrt wird P1 minus P10 Um einen fortlaufenden Punktesatz zu definieren m ssen Sie alle Punkte spezifizieren SPEL Language Reference Rev 3 5 321 SPEL Sprachreferenz Verwandte Befehle Accel Go Jump Spee
307. ll Anweisung Dieser Protokolleintrag wird gel scht wenn eine andere Go Jump Move Till Anweisung ausgef hrt wird Protokolleintrag der Ausf hrung des Mcal Befehls der Mcal Anweisung 3 amp H4 Protokolleintrag des Stopps an einer Zwischenposition bei erf llter Bedingung in der Trap Anweisung Motor On Modus Die aktuelle Position ist die Home Position 6 amp H40 Low Power Status Nicht definiert 8 amp H100 Der Motor der 4 Achse ist eingeschaltet 9 amp H200 Der Motor der 3 Achse ist eingeschaltet Der Motor der 2 Achse ist eingeschaltet Der Motor der 1 Achse ist eingeschaltet 12 31 Nicht definiert 2 0 amp HO Task 17 wird ausgef hrt Xqt oder ist im Halt Status bis bis bis 15 amp H8000 Task 32 wird ausgef hrt Xgqt oder ist im Halt Status SPEL Language Reference Rev 3 5 405 SPEL Sprachreferenz Verwandte Befehle EStopOn Function TillOn Function PauseOn Function SafetyOn Function Stat Beispiel Function StatDemo rbtl_sts RShift Stat 0 Case rbtl_sts And amp H01 Tasks are running Case rbtl_sts And amp H02 Pause Output is ON Case rbtl_sts And amp H04 Error Output is ON Select TRUE Print Print Print Send Fend 406 And amp H070000 16 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Str Funktion Konvertiert einen numerischen Wert in eine Zeichenkette Gibt eine Zeichenkette aus Syntax Str nu
308. llen Durch Verwnedung der Err Funktionen wird dieser Prozess jedoch leicht gemacht Einschr nkungen Denken Sie daran dass alle Fehler mit der ECIr Anweisung gel scht werden m ssen Wenn der Anwender in der Fehlerbehandlungsroutine jedoch keine EClr Anweisung verwendet um den Fehler zu l schen kann das System in einer Endlosschleife stecken bleiben Wenn der Fehler nicht mithilfe der Fehlerbehandlungsroutine zur ckgesetzt wird gibt das System auf den OnErr Befehl hin die Steuerung sofort nach seiner R ckkehr zur Hauptroutine an die Fehlerbehandlungsroutine zur ck Der Grund daf r ist dass das System davon ausgeht es sei erneut ein Fehler aufgetreten w hrend es tats chlich nur auf den vorangegangenen Fehler reagiert der nicht gel scht wurde Da die Fehlerbehandlungsroutine den Fehler nicht zur cksettzt tritt eine Endlosschleife auf Seien Sie daher vorsichtig Verwandte Befehle EClIr Era Erl ErrHist ErrMsg Ert OnErr Return Trap SPEL Language Reference Rev 3 5 149 SPEL Sprachreferenz Err Beispiel Das folgende Beispiel zeigt ein einfaches Dienstprogramm das pr ft ob ob die Punkte PO P399 existieren Wenn der Punkt nicht existiert erscheint eine Nachricht auf dem Bildschirm um den Anwender diesen Umstand wissen zu lassen Das Programm verwendet den CX Befehl um jeden einzelnen Punkt dahin gehend zu testen ob er definiert wurde oder nicht Wenn ein Punkt nicht definiert ist wird die Steuerung an die F
309. ls Zeittrennzeichen in den formatierten Ausgabedaten verwendet wird h ngt von Ihren Systemeinstellungen ab Datumstrennzeichen Es kann vorkommen dass in einigen Darstellungen andere Zeichen verwendet werden um das Datumstrennzeichen darzustellen Das Datumstrennzeichen trennt Tag Monat und Jahr wenn die Datumswerte formatiert werden Das Zeichen welches tats chlich als Datumstrennzeichen in den formatierten Ausgabedaten verwendet wird h ngt von Ihren Systemeinstellungen ab Wissenschaftliches Format Wenn der Formatausdruck mindestens einen Zahlzeichen Platzhalter 0 oder zur Rechten von E E e oder e enth lt so wird die Zahl im wissenschaftlichen Format angezeigt und E oder e werden zwischen die Zahl und ihren Exponenten eingef gt Die Anzahl von Zahlzeichen Platzhaltern zur Rechten bestimmt die Anzahl von Zahlzeichen im Exponenten Verwenden Sie E oder e um ein Minuszeichen neben negative Exponenten zu setzen Verwenden Sie E oder e um ein Minuszeichen neben negative Exponenten zu setzen und ein Pluszeichen neben positive Exponenten Anzeige eines Buchstabensymbol Zeichens Um ein Zeichen anzuzeigen das nicht aufgelistet ist stellen Sie ihm einen Backslash voran oder stellen Sie es in Anf hrungsstriche Anzeige des n chsten Zeichens in der Formatzeichenkette Um ein Zeichen anzuzeigen welches als Buchstabensymbol Zeichen eine besondere Bedeutung hat stellen Sie ihm einen Backslash voran Der Backslas
310. ls erlaubt 16 2502 Es gibt mehr verschachtelte FOR Schleifen als erlaubt 16 2503 Es gibt mehr verschachtelte IF Verzweigungen als erlaubt 16 2505 Es gibt mehr verschachtelte SELECT Strukturen als erlaubt 16 2506 Es gibt mehr verschachtelte DO Schleifen als erlaubt 16 2507 Es gibt mehr verschachtelte WHILE Schleifen als erlaubt 16 2510 Variablentyp nicht erkannt 2520 Zu viele globale Variablen oder der Speicher f r die globalen Variablen ist ersch pft 2521 Zu viele Backup Variablen oder der Speicher f r die Backup Variablen ist ersch pft 2522 Die angegebene globale Variable wurde nicht deklariert 2523 Die angegebene Backup Variable wurde nicht deklariert 2524 Die Gesamtgr e aller lokalen Variablen in dieser Task bersteigt das Limit 2525 Die globale Variable wurde bereits deklariert 474 SPEL Language Reference Rev 3 5 SPEL Fehlermeldungen Error Message 2526 Die angegebene globale Variable wurde bereits mit einem anderen Typ deklariert 2527 Die angegebene Backup Variable wurde bereits mit einem anderen Typ deklariert 2528 Es wurde bereits eine andere Backup Variable mit demselben Namen deklariert 2601 Parameter Typ Fehler 2602 Eine entsprechende IF Anweisung f r eine ELSE Anweisung wurde nicht gefunden 2603 Eine entsprechende IF Anweisung f r eine ELSEIF Anweisung wur
311. lsch 1182 Dateiname ist falsch 1183 Verzeichnisname ist falsch 1185 Argumentanordnung ist falsch 1186 Parallelprozess ist nicht in Ordnung 1187 Eine Funktion oder eine Variable im Parallelprozess kann nicht aufgerufen werden 1188 Die Funktion mit dem Trap Argument kann nicht aufgerufen werden 1198 String Variable ist falsch 1199 Der Ausdruck f r den Achsenursprung ist falsch 1200 Druckliste ist nicht richtig 1201 Ung ltiges Punkte Label 1231 Unzul ssige Verwendung von THEN 1244 Ung ltiges CASE Format 1254 Lokale Variablen sind falsch 1255 Der Syntax des Arch ist falsch 1256 System Fehler 1259 Klammern in der Funktion sind nicht richtig 1260 Die Bezeichnung wurde nicht richtig beschreiben 1261 Die Klammer ist nicht geschlossen 1265 Der Name der Variablen ist nicht richtig 1266 Es folgen keine Parameter 1267 Ung ltiges LINE INPUT Format 1268 Ung ltiges Format bei GOTO GOSUB CALL 1269 Syntax Fehler 1270 Syntax Fehler 1400 Dieser Befehl ist im Online Fenster nicht g ltig 1450 Funktion wurde nicht gefunden 470 SPEL Language Reference Rev 3 5 SPEL Fehlermeldungen Error Message 1501 Unzul ssige Verwendung von ELSE 1502 Ung ltige Verwendung von CASE 1503 Ung ltige Verwendung von EXIT 1504 Zwischen SELECT und dem ersten CASE sind keine Anweisungen erlaubt 1505 Block Anweisungsfehler 1551 Ung ltige Verwendung von FEND 1552 Anweisungen au erhalb de
312. lt EPSON RC hat ein Feature das veranlasst dass bei Eintreten eines Not Halt alle Ausg nge ausgeschaltet werden Dieses Feature wird ber den SPEL Optionen Tab im Systemkonfigurationsdialog eingestellt oder deaktiviert zu dem man ber das Setup Men gelangt Der Unterschied zwischen Off und Off Es ist sehr wichtig dass der Anwender den Unterschied zwischenden Befehlen Off und Off versteht Der Off Befehl arbeitet mit dem internen Merker und hat keinerlei Auswirkungen auf die Hardware E As des Systems Der Off Befehl arbeitet mit den Standard und mit der Erweiterungs Hardware Ausgangsports Diese Hardwareports sind getrennte Ausg nge die mit Ger ten kommunizieren die au erhalb des Steuerungsger tes liegen 288 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Verwandte Befehle In In InBCD Off On OpBCD Oport Out Out Sw Wait Beispiel einer Off Anweisung Das Beispiel unten zeigt wie der Haupttask einen Hintergrundtask namens iotask startet iotask ist ein einfacher Task um die getrennten Ausg nge 1 und 2 ein und danach wieder auszuschalten 10 Sekunden zu warten und den Vorgang dann zu wiederholen Function main Xgt 2 iotask Go P1 Fend Function iotask Do On 1 On 2 off 1 Off 2 Wait 10 Loop Fend Andere einfache Beispiele vom Online Fenster sehen aus wie folgt gt On 1 gt Off 1 10 Schaltet den Ausgang 1 aus wartet 10 Sekunden ab und schaltet ihn wieder ein gt On
313. lten Remote Erm glicht es externem Equipment unter Verwendung diskreter Ein und Ausg nge Programme zu starten zu unterbrechen und fortzusetzen Wenn kein Parameter spezifiziert ist zeigt CtrlDev die aktuelle Einstellung an Hinweise Der Vorgabewert von CtrIDev und die Verwendung von Verinit Wird der Verinit Befehl ausgef hrt so wird der CtrIDev Wert auf seinen Vorgabewert initialisiert PC Verwandte Befehle CtrIDev Funktion Beispiel einer CtrlDev Anweisung Das folgende Beispiel zeigt die zur Einstellung des aktuellen Steuerger tes erforderliche Syntax Gezeigt werden die vom Online Fenster ausgef hrten Befehle gt cetrldev remote Externe Ger te k nnen Programme starten gt ctrldev Remote gt SPEL Language Reference Rev 3 5 101 SPEL Sprachreferenz CtrlDev Funktion Gibt die Nummer des aktuellen Steuerger tes aus Syntax CtrIDev R ckgabewerte 1 PC 2 Remote Verwandte Befehle CtrIDev Befehl Beispiel einer CtrlDev Funktion Print The current control device is 102 CtrlDev SPEL Language Reference Rev 3 5 SPEL Sprachreferenz CU Funktion Extrahiert den U Achsen Ausrichtungsachsen Koordinatenwert eines Punktes Syntax CU point Parameter point Punktausdruck R ckgabewerte Gibt einen numerischen Koordinatenwert aus der die U Achsen Position repr sentiert Der ausgegebene Wert ist eine Real Zahl Beschreibung Wird verwendet um den individuell
314. mber Parameter number Integer oder Real Ausdruck R ckgabewerte Gibt eine Zeichenkettendarstellung des numerischen Wertes aus Beschreibung Str konvertiert eine Zahl in eine Zeichenkette Jede Zahl mit bis zu 18 Zeichen positiv oder negativ ist g ltig Verwandte Befehle Abs Asc Chr Int Left Len Mid Mod Right Sgn Space Val Beispiel einer Str Funktion Das folgende Beispiel zeigt ein Programm welches mehrere verschiedene Zahlen in Zeichenketten umwandelt und diese dann am Bildschirm ausgibt Function strtest Integer intvar Real realvar 1 intvar 32767 Print intvar Str intvar y realvar 567 9987 Print realvar Str realvar 1 Fend Einige andere Beispielergebnisse des Str Befehls vom Online Fenster gt Print Str 99999999999999 1 000000E 014 gt Print Str 25 999 25 999 SPEL Language Reference Rev 3 5 407 SPEL Sprachreferenz String Anweisung s Deklariert String Variablen Zeichenketten Variablen Syntax String varName subscripts varName subscripts Parameter varName Variablenname den der Anwender als String deklarieren will subscripts Optional Dimensionen einer Feldvariable es k nnen bis zu drei multiple Dimensionen deklariert werden Die Syntax sieht aus wie folgt dim1 dim2 dim3 dim1 dim2 dim3 k nnen eine ganze Zahl zwischen 0 und 32767 sein Beschreibung String wird verwendet um Variablen als String zu dek
315. men Sie an der Roboter befindet sich gegenw rtig im Low Power Modus Power Low und der Anwender versucht ber das Online Fenster den Accel Wert auf 100 einzustellen Weil sich der Roboter im Low Power Modus befindet wird automatisch ein maximaler Beschleunigungswert von 10 eingestellt Das System gestattet im Low Power Modus keinen Beschleunigungswert gt 10 gt Accel 100 100 gt gt Accel Low Power Mode 100 100 100 lt Beispiel 3 gt 100 100 100 Stellen Sie die abw rtsgerichtete Verz gerung der Z Achse auf langsam ein um beim Verwenden des JUMP Befehls ein sanftes Ablegen des Teils zu erm glichen Dies bedeutet dass der Zdnd Parameter niedrig gew hlt werden muss wenn die Accel Werte eingestellt werden gt Accel 100 100 100 100 100 35 gt Accel 100 100 100 gt 100 100 35 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Accel Funktion Gibt den spezifizierten Beschleunigungswert aus Syntax Accel Parameternummer Parameter Hinweise zur Parameternummer Integer Ausdruck der die folgenden Werte haben kann 1 Angegebener Wert der Beschleunigung 2 Angegebener Wert der Verz gerung 3 Angegebener Wert der Beschleunigung in der Aufw rtsbewegung der Z Achse w hrend der Ausf hrung des JUMP Befehls 4 Angegebener Wert der Verz gerung in der Aufw rtsbewegung der Z Achse w hrend der Ausf hrung des JUMP Befehls 5 Angegebener Wert der Beschleunigung in der Abw rtsbewegung der
316. mmer aus Gibt die Tasknummer des Fehlers aus Gibt die Fehlermeldung aus Zusammenfassung der SPEL Befehle Befehle zur Programmausf hrung Xqt F hrt einen Task aus Pause Unterbricht kurzfristig die Programmausf hrung bei all den Tasks bei denen der PAUSE Befehl aktiviert ist Cont Fortfahren nach der Pause Halt Unterbrechen eines Tasks Quit Beendet einen Task Resume Setzt einen im Halt Status befindlichen Task fort MyTask Gibt den aktuellen Task aus Chain Stoppt alle Tasks und startet eine Programmgruppe Pseudo Anweisungen define Definiert ein Makro ifdef endif Bedingte Kompilierung ifndef endif Bedingte Kompilierung include Einbeziehung einer Datei 6 SPEL Language Reference Rev 3 5 Zusammenfassung der SPEL Befehle Dir ChDir MkDir Rmdir Rendir FileDateTime FileExists FileLen FolderExists LoadPoints SavePoints Type Kill Del Copy Rename AOpen ROpen WOpen Read Seek Write Close Globals SPEL Language Reference Rev 3 5 Befehle zur Dateiverwaltung Zeigt ein Verzeichnis an Wechselt das aktuelle Verzeichnis Erstellt ein Verzeichnis Entfernt ein Verzeichnis Benennt ein Verzeichnis um Gibt Dateidatum und zeit aus berpr ft die Existenz einer Datei Gibt die L nge einer Datei aus berpr ft die Existenz eines Ordners L dt die Punkte f r den aktuellen Roboter Speichert die Punkte f r den aktuellen Roboter Zeigt den Inh
317. n 424 HP Status Power High wurde durch LP Power Low Remote Eingang ausgeschaltet 425 COM Schnittstelle wird nicht unterst zt 426 Kann bei ge ffneter Schicherheitsabschrankung nicht fortgesetzt werden 500 Der Befehl ALL wird erwartet 501 Der Befehl AS wird erwartet 502 Der Befehl wird erwartet 503 Ung ltige Armnummer Werte von 0 bis 4 sind g ltig 504 Ung ltiges Punktemerkmal 505 Ung ltige Achsangabe Werte X Y Z oder U sind g ltig 506 Ung ltige Dateinummer 507 Ung ltige Bezeichnung 508 Bei Include Dateien sind nur Anweisungen g ltig 509 Ung ltige Palettennummer Werte von 0 bis 15 sind g ltig 510 Ung ltiger Punkt 511 Ung ltige Feldvariable 512 Ung ltige Toolnummer Werte von 0 bis 4 sind g ltig 513 Ung ltige bertragungsrate 514 Der Befehl CALL wird erwartet 515 Der Befehl CALL GOTO oder GOSUB wird erwartet 516 Es wird ein Doppelpunkt erwartet 517 Es wird ein Komma erwartet 518 Ung ltige Datenbits 519 Ein Datentyp wird erwartet 520 Ung ltige Deklaration innerhalb einer Funktion 521 define kann innerhalb einer Funktion nicht verwendet werden 522 Zu viele Dimensionen 523 Erwartet einen DLL Alias 524 Eine linke Klammer oder AS wird erwartet 525 Erwartet einen DLL Pfad und einen Dateinamen 526 Doppelter F
318. n ohne dabei die Endungen der Dateinamen zu ndern verwenden Sie folgenden Befehl Rename A B Platzhalter die in newFileName verwendet werden bewirken dass Rename die oldFileName Zeichen in ihrer jeweiligen Position in newFileName beibeh lt Um z B alle Dateien die TEST entsprechen nach TEXT umzubennenen verwenden Sie folgenden Befehl Rename TEST X Verwandte Befehle Copy Rename Beispiel Hier sind einige Beispiele vom Online Fenster gt Rename A B gt Rename A PRG B PRG 360 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz RenDir Befehl ndert einen Verzeichnisnamen Syntax Rendir oldDirName newDirName Parameter oldDirName Pfad und Name des umzubenennenden Verzeichnisses newDirName Der neue Name f r das Verzeichnis das mit oldDirName angegeben ist Beschreibung F r newDirName kann kein Pfad eingeschlossen sein Daher befindet sich das umbenannte Verzeichnis im selben Pfad wie das umzubenennende Verzeichnis vorher Ein Verzeichnis kann nicht umbenannt werden wenn der gew nschte Verzeichnisname bereits im selben Pfad vorhanden ist Platzhalter sind weder in oldDirName noch in newDirName gestattet Verwandte Befehle Dir Beispiel eines RenDir Befehls Im Folgenden sehen Sie ein einfaches Beispiel vom Online Fenster gt rendir BAK USR2 SPEL Language Reference Rev 3 5 361 SPEL Sprachreferenz Reset Anweisung Setzt den Controller auf einen initialisierte
319. n um zu warten bis eine spezifische Bedingung erf llt ist die mehr als ein I O Bit einschlie t Da 8 Kan le zur gleichen Zeit gepr ft werden rangieren die R ckgabewerte zwischen 0 und 255 Bitte beachten Sie die Tabelle unten um zu sehen wie die R ckgabewerte den einzelnen S W Merkern entsprechen Merker Ergebnis unter Verwendung von Port 0 R ckgabewerte 7 6 5 4 3 2 1 0 em Eee Aus Aus Aus Aus Ein Ein Ein Ein Ki Ein Ein Ein Ein Ein Ein Ein Ein R ckgabewerte 255 254 253 252 251 250 249 248 i en Aus Aus Aus Aus Aus Ein Ein Ein Aus Aus Ein Aus Aus Aus Aus Aus 255 On On On On On On On On Ein Ein Ein Ein Ein Ein Ein Ein Einschr nkung Der Unterschied zwischen In und In Es ist sehr wichtig dass der Anwender den Unterschied zwischen den In und In versteht Der In Befehl arbeitet mit dem internen Merker und hat keinerlei Auswirkungen auf den Hardware I O des Roboters Der In Befehl arbeitet mit den 512 Hardware Eingangskan len Diese Hardwarekan le sind getrennte Eing nge die mit systemexternen Ger ten kommunizieren 220 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Der Unterschied zwischen and Sw Der Sw Befehl gestattet es dem Anwender den Wert eines S W Merkers zu lesen Der R ckgabewert von Sw ist entweder eine 1 o
320. n Event im ActiveX Client aus Legt den Funktionsr ckgabewert f r den ActiveX Client fest Ethernet E A Befehle ENetlO_AnaGetConfig ENetlO_Analn ENetlO_AnaOut ENetlO_AnaSetConfig ENetlO_ClearLatches ENetlO_In ENetlO_Off ENetlO_On ENetlO_Oport ENetlO_Out ENetlO_Sw ENetlO_SwLatch 10 Gibt die Konfigurationswerte des analogen Eingabe oder Ausgabemoduls aus Liest einen analogen Eingabe oder Ausgabekanal Stellt den Wert f r einen analogen Ausgang ein Konfiguriert ein analoges Eingabe oder Ausgabemodul L scht sowohl das digitale On als auch das digitale Off Latch f r einen Eingangspunkt Liest den Wert eines digitalen Eingabe oder Ausgabemoduls 4 Punkte Schaltet einen digitalen Ausgang aus Schaltet einen digitalen Ausgang ein Gibt den Status eines digitalen Ausganges aus Setzt die Ausg nge eines digitalen Ausgabemoduls 4 Punkte Gibt den Status eines digitalen Einganges aus Gibt den Latch Status eines digitalen Eingangs aus SPEL Language Reference Rev 3 5 Zusammenfassung der SPEL Befehle Kraftmessungsbefehle Force_Calibrate Force_ClearTrigger Force_GetForce Force_GetForces Force_Sensor Force_SetTrigger Force_TC Force_TCLim Force_TCSpeed Sicherheitsbefehle GetCurrentUser Login SPEL Language Reference Rev 3 5 Setzt alle Achsen des aktuellen Sensors auf Null L scht alle Ausl sebedingungen f r den aktuellen Sensor Gibt den aktuellen Wert
321. n Status zur ck Syntax Reset Beschreibung Reset setzt die folgenden Objekte zur ck Not Halt Status Fehlerstatus Ausg nge Alle Ausg nge sind Aus geschaltet der Anwender kann den Optionsschalter so einstellen dass dieses Feature ausgeschaltet wird Speed und SpeedS f r den aktuellen Roboter werden auf den Vorgabewert zur ckgesetzt Accel und AccelS f r den aktuellen Roboter werden auf den Vorgabewert zur ckgesetzt LimZ Paramter des aktuellen Roboters wird auf O zur ckgesetzt Fine des aktuellen Roboters wird auf den Vorgabewert zur ckgesetzt Power Low f r den aktuellen Roboter der Low Power Modus wird Ein geschaltet F r servo bedingte Fehler den Not Halt Status und alle anderen Bedingungen die ein Reset ben tigen wird kein anderer Befehl au er Reset akzeptiert In diesem Fall f hren Sie erst Reset aus f hren Sie dann andere Prozesse wie ben tigt aus Nach einem Not Halt z B sollten Sie zun chst berpr fen dass Betriebsbedingungen den Sicherheitsvorschriften entsprechen dann Reset ausf hren und zuletzt den Befehl Motor On WICHTIG Optionsschalter Reset Wenn der Optionsschalter Reset schaltet die Ausg nge Aus Ein geschaltet ist werden alle Ausg nge Aus geschaltet wenn der Reset Befehl ausgef hrt wird Es ist wichtig dass Sie dies bei der Verdrahtung des Systems bedenken da das Ausschalten von Ausg ngen nicht zum Herunterfallen von Werkzeugen oder hnlichen Situation f hren sollte
322. n das Hauptverzeichnis gt ChDir Wechselt vom aktuellen Verzeichnis in das bergeordete Verzeichnis gt Cd TEST H55 wechselt vom aktuellen Verzeichnis nach H55 im Verzeichnis TEST gt Cd Zeigt das aktuelle Verzeichnis an A TEST H55 SPEL Language Reference Rev 3 5 63 SPEL Sprachreferenz ChDrive Anweisung s ndert das Standardlaufwerk f r Dateioperationen Syntax ChDrive drive Parameter drive Zeichenkettenausdruck oder Buchstabensymbol der die einen g ltigen Laufwerkbuchstaben enth lt Verwandte Befehle ChDir CurDrive Beispiel einer ChDrive Anweisung ChDrive d 64 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ChkCom Funktion Gibt die Anzahl von Zeichen im Empfangspuffer einer Kommunikationsschnittstelle aus Syntax ChkCom portNumber Parameter portNumber Integer Ausdruck f r die zu berpr fende Schnittstellennummer R ckgabewerte Anzahl der empfangenen Zeichen Integer Wenn die Schnittstelle keine Zeichen empfangen kann werden die folgenden negativen Zeichen ausgegeben um den Schnittstellenstatus auszugeben 2 Schnittstelle wird von einem anderen Task verwendet 3 Schnittstelle ist nicht offen Verwandte Befehle CloseCom OpenCom Read Write ChkCom Beispiel Integer numChars numChars ChkCom 1 SPEL Language Reference Rev 3 5 65 SPEL Sprachreferenz ChkNet Funktion Gibt die Anzahl von Zeichen im Empfangspuffer eines Netzw
323. n definierten Punkt Verwenden von Go mit der optionalen Find Bedingung Die optionale Find Bedingung gestattet es dem Anwender eine Bedingung zu definieren die den Roboter veranlasst w hrend der Bewegung die durch den Go Befehl veranlasst wurde eine Position aufzuzeichnen Der Go Befehl mit der Find Bedingung kann auf zwei Arten und Weisen benutzt werden wie im folgenden beschrieben 1 Go Befehl mit Find Bedingung berpr ft ob die aktuelle Find Bedingung erf llt wird Wird sie erf llt so wird die aktuelle Position im Sonderpunkt FindPos gespeichert 2 Go Befehl mit Find Bedingung Sw Eingangsnummer Bedingung und Eingangsbedingung Diese Version des Go Befehls mit Find Bedingung gestattet es dem Anwender die Find Bedingung in derselben Zeile wie den Go Befehl zu spezifizieren anstatt die aktuelle Definition zu verwenden die im Vorangegangenen f r Find definiert wurde Die spezifizierte Bedingung ist ganz einfach eine Gegepr fung zu einem der Eing nge Dies wird durch Verwenden des Sw Befehls erreicht Der Anwender kann berpr fen ob die Eing nge aus oder eingeschaltet sind und veranlassen dass die aktuelle Position unter dem Sonderpunkt FindPos gespeichert wird Der Go Befehl verursacht immer eine Verz gerung bis zum Stillstand Der Go Befehl veranlasst den Arm immer dazu vor dem Erreichen der Zielposition mit dem Abbremsen zu beginnen Potentielle Fehler Der Versuch sich au erhalb des Roboter Arbeitsbere
324. n durch den Step Wert inkrementiert der durch den Parameter increment definiert ist Wird die Step Option nicht genutzt wird der Z hler um 1 eins inkrementiert Die Z hlervariable var wird dann mit dem Endwert verglichen Wenn der Z hlerstand kleiner oder gleich dem Endwert ist werden die Anweisungen die dem For Befehl folgen erneut ausgef hrt Wenn die Z hlervariable gr er als der Endwert ist wird die Ausf hrung au erhalb der For Next Schleife verzweigt und f hrt mit dem Befehl fort welcher direkt auf den Next Befehl folgt Eine Verschachtelung von For Next Anweisungen wird bis zu einer Tiefe von 16 Leveln unterst tzt Dies bedeutet dass eine For Next Schleife in eine andere For Next Schleife verschachtelt werden kann usw bis 16 For Next Schleifen existieren 172 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz HINWEISE NEGATIVE Step Werte Wenn der Wert der Step Inkrementierung increment negativ ist wird die Z hlervariable var bei jedem Durchlauf durch die Schleife dekrementiert verringert und der Erstwert muss gr er sein als der Endwert damit die Schleife funktioniert Eine Variable die auf Next folgt wird nicht ben tigt Der Variablenname der auf den Next Befehl folgt kann weggelassen werden F r Programme die verschachtelte For Next Schleifen beinhalten wird jedoch empfohlen den Variablennamen der auf den Next Befehl folgt mit einzubeziehen damit die Schleifen schnell id
325. n k nnen um die aktuelle Gruppe neu zu starten Sie k nnen auch den Chain Befehl verwenden um eine spezifizierte Gruppe zu starten Es werden nur Fehler erkannt die dazu f hren dass ein Task beendet wird Zum Beispiel wird der Fehler Trap Funktion aufgerufen wenn ein Task keine Fehlerbehandlungsroutine hat und ein Fehler auftritt SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Wenn Pause spezifiziert ist Wenn eine Pause eintritt w hrend ein Programm ausgef hrt wird wird die Trap Prozess Funktion ausgef hrt nachdem der Pausen Status verarbeitet wurde Der Pause Zustand kann eintreten wenn eine Pause Anweisung ausgef hrt wird die Schutzt r offen ist oder bei Remote Pause Wenn SGOpen spezifiziert ist Wenn die Schutzt r ge ffnet wird w hrend ein Programm l uft wird eine Trap Prozess Funktion ausgef hrt nachdem der Pausen Status verarbeitet wurde Wenn SGClose spezifiziert ist Wenn durch eine ge ffnete Schutzt r eine Pause erzeugt wird w hrend ein Programm ausgef hrt wird und diese T r dann wieder geschlossen wird wird die Trap Prozess Funktion ausgef hrt Wenn Abort spezifiziert ist Wenn ein AbortAll vom Run Window aus eintritt oder Stop vom Operator Window dann wird diese Trap Funktion aufgerufen Diese Funktion sollte kurz sein und keine Endlosschleife beinhalten Wenn w hrend dieser Unterbrechung ein zweiter AbortAll auftritt werden alle Tasks abgebrochen und der Trap wird nicht
326. nachdem ob eine Definition des define NODELAY Pseudo Befehls vorliegt oder nicht Wenn der define NODELAY Pseudo Befehl in dieser Quelle bereits im Vorangegangenen benutzt wurde so wird die Zeile Wait 1 NICHT zusammen mit dem Rest der Quelle f r dieses Programm kompiliert werden wenn dieses kompiliert wird D h zur Ausf hrung vorgelegt Wenn der define NODELAY Pseudo Befehl in dieser Quelle im Vorangegangenen nicht benutzt wurde d h NODELAY ist nicht definiert so wird die Zeile Wait 1 kompiliert und sp ter ausgef hrt wenn das Programm l uft Der Ausdruck der Zeichenkette The End wird trotzt des define NODELAY Pseudo Befehls erfolgen Kommentiert die n chste Zeile aus um Verz gerungen zu erzwingen define NODELAY 1 Input 1 A ifndef NODELAY Wait 1 endif Print The End SPEL Language Reference Rev 3 5 19 SPEL Sprachreferenz include s Einbeziehen Bezieht die angegebene Datei in jene Datei mit ein welche die include Anweisung verwendet Syntax include Dateiname INC Parameter Hinweise zum Dateinamen Der Dateiname muss der Name einer Include Datei im aktuellen Projekt sein Alle Include Dateien haben eine INC Erweiterung Der Dateiname spezifiziert die Datei welche in die aktuelle Datei einbezogen wird Beschreibung include f gt den Inhalt der spezifizierten Include Datei in die aktuelle Datei ein in welcher die include Anweisung verwendet wird Normal
327. nation mit dem Wait Befehl verwendet um zu warten bis Merker Nr 1 den richtigen Wert erreicht hat von dem an es sicher ist eine neue Bewegung auszuf hren On und Off werden verwendet um den S W Merker f r die richtige Synchronisierung ein oder auszuschalten Function main Integer I off Sl Xgt 2 task2 For I 1 to 100 Wait Sw 1 0 Go P i On 1 Next I Fend Function task2 Integer I For I 101 to 200 Wait Sw S1 1 Go P i off S1 Next I Fend Andere einfache Beispiele vom Online Fenster sehen aus wie folgt on 1 print sw 1 off 1 print sw 1 OVVHNVNM SPEL Language Reference Rev 3 5 297 SPEL Sprachreferenz OnErr s Legt Interrupt Verzweigungen an welche die Steuerung veranlassen zu einer Fehlerbehandlungs Subroutine zu wechseln wenn ein Fehler auftritt Gestattet dem Anwender die Fehlerbehandlung Syntax OnErr GoTo label lineNumber 0 Parameter lineNumber Anweisungszeilennummer die ausgef hrt werden soll wenn ein Fehler auftritt label Anweisungslabel zu dem gewechselt werden soll wenn ein Fehler auftritt 0 Der Parameter der verwendet wird um die OnErr Einstellung zu l schen Beschreibung OnErr gestattet dem Anwender die Fehlerbehandlung Wenn ein Fehler auftritt ohne dass OnErr verwendet wird wird der Task abgebrochen und der Fehler wird angezeigt Wenn OnErr jedoch verwendet wird gestattet dies dem Anwender den Fehler abzufangen und zu einer Fehlerbehandlungsrout
328. nce Rev 3 5 Glossar Continuous Path kontinuierlicher Weg Ein Continuos Path kontinuierlicher Weg ist ein Satz von Punkten an denen der Roboter mit einer konstanten Geschwindigkeit entlang f hrt Mehrere Befehle in SPEL werden verwendet um die CP Bewegung zu unterst tzen Arc Pass CP Continuous Path kontinuierlicher Weg Eine CP Bewegung kontinuierlicher Weg ist eine besondere Art der Bewegung bei welcher der Roboter mit einer konstanten Geschwindigkeit einem vordefinierten Satz von Punkten folgt darauf achtend dass w hrend der Bewegung alle Kurven gegl ttet werden SPEL hat eine hohe CP Leistungsf higkeit die besonders f r Prozessanwendungen wie z B dem Dispensen hilfreich ist Funktion Der Hauptteil eines Programmcodes der als ein Task im System l uft Siehe Funktion in der Befehlsreferenz f r mehr Details Geradlinige Bewegung Bewegt den Roboterarm in einer geraden Linie mit den aktuellen SpeedS und AccelS Einstellungen von der aktuellen Position zu einem spezifizierten Punkt G ltigkeitsbereich Der G ltigkeitsbereich einer Variable spezifiziert wo die Variable erkannt wird sobald sie deklariert wurde kreisinterpolierte Bewegung Die kreisinterpolierte Bewegung ist ein Typ einer Kurvenbewegung bei welcher ein Bogen durch 3 Punkte definiert wird Der Arm bewegt sich kreisf rmig entlang dieser 3 Punkte bis er schlie lich den dritten Punkt erreicht hat Die kreisinterpolierte Bewegung
329. nd eingestellt dass die Z Achse im 1 Schritt in ihre Home Position zur ckgef hrt wird Im 2 Schritt werden dann die Achsen 1 2 und U gleichzeitig in ihre Home Position zur ckgef hrt Die Schritte 3 und 4 werden in der Vorgabekonfiguration nicht verwendet Die vorgegebenen MCordr Werte lauten wie folgt MCordr amp B0100 amp B1011 0 0 Der Verinit Befehl Zur cksetzen der vorgegebenen Hordr Werte Die MCordr Werte werden durch Ausf hren des Verinit Befehls auf die o a Werte zur ckgesetzt Die Z Achse sollte im Normalfall zuerst kalibriert werden Der Grund warum die Z Achse als Erste und ausschlie lich bewegt werden soll liegt darin dass das Roboterwerkzeug ber die Arbeitsfl che bewegt werden soll bevor mit einer Horizontalbewegung begonnen wird Dies tr gt dazu bei zu verhindern mit dem Roboterwerkzeug w hrend des Homing Prozesses im Arbeitsbereich gegen etwas zu sto en Die MCordr Werte werden beibehalten Die Werte der MCordr Tabelle werden dauerhaft gespeichert und nicht ge ndert bis sie entweder vom Anwender ge ndert werden oder ein Verinit Befehl ausgegeben wird Verwandte Befehle Mcal MCofs Beispiel einer MCordr Anweisung Im Folgenden sehen Sie einige Online Fenster Beispiele Dieses Beispiel instruiert den Roboterarm die Kalibrierungsreihenfolge wie folgt zu definieren Z Achse im ersten Schritt 1 Achse im zweiten Schritt 2 Achse im dritten Schritt und dann die U Achse im vierten Schritt Di
330. nd mit der Erweiterungs Hardware Ausgangsports Diese Hardwareports sind einzelne Ausg nge die mit Ger ten au erhalb der Steuerung kommunizieren 294 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Verwandte Befehle In In InBCD Off Off On OpBCD Oport Out Out Sw Wait Beispiel einer On Anweisung Das Beispiel unten zeigt wie der Haupttask einen Hintergrundtask namens iotask startet iotask ist ein einfacher Task um die getrennten Ausg nge 1 und 2 ein und danach wieder auszuschalten 10 Sekunden zu warten und den Vorgang dann zu wiederholen Function main Xgt iotask Go P1 Fend Function iotask Do On 1 On 2 Off 1 off 2 Wait 10 Loop Fend Andere einfache Beispiele vom Online Fenster sehen aus wie folgt On 1 OFE A On 2 Off 2 VVVAMV SPEL Language Reference Rev 3 5 295 SPEL Sprachreferenz On Anweisung s Schaltet das spezifizierte Bit des S W Merkers ein Syntax On bitNumber Parameter bitNumber Zahl zwischen 0 und 511 die einen der 512 Merker darstellt HINWEIS Das Dollarzeichen muss vor Bitnummer oder Label gesetzt werden um zu verdeutlichen dass es sich hierbei um einen Merker und nicht um einen Hardware Ausgang handelt Beschreibung On schaltet das definierte Bit des Roboter Merkers ein setzt es auf 1 Die 512 Merker Bits sind normalerweise eine gute Wahl f r die Verwendung als Status Bits f r Zwecke wie Ein Aus WAHR FALSCH ERLEDIGT Nicht ER
331. nd nicht in die Ersatzzeichenkette einbezogen Die Ersatzzeichenkette ist nicht unbedingt erforderlich In diesem Falle wird die angegebene Zeichenkette durch nichts oder eine Null Zeichenkette ersetzt Dies l scht die ID Zeichenkette aus dem Programm Beschreibung Der define Befehl ersetzt innerhalb eines Programms eine bestimmte ID Zeichenkette durch eine Ersatzzeichenkette Jedes Mal wenn die bestimmte ID Zeichenkette gefunden wird wird diese vor dem Kompilieren durch die Ersatzzeichenkette ersetzt Jedoch verbleibt die ID Zeichenkette im Quellcode und nicht die Ersatzzeichenkette Dies macht den Code vielfach leichter lesbar weil an Stelle schwer lesbarer Code Zeichenketten aussagekr ftige Namen f r ID Zeichenketten verwendet werden Die bestimmte ID Zeichenkette kann f r eine bedingte Kompilierung verwendet werden indem man sie mit den Befehlen ifdef oder ifndef kombiniert Wenn ein bestimmter Parameter angegeben ist kann die neue ID Zeichenkette als Makro verwendet werden 16 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Einschr nkung Verwenden von define f r die Variablendeklaration oder Labelersetzungen ruft einen Fehler hervor Bitte beachten Sie dass die Verwendung des define Befehls f r die Variablendeklaration einen Fehler hervorrufen kann Verwandte Befehle ifdef ifndef define Beispiel Unkommentierte n chste Zeile f r den Debug Modus define DEBUG Input 1 A
332. ndte Befehle JS Jump Sense Till Beispiel einer JT Funktion Function SearchTill As Boolean Till Sw 5 On Jump PO Jump P1 Till If JT And 4 Then Print Motion stopped during descent SearchTill TRUE EndIf Fend SPEL Language Reference Rev 3 5 239 SPEL Sprachreferenz JTran Anweisung s F hrt eine relative Bewegung einer Achse aus Syntax JTran jointNumber distance Parameter jointNumber Integer Ausdruck der darstellt welche Achse zu bewegen ist distance Real Ausdruck der die Distanz repr sentiert die zur ckgelegt werden muss f r Rotationsachsen in Gradangaben und f r Linearachsen in Millimetern Beschreibung JTran wird verwendet um eine Achse ber eine derfinierte Distanz von seiner aktuellen Position weg zu bewegen Verwandte Befehle Go Jump Move PTran Beispiel einer JTran Anweisung JTran 1 20 240 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Jump Anweisung s Bewegt den Arm mit einer PTP Bewegung von seiner aktuellen Position zum angegebenen Zielpunkt indem der Arm zun chst vertikal nach oben f hrt dann horizontal und zum Schluss vertikal abw rts um an den Zielpunkt der Bewegung zu gelangen Syntax Jump destination CarchNumber LimZ zLimit searchExpr Parameter destination Der Zielort einer Bewegung die einen Punktausdruck verwendet archNumber Optional Die Arch Nummer archNumber definiert welcher Eintrag der Arch Tabelle f
333. ndung von Standard Arm Config zu Pl gt Arm 1 gt Jump P1 Springt unter Verwendung des Zusatzarmes 1 zu P1 SPEL Language Reference Rev 3 5 39 SPEL Sprachreferenz Arm Funktion Gibt die aktuelle Armnummer aus Syntax Arm R ckgabewerte Integer welcher die aktuelle Armnummer enth lt Verwandte Befehle Arm Anweisung Arm Funktionsbeispiel Print The current arm number is Arm 40 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ArmSet Anweisung s Spezifiziert Zusatzarme und zeigt sie an Syntax ArmSet armNumber link2Dist joint2Offset zOffset link1Dist orientAngOffsef Parameter Hinweise zur Armnummer armNumber Integer Ausdruck G ltiger Bereich von 1 3 Der Anwender kann bis zu 3 verschiedene Zusatzarme definieren Hinweise zur link2Dist F r SCARA Roboter Die horizontale Entfernung von der Mittellinie des Ellbogengelenks zur Mittellinie der neuen Ausrichtungsachse D h die Position an der sich die die Mittellinie der Ausrichtungsachse des neuen Zusatzarmes befindet F r kartesische Roboter Der Positionsversatz in X Achsen Richtung zur urspr nglichen X Position wird in mm angegeben Hinweise zum joint2Offset F r SCARA Roboter Der Versatz angegeben in Grad zwischen der Linie die zwischen der normalen Ellbogen Mittellinie und der normalen Mittellinie der Ausrichtungsachse gezogen wird und der Linie die zwischen der Ellbogen Mittellinie des neuen Zusatzarmes und
334. nen Dies bedeutet dass E A ausgef hrt werden kann w hrend sich der Arm bewegt anstatt zu warten bis der Arm eine Stop Position erreicht hat und E A dann auszuf hren Ebenfalls gibt es eine Einrichtung welche definiert zu welchem Zeitpunkt innerhalb der Bewegung die Ausf hrung von E A beginnen sollte Siehe auch die in der unten stehenden Tabelle beschriebenen Dn Parameter Die folgende Tabelle zeigt alle g ltigen Parallelbearbeitungsbefehle Jeder dieser Befehle kann als Einzelbefehl verwendet werden oder zusammen in einer Guppe damit w hrend einer Bewegungsanweisung mehrfache E A Anweisungen ausgef hrt werden k nnen Dn Legt das Timing f r die Ausf hrung der Parallelbearbeitung fest n ist eine Real Zahl zwischen 0 und 100 welche die Position innerhalb der Bewegung repr sentiert an der die Parallelbearbeitungsbefehle die den Dn Parametern folgen beginnen sollten Anweisungen welche den Dn Parametern folgen beginnen mit der Ausf hrung wenn n der Verfahrbewegung zur ckgelegt worden sind Beim JUMP Befehl ist die Vertikalbewegung des Z Achse nicht Bestandteil des Verfahrwegs Um Anweisungen auszuf hren nachdem die vertikale Hubbewegung beendet ist schlie en Sie DO null am Beginn der Anweisung mit ein Dn kann in einer Parallelbearbeitungsanweisung maximal 10 Mal erscheinen On Off n Schaltet Ausgang Nr n ein bzw aus On Off n Schaltet Merker Nr n ein bzw aus Out p d Gibt Ausgabedaten d an A
335. nen betrieben verf llt der Garantieanspruch Sollten Sie sich nicht an die in diesem Handbuch niedergelegten Warnungen und Vorsichtsgebote halten m ssen wir die Verantwortung f r Fehlfunktionen und Unf lle ablehnen selbst wenn sie in Verletzungen oder Todesfolge resultieren Wir k nnen nicht alle m glichen Gefahren und die daraus resultierenden Konsequenzen vorhersehen weshalb dieses Handbuch den Nutzer nicht vor allen Gefahrmomenten warnen kann SPEL Language Reference Rev 3 5 HINWEIS Kein Teil dieses Handbuches darf ohne Genehmigung vervielf ltigt oder reproduziert werden Wir behalten uns vor die in diesem Handbuch enthaltenen Informationen ohne Vorank ndigung zu ndern Wir bitten Sie freundlich uns zu kontaktieren wenn Sie in diesem Handbuch Fehler finden oder uns einen inhaltsbezogenen Kommentar bermitteln wollen WARENZEICHEN Microsoft ist ein eingetragenes Warenzeichen und Windows und das Windows Logo sind eingetragene Warenzeichen der Microsoft Corporation Andere Marken und Produktnamen sind Warenzeichen oder eingetragene Warenzeichen der jeweiligen Inhaber Bitte wenden Sie sich mit Fragen bez glich dieses Handbuches an SPEL Referenzhandbuch SEIKO EPSON CORPORATION Factory Automation Systems Div TEL 81 266 61 1802 FAX 81 266 61 1846 SPEL Language Reference Rev 3 5 SICHERHEITSHINWEISE Bitte studieren Sie dieses Handbuch und andere damit in Verbindung stehende Handb ch
336. ner Return Anweisung Das folgende Beispiel zeigt eine einfache Funktion die einen GoSub Befehl verwendet um zu einem Label namens checkio zu verzweigen und die 16 ersten Anwender Eing nge zu berpr fen Danach kehrt das Unterprogramm zum Hauptprogramm zur ck Function main Integer varl var2 GoSub checkio On 1 On 2 End checkio Hier startet die Subroutine varl In 0 var2 In l If varl lt gt 0 Or var2 lt gt 0 Then Print Message to Operator here EndIf finished Return Die Subroutine endet hier und kehrt zu Zeile 40 zur ck Fend 366 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Right Funktion Gibt eine Zeichenkette der ganz rechts stehenden Zeichen aus wie vom Anwender spezifiziert Syntax Right string count Parameter string Zeichenkettenvariable oder Buchstabenzeichenkette mit bis zu 255 Zeichen aus welcher die am weitesten rechts stehenden Zeichen kopiert werden count Anzahl der zu kopierenden Zeichen aus string beginnend mit dem Zeichen das u erst rechts steht R ckgabewerte Gibt eine Zeichenkette der u erst rechts stehenden count Zeichen aus der durch den Anwender definierten Buchstabenzeichenkette aus Beschreibung Right gibt die u erst rechts plazierten countZeichen einer durch den Anwender definierten Zeichenkette aus Right kann so viele Zeichen ausgeben wie in der Buchstabenzeichenkette vorhanden sind Verwandte Befehle Asc Chr Left Len
337. ng Here wird verwendet um die aktuelle Position des aktuellen Manipulators auszugeben Dies ist quivalent zu P Verwandte Befehle Here Anweisung Beispiel einer Here Funktion P1 Here 200 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Hex Funktion Gibt eine Zeichenkette aus welche die angegebene Zahl im Hexadezimalformat darstellt Syntax Hex number Parameter number Integer Ausdruck R ckgabewerte Gibt eine Zeichenkette aus welche die ASCII Darstellung der Zahl im Hexadezimalformat enth lt Beschreibung Hex gibt eine Zeichenkette aus welche die angegebene Zahl im Hexadezimalformat darstellt Jedes Zeichen besteht aus 0 9 oder A F Hex wird insbesondere verwendet um die Ergebnisse der Stat Funktion ber einen RS232 Port zu pr fen Verwandte Befehle Str Stat Val Beispiel einer Hex Funktion gt print hex stat 0 A0O0000 gt print hex 255 FF SPEL Language Reference Rev 3 5 201 SPEL Sprachreferenz Hofs Anweisung s Zeigt die Offset Pulse zwischen Encoderursprung und Home Sensor an oder stellt sie ein Syntax Hofs j1Pulses j2Pulses j3Pulses j4Pulses Parameter j1Pulses Integer Ausdruck der die Offset Pulse f r Achse 1 darstellt j2Pulses Integer Ausdruck der die Offset Pulse f r Achse 2 darstellt j3Pulses Integer Ausdruck der die Offset Pulse f r Achse 3 darstellt j4Pulses Integer Ausdruck der die Offset Pulse f r Achse 4 darstellt R ckgabewerte
338. ng FALSCH ist Der logische Wert der bedingten Anweisung ist jede Zahl au er 1 Eins wenn sie WAHR ist und 0 wenn sie FALSCH ist 216 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Hinweise Beispielbedingungen a b a ist gleich b a lt b b ist gr er als a a gt b a ist gr er gleich b a lt gt b a ist ungleich b a gt b b ist kleiner als a a lt b a ist kleiner gleich b Logische Operationen wie And Or und Xor k nnen ebenfalls verwendet werden Verwandte Befehle Else Select Case While Vend Beispiel einer If Then Else Anweisung lt Einzeilige If Then Else gt Das folgende Beispiel zeigt eine einfach Funktion die einen Eingang berpr ft um festzustellen ob ein bestimmter Ausgang ein oder ausgeschaltet werden soll Dieser Task k nnte ein Background Hintergrund I O Task sein der fortw hrend l uft Function main Do If Sw 0 1 Then On 1 Else Off 1 Loop Fend lt Geblockte If Then Else gt Das folgende Beispiel zeigt eine einfach Funktion die einige Eing nge berpr ft und den Status dieser Eing nge druckt If Sw 0 1 Then Print InputO ON Else Print InputO OFF 1 If Sw 1 1 Then If Sw 2 1 Then Print Input1 On and Input2 ON Else Print Inputl On and Input2 OFF EndIf Else If Sw 2 1 Then Print Input1 Off and Input2 ON Else Print Input1 Off and Input2 OFF EndIf EndIf lt Beispiele mit anderer Syntax gt If x 10 An
339. ngsanweisungen und Bewegungsbefehlen P1 300 200 50 100 P2 Pl R P3 pick 1 P4 P5 P6 P i 100 200 CZ P100 O0 Go Pl X 20 Z 20 R Go Pallet 1 1 Y 25 5 Move pick R Jump Here Z 0 Go P 2 25 5 Go JA 25 0 20 180 pick 100 100 50 0 336 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz POrient Anweisung Stellt die Ausrichtung f r einen Punkt ein Syntax POrient point orientation Parameter point Pnumber oder P expr oder Punktlabel orientation Integer Ausdruck der den neuen Ausrichtungswert darstellt 0 Vorgabeeinstellung 1 RIGHTY 3 LEFTY Verwandte Befehle POrient Funktion Beispiel einer POrient Anweisung POrient pick RIGHTY POrient 1 LEFTY SPEL Language Reference Rev 3 5 gt J s 337 SPEL Sprachreferenz POrient Funktion Gibt die Ausrichtung eines Punktes aus Syntax POrient point Parameter point Integer Ausdruck der eine Punktnummer oder ein Punktlabel repr sentiert R ckgabewerte 0 _Vorgabeeinstellung 1 RIGHTY 3 LEFTY Verwandte Befehle POrient Anweisung Beispiel einer POrient Funktion Print POrient pick Print POrient 1 Print POrient P1 338 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz PosFound Funktion Gibt den Status der Find Operation aus Syntax PosFound R ckgabewerte TRUE wenn die Position w hrend der Bewegung gefunden wurde FALSE wenn die Position nicht gefunden wur
340. nguage Reference Rev 3 5 303 SPEL Sprachreferenz OpenNet Anweisung s ffnen eines TCP IP Netzwerkports Syntax OpenNet portNumber As Client Server Parameter portNumber Integer Ausdruck f r die zu ffnende Schnittstellennummer Der Bereich liegt zwischen 128 und 131 Beschreibung OpenNet ffnet einen TCP IP Port f r die Kommunikation mit einem anderen Rechner im Netzwerk Ein System sollte als Server ffnen und das andere als Client Es ist ohne Bedeutung welches zuerst ausgef hrt wird Verwandte Befehle ChkNet CloseNet SetNet Beispiel einer OpenNet Anweisung In diesem Beispiel haben zwei PCs ihre TCP IP Einstellungen wie folgt konfiguriert PC 1 Port 128 Host Name PC2 TCP IP Port 1000 Function tcpipl OpenNet 128 As Server WaitNet 128 Print 128 Data from host 1 Fend PC 2 Port 128 Host Name PC1 TCP IP Port 1000 Function tcpip2 String data OpenNet 128 As Client WaitNet 128 Input 128 data Print received data from host 1 Fend 304 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Oport Funktion Gibt den Status des spezifizierten Ausgangs aus Syntax Oport outnum Parameter outnum Zahl zwischen 0 und 511 die einen einzelnen Standard oder einzelnen Erweiterungs Ausgang repr sentiert R ckgabewerte Gibt den angegebenen Ausgangsstatus als entweder 0 oder 1 aus 0 Off Aus Status 1 On Ein Status Beschreibung Oport
341. nsor enth lt CompareType 0 kleiner als 1 gr er als Beschreibung Um eine Bewegung mithilfe eines Kraftsensors zu stoppen m ssen Sie den Trigger einstellen und dann Till Force in ihrer Bewegungsanweisung verwenden Sie k nnen den Trigger f r mehrere Achsen setzen Rufen Sie Force_SetTrigger f r jede Achse auf Setzen Sie den Schwellenwert auf 0 um eine Achse zu deaktivieren Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Force Sensing installiert ist Verwandte Befehle Force_Calibrate Beispiel einer Force_SetTrigger Anweisung Setzt einen Trigger wenn die Kraft der Z Achse niedriger als 1 ist um die Bewegung zu stoppen Force_SetTrigger 3 1 0 SpeedS 3 AccelS 5000 Move Place Till Force SPEL Language Reference Rev 3 5 179 SPEL Sprachreferenz Force_TC Anweisung s Schaltet die Drehmomentsteuerung Ein oder Aus und zeigt den aktuellen Modusstatus an Syntax Force_TC On Off Parameter On Off Die Drehmomentsteuerung kann Ein oder Aus geschaltet sein R ckgabewerte Zeigt die aktuelle Force_TC Moduseinstellung an wenn der Parameter weggelassen wird Beschreibung Verwenden Sie Force _TC um die Drehmomentsteuerung ein oder auszuschalten Ebenso m ssen ber Force_TCLim Drenmomentbegrenzungen eingestellt werden bevor die Drenmomentsteuerung wirksam wird Wenn Sie sich unter Drehmomentsteuerung zu einem Punkt bewegen und dann Force_TC Off ausf hren kann es
342. nt Value Entered was arrayVar i Next I Fend SPEL Language Reference Rev 3 5 259 SPEL Sprachreferenz LPrint Anweisung s Der LPrint Befehl sendet ASCIl Text an den PC Drucker Syntax LPrint expression expression Parameter expression Optional Ein numerischer oder ein Zeichenkettenausdruck Beschreibung Verwenden Sie Lprint um eine Daten Hardcopy auf dem Vorgabe PC Drucker zu drucken Nach der Ausf hrung von einer oder mehreren LPrint Anweisungen m ssen Sie EPrint ausf hren um die Daten an den Drucker zu senden Ans Ende jeder Zeile wird automatisch die Endung CRLF carriage return and line feed angeh ngt Verwandte Befehle EPrint Print Beispiel einer LPrint Anweisung Function dataPrint Integer i For i 1 to 10 LPrint qg_testDat i ext i EPrint Schickt die Daten an den Drucker des PCs Fend 260 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz LShift Funktion Verschiebt numerische Daten um eine vom Anwender definierte Bitanzahl nach links Syntax LShift number shiftBits Parameter number Der Integer Ausdruck der verschoben werden soll shiftBits Bitanzahl um die number nach links verschoben werden R ckgabewerte Gibt ein numerisches Ergebnis aus das dem number Wert entspricht nachdem die Bits um die in shiftBits definierte Anzahl von Bits nach links verschoben wurden Beschreibung LShift verschiebt die spezifizierten numerisch
343. ntroller hat startLine und endLine Argumente unterst tzt Diese werden in SPEL nicht unterst tzt Verwandte Befehle Chain Function Fend Halt Resume Quit SPEL Language Reference Rev 3 5 457 SPEL Sprachreferenz Xat Beispiel Function main XxXqt flash NoPause Startet die Funktion Flash als Task 2 Xqt Cycle 5 Startet die Funktion Cycle als Task 3 Do Wait 3 F hrt den Task 2 drei Sekunden lang aus Halt flash Unterbricht den Task Wait 3 Resume flash Setzt den Task fort Loop Fend Function Cycle count As Integer Integer i For i 1 To count Jump pick On vac Wait 2 Jump place Off vac Wait 2 Next i Fend Function flash Do On 1 Wait 0 2 Off 1 wait 0 2 Loop Fend 458 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz XY Funktion Gibt einen Punkt von individuellen Koordinaten aus die in einem Punktausdruck verwendet werden k nnen Syntax XY x y Z u Parameter x Real Ausdruck der die X Koordinate repr sentiert y Real Ausdruck der die Y Koordinate repr sentiert z Real Ausdruck der die Z Koordinate repr sentiert u Real Ausdruck der die U Koordinate repr sentiert R ckgabewerte Ein Punkt der auf der Basis der definierten Koordinaten konstruiert wird Verwandte Befehle JA Point Expression Punktausdruck Beispiel einer XY Funktion P10 XY 60 30 50 45 P2O SPEL Language Reference Rev 3 5 459 SPEL Sprachreferenz XYLim Anweisung
344. nur der ASCII Code des ersten Zeichens ausgegeben Obgleich der Asc Befehl Zeichenketten gestattet die l nger als ein Zeichen sind wird nur das erste Zeichen auch durch den Asc Befehl genutzt Asc gibt nur den ASCII Code des ersten Zeichens aus Potentielle Fehler Verwedung einer NULL Zeichenkette Wenn die Asc Funktion mit einer leeren Zeichenkette oder Nullzeichenkette als Parameterwert initiiert wird tritt ein Fehler auf Verwandte Befehle Chr Left Len Mid Right Space Str Val Asc Funktionsbeispiel Dieses Beispiel verwendet den Asc Befehl in einem Programm und ber das Online Fenster Function asctest Integer a b a Asc a b Asc b Asc c Print The ASCII value of a is a Print The ASCII value of bis b Print The ASCII value of c is c Fend ber das Online Fenster gt print asc a 97 gt print asc b 98 gt SPEL Language Reference Rev 3 5 45 SPEL Sprachreferenz Atan Funktion Gibt den Arkustangens eines numerischen Ausdrucks aus Syntax Atan number Parameter Hinweise zur number Zahl Numerischer Ausdruck der den Tangens eines Winkelwertes repr sentiert R ckgabewerte Real Wert in Radianten der den Arkustangens des Parameters number repr sentiert Beschreibung Atan gibt den Arkustangens des numerischen Ausdrucks aus Der numerische Ausdruck number kann jeglicher numerische Wert sein Der von Atan ausgegebenen Wert bewegt sich zwischen PI
345. nweisung s Formatiert einen numerischen oder einen Datum Zeit Ausdruck Syntax FmtStr expression strFormat strOut Parameter expression Zu formatierender Ausdruck strFormat Formatspezifizierungs Zeichenkette strOut Ausgangs Zeichenkettenvariable Beschreibung FmtStr wird verwendet um einen numerischen Ausdruck in eine Zeichenkette umzuwandeln Spezifikationssymbole f r das numerische Format Zeichen Beschreibung Keins Anzeige der Zahl ohne Formatierung 0 Zahlzeichen Platzhalter Anzeige eines Zahlzeichens oder einer Null Wenn der Ausdruck ein Zahlzeichen an der Stelle hat an welcher in der Formatzeichenkette eine Null 0 erscheint so wird es angezeigt Ansonsten wird an dieser Stelle eine Null angezeigt Wenn eine Zahl weniger Zahlzeichen hat egal auf welcher Seite der Dezimalen als der Formatausdruck Nullen aufweist werden die vorangehenden oder die anh ngenden Nullen angezeigt Wenn die Zahl mehr Zahlzeichen zur Rechten der Dezimaltrennung hat als Nullen zur rechten Seite der Dezimaltrennung im Formatausdruck vorhanden sind wird diese Zahl auf so viele Dezimalstellen gerundet wie Nullen vorhanden sind Wenn die Zahl mehr Zahlzeichen zur Linken der Dezimaltrennung hat als Nullen zur linken Seite der Dezimaltrennung im Formatausdruck vorhanden sind werden die berz hligen Zahlzeichen ohne nderung angezeigt Zahlzeichen Platzhalter Zeigt ein Zahlzeichen oder gar nichts an Wenn der Ausdruck ein Zahlz
346. nweisung GoSub verwendet Der Hauptzweck der Return Anweisung ist die R ckgabe der Programmsteuerung an den Befehl der auf den GoSub Befehl folgt der das Unterprogramm urspr nglich ausgel st hat Der GoSub Befehl bewirkt dass die Programmsteuerung an eine durch den Anwender definierte Anweisungs Zeilennummer oder zu einem gleicherma en definierten Label verzweigt wird Das Programm f hrt dann die Anweisung in dieser Zeile aus und f hrt mit der Ausf hrung in den darauf folgenden Zeilennummern fort bis es auf einen Return Befehl trifft Der Return Befehl veranlasst die Programmsteuerung dann zu der Zeile zur ck zu wechseln welche direkt auf diejenige folgt welche den GoSub Befehl urspr nglich initiiert hat D h der GoSub Befehl veranlasst die Ausf hrung eines Unterprogramms wonach die Ausf hrung durch den Return Befehl zu der Anweisung zur ckkehrt die auf den GoSub Befehl folgt Potentielle Fehler Return Befehl ohne GoSub Befehl gefunden Ein Return Befehl wird verwendet um aus einem Unterprogramm in das Ursprungsprogramm zur ck zu wechseln von dem der GoSub Befehl ausgegeben wurde Wenn ein Return Befehl gefunden wird ohne dass dem ein GoSub Befehl vorangegangen ist wird Fehler Nr 3 ausgegeben Ein allein stehender Return Befehl ist bedeutungslos da das System nicht wei wohin es zur ckkehren soll Verwandte Befehle OnErr GoSub GoTo SPEL Language Reference Rev 3 5 365 SPEL Sprachreferenz Beispiel ei
347. nweisungen parallel zur Ausf hrung von Bewegungsbefehlen SPEL Language Reference Rev 3 5 Zusammenfassung der SPEL Befehle Speed Accel Weight Inertia Arc Move SpeedS AccelS Home HomesSet Hordr InPos CurPos Pallet Fine Qp JRange Range XYLim CX CY Cz CU PIs Agl PAg PPIs SPEL Language Reference Rev 3 5 Definiert bzw gibt die Geschwindigkeit f r eine PTP Bewegung aus Definiert bzw gibt die Einstellungen f r Beschleunigung und Verz gerung von PTP Bewegungen aus Definiert das Gewicht der Nutzlast und die L nge des 2 Arms bzw gibt deren Werte aus Definiert das Massentr gheitsmoment des Roboterarms bzw gibt dessen Wert aus F hrt eine kreisinterpolierte Bewegung aus F hrt eine linearinterpolierte Roboterbewegung aus Definiert die Geschwindigkeit f r interpolierte Befehle bzw gibt sie aus Definiert die Einstellungen f r Beschleunigung und Verz gerung f r interpolierte Bewegungen bzw gibt sie aus Bewegt den Roboter zur benutzerdefinierten Home Position Definiert bzw gibt die Home Position aus Definiert die Reihenfolge der Achsenbewegung bei Ausf hrung des HOME Befehls berpr ft ob sich der Roboter in Position befindet bewegungslos Gibt w hrend der Bewegung die aktuelle Position aus Definiert eine Palette oder gibt einen Palettenpunkt aus Definiert die Grenzwerte f r Positionierungsfehler Definiert den Quick Pause Status bzw gibt
348. oTo Befehl bewirkt dass die Programmsteuerung ohne Bedingung an eine designierte Anweisungs Zeilennummer oder zu einem Label verzweigt wird Syntax GoTo linenum label Parameter lineNum Dies ist die Zeilennummer zu der die Programmausf hrung wechselt wenn der GoTo Befehl ausgef hrt wird G ltige Zeilennummern liegen zwischen 0001 und 32767 Jegliche g ltige Zeilennummer ist zul ssig label Anstatt eine Zeilennummer zu nutzen kann der Anwender auch ein Label definieren Wenn der Anwender im go to Programm ein Label spezifiziert springt die Programmausf hrung zu der Zeile in der sich das Label befindet Das Label kann bis zu 32 Zeichen lang sein Das erste Zeichen muss jedoch ein Buchstabe sein keine Zahl Beschreibung Der GoTo Befehl bewirkt dass die Programmsteuerung an eine durch den Anwender definierte Anweisungs Zeilennummer oder zu einem gleicherma en definierten Label verzweigt wird Das Programm f hrt dann die Anweisung in der betreffenden Zeile aus und f hrt dann mit der Ausf hrung von dort aus fort GoTo wird am h ufigsten f r den Sprung zu einem Exit Label auf Grund einer Fehlermeldung verwendet Einschr nkung Verwendung zu vieler GoTo Anweisungen Bitte seien Sie mit der GoTo Anweisung vorsichtig da die Verwendung zu vieler GoTos in einem Programm letzteres schwer verst ndlich machen k nnen Die generelle Regel lautet so wenig GoTos zu verwenden wie m glich Einige GoTos sind fast immer notwendig Es
349. oder 3 2060 Die eingegebene LOCAL Nummer f r PLOCAL liegt au erhalb des festgelegten Bereichs 0 15 2061 Die eingegebenen Positionsdaten f r INPUT haben ein ung ltiges Format 2066 berlauf 2067 Negativer berlauf 2102 Es gibt keinen Eintrag f r SPEL NT in der Registrierung 2200 Fehler im Steuerungs menue 2201 Alle Bedingungen w hrend des ausgew hlten WAIT Status sind FALSE 2202 RCVMSG wurde bereits ausgef hrt 2203 SNDMSG wurde bereits ausgef hrt 2204 Der DECLARE Befehl wurde noch nicht ausgef hrt 2300 System Fehler 2301 Die Anzahl der auszuf hrenden Tasks liegt au erhalb der Anzahl der maximal ausf hrbaren Tasks 32 2302 Die angegebene Funktion kann nicht gefunden werden 2303 Die angegebene Funktion wurde durch einen Ausf hrungsfehler angehalten 2304 Die angegebene Funktion wird ausgef hrt 2305 Kein freier Speicher im Programm mehr vorhanden 2308 Die angegebene Task oder das Untersystem kann nicht gefunden werden 2309 Die angegebene Funktion wird editiert und kann nicht ausgef hrt werden 2310 Die Anzahl der Breakpoints au erhalb des Limits 64 2311 Der Speicherbereich f r die Stringvariablen ist nicht ausreichend 2312 Die angegebene Task kann nicht gefunden werden 2313 Alle CTRs laufen 2314 Es gibt keine Bitnummer die dem angegebenen CTR zugewiesen wurde 2316 Das angegebene Byte b
350. oder Sw Eingabe Anweisung verwendet werden um den Zustand der Hardware Eing nge oder Merker zu berpr fen Der Zustand muss einen TRUE 1 oder FALSE 0 Wert ausgeben Die folgenden Funktionen und Operatoren k nnen f r die inputCondition verwendet werden Funktionen Sw Sw In In Operatoren And Or Xor Andere Klammern um bestimmten Operationen und Variablen Priori t einzur umen Beschreibung Sense wird verwendet um w hrend eines Jump Befehls die Abw rtsbewegung der Z Achse zu stoppen Die Sense Bedingung muss mindestens 1 Input oder Merker Input Funktion enthalten Wenn Variablen in eine Sense Bedingung eingebunden sind werden ihre Werte w hrend der Sense Ausf hrung berechnet Mehrfache Sense Anweisungen sind erlaubt Die zuletzt definierte Sense Bedingung bleibt solange aktuell bis sie von einer anderen Sense Anweisung ersetzt wird Jump mit Sense Bedingung berpr ft ob die aktuelle Sense Bedingung erf llt ist Wenn die Bedingung erf llt ist schlie t der Jump Befehl ab wenn der Roboter ber dem Zielpunkt angehalten hat Wenn z B die Sense Bedingung 1 ist bleibt der Roboterarm genau ber der Zielposition ohne die Z Achse herab zu bewegen Wenn die Sense Bedingung 0 ist beendet der Roboterarm die ganze Jump Befehl Bewegung bis zur Zielposition Wenn Parameter ausgelassen werden werden die aktuellen Sense Definitionen angezeigt Hinweis Sense Einstellung bei Einschalten der Versor
351. ohlen den Namen globaler Variablen ein g_ Pr fix voranzustellen um Globale im Programm leichter erkennbar zu machen Zum Beispiel Global Long g_PartsCount Verwandte Befehle Byte Double Integer Long Real String 188 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Beispiel einer Global Anweisung Das folgende Beispiel zeigt zwei verschiedene Programmdateien Die erste Programmdatei definiert einige Globalvariablen und initialisiert sie Die zweite Datei verwendet eben diese Globalvariablen DATEI MAIN PRG Global Integer statusl Global Real numsts Function Main Integer I statusl 10 Das folgende Beispiel zeigt zwei verschiedene Programmdateien Die erste Programmdatei definiert einige Globalvariablen und initialisiert sie Die zweite Datei verwendet auch diese Globalvariablen DATEI MAIN PRG Global Integer g_Status Global Real g_MaxValue Function Main g_Status 10 g_MaxValue 1 1 Fend DATEI2 TEST PRG Function Test Print statusi g_Status Print MaxValue q9_MaxValue Fend SPEL Language Reference Rev 3 5 189 SPEL Sprachreferenz Go Anweisung s Bewegt den Arm in einer PTP Bewegung von seiner aktuellen Position zum definierten Punkt oder zur Position X Y Z U Der Go Befehl kann eine beliebige Kombination von einer bis zu vier Achsen gleichzeitig bewegen Syntax Go destination CP searchExpr Parameter destination Der Zielort einer Bewegung die e
352. om_Return ausgef hrt wird ohne von SPELCom aufgerufen worden zu sein wird der Befehl ignoriert und es tritt kein Fehler auf Hinweis Dieser Befehl ist nur dann anwendbar wenn die VB Guide Option installiert ist SPELCom_Return Beispiel In diesem Beispiel ruft ein VB Programm die SPEL Funktion GetPart auf welche eine Fehlernummer ausgibt VB Code Dim sts As Integer sts SPELComl1 Call GetPart SPEL Code Function GetPart Integer errNum OnErr GPErr errNum 0 Jump P1 On vacuum Wait Sw vacOn 1 2 If Tw 1 Then errNum VAC_TIMEOUT Endif GPExit SPELCom_Return errNum Exit Function GPErr errNum Err Eclr GoTo GPExit Fend SPEL Language Reference Rev 3 5 403 SPEL Sprachreferenz Sqr Funktion Berechnet den nicht negativen Quadratwurzelwert des Operanden Syntax Sqr Operand Parameter Operand Ein Ausdruck mit einer Real Zahl R ckgabewerte Quadratwurzelwert Beschreibung Die Sqr Funktion gibt den nicht negativen Quadratwurzelwert des Operanden aus Potentielle Fehler Negativer Operand Wenn der Operand ein negativer numerischer Wert ist oder einen solchen besitzt tritt ein Fehler auf Verwandte Befehle Abs And Atan Atan2 Cos Int Mod Not Or Sgn Sin Str Tan Val Xor Beispiel einer Sqr Funktion Dies ist ein einfaches Online Fenster Beispiel f r die Verwendung der Sqr Funktion gt print sqr 2 1 414214 gt Das folgende
353. on wurde nicht deklariert 2343 Ausgangsbefehl kann w hrend eines NOT AUS Zustands nicht ausgef hrt werden 2344 Taskbearbeitungs Befehl kann w hrend eines NOT AUS Zustands nicht ausgef hrt werden 2345 Der festgelegte Befehl kann nicht in einer bevorrechtigten Task ausgef hrt werden 2346 EResume Anweisung kann ohne OnErr GoTo nicht verwendet werden 2347 String Stapel berlauf 2348 XQT Anweisung kann in einem TRAP Prozess nicht angewendet werden 2349 Signal f r WAITSIG wurde w hrend der berwachungszeit definiert durch TMOUT nicht empfangen 2351 CALL Anweisung kann nicht im Online Fenster verwendet werden 2352 Zu viele Punkte f r den Curve Pfad definiert 2353 Der angegebene Dateiname ist zu lang 2354 Zu viele Punkte im Curve Pfad angegeben 2355 Zu viele On Off Ein Aus Befehle f r die CURVE Anweisung definiert 2356 Die Gr e des internen Codes f r CURVE ist zu lang 2357 Kann den Speicher f r Curve nicht erhalten 2358 Kann den Speicher f r CVMove nicht beibehalten 2359 Die angegebene Datei ist keine Kurvendatei 2360 Die Version der Kurvendatei ist falsch 2361 Die Manipulatornummer der Kurvendetei ist falsch 2362 Die Gr e der Kurvendeatei ist falsch 2363 Die Pr fsumme der Kurvendatei ist falsch 2364 Interner Code ist falsch 2401 FEND Systemfehler 2501 Es gibt mehr verschachtelte Funktionsaufrufe a
354. ons Tab im System Konfigurationsdialog den Sie ber das Setup Men erreichen k nnen SPEL Language Reference Rev 3 5 301 SPEL Sprachreferenz Verwandte Befehle In In InBCD Off Off On On Oport Out Out Sw Sw Wait Beispiel einer OpBCD Funktion Das Beispiel unten zeigt wie der Haupttask einen Hintergrundtask namens iotask startet iotask ist ein einfacher Task um abwechselnd E A Nrn 1 amp 2 ein und dann E A Nrn O und 3 einzuschalten Wenn 1 amp 2 eingeschaltet sind sind 0 amp 3 ausgeschaltet und umgekehrt Function main Xqt 2 iotask Go P1 Fend Function iotask Do OpBCD 0 6 OpBCD 0 9 Wait 10 Loop Fend Andere einfache Beispiele vom Online Fenster sehen aus wie folgt gt OpBCD 1 6 Schaltet die Ausg nge 1 amp 2 ein gt OpBCD 2 1 Schaltet den Ausgang 8 ein gt OpBCD 3 91 Schaltet die Ausg nge 24 28 amp 31 ein 302 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz OpenCom Anweisung s ffnen einer RS 232 Kommunikationsschnittstelle Syntax OpenCom portNum Parameter portNum Integer Ausdruck f r die zu ffnende Schnittstellennummer Die Werte liegen zwischen 1 und 16 Beschreibung Eine RS 232 Schnittstelle muss aktiviert werden bevor sie ge ffnet werden kann Siehe Kommunikationsschnittstellen Tabulator Konfiguration im Controller Men Verwandte Befehle ChkCom CloseCom SetCom Beispiel einer OpenCom Anweisung OpenCom 1 SPEL La
355. ozentangaben repr sentiert Setzen Sie den Wert auf 1 um die Anweisung zu deaktivieren J2TorqueLimit Integer Ausdruck der den Drehmomentbegrenzungswert f r Achse 2 in Prozentangaben repr sentiert Setzen Sie den Wert auf 1 um die Anweisung zu deaktivieren JSTorqueLimit Integer Ausdruck der den Drehmomentbegrenzungswert f r Achse 3 in Prozentangaben repr sentiert Setzen Sie den Wert auf 1 um die Anweisung zu deaktivieren J4TorqueLimit Integer Ausdruck der den Drehmomentbegrenzungswert f r Achse 4 in Prozentangaben repr sentiert Setzen Sie den Wert auf 1 um die Anweisung zu deaktivieren R ckgabewerte Zeigt die Drehmomentbegrenzungswerte die f r jede Achse definiert sind wenn die Parameter weggelassen werden Beschreibung Die Drenmomentbegrenzungs Einstellungen sind wirksam wenn der TC Modus eingeschaltet ist Diese Einstellungen stellen einen Prozentwert des gesamten Drehmoments dar Wenn die Einstellung zu niedrig ist kann es sein dass der Roboter sich nicht bewegen kann In diesem Fall wird der Bewegungsbefehl stoppen bevor das Ziel erreicht ist Nachdem Force_TCLim eingestellt wurde muss Force_TC On erneut ausgef hrt werden Die Begrenzungen werden automatisch deaktiviert auf 1 gesetzt wenn Reset Motor On oder SLock auftreten Verwandte Befehle Force_TC Anweisung Force_TCLim Funktion Beispiel einer Force_TCLim Anweisung Speed 5 Setzt die Drehmomentbegrenzung der Z Achse auf 20 Prozent Force_T
356. partl Exit Function errchk errnum Err 0 EClr If errnum 94 Then Print TIME Out Error Occurred during period Print waiting for Oport to come on Check Print Output 5 for proper operation Then Print restart this program Else Print ERROR number errnum Occurred Print Program stopped due to errors EndIf Exit Function Fend Andere einfache Beispiele vom Online Fenster sehen aus wie folgt On 1 Print Oport 1 OEF 1 Print Oport 1 VOV VENY y 306 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Or Operator s F hrt die bitweise Or Operation Oder Verkn pfung zwischen den Werten der Operanden aus Syntax Operand Or Operand Parameter Operand Integer Ausdruck R ckgabewerte Bitweise or verkn pfter Wert der Operanden Beschreibung Der ODER Operator f hrt die bitweise Or Operation Oder Verkn pfung zwischen den Werten der Operanden aus Jedes Bit des Ergebnisses ist der or verkn pfte Wert zwei einander entsprechender Bits der beiden Operanden Verwandte Befehle And LShift Mod Not RShift Xor Beispiel des Or Operatoren Dies ist ein einfaches Online Fenster Beispiel bez glich der Verwendung des EXKLUSIV ODER Operatoren gt print 1 or 2 3 gt SPEL Language Reference Rev 3 5 307 SPEL Sprachreferenz Out Anweisung s Setzt 8 Ausg nge gleichzeitig Syntax Out portNumber outData Parameter portNumber Integer Ausdruck zwischen 0 und 63 d
357. pleted successfully Print Input 4 never came on during the move EndIf Fend lt Andere Beispielsyntax vom Online Fenster gt gt Jump P10 X50 CO LimZ 20 Sense D50 0On 0 D80 0n 1 2A SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Kill Anweisung L scht Dateien auf einem Laufwerk des PCs Syntax Kill pathName Parameter pathName Zeichenkettenausdruck der den zu l schenden Dateinamen enth lt pathName kann das Verzeichnis oder den Ordner und das Laufwerk enthalten Verwandte Befehle Del Dir SavePoints Biepiel einer Kill Anweisung Das folgende Beispiel wird vom Online Fenster aus ausgef hrt gt Kill ABCD DAT gt SPEL Language Reference Rev 3 5 245 SPEL Sprachreferenz LCase Funktion Gibt eine Zeichenkette aus die in Kleinbuchstaben umgewandelt wurde Syntax LCase string Parameter string Ein g ltiger Zeichenkettenausdruck R ckgabewerte Die konvertierte Kleinbuchstaben Zeichenkette Verwandte Befehle UCase Beispiel einer LCase Funktion Data LCase str str data str str 246 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Left Funktion Gibt eine Teilkette von der linken Seite eines Zeichenkettenausdrucks aus SyntaxLeft string count Parameter string Zeichenkettenausdruck von dem die u erst links gelegenen Zeichen kopiert werden count Anzahl der zu kopierenden Zeichen aus string beginnend mit dem Zeichen das
358. prachreferenz Read Anweisung Ss Liest Zeichen aus einer Datei oder einer Kommunikationsschnittstelle Syntax Read fileNumber stringVar count Parameter fileNumber Datei oder Kommunikationsschnittstelle aus der gelesen werden soll stringVar Name einer Zeichenkettenvariable welche die Buchstabenzeichenkette empf ngt count Maximale Anzahl der zu lesenden Bytes Verwandte Befehle Seek Write Beispiel einer Read Anweisung Integer numOfChars String data numOfCchars ChkCon 1 If num fchars gt 0 Then Read 1 data numOfchars EndIf SPEL Language Reference Rev 3 5 357 SPEL Sprachreferenz Real Anweisung s Deklariert Real Variablen 8 Byte Real Zahl Syntax Real varName subscripts varName subscripts Parameter varName Variablenname den der Anwender als Real Typ deklarieren will subscripts Optional Dimensionen einer Feldvariable es k nnen bis zu drei multiple Dimensionen deklariert werden Die Syntax sieht aus wie folgt dim1 dim2 dim3 dim1 dim2 dim3 k nnen ein Integer zwischen 0 und 32767 sein Beschreibung Real wird verwendet um Variablen als Real Typ Variablen zu deklarieren Alle Variablen sollten am Anfang einer Funktion deklariert sein Verwandte Befehle Boolean Byte Double Global Integer Long String Real Beispiel Das folgende Beispiel zeigt ein einfaches Programm das unter Verwendung von Real einige Variablen deklariert Function realtest
359. r Parameter JointNumber Integer Ausdruck zwischen 1 und 4 der die Achse repr sentiert f r die Mcorg ausgef hrt werden soll Es muss mindestens eine Achsnummer definiert werden damit der Mcorg Befehl korrekt und fehlerfrei funktioniert Mehrere Achsen k nnen Mcorg zur selben Zeit durchf hren lassen Wenn die Roboter eine Kugelumlaufspindel haben wie es zum Beispiel bei SCARA Robotern der Fall ist und die Notwendigkeit besteht f r die dritte und vierte Achse einen Kalibirerungsparameter zu berechnen spezifizieren Sie bitte beide Achsen zusammen Wenn nur eine Achse spezifiziert wird tritt ein Fehler auf Beschreibung Berechnet die korrekten Kalibrierungsparameter f r die Maschinenkalibrierung mit Mcal Die Schritte die notwendig sind um Mcorg mit SCARA Robotern richtig zu nutzen werden unten gezeigt 1 Stellen Sie sicher dass die Motoren ausgeschaltet sind F hren Sie den Motor Off Motor Aus Befehl aus 2 Bewegen Sie die dritte und vierte Roboterachse innerhalb des Bewegungsbereiches 3 Bewegen Sie den Arm in die korrekte Mcorg Position indem Sie die LEDs auf dem Sensormonitor verwenden welcher sich auf der R ckseite der Roboterbasis befindet Die LEDs werden unten angezeigt Die Achsnummern stehen neben jeder LED um anzuzeigen welche LED welcher Kalibrierungs LED entspricht Wenn Sie die erste oder zweite Achse bewegen schaltet sich die der Achse entsprechende LED in bereinstimmung mit der Armbewegung e
360. r Eingabe von an Stelle eines Dateinamens Verwandte Befehle ChDir ChDrive Beispiel eines Dir Befehls Die folgenden Beispiele werden vom Online Fenster aus ausgef hrt gt Dir gt Dir TEST gt Dir DAT SPEL Language Reference Rev 3 5 125 SPEL Sprachreferenz Dist Funktion Gibt die Entfernung zwischen zwei Roboterpunkten aus Syntax Dist point1 point2 Parameter point1 point 2 _Spezifiziert zwei Roboter Punktausdr cke P Pnumber P expr Punktlabel R ckgabewerte Gibt die Entfernung zwischen beiden Punkten aus Real Wert in Millimetern Verwandte Befehle CU CX CY CZ Beispiel einer Dist Funktion Real distance distance Dist Pl P2 126 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Do Loop Anweisung s Wiederholt einen Block von Anweisungen w hrend eine Bedingung WAHR ist oder bis eine Bedingung WAHR wird Syntax Do While Until condition statements Exit Do statements Loop Oder Sie k nnen diese Syntax verwenden Do statements Exit Do statements Loop While Until condition Die Do Loop Anweisungssyntax besteht aus folgenden Teilen Teil Beschreibung condition Bedingung Optional Numerischer Ausdruck oder Zeichenkettenausdruck der WAHR oder FALSCH ist Wenn die condition Bedingung Null ist wird sie als FALSCH behandelt statements Eine oder mehrere Anweisungen werden wiederholt w hrend oder bis di
361. r Funktion sind nicht zul ssig 1570 Falsche Anzahl von Parametern 1571 Die Nummer der Positionsparameter sind nicht korrekt 1590 Syntax Fehler bei der Macro Anweisung 1591 Die Macro Anweisung beinhaltet einen Syntax Fehler 1598 Syntax Fehler 1600 Keine entsprechende ENDIF Anweisung gefunden 1601 Keine entsprechende END SELECT Anweisung gefunden 1602 Keine entsprechende WEND Anweisung gefunden 1603 Keine entsprechende LOOP WHILE UNTIL Anweisung gefunden Keine entsprechende END SELECT Anweisung gefunden 1604 Keine entsprechende LOOP Anweisung gefunden 1605 Keine entsprechende NEXT Anweisung gefunden 1606 Keine entsprechende IF Anweisung gefunden 1607 Keine entsprechende SELECT Anweisung gefunden 1608 Keine entsprechende WHILE Anweisung gefunden 1609 Keine entsprechende LOOP WHILE UNTIL Anweisung gefunden 1610 Keine entsprechende DO Anweisung gefunden 1611 Es existiert keine entsprechende FOR Anweisung 1650 Undefinierte Zeilennummer 1652 Undefinierte Variable 1700 Zweimaliges ausf hren von EXIT in ein und derselben Verschachtelung 1701 ELSE wurde zweimal in einer IF Anweisung gefunden 1702 Default wurde zweimal in einer SELECT Anweisung gefunden 1703 Die Interation hat zu viele Verschachtelungsebenen Maximum 16 1704 Die bedingte Anweisung hat zu viele verschachtelte Ebenen Maximum 16 1705 Zu viel
362. rameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert index Optional Integer Ausdruck der den Index des ersten zu entfernenden Objekt definiert Beschreibung Der Befehl Cnv_QueRemove wird verwendet um einen oder mehrere Objekte aus einem Conveyor Queue zu entfernen Normalerweise werden Objekte aus dem Queue entfernt wenn Sie die Bearbeitung der Daten abgeschlossen haben Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_QueAdd Anweisung Beispiel einer Cnv_QueRemove Anweisung Jump Cnv_QueGet 1 On gripper Wait 1 Jump place Off gripper Wait 1 Entfernt die Daten von dem Conveyor Cnv_QueRemove 1 88 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Cnv_QueUserData Anweisung s Stellt zum Queue Eintrag geh rige Anwender Daten ein und zeigt sie an Syntax Cnv_QueUserData conveyorNumber index userData Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert index Optional Integer Ausdruck welcher den Index der Objektnummer im Queue definiert userData Optional Real Ausdruck der Anwender Daten definiert Beschreibung Cnv_QueUserData wird verwendet um Ihre eigenen Daten mit jedem Objekt in einem Conveyor Queue zu speichern Anwender Daten sind optional Sie sind f r den Normalbetrieb nicht vonn ten Hinweis Dieser Befehl ist nur dann anwendbar wenn d
363. rden F r den Jump Befehl ist es m glich Geschwindigkeit und Beschleunigung f r die folgenden Bewegungen separat zu definieren Hubbewegung der Z Achse horizontale Verfahrbewegung inklusive U Achsen Rotation und die Abw rtsbewegung der Z Achse Potentielle Fehler Der LimZ Wert ist nicht hoch genug Wenn die aktuelle Armposition der Z Achse h her ist als der Wert der f r LimZ eingestellt wurde und der Versuch unternommen wird einen Jump Befehl auszuf hren tritt Fehler Nr 146 auf Verwandte Befehle Accel Arc Arch Go Js Jt LimZ Point Expression Punktausdruck Pulse Sense Speed Stat Till SPEL Language Reference Rev 3 5 243 SPEL Sprachreferenz Beispiel einer Jump Anweisung Das folgende Beispiel zeigt eine einfache PTP Bewegung zwischen den Punkten PO und P1 und die darauf folgende R ckkehr zum Punkt PO unter Verwendung des Jump Befehls Sp ter im Programm bewegt sich der Arm vermittels des Jump Befehls bis am Eingang 4 Spannung anliegt Wenn an Eingang 4 Spannung anliegt stoppt der Arm seine Bewegung Wenn am Eingang 4 nie Spannung anliegt f hrt der Arm den Jump Befehl vollst ndig aus und kommt bei Punkt P1 an Function jumptest Home Go PO Go P1 Sense Sw 4 1 Jump PO Limz 10 Jump Pl LimZ 10 Sense berpr ft den Eingang 4 If Js 0 1 Then Print Input 4 came on during the move and Print the robot stopped prior to arriving on Print point P1 Else Print The move to P1 com
364. rden stehen die Ports 0 bis 5 zur Verf gung Die Ports 6 63 stehen zur Verf gung sobald der Anwender zus tzliche I O Platinen in die Steuerung installiert mit 512 zur Verf gung stehenden Eing ngen und 512 Ausg ngen Eingangskanal Ergebnis unter Verwendung von Port 0 R ckgabewerte 255 31 30 29 28 27 26 25 Off Off Off Off Off Off On Ai Rus ne ns en ar ar En ar ar a ar 255 On 218 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Einschr nkung Der Unterschied zwischen In und In Es ist sehr wichtig dass der Anwender den Unterschied zwischen den In und In versteht Der In Befehl arbeitet mit dem internen Merker und hat keinerlei Auswirkungen auf den Hardware I O des Roboters Der In Befehl arbeitet mit den 512 Hardware Eingabekan len Diese Hardwarekan le sind getrennte Eing nge die mit systemexternen Ger ten kommunizieren Der Unterschied zwischen In und Sw Der Sw Befehl gestattet es dem Anwender jeweils einen Hardware Eingangskanal zu lesen Der R ckgabewert von Sw ist entweder eine 1 oder eine 0 was zeigt dass der Hardware Eingangskanal entweder ein oder ausgeschaltet ist Der Sw Befehl kann jeden der 512 Hardware Eing nge einzeln pr fen Der In Befehl ist dem Sw Befehl sehr hnlich da auch er verwendet wird um den Status der Hardware Eingabekan le zu berpr fen Es gibt jedoch einen deutlichen Unterschied Der In Befehl berpr ft gleichzeitig 8 Hardwar
365. rg3 Parameter eventNumber Ein Integer Ausdruck dessen Wert zwischen 1000 und 32767 liegt msgArg1 msgArg2 msgArg3 Optional Jedes Nachrichtenargument kann entweder eine Zahl eine Buchstabensymbol Zeichenkette oder ein Variablenname sein Beschreibung Dieser Befehl erleichtert es Echtzeitinformationen an eine andere Anwendung zu senden die die SPELCom ActiveX Steuerung verwenden Diese wird von der VB Guide Option bereitgestellt Sie k nnen z B den Teile Z hlerstand die Losmenge usw aktualisieren indem Sie ein Ereignis an Ihr Host Programm schicken Hinweis Dieser Befehl ist nur dann anwendbar wenn die VB Guide Option installiert ist Verwandte Befehle VB Guide Manual Beispiel eines SPELCom_Event In diesem Beispiel sendet ein SPEL Task Zyklusdaten an das Host Programm Function RunParts Integer cycNum cycNum 0 Hauptschleife while True cycNum cycNum 1 Spelcom_Event 3000 cycNum lot cycTime Wend Fend Verwandte Befehle VB Guide Manual 402 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz SPELCom_Return Anweisung s Gibt einen Wert von einer SPEL Funktion an die Call Methode eines VB Guide SPELCom Steuerelements aus Syntax SPELCom_Return returnValue Parameter returnValue Ein Integer Ausdruck der von der SPELCom Call Methode zur ckgesendet wird Beschreibung SPEL Com_Return ist ein komfortabler Weg um einen Wert an die SPELCom Host Anwendung auszugeben Wenn SPELC
366. rierung ist unzureichend 392 Keine Kalibrier Sequenz ausgew hlt 393 Ung ltige String l nge f r die Kalibrierung oder Pr fung 394 Ung ltiger Zeichensatz 395 Ung ltiger Kalibrierungs String Wert 396 Ung ltiger Character Position Parameter f r Constraints 397 Ung ltige CalString l nge 398 OCR Kalibrierung fehlerhaft 399 Keine Objekte in dieser Sequenz 400 FEND ohne Function gefunden 401 Function ohne FEND gefunden 466 SPEL Language Reference Rev 3 5 SPEL Fehlermeldungen Error Message 402 Doppelte Zeilennummer 403 Falsche Zeilennummer 404 Zeilennummer zu gro 405 Funktion existiert bereits als DLL Funktion 407 Task wurde durch NOT AUS beendet 408 Punktedatei f r den aktuellen Roboter nicht gefunden 409 Ung ltiger Befehl f r den aktuellen Roboter 410 Zeit berschreitung bei Speicherzugriff 411 Ungleiche Typen 412 Zeit berschreitung bei DeviceNet Zugriff 413 Falsche Gr e zugeteilt 414 Es sind keine Gruppen f r das aktuelle Projekt eingerichtet 415 Speicher berlauf 416 Kein Bereich 417 SPEL OLE Kanal ist belegt 418 Zeit berlauf bei einem SPEL OLE Befehl 419 Zeit berlauf bei Zugriff auf SPEL 420 Zeit berlauf bei Zugriff auf Ethernet E A 421 Abfangroutine l uft bereits 422 SPWLIB30 OLE Fehler 423 Task wurde abgebroche
367. rm zu folgender Bewegung 1 Beginn der Bewegung mit ausschlie lichem Verfahren der Z Achse bis sie den durch den LimZ Befehl vorgegebenen Z Koordinatenwert erreicht hat Oberer Z Wert 2 Als n chstes Bewegung in horizontaler Richtung zur Zielpunktposition bis die endg ltigen X Y und U Positionen erreicht sind 3 Der Jump Befehl wird dann abgeschlossen indem der Arm nur mit einer Bewegung der Z Achse abw rts bewegt wird bis die Zielposition der Z Achse erreicht ist Gate Motion JUMP with ARCH 7 Arch Tabellen Standardwerte Arch Nummer Hubstrecke Absenkstrecke Hinweise Eine andere Ursache f r die Gate Bewegung Wenn der spezifizierte Wert f r die Hub oder Absenkstrecke gr er ist als die tats chliche Z Achsen Distanz ber die sich der Roboter bewegen muss um die Zielposition zu erreichen tritt eine Gate Bewegung auf D h es tritt keine Art von Arch Bewegung auf Zur cksetzen der Arch Tabelle auf die Standardwerte mithilfe des Verinit Befehls Mit jeder Ausgabe des Verinit Befehls werden die Werte der Arch Tabelle auf ihre Standardwerte zur ckgesetzt Die Arch Werte werden beibehalten Die Werte der Arch Tabelle werden dauerhaft gespeichert und nicht ge ndert bis sie entweder vom Anwender ge ndert werden oder ein Verinit Befehl ausgegeben wird Verwandte Befehle Jump Verinit SPEL Language Reference Rev 3 5 35 SPEL Sprachreferenz Arch Beispiel Im Folgenden finden Sie B
368. rsprungs und Zieldateien definiert werden Wenn sie im Online Fenster verwendet werden kann man Anf hrungsstriche und Kommata auslassen Verwandte Befehle ChDir Dir MkDir Beispiel eines Copy Befehls Function BackupData Copy c data test dat c databack test dat Fend Das folgende Beispiel wird vom Online Fenster aus ausgef hrt gt copy test dat test2 dat SPEL Language Reference Rev 3 5 95 SPEL Sprachreferenz Cos Funktion Gibt den Kosinus eines numerischen Ausdrucks aus Syntax Cos number Parameter number Numerischer Ausdruck in Radianten R ckgabewerte Numerischer Wert in Radianten die den Kosinus des numerischen Ausdrucks number repr sentiert Beschreibung Cos gibt den Kosinus des numerischen Ausdrucks aus Der numerische Ausdruck number muss in Radianteneinheiten angegeben werden Der von der Cos Funktion ausgegebenen Wert bewegt sich zwischen 1 und 1 Verwenden Sie die DegToRad Funktion um Gradzahlen in Radiantenwerte umzuwandeln Verwandte Befehle Abs Atan Atan2 Int Mod Not Sgn Sin Sqr Str Tan Val Beispiel einer Cos Funktion Das folgende Beispiel zeigt ein einfaches Programm das den Cos Befehl nutzt Function costest Real x Print Please enter a value in radians Input x Print COS of x is Cos x Fend Die folgenden Beispiele verwenden die Cos Funktion vom Online Fenster aus Anzeige des Kosinus von 0 55 gt print cos 0 55 0 852524522059506 gt
369. rt Wird er weggelassen wird die aktuelle rejectDistance Einstellung angezeigt Beschreibung Der Befehl Cnv_QueReject wird verwendet um die minimale Entfernung zwischen Teilen zu bestimmen um doppelte Registrierung in der Queue zu vermeiden Wenn die Teile durch das Vision System gescannt werden k nnten sie mehr als einmal gefunden werden sollten jedoch nur einmal registriert werden Cnv_QueReject hilft dem System Doppelregistrierungen herauszufiltern Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_QueReject Funktion Beispiel einer Cnv_QueReject Anweisung Cnv_QueReject 1 20 86 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Cnv_QueReject Funktion Gibt die aktuelle Entfernung f r die Verwerfung eines Objekts f r einen Conveyor aus Syntax Cnv_QueReject conveyorNumber Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert R ckgabewerte Real Wert in Millimetern Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_QueReject Anweisung Beispiel einer Cnv_QueReject Funktion Real rejectDist RejectDist Cnv_QueReject 1 SPEL Language Reference Rev 3 5 87 SPEL Sprachreferenz Cnv_QueRemove Anweisung s Entfernt Objekte aus einem Conveyor Queue Syntax Cnv_QueRemove conveyorNumber index Pa
370. rt ersetzt wird Da unbeabsichtigte nderungen des Hofs Wertes unvorhersehbare Roboterbewegungen verursachen k nnen lassen Sie bei der Ausf hrung des Calib Befehls Vorsicht walten und verwenden Sie ihn nur wenn notwendig Potentielle Fehler Fehler Keine Achsnummer spezifiziert Wenn die Achsnummer nicht mit dem Calib Befehl spezifiziert wurde tritt ein Fehler auf SPEL Language Reference Rev 3 5 55 SPEL Sprachreferenz Verwandte Befehle CalPls Hofs Calib Beispiel Das folgende Beispiel wird vom Monitor aus ausgef hrt gt CalPls Zeigt die aktuellen CalPls Werte an 65523 43320 1550 21351 gt Pulse Zeigt die aktuellen Pulse Werte an 65526 49358 1542 21299 Calib 2 F hr Pulse Zeig 65526 43320 1542 21299 V nur die Kalibrierung f r Achse 2 aus die ge nderten Pulse Werte an TE g V 56 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Call Anweisung Ls Ruft eine Anwender Funktion auf Syntax Call funcName argList Parameter funcName Funktionsnamen Name einer aufgerufenen Funktion argList Argumenten Liste Optional Liste von Argumenten die in der Funktionsdeklaration spezifiziert wurden Beschreibung Der Call Befehl bertr gt die Programmsteuerung an eine Funktion definiert in Function Fend Das bedeutet dass der Call Befehl die Programmausf hrung veranlasst die aktuelle Funktion zu verlassen und zu der vom Call Befehl spezifizierten Fun
371. rt werden Er ist reserviert da er dazu verwendet wird die Standard Roboterkonfiguration zu definieren Wenn der Anwender Arm auf O setzt bedeutet dies dass die Standardparameter des Roboterarmes verwendet werden sollen Verwandte Befehle Arm Beispiel einer ArmSet Anweisung 42 Die folgenden Beispiele enthalten potentielle Zusatzarm Definitionen welche die Befehle ArmSet und Arm verwenden Der ArmSet Befehl definiert den Zusatzarm Die Arm Anweisung definiert welcher Arm als aktueller Arm genutzt wird Arm 0 ist der Vorgabe Roboterarm und kann vom Anwender nicht eingestellt werden ber das Online Fenster gt ArmSet 1 300 12 30 300 0 gt ArmSet armo 250 0 0 300 0 armi 300 12 30 300 0 gt Arm 0 gt Jump P1 Springt unter Verwendung von Standard Arm Config zu Pl gt Arm 1 gt Jump P1 Springt unter Verwendung des Zusatzarmes 1 zu P1 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ArmsSet Funktion F Gibt einen ArmSet Parameter aus Syntax ArmSet armNumber paramNumber Parameter Hinweise zur Armnummer armNumber Integer Ausdruck der die Armnummer repr sentiert f r welche Werte ausgegeben werden sollen Hinweise zur Parameternummer Integer Ausdruck der die auszugebenden Parameter 0 bis 5 repr sentiert wie unten beschrieben SCARA Roboter paramNumber Parameternummer Ausgegebener Wert 1 Horizontale Entfernung von Achse 2 zur Ausrichtungsmitte in mm 2 Achse
372. rte Hinweise CalPls Werte k nnen nicht durch Ein und Ausschalten der Versorgungsspannung ge ndert werden CalPls Werte werden nicht initialisiert indem man die Versorgungsspannung zur Steuerung aus und danach wie einschaltet Die einzige Methode die CalPls Werte zu ndern besteht in der Ausf hrung des CalPls Befehls Verwandte Befehle Calib Hofs 58 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Beispiel einer CalPls Anweisung Das folgende Beispiel wird vom Online Fenster aus ausgef hrt gt CalPls Zeigt die aktuellen CalPls Werte an 65523 43320 1950 21351 gt Pulse 65526 49358 1542 21299 Calib 4 Pulse 65526 49358 1542 21351 vV vV SPEL Language Reference Rev 3 5 59 SPEL Sprachreferenz CalPls Funktion Gibt den Pulse Wert der Kalibrierung aus der durch die CalPls Anweisung spezifiziert wird Syntax CalPls joint Parameter Joint Integer Ausdruck der eine Roboter Achsennummer oder 0 repr sentiert um den CalPls Status auszugeben R ckgabewerte Integer Wert der die Anzahl der Kalibrierungspulse enth lt Wenn joint den Wert O hat wird 1 oder 0 ausgegeben je nachdem ob CalPls ausgef hrt wurde oder nicht Verwandte Befehle CalPls Anweisung Beispiel der CalPls Funktion Dieses Beispiel benutzt die CalPls Funktion in einem Programm Function DisplayCalPlsValues Integer i Print CalPls Values For i 1 To 4 Print Joint i CalPls CalPls i
373. rten Zeitintervalles wieder aus und f hrt dann den n chsten Befehl aus Dies ist auch der Vorgabewert f r den parallel Parameter Wird dieser Parameter weggelassen ist dies das gleiche als w rde der Parameter auf 1 gesetzt 0 Schaltet den Ausgang ein und f hrt gleichzeitig den n chsten Befehl aus Einschr nkung Ausg nge die als Remote konfiguriert sind Wird ein Ausgang spezifiziert der als Remote eingestellt war so tritt ein Fehler auf Remote Ausg nge werden je nach Systemstatus automatisch ein oder ausgeschaltet F r weitere Remote Details lesen Sie bitte das EPSON RC Benutzerhandbuch Die einzelnen Bits f r den Remote Connector k nnen vom ber das Setup Men erreichbaren EPSON RC Remote Konfigurationsdialog als Remote oder als E A eingestellt werden Verhalten der Ausg nge im Falle von Not Halt EPSON RC hat ein Feature das veranlasst dass bei Eintreten eines Not Halt alle Ausg nge ausgeschaltet werden Dieses Feature wird ber einen der Option Schalter eingestellt oder deaktiviert Um das Feature zu konfigurieren gehen Sie bitte auf den SPEL Options Tab im System Konfigurationsdialog den Sie ber das Setup Men erreichen k nnen Der Unterschied zwischen On und On Es ist sehr wichtig dass der Anwender den Unterschied zwischenden Befehlen On und On versteht Der On Befehl arbeitet mit dem internen Merker und hat keinerlei Auswirkungen auf die Hardware E As Der On Befehl arbeitet mit den Standard u
374. rtyp System RunTime Monitor Fehlernummer Fehlermeldung Wenn sie zutreffen werden auch die folgenden Punkte angezeigt Funktionsname Tasknummer Zeilennummer Roboternummer Achsnummer Hinweise Fehler die von einer Fehlerbehandlungsroutine aufgefangen werden werden nicht aufgezeichnet Wenn OnErr verwendet wird werden jegliche Fehler die von OnErr aufgefangen werden nicht aufgezeichnet Verwandte Befehle ECiIr Era Erl Err Errhist ErrMsg Ert OnErr Trap Errhist Beispiel gt errhist 11 15 1999 08 17 37 v3 0 0 RunTime main 150 Command not allowed with motors off Task 1 Line 3 Robot 1 11 15 1999 08 18 24 v3 0 0 RunTime main 125 The arm reached the limit of motion range Task 1 Line 5 Robot 1 Joint 4 Zeigt mithilfe des optionalen Filter Parameters alle Fehler an die das Wort joint Achse enthalten gt errhist joint 11 15 1999 08 18 24 v3 0 0 RunTime main 125 The arm reached the limit of motion range Task 1 Line 5 Robot 1 Joint 4 gt SPEL Language Reference Rev 3 5 151 SPEL Sprachreferenz ErrMsg Funktion Gibt die Fehlermeldung aus die der angegebenen Fehlernummer entspricht Syntax ErrMsg errNumber Parameter errNumber Integer Ausdruck der die Fehlernummer enth lt f r welche die Nachricht ausgegeben wird R ckgabewerte Gibt die Fehlermeldung aus die in der Fehlercode Tabelle beschrieben ist Verwandte Befehle EClr Era
375. rvendefinition gt cvmove mycurve 110 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz CurPos Funktion Gibt die aktuelle Position des spezifizierten Roboters aus Syntax CurPos robotNumber Parameter robotNumber Optional Definiert f r welchen Roboter Positionsdaten ausgegeben werden sollen Wird sie weggelassen wird die aktuelle Position des aktuellen Roboters ausgegeben R ckgabewerte Ein Roboterpunkt der die aktuelle Position des angegebenen Roboters spezifiziert Verwandte Befehle InPos FindPos Beispiel einer CurPos Funktion Function main Xqt showPosition Do Jump PO Jump P1 Loop Fend Function showPosition Do P99 CurPos Print CX P99 CY P99 Loop Fend SPEL Language Reference Rev 3 5 111 SPEL Sprachreferenz Cx FunktionXXX Extrahiert den X Achsen Koordinatenwert eines Punktes Syntax CX point Parameter point Punktausdruck R ckgabewerte Gibt einen numerischen Koordinatenwert aus der die X Achsen Position repr sentiert Der ausgegebene Wert ist eine Real Zahl Beschreibung Wird verwendet um den individuellen Koordinatenwert f r die X Achse eines spezifischen Punktes zu erhalten Um die aktuelle X Achsen Position des Roboters zu erhalten verwenden Sie bitte P oder Here f r den Punktparameter Verwandte Befehle CU CY CZ Beispiel einer CX Funktion Das folgende Beispiel extrahiert den X Achsen Koordinatenwert von Punkt pick und bergibt
376. rwandte Befehle In In InBCD Off Off On On OpBCD Oport Out Out Sw Wait Beispiel einer Sw Funktion Das Beispiel unten berpr ft lediglich den einzelnen Eingang Nr 5 und verzweigt dem entsprechend Zur besseren bersicht wird On anstelle von 1 verwendet Function main Integer i feed5rdy feed5rdy Sw 5 berpr ft ob der Feeder bereit ist If feed5rdy On Then Call mkpartl Else Print Feeder 5 is not ready Please reset and Print then restart program EndIf Fend Andere einfache Beispiele vom Online Fenster sehen aus wie folgt gt print Sw 5 1 gt 410 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz sw Gibt den Status des gew hlten Merker Bits aus oder zeigt ihn an Syntax Sw bitNumber Parameter bitNumber Zahl zwischen 0 und 511 die einen der 512 Merker darstellt HINWEIS Das Dollarzeichen muss vor die Bitnummer gestellt werden um anzuzeigen dass dies ein Merker ist R ckgabewerte Gibt eine 1 aus wenn das spezifizierte Bit eingeschaltet ist und eine 0 wenn das spezifizierte Bit ausgeschaltet ist Beschreibung Sw bietet eine interne Merker F higkeit Sw wird im allgemeinen als Statusvariable verwendet die 2 Status hat 1 oder 0 welche an aus wahr falsch erledigt nicht erledigt usw bedeuten k nnen G ltige Eintr ge f r Sw liegen im Bereich von Bit 0 bis Bit 511 Normalerweise werden die Befehle On und Off mit dem Befehl Sw verwendet
377. rwendet Programmgruppe MAINGRP Programmname MAIN PRG Function Main mainLoop Print Print Print Print Input Main Menu c 1 Run widget 1 2 Run widget 2 3 Quit hoice Select choice Case 1 Chain widget1 Case 2 Chain widget2 Case 3 End Default Send Fend GoTo mainLoop Programmgruppe WIDGET1 Programmname WID1 PRG Function Widgetl Print Executing widget 1 Chain MAINGRP Startet die Hauptgruppe wieder Fend Programmgruppe WIDGET2 Programmname WID2 PRG Function Widget2 Print Executing widget 2 Startet die Hauptgruppe wieder Fend SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ChDir Befehl Online Fenster Abk rzungs Cd ndert das aktuelle Verzeichnis und zeigt es an Syntax 1 ChDir pathName 2 ChDir Parameter pathName Zeichenkettenausdruck der den Namen des neuen Standardpfades repr sentiert Beschreibung 1 ndert das spezifizierte Verzeichnis in das Standardverzeichnis 2 Zeigt das aktuelle Verzeichnis an Wenn der Pfadname weggelassen wird wird das aktuelle Verzeichnis angezeigt Wird verwendet um das aktuelle Verzeichnis anzuzeigen so dies nicht bekannt ist Beim Einschalten wird das Stammverzeichnis zum aktuellen Verzeichnis Verwandte Befehle ChDrive Dir ChDir Beispiel Die folgenden Beispiele werden vom Online Fenster aus ausgef hrt gt ChDir Wechselt vom aktuellen Verzeichnis i
378. s T PRK Em Aus Aus Ein Aus Aus Ein s ea Ra Ka Ein Aus Aus Ein Aus Aus 15 Hinweis Dieser Befehl funktioniert nur dann wenn die EtherNet I O Option installiert ist Verwandte Befehle ENetlO_Analn ENetIO_AnaOut ENetlO_In ENetlO_Off ENetlO_On ENetlO_Oport ENetlO_Sw ENetlO_Out Beispiel ENetIO_Out 0 amp HOF 140 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ENetIO_Sw Funktion Gibt den Status des ausgew hlten EtherNet I O Eingangsports aus oder zeigt ihn an Syntax ENetlO_Sw bitNumber Parameter bitNumber Zahl die einen der EtherNet I O Eing nge repr sentiert R ckgabewerte Gibt eine 1 aus wenn der angegebene EtherNet I O Eingang eingeschaltet On ist und eine 0 wenn der angegebene EtherNet I O Eingang ausgeschaltet Off ist Beschreibung ENetlO_Sw gibt Ihnen die M glichkeit einen Status Check f r die EtherNet I O Eing nge durchzuf hren Der EtherNet I O Eingang der mit dem ENetlO_Sw Befehl berpr ft wurde hat 2 Stat s 1 oder 0 Diese zeigen an ob der Eingang ein oder ausgeschaltet ist Hinweis Dieser Befehl funktioniert nur dann wenn die EtherNet I O Option installiert ist Verwandte Befehle ENetlO_Analn ENetIO_AnaOut ENetlO_In ENetlO_Off ENetlO_On ENetlO_Oport ENetlO_Out Beispiel einer ENetIO_Sw Funktion Print ENetIO_Sw 5 SPEL Language Reference Rev 3 5 141 SPEL Sprachreferenz ENetIO_SwLatch Funktion
379. s Arbeitsbereichs 1970 System Fehler 1971 Kann internen Code nicht bestimmen 1972 Zu viele Label in einer Datei 1973 Zu viele Zeilen in einer Datei 1974 Zu viele Bl cke Anf nge in einer Datei 1975 Zu viele Sprung Ziele in einer Datei 1985 Syntax Fehler 1990 System Fehler 1992 Externer Funktionsbereichs ist belegt 1993 Der Variablenbereich kann nicht gehalten werden 1994 Kostantentabelle ist voll 1995 Variablenspeicher ist voll 1996 Variablentabelle ist voll 1997 Kann Bereiche nicht beibehalten 1993 Interner Code Speicher ist voll 1999 Syntaxanalyse fehler 2000 Der eingegebene Befehl oder die Anweisung kann nicht verwendet werden 2001 Der eingegebene TMOUT Wert ist falsch 2002 Der eingegebene TMR Wert ist falsch 2003 Sie k nnen f r das Argument keinen negativen Wert verwenden 2004 Sie k nnen f r WAIT keinen negativen Wert angeben 2005 Das eingegebene Argument f r die Funktion TAN ist au erhalb des g ltigen Bereichs 2006 Die Argumente der aufgerufenen Funktion passen nicht zur Definition 2009 Die gekennzeichenete Zeilennummer existiert nicht 2010 Die Anzahl der Zeichen innerhalb der Zeichenkette liegt ber 255 2011 Die Fehlernummer der ERROR Anweisung liegt au erhalb des g ltigen Bereichs 1 32767 2012 Die angegebene Tasknummer liegt au erhalb des g ltigen Bereichs 1 3
380. s Befehl spezifizierte Pulswert den durch den Range Befehl eingestellten Grenzwert berschreitet tritt ein Fehler auf Verwandte Befehle Go Accel Range Speed PIs Pulse Funktion 348 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Beispiel einer Pulse Anweisung Im Folgenden sehen Sie Beispiele vom Online Fenster Dieses Beispiel bewegt den Roboteram zu der Position die durch jeden Achsen Puls definiert wird gt pulse 16000 10000 100 10 Dieses Beispiel zeigt die Pulsnummern von der ersten bis zur vierten Achse der aktuellen Roboterarmposition gt pulse 16000 10000 100 L0 gt SPEL Language Reference Rev 35mm SPEL Sprachreferenz QP Anweisung s Schaltet den Quick Pause Modus Ein oder Aus und zeigt den aktuellen Modusstatus an Syntax QP O0On Off Parameter On Off Quick Pause kann entweder Ein On oder Aus Off geschaltet sein R ckgabewerte Zeigt die aktuelle QP Moduseinstellung an wenn der Parameter weggelassen wird Beschreibung Wenn w hrend der Ausf hrung eines Bewegungsbefehls entweder die Pausetaste gedr ckt wird oder ein Pause Signal an die Steuerung gesendet wird bestimmt der Quick Pause Modus ob der Roboter sofort angehalten wird oder ob er anh lt nachdem der Bewegungsbefehl durchgef hrt wurde Sofortiges Verz gern und Anhalten wird Quick Pause genannt Wenn der Parameter On spezifiziert wurde schaltet QP den Quick Pause Modus Ein Wenn der Parameter Off an
381. s MYCURVE CRV erzeugt eine Kurve die die Punkte P1 bis P7 entlang f hrt schaltet bei P2 den Ausgangsport 2 EIN und verz gert den Arm bei P7 Erstellen der Kurve gt curve mycurve O 0 4 Pl P2 On 2 P 3 7 Bewegen des Armes zu P1 in einer geraden Linie gt jump P1 Bewegen des Armes nach der Mycurve genannten Kurvendefinition gt cvmove mycurve SPEL Language Reference Rev 3 5 109 SPEL Sprachreferenz CVMove Anweisung s F hrt die kontinuierliche Spline Pfad Bewegung aus die durch den Curve Befehl definiert ist Syntax CVMove fileName CP searchExpr Parameter fileName Zeichenkettenausdruck f r Pfad und Dateinamen die f r die CP Bewegungsdaten zu verwenden sind Diese Datei muss im Vorangegangenen bereits durch den Curve Befehl erzeugt worden und auf einer PC Festplatte gespeichert sein CP Optional Spezifiziert die CP Bewegung nach dem letzten Punkt searchExpr Optional Ein Till oder Find Ausdruck Till Find Till Sw expr Ein Aus Find Sw expr Ein Aus Beschreibung CVMove f hrt die kontinuierliche Spline Pfad Bewegung aus definiert durch die Daten in der Datei fileName die sich auf der Festplatte des PCs befinden Diese Datei muss im Vorangegangenen bereits durch den Curve Befehl erzeugt worden sein Es sollten keine Disketten oder andere langsame Medien verwendet werden da sonst eine Verz gerung beim Laden der Daten aus der Datei entsteht Im System k nnen gleichzeiti
382. s das Gewicht des tats chlichen Werkst ckes berh hte Beschleunigung und Verz gerung zur Folge haben kann Dies wiederum kann kann schwere Sch den am Manipulatorarm verursachen Hinweis Weight Werte werden durch Abschalten der Versorgungsspannung nicht ge ndert Die Weight Werte werden durch Abschalten der Stromzufuhr nicht ge ndert Die Werte werden jedoch initalisiert wenn der Verinit Befehl ausgef hrt wird Die Ausgangswerte variieren je nach Typ des Manipulatorarms Ziehen Sie das Manipulatorarm Handbuch zu Rate um mehr ber die Weight Augangswerte zu erfahren 450 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Verwandte Befehle Accel Verinit Beispiel einer Weight Anweisung Dieser Weight Befehl im Online Fenster zeigt die aktuelle Einstellung an gt weight 2 000 200 000 gt SPEL Language Reference Rev 3 5 451 SPEL Sprachreferenz Weight Funktion Gibt einen Weight Parameter aus Syntax Weight paramNumber Parameter paramNumber Integer Ausdruck der einen der unten angegebenen Werte enth lt 1 Nutzlast Gewicht 2 Arml nge R ckgabewerte Real Zahl welche den Parameterwert beinhaltet Verwandte Befehle Beispiel einer Weight Funktion Print The current Weight parameters are Weight 1 452 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz While Wend s F hrt die angegebenen Anweisungen aus solange die spezifizierte Bedingung erf llt ist Syntax
383. s er f r zuk nftige Bewegungen kein Tool verwenden soll gt Go P1 Positioniert den Mittelpunkt der U Achse auf Pl SPEL Language Reference Rev 3 5 425 SPEL Sprachreferenz TLSet Funktion Gibt einen Punkt aus der die Werkzeugdefinition f r das spezifizierte Tool enth lt Syntax TLSet toolNumber Parameter toolNumber Integer Ausdruck der die Nummer der auszugebenden Werkzeugdefinition darstellt R ckgabewerte Ein Punkt der die Werkzeugdefinition beinhaltet Verwandte Befehle TLSet Statement Beispiel einer TLSet Funktion P1 TLSet 1 426 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz TMOut Anweisung s Spezifiziert die Anzahl von Sekunden die auf die Erf llung der mit dem Wait Befehl spezifizierten Bedingung gewartet wird bevor ein Timeout Fehler ausgegeben wird Syntax TMOut seconds Parameter seconds Integer Ausdruck der darstellt wie viele Sekunden abzuwarten sind bis ein Timeout eintritt Der g ltige Bereich ist 0 bis 32767 Sekunden in 1 Sekunden Intervallen Beschreibung TMOut setzt die Zeit fest die gewartet werden soll wenn der Wait Befehl verwendet wird bis ein Timeout Fehler Fehler Nr 94 auftritt Wenn ein Timeout von 0 Sekunden spezifiziert ist ist das Timeout ausgeschaltet In diesem Fall wartet der Wait Befehl auf unbestimmte Zeit bis die festgelegte Bedingung erf llt ist Der vorgegebene Erstwert f r TMOut ist 0 Verwandte Befehle In IN OnErr Sw Sw
384. s liegt darin Werte in der Arch Tabelle zu definieren die f r die Nutzung mit dem Jump Bewegungsbefehl ben tigt werden Die Arch Bewegung wird ber die Parameter ausgef hrt welche der Arch Nummer entsprechen die in der Jump C Bedingung ausgew hlt wurde F r ein vollst ndiges Verst ndnis des Arch Befehls ist es notwendig zun chst die Funktionsweise des Jump Befehls zu begreifen Die Arch Definitionen gestatten es dem Anwender bei Verwendung des Jump C Befehls in Z Richtung Ecken abzurunden W hrend der Jump Befehl den Punkt angibt auf den die Bewegung gerichtet ist inklusive der endg ltigen Position der Z Achse spezifizieren die Eintr ge in der Arch Tabelle wie lang die Hubstrecke sein muss bevor die horizontale Bewegung riseDist einsetzt und welche Distanz von der endg ltige Position der Z Achse zur ckgelegt werden muss um die gesamte horizontale Bewegung abzuschlie en fallDist Absenkstrecke Siehe unten stehendes Diagramm Fall 1 Distance Rise Distance 34 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Die Arch Definitionstabelle enth lt insgesamt 8 Eintr ge von denen 7 0 6 benutzerdefinierbar sind Der 8 Eintrag Arch 7 ist der Standard Arch der gar nicht wirklich einen Arch spezifiziert ein Vorgang der Gate Bewegung genannt wird Siehe unten stehendes Gate Bewegungs Diagramm Verwendet mit der Standard Arch Eingabe Eingabe 8 veranlasst der Jump Befehl den A
385. se Funktion Jump Pulse 1000 2000 0 0 SPEL Language Reference Rev 3 5 347 SPEL Sprachreferenz Pulse Anweisung Bewegt den Roboterarm durch PTP Steuerung zu dem Punkt der durch die Pulswerte von vier Achsen spezifiziert ist Syntax Pulse j1pulses j2pulses j3pulses j4pulses Parameter pulses j2pulses j3pulses j4pulses Der Pulswert f r jede der vier Achsen Der Pulswert muss in dem durch den Range Befehl definierten Bereich liegen und sollte ein Integer oder ein Long Ausdruck sein R ckgabewerte Wenn die Parameter weggelassen werden werden die vier Achsen Pulsewerte der aktuellen Armposition angezeigt Beschreibung Pulse verwendet den Achsen Pulsewert der Pulse Nullposition um die Roboterarmposition darzustellen und nicht das orthogonale Koordinatensystem Der Pulse Befehl bewegt den Roboterarm durch PTP Steuerung Der Range Befehl stellte die oberen und unteren Grenzwerte ein die im Pulse Befehl verwendet werden k nnen Hinweis Sorgen Sie daf r dass der Pfad frei von Hindernissen ist bevor Sie die Pulse Anweisung verwenden Im Gegensatz zu Jump bewegt Pulse alle Achsen gleichzeitig einschlie lich der Hub und Fallbewegung der Z Achse beim Verfahren zur Zielposition Daher ist es sehr wichtig dass Sie bei der Verwendung von Pulse darauf achten dass sich der Arm entlang eines hindernisfreien Pfades bewegen kann Potentielle Fehler Der Pulsewert bersteigt den Grenzwert Wenn der mit dem Pul
386. selben Zeit einschalten Wenn der aktuelle Task den Merker eingeschaltet hat gibt ZeroFlg 0 aus und zeigt damit an dass der vorangegangene Wert 0 war Sie m ssen ZeroFlg umgehend nach Einschalten des Merkers verwenden Zum Beispiel On 1 If ZeroFlg 0 Then Print This task turned on 1 Else Print Some other task turned on 1 EndIf See Also off Sy Om S Zeroflg Example Dieses Beispiel verwendet zwei Funktionen um zu einer Zeit ausschlie lich einem Task zu erlauben mit dem Ger t zu kommunizieren welches mit dem RS232 Port 1 verbunden ist Die Funktionen lauten AccessPort und ReleasePort Wenn ein Task den Port verwendet wartet der andere Task solange bis er die Kontrolle ber den Port erh lt Function main Initialisiert das Access Flag Off port Xqt task2 Do AccessPort Print 1 main ReleasePort Loop Fend Function task2 Do AccessPort For i 0 To 100 Print 1 i Next ReleasePort Loop Fend Function AccessPort SPEL Language Reference Rev 3 5 463 SPEL Sprachreferenz Do Schaltet das Access Flag ein On port berpr ft ob der Task eingeschaltet ist If ZeroFlg 0 Then Dieser Task hat die Kontrolle also wird die Funktion verlassen Exit Function EndIf Wartet auf den Steuertask um die Ressource freizugeben Wait Sw port Off Loop Fend Function ReleasePort Off port Gew hrte Zeit f r einen anderen Task um Zugriff zu
387. sitionsbereich erreicht hat definiert durch den Fine Befehl f hrt die CPU den n chsten Anwender Befehl aus Bedenken Sie dass alle aktivierten Achsen in Position sein m ssen bevor die CPU den n chsten Anwender Befehl ausf hren kann Da die Servoverz gerung normalerweise weniger als einige tausend Pulse betr gt wird eine Bereichseinstellung von ein paar tausend Pulsen oder mehr keinen vorteilhaften Positionierungseffekt bringen Initialisierung von Fine durch die Befehle Motor On SLock SFree und Verinit Jedes Mal wenn die folgenden Werte verwendet werden wird der Fine Wert auf 10 gesetzt initialisiert der Fine Vorgabewert bei den Befehlen SLock SFree Motor und Verinit Stellen Sie sicher dass Sie die Fine Werte neu einstellen nachdem einer der 0 9 Befehle ausgef hrt wurde Potentielle Fehler Wenn die Fine Positionierung nicht innerhalb von 2 Sekunden abgeschlossen ist tritt Fehler 151 auf Verwandte Befehle Accel AccelS Arc Go Jump Move Speed SpeedS Pulse Beispiel einer Fine Anweisung Das folgende Beispiel zeigt eine einfache PTP Bewegung zwischen den Punkten PO und P1 und die darauf folgende geradlinige R ckkehr zum Punkt PO Sp ter im Programm bewegt sich der Arm zu Punkt P2 bis Eingang 2 einschaltet Wenn Eingang 2 w hrend der Bewegung einschaltet dann verz gert sich der Arm bis zum vollst ndigen Stopp bevor er Punkt P2 erreicht und der n chste Programmbefehl wird ausgef hrt Func
388. sp ter wieder und liest deren Daten in eine Feldvariable Real data 100 For I 0 To 100 data i i Next I WOpen TEST VAL As 30 For I 0 To 100 Print 30 data i Next I Close 30 ROpen TEST VAL As 30 For I 0 to 100 Input 30 data I Next I Close 30 454 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Write Anweisung s Schreibt Zeichen in eine Datei ohne Endzeichen am Zeilenende Syntax Write fileNumber string Parameter fileNumber Zu beschreibende Datei oder Kommunikationsschnittstelle string Zeichenkettenausdruck der in die Datei geschrieben wird Beschreibung Der Unterschied zwischen Write und Print besteht darin dass bei Write am Zeilenende kein EndZzeichen gesetzt wird Der aktuelle Dateizeiger wird mit der L nge des Zeichenkettenausdrucks vorgeschoben Verwandte Befehle Print Read Seek WOpen Write Beispiel WOopen test dat As 30 For i 1 to 10 Write 30 data i Next i Close 30 SPEL Language Reference Rev 3 5 455 SPEL Sprachreferenz Xor Operator s F hrt die bitweise Xor Operation EXKLUSIV ODER Verkn pfung zwischen den Werten der Operanden aus Syntax Operand Xor Operand Parameter Operand Ein numerischer Wert oder ein Variablenname R ckgabewerte Bitweise Xor verkn pfter Wert der Operanden Beschreibung Der Xor Operator f hrt die bitweise Xor Operation EXKLUSIV ODER Verkn pfung zwischen den Werten der Operanden
389. ss TCP_IP_PortNum terminator SWFIow timeOut Parameter portNumber Gibt an f r welchen Port Parameter eingestellt werden sollen G ltige Werte sind 128 131 hostAddress Gibt die Host IP Adresse an TCP_IP_PortNum Gibt die TCP IP Portnummer f r diesen Knoten an terminator Gibt die Zeilenabschluss Zeichen an G ltige Werte sind CR LF CRLF SWFlow Bestimmt die Softwaresteuerung G ltige Werte sind XON und NONE timeOut Gibt die die maximale Zeit f r die bermittlung oder den Empfang an angegeben in Sekunden Wenn der Wert 0 ist gibt es kein Timeout Verwandte Befehle OpenCom CloseCom SetCom SetNet Beispiel SetNet 128 192 168 0 1 1 CRLF NONE 0 386 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz SFree Anweisung s Schaltet die angegebenen Servoachse frei Syntax SFree jointNumber jointNumber Parameter jointNumber Ein Integer Ausdruck der eine Servoachsennummer darstellt Diese kann 1 2 3 oder 4 sein den Achsen 1 2 Z oder U bei SCARA Robotern entsprechend Beschreibung SFree schaltet die angegebenen Servoachsen frei Dieser Befehl wird f r das direkte Teachen oder die Teil Einrichtung verwendet indem eine bestimmte Achse teilweise abgeschaltet wird Um eine Achse wieder in Betrieb zu nehmen f hren Sie den SLock Befehl oder MotorOn aus Hinweise SFree setzt einige System Objekte zur ck auf ihren Anfangsstatus SFree setzt aus Sicherheitsgr nden Parameter zur c
390. ssword invalid EndIf SPEL Language Reference Rev 3 5 409 SPEL Sprachreferenz Sw Funktion Gibt den Status des gew hlten Eingangsports aus oder zeigt ihn an z B einzelner Eingang Syntax Sw bitNumber Parameter bitNumber Zahl zwischen 0 und 511 die einen einzelnen Standard oder Erweiterungs Hardware Eingang darstellt R ckgabewerte Gibt eine 1 aus wenn der spezifizierte Eingang eingeschaltet ist und eine 0 wenn der spezifizierte Eingang ausgeschaltet ist Beschreibung Sw bietet Ihnen die M glichkeit eine Status berpr fung der Hardwareeing nge durchzuf hren Sw wird im allgemeinen verwendet um den Status eines Einganges zu berpr fen welcher an einen Feeder ein F rderband einen Greifermagneten oder an den Host eines anderen Ger tes angeschlossen sein sollte welches ber einzelne E A arbeitet Nat rlich hat der mit dem Sw Befehl berpr fte Eingang 2 Status 1 oder 0 Diese zeigen an ob das Ger t ein oder ausgeschaltet ist Einschr nkung Der Unterschied zwischen Sw und Sw Es ist sehr wichtig dass der Anwender den Unterschied zwischen den Befehlen Sw und Sw versteht Der Sw Befehl arbeitet mit dem internen Merker und hat keinerlei Auswirkungen auf den Hardware E As Der Sw Befehl arbeitet mit den Hardware Eingangskan len die sich auf der R ckseite des Steuerger tes befinden Diese Hardwarekan le sind einzelne Eing nge die mit Ger ten au erhalb des Steuerger tes kommunizieren Ve
391. stellt einen Status Check f r die Ausg nge zur Verf gung Er funktioniert weitgehend so wie der Sw Befehl f r die Ausg nge funktioniert Oport wird im allgemeinen verwendet um den Status eines Ausganges zu berpr fen welcher an einen Feeder einen Conveyor einen Greifermagneten oder an den Host eines anderen Ger tes angeschlossen sein sollte welches ber getrennte E A arbeitet Offensichtlich hat der Ausgang der mit dem Oport Befehl berpr ft wird 2 Stati 1 oder 0 Diese zeigen an ob der spezifizierte Ausgang ein oder ausgeschaltet ist Einschr nkung Der Unterschied zwischen Oport und Sw Es ist sehr wichtig dass der Anwender den Unterschied zwischen den Befehlen Oport und Sw versteht Beide Befehle werden verwendet um den E A Status zu erhalten Der E A Typ ist jedoch bei Beiden unterschiedlich Der Sw Befehl arbeitet mit Eing ngen Der Oport Befehl arbeitet mit den Standard und mit Erweiterungs Hardware Ausg ngen Diese Hardwareports sind einzelne Ausg nge die mit Ger ten au erhalb der Steuerung kommunizieren Verwandte Befehle In In InBCD Off Off On On OpBCD Out Out Sw Sw Wait SPEL Language Reference Rev 3 5 305 SPEL Sprachreferenz Beispiel einer OPort Funktion Das Beispiel unten schaltet Ausgang 5 ein und stellt dann sicher dass dieser eingeschaltet ist bevor es fortf hrt Function main TMOut 10 OnErr errchk Integer errnum On 5 Schaltet Ausgang 5 ein Wait Oport 5 Call mk
392. sung Beispiel der Cnv_AbortTrack Anweisung Task zur berwachung des Roboters dessen nachgesteuertes Bauteil in F rderrichtung gefahren ist Function WatchDownstream Do If Cnv_QueLlen 1 CNV_QUELEN_DOWNSTREAM gt 0 Then Bricht das Tracking auf Conveyor 1 ab und verf hrt die Z Achse des Roboters nach 0 Cnv_AbortTrack 1 0 EndIf Wait 1 Loop Fend SPEL Language Reference Rev 3 5 73 SPEL Sprachreferenz Cnv_Fine Funktion Gibt die aktuelle Cnv_Fine Einstellung aus Syntax Cnv_Fine conveyorNumber Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert R ckgabewerte Real Wert von Cnv_Fine in Millimetern Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Conveyor Tracking installiert ist Verwandte Befehle Cnv_Fine Anweisung Beispiel einer Cnv_Fine Funktion Real f Cnv_Fine 74 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Cnv_Fine Anweisung s Stellt den Wert von Cnv_Fine f r einen Conveyor ein Syntax Cnv_Fine conveyorNumber fine Value Parameter conveyorNumber Integer Ausdruck welcher die Conveyornummer repr sentiert fineValue Optional Real Ausdruck der die Entfernung spezifiziert ber die das Tracking abgeschlossen wird in Millimetern Wird er weggelassen wird die aktuelle Cnv_Fine Einstellung angezeigt Beschreibung Der Vorgabewert von 20mm wird automatisch eingestellt wenn
393. sung s Anzeige des berlastgrades f r ein oder alle Achsen des aktuellen Roboters Gibt die OLRate f r die angegebene Achse aus Die Werte variieren zwischen 0 0 und 2 0 Syntax OLRate jointNumber Parameter jointNumber Integer Ausdruck dessen Wert zwischen 1 und 4 liegt Beschreibung OLRate kann verwendet werden um festzustellen ob ein bestimmter Zyklus das Servosystem berbeansprucht Faktoren wie Temperatur und Strom k nnen Servofehler w hrend der Anwendung in Hochleistungszyklen verursachen OLRate kann dabei helfen zu berpr fen ob das Robotersystem kurz vor einem Servofehler steht W hrend eines Zyklus sollten Sie einen weiteren Task ausf hren um OLRate zu berwachen Wenn die OLRate 1 0 f r eine beliebige Achse berschreitet so tritt ein Servofehler auf Servofehler treten am ehesten bei hohen Nutzlasten auf Durch die Verwendung von OLRate in einem Testzyklus k nnen Sie sicherstellen dass durch die Geschwindigkeits und Beschleunigungseinstellungen kein Servofehler im Produktionsmodus auftritt Um g ltige Messwerte zu erhalten m ssen Sie OLRate ausf hren w hrend sich der Roboter bewegt Verwandte Befehle OLRate Funktion Beispiel einer OLRate Anweisung gt olrate 0 10000 0 20000 0 30000 0 40000 0 50000 0 60000 Function main Power High Speed 50 Accel 50 50 Xqt 2 MonitorOLRate Do Jump PO Jump P1 Loop Fend Function MonitorOLRate Do Display OLRate OLRate Wait 1 Loop Fend 29
394. t Verwandte Befehle ChDrive CurDir Beispiel einer CurDrive Function Print The current drive is CurDrive 106 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Curve Anweisung s Definiert die Daten und Punkte die notwendig sind um einen Arm an einem geschwungenen Pfad entlang zu bewegen Viele Datenpunkte k nnen im Pfad definiert werden um die Pr zision des Pfades zu steigern Syntax Curve fileName closure mode numAxes pointList Parameter Hinweise zum Dateinamen Ein Zeichenkettenausdruck f r Pfad und Namen der Datei in welcher die closure mode numAxes Punktdaten gespeichert sind Dem angegebenen fileName wird die Dateinamenerweiterung CRV angeh ngt so dass keine Dateinamenerweiterung vom Anwender spezifiziert werden muss Wenn der Curve Befehl ausgef hrt wird wird fileName erzeugt Spezifiziert ob die definierte Curve am Ende der Kurvenbewegung geschlossen wird oder offen bleibt Dieser Parameter muss auf einen von zwei m glichen Werten eingestellt werden wie im Folgenden angezeigt C Geschlossenen Kurve Closed Curve O Offenen Kurve Open Curve Wenn die offene Kurve spezifiziert wird erzeugt der Curve Befehl die notwendigen Daten um den Arm am letzten Punkt der spezifizierten Punktserie zu stoppen Wird die geschlossene Kurve spezifiziert erzeugt der Curve Befehl die notwendigen Daten um die Bewegung durch den spezifizierten Endpunkt hindurch fortzusetzen und die
395. t Joint i Hofs i Next i Fend 204 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Home Anweisung s Bewegt den Roboterarm in die durch den Anwender definierte Home Position Syntax Home Beschreibung F hrt bei niedriger Geschwindigkeit eine PTP Bewegung zur Home Standby Position durch die durch den HomeSet Befehl definiert ist in der Homing Reihenfolge die durch Hordr definiert ist Es ist sehr wichtig zu beachten dass der Home Befehl den Roboter nicht kalibriert Die Kalibrierung wird ber den Mcal Befehl f r Roboter mit inkrementellen Encodern ausgef hrt Der Home Befehl bewegt den Arm nur zu einer durch HomeSet definierten Standby Position bei niedriger Geschwindigkeit blicherweise kehrt die Z Achse als erstes zur HomeSet Position zur ck dann kehren die Achsen 1 2 und U gleichzeitig zu ihrer entsprechenden HomeSet Koordinatenposition zur ck Der Hordr Befehl kann die Reihenfolge der R ckkehr der Achsen zu ihren Home Positionen ver ndern Hinweis Ausgang des Home Status Wenn sich der Roboter in seiner Home Position befindet ist der Home Ausgang der Steuerung eingeschaltet Potentielle Fehler Homingversuch ohne definierte HomeSet Werte Der Versuch den Home Befehl am Roboter auszuf hren ohne die HomeSet Werte zu setzen resultiert in Ausgabe des Fehlers Nr 143 Verwandte Befehle Hofs HTest HOrdr Beispiel einer Home Anweisung Der Home Befehl kann in einem Programm wie
396. t die als Argument an den Len Befehl gegeben wurde Beschreibung Len gibt einen Integer aus welcher die Anzahl von Zeichen in einer Zeichenkette repr sentiert die durch den Anwender definiert wurde Len gibt Werte zwischen 0 und 256 aus da eine Zeichenkette zwischen 0 und 256 Zeichen enthalten kann Verwandte Befehle Asc Chr Left Mid Right Space Str Val Beispiel einer Len Funktion Das Beispiel unten zeigt ein Programm das Daten eines Teils als Zeichenkette bergeben bekommt und diese in Teilnummer Teilnamen und Teileanzahl zerlegt Function ParsePartData Dataln As String ByRef PartNum As String ByRef PartName As String ByRef PartCount As Integer Integer pos String temp pos Instr Dataln PartNum Left Dataln pos 1 DataIn Right datain Len DataIn pos pos Instr DataIn PartName Left DataIn pos 1 PartCount Val Right datain Len Dataln pos Fend Einige weitere Beispiele des Len Befehls vom Online Fenster gt len ABCDEFG 7 gt len ABC 3 len DON 248 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz LimZ Anweisung s Bestimmt den Vorgabewert f r die H he der Z Achse bei Jump Befehlen Syntax LimZ zLimit Parameter zLimit Ein Koordinatenwert innerhalb des beweglichen Bereichs der Z Achse R ckgabewerte Zeigt den aktuellen LimZ Wert an wenn der Parameter weggelassen wird Beschreibung L
397. t Int 5 1 Print Int 0 2 Print Int 5 1 gt 5 gt 0 gt 6 gt 232 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Integer Anweisung s Deklariert Integer Variablen 2 Byte Integer Syntax Integer varName subscripts varName subscripts Parameter varName Variablenname den der Anwender als Integer deklarieren will subscripts Optional Dimensionen einer Feldvariable es k nnen bis zu drei multiple Dimensionen deklariert werden Die Syntax sieht aus wie folgt dim1 dim2 dim3 dim1 dim2 dim3 k nnen eine Integer Zahl zwischen 0 32767 sein Beschreibung Integer wird verwendet um Variablen als Integer zu deklarieren Integer Variablen k nnen ganze Zahlen im Wertebereich von 32768 bis 32767 enthalten Alle lokalen Variablen sollten in einer Funktion ganz oben deklariert sein Verwandte Befehle Boolean Byte Double Global Long Real String Beispiel einer Integer Anweisung Das folgende Beispiel zeigt ein einfaches Programm das unter Verwendung von Integer einige Variablen deklariert Function inttest Integer A 10 Eindimensionale Feldvariable aus Integers Integer B 10 10 Zweidimensionale Feldvariable aus Integers Integer C 10 10 10 Dreidimensionale Feldvariable aus Integers 1l Integer i Print Please enter an Integer Number Input varl Print The Integer variable varl varl For I 1 To 5 Print Please enter an Integer Number Input arrayvar i Print
398. t die Ansteuerung der Achsen 1 und 2 wieder her Fend 388 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz SFree Funktion Gibt den SFree Status f r eine angegebene Achse aus Syntax SFree jointNumber Parameter JointNumber Integer Ausdruck der die zu pr fende Achsennummer repr sentiert R ckgabewerte TRUE wenn die Achse freigeschaltet ist FALSE wenn sie nicht freigeschaltet ist Verwandte Befehle SFree Anweisung SetFree Beispiel If SFree l1 Then Print Joint 1 is free EndIf SPEL Language Reference Rev 3 5 389 SPEL Sprachreferenz Sgn Funktion Bestimmt das Vorzeichen des Operanden Syntax Sgn Operand Parameter Operand Ein numerischer Ausdruck R ckgabewerte 1 Wenn der Operand einen positiven Wert hat 0 Wenn der Operand 0 ist 1 Wenn der Operand einen negativen Wert hat Beschreibung Die Sgn Funktion bestimmt das Vorzeichen des numerischen Wertes des Operanden Verwandte Befehle Abs And Atan Atan2 Cos Int Mod Or Not Sin Sar Str Tan Val XOR Beispiel einer Sgn Funktion Dies ist ein einfaches Online Fenster Beispiel f r die Verwendung der Sgn Funktion gt print sgn 123 1 gt print sgn 123 gt 390 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Shutdown Anweisung s F hrt EPSON RC herunter Windows wird optional heruntergefahren oder neu gestartet Syntax ShutDown mode Parameter mode Optional Ein Int
399. t einem Zahlzeichen aus Der MyTask Befehl wird innerhalb eines bestimmten Programmes eingef gt Wenn dieses Programm die MyTask Funktion ausf hrt wird die Tasknummer ausgegeben in der das Programm l uft Verwandte Befehle Xat Beispiel einer MyTask Funktion Das folgenden Programm schaltet die E A Ports von 1 bis 8 Ein oder Aus Function main Xgt 2 task F hrt Task 2 aus Xqt 3 task F hrt Task 3 aus Xqt 4 task F hrt Task 4 aus xqt 5 task F hrt Task 5 aus Xqt 6 task F hrt Task 6 aus Xat 7 task F hrt Task 7 aus Xqt 8 task F hrt Task 8 aus Call task Fend Function task Do On MyTask Schaltet den E A Port ein der dieselbe Nummer hat wie die aktuelle Tasknummer Off MyTask Schaltet den E A Port aus der dieselbe Nummer hat wie die aktuelle Tasknummer Loop Fend 284 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Next s Die Befehle For Next werden zusammen verwendet um eine Schleife zu erzeugen in welcher Befehle die sich zwischen den Befehlen For und Next befinden mehrfach ausgef hrt werden wie vom Anwender angegeben Syntax For var1 initval To finalval Step Increment statements Next var1 Parameter var1 Die Z hlvariable die mit der For Next Schleife verwendet wird Diese Variable wird normalerweise als Integer definiert kann jedoch auch als Realvariable definiert werden initval Der Anfangswert f r den Z hler var1 finalval Der End
400. t und Weise auszuf hren Sw wird in Kombination mit dem Wait Befehl verwendet um zu warten bis der Merker Nr 1 den richtigen Wert erreicht hat von dem an es sicher ist eine neue Bewegung auszuf hren Function main Integer I off Sl Xgt 2 task2 For I 1 to 100 Wait Sw 1 Off Go P i On 1 Next I Fend Function task2 Integer I For I 101 to 200 Wait Sw 1 On Go P i Off I Next I Fend Wait Sw 0 1 Wartet bis der Hardware Eingang 0 1 entspricht Wait 60 5 Wartet 60 5 Sekunden und setzt dann die Ausf hrung fort Wait Sw 0 0 And Sw 1 1 Wartet bis beide Bedingungen Sw 0 0 und Sw 1 1 erf llt sind Wait Sw 1 0 Or Sw 1 1 Wartet bis beide Bedingungen Sw 1 1 und Sw 1 1 erf llt sind wait 1 0On 1 Wartet eine Sekunden und schaltet dann den Ausgang 1 ein 446 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz WaitNet Anweisung Ss Wartet darauf dass die Netzwerkverkbindung hergestellt wird Syntax WaitNet portNumber timeOuf Parameter portNumber Integer Ausdruck f r die zu ffnende Schnittstellennummer Der Bereich liegt zwischen 128 und 131 timeOut Optional Maximale Zeit die f r die Verbindung abgewartet werden soll Verwandte Befehle Wait WaitSig WaitPos Beispiel einer WaitNet Anweisung In diesem Beispiel sind die TCP IP Einstellungen von zwei PC s wie folgt konfiguriert PC 1 Port 128 Host Name PC2 TCP IP Port
401. tation F r SCARA Roboter optional Spezifizieren Sie L oder R f r lefty oder righty Ausrichtung localNumber Optional Local Nummer von 1 bis 15 mit einem vorangestellten Schr gstrich 1 bis 15 relativeOffsets Optional Eine oder mehrere relative Koordinaten X Y Z U expr absoluteCoords Optional Eine oder mehrere absolute Koordinaten X Y Z U expr Beschreibung Punktausdr cke werden in Punktzuordnungs Anweisungen und Bewegungsbefehlen verwendet Man kann Punkte addieren und subtrahieren wenn keine direkten Koordinaten verwendet werden Zum Beispiel Go P1 P2 P1 P2 XY 100 100 0 0 Verwendung des relativen Versatzes Sie k nnen eine oder mehrere Koordinaten relativ zum Basis Punkt versetzen Beispielsweise bewegt die folgende Anweisung den Roboter aus der aktuellen Position 20 mm die positive X Achse entlang Go P X 20 Wenn Sie die gleiche Anweisung erneut ausf hren bewegt sich der Roboter erneut um 20mm an der X Achse entlang da dies eine relative Bewegung ist Verwendung absoluter Koordinaten Sie k nnen eine oder mehrere Koordinaten des Basis Punktes durch Verwendung absoluter Koordinaten ndern Die folgende Anweisung bewegt den Roboter zur 20mm Position auf der X Achse Go P X 20 Wenn Sie dieselbe Anweisung erneut ausf hren bewegt sich der Roboter nicht da er sich auf Grund der vorangegangenen Bewegung bereits in der absoluten Position f r X befindet SPEL L
402. tei in den Punktspeicherbereich f r den aktuellen Roboter Syntax LoadPoints fileName Merge Parameter fileName Zeichenkettenausdruck der den spezifischen Pfad und die Datei enth lt die in den Punktspeicherbereich des aktuellen Roboters geladen werden sollen Die Dateinamenerweiterung muss PNT lauten Merge Optional Wenn Merge angegeben wird werden die aktuellen Punkte nicht gel scht bevor die neuen Punkte geladen werden Die Punkte in der Datei werden den aktuellen Punkten hinzugef gt Wenn ein Punkt in der Datei bereits existiert wird der im Speicher befindliche Punkt berschrieben Beschreibung LoadPoints l dt Punktdateien von einem Laufwerk in den Hauptspeicherbereich der Steuerung Verwenden Sie Merge um Punktdateien zu kombinieren So k nnen Sie beispielsweise eine Haupt Punktdatei haben welche die gemeinsamen Punkte f r Locals Parken etc im Bereich von 0 100 enth lt Merge wird dann verwendet um andere Punktdateien f r jedes verwendete Teil zu laden ohne die gemeinsam verwendeten Punkte zu l schen Der Bereich kann z B zwischen 101 999 liegen Potentielle Fehler Die Datei existiert nicht Wenn die in der LoadPoints Anweisung definierte Datei nicht existiert wird Fehler Nr 53 ausgegeben Die Punktedatei ist nicht f r den aktuellen Roboter bestimmt Wenn es sich bei der in der LoadPoints Anweisung definierten Datei nicht um eine Punktdatei f r den aktuellen Roboter handelt wird die folgende Feh
403. ten Verwandte Befehle Error Codes Beispiel einer Eval Funktion Dieses Beispiel zeigt wie man einen Befehl ausf hrt der ber RS 232 gelesen wird Nachdem der Befehl ausgef hrt wurde wird der Fehlercode an den Host zur ckgegeben Der Host k nnte beispielsweise einen Befehl wie motor on senden Integer errCode String cmd OpenCom 1 Do Line Input 1 cmd errCode Eval cmd Print 1 errCode Loop 156 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Exit Anweisung s Verl sst ein Schleifenkonstrukt oder eine Funktion Syntax Exit Do For Function Beschreibung Die Syntax der Exit Anweisung hat die folgende Form Anweisung Beschreibung Exit Do Stellt eine M glichkeit dar eine Do Loop Anweisung zu verlassen Es kann nur innerhalb einer Do Loop Anweisung verwendet werden Exit Do bertr gt die Steuerung an die Anweisung die auf die Loop Anweisung folgt Wenn Exit Do innerhalb verschachtelter Do Loop Anweisungen verwendet wird bertr gt Exit Do die Steuerung an den Loop der sich eine Verschachtelungsebene ber dem Loop befindet in dem Exit Do auftritt Exit For Stellt eine M glichkeit dar eine For Schleife zu verlassen Es kann nur innerhalb einer For Next Schleife verwendet werden Exit For bertr gt die Steuerung an die Anweisung welche auf die Next Anweisung folgt Wenn Exit For innerhalb verschachtelter For Schleifen verwendet wird bertr gt Exit For die Steuerung an d
404. tialization Print Sensory Inputs not ready for cycle start Print Please check inputs 28 29 30 and 31 for Print proper state for cycle start and then Print start program again EndIf Fend Es ist nicht m glich Eing nge vom Online Fenster aus zu setzen aber man kann sie berpr fen F r die folgenden Beispiele wird davon ausgegangen dass die Eingabekan le 1 5 15 und 30 eingeschaltet sind Alle anderen Eing nge sind aus gt print In 0 34 gt print In 1 128 gt print In 2 0 gt print In 3 64 SPEL Language Reference Rev 3 5 219 SPEL Sprachreferenz In n Funktion Gibt den Status des angegebenen Merkerports aus Jeder Port enth lt 8 S W Merker Syntax In portNumber Parameter portNumber Zahl zwischen O und 63 die einen der 64 S W Merkerports darstellt Bitte beachten Sie dass jeder Port 8 S W Merker enth lt was sich zu einer Gesamtzahl von 512 S W Merkern addiert Hinweis Das Dollarzeichen muss vor die I O Nummer gestellt werden um anzuzeigen dass dies ein Merker ist R ckgabewerte Gibt einen Integer Wert zwischen 0 und 255 aus Der R ckgabewert betr gt 8 Bits wobei jedes Bit einem S W Merker entspricht Beschreibung In gibt Ihnen die M glichkeit die Werte von 8 S W Merkern gleichzeitig zu betrachten Der In Befehl kann verwendet werden um den Status der 8 S W Bits in einer Variable zu speichern Alternativ kann er auch mit dem Wait Befehl verwendet werde
405. tion Dieses Online Fenster Beispiel druckt die Anzahl der durch die Kommunikationsschnittstelle Nr 1 empfangenen Datens tze aus gt print lof 1 5 gt SPEL Language Reference Rev 3 5 257 SPEL Sprachreferenz LogIn Anweisung s Loggt als anderer Anwender in EPSON RC ein Syntax Login logID password Parameter logID Zeichenkettenausdruck der die Anwender Login ID enth lt password Zeichenkettenausdruck der das Anwender Passwort enth lt Beschreibung Sie k nnen EPSON RC Security in Ihrer Anwendung verwenden Beispielsweise k nnen Sie ein Men anzeigen das es verschiedenen Anwendern gestattet sich in das System einzuloggen Jeder Anwender Typ kann seine eigenen Security Rechte haben F r weitere Details bez glich der Sicherheitsvorkehrungen lesen Sie bitte das EPSON RC Benutzerhandbuch Wenn Sie Programme in der Development Umgebung ausf hren wird nach Beendigung des Programms automatisch der zuletzt verwendete Anwendername angegeben Wenn Sie das Operator Fenster mit den OPR oder OPRAS Befehlszeilenoptionen ausf hren wird die Anwendung als Gast Anwender eingeloggt es sei denn Auto Login ist aktiviert Ist dies der Fall so ist die Anwedung als aktueller Windows Anwender eingeloggt wenn ein solcher Anwender im EPSON RC System konfiguriert wurde Hinweis Dieser Befehl ist nur dann anwendbar wenn die Security Option Sicherheitsoption installiert ist Verwandte Befehle GetCurrent
406. tion finetest Home Fine 5r Dy 5r 5 Reduziert die Pr zision auf 1 Pulse Go P1 Go P2 Till Sw 2 On If Sw 2 On Then Print Input 2 came on during the move and Print the robot stopped prior to arriving on Print point P2 Else Print The move to P2 completed successfully Print Input 2 never came on during the move End If Fend lt Online Fenster Beispiel gt gt Fine 507 50 50 50 gt gt Fine 10 10 10 10 164 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Fine Funktion Gibt die Fine Einstellung f r eine angegebene Achse aus Syntax Fine joint Parameter joint Integer Ausdruck der die Achsnummer repr sentiert f r welche die Fine Einstellungen ausgegeben werden sollen R ckgabewerte Real Wert Verwandte Befehle Accel AccelS Arc Go Jump Move Speed SpeedS Pulse Beispiel einer Fine Funktion Dieses Beispiel benutzt die Fine Funktion in einem Programm Function finetst Integer a a Fine 1 Fend SPEL Language Reference Rev 3 5 165 SPEL Sprachreferenz Fix Funktion Gibt den Integer Anteil einer Real Zahl aus Syntax Fix number Parameter number Real Ausdruck der die zu fixierende Zahl enth lt R ckgabewerte Ein Integer Wert der den Integer Anteil einer Real Zahl enth lt Verwandte Befehle Int Beispiel einer Fix Funktion gt print Fix 1 123 1 gt 166 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz FmtStr A
407. tion main Integer I off 1 Xgt 2 task2 For I 1 to 100 Wait Sw S1 0 Go P i On 1 Next I Fend Function task2 Integer I For I 101 to 200 Wait Sw S1 1 Go P i off Sl Next I Fend on 1 print sw 1 off 1 print sw 1 OVVHNVNM SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Tab Funktion Weiterbewegen der aktuellen Print Position um eine spezifizierte Anzahl von Tabulatoren Syntax Tab number Parameter number Integer Ausdruck der die Anzahl der Tabulatoren darstellt R ckgabewerte Beschreibung Eine Zeichenkette welche die spezifizierte Anzahl von Tabulatoren beinhaltet Verwandte Befehle Left Mid Right Space Beispiel einer Tab Funktion Print X Tab 1 y Print For i 1 To 10 Print x i Tab 1 y i Next i SPEL Language Reference Rev 3 5 413 SPEL Sprachreferenz Tan Funktion Gibt den Tangens eines numerischen Ausdrucks aus Syntax Tan radians Parameter radians Real Ausdruck angegeben in Radianten R ckgabewerte Real Zahl die den Tangens des Parameters radians beinhaltet Beschreibung Tan gibt den Tangens des numerischen Ausdrucks aus Der numerischer Ausdruck radians kann ein beliebiger numerischer Wert sein solange dieser in Radianten Einheiten angegeben wird Verwenden Sie die RadToDeg Funktion um Radiantenwerte in Gradzahlen umzuwandeln Verwandte Befehle Abs Atan Atan2 Cos Int Mod Not Sgn Sin Sqr Str Val
408. uage Reference Rev 3 5 429 SPEL Sprachreferenz TmReset Anweisung s Der Timer wird unter Verwendung der Tmr Funktion auf Null zur ckgesetzt Syntax TmReset timerNum Parameter timerNum Integer Ausdruck von 0 63 der darstellt welcher der 64 Timer zur ckgesetzt werden soll Beschreibung Setzt den Timer auf Null zur ck und startet den Timer unter Verwendung von timerNum 64 Timer sind verf gbar nummeriert von 0 bis 63 Verwenden Sie die Tmr Funktion um die Laufzeit f r einen spezifizierten Timer auszugeben Verwandte Befehle Tmr TmReset Beispiel TmReset 0 Setzt den Timer 0 zur ck For I 1 To 10 F hrt Operationen 10 mal durch GoSub CYL Next Print Tmr 0 10 Berechnet die Taktzeit und zeigt sie an 430 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Tool Anweisung s W hlt eine Tool Werkzeug Definition oder zeigt diese an Syntax Tool toolNumber Parameter toolNumber Integer Ausdruck von 0 bis 3 der darstellt welche von 4 Werkzeugdefinitionen mit den anstehenden Bewegungsbefehlen verwendet werden soll R ckgabewerte Zeigt die aktuellen Tool Werte ohne Verwendung von Parametern an Beschreibung Tool w hlt das Werkzeug aus das durch die Werkzeugnummer tooINum spezifiziert ist Wenn die Werkzeugnummer 0 ist ist kein Werkzeug ausgew hlt und alle Bewegungen werden in Bezug auf den Mittelpunkt des U Achsen Flansches durchgef hrt Wenn jedoch der Werkzeugeintrag 1 2 oder 3 aus
409. uchen Sie sich den zu generierenden Bogen bildlich vorzustellen und stellen Sie sicher dass Sie keine Punkte einteachen f r deren Erreichen der Roboter versuchen m sste sich au erhalb seines normalen Arbeitsbereiches zu bewegen SPEL Language Reference Rev 3 5 33 SPEL Sprachreferenz Arch Anweisung s Definiert die Arch Parameter Z Hubstrecke muss zur ckgelegt werden bevor die Horizontalbewegung beginnt oder zeigt sie f r die Verwendung mit dem Jump Befehl an Syntax Arch archNumber riseDist fallDist Parameter Hinweise zur archNumber Bogen Nummer Integer Ausdruck der die zu definierende Arch Nummer repr sentiert G ltige Arch Nummern sind 0 6 was eine Gesamtanzahl von 7 Eintr gen in die Arch Tabelle ergibt Siehe auch die Standard Arch Tabelle weiter unten riseDist Die zur ckgelegte vertikale Distanz Hubbewegung Z zu Beginn der Jump Bewegung und vor Anfang der horizontalen Bewegung Angegeben in Millimetern fallDist Die n tige vertikale Distanz Absenkstrecke gemessen von der Z Position des Punktes auf den sich der Arm zubewegt um nach vollst ndigem Abschluss der Horizontalbewegung komplett vertikal zu verfahren Angegeben in Millimetern R ckgabewerte Zeigt die Arch Tabelle an wenn sie ohne Parameter genutzt wird Der gesamt Inhalt der Arch Tabelle wird angezeigt wenn der Arch Befehl ohne Parameter ber das Online Fenster eingegeben wird Beschreibung Der Hauptzweck des Arch Befehl
410. ue Real Ausdruck der den maximalen R ckgabewert repr sentiert R ckgabewerte Real Zufallszahl von 0 bis range Beschreibung Verwenden Sie Rnd um Zufallszahlen Werte zu generieren Verwandte Befehle Int Beispiel einer Rnd Funktion Hier ist ein Rnd Beispiel das eine Zufallszahl zwischen 1 und 10 generiert Function main Real r Integer randNum Randomize randNum Int Rnd 9 1 Print Random number is randNum Fend SPEL Language Reference Rev 3 5 369 SPEL Sprachreferenz Robot Anweisung s W hlt den aktuellen Roboter aus Syntax Robot number Parameter number Nummer des gew nschten Roboters Der Wert reicht von 1 bis zur Anzahl der installierten Roboter Beschreibung Robot erm glicht es dem Anwender den Vorgabe Roboter f r nachfolgende Bewegungsbefehle auszuw hlen Bei einem System mit nur einem Roboter braucht die Robot Anweisung nicht verwendet zu werden Verwandte Befehle Accel AccelS Arm ArmSet Go Hofs Home HOrdr HTest Local Move Pulse Robot Function Speed SpeedS Robot Beispiel Function main Integer I For I 1 to 100 Robot 1 Go P i Robot 2 Go P i Next I Fend 370 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Robot Funktion Gibt die aktuelle Roboternummer aus Syntax Robot R ckgabewerte Integer welcher die aktuelle Roboternummer enth lt Verwandte Befehle Robot Anweisung Beispiel einer Robot Funktion Print The current robot
411. uf Fehler wegen bergeschwindigkeit der Achse Wenn eine angeforderte Bewegung ergibt dass die Geschwindigkeit einer Achse berschritten wird tritt ein berdrehzahl Fehler auf Im Falle eines berdrehzahl Fehlers der Motoren wird der Roboterarm angehalten und die Servoachse wird abgeschaltet Es folgt kein Bewegungsbefehl auf den Move CP Befehl Wenn auf den Move CP Befehl keine weiteren Bewegungsbefehle folgen die den Arm reibungslos bewegen da der Arm sich noch nicht verz gert hat kann der Arm durch pl tzliche Sto bewegungen besch digt werden In diesem Falle tritt ein Fehler auf der Arm h lt an und die Servoachse wird freigeschaltet Eingeben einer Pause w hrend einer CP Bewegung kann ebenfalls einen Fehler hervorrufen da der Befehl ebenfalls versucht den Roboter zum sofortigen Stillstand zu bringen Verwandte Befehle AccelS Arc Go Jump SpeedS Sw Till 280 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Beispiel einer Move Anweisung Das folgende Beispiel zeigt eine einfache PTP Bewegung zwischen den Punkten PO und P1 Anschlie end bewegt sich der Arm geradlinig zu Punkt P2 bis Eingang 2 einschaltet Wenn Eingang 2 w hrend der Bewegung einschaltet dann verz gert sich der Arm bis zum vollst ndigen Stopp bevor er Punkt P2 erreicht und der n chste Programmbefehl ausgef hrt wird Function movetest Home Go PO Go P1 Move P2 Till Sw 2 1 If Sw 2 1 Then GoTo ioset Else GoTo movefin
412. uft Die Beschleunigungsrampe wird in Strecke Zeit gemessen Die Definition der Beschleunigung einer Bewegung erfolgt durch die Verwendung der Befehle Accel oder AccelS Bin r codierte Dezimalstelle Bin rzahlen k nnen in der Regel leicht in Hexadezimal oder Oktalzahlen umgewandelt werden Eine bin r codierte Dezimalstelle bedeutet eine Bin rzahl zur ck in eine Dezimalzahl Basis 10 zu konvertieren Das bedeutet dass jede Gruppe aus 4 Bin rzeichen nur in eine entsprechende Dezimalzahl zwischen 0 und 9 konvertiert werden kann Die Werte 10 bis 15 welche leicht als Hexadezimalzahlen dargestellt werden k nnen sind im BCD Format nicht nutzbar Bin r codierte Dezimalstellen werden in der Regel verwendet um Hardware Eing nge in eine Basis 10 Zahl zu konvertieren welche dann f r einen R ndelradschalter oder andere Ger te verwendet werden kann die haupts chlich Basis 10 Zahlen verwenden Bogenbewegung Bogenbewegung ist ein anderer Name f r eine kreisinterpolierte Bewegung Die kreisinterpolierte Bewegung ist ein Typ einer Kurvenbewegung bei der ein Bogen durch 3 Punkte definiert wird Der Arm bewegt sich kreisf rmig entlang dieser 3 Punkte bis er schlie lich den dritten Punkt erreicht hat Die Bogenbewegung wird normalerweise bei Prozessanwendungen wie z B dem Dispensen verwendet Clipboard Ein tempor rer Speicherplatz der verwendet wird um Text und Punkte zwischen Dokumenten zu bermitteln 484 SPEL Language Refere
413. ugkoordinatensystems Rotationswinkel des Werkzeugkoordinatensystems Wenn die Parameter weggelassen werden wird die aktuelle TLSet Definition angezeigt Beschreibung Definiert die Werkzeugkoordinatensysteme Tool 1 Tool 2 und Tool 3 durch die Spezifizierung des Ursprungs und des Rotationswinkels des Werkzeugkoordinatensystems in Relation zum Koordinatensystem des Tool 0 Hand Koordinaten System TLSet 1 50 100 20 30 TLSet 2 P10 X 20 Im zweiten Fall wird Bezug auf die Koordinaten Werte von P10 genommen und zu dem X Wert wird 20 addiert Arm Attribut und Nummern des lokalen Koordinatensystems werden ignoriert Hinweise Die TLSet Werte werden beibehalten Die TLSet Werte werden dauerhaft gespeichert und nicht ge ndert bis sie entweder vom Anwender ge ndert werden oder ein Verinit Befehl ausgegeben wird 424 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Verwandte Befehle Tool Arm ArmSet TLSet Function TLSet Beispiel Das folgende Beispiel zeigt einen guten Test der vom Online Fenster ausgef hrt werden kann Er hilft dabei den Unterschied zwischen Bewegungen mit einem Tool und ohne ein Tool zu verstehen gt TLSet 1 100 0 0 0 Definiert das Werkzeugkoordinatensystem f r Tool 1 plus 100 mm in X Richtung vom Arm Koordinatensystem gt Tool 1 w hlt Tool 1 wie durch TLSet definiert Go Pl Positioniert die Spitze des Werkzeugs 1 auf Pl vV gt Tool 0 Sagt dem Roboter das
414. ummer liegt au erhalb des g ltigen Bereichs 1 2 von JRANGE 3014 Die angegebene Arch Nummer ist zu klein f r ARCH G ltige Arch Nummern sind 0 bis 6 3015 Die angebene Arch Nummer ist zu gro f r ARCH G ltige Arch Nummern sind 0 bis 6 3016 Die angebene Referenz Datennummer liegt au erhalb des g ltigen Bereichs 1 2 von ARCH 476 SPEL Language Reference Rev 3 5 SPEL Fehlermeldungen Error Message 3022 Die aktuelle Position ist ohne Ausf hren von MCAL nicht definiert F hren Sie MCAL aus berpr fen Sie MCORDR wenn ein Fehler auftritt 3030 Roboternummer ist falsch 3031 PRM Datei ist defekt 3032 Die Version der PRM Datei ist nicht bekannt 3033 Die angebene ARM Nummer ist ung ltig G ltiger Bereich ist von 0 bis 3 3034 Die angebene TOOL Nummer ist ung ltig G ltiger Bereich ist von 0 bis 3 3100 Kein Roboter gefunden 3101 Dieser Bewegungsbefehl wird nicht unterst tzt 3102 Der Status des Motion Control Moduls ist falsch 3110 Es wurden keine Werte definiert 3200 Der Roboter wird von einem anderen Task verwendet 3201 Der Roboter wird von einem anderen Task verwendet 3228 Fehler w hrend des Ladens von MMD 3300 Es wurde versucht einen Bewegungsbefehl auszuf hren w hrend die Sicherheitsabschrankung aktiv offen war 3301 Es wurde versucht einen Task auszuf hren w hrend die Sicherheitsabschrankung aktiv off
415. und CurPos InPos Beispiel einer FindPos Funktion Find Sw 5 On Go P10 Find If PosFound Then Go FindPos Else Print Cannot find the sensor signal End If 162 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Fine Anweisung s Definiert die Positionierungsgenauigkeit f r Zielpunkte und zeigt sie an Syntax Fine 1MaxErr j2MaxErr j3MaxErr j4MaxErr Parameter j1MaxErr Integer Ausdruck im Bereich von 0 32767 der den zul ssigen Positionierungsfehler f r die erste Achse repr sentiert SCARA T1 Achse kartesischer Roboter X Achse j2MaxErr _ Integer Ausdruck im Bereich von 0 32767 der den zul ssigen Positionierungsfehler f r die zweite Achse repr sentiert SCARA T2 Achse kartesischer Roboter Y Achse J3MaxErr _ Integer Ausdruck im Bereich von 0 32767 der den zul ssigen Positionierungsfehler f r die dritte Achse repr sentiert Z Achse j4MaxErr _ Integer Ausdruck im Bereich von 0 32767 der den zul ssigen Positionierungsfehler f r die vierte Achse repr sentiert U Achse R ckgabewerte Wenn Fine ohne Parameter verwendet wird werden die aktuellen Fine Werte f r jede der vier Achsen angezeigt Beschreibung Fine definiert f r jede Achse den zul ssigen Positionierungsfehler mit dem die Vollendung beliebiger Bewegungen registriert wird Die Pr fung hinsichtlich der Bewegungsvollendung beginnt nachdem die CPU in der Drive Unit den Zielpositions Pulswert vollst ndig an das Ser
416. ung Ctr arbeitet mit der CTReset Anweisung um es Hardwareeing ngen zu erm glichen als Z hler zu funktionieren Jedes Mal wenn ein Hardwareeingang der als Z hler definiert ist vom Off Aus zum On Ein Status geschaltet wird erh ht dieser Eingang den Z hlerwert um 1 Die Ctr Funktion kann jederzeit verwendet werden um den aktuellen Z hlerwert f r jegliche Z hlereing nge zu erhalten Jeglicher Hardwareeingang kann als Z hler verwendet werden Es k nnen jedoch nur 16 Z hler gleichzeitig aktiv sein Z hler Pulse Eingabe Zeitkurve Hoch EIN 4 Msek o l nger Niedrig Aus 4 Msek od l nger Verwandte Befehle CTReset Beispiel einer Ctr Funktion Das folgende Beispiel zeigt ein Code Muster das verwendet werden k nnte um den Wert eines Z hlereingangs zu erhalten CTReset 3 Setzt den Z hler f r Eingang 3 auf 0 zur ck On 0 Schaltet einen Ausgangsschalter ein Do While Ctr 3 lt 5 Loop off 0 Wenn 5 Eingabezyklen f r Eingang 3 gez hlt wurden wird ausgeschaltet Ausgang 0 aus SPEL Language Reference Rev 3 5 99 SPEL Sprachreferenz CTReset Anweisung s Setzt den Z hlerwert des angegebenen Z hlereingangs zur ck Stellt auch den Hardwareeingang als Z hlereingang ein Syntax CTReset bitNumber Parameter bitNumber Nummer des Hardwareeingangs als Z hler eingestellt Die Nummer muss ein Integer Ausdruck sein der einen g ltigen Hardwareeingang repr sentiert Es k nnen gl
417. ung nicht genutzt wird werden die Anweisungen zwischen ifdef und endif ohne Kompilierung bersprungen Anderenfalls d h sollte die else Anweisung genutzt werden werden die Anweisungen zwischen else und endif kompiliert Verwandte Befehle define ifndef ifdef Beispiel Ein Abschnitt des Codes aus einem Beispielprogramm welches ifdef verwendet ist unten abgebildet Im unten stehenden Beispiel erfolgt ein Ausdruck des A Variablenwertes je nachdem ob eine Definition des define DEBUG Pseudo Befehls vorliegt oder nicht Wenn der define DEBUG Pseudo Befehl in dieser Quelle bereits im Vorangegangenen benutzt wurde so wird die Zeile Print A kompiliert und sp ter ausgef hrt wenn das Programm l uft Der Ausdruck der Zeichenkette The End jedoch wird trotzt des define DEBUG Pseudo Befehls erfolgen Unkommentierte n chste Zeile f r den Debug Modus 1 define DEBUG Input 1 AS ifdef DEBUG Print AS AS endif Print The End 18 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ifndef endif s Bedingte Kompilierung Syntax ifndef ID Zeichenkette schreiben Sie den zur bedingten Kompilierung ausgew hlten Quellcode an diese Stelle else schreiben Sie den ausgew hlten Quellcode f r die wahre Bedingung hierher endif Parameter Hinweise zur ID Zeichenkette Anwenderdefiniertes Schl sselwort welches wenn es nicht definiert ist gestattet dass
418. ungen ein die durch die Befehle Move und Arc initiiert wurden SpeedS wird in mm sec spezifiziert was die Werkzeugmittelpunkt Geschwindigkeit f r den Roboterarm repr sentiert G ltige Eintr ge f r SpeedS bewegen sich zwischen 1 und 1120 Der Standardwert variiert von Roboter zu Roboter Die Standard SpeedS Werte f r Ihr Robotermodell finden Sie in der Bedienungsanleitung des Roboters Das ist der SpeedS Ausgangswert der jedesmal automatisch voeingerichtet wird wenn die Versorgungsspannung eingeschaltet wird Der SpeedS Wert wird auf seine Standardwerte zur ckgesetzt wenn einer der folgenden Befehle ausgef hrt wird Power On Software Reset Motor On SFree SLock Verinit Ctrl C Key Im Low Power Modus ist die maximale SpeedS Einstellung 50 mm s Vorgabewert Wenn eine h here Geschwindigkeit direkt vom Online Fenster aus oder in einem Programm angegeben wurde wird die Geschwindigkeit auf diesen Vorgabewert gesetzt Im High Power Modus ist die Einstellung von SpeedS gleich dem eingegebenen Wert Wenn eine Bewegung bei h herer Geschwindigkeit n tig ist stellen Sie den High Power Modus unter Verwendung von Power High ein und schlie en Sie die Sicherheitst r Wenn die Sicherheitst r offen ist werden die SpeedS Einstellungen in ihre Standardwerte ge ndert Das folgende Beispiel zeigt dass der Roboter sich mit der vorgegebenen Geschwindigkeit 50 bewegt weil er im Low Power Modus ist auch wenn der eingestellte Gesc
419. unkt oder Punktausdruck gleichgesetzt wird Verwandte Befehle Local Pallet PDef PDel Plist Punkt Zuweisung Beispiel Die folgenden Beispiele werden vom Online Fenster aus ausgef hrt Zuordnung von Koordinaten zu P1 gt P1 300 200 50 100 Spezifizierung der Linksarmstellung gt P2 400 200 80 100 L Addieren Sie 20 zur X Koordinate von P2 und definieren Sie den resultierenden Punkt als P3 gt P3 P2 X 20 gt plist 3 P3 380 200 80 100 L Subtrahieren Sie 50 von der P2 Y Koordinate ersetzen Sie die Z Koordinate durch 30 und definieren Sie den resultierenden Punkt P4 als Stellung des rechten Arms gt P4 P2 Y 50 2 30 R Addieren Sie 90 zur U Koordinate der Palette n 3 5 und definieren Sie den resultierenden Punkt als P6 P pallet 3 5 U 90 gt P5 gt P6 334 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Punktausdruck s Spezifiziert einen Roboterpunkt f r die Zuordnung oder f r einen Bewegungsbefehl Syntax point point orientation IocalNumber relativeOffsets absoluteCoords Parameter point Spezifizierung des Basis Punktes Dabei kann es sich um eine der folgenden Optionen handeln Pnumber P expr P Here Pallet palletNumber palletIndex pointLabel XcoordExpr YcoordExpr ZcoordExpr UcoordExpr XY XcoordExpr YcoordExpr ZcoordExpr UcoordExpr JA j Tangle j2angle j3angle j4angle Pulse jTpulses j2pulses j3pulses j4pulses orien
420. unkte verwendet wird Wenn Sie keine Tangentialkorrektur verwenden ist es m glich dass der Roboter bei h heren Geschwindigkeiten nicht dem korrekten Pfad folgt Minimale und maximale Anzahl erlaubter Punkte in der offenen Kurve Open Curve Offene Kurven k nnen unter Verwendung von 3 bis 200 Punkten definiert werden Minimale und maximale Anzahl erlaubter Punkte in der geschlossenen Kurve Closed Curve Geschlossene Kurven k nnen unter Verwendung von 3 bis 50 Punkten definiert werden Die Modi 1 und 3 werden in SPEL nicht mehr ben tigt Die Modi 1 und 3 wurden in der SPEL Sprache in SRC 3xx Steuerungen verwendet um festzulegen ob nach Erreichen des letzten Punktes eine Verz gerung einsetzen sollte In SPEL wurde dieses Feature durch den CP Parameter f r die CVMove Anweisung ersetzt 108 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Potentielle Fehler Versuch den Arm au erhalb des Arbeitsbereiches zu bewegen Der Curve Befehl kann den Bewegungsbereich f r den definierten Kurvenpfad nicht pr fen Dies bedeutet dass ein vom Anwender definierter Pfad den Roboterarm dazu veranlassen d rfte sich au erhalb seines normalen Arbeitsbereiches zu bewegen In diesem Fall tritt ein out of range au erhalb des Arbeitsbereiches Fehler auf Verwandte Befehle Accels Funktion Arc CVMove Move Speeds Beispiel einer Curve Anweisung Das folgende Beispiel bestimmt den Dateinamen der Daten der freien Kurve al
421. unktionsname 527 Der Befehl ELSE wird erwartet 528 Ein Aufrufezeichen wird erwartet 529 Der Befehl Do For oder Function wird erwartet 530 Eine Punktenummer muss angegeben werden 531 Eine Nummer f r die Abfangroutine oder ein Modus wird erwartet SPEL Language Reference Rev 3 5 467 SPEL Fehlermeldungen Error Message 532 Ausdruck erwartet 533 Ein ARRAY wird erwartet 534 Ung ltige Dateinummer Werte von 30 bis 63 sind g ltig 535 Es wird eine Zahl erwartet 536 Muss als Funktion verwendet werden 537 Fehlender Parameter bei SetCom 1 RTS oder None fehlt 538 Dateiname mit der Erweiterung INC erwartet 539 INPUT erwartet 540 Ein Integer Ausdruck wird erwartet 541 Ein Schl sselwort kann nicht als Bezeichnung verwendet werden 542 Ein Schl sselwort kann nicht als Bezeichnung verwendet werden 543 Der Befehl ON oder OFF wird erwartet 544 HIGH oder LOW wird erwartet 545 Darf nicht innerhalb einer Funktion verwendet werden 546 In Include Dateien d rfen keine Zeilennummern enthalten sein 547 Linke Klammer erwartet 548 Eine Zeilennummer oder ein Label wird erwartet 549 Der Befehl MERGE wird erwartet 550 Fehlendes Punktattribut 551 Fehlende Achse 552 Fehlende Bezeichnung 553 Eine Zeichenkette wird erwartet 554 Fehlende Armnummer 555 Ein Operand wird erwartet 556 Fehlen
422. usgangsport p aus Out p d Gibt Ausgabedaten d an Merkerport p aus Wait t Verz gert die Ausf hrung der n chsten Parallelbearbeitungsanweisung um t Sekunden Wait Sw n 5j Verz gert die Ausf hrung der n chsten Parallelbearbeitungsanweisung bis der Eingang n gleich der durch j definierten Bedingung ist 1 ein O aus 14 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Wait Sw n j Verz gert die Ausf hrung der n chsten Parallelbearbeitungsanweisung bis der Merker n gleich der durch j definierten Bedingung ist 1 ein O aus Print Input Gibt Daten an die Bedieneinheit aus bzw von dort ein Print Input Gibt Daten an die Kommunikationsschnittstelle aus bzw von dort ein Einschr nkungen Bewegung ist beendet bevor alle E A Befehle ausgef hrt sind Falls die Ausf hrung der Parallelbearbeitungsanweisungen nach Ausf hrung der Bewegungsbefehle noch nicht abgeschlossen ist wird die nachfolgende Programmausf hrung solange verschoben bis alle Parallelbearbeitungsanweisungen vollst ndig ausgef hrt wurden Diese Situation tritt mit hoher Wahrscheinlichkeit bei kurzen Bewegungen auf bei denen parallel viele E A Anweisungen ausgef hrt werden Was geschieht mit der parallelen E A Ausf hrung wenn die TILL Anweisung verwendet wird um den Arm anzuhalten bevor die beabsichtigte Bewegung vollst ndig ausgef hrt wurde Wenn TILL verwendet wird um den Arm an einer Zwischenposition des Verfahrweges
423. usgef hrt wird wird wie unten beschrieben verarbeitet Dann verzweigt die Steuerung an die spezifizierte Zeilennummer oder das spezifizierte Label Jede Armbewegung h lt unverz glich an Der Warte Status durch die Warte oder Eingabebefehle wird nicht fortgesetzt Alle anderen Befehle beenden die Ausf hrung bevor die Steuerung verzweigt Wenn GoSub spezifiziert ist Nach der Ausf hrung desselben Prozesses wie bei GoTo wird an die spezifizierte Zeilennummer oder das spezifizierte Label verzweigt Dann wird das darauf folgende Unterprogramm ausgef hrt Sobald die Return Anweisung am Ende des Unterprogramms ausgef hrt ist kehrt die Programmausf hrung zur ck zu der Zeile die auf den GoSub Befehl folgt Die Befehle GoSub und Call sind im Unterprogramm eines Trap Prozesses nicht erlaubt Wenn Call spezifiziert ist Die Programmsteuerung f hrt die angegebene Funktion aus In diesem Fall arbeitet der Task der den Trapbefehl ausf hrt weiter Syntax 2 434 W hrend Not Halt Schutzt r ge ffnet oder geschlossen Fehler oder Pause wird die Trap Prozess Funktion des Call Befehls als privilegierter Task ausgef hrt Verwenden Sie Xqt nicht in der Trap Prozess Funktion Um eine Trap Einstellung zu l schen f hren Sie den Trap Befehl nur mit dem Schl sselwort Parameter aus Zum Beispiel l scht Trap Emergency den Not Halt Trap Wenn Emergency spezifiziert ist Wenn der Not Halt aktiviert ist f hrt die Programmst
424. vo System gesandt hat Aufgrund der Servoverz gerung wird der Roboter die Zielposition noch nicht erreicht haben Diese Pr fung wird im Abstand von wenigen Millisekunden wiederholt bis jede Achse in der angegebenen Bereichseinstellung angekommen ist Die Positionierung wird als abgeschlossen betrachtet wenn alle Achsen innerhalb dieser angegebenen Bereiche angekommen sind Sobald die Positionierung abgeschlossen ist geht die Programmsteuerung auf den n chsten Befehl ber Wenn mit dem Fine Befehl vergleichsweise gro e Bereiche verwendet werden wird die Positionierung relativ fr h in der Bewegung best tigt was eine eher grobe Zielpositionierung zur Folge hat Die im Folgendenden dargestellte Formel und Abbildung verdeutlicht die Beziehung zwischen den definierten Werten und der entsprechenden Positionierungsgenauigkeit Positionierungsgenauigkeit n 1 1 4 Pulse wobei es sich bei n um den unten angebenen Wert handelt Specified Value Target Position BEIN ERZHBENE ER une SPEL Language Reference Rev 3 5 163 SPEL Sprachreferenz Tipps Zykluszeiten und der Fine Befehl Der Fine Wert hat keine Auswirkungen auf die Steuerung der Beschleunigung oder Verz gerung des Manipulatorarms Kleinere Fine Werte k nnen das System jedoch veranlassen langsamer zu laufen da es das Servosystem zus tzliche Zeit kosten kann einige Millisekunden um in einen zul ssigen Positionsbereich zu gelangen Sobald der Arm den zul ssigen Po
425. weisung Konfiguriert ein analoges Ethernet I O Eingangs oder Ausgangsmodul Syntax ENetlO_AnaGetConfig channel gain offset IoScale hiScale Parameter channel Integer Ausdruck oder I O Label welches einen der analogen Eingangs oder Ausgangsports repr sentiert gain Realvariable zum Empfang der Eingangsverst rkung O zeigt die Vorgabeeinstellung an offset Realvariable zum Empfang des Eingangs Offsets 0 zeigt die Vorgabeeinstellung an loScale Realvariable zum Empfang des niedrigsten Wertes hiScale Realvariable zum Empfang des h chsten Wertes Beschreibung Dieser Befehl wird verwendet um die Konfiguration f r den Kanal des Analogmodules zu lesen Hinweis Dieser Befehl funktioniert nur dann wenn die EtherNet I O Option installiert ist Verwandte Befehle ENetlO_Analn ENetIO_AnaOut Beispiel einer ENetlO_AnaGetConfig Anweisung Real gain offset loScale hiScale ENetIO_AnaGetConfig 8 gain offset loScale hiScale loScale 5 hiScale 5 ENetIO_AnaSetConfig 8 gain offset loScale hiScale 132 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz ENetlO_AnaSetConfig Anweisung Konfiguriert ein analoges Ethernet I O Eingangs oder Ausgangsmodul Syntax ENetlIO_AnaSetConfig channel gain offset IoScale hiScale Parameter channel Integer Ausdruck oder I O Label welches einen der analogen Ausgangsports repr sentiert gain Real Ausdruck der die Eingangsverst rkung enth lt S
426. weisung Setzt 16 Ausg nge gleichzeitig Syntax OutW wordPortNum outputData Parameter wordPortNum Spezifiziert WordPort Nummern Integer zwischen 0 und 31 innerhalb des installierten E A Bereichs unter Verwendung eines Ausdrucks oder eines numerischen Wertes outputData Spezifiziert Ausgangsdaten Integers von 0 bis 65535 unter Verwendung eines Ausdrucks oder eines numerischen Wertes Beschreibung ndert den aktuellen Status der E A Ausgangsportgruppe spezifiziert durch die WordPort Nummer in die angegebenen Ausgangsdaten Verwandte Befehle In InW Out OutW Beispiel OutW 0 25 314 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz OutW Funktion Gibt den Status eines Ausgangswortes 2 Bytes aus Syntax OutW wordPortNum Parameter wordPortNum Spezifiziert WordPort Nummern Integer zwischen 0 und 31 innerhalb des installierten E A Bereichs unter Verwendung eines Ausdrucks oder eines numerischen Wertes R ckgabewerte Der Ausgangsstatus 16 Bit Wert f r den spezifizierten Port Verwandte Befehle OutW Anweisung Beispiel einer OutW Funktion OutW 0 amp H1010 SPEL Language Reference Rev 3 5 315 SPEL Sprachreferenz PAgl Funktion Gibt den Achswert eines bestimmten Punktes aus Syntax PAgl point jointNumber Parameter point Punktausdruck JointNumber Definiert die Achsnummer ganze Zahl von 1 bis 4 repr sentiert durch einen Ausdruck oder einen numerischen Wert R ckgab
427. weisung s Der EPrint end print Druck beenden Befehl sendet Daten an den PC Drucker nachdem der LPrint Befehl verwendet wurde Syntax EPrint Beschreibung EPrint wird nach Ausf hrung der letzten LPrint Anweisung verwendet Verwandte Befehle LPrint Print EPrint Beispiel Function dataPrint Integer i For i 1 to 10 LPrint testDat i Next i EPrint Schickt die Daten an den Drucker des PCs Fend 144 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Era Funktion Gibt die Achsnummer aus f r die ein Fehler aufgetreten ist Syntax Era taskNum Parameter taskNum Integer Ausdruck der eine Tasknummer von 0 bis 32 repr sentiert 0 gibt den aktuellen Task an R ckgabewerte Die Achsnummer die den Fehler im Bereich 0 4 verursacht hat wie im folgenden beschrieben 0 Der aktuelle Fehler wurde nicht durch eine Servachse verursacht 1 Der aktuelle Fehler wurde durch Achsnummer 1 T1 verursacht 2 Der aktuelle Fehler wurde durch Achsnummer 2 T2 verursacht 3 Der aktuelle Fehler wurde durch Achsnummer 3 Z verursacht 4 Der aktuelle Fehler wurde durch Achsnummer 4 U rotationsf hige Ausrichtungsachse verursacht Beschreibung Era wird verwendet wenn ein Fehler auftritt um festzustellen ob der Fehler von einem der vier Servoachsen verursacht wurde und um die Nummer der Achse auszugeben die den Fehler verursacht hat Wenn der aktuelle Fehler nicht von einer Achse verursacht wurde gibt die Er
428. wendet wird die Anzahl der geparsten Textelemente ausgegeben Verwandte Befehle Redim String Beispiel einer ParseStr Anweisung String toks 0 Integer i ParseStr 1 2 3 4 toks For i 0 To UBound toks Print token i toks i Next i 320 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Pass Anweisung s F hrt gleichzeitig vier PTP Bewegungen aus und bewegt den Manipulatorarm dabei an festgelegten Punkten vorbei Verschleifen von Hilfspunkten ohne diese exakt zu berfahren Syntax Pass point On Off bitNumber point Parameter point Pnumber oder P expr oder Punktlabel bitNumber Der ein oder auszuschaltende Ausgang Integer zwischen 0 und 511 oder Ausgangslabel Beschreibung Der Pass Befehl bewegt den Roboterarm in die N he aber nicht direkt durch die spezifizierte Punktserie Um eine Punktserie zu spezifizieren verwenden Sie Punkte PO P1 und trennen Sie diese durch Kommata Um Ausg nge w hrend der Bewegung ein oder auszuschalten f gen Sie einen durch Kommata abgetrennten On oder Off Befehl zwischen die Punkte ein On oder Off wird ausgef hrt bevor der Roboter den Punkt erreicht der genau vor On oder Off kommt Wenn auf Pass direkt ein weiterer Pass Befehl folgt wechselt die Steuerung zum folgenden Pass Befehl ohne dass der Roboter am letzen definierten Punkt des vorangegangenen Pass Befehls anh lt Wenn direkt auf Pass ein Bewegungsbefehl fo
429. werden Werden sie ausgelassen wird die Nummer des aktuellen Arms angezeigt R ckgabewerte Wenn der Arm Befehl ohne Parameter ausgef hrt wird zeigt das System die aktuelle Armnummer an Beschreibung Die Arm Anweisung gestattet es dem Anwender zu spezifizieren welcher Arm f r Roboterbefehle zu benutzen ist Der Arm Befehl gestattet es jedem Zusatzarm normale Positionsdaten zu verwenden Wenn keine Zusatzarme installiert sind operiert der Standardarm Arm Nummer 0 Da zum Auslieferungszeitpunkt werksseitig die Armnummer 0 spezifiziert ist ist es nicht notwendig den Arm Befehl zur Auswahl eines Armes zu benutzen Werden jedoch Zusatzarme genutzt so m ssen sie zuerst mit dem ArmSet Befehl definiert werden Die Konfigurationsm glichkeit des Zusatzarmes erlaubt es dem Anwender die richtigen Roboterparameter f r seinen Roboter zu konfigurieren sollte die tats chliche Roboterkonfiguration sich leicht von der eines Standardroboters unterscheiden Wenn der Anwender beispielsweise eine zweite Ausrichtungsachse an die zweite Roboterachse montiert hat wird der Anwender wahrscheinlich die richtigen Roboterachsverbindungen f r den neu angegliederten Roboterarm definieren wollen Dies erm glicht die korrekte Funktionsweise des neu definierten Roboterarmes unter den folgenden Bedingungen ein einzelner Datenpunkt soll von zwei oder mehr Armen angefahren werden bei Verwendung des Befehls PALLET Bei Angabe einer CP Bewegung bei Spezifik
430. werden durch den Kraftsensortypen bestimmt Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Force Sensing installiert ist Verwandte Befehle Force_GetForces Beispiel einer Force_GetForce Funktion Print Force_GetForce 1 SPEL Language Reference Rev 3 5 175 SPEL Sprachreferenz Force_GetForces Anweisung s Gibt Kr fte und Drehmomente f r alle Kraftsensorachsen in einer Matrix aus Syntax Force_GetForces array Parameter array Real Matrix mit einer Obergrenze von 6 R ckgabewerte Die Matrixelemente werden eingesetzt wie folgt Fx Kraft 1 Fy Kraft 2 Fz Kraft 3 Tx Drehmoment 4 Ty Drehmoment 5 Tz Drehmoment 6 Beschreibung Die Force_GetForces Anweisung wird verwendet um alle Kraft Und Drehmomentwerte gleichzeitig zu lesen Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Force Sensing installiert ist Verwandte Befehle Force_GetForce Anweisung Beispiel einer Force_GetForces Anweisung Real fValues 6 Force_GetForces fValues 176 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Force_Sensor Funktion Gibt den aktuellen Kraftsensor f r den aktuellen Task aus Syntax Force_Sensor Beschreibung Force_Sensor gibt die aktuelle Sensornummer f r den aktuellen Task aus Wenn ein Task startet wird die Sensornummer automatisch auf 1 gesetzt Hinweis Dieser Befehl ist nur dann anwendbar wenn die Option Force Sensing installiert ist
431. wert des Z hlers var1 Sobald dieser Wert erreicht ist ist die For Next Schleife vollst ndig und die Ausf hrung wird mit der Anweisung welche auf den Next Befehl folgt fortgesetzt Increment Ein optionaler Parameter der das Z hl Inkrement f r jedes Mal definiert welches die Next Anweisung innerhalb der For Next Schleife ausgef hrt wird Diese Variable kann positiv oder negativ sein Wenn der Wert jedoch negativ ist muss der Erstwert der Variable gr er sein als ihr Endwert Wird der Inkrement Wert weggelassen inkrementiert erh ht das System automatisch um 1 statements Jede g ltige SPEL Anweisung kann in die For Next Schleife eingef gt werden R ckgabewerte Keine Beschreibung For Next f hrt einen Satz von Anweisungen innerhalb einer Schleife eine definierte Anzahl von Malen aus Die For Anweisung stellt den Anfang der Schleife dar Die Next Anweisung ist das Ende der Schleife Die Male welche die Anweisungen innerhalb der Schleife ausgef hrt werden werden mithilfe einer Variable gez hlt Der erste numerische Ausdruck initval ist der Erstwert des Z hlers Dieser Wert kann positiv oder negativ sein solange die Variable finalval und die Step Inkrementierung einander korrekt entsprechen Der zweite numerische Ausdruck finalval ist der Endwert des Z hlers Dies ist der Wert der sobald er erreicht ist die Beendigung der For Next Schleife ausl st und die Steuerung des Programms wird an den n chsten auf den Next
432. wird normalerweise bei Prozessanwendungen wie z B dem Dispensen verwendet Point to Point Bewegung PTP Bewegung Bewegt den Roboterarm in k rzest m glicher Zeit mit den aktuellen Geschwindigkeits und Accel Einstellungen von der aktuellen Position zu einem spezifizierten Punkt Diese Bewegung kann geradlinig erfolgen muss es aber nicht Programmgruppe Eine Programmgruppe beinhaltet ein oder mehrere SPEL Programm e Eine Programmgruppe kann mit dem Chain Befehl innherhalb eines Programms ausgef hrt werden Programmgruppen sind optional SPEL Language Reference Rev 3 5 485 Glossar RCF Datei Eine f r jedes Projekt automatisch erzeugte Datei welche die Informationen zur der Systemkonfiguration enth lt einschlie lich Hordr Weight TLSet usw RIA Robotics Industries Association US amerikanischer Robotikverband Organisation von Roboterverk ufern und Endverbrauchern deren Zweck die F rderung des Verst ndnissen von Robotern und des Robotergebrauches ist Roboterpunkt Eine kartesische Koordinate die eine Roboterposition im Arbeitsbereich spezifiziert Jeder Punkt hat 4 Koordinaten X Y Z U und zwei Attribute Ausrichtung lefty righty und Local Nummer 0 15 Die Punkte werden in Projekt Punktdateien auf dem PC gespeichert Task Eine Objektdatei die im System ausgef hrt wird Wenn in SPEL eine Funktion gestartet wird welche die Xqt Anweisung verwendet wird diese als separater Task ausgef hrt Bis
433. wird vom Online Fenster aus ausgef hrt gt hour 2560 212 SPEL Language Reference Rev 3 5 SPEL Sprachreferenz Hour Funktion Gibt die Betriebszeit der Steuerung aus Syntax Hour R ckgabewerte Gibt die kumulierte Betriebszeit des Steuerger tes aus Real Zahl in Stunden Verwandte Befehle Time Beispiel einer Hour Funktion Print Number of controller operating hours Hour SPEL Language Reference Rev 3 5 213 SPEL Sprachreferenz HTest Anweisung Zeigt die Anzahl Pulse vom Einschalten des Homesensors bis zur Z Phase des Encoders Syntax HTest R ckgabewerte Der Pulse Z hlstand f r jede Achse wird angezeigt Beschreibung Bei Ausf hrung des Mcal Befehls bewegt sicht der Roboterarm von der Position in der der Kalibrierungssensor ausgeschaltet ist sollte der Kalibrierungssensor eingeschaltet sein bewegt sich der Arm um den Sensor abzuschalten zu der Position in der der Sensor eingeschaltet wird und f hrt mit seiner Bewegung fort bis er die Encoder Z Phase innerhalb einer Rotation findet dann wird der Arm angehalten Der HTest Befehl zeigt den Pulse Z hlstand f r jede Achse an die diese Bewegung durchl uft Vor jedem Roboterversand wird der Pulse Z hlstand der einige Fehler in der Home Sensor Detektion beinhaltet zu Ihrer Sicherheit angepasst Potentielle Fehler Der HTest Wert berschreitet seinen Bereich Wenn sich die HTest Werte au erhalb des festgesetzten erlaubten B
434. zuf hren Es wird jedoch empfohlen im Normalfall zun chst die Z Achse zu ihrer Kalibrierungsposition zu bewegen in Step Schritt 1 und die anderen Achsen in den darauf folgenden Steps Schritten folgen zu lassen Siehe unten stehenden Hinweis Der MCordr Befehl setzt voraus dass ein Bitmuster f r jeden der vier Schritte definiert wurde Da es vier Achsen gibt wird jeder Achse ein spezifisches Bit zugeordnet Wenn das Bit eingeschaltet ist 1 f r einen spezifischen Schritt wird die entsprechende Achse kalibrieren Wenn das Bit ausgeschaltet ist 0 wird die entsprechende Achse w hrend dieses Schrittes nicht kalibrieren Die Achsen Bitmuster werden zugeordnet wie folgt Achse 1 Achse 2 Achse T2 3 Achse 4 Achse T1 Z U Bitnummer Bit 0 Bit 1 Bit 2 Bit 3 Bin rcode amp B0001 amp B0010 amp B0100 amp B1000 SPEL Language Reference Rev 3 5 269 SPEL Sprachreferenz Hinweise Der Unterschied zwischen MCordr und Hordr Obwohl die Befehle Hordr und MCordr auf den ersten Blick recht hnlich aussehen gibt es zwischen ihnen einen Hauptunterschied den man verstehen muss MCordr wird verwendet um die Achsenreihenfolge f r die Roboterkalibrierung zu definieren wird mit Mcal verwendet w hrend Hordr verwendet wird um die Achsenreihenfolge f r das Homing zu definieren wird mit dem Home Befehl verwendet Vorgegebene Homing Reihenfolge werksseitige Einstellung Werksseitig ist die Kalibrierungsreihenfolge dahingehe
435. zur selben Zeit in ihre Home Position zur ckgef hrt werden k nnen Es wird jedoch empfohlen im Normalfall zun chst die Z Achse zu ihrer Home Position zu bewegen in Step Schritt 1 und die anderen Achsen in den darauf folgenden Steps Schritten folgen zu lassen Siehe unten stehenden Hinweis Der Hordr Befehl setzt voraus dass ein Bitmuster f r jeden der vier Schritte definiert wurde Da es vier Achsen gibt wird jeder Achse ein spezifisches Bit zugeordnet Wenn das Bit gesetzt ist 1 f r einen spezifischen Schritt wird die entsprechende Achse sich in ihre Home Position bewegen Wenn das Bit nicht gesetzt ist 0 wird sich die entsprechende Achse w hrend dieses Schrittes nicht in ihre Home Position bewegen Die Achsen Bitmuster werden zugeordnet wie folgt Achse 1 Achse 2 Achse T2 3 Achse 4 Achse T1 Z U Bitnummer Bit O Bit 1 Bit 2 Bit 3 Bin rcode amp B0001 amp B0010 amp B0100 amp B1000 Hinweise Der Unterschied zwischen MCordr und Hordr obgleich die Befehle MCordr und Hordr auf den ersten Blick recht hnlich aussehen gibt es zwischen ihnen einen Hauptunterschied den man verstehen muss MCordr wird verwendet um die SPEL Language Reference Rev 3 5 209 SPEL Sprachreferenz Achsenreihenfolge f r die Roboterkalibrierung zu definieren wird zusammen mit Mcal benutzt w hrend Hordr verwendet wird um die Achsenreihenfolge f r das Homing zu definieren wird zusammen mit dem Home Befehl verwendet Vorgege

Download Pdf Manuals

image

Related Search

Related Contents

ALU & PVC Cleaner Spray - Roulettes pour baie vitrée  Anderson Catalogue 2014  User Manual - TEWS TECHNOLOGIES  Manual de Instruções TG-320  K 6.85 M  RGB ETL Vers. 1.0  mode d`emploi Station d`appartement vidéo pour montage  TWANews  § Encrmax UC—AEBS Fan User's Manual  

Copyright © All rights reserved.
Failed to retrieve file