Omron TJ1-MC04, TJ1-MC16 PROGRAMMING Manual [de]

Cat. No. I52E-DE-03
Trajexia Bewegungssteuerungssystem
TJ1-MC04 TJ1-M C1 6
PROGRAMMIERHANDBUCH
Hinweis
OMRON-Produkte sind zum Gebrauch durch einen qualifizierten Bediener gemäß angemessenen Verfahren und nur zu den in diesem Handbuch beschriebenen Zwecken gefertigt. In diesem Handbuch werden Sicherheitshinweise nach folgenden Konventionen gekennzeichnet und eingeteilt. Beachten Sie stets die in diesen Hinweisen enthaltenen Informationen. Ein Nichtbeachten der Sicherheitshinweise kann zu Verletzungen oder zu Sachschäden führen.
Definition von Sicherheitsinformationen
GEFAHR
Kennzeichnet eine bevorstehende gefährliche Situation, die zum Tod oder zu ernsthaften Verletzungen führt, wenn sie nicht vermieden wird.
VORSICHT
Kennzeichnet eine potenziell gefährliche Situation, die zum Tod oder zu schweren Verletzungen führen kann, wenn sie nicht vermieden wird.
Achtung
Kennzeichnet eine potenziell gefährliche Situation, die zu kleineren oder mittelschweren Verletzungen oder Sachschäden führen kann, wenn sie nicht vermieden wird.
Warenzeichen und Urheberrechte
PROFIBUS ist ein eingetragenes Warenzeichen von PROFIBUS International. MECHATROLINK ist ein eingetragenes Warenzeichen der Yaskawa Corporation. DeviceNet ist ein eingetragenes Warenzeichen der Open DeviceNet Vendor Assoc INC. CIP ist ein eingetragenes Warenzeichen der Open DeviceNet Vendor Assoc INC.
Revision 3.0
Trajexia ist ein eingetragenes Warenzeichen von OMRON. Motion Perfect ist ein eingetragenes Warenzeichen von Trio Motion Technology Ltd.
/i
© OMRON, 2007
Alle Rechte vorbehalten. Diese Publikation darf ohne vorherige schriftliche Genehmigung von OMRON weder als Ganzes noch in Auszügen in irgendeiner Form oder auf irgendeine Weise, sei es auf mechanischem oder elektronischem Wege oder durch Fotokopieren oder Aufzeichnen, reproduziert, auf einem Datensystem gespeichert oder übertragen werden. In Bezug auf die hierin enthaltenen Informationen wird keine Patenthaftung übernommen. Da OMRON weiterhin an einer ständigen Verbesserung seiner Qualitätsprodukte arbeitet, sind Änderungen an den in diesem Handbuch enthaltenen Informationen ohne Ankündigung vorbehalten. Bei der Herstellung dieses Handbuchs wurden alle Vorsorgemaßnahmen ergriffen. Dennoch übernimmt OMRON keine Verantwortung für etwaige Fehler und Auslassungen. Ferner wird keine Haftung für Schäden übernommen, die durch die in diesem Handbuch enthaltenen Informationen entstehen.
PROGRAMMIERHANDBUCH 2
Zu diesem Handbuch
Dieses Handbuch beschreibt die Installation und den Betrieb des Trajexia Motion Control Systems. Lesen Sie dieses Handbuch und die anderen in der folgenden Liste aufgeführten Handbücher sorgfältig durch, und stellen Sie sicher, dass Sie die Informationen verstanden haben, bevor Sie versuchen, Trajexia Baugruppen zu installieren oder zu betreiben. Beachten Sie die Sicherheitshinweise im folgenden Abschnitt.
/i
Bezeichnung Kat.- Nr. Inhalt
Trajexia Motion Controller Kurzanleitung
HARDWARE­REFERENZHANDBUCH für Trajexia Motion Controller
Trajexia Motion Controller PROGRAMMIERHANDBUCH
Handbuch für Sigma-II­Servoantrieb
Handbuch für Servoantriebe der JUNMA -Serie
Handbuch JUSP-NS115 SIEP C71080001 Beschreibt die Installation und
Revision 3.0
Handbuch für Sigma-III mit MECHATROLINK-Schnittstelle
I50 Beschreibt, wie Sie sich schnell
mit Trajexia vertraut machen; die Bewegung erfolgt in einem Test-Setup mit einer Achse über MECHATROLINK-II.
I51E Beschreibt die Installation
und Hardware-Spezifikationen der Trajexia-Baugruppen und erläutert die Trajexia Systemphilosophie.
I52 Beschreibt die für die
Programmierung von Trajexia verwendeten BASIC-Befehle, erklärt die Kommunikationsprotokolle und die Trajexia Tools-Software, gibt praktische Beispiele und Informationen zur Fehlersuche.
SIEP S800000 15
TOEP-C71080603 01-OY
SIEP S800000 11 Beschreibt die Installation und den
Beschreibt die Installation und den Betrieb von Sigma-II-Servoantrieben.
Beschreibt die Installation und den Betrieb von JUNMA-Servoantrieben.
den Betrieb der MECHATROLINK-II­Optionskarte.
Betrieb von Sigma-II-Servoantrieben mit MECHATROLINK-Schnittstelle.
Bezeichnung Kat.- Nr. Inhalt
V7-Frequenzumrichter TOEP C71060605 02-OY Beschreibt die Installation und den
Betrieb von V7-Frequenzumrichtern.
F7Z-Frequenzumrichter TOE S616-55 1-OY
G7-Frequenzumrichter TOE S616-60
SI-T MECHATROLINK­Schnittstelle für G7 & F7
ST-T/V7 MECHATROLINK­Schnittstelle für V7
MECHATROLINK-E/A-Module SIE-C887-5 Beschreibt die Installation
SYSMAC CS/CJ-Serie Kommunikationsbefehle
SIBP-C730600-08 Beschreibt die Installation und
SIBP-C730600-03 Beschreibt die Installation
W342 Beschreibt das FINS-
Beschreibt die Installation und den Betrieb von F7Z-Frequenzumrichtern.
Beschreibt die Installation und den Betrieb von G7-Frequenzumrichtern.
den Betrieb von MECHATROLINK­Schnittstellen für G7 und F7-Frequenzumrichter.
und den Betrieb von MECHATROLINK-Schnittstellen für V7-Frequenzumrichter.
und den Betrieb von MECHATROLINK-Eingangs­und Ausgangsmodulen und dem MECHATROLINK-II-Verstärker.
Kommunikationsprotokoll und die FINS-Befehle
VORSICHT
Fehler, die dadurch verursacht werden, dass Sie die in diesem Handbuch enthaltenen Informationen nicht lesen oder nicht verstehen, können zur Verletzung oder zum Tod von Personen, zur Beschädigung des Produkts bzw. zu Fehlfunktionen führen. Lesen Sie jedes Kapitel vollständig durch, und führen Sie die vorgestellten Maßnahmen und Bedienverfahren erst durch, wenn Sie sicher sind, dass Sie die im jeweiligen Kapitel und den zugehörigen Abschnitten bereitgestellten Informationen verstanden haben.
PROGRAMMIERHANDBUCH 3
Unterstützung von Funktionalität nach Baugruppenversion
Während der Entwicklung von Trajexia wurde nach der Markteinführung neue Funktionalität in die Controller-Baugruppe übernommen. Diese Funktionalität ist in die Firmware und/oder FPGA der Controller­Baugruppe implementiert. In der unten stehenden Tabelle ist die entsprechende Funktionalität für die jeweilige Firmware- und FPGA-Version des TJ1-MC__ gezeigt.
/i
Funktionalität TJ1-MC__ Firmware-Version TJ1-MC__ FPGA-Version
Volle Unterstützung für TJ1-FL02 V1.6509 21 und höher.
Unterstützung für BASIC­Befehle FINS_COMMS
Unterstützung für TJ1-DRT V1.6509 Alle Ausführungen
V1.6509 Alle Ausführungen
Unterstützung für TJ1-MC04 und TJ1-ML04
V1.6607 21 und höher
Überprüfen Sie die Firmware- und FPGA-Versionen des TJ1-MC__.
Verbinden Sie den TJ1-MC__ mit der Trajexia Tools-Software. Weitere Informationen finden Sie im Programmierhandbuch. Öffnen Sie das Terminalfenster, und geben Sie die folgenden Befehle ein:
Geben Sie
PRINT VERSION
in das Terminalfenster ein. Der Versionsparameter zeigt die aktuelle Firmware-Versionsnummer des Motion-Controllers an. Geben Sie
PRINT FPGA_VERSION SLOT(-1)
in das Terminalfenster ein.
Der Parameter zeigt die aktuelle FPGA-Versionsnummer des TJ1-MC__ an.
Revision 3.0
PROGRAMMIERHANDBUCH 4

Inhalt

1 Sicherheitswarnungen und -hinweise ......................................................................................................................................................16
1.1 Zielgruppe .......................................................................................................................................................................................................................................16
1.2 Allgemeine Sicherheitshinweise .....................................................................................................................................................................................................16
1.3 Sicherheits- hinweise ......................................................................................................................................................................................................................16
1.4 Sicherheitshinweise für die Betriebsumgebung..............................................................................................................................................................................17
1.5 Sicherheitshinweise zu Anwendungen ...........................................................................................................................................................................................18
1.6 Vorsichtsmaßnahmen bei der Montage von Baugruppen ..............................................................................................................................................................21
2 Trajexia-System .........................................................................................................................................................................................22
2.1 Einführung ......................................................................................................................................................................................................................................22
2.1.1 Trajexia Hardware ...........................................................................................................................................................................................................23
2.1.2 Dieses Handbuch .............................................................................................................................................................................................................23
2.2 Multitasking-BASIC-Programmierung.............................................................................................................................................................................................23
2.3 BASIC-Programmierung .................................................................................................................................................................................................................24
2.3.1 Achse, System und Task-Anweisungen ...........................................................................................................................................................................24
2.3.2 Speicherbereiche..............................................................................................................................................................................................................24
2.3.3 Datenstrukturen und Variablen.........................................................................................................................................................................................25
2.3.4 Mathematische Spezifikationen........................................................................................................................................................................................27
2.4 Bewegungsausführung ...................................................................................................................................................................................................................28
2.4.1 Profilgenerator ..................................................................................................................................................................................................................28
2.4.2 Sequenzsteuerung ...........................................................................................................................................................................................................29
2.4.3 Laden eines Bewegungsbefehls.......................................................................................................................................................................................29
2.5 Befehlszeilen-Schnittstelle ..............................................................................................................................................................................................................30
2.6 BASIC-Programme .........................................................................................................................................................................................................................30
2.6.1 Verwalten von Programmen .............................................................................................................................................................................................30
2.6.2 Programm-Kompilierung...................................................................................................................................................................................................31
2.6.3 Programmausführung.......................................................................................................................................................................................................31
3 BASIC-Befehle ............................................................................................................................................................................................33
3.1 Kategorien ......................................................................................................................................................................................................................................33
3.1.1 Achsenbefehle .................................................................................................................................................................................................................33
3.1.2 Achsenparameter ............................................................................................................................................................................................................34
3.1.3 Kommunikationsbefehle und -parameter .........................................................................................................................................................................36
3.1.4 Konstanten .......................................................................................................................................................................................................................36
3.1.5 E/A-Befehle, -funktionen und -parameter .......................................................................................................................................................................36
3.1.6 Mathematische Funktionen und Operanden ...............................................................................................................................................................37
Revision 3.0
PROGRAMMIERHANDBUCH 5
3.1.7 Programmbefehle ............................................................................................................................................................................................................37
3.1.8 Programmsteuerungsbefehle ..........................................................................................................................................................................................38
3.1.9 Slot-Parameter und -modifikatoren .................................................................................................................................................................................38
3.1.10 Systembefehle und -funktionen .....................................................................................................................................................................................38
Revision 3.0
Inhalt
3.1.11 Systemparameter ............................................................................................................................................................................................................39
3.1.12 Task-Befehle und -parameter .........................................................................................................................................................................................40
3.2 Alle BASIC-Befehle.........................................................................................................................................................................................................................41
3.2.1 + (Addition) .......................................................................................................................................................................................................................41
3.2.2 – (Subtraktion) ..................................................................................................................................................................................................................41
3.2.3 * (Multiplikation) ................................................................................................................................................................................................................41
3.2.4 / (Division).........................................................................................................................................................................................................................41
3.2.5 ^ (Potenz) .........................................................................................................................................................................................................................42
3.2.6 = (Ist gleich)......................................................................................................................................................................................................................42
3.2.7 = (Zuordnung)...................................................................................................................................................................................................................42
3.2.8 <> (Ist ungleich)................................................................................................................................................................................................................42
3.2.9 > (Ist größer als) ...............................................................................................................................................................................................................43
3.2.10 >= (Ist größer oder gleich) ................................................................................................................................................................................................43
3.2.11 < (Ist kleiner als) ...............................................................................................................................................................................................................43
3.2.12 <= (Ist kleiner oder gleich) ................................................................................................................................................................................................43
3.2.13 $ (Hexadezimale Eingabe) ...............................................................................................................................................................................................44
3.2.14 ' (Kommentarfeld) .............................................................................................................................................................................................................44
3.2.15 : (Anweisungs-Trennzeichen)...........................................................................................................................................................................................44
3.2.16 #........................................................................................................................................................................................................................................44
3.2.17 ABS ..................................................................................................................................................................................................................................45
3.2.18 ACC ..................................................................................................................................................................................................................................45
3.2.19 ACCEL..............................................................................................................................................................................................................................45
3.2.20 ACOS ...............................................................................................................................................................................................................................45
3.2.21 ADD_DAC ........................................................................................................................................................................................................................46
3.2.22 ADDAX .............................................................................................................................................................................................................................46
3.2.23 ADDAX_AXIS ...................................................................................................................................................................................................................47
3.2.24 AIN....................................................................................................................................................................................................................................47
3.2.25 AND ..................................................................................................................................................................................................................................47
3.2.26 AOUT................................................................................................................................................................................................................................48
3.2.27 ASIN .................................................................................................................................................................................................................................48
3.2.28 ATAN................................................................................................................................................................................................................................48
3.2.29 ATAN2 ..............................................................................................................................................................................................................................48
3.2.30 ATYPE..............................................................................................................................................................................................................................49
3.2.31 AUTORUN........................................................................................................................................................................................................................49
3.2.32 AXIS .................................................................................................................................................................................................................................49
3.2.33 AXIS_DISPLAY ................................................................................................................................................................................................................50
3.2.34 AXIS_ENABLE .................................................................................................................................................................................................................50
3.2.35 AXISSTATUS ...................................................................................................................................................................................................................50
3.2.36 B_SPLINE ........................................................................................................................................................................................................................51
3.2.37 BASE................................................................................................................................................................................................................................51
PROGRAMMIERHANDBUCH 6
Revision 3.0
Inhalt
3.2.38 BASICERROR..................................................................................................................................................................................................................52
3.2.39 BATTERY_LOW...............................................................................................................................................................................................................53
3.2.40 BREAK_RESET ...............................................................................................................................................................................................................53
3.2.41 CAM..................................................................................................................................................................................................................................53
3.2.42 CAMBOX ..........................................................................................................................................................................................................................55
3.2.43 CANCEL ...........................................................................................................................................................................................................................56
3.2.44 CHECKSUM .....................................................................................................................................................................................................................56
3.2.45 CHR..................................................................................................................................................................................................................................56
3.2.46 CLEAR..............................................................................................................................................................................................................................57
3.2.47 CLEAR_BIT ......................................................................................................................................................................................................................57
3.2.48 CLEAR_PARAMS ............................................................................................................................................................................................................57
3.2.49 CLOSE_WIN ....................................................................................................................................................................................................................57
3.2.50 CLUTCH_RATE ...............................................................................................................................................................................................................57
3.2.51 COMMSERROR...............................................................................................................................................................................................................58
3.2.52 COMMSTYPE ..................................................................................................................................................................................................................58
3.2.53 COMPILE .........................................................................................................................................................................................................................58
3.2.54 CONNECT........................................................................................................................................................................................................................59
3.2.55 CONSTANT......................................................................................................................................................................................................................59
3.2.56 CONTROL ........................................................................................................................................................................................................................59
3.2.57 COPY ...............................................................................................................................................................................................................................60
3.2.58 COS..................................................................................................................................................................................................................................60
3.2.59 CREEP .............................................................................................................................................................................................................................60
3.2.60 D_GAIN ............................................................................................................................................................................................................................60
3.2.61 D_ZONE_MAX .................................................................................................................................................................................................................61
3.2.62 D_ZONE_MIN ..................................................................................................................................................................................................................61
3.2.63 DAC ..................................................................................................................................................................................................................................61
3.2.64 DAC_OUT ........................................................................................................................................................................................................................61
3.2.65 DAC_SCALE ....................................................................................................................................................................................................................61
3.2.66 DATE ................................................................................................................................................................................................................................62
3.2.67 DATE$ ..............................................................................................................................................................................................................................62
3.2.68 DATUM.............................................................................................................................................................................................................................62
3.2.69 DATUM_IN .......................................................................................................................................................................................................................63
3.2.70 DAY ..................................................................................................................................................................................................................................64
3.2.71 DAY$ ................................................................................................................................................................................................................................64
3.2.72 DECEL..............................................................................................................................................................................................................................64
3.2.73 DEFPOS...........................................................................................................................................................................................................................64
3.2.74 DEL...................................................................................................................................................................................................................................65
3.2.75 DEMAND_EDGES ...........................................................................................................................................................................................................65
3.2.76 DEVICENET .....................................................................................................................................................................................................................65
3.2.77 DIR ...................................................................................................................................................................................................................................67
PROGRAMMIERHANDBUCH 7
Revision 3.0
Inhalt
3.2.78 DISABLE_GROUP ...........................................................................................................................................................................................................67
3.2.79 DISPLAY ..........................................................................................................................................................................................................................67
3.2.80 DPOS ...............................................................................................................................................................................................................................68
3.2.81 DRIVE_ALARM ................................................................................................................................................................................................................68
3.2.82 DRIVE_CLEAR.................................................................................................................................................................................................................69
3.2.83 DRIVE_CONTROL ...........................................................................................................................................................................................................69
3.2.84 DRIVE_INPUTS ...............................................................................................................................................................................................................70
3.2.85 DRIVE_MONITOR............................................................................................................................................................................................................70
3.2.86 DRIVE_READ...................................................................................................................................................................................................................71
3.2.87 DRIVE_RESET.................................................................................................................................................................................................................71
3.2.88 DRIVE_STATUS ..............................................................................................................................................................................................................72
3.2.89 DRIVE_WRITE .................................................................................................................................................................................................................73
3.2.90 EDIT .................................................................................................................................................................................................................................73
3.2.91 ELSE ................................................................................................................................................................................................................................73
3.2.92 ELSEIF .............................................................................................................................................................................................................................73
3.2.93 ENCODER........................................................................................................................................................................................................................74
3.2.94 ENCODER_BITS..............................................................................................................................................................................................................74
3.2.95 ENCODER_CONTROL ....................................................................................................................................................................................................74
3.2.96 ENCODER_ID ..................................................................................................................................................................................................................75
3.2.97 ENCODER_RATIO...........................................................................................................................................................................................................75
3.2.98 ENCODER_READ............................................................................................................................................................................................................75
3.2.99 ENCODER_STATUS .......................................................................................................................................................................................................76
3.2.100 ENCODER_TURNS .........................................................................................................................................................................................................76
3.2.101 ENCODER_WRITE ..........................................................................................................................................................................................................76
3.2.102 ENDIF...............................................................................................................................................................................................................................76
3.2.103 ENDMOVE .......................................................................................................................................................................................................................77
3.2.104 EPROM ............................................................................................................................................................................................................................77
3.2.105 ERROR_AXIS ..................................................................................................................................................................................................................77
3.2.106 ERROR_LINE...................................................................................................................................................................................................................77
3.2.107 ERRORMASK ..................................................................................................................................................................................................................78
3.2.108 ETHERNET ......................................................................................................................................................................................................................78
3.2.109 EX.....................................................................................................................................................................................................................................79
3.2.110 EXP ..................................................................................................................................................................................................................................79
3.2.111 FALSE ..............................................................................................................................................................................................................................79
3.2.112 FAST_JOG .......................................................................................................................................................................................................................79
3.2.113 FASTDEC.........................................................................................................................................................................................................................80
3.2.114 FE .....................................................................................................................................................................................................................................80
3.2.115 FE_LATCH .......................................................................................................................................................................................................................80
3.2.116 FE_LIMIT..........................................................................................................................................................................................................................80
3.2.117 FE_LIMIT_MODE .............................................................................................................................................................................................................81
PROGRAMMIERHANDBUCH 8
Revision 3.0
Inhalt
3.2.118 FE_RANGE ......................................................................................................................................................................................................................81
3.2.119 FHOLD_IN........................................................................................................................................................................................................................81
3.2.120 FHSPEED.........................................................................................................................................................................................................................82
3.2.121 FINS_COMMS..................................................................................................................................................................................................................82
3.2.122 FLAG ................................................................................................................................................................................................................................84
3.2.123 FLAGS..............................................................................................................................................................................................................................84
3.2.124 FOR..TO..STEP..NEXT ....................................................................................................................................................................................................85
3.2.125 FORWARD .......................................................................................................................................................................................................................86
3.2.126 FPGA_VERSION..............................................................................................................................................................................................................86
3.2.127 FRAC................................................................................................................................................................................................................................86
3.2.128 FRAME .............................................................................................................................................................................................................................86
3.2.129 FREE ................................................................................................................................................................................................................................87
3.2.130 FS_LIMIT..........................................................................................................................................................................................................................87
3.2.131 FWD_IN............................................................................................................................................................................................................................87
3.2.132 FWD_JOG ........................................................................................................................................................................................................................88
3.2.133 GET ..................................................................................................................................................................................................................................88
3.2.134 GLOBAL ...........................................................................................................................................................................................................................89
3.2.135 GOSUB..RETURN............................................................................................................................................................................................................89
3.2.136 GOTO ...............................................................................................................................................................................................................................89
3.2.137 HALT ................................................................................................................................................................................................................................90
3.2.138 HEX ..................................................................................................................................................................................................................................90
3.2.139 HLM_COMMAND .............................................................................................................................................................................................................90
3.2.140 HLM_READ ......................................................................................................................................................................................................................91
3.2.141 HLM_STATUS..................................................................................................................................................................................................................92
3.2.142 HLM_TIMEOUT................................................................................................................................................................................................................93
3.2.143 HLM_WRITE ....................................................................................................................................................................................................................94
3.2.144 HLS_NODE ......................................................................................................................................................................................................................95
3.2.145 HW_PSWITCH .................................................................................................................................................................................................................95
3.2.146 I_GAIN..............................................................................................................................................................................................................................96
3.2.147 IDLE..................................................................................................................................................................................................................................96
3.2.148 IEEE_IN............................................................................................................................................................................................................................96
3.2.149 IEEE_OUT........................................................................................................................................................................................................................96
3.2.150 IF..THEN..ELSE..ENDIF...................................................................................................................................................................................................97
3.2.151 IN ......................................................................................................................................................................................................................................97
3.2.152 INDEVICE.........................................................................................................................................................................................................................98
3.2.153 INITIALISE........................................................................................................................................................................................................................98
3.2.154 INPUT...............................................................................................................................................................................................................................99
3.2.155 INT....................................................................................................................................................................................................................................99
3.2.156 INVERT_IN.......................................................................................................................................................................................................................99
3.2.157 INVERT_STEP ...............................................................................................................................................................................................................100
PROGRAMMIERHANDBUCH 9
Revision 3.0
Inhalt
3.2.158 INVERTER_COMMAND ................................................................................................................................................................................................100
3.2.159 INVERTER_READ .........................................................................................................................................................................................................101
3.2.160 INVERTER_WRITE........................................................................................................................................................................................................102
3.2.161 JOGSPEED ....................................................................................................................................................................................................................103
3.2.162 KEY ................................................................................................................................................................................................................................103
3.2.163 LAST_AXIS ....................................................................................................................................................................................................................104
3.2.164 LINKAX...........................................................................................................................................................................................................................104
3.2.165 LINPUT...........................................................................................................................................................................................................................104
3.2.166 LIST ................................................................................................................................................................................................................................105
3.2.167 LIST_GLOBAL................................................................................................................................................................................................................105
3.2.168 LN ...................................................................................................................................................................................................................................106
3.2.169 LOCK..............................................................................................................................................................................................................................106
3.2.170 MARK .............................................................................................................................................................................................................................106
3.2.171 MARKB...........................................................................................................................................................................................................................107
3.2.172 MECHATROLINK ...........................................................................................................................................................................................................107
3.2.173 MERGE ..........................................................................................................................................................................................................................108
3.2.174 MHELICAL......................................................................................................................................................................................................................109
3.2.175 MOD ...............................................................................................................................................................................................................................109
3.2.176 MOTION_ERROR ..........................................................................................................................................................................................................109
3.2.177 MOVE .............................................................................................................................................................................................................................110
3.2.178 MOVEABS......................................................................................................................................................................................................................111
3.2.179 MOVECIRC ....................................................................................................................................................................................................................112
3.2.180 MOVELINK .....................................................................................................................................................................................................................114
3.2.181 MOVEMODIFY ...............................................................................................................................................................................................................115
3.2.182 MPOS .............................................................................................................................................................................................................................116
3.2.183 MSPEED ........................................................................................................................................................................................................................116
3.2.184 MTYPE ...........................................................................................................................................................................................................................116
3.2.185 NAIO...............................................................................................................................................................................................................................117
3.2.186 NEG_OFFSET................................................................................................................................................................................................................117
3.2.187 NEW ...............................................................................................................................................................................................................................117
3.2.188 NEXT ..............................................................................................................................................................................................................................117
3.2.189 NIO .................................................................................................................................................................................................................................117
3.2.190 NOT ................................................................................................................................................................................................................................118
3.2.191 NTYPE............................................................................................................................................................................................................................118
3.2.192 OFF ................................................................................................................................................................................................................................118
3.2.193 OFFPOS.........................................................................................................................................................................................................................118
3.2.194 ON ..................................................................................................................................................................................................................................119
3.2.195 ON.. GOSUB ..................................................................................................................................................................................................................119
3.2.196 ON.. GOTO.....................................................................................................................................................................................................................119
3.2.197 OP ..................................................................................................................................................................................................................................119
PROGRAMMIERHANDBUCH 10
Revision 3.0
Inhalt
3.2.198 OPEN_WIN ....................................................................................................................................................................................................................120
3.2.199 OR ..................................................................................................................................................................................................................................120
3.2.200 OUTDEVICE...................................................................................................................................................................................................................121
3.2.201 OUTLIMIT.......................................................................................................................................................................................................................121
3.2.202 OV_GAIN........................................................................................................................................................................................................................121
3.2.203 P_GAIN ..........................................................................................................................................................................................................................122
3.2.204 PI ....................................................................................................................................................................................................................................122
3.2.205 PMOVE...........................................................................................................................................................................................................................122
3.2.206 POS_OFFSET................................................................................................................................................................................................................123
3.2.207 POWER_UP ...................................................................................................................................................................................................................123
3.2.208 PRINT.............................................................................................................................................................................................................................123
3.2.209 PROC .............................................................................................................................................................................................................................124
3.2.210 PROC_STATUS .............................................................................................................................................................................................................124
3.2.211 PROCESS ......................................................................................................................................................................................................................125
3.2.212 PROCNUMBER..............................................................................................................................................................................................................125
3.2.213 PROFIBUS .....................................................................................................................................................................................................................125
3.2.214 PSWITCH .......................................................................................................................................................................................................................126
3.2.215 RAPIDSTOP...................................................................................................................................................................................................................127
3.2.216 READ_BIT ......................................................................................................................................................................................................................127
3.2.217 REG_POS ......................................................................................................................................................................................................................128
3.2.218 REG_POSB....................................................................................................................................................................................................................128
3.2.219 REGIST ..........................................................................................................................................................................................................................128
3.2.220 REMAIN..........................................................................................................................................................................................................................130
3.2.221 REMOTE_ERROR .........................................................................................................................................................................................................130
3.2.222 RENAME ........................................................................................................................................................................................................................130
3.2.223 REP_DIST ......................................................................................................................................................................................................................131
3.2.224 REP_OPTION ................................................................................................................................................................................................................131
3.2.225 REPEAT..UNTIL.............................................................................................................................................................................................................132
3.2.226 RESET............................................................................................................................................................................................................................132
3.2.227 RETURN.........................................................................................................................................................................................................................132
3.2.228 REV_IN...........................................................................................................................................................................................................................132
3.2.229 REV_JOG.......................................................................................................................................................................................................................133
3.2.230 REVERSE ......................................................................................................................................................................................................................133
3.2.231 RS_LIMIT .......................................................................................................................................................................................................................133
3.2.232 RUN................................................................................................................................................................................................................................133
3.2.233 RUN_ERROR.................................................................................................................................................................................................................134
3.2.234 RUNTYPE ......................................................................................................................................................................................................................134
3.2.235 S_REF ............................................................................................................................................................................................................................135
3.2.236 S_REF_OUT ..................................................................................................................................................................................................................135
3.2.237 SCOPE ...........................................................................................................................................................................................................................136
PROGRAMMIERHANDBUCH 11
Revision 3.0
Inhalt
3.2.238 SCOPE_POS .................................................................................................................................................................................................................137
3.2.239 SELECT..........................................................................................................................................................................................................................137
3.2.240 SERVO ...........................................................................................................................................................................................................................137
3.2.241 SERVO_PERIOD ...........................................................................................................................................................................................................137
3.2.242 SET_BIT .........................................................................................................................................................................................................................138
3.2.243 SETCOM ........................................................................................................................................................................................................................138
3.2.244 SGN................................................................................................................................................................................................................................139
3.2.245 SIN..................................................................................................................................................................................................................................139
3.2.246 SLOT ..............................................................................................................................................................................................................................139
3.2.247 SPEED ...........................................................................................................................................................................................................................139
3.2.248 SQR................................................................................................................................................................................................................................140
3.2.249 SRAMP...........................................................................................................................................................................................................................140
3.2.250 STEP ..............................................................................................................................................................................................................................140
3.2.251 STEP_RATIO .................................................................................................................................................................................................................140
3.2.252 STEPLINE ......................................................................................................................................................................................................................141
3.2.253 STOP..............................................................................................................................................................................................................................141
3.2.254 SYSTEM_ERROR..........................................................................................................................................................................................................142
3.2.255 T_REF ............................................................................................................................................................................................................................142
3.2.256 TABLE ............................................................................................................................................................................................................................143
3.2.257 TABLEVALUES..............................................................................................................................................................................................................143
3.2.258 TAN ................................................................................................................................................................................................................................144
3.2.259 THEN..............................................................................................................................................................................................................................144
3.2.260 TICKS .............................................................................................................................................................................................................................144
3.2.261 TIME ...............................................................................................................................................................................................................................144
3.2.262 TIME$ .............................................................................................................................................................................................................................145
3.2.263 TO...................................................................................................................................................................................................................................145
3.2.264 TRANS_DPOS ...............................................................................................................................................................................................................145
3.2.265 TRIGGER .......................................................................................................................................................................................................................145
3.2.266 TROFF............................................................................................................................................................................................................................145
3.2.267 TRON .............................................................................................................................................................................................................................146
3.2.268 TRUE..............................................................................................................................................................................................................................146
3.2.269 TSIZE .............................................................................................................................................................................................................................146
3.2.270 UNITS.............................................................................................................................................................................................................................147
3.2.271 UNLOCK.........................................................................................................................................................................................................................147
3.2.272 UNTIL .............................................................................................................................................................................................................................147
3.2.273 VERIFY...........................................................................................................................................................................................................................147
3.2.274 VERSION .......................................................................................................................................................................................................................147
3.2.275 VFF_GAIN ......................................................................................................................................................................................................................148
3.2.276 VP_SPEED.....................................................................................................................................................................................................................148
3.2.277 VR...................................................................................................................................................................................................................................148
PROGRAMMIERHANDBUCH 12
Inhalt
3.2.278 VRSTRING .....................................................................................................................................................................................................................149
3.2.279 WA..................................................................................................................................................................................................................................149
3.2.280 WAIT IDLE......................................................................................................................................................................................................................150
3.2.281 WAIT LOADED...............................................................................................................................................................................................................150
3.2.282 WAIT UNTIL ...................................................................................................................................................................................................................150
3.2.283 WDOG ............................................................................................................................................................................................................................151
3.2.284 WHILE..WEND ...............................................................................................................................................................................................................151
3.2.285 XOR................................................................................................................................................................................................................................152
4 Kommunikationsprotokolle ....................................................................................................................................................................153
4.1 Verfügbare Schnittstellen..............................................................................................................................................................................................................153
4.2 Ethernet ........................................................................................................................................................................................................................................153
4.2.1 Kommunikation mit Trajexia direkt vom PC aus.............................................................................................................................................................154
4.2.2 Dezentrale Kommunikation mit Trajexia.........................................................................................................................................................................155
4.2.3 Trajexia Tools-Protokoll..................................................................................................................................................................................................156
4.2.4 FINS-Serverprotokoll ......................................................................................................................................................................................................156
4.2.5 FINS-Client-Protokoll......................................................................................................................................................................................................158
4.3 Serielles Protokoll .........................................................................................................................................................................................................................158
4.3.1 Host-Link-Master ...........................................................................................................................................................................................................158
4.3.2 Host-Link-Slave ..............................................................................................................................................................................................................163
4.3.3 Benutzerdefiniertes Protokoll..........................................................................................................................................................................................165
4.4 PROFIBUS ...................................................................................................................................................................................................................................167
4.4.1 Einführung ......................................................................................................................................................................................................................167
4.4.2 Einrichtung der Kommunikation......................................................................................................................................................................................167
4.4.3 Kommunikationsstatus ...................................................................................................................................................................................................172
4.5 DeviceNet .....................................................................................................................................................................................................................................173
4.5.1 Einführung ......................................................................................................................................................................................................................173
4.5.2 Einrichtung der Kommunikation......................................................................................................................................................................................173
4.5.3 Kommunikationsstatus ...................................................................................................................................................................................................178
4.6 MECHATROLINKII .......................................................................................................................................................................................................................179
5 Trajexia Tools-Schnittstelle .....................................................................................................................................................................180
5.1 Einführung ....................................................................................................................................................................................................................................180
5.2 Spezifikationen und Anschlüsse ...................................................................................................................................................................................................180
5.2.1 PC-Spezifikationen .........................................................................................................................................................................................................180
5.2.2 Installieren der Trajexia-Tool-Software...........................................................................................................................................................................181
Revision 3.0
PROGRAMMIERHANDBUCH 13
5.2.3 Anschließen an den TJ1-MC__ ......................................................................................................................................................................................186
5.3 Projekte.........................................................................................................................................................................................................................................191
5.3.1 Trajexia Tools Projects ...................................................................................................................................................................................................191
5.3.2 Das Fenster „Projekt überprüfen“ .................................................................................................................................................................................192
5.4 Trajexia-Tools-Anwendungsfenster ..............................................................................................................................................................................................194
Inhalt
5.4.1 Bedienfeld.......................................................................................................................................................................................................................194
5.4.2 Menüleiste ......................................................................................................................................................................................................................194
5.4.3 Werkzeugleiste ...............................................................................................................................................................................................................195
5.5 Menübeschreibungen ...................................................................................................................................................................................................................196
5.5.1 Projektmenü ...................................................................................................................................................................................................................196
5.5.2 Steuerungsmenü ...........................................................................................................................................................................................................198
5.5.3 Programm-Menü.............................................................................................................................................................................................................203
5.5.4 Tools-Menü.....................................................................................................................................................................................................................205
5.5.5 Das Menü „Options“ (Optionen) .....................................................................................................................................................................................221
5.5.6 Das Menü „Windows“ (Anzeige).....................................................................................................................................................................................224
5.5.7 Das Menü „Help“ (Hilfe)..................................................................................................................................................................................................224
6 Beispiele und Tipps..................................................................................................................................................................................225
6.1 Anleitungen ...................................................................................................................................................................................................................................225
6.1.1 STARTUP-Programm ....................................................................................................................................................................................................225
6.1.2 Verstärkungseinstellungen ...........................................................................................................................................................................................229
6.1.3 Einstellung des Achsenparameters UNITS und des Übersetzungsverhältnisses ..........................................................................................................239
6.1.4 Zuordnung der Servotreiber-Eingänge und -Ausgänge..................................................................................................................................................251
6.1.5 Nullpunktsuche ...............................................................................................................................................................................................................253
6.1.6 Registrierung ..................................................................................................................................................................................................................259
6.1.7 Datenaufzeichnung und Überwachung ..........................................................................................................................................................................269
6.2 Praktische Beispiele .....................................................................................................................................................................................................................279
6.2.1 Shell-Programm ............................................................................................................................................................................................................279
6.2.2 Initialisierungsprogramm .............................................................................................................................................................................................283
6.2.3 Programm für eine Achse .............................................................................................................................................................................................286
6.2.4 Position mit Produkterkennung ......................................................................................................................................................................................287
6.2.5 Position in einem Gitter ................................................................................................................................................................................................289
6.2.6 Tüten-Zuführprogramm ................................................................................................................................................................................................291
6.2.7 CAM-Tabelle innerhalb eines Programms ...................................................................................................................................................................294
6.2.8 Schneidvorrichtungsprogramm .....................................................................................................................................................................................295
6.2.9 Korrekturprogramm ......................................................................................................................................................................................................298
7 Fehlersuche...............................................................................................................................................................................................300
7.1 Spannung und Analyse-Tools.......................................................................................................................................................................................................300
7.2 TJ1-MC__ .....................................................................................................................................................................................................................................300
7.2.1 Systemfehler...................................................................................................................................................................................................................300
Revision 3.0
PROGRAMMIERHANDBUCH 14
7.2.2 Achsenfehler...................................................................................................................................................................................................................300
7.2.3 Baugruppenfehler...........................................................................................................................................................................................................301
7.2.4 Konfigurationsfehler........................................................................................................................................................................................................302
7.2.5 Austauschen der Batterie ...............................................................................................................................................................................................302
7.3 TJ1-PRT .......................................................................................................................................................................................................................................302
Inhalt
7.3.1 Systemfehler...................................................................................................................................................................................................................302
7.3.2 E/A-Datenübertragungsprobleme...................................................................................................................................................................................303
7.4 TJ1-DRT .......................................................................................................................................................................................................................................304
7.4.1 Systemfehler...................................................................................................................................................................................................................304
7.4.2 E/A-Datenübertragungsprobleme...................................................................................................................................................................................304
7.5 TJ1-ML__......................................................................................................................................................................................................................................304
7.5.1 Systemfehler...................................................................................................................................................................................................................304
7.5.2 Bus-Fehler ......................................................................................................................................................................................................................304
7.6 TJ1-FL02 ......................................................................................................................................................................................................................................305
7.6.1 Systemfehler...................................................................................................................................................................................................................305
Revision 3.0
PROGRAMMIERHANDBUCH 15
Sicherheitswarnungen und -hinweise
1 Sicherheitswarnungen und -hinweise

1.1 Zielgruppe

Dieses Handbuch ist an Personen gerichtet, die Kenntnisse von elektrischen Systemen (z.B. Elektrotechniker o. ä.) haben und die für die Entwicklung, Installation und Verwaltung von Fabrikautomationssystemen und -einrichtungen verantwortlich sind.

1.2 Allgemeine Sicherheitshinweise

Der Anwender darf das Produkt nur entsprechend den in diesem Handbuch niedergelegten Vorgaben einsetzen. Wenden Sie sich vor der Verwendung dieses Produktes an Ihren OMRON-Vertreter, falls Sie das Produkt unter Bedingungen verwenden, die nicht im Bedienerhandbuch aufgeführt sind bzw. wenn Sie das Produkt im Bereich der Nukleartechnik, im Eisenbahnverkehr, in der Luftfahrt, in Fahrzeugen, in Sicherheitseinrichtungen, petrochemischen Fabriken oder anderen Systemen, Geräten oder Ausrüstungen verwenden möchten, bei denen fehlerhafte Verwendung zu schwerwiegenden Gefahren für Leben und Sachgut führen kann.
VORSICHT Die Anschlüsse der Plus- und Minuspole der Batterien dürfen nicht kurzgeschlossen werden, und die Batterien dürfen nicht aufgeladen, zerlegt, durch Druck deformiert oder verbrannt werden. Die Batterien können explodieren, brennen, oder es kann Flüssigkeit austreten.
VORSICHT Der Kunde muss durch entsprechende Vorkehrungen die Systemsicherheit für den Fall sicherstellen, dass bedingt durch unterbrochene Signalleitungen, vorübergehende Spannungsausfälle oder beliebige andere Ursachen falsche, fehlende oder ungewöhnliche Signale auftreten. Andernfalls besteht die Gefahr von schweren Unfällen.
VORSICHT Der Anwender muss Not-Aus-Schaltungen, Verriegelungs- und Begrenzungsschaltungen sowie ähnliche Sicherheitsmaßnahmen in externen Schaltungen (d. h. nicht im Trajexia Motion-Controller) vorsehen. Andernfalls besteht die Gefahr von schweren Unfällen.

1.3 Sicherheits- hinweise

VORSICHT
Zerlegen Sie das Gerät nicht und berühren Sie keine inneren Teile, solange die Spannungsversorgung eingeschaltet ist. Es besteht die Gefahr eines elektrischen Schlages.
VORSICHT Berühren Sie Klemmen oder Klemmenblöcke nicht bei eingeschalteter Versorgungsspannung.
Revision 3.0
PROGRAMMIERHANDBUCH 16
Es besteht die Gefahr eines elektrischen Schlags.
VORSICHT Wenn der 24 V DC-Ausgang (E/A-Spannungsversorgung für den TJ1) überlastet oder kurzgeschlossen ist, kann die Spannung abfallen, was eine Abschaltung der Ausgänge zur Folge hat. Um solche Probleme zu vermeiden, müssen externe Sicherheitsvorrichtungen installiert werden, um die Sicherheit des Systems zu gewährleisten.
VORSICHT Die TJ1-Ausgänge werden abgeschaltet, wenn die Ausgangstransistoren überlastet sind (Schutzvorrichtung). Um solche Probleme zu vermeiden, müssen externe Sicherheitsvorrichtungen installiert werden, um die Sicherheit des Systems zu gewährleisten.
Sicherheitswarnungen und -hinweise
VORSICHT
Der TJ1 schaltet das WDOG ab, wenn seine Selbstdiagnosefunktion einen Fehler erkennt. Um solche Fehler zu vermeiden, müssen externe Sicherheitsvorrichtungen installiert werden, um die Sicherheit des Systems zu gewährleisten.
VORSICHT Statten Sie externe Schaltkreise (d. h. nicht die im Trajexia Motion­Controller, hier als „TJ1“ bezeichnet) mit Sicherheitsvorrichtungen aus, damit die Sicherheit im System gewährleistet bleibt, wenn aufgrund einer Fehlfunktion des TJ1 oder eines anderen externen Faktors mit Auswirkungen auf den TJ1-Betrieb eine Störung auftritt. Andernfalls besteht die Gefahr von schweren Unfällen.
VORSICHT Versuchen Sie nicht, Baugruppen zu zerlegen, instandzusetzen oder zu modifizieren. Bei jedem Versuch besteht das Risiko von Fehlfunktionen sowie die Gefahr eines elektrischen Schlags bzw. Brandgefahr.
Achtung Überprüfen Sie die Sicherheit in der Zielbaugruppe, bevor Sie ein Programm in eine andere Baugruppe übertragen oder den Speicher bearbeiten. Wenn Sie eine dieser Aktionen durchführen, ohne die Sicherheit zu überprüfen, kann dies zu Verletzungen führen.
Achtung Ziehen Sie die Schrauben am Klemmenblock der Spannungsversorgungsbaugruppe mit dem in diesem Handbuch angegebenen Drehmoment fest. Lose Schrauben können zu Schmorbränden oder Fehlfunktionen führen.

1.4 Sicherheitshinweise für die Betriebsumgebung

Achtung
Betreiben Sie die Baugruppe nicht an den folgenden Orten: Andernfalls besteht die Gefahr von Fehlfunktionen, elektrischen Schlägen oder Brandgefahr.
- Orte, die direkter Sonneneinstrahlung ausgesetzt sind.
- Orte, an denen Temperaturen oder Luftfeuchtigkeit außerhalb der in den technischen Daten angegebenen Bereiche herrschen.
- Orte, die starken Temperaturschwankungen und damit Kondensatbildung ausgesetzt sind.
- Orte, an denen das Gerät korrosiven oder entzündlichen Gasen ausgesetzt ist.
- Orte, die dem Einfluss von Stäuben (besonders Eisenstaub) oder Salzen ausgesetzt sind.
- Orte, die dem Einfluss von Feuchtigkeit, Öl oder Chemikalien ausgesetzt sind.
- Orte, die Stößen oder Schwingungen ausgesetzt sind.
Achtung Anwenderprogramme, die in die Motion Controller-Baugruppe geschrieben werden, werden nicht automatisch im Flash-Speicher (Flash-Speicherfunktion) des TJ1 gesichert.
Achtung Ergreifen Sie beim Installieren von Systemen an folgenden Orten angemessene und geeignete Gegenmaßnahmen. Ungeeignete und unzureichende Maßnahmen können zu Fehlfunktionen führen.
Achtung
Revision 3.0
Beachten Sie beim Verkabeln der DC-Spannungsversorgung auf die Polarität (+/–). Eine falsche Polung kann Fehlfunktionen des Systems verursachen.
PROGRAMMIERHANDBUCH 17
- Orte mit statischer Aufladung und anderen Störungen.
- Orte mit starken elektromagnetischen Feldern.
- Orte, die möglicherweise Radioaktivität ausgesetzt sind.
- Orte in der Nähe von Spannungsversorgungen.
Sicherheitswarnungen und -hinweise
Achtung
Die Betriebsumgebung des TJ1-Systems kann große Auswirkungen auf die Lebensdauer und Zuverlässigkeit des Systems haben. Ungeeignete Betriebsumgebungen können Fehlfunktionen, Ausfälle und andere unvorhergesehene Probleme in Bezug auf das TJ1-System zur Folge haben. Achten Sie darauf, dass die Betriebsumgebung zum Zeitpunkt der Installation die angegebenen Bedingungen erfüllt und dass diese Bedingungen während der Lebensdauer des Systems erfüllt bleiben.

1.5 Sicherheitshinweise zu Anwendungen

VORSICHT
Prüfen Sie zuerst, ob die Achsen vorhanden und vom richtigen Typ sind, bevor Sie das System starten. Die Anzahl der flexiblen Achsen ändert sich, wenn beim Aufstarten des Controllers MECHATROLINK-II-Netzwerkfehler auftreten oder wenn sich die MECHATROLINK-II-Netzwerkkonfiguration ändert.
VORSICHT Überprüfen Sie das Anwenderprogramm auf ordnungsgemäße Ausführung, bevor Sie es tatsächlich für die Baugruppe einsetzen. Wird das Programm nicht überprüft, besteht die Gefahr von unerwartetem Verhalten.
Achtung Ergreifen Sie geeignete Maßnahmen, um sicherzustellen, dass das Gerät mit der angegebenen Nennspannung und -frequenz versorgt wird. Lassen Sie an Installationsorten, an denen die Spannungsversorgung nicht stabil ist, besondere Vorsicht walten. Eine falsche Spannungsversorgung kann zu Fehlfunktionen führen.
Achtung Installieren Sie externe Trennschalter, und ergreifen Sie weitere Sicherheitsmaßnahmen gegen Kurzschlüsse in externer Verdrahtung. Bei unzureichenden Sicherheitsmaßnahmen gegen Kurzschlüsse besteht Brandgefahr.
Achtung Legen Sie keine Spannung an die Eingangsbaugruppe an, die die Nenneingangsspannung übersteigt. Bei zu hoher Spannung besteht Brandgefahr.
Achtung Legen Sie keine Spannung an die Ausgangsbaugruppen an und schließen Sie keine Lasten an die Ausgangsbaugruppen an, die die maximale Schaltleistung übersteigen. Bei übermäßigen Spannungen oder Lasten besteht Brandgefahr.
Achtung Verwenden Sie stets die diesem Handbuch angegebene Versorgungsspannung. Eine falsche Spannung kann zu Fehlfunktionen oder Brandgefahr führen.
Revision 3.0
PROGRAMMIERHANDBUCH 18
Achtung
Klemmen Sie die Erdung ab, wenn Sie Spannungsfestigkeitstests durchführen. Wird die Erdung nicht abgeklemmt, besteht Brandgefahr.
Sicherheitswarnungen und -hinweise
Achtung
Achten Sie bei der Installation der Baugruppen auf eine Erdung der Klasse 3 (bis max. 100). Wenn Sie keine Erdung der Klasse 3 anschließen, besteht die Gefahr eines elektrischen Schlags.
Achtung Schalten Sie die Spannungsversorgung für das System immer AUS, bevor Sie versuchen, eine der folgenden Arbeiten durchzuführen. Bei Nichtabschalten der Versorgungsspannung besteht das Risiko von Fehlfunktionen und die Gefahr eines elektrischen Schlags.
- Anbringen oder Abbauen von Erweiterungsbaugruppen, CPU-Baugruppen oder sonstigen Baugruppen.
- Montieren der Baugruppen.
- Einstellen der DIP-Schalter oder Drehschalter.
- Anschließen oder Verdrahten von Kabeln.
- Anschließen oder Lösen von Steckverbindungen.
Achtung Stellen Sie sicher, dass alle Befestigungsschrauben, Klemmenschrauben und Schrauben von Steckverbindern mit dem in diesem Handbuch angegebenen Drehmoment festgezogen sind. Ein falsches Anzugsdrehmoment kann zu Fehlfunktionen führen.
Achtung Entfernen Sie die Schutzfolie nach Abschluss der Verdrahtungsarbeiten, um eine ordnungsgemäße Wärmeableitung zu gewährleisten. Bei nicht entfernter Schutzfolie besteht die Gefahr von Fehlfunktionen.
Achtung Verwenden Sie für die Verkabelung Crimp-Kabelschuhe. Schließen Sie keine abisolierten Litzendrähte direkt an Klemmen an. Beim Anschließen frei liegender Litzen besteht Brandgefahr.
Achtung Überprüfen Sie alle Verdrahtungen sorgfältig, bevor Sie die Spannungsversorgung einschalten. Bei unsachgemäßer Verdrahtung besteht Brandgefahr.
Achtung Achten Sie auf die richtige Verdrahtung. Bei unsachgemäßer Verdrahtung besteht Brandgefahr.
Achtung Installieren Sie Baugruppe erst, nachdem Sie den Klemmenblock
Achtung
eingehend überprüft haben.
Belassen Sie beim Verdrahten die Schutzfolie an der Baugruppe. Bei entfernter Schutzfolie besteht die Gefahr von Fehlfunktionen.
Achtung
Stellen Sie sicher, dass die Klemmenblöcke, Verlängerungskabel
Revision 3.0
und andere Teile mit Arretierungen ordnungsgemäß eingerastet sind. Bei fehlender Arretierung besteht die Gefahr von Fehlfunktionen.
PROGRAMMIERHANDBUCH 19
Sicherheitswarnungen und -hinweise
Revision 3.0
Achtung Vergewissern Sie sich, dass keine negativen Auswirkungen im System auftreten können, bevor Sie die Betriebsart des Systems ändern. Andernfalls besteht die Gefahr von unerwartetem Verhalten.
Achtung Nehmen Sie den Betrieb erst dann wieder auf, wenn der für den Betrieb benötigte VR- und Tabellenspeicher auf die neue CPU-Baugruppe übertragen wurde. Andernfalls besteht die Gefahr von unerwartetem Verhalten.
Achtung Achten Sie beim Austauschen von Komponenten darauf, dass die neue Komponente die richtigen Nenndaten besitzt. Andernfalls besteht die Gefahr von Fehlfunktionen oder Brandgefahr.
Achtung Ziehen Sie nicht an den Kabeln, und biegen Sie die Kabel nicht über das natürliche Maß hinaus. Die Kabel können dabei brechen.
Achtung Achten Sie vor Berühren des Systems darauf, dass Sie zunächst einen geerdeten Metallgegenstand berühren, um statische Aufladung abzuleiten. Andernfalls besteht die Gefahr von Fehlfunktionen oder Schäden.
Achtung Die UTP-Kabel sind nicht abgeschirmt. Verwenden Sie in Umgebungen, in denen elektrische Störungen auftreten, ein System mit abgeschirmten, paarweise verdrillten Kabeln (STP-Kabeln) und Hubs, die für eine FA-Umgebung geeignet sind. Schließen Sie keine verdrillten Kabel an Hochspannungsleitungen an. Schließen Sie keine verdrillten Kabel in der Nähe von Geräten an, die elektrische Störungen erzeugen. Schließen Sie keine verdrillten Kabel an Orten mit hoher Luftfeuchtigkeit an. Verwenden Sie keine verdrillten Kabel an Orten, an denen übermäßig viel Schmutz oder Staub, Ölnebel oder andere Schmutzstoffe auftreten.
Achtung Verwenden Sie die in den Betriebshandbüchern angegebenen Spezialkabel zum Anschluss der Baugruppen. Die Verwendung von handelsüblichen RS-232C-Computerkabeln kann zu Fehlfunktionen in externen Geräten oder der Motion Controller-Baugruppe führen.
Achtung Aufgrund einer Fehlfunktion in den eingebauten Transistorausgängen oder anderen internen Schaltkreisen werden die Ausgänge möglicherweise nicht abgeschaltet. Um solche Probleme zu vermeiden, müssen externe Sicherheitsvorrichtungen installiert werden, und die Sicherheit des Systems zu gewährleisten.
Achtung Der TJ1 startet in der RUN-Betriebsart, wenn der Strom eingeschaltet wird und wenn ein BASIC-Programm auf die Betriebsart „Auto Run“ eingestellt ist.
PROGRAMMIERHANDBUCH 20
Sicherheitswarnungen und -hinweise
1.6 Vorsichtsmaßnahmen bei der Montage von Baugruppen
Achtung
Installieren Sie die Baugruppe ordnungsgemäß. Bei unsachgemäßer Installation der Baugruppe besteht die Gefahr von Fehlfunktionen.
Achtung Montieren Sie die mit dem TJ1-MC__ gelieferte Abschlussbaugruppe an der rechten äußeren Baugruppe. Der TJ1 kann erst ordnungsgemäß funktionieren, wenn die Abschlussbaugruppe richtig montiert ist.
Revision 3.0
PROGRAMMIERHANDBUCH 21
Trajexia-System
2 Trajexia-System

2.1 Einführung

Trajexia ist OMRON’s Plattform zur Bewegungssteuerung, die Ihnen die Leistung und leichte Bedienbarkeit eines modernen Motion Control-Systems bietet.
Trajexia ist ein modulares Standalone-System, das maximale Flexibilität und Skalierbarkeit erlaubt. Herzstück des Trajexia ist die TJ1-Multi-Tasking-Motion-CPU. Durch einen 32-Bit-DSP ist sie speziell zur Bewältigung von Bewegungsaufgaben mit einfachen Motion-Befehlen prädestiniert, z. B. E-Cam, E-Gearbox, Druckmarkensteuerung und Interpolation.
Trajexia ermöglicht die Steuerung von bis zu 16 Achsen über einen MECHATROLINK-II Motion-Bus oder über herkömmliche Analog- oder Impulssteuerung mit unabhängiger Positionierung, Drehzahl- oder Drehmomentregelung für jede Achse. Der leistungsfähige Motion-Befehlssatz ermöglicht zudem eine intuitive und einfache Programmierung.
Eine große Auswahl an erstklassigen Servo-, Linear- und Torquemotoren sowie Servotreibern und Frequenzumrichtern steht für die Lösung Ihrer Applikation zur Verfügung. Das System kann bis auf sechzehn Achsen und acht Frequenzumrichter und E/A-Module skaliert werden.
NS-Bedienterminal
Digitale E/A
Hostlink
MECHATROLINK-II
SPS der CJ-Serie
Ethernet
Abb.1
CX-one
Trajexia Tools
PROFIBUS-DP-
Master
DEVICENET-
Master
Revision 3.0
PROGRAMMIERHANDBUCH 22
Trajexia-System
2.1.1 Trajexia Hardware
Die Trajexia Hardware wird im Trajexia Hardware-Referenzhandbuch näher erläutert. Es ist empfehlenswert, das Hardware-Referenzhandbuch vorab zu lesen. Das Trajexia-System bietet folgende Vorteile:
Direkte Verbindung über Ethernet
Die integrierte Ethernet-Schnittstelle des Trajexia ermöglicht die direkte und schnelle Verbindung mit PC’s, SPS, MMI’s und anderen Geräten. Der direkte Zugriff auf die Antriebsparameter ist über den schnellen Motion-Bus MECHATROLINK-II gewährleistet. Trajexia ermöglicht „Explicit Messaging“ über Ethernet und den MECHATROLINK-II Motion-Bus. Dies bietet eine vollständige Transparenz bis hinunter zur Aktuatorenebene und ermöglicht einen dezentralen Zugriff.
Schutz Ihres Know-Hows
Ein Passwortschutz nach einem Verschlüsselungsverfahren garantiert den zuverlässigen Schutz Ihres wertvollen Know-Hows.
Serielle Schnittstelle und lokale E/A’s
Eine serielle Schnittstelle ermöglicht den direkten Anschluss an jede beliebige OMRON-SPS- und MMI-Systeme sowie an andere Feldgeräte. Dank der frei konfigurierbaren integrierten 16 Eingänge und 8 Ausgänge des Controllers können Sie den Trajexia perfekt in Ihr Anlagenkonzept integrieren.
MECHATROLINK-II-Master
Der MECHATROLINK-II-Master steuert bis zu 16 Servos, Frequenzumrichter oder E/A und ermöglicht eine vollständige Transparenz des gesamten Systems. MECHATROLINK-II bietet die Kommunikationsgeschwindigkeit und Zeitgenauigkeit, die für eine perfekte Bewegungssteuerung von Servos erforderlich sind. Die Bewegungszykluszeit kann zwischen 0,5 ms, 1 ms oder 2 ms gewählt werden.
TJ1-FL02 (Flex Achsmodul-Baugruppe)
Die TJ1-FL02 bedient alle analogen Antriebe und Schrittmotorsteuerungen.
Revision 3.0
Das Modul unterstützt die wesentlichen Encoder-Protokolle und erlaubt so den Anschluss eines externen Encoders an das System.
Antriebe und Frequenzumrichter
Eine große Auswahl an Servo-, Linear- und Torquemotoren sowie Servotreibern und Frequenzumrichtern, die Ihren Anforderungen an Integrationsdichte, Leistung und Zuverlässigkeit entsprechen, steht Ihnen für die Lösung Ihrer Applikation zur Verfügung. Die an den MECHATROLINK-II Motion-Bus angeschlossenen Frequenzumrichter werden mit derselben Systemtaktzeit wie die Servoantriebe betrieben.
Dezentrale E/A’s
Dezentrale E/A-Module am MECHATROLINK-II Motion-Bus ermöglichen eine Erweiterung des Systems bei Beibehaltung eines einzigen durchgängigen Motion-Bussystems.
PROFIBUS DP
Der PROFIBUS-DP-Slave erlaubt den Anschluss an ein PROFIBUS­Netzwerk in Ihrer Maschine.
DeviceNet
Der DeviceNet-Slave erlaubt den Anschluss an ein DeviceNet-Netzwerk in Ihrer Maschine.
2.1.2 Dieses Handbuch
Dieses Programmierhandbuch enthält spezielle Informationen zu folgenden Themen:
Beschreibung und Verwendung der BASIC-Befehle
Die für das Trajexia-System erforderlichen Kommunikationsprotokolle
Die Verwendung und Beschreibung der Elemente der Trajexia Tools­Schnittstelle
Programmbeispiele und gute Programmiertechnik
Fehlersuche und Fehlerlokalisierung

2.2 Multitasking-BASIC-Programmierung

Die TJ1-MC__-Baugruppen (Motion Controller-Baugruppe) verfügen über eine Multitasking-Version der Programmiersprache BASIC. Die Motion Control­Sprache basiert zum großen Teil auf einem in Tokens übersetzten BASIC, und die Programme werden vor ihrer Ausführung in die Token-Form kompiliert.
PROGRAMMIERHANDBUCH 23
Trajexia-System
Multitasking ist einfach einzurichten und erlaubt die Programmierung sehr komplexer Maschinen. Multitasking gibt dem TJ1-MC__ einen erheblichen Vorteil gegenüber gleichwertigen Singletask-Systemen. Es ermöglicht modulare Anwendungen, bei denen die logisch miteinander verbundenen Prozesse in dem gleichen Task-Programm zusammengruppiert werden können, wodurch die Architektur und der Aufbau des Codes vereinfacht werden. Der TJ1-MC__ kann je nach Speichergröße bis zu 14 Programme verwalten. Die Ausführung der Programme wird vom Anwender über BASIC gesteuert. Die hier vorgestellten BASIC-Befehle, -funktionen und -parameter sind in Kapitel 3 enthalten.

2.3 BASIC-Programmierung

Die BASIC-Sprache besteht unter anderem aus Befehlen, Funktionen und Parametern. Diese BASIC-Anweisungen sind die Bausteine zur Betriebssteuerung des TJ1-MC__. Befehle sind vom Prozessor erkannte Wörter, die eine bestimmte Handlung bewirken, aber keinen Wert zurückgeben. Beispielsweise ist PRINT ein erkanntes Wort, das bewirkt, dass der Wert der folgenden Funktionen oder Variablen auf einem bestimmten Ausgabegerät ausgedruckt wird. Funktionen sind vom Prozessor erkannte Wörter, die eine bestimmte Aktion bewirken und einen mit der Aktion verknüpften Wert zurückgeben.
ABS
Beispielsweise wird mit absolute Wert hiervon zur Verwendung durch eine andere Funktion oder einen anderen Befehl zurückgegeben. Zum Beispiel gibt der dann z. B. vom zu erzeugen, die auf einem bestimmten Gerät ausgegeben wird. Parameter sind vom Prozessor erkannte Wörter, die einen bestimmten Wert enthalten. Dieser Wert kann gelesen und ggf. geschrieben werden, wenn Schreibzugriff möglich ist. Parameter werden verwendet, um das Verhalten des Systems zu bestimmen und zu überwachen. Beispielsweise bestimmt
ACCEL
die Beschleunigungsrate einer Bewegung für eine bestimmte Achse.
PRINT
der Wert des Parameters erfasst und der
ABS(–1)
-Befehl benutzt werden kann, um eine Zeichenkette
den Wert 1 zurück,
Achsenanweisungen
Die Bewegungssteuerungsbefehle und die Achsenparameter gelten für eine oder mehrere Achsen. Achsenparameter bestimmen und überwachen, wie eine Achse auf gegebene Befehle und auf die äußere Umgebung reagiert. Jede Achse hat einen eigenen Parametersatz, sodass alle Achsen unabhängig voneinander eingestellt werden können. Mit den Bewegungssteuerungs­befehlen lassen sich eine oder mehrere der Achsen gleichzeitig steuern, wobei jede Achse ihr eigenes Verhalten hat. Bei jedem Hochfahren werden die Achsenparameter auf ihre Standardwerte zurückgesetzt. Die Befehle und Parameter wirken sich auf eine Basisachse oder eine Achsen­gruppe aus, die durch den Befehl verwendet, um die Basisachsengruppe zu ändern; jeder Task hat seine eigene Gruppe, die jederzeit geändert werden kann. Die Standard-Basisachse ist 0. Einzelne achsenabhängige Befehle oder Parameter können auch so programmiert werden, dass sie sich temporär auf eine Achse auswirken, indem die Funktion AXIS als Modifikator in den achsenabhängigen Befehl aufgenommen wird. Eine temporäre Achsenbasis wirkt sich nur auf den Befehl oder Parameter aus, nach dem AXIS eingegeben wurde.
BASE
spezifiziert wird. Der Befehl
BASE
wird
Task-Anweisungen
Die Task-Parameter gelten für eine einzelne Task. Die Task-Parameter überwachen den Task, z. B. bei der Fehlerbehandlung. Der Modifikator erlaubt es dem Anwender, auf einen Parameter eines Tasks zuzugreifen. Ohne
PROC
wird der aktuelle Task ausgeführt. Der Befehl
spezifisch und kann zusammen mit dem Modifikator
BASE
(siehe oben) ist Task-
PROC
verwendet werden.
PROC
Systemanweisungen
Diese Anweisungen regeln die gesamten Funktionen des Systems, wobei es sich im Wesentlichen um alle Anweisungen handelt, die nicht zu den ersten beiden Gruppen gehören.
2.3.2 Speicherbereiche
2.3.1 Achse, System und Task-Anweisungen
Revision 3.0
Die Befehle, Funktionen und Parameter gelten entweder für die Achse (n), die laufenden Tasks oder das gesamte System.
PROGRAMMIERHANDBUCH 24
Die Trajexia Motion Controller-Baugruppe verfügt über drei verschiedene Speicherbereiche:
•E/A-Speicher
VR-Speicher
TABLE-Speicher
Trajexia-System
E/A-Speicher
Der E/A-Speicher dient zur Speicherun Ausgangsgeräten, die an das Trajexia-System angeschlossen sind. Er ist in zwei Unterbereiche unterteilt: einen für den digitalen E/A-Speicher und einen für den analogen E/A-Speicher. Der digitale E/A-Speicher enthält die Eingangs- und Ausgangszustände digitaler E/A-Geräte. Seine Kapazität umfasst 256 Bit (Eingangspunkte) für Eingänge und 256 Bit (Ausgangspunkte) für Ausgänge. Der Zugriff auf die Eingänge in diesem Speicher erfolgt über
IN
den Befehl Der analoge E/A-Speicher enthält die Ein- und Ausgangswerte von analogen E/A-Geräten. Seine Kapazität umfasst 36 Eingangs- und 36 Ausgangskanäle. Der Zugriff auf die analogen Eingangskanäle erfolgt über den Befehl Der Zugriff auf die analogen Ausgangskanäle erfolgt über den Befehl
. Der Zugriff auf die Ausgänge erfolgt über den Befehl
g des Zustands von Eingangs- und
OUT
AIN
AOUT
VR-Speicher
Der VR-Speicher wird häufig dann verwendet, wenn Daten oder Werte global verfügbar sein sollen, d. h., sie sollen gleichzeitig von allen Programmen in dem Projekt abrufbar sein. Die Größe dieses Speichers beträgt 1024 Slots mit Indizes von 0 bis 1023. Ein Speicher-Slot wird mit dem Makro
x
wobei Lese- und Schreibzugriff. Das Schreiben erfolgt über eine mathematische Anweisung mit dem Befehl wird in dem batteriegespeisten RAM-Speicher gehalten und wird auch bei abgeschalteter Versorgungsspannung nicht gelöscht. Der VR-Speicher bleibt auch beim Batteriewechsel erhalten, wenn dies schnell genug erfolgt.
für den Index des VR-Speicher-Slots steht. Der VR-Speicher erlaubt
=
im Programm. Der Inhalt dieses Speichers
VR(x)
angesprochen,
TABLE-Speicher
Der TABLE-Speicher wird häufig dann verwendet, wenn Daten oder Werte global verfügbar sein sollen, d. h., sie sollen gleichzeitig von allen Programmen in dem Projekt abrufbar sein. Obwohl der VR-Speicher zu ähnlichen Zwecken verwendet wird, um verschiedene globale Daten und Werte zu definieren, wird der TABLE-Speicher für viel größere Mengen globaler Daten benutzt, die außerdem in einer bestimmten Reihenfolge angeordnet sein müssen. Aus diesem Grund wird der TABLE-Speicher normalerweise zur Speicherung von Tabellendaten, Bewegungsprofilen, Anmeldedaten usw. benutzt. Einige
Revision 3.0
BASIC-Befehle, die diese Art und Größe von Daten bereitstellen, z. B.
CAM, CAMBOX
Schreiben von Ergebnissen. Die Größe dieses Speichers beträgt 64000 Slots
usw., erfordern die Verwendung des TABLE-Speichers zum
SCOPE
mit Indizes von 0 bis 63999. Auch der Tabellenspeicher erlaubt Lese- und Schreibzugriffe, aber die Zugriffsmethode ist bei diesen beiden Operationen unterschiedlich. Bevor er ausgelesen werden kann, muss zuerst ein bestimmter Tabellenspeicher-Slot mit dem Befehl
und geschrieben werden,
Anfangs-Tabellenspeicher-Slots steht und die in den Tabellenspeicher bei den Indizes x, x+1, ... geschrieben werden. Wenn er definiert und geschrieben ist, kann der Tabellenspeicher-Slot mit
.
.
.
dem Befehl Tabellenspeicher-Slots angibt. Der Versuch, einen nicht definierten Tabellenspeicher-Slot zu lesen, hat eine Fehlermeldung zur Folge, die vom TJ1-MC__ ausgegeben wird. Der Inhalt des TABLE-Speichers wird in dem batteriegespeisten RAM-Speicher gehalten und wird auch bei abgeschalteter Versorgungsspannung nicht gelöscht. Der TABLE-Speicher bleibt auch beim Batteriewechsel erhalten, wenn dies schnell genug erfolgt.
TABLE(x)
wobei x für den Index des zu definierenden
ausgelesen werden, wobei x den Index des
TABLE(x, wert1, wert2,…) definiert
Wert1, Wert2
, ... die Werte sind,
2.3.3 Datenstrukturen und Variablen
BASIC-Programme können numerische Daten in verschiedenen Arten von Variablen speichern. Einige Variablen haben vordefinierte Funktionen, z. B. die Achsenparameter und Systemparameter; andere Variablen können vom Programmierer nach Bedarf in der Programmierung definiert werden. Die TABLE-, globalen und lokalen Variablen des TJ1-MC__ werden in diesem Abschnitt erläutert. Außerdem wird die Verwendung von Labels spezifiziert.
TABLE-Variablen
TABLE ist eine Array-Struktur, die eine Serie von Nummern enthält. Diese
CAM
Nummern werden z. B. dazu verwendet, Positionen in dem Profil für einen oder
CAMBOX
späteren Gebrauch zu speichern, z. B. um die Parameter zu speichern, die zum Definieren eines zu bearbeitenden Werkstücks gebraucht werden. TABLE wird von allen Tasks im TJ1-MC__ gemeinsam verwendet. Das bedeutet, dass die Werte, die von einer Task in die TABLE geschrieben werden, von anderen Task’s gelesen werden können. TABLE-Werte können mit dem Befehl werden. Die maximale Länge des Arrays beträgt 64000 Elemente, von
,
TABLE(0)
definierten Elemente initialisiert.
-Befehl anzugeben. Sie können auch dazu dienen, Daten zum
bis
TABLE(63999)
TABLE
. Das TABLE-Array wird bis zum höchsten
geschrieben und gelesen
-
PROGRAMMIERHANDBUCH 25
Trajexia-System
Globale Variablen
Die im VR-Speicher definierten globalen Variablen werden von allen Tasks im TJ1-MC__ gemeinsam verwendet. Das bedeutet: Wenn ein Programm, das Task 2 ausführt, VR(25) auf einen bestimmten Wert setzt, kann jedes andere Programm, das eine andere Task ausführt, den gleichen Wert aus VR(25) lesen. Dies ist zum Synchronisieren von zwei oder mehr Tasks sehr nützlich, jedoch muss darauf geachtet werden, dass nicht mehrere Programme gleichzeitig zu derselben Variablen schreiben. Der Controller hat 1024 globale Variablen, VR(0) bis VR(1023). Die Variablen werden mit dem Befehl
VR
gelesen und geschrieben.
Auf die TABLE- und VR-Daten kann aus verschiedenen laufenden Tasks zugegriffen werden. Wenn Sie die VR­oder TABLE-Variablen benutzen, stellen Sie sicher, dass nur ein Task zu einer Variablen schreiben kann. Das ist wichtig, um zu vermeiden, dass zwei Programm-Tasks unerwartet zu einer Variablen schreiben.
Lokale Variablen
Bezeichnete Variablen oder lokale Variablen können in Programmen angegeben werden und sind lokal auf die Task beschränkt. Das bedeutet, dass zwei oder mehr Programme, die verschiedene Tasks ausführen, die gleiche Variablenbezeichnung verwenden können, aber die Werte können unterschiedlich sein. Lokale Variablen können von keinem anderen Task gelesen werden, außer von dem, für den sie angeben wurden. Lokale Variablen werden immer gelöscht, wenn ein Programm gestartet wird. Die lokalen Variablen können entweder mit dem Befehl
CLEAR
oder
RESET
gelöscht werden. Es können maximal 255 lokale Variablen angegeben werden. Nur die ersten 16 Zeichen der Bezeichnung sind Wertstellen. Nicht definierte lokale Variablen geben den Wert Null zurück. Lokale Variablen können nicht in der Befehlszeile angegeben werden.
Labels
Die BASIC-Programme werden in absteigender Reihenfolge zeilenweise ausgeführt. Labels können verwendet werden, um diese Ausführungsabfolge zu ändern; dies erfolgt mit den BASIC-Befehlen
Revision 3.0
Label zu definieren, muss es als erste Anweisung in einer Zeile stehen und mit
GOTO
einem Doppelpunkt (:) enden. Labels können Zeichenketten beliebiger Länge sein, aber nur die ersten 15 Zeichen sind Wertstellen.
und
GOSUB
. Um ein
Verwendung von Variablen und Labels
Jeder Task hat seine eigenen lokalen Labels und lokalen Variablen. Betrachten Sie z. B. die beiden unten gezeigten Programme:
/i
start: FOR a = 1 bis 100 MOVE(a) WAIT IDLE NEXT a GOTO Start
Wenn diese beiden Programme gleichzeitig in verschiedenen Tasks ausgeführt werden, haben sie ihre eigene Version der Variable
start
des Labels
.
Wenn Sie Daten von zwei oder mehr Programmen gemeinsam nutzen lassen wollen, sollten VR-Variablen verwendet werden. Wenn eine große Datenmenge gespeichert werden muss, kann alternativ dazu auch der TABLE-Speicher verwendet werden. Um ein Programm bei Verwendung einer globalen VR-Variablen besser lesbar zu machen, gibt es zwei Methoden. Die erste besteht darin, eine bezeichnete lokale Variable als Konstante in der VR-Variablen einzusetzen. Die lokale konstante Variable muss jedoch in jedem Programm angegeben werden, das die globale VR-Variable benutzt. Das mit dieser Methode geschriebene unten stehende Beispiel zeigt, wie VR(3) verwendet wird, um einen Längenparameter zu speichern, den mehrere Programme gemeinsam benutzen:
/i
start: GOSUB initial VR(laenge) = x ... ...
initial: laenge = 3 RETURN
Start: a=0 REPEAT a = a + 1 PRINT a UNTIL a = 300 GOTO Start
a
und
start: GOSUB initial MOVE(VR(laenge)) PRINT(VR(laenge)) ...
initial: laenge = 3 RETURN
PROGRAMMIERHANDBUCH 26
Trajexia-System
Der andere Ansatz ist noch übersichtlicher und verwendet den Befehl
GLOBAL
zur Angabe des Namens als Referenz für eine der globalen
VR-Variablen. Der Name kann dann von dem Programm, das die Definition
GLOBAL
für Beachten Sie, dass das Programm mit der Definition für
enthält und von allen anderen Programmen benutzt werden.
GLOBAL
zuerst durchlaufen wird, bevor der Name in anderen Programmen verwendet wird. Die beste Methode besteht darin, globale Namen im Startprogramm zu definieren. Mit dieser Methode sieht das obige Beispiel so aus:
/i
'Die Angabe im Startprogramm GLOBAL laenge, 3
'In anderen Programmen nach dem Startprogramm ausgefuehrt
start: laenge = x ... ...
start: MOVE(laenge) PRINT(laenge) ...
2.3.4 Mathematische Spezifikationen
Zahlenformat
Der TJ1-MC__ hat zwei Zahlenformate für numerische Werte: Gleitkommawerten mit einfacher Genauigkeit und Integer-Werte mit einfacher Genauigkeit. Gleitkommawerte mit einfacher Genauigkeit sind intern 32-Bit-Werte. Sie haben ein 8-Bit-Exponentenfeld, ein Vorzeichen-Bit und ein 23-Bit-Nachkommafeld mit einer impliziten 1 als 24. Bit. Gleitkommazahlen haben einen gültigen Bereich von ±5,9 × 10 Integer sind im Grunde Gleitkommazahlen mit dem Exponent Null. Das bedeutet, dass die Integer-Zahlen 24 Bit umfassen. Der Integer-Bereich geht deshalb von –16777216 bis 16777215. Numerische Werte außerhalb dieses Bereichs werden als Gleitkommazahlen dargestellt.
Revision 3.0
39
bis ±3,4 × 1038.
Alle mathematischen Berechnungen erfolgen im Gleitkommaformat. Das hat zur Folge, dass bei Berechnungen von/mit größeren Werten die Genauigkeit der Ergebnisse eingeschränkt ist. Der Anwender sollte dies bei der Entwicklung der Motion Control-Anwendung berücksichtigen.
Hexadezimalformat
Der TJ1-MC__ unterstützt die Zuordnung und die Ausgabe hexadezimaler Werte. Eine Hexadezimalzahl wird eingegeben, indem der Zahl das Zeichen $ vorangestellt wird. Der gültige Bereich ist von 0x0 bis 0xFFFFFF. Beispiel:
>> VR(0)=$FF >> PRINT VR(0)
255.0000
Mit der Funktion
HEX
kann ein Wert hexadezimal ausgegeben werden.
Negative Werte werden als Zweierkomplement-Hexadezimalwert (24-Bit)
dargestellt. Der gültige Bereich ist von
>> TABLE(0,-10,65536) >> PRINT HEX(TABLE(0)),HEX(TABLE(1)) FFFFF6 10000
8388608 bis 16777215. Beispiel:
Positionierung
Bei der Positionierung rundet der TJ1-MC__ auf, wenn der berechnete Drehgeber-Flankenabstand nach dem Komma 0,9 überschreitet. Andernfalls wird der Wert nach dem Komma abgerundet. Die interne gemessene Position und die Sollposition der Achsen, die durch die Achsenparameter
DPOS
dargestellt werden, haben 32-Bit-Zähler.
MPOS
und
Gleitkomma-Vergleich
Die Vergleichsfunktion setzt kleine Unterschiede zwischen Werten gleich, um unerwartete Vergleichsergebnisse zu vermeiden. Deshalb werden zwei Werte, bei denen die Differenz weniger als 1,19 × 10
6
beträgt, gleichgesetzt.
Vorrangigkeit
Die Vorrangigkeit der Operatoren ist unten angegeben:
1. Unär minus, NOT
2. ^
3. / *
4. MOD
5. + -
6. = <> > >= <= <
7. AND OR XOR
8. Von links nach rechts
Die beste Methode, um die Vorrangigkeit verschiedener Operatoren sicherzustellen, ist die Verwendung von Klammern.
PROGRAMMIERHANDBUCH 27
Trajexia-System

2.4 Bewegungsausführung

Jeder Task im TJ1-MC__ hat eine Reihe von Befehlsspeichern, die die Daten aus den gegebenen Bewegungsbefehlen enthalten.
2.4.1 Profilgenerator
Der Profilgenerator hat zwei Bewegungs-Befehlsspeicher für jede Achse. Ein Befehlsspeicher mit der Bezeichnung
MTYPE
die aktuelle Bewegung, d. h. die Bewegung, die zurzeit an der Achse ausgeführt wird. Der andere Befehlsspeicher mit der Bezeichnung
NTYPE
speichert die nächste Bewegung, die ausgeführt wird, nachdem die aktuelle Bewegung beendet Eine genaue Erläuterung finden Sie in Kapitel 2.8 „Bewegungs­Befehlsspeicher“ im Trajexia Hardware-Referenzhandbuch.
Die BASIC-Programme sind vom Profilgeneratorprogramm getrennt, welches die Bewegungen der Achsen steuert. Der Profilgenerator hat für jede Achse getrennte Funktionen, daher kann jede Achse mit ihren eigenen Achsenparametern programmiert werden (z. B. Geschwindigkeit, Beschleunigung) und sich unabhängig und simultan bewegen, oder die Achsen können mit speziellen Befehlen miteinander synchronisiert werden. Wenn ein Bewegungsbefehl verarbeitet wird, wartet der Profil­generator, bis die Bewegung beendet und der Befehlsspeicher für die erforderliche Achse leer ist; dann werden diese Befehlsspeicher mit den Daten für die nächste Bewegung geladen.
speichert
Revision 3.0
PROGRAMMIERHANDBUCH 28
Trajexia-System
Wenn der Task- Befehlsspeicher voll ist, pausiert die Programmausführung, bis wieder Befehlsspeicher verfügbar ist. Dies gilt auch für den Befehlszeilen-Task; für diesen Zeitraum können keine Befehle gegeben werden. Trajexia Tools trennt in einem solchen Fall die Verbindung. Der Task-Parameter PMOVE wird auf TRUE bzw. -1 gesetzt, wenn der Task- Befehlsspeicher voll ist. Er wird auf FALSE bzw. 0 zurückgesetzt, wenn wieder Task- Befehlsspeicher verfügbar ist.
2.4.2 Sequenzsteuerung
Bei jeder Unterbrechung des Servozyklus (siehe Abschnitt 2.6.3) überprüft der Profilgenerator die ermitteln, ob einer von ihnen verfügbar ist. Wenn einer von ihnen verfügbar ist, kontrolliert er den Task- Befehlsspeicher, um zu ermitteln, ob eine Bewegung darauf wartet, geladen zu werden. Wenn eine Bewegung geladen werden kann, werden die Daten für alle spezifizierten Achsen aus dem Task- Befehlsspeichern in den
NTYPE
– Befehlsspeicher geladen, und der entsprechenden Task­Befehlsspeicher wird als im Ruhezustand befindlich gekennzeichnet. Dieser Prozess wird als Sequenzsteuerung bezeichnet.
NTYPE
-Befehlsspeicher, um zu
Abb.2
Task- Befehlsspeicher
Task 1
MOVECIRC(..) AXIS(0) FORWARD AXIS(1)
Task 2
Task 3
MOVE(..) AXIS(0)
Bewegungs- Befehlsspeicher
Achse
Nächste Bewegung (NTYPE) Nächste Bewegung (NTYPE)
Profil-
Generator
Sequenzsteuerung
012
MOVE (1) MOVECIRC (4)
FORWARD (10) MOVECIRC (4)
IDLE (0) IDLE (0)
Bewegung laden
2.4.3 Laden eines Bewegungsbefehls
Wenn die Sequenzsteuerung abgeschlossen ist, wird der Befehlsspeicher überprüft, um zu ermitteln, ob Bewegungen geladen werden können Wenn der erforderliche verfügbar ist, wird die Bewegung aus dem in den
MTYPE
-Befehlsspeicher geladen, und der
MTYPE
NTYPE
- Befehlsspeicher
- Befehlsspeicher
NTYPE
Befehlsspeicher wird als im Ruhezustand befindlich gekennzeichnet. Dieser Prozess wird als Bewegungsladung bezeichnet. Wenn sich eine gültige Bewegung im wird sie verarbeitet. Wenn die Bewegung abgeschlossen ist,
Revision 3.0
wird der
MTYPE
- Befehlsspeicher als im Ruhezustand befindlich
MTYPE
- Befehlsspeicher befindet,
gekennzeichnet.
PROGRAMMIERHANDBUCH 29
MTYPE
-
-
Trajexia-System

2.5 Befehlszeilen-Schnittstelle

Die Befehlszeilen-Schnittstelle bietet für den Anwender eine direkte Schnittstelle zum Ausführen von Befehlen und zum Zugriff auf Parameter im System. Verwenden Sie das Terminalfenster in Trajexia Tools, wenn der TJ1-MC__ an­geschlossen ist. Detaillierte Informationen hierzu finden Sie in Abschnitt 5.5.4. Der TJ1-MC__ legt die letzten 10 in der Befehlszeile gegebenen Befehle in einen Befehlsspeicher. Mit den Aufwärts- und Abwärts-Pfeiltasten kann man durch den Befehlsspeicher navigieren, um den Befehl nochmals auszuführen.

2.6 BASIC-Programme

Der TJ1-MC__ kann bis zu 14 Programme im Speicher ablegen, wenn die Kapazität des Speichers nicht überschritten wird. Der TJ1-MC__ unterstützt zum Verwalten dieser Programme einfache Dateiverwaltungsanweisungen ähnlich dem DOS-Dateisystem auf einem Computer. Das Trajexia Tools-Softwarepaket wird verwendet, um Programme zu bearbeiten zu speichern und zu laden. Außerdem hat es verschiedene Controller-Überwachungs- und -Debugging-Funktionen. Siehe Kapitel 5.
2.6.1 Verwalten von Programmen
Trajexia Tools legt automatisch ein Projekt an, das die Programme enthält, die für eine Anwendung benutzt werden sollen. Die Programme des Projekts werden sowohl im Controller als auch im Computer gespeichert. Wenn ein Programm angelegt oder bearbeitet wird, bearbeitet Trajexia Tools beide Kopien, um stets ein genaues Backup außerhalb des Controllers bereitzustellen. Trajexia Tools stellt mit einer zyklischen Redundanzprüfung sicher, dass die beiden Versionen des Projekts identisch sind. Wenn beide unterschiedlich sind, erlaubt Trajexia Tools das Kopieren der TJ1-MC__­Version auf Datenträger oder umgekehrt. Die Programme im Computer werden in ASCII-Textdateien gespeichert. Deshalb können Sie mit einem einfachen Texteditor ausgedruckt, bearbeitet und kopiert werden. Die Quellprogramme werden im TJ1-MC__ in einer in
Revision 3.0
Tokens übersetzten Form gespeichert; daher sind die Größen der Programme im Vergleich zu den gleichen Programmen auf dem Computer im TJ1-MC__ kleiner.
Speichern von Programmen
Die Programme im TJ1-MC__ werden in dem batteriegespeisten RAM­Speicher gehalten und werden auch bei abgeschalteter Versorgungsspannung nicht gelöscht. Dies ist ähnlich wie bei den VR- und TABLE-Speichern. Der Inhalt des im RAM-Speicher gehaltenen Programms bleibt erhalten, wenn die Batterie im TJ1-MC__ installiert ist. Die Programme bleiben auch beim Batteriewechsel erhalten, wenn dieser schnell genug erfolgt. Um Programme ohne Batterie für einen längeren Zeitraum gespeichert zu halten, müssen die aktuellen Programme mit dem Befehl
EPROM
in den Flash-Speicher des Controllers kopiert und während des Hochfahrens zurückgelesen werden, was durch den Systemparameter
POWER_UP
bestimmt wird.
Programmbefehle
Der TJ1-MC__ verfügt über eine Reihe von BASIC-Befehlen, die das Anlegen, Ändern und Löschen von Programmen erlauben. Trajexia Tools bietet Schaltflächen, mit denen diese Operationen ebenfalls ausgeführt werden können, daher ist die Verwendung dieser Befehle in den Programmen normalerweise nicht erforderlich.
/i
Befehl Funktion
SELECT
NEW
DIR
COPY
RENAME
DEL
LIST
Wählt ein Programm zum Bearbeiten, Löschen usw. aus.
Löscht das aktuell ausgewählte Programm, ein spezifiziertes Programm oder alle Programme.
Listet das Verzeichnis aller Programme auf.
Dupliziert ein spezifiziertes Programm.
Benennt ein spezifiziertes Programm um.
Löscht das aktuell ausgewählte Programm oder ein spezifiziertes Programm.
Listet das aktuell ausgewählte Programm oder ein spezifiziertes Programm auf.
PROGRAMMIERHANDBUCH 30
Trajexia-System
2.6.2 Programm-Kompilierung
Das TJ1-MC__-System kompiliert Programme automatisch, wenn dies erforderlich ist. Es ist normalerweise nicht erforderlich, die Kompilierung von Programmen zu erzwingen, jedoch können Programme unter dem Menüpunkt Programm in Trajexia Tools kompiliert werden. Der TJ1-MC__ kompiliert Programme automatisch in folgenden Fällen:
Das ausgewählte Programm wird kompiliert, bevor es ausgeführt wird, wenn es bearbeitet worden ist.
Das ausgewählte Programm wird kompiliert, wenn es bearbeitet worden ist, bevor von dem ausgewählten Programm zu einem anderen Programm umgeschaltet wird.
Das ausgewählte Programm wird mit dem Befehl COMPILE kompiliert.
Die Syntax und Struktur des Programms werden während der Kompilierung überprüft. Wenn die Kompilierung fehlschlägt, wird eine Meldung angezeigt, und es wird kein Programmcode generiert. In dem Trajexia Tools-Verzeichnisfeld wird ein rotes Kreuz angezeigt. Programme können nicht ausgeführt werden, wenn Kompilierungsfehler auftreten. Die Fehler müssen korrigiert und die Programme neu kompiliert werden. Der Kompilierungsprozess beinhaltet auch Folgendes:
Entfernen von Kommentaren.
Kompilierung von Zahlen in das interne Prozessorformat.
Konvertierung von Ausdrücken in das Postfixnotationsformat zur Ausführung.
Vorberechnung von Variablen-Speicheradresseen.
Berechnung und Integration von Schleifenstruktur-Zielen.
2.6.3 Programmausführung
Die Zeitpunkte für die Ausführung der verschiedenen Tasks und die Aktualisierung der E/A des TJ1-MC__ wiederholen sich entsprechend dem Servozyklus-Zeitraum des Systems. Der Servozyklus-Zeitraum wird durch den Systemparameter SERVO_PERIOD festgelegt. Der TJ1-MC__ hat einen Servozyklus-Zeitraum von 0,5, 1,0 oder 2,0 ms.
E/A-Aktualisierung
Der E/A-Zustand des TJ1-MC__ wird zu Beginn jedes Servozyklus aktualisiert.
Der erfasste Zustand der digitalen Eingänge wird zu der System-
Eingangsvariablen IN übertragen. Bitte beachten Sie, dass dies der Zustand ist, der im vorherigen Servozyklus erfasst wurde.
Die analogen Ausgänge für die Drehzahlsollwerte werden aktualisiert.
Die digitalen Eingänge werden entsprechend dem Zustand der System-
Ausgangsvariablen OP aktualisiert.
Der Zustand der digitalen Eingänge wird erfasst.
Bitte beachten Sie, dass keine automatische Verarbeitung der E/A-Signale erfolgt, außer zur Registrierung. Das bedeutet, dass alle Aktionen in den BASIC-Programmen programmiert werden müssen.
Wichtige Befehle
Trajexia Tools bietet verschiedene Methoden zum Ausführen, Pausieren und Stoppen von Programmen über Tasten/Schaltflächen auf der Bedienkonsole und in Bearbeitungsfenstern. Die folgenden Befehle können in der Befehlszeile zur Steuerung der Ausführung gegeben werden.
/i
Befehl Funktion
Da der Kompilierungsprozess etwas freien Speicherplatz
RUN
erfordert, können unerwartete Kompilierungsfehler auftreten, wenn der freie Speicherplatz nicht ausreicht.
Revision 3.0
PROGRAMMIERHANDBUCH 31
STOP
HALT
PROCESS
Führt das aktuell ausgewählte Programm oder ein spezifiziertes Programm aus, optional bei einer angegebenen Task-Nummer.
Stoppt das aktuell ausgewählte Programm oder ein spezifiziertes Programm.
Stoppt alle Programme im System.
Zeigt alle laufenden Tasks an.
Trajexia-System
Der Anwender kann die Priorität des Tasks festlegen, in dem das BASIC-Programm ablaufen soll. Wird ein Anwenderprogramm ohne ausdrückliche Task-Zuordnung ausgeführt, wird ihm die höchste verfügbare Task-Priorität zugewiesen.
Einstellung von Programmen, die beim Hochfahren starten sollen
Programme können so eingestellt werden, dass sie automatisch mit unterschiedlichen Prioritäten beim Einschalten der Spannungsversorgung ausgeführt werden. Nötigenfalls kann der Computer als Bedienoberfläche angeschlossen bleiben, oder er kann entfernt werden, sodass die Programme im Standalone-Betrieb laufen. Programme können in Trajexia Tools mit der Auswahl Menü
Programm
zur automatischen Ausführung beim Hochfahren ausgewählt werden. Durch diese Auswahl wird bestimmt, welche Programme automatisch mit welcher Priorität gestartet werden. Dies kann auch mit dem BASIC-Befehl
RUNTYPE
erfolgen. Der aktuelle Zustand kann mit dem Befehl werden. Weitere Informationen zu Programmsteuerung, Multitasking und Zykluszeit und finden Sie in den Abschnitten 2.2 und 2.3 des Trajexia Hardware-Referenzhandbuchs.
Autostart-Modus...
DIR
angezeigt
im
Revision 3.0
PROGRAMMIERHANDBUCH 32
BASIC-Befehle
3 BASIC-Befehle

3.1 Kategorien

In diesem Abschnitt sind alle BASIC-Befehle nach Kategorien geordnet aufgelistet. Die Kategorien sind:
Achsenbefehle
Achsenparameter
Kommunikationsbefehle und -parameter
Konstanten
E/A-Befehle, -funktionen und -parameter
Mathematische Funktionen und Operationen
Programmbefehle
Programmsteuerungsbefehle
Slot-Parameter and -modifikatoren
Systembefehle und -funktionen
Systemparameter
Task-Befehle und -parameter
Die Listen dienen nur zur Schnellübersicht. Eine vollständige Beschreibung der Befehle finden Sie in alphabetischer Reihenfolge im nächsten Abschnitt.
3.1.1 Achsenbefehle
/i
Bezeichnung Beschreibung
ACC Ändert ACCEL und DECEL gleichzeitig.
ADD_DAC Summe zu dem DAC-Wert einer Achse zum analogen Ausgang
der Basisachse.
ADDAX Stellt einen Link zu einer überlagernden Achse her. Alle
gewünschten Positionsbewegungen für die überlagernde Achse werden zu allen Bewegungen hinzugefügt, die aktuell ausgeführt werden.
B_SPLINE Erweitert das im TAB LE -Speicher gespeicherte Profil mit der
Revision 3.0
BASE Dient zur Bestimmung der Basisachse, auf welche die Befehle
mathematischen B-Spline-Funktion.
und Parameter angewendet werden.
Bezeichnung Beschreibung
CAM Bewegt eine Achse gemäß den Werten eines Bewegungsprofils,
das im TABLE-Variablen-Array gespeichert ist.
CAMBOX
CANCEL Bricht die Bewegung einer Achse ab.
CONNECT Verbindet die Sollposition einer Achse mit den gemessenen
DATUM Führt eine von 7 Nullpunkt-Suchsequenzen durch, um eine
DEFPOS Definiert die aktuelle Position als neue Absolutposition.
DISABLE_GROUP Gruppiert Achsen zur Fehler-Deaktivierung zusammen.
DRIVE_ALARM Überwacht den aktuellen Alarm.
DRIVE_CLEAR Löscht den Alarmzustand des Servotreibers.
DRIVE_READ Liest die spezifizierten Parameter des Servotreibers.
DRIVE_RESET Setzt den Servotreiber zurück.
DRIVE_WRITE Schreibt einen spezifischen Wert zu dem spezifizierten
ENCODER_READ Liest einen Parameter des EnDat-Absolutwert-Drehgebers.
ENCODER_WRITE
FORWARD Bewegt eine Achse kontinuierlich mit der Geschwindigkeit
HW_PSWITCH Stellt den Hardware-Schalter an Ausgang 0 des TJ1-FL02
MECHATROLINK Initialisiert den MECHATROLINK-II-Bus und führt verschiedene
MHELICAL Interpoliert 3 orthogonale Achsen in einer Wendelbewegung.
Bewegt eine Achse gemäß den Werten eines Bewegungsprofils, das im TABLE-Variablen-Array gespeichert ist. Die Bewegung ist mit der gemessenen Bewegung einer anderen Achse synchronisiert, um ein ständig variables Software-Getriebe zu bilden.
Bewegungen der Achse, die für Antriebs_achse spezifiziert sind, um ein elektronisches Getriebe zu erzeugen.
Achse auf eine Absolutposition zu setzen oder einen Bewegungsfehler zurückzusetzen.
Parameter des Servotreibers.
Schreibt zu einem Parameter des EnDat-Absolutwert-Drehgebers.
vorwärts, die im Parameter SPEED eingestellt ist.
auf Ein oder Aus, wenn vordefinierte Positionen erreicht sind.
Operationen bei MECHATROLINK-II-Stationen aus, die an den Bus angeschlossen sind.
PROGRAMMIERHANDBUCH 33
BASIC-Befehle
Bezeichnung Beschreibung
MOVE
MOVEABS Bewegt eine oder mehrere Achsen mit der gewünschten
MOVECIRC Interpoliert 2 orthogonale Achsen in einem Kreisbogen.
MOVELINK Erzeugt eine lineare Bewegung der Basisachse, die über
MOVEMODIFY Ändert die absolute Endposition der aktuellen einachsigen
RAPIDSTOP Bricht die aktuelle Bewegung aller Achsen ab.
REGIST Erfasst eine Achsenposition, wenn ein Druckmarkeneingang
REVERSE Bewegt eine Achse kontinuierlich mit der Geschwindigkeit
STEP_RATIO Stellt das Verhältnis für den Achsen-Schrittmotorausgang ein.
Bewegt eine oder mehrere Achsen mit der gewünschten Geschwindigkeit, Beschleunigung und Verzögerung zu der Position, die als Inkrement von der aktuellen Position spezifiziert ist.
Geschwindigkeit, Beschleunigung und Verzögerung zu der Position, die als Absolutposition spezifiziert ist.
ein Software-Getriebe mit der gemessenen Position einer synchronisierten Achse verbunden ist.
linearen Bewegung (MOVE oder MOVEABS).
oder die „Z“-Markierung beim Drehgeber erkannt wird.
rückwärts, die im Parameter SPEED eingestellt ist.
3.1.2 Achsenparameter
/i
Bezeichnung Beschreibung ACCEL Enthält die Beschleunigungsrate der Achse. ADDAX_AXIS Enthält die Anzahl der Achsen, mit denen die Basisachse aktuell
durch ADDAX synchronisiert ist. ATY PE Enthält den Achsentyp. AXIS_DISPLAY Wählt Informationen aus, die durch die LEDs auf der
Frontabdeckung des TJ1-FL02 dargestellt werden. AXIS_ENABLE Aktiviert und deaktiviert bestimmte Achsen unabhängig
von anderen Achsen. AXISSTATUS Enthält den Achsenzustand.
Revision 3.0
CLOSE_WIN Definiert das Ende des Fensters, in welchem eine Druckmarke
erwartet wird.
Bezeichnung Beschreibung CLUTCH_RATE Definiert die Geschwindigkeit des Verbindungsaufbaus, wenn
der Befehl CONNECT verwendet wird. CREEP Enthält die Schleichganggeschwindigkeit. D_GAIN Enthält die Differenzialverstärkung. DAC_SCALE DATUM_IN Enthält die Eingangsnummer, die als Nullpunkteingang
DECEL Enthält die Verzögerungsrate der Achse. DEMAND_EDGES Enthält den aktuellen Wert des Achsenparameters DPOS
DPOS Enthält die Sollposition, die von den Bewegungsbefehlen
DRIVE_CONTROL Wählt Daten zur Überwachung mit DRIVE_MONITOR für
DRIVE_INPUTS Speichert E/A-Daten des Treibers, der mit dem
DRIVE_MONITOR Überwacht Daten des Servotreibers, der mit dem
DRIVE_STATUS Enthält den aktuellen Zustand des Servotreibers. ENCODER Enthält eine Grobkopie des Drehgeber-Hardwareregisters. ENCODER_BITS Stellt die Bitanzahl des Absolutwert-Drehgebers ein,
ENCODER_CONTROL Steuert die Betriebsart des EnDat Absolutwert-Drehgebers. ENCODER_ID Gibt den ID-Wert des Absolutwert-Drehgebers zurück,
ENCODER_RATIO Stellt Skalierungswerte für eingehende Drehgeberzähler ein. ENCODER_STATUS ENCODER_TURNS Gibt den Multi-Umdrehungszähler des Absolutwert-Drehgebers
Stellt den Maßstab und die Polarität ein, die für
verwendet werden soll.
in Drehgeber-Flanken.
generiert wurde.
Achsen aus, die über den MECHATROLINK-II-Bus verbunden
sind. Bei Achsen, die über den TJ1-FL02 verbunden sind, stellt
DRIVE_CONTROL die Ausgänge des TJ1-FL02 ein.
MECHATROLINK-II-Bus verbunden ist. Die Daten
werden bei jedem Servozyklus aktualisiert.
MECHATROLINK-II-Bus verbunden ist. Die Daten
werden bei jedem Servozyklus aktualisiert.
der an den TJ1-FL02 angeschlossen ist.
der an den TJ1-FL02 angeschlossen ist.
Gibt den Zustand des Tamagawa-Absolutwert-Drehgebers zurück.
zurück.
DAC
-Werte gelten.
PROGRAMMIERHANDBUCH 34
BASIC-Befehle
Bezeichnung Beschreibung ENDMOVE Speichert die Endposition der aktuellen Bewegung. ERRORMASK Enthält den Maskenwert, der bestimmt, ob MOTION_ERROR
abhängig vom Achsenzustand auftritt.
FAST_JOG Enthält die Eingangsnummer, die als Schnelltippeingang
verwendet werden soll.
FASTDEC
FE Enthält den Schleppfehler (FE). FE_LATCH Enthält den Wert des Schleppfehlers, der den
FE_LIMIT Enthält den maximal zulässigen Schleppfehler. FE_LIMIT_MODE Definiert, wie sich der Schleppfehler auf den
FE_RANGE Enthält die Warnbereichsgrenze für den Schleppfehler. FHOLD_IN Enthält die Eingangsnummer, die als Feedhold-Eingang
FHSPEED Enthält die Feedhold-Drehzahl. FS_LIMIT Enthält die Absolutposition der Vorwärts-Softwarebegrenzung. FWD_IN Enthält die Eingangsnummer, die als Vorwärts-
FWD_JOG Enthält die Eingangsnummer, die als Vorwärtstippeingang
I_GAIN Enthält die Integrationsregelungs-Verstärkung. INVERT_STEP Schaltet eine Hardware-Invertierung in den
JOGSPEED Bestimmt die Schrittdrehzahl. LINKAX Enthält die Achsennummer der synchronisierten Achsen
MARK Erkennt das primäre Druckmarkenereignis bei einem
Revision 3.0
MARKB Erkennt das sekundäre Druckmarkenereignis bei einem
Definiert das Verzögerungsverhältnis „Rampe bis Null“, wenn ein Achsen-Begrenzungsschalter oder eine Grenzposition erreicht ist.
MOTION_ERROR- ausgelöst hat.
MOTION_ERROR-Zustand auswirkt.
verwendet werden soll.
Begrenzungseingang verwendet werden soll.
verwendet werden soll.
Ausgangsschaltkreis ein.
während einer synchronisierten Bewegung.
Druckmarkeneingang.
Druckmarkeneingang.
Bezeichnung Beschreibung MERGE Ist ein Software-Schalter, der zum Aktivieren oder Deaktivieren
der Verknüpfung aufeinander folgender Bewegungen verwendet
werden kann.
MPOS MSPEED Stellt die Veränderung in der gemessenen Position beim letzten
MTYPE Enthält die Art der Bewegung, die aktuell ausgeführt wird. NTYPE Enthält die Art der Bewegung im Befehlsspeicher „Nächste
OFFPOS Enthält einen Offset, der auf die Sollposition angewendet wird,
OPEN_WIN Definiert den Anfang des Fensters, in welchem eine Druckmarke
OUTLIMIT Enthält den Grenzwert, der den Drehzahlsollwert-Ausgang
OV_GAIN Enthält die Verstärkung für die
P_GAIN Enthält die Proportionalregelungsverstärkung. REG_POS Enthält die Position, an der ein Druckmarkenereignis
REG_POSB Enthält die Position, an der das sekundäre
REMAIN Ist die verbleibende Entfernung bis zum Ende der aktuellen
REMOTE_ERROR Gibt bei einem MECHATROLINK-II-Anschluss des Servotreibers
REP_DIST Enthält den Wiederholungsabstand oder stellt diesen ein. REP_OPTION Steuert die Anwendung des Achsenparameters REP_DIST. REV_IN Enthält die Eingangsnummer, die als Rückwärts-
REV_JOG Enthält die Eingangsnummer, die als Rückwärtstippeingang
RS_LIMIT Enthält die Absolutposition der Rückwärts-Softwarebegrenzung.
Ist die Position der Achse, wie sie vom Drehgeber gemessen wurde.
Servozyklus dar.
Bewegung“.
ohne die Bewegung in anderer Weise zu beeinflussen.
erwartet wird.
des TJ1-MC__ begrenzt.
Ausgangsgeschwindigkeitsregelung.
aufgetreten ist.
Druckmarkenereignis aufgetreten ist.
Bewegung.
die Anzahl der Fehler zurück.
Begrenzungseingang verwendet werden soll.
verwendet werden soll.
PROGRAMMIERHANDBUCH 35
BASIC-Befehle
Bezeichnung Beschreibung S_REF Enthält den Wert für den Drehzahlsollwert, der angewendet wird,
wenn sich die Achse im offenen Regelkreis befindet.
S_REF_OUT Enthält den Wert für den Drehzahlsollwert, der sowohl bei
offenem als auch bei geschlossenem Regelkreis auf den Servotreiber angewendet wird.
SERVO SPEED Enthält die gewünschte Geschwindigkeit in Einheiten. SRAMP Enthält den S-Kurvenfaktor. T_REF Enthält den Wert des Drehmoments, für den Servomotor. TRANS_DPOS Enthält die gewünschte Achsenposition beim Ausgang einer
UNITS Enthält den Einheiten-Umwandlungsfaktor. VERIFY Wählt zwischen unterschiedlichen Betriebsarten bei einer
VFF_GAIN Enthält die Verstärkung für die Drehzahl-Vorsteuerungsregelung. VP_SPEED Enthält die Drehzahlprofil-Geschwindigkeit.
Ermittelt, ob die Achse mit oder ohne Lageregelung betrieben wird.
Rahmentransformation.
Schrittmotor-Ausgangsachse aus.
3.1.3 Kommunikationsbefehle und -parameter
/i
Bezeichnung Beschreibung
FINS_COMMS Sendet FINS-Speicherlese- und Speicherschreibbefehle an eine
bestimmte FINS-Servereinheit.
HLM_COMMAND Führt einen spezifischen Host-Link-Befehl an den Slave aus.
HLM_READ Liest Daten aus dem Host-Link-Slave zum VR- oder
TABLE-Variablen-Array.
HLM_STATUS Stellt den Zustand des letzten Host-Link-Masterbefehls dar.
HLM_TIMEOUT Definiert die Host Link-Master-Zeitspanne für die
Zeitüberschreitung.
HLM_WRITE Schreibt Daten aus dem VR- oder TABLE-Variablen-Array
Revision 3.0
HLS_NODE Definiert die Slave-Einheitennummer für das Host-Link
SETCOM Stellt die serielle Kommunikation ein.
zum Host-Link-Slave.
Slave-Protokoll.
3.1.4 Konstanten
/i
Bezeichnung Beschreibung FALSE Ist gleich dem numerischen Wert 0. OFF Ist gleich dem numerischen Wert 0. ON Ist gleich dem numerischen Wert 1. PI Ist gleich dem numerischen Wert 3,1416. TRUE Ist gleich dem numerischen Wert –1.
3.1.5 E/A-Befehle, -funktionen und -parameter
/i
Bezeichnung Beschreibung
GET Wartet auf die Ankunft eines einzelnen Zeichens und ordnet
den ASCII-Code des Zeichens einer Variablen zu.
IN Gibt den Wert digitaler Eingänge zurück.
INDEVICE Der Parameter definiert das Standard-Eingabegerät.
INPUT Wartet auf den Empfang einer Zeichenkette und ordnet
den numerischen Wert einer Variablen zu.
KEY Gibt TRUE oder FALSE zurück, je nachdem, ob ein Zeichen
empfangen wurde.
LINPUT Wartet auf eine Zeichenkette und überträgt sie in VR-Variablen.
OP Stellt einen oder mehrere Ausgänge ein oder gibt den Zustand
der ersten 24 Ausgänge zurück.
OUTDEVICE Definiert das Standard-Ausgabegerät.
PRINT Gibt eine Zeichenserie an eine serielle Schnittstelle aus.
PSWITCH Schaltet einen Ausgang ein, wenn eine vordefinierte Position
erreicht ist und schaltet ihn aus, wenn eine zweite Position
erreicht ist.
PROGRAMMIERHANDBUCH 36
BASIC-Befehle
3.1.6 Mathematische Funktionen und Operanden
/i
Bezeichnung Beschreibung
+ (ADDITION) Addiert zwei Ausdrücke.
– (SUBTRAKTION) Subtrahiert zwei Ausdrücke.
* (MULTIPLIKATION) Multipliziert zwei Ausdrücke.
/ (DIVISION) Dividiert zwei Ausdrücke.
^ (POTENZ) Überträgt die Potenz eines Ausdrucks auf den anderen Ausdruck.
= (IST GLEICH) Überprüft zwei Ausdrücke, um zu ermitteln, ob sie gleich sind.
= (ZUORDNUNG) Ordnet einen Ausdruck einer Variablen zu.
<> (IST UNGLEICH) Überprüft zwei Ausdrücke, um zu ermitteln, ob sie ungleich sind.
> (IST GRÖßER ALS) Überprüft zwei Ausdrücke, um zu ermitteln, ob der Ausdruck auf
der linken Seite größer ist als der Ausdruck auf der rechten Seite.
>= (IST GRÖßER ODER GLEICH)
< (IST KLEINER ALS) Überprüft zwei Ausdrücke, um zu ermitteln, ob der Ausdruck auf
<= (IST KLEINER ODER GLEICH)
ABS Gibt den Absolutwert eines Ausdrucks zurück.
ACOS Gibt den Arkuskosinus eines Ausdrucks zurück.
AND Führt eine UND-Verknüpfung bei übereinstimmenden
ASIN Gibt den Arkussinus eines Ausdrucks zurück.
ATAN Gibt den Arkustangens eines Ausdrucks zurück.
ATAN 2 Gibt den Arkustangens der komplexen Zahl zurück, die
Revision 3.0
COS Gibt den Kosinus eines Ausdrucks zurück.
EXP Gibt den Exponentialwert eines Ausdrucks zurück.
Überprüft zwei Ausdrücke, um zu ermitteln, ob der Ausdruck auf der linken Seite größer als oder gleich der/dem Ausdruck auf der rechten Seite ist.
der linken Seite kleiner ist als der Ausdruck auf der rechten Seite.
Überprüft zwei Ausdrücke, um zu ermitteln, ob der Ausdruck auf der linken Seite kleiner als oder gleich der/dem Ausdruck auf der rechten Seite ist.
Bits der Integer-Teile von zwei Ausdrücken durch.
durch zwei Ausdrücke erzeugt wird und ungleich Null ist.
Bezeichnung Beschreibung
FRAC Gibt den Bruchteil eines Ausdrucks zurück.
IEEE_IN Gibt Gleitkommazahlen im Format IEEE zurück, dargestellt
durch vier Byte.
IEEE_OUT Gibt ein einzelnes Byte zurück, das aus der Gleitkommazahl
im Format IEEE extrahiert ist.
INT Gibt den Integer-Teil eines Ausdrucks zurück.
LN Gibt den natürlichen Logarithmus eines Ausdrucks zurück.
MOD Gibt den Modulus von zwei Ausdrücken zurück.
NOT Führt eine Negation bei übereinstimmenden Bits des
Integer-Teils von zwei Ausdrücken durch.
OR Führt eine ODER-Verknüpfung zwischen übereinstimmenden
Bits der Integer-Teile von zwei Ausdrücken durch.
SGN Gibt das Vorzeichen eines Ausdrucks zurück.
SIN Gibt den Sinus eines Ausdrucks zurück.
SQR Gibt die Quadratwurzel eines Ausdrucks zurück.
TAN Gibt den Tangens eines Ausdrucks zurück.
XOR Führt eine XOR-Verknüpfung zwischen übereinstimmenden
Bits der Integer-Teile von zwei Ausdrücken durch.
3.1.7 Programmbefehle
/i
Bezeichnung Beschreibung
' (KOMMENTARFELD) Legt fest, dass eine Zeile nicht ausgeführt wird.
: (ANWEISUNGS­TRENNZEICHEN)
AUTORUN Startet alle Programme, die beim Hochfahren ausgeführt
COMPILE Kompiliert das aktuelle Programm.
COPY Kopiert ein im Motion-Controller bestehendes Programm
Erlaubt mehr Anweisungen in einer Zeile.
werden sollen.
zu einem neuen Programm.
PROGRAMMIERHANDBUCH 37
BASIC-Befehle
Bezeichnung Beschreibung
DEL Löscht ein Programm aus dem Motion-Controller.
DIR Zeigt eine Liste von Programmen im Motion-Controller unter
Angabe von Größe und RUNTYPE am Standardausgang an.
EDIT Erlaubt die Modifizierung eines Programms über ein
VT100-Terminal.
EPROM Speichert ein Programm im Flash-Speicher.
LIST Druckt das Programm auf dem Standard-Ausgabegerät aus.
NEW Löscht alle Zeilen eines Programms im Motion-Controller.
PROCESS Gibt den Ablaufzustand und die Task-Nummer für jeden
aktuellen Task zurück.
RENAME Ändert den Namen eines Programms im Motion-Controller.
RUN Führt ein Programm aus.
RUNTYPE Ermittelt, ob ein Programm beim Hochfahren ausgeführt wird
und in welchem Task es laufen soll.
SELECT Spezifiziert das aktuelle Programm.
STEPLINE Führt eine einzelne Zeile in einem Programm aus.
STOP Stoppt die Programmausführung.
TROFF Hebt eine Aufzeichnung bei der aktuellen Zeile auf und nimmt
die normale Programmausführung wieder auf.
TRON Erzeugt einen Haltepunkt in einem Programm.
3.1.8 Programmsteuerungsbefehle
/i
Bezeichnung Beschreibung
FOR..TO..STEP..NEXT Eine Schleife erlaubt es, ein Programmsegment mit
ansteigender/absteigender Variable zu wiederholen.
GOSUB..RETURN Springt zu einer Subroutine in der Zeile hinter dem Label.
Die Programmausführung kehrt zur nächsten Anweisung
Revision 3.0
GOTO Springt zu der Zeile, die das Label enthält.
zurück, wenn ein „RETURN“ auf Seite 132 gegeben wird.
Bezeichnung Beschreibung
IF..THEN..ELSE..ENDIF Steuert den Programmablauf basierend auf den Ergebnissen
der Bedingung.
ON.. GOSUB oder ON.. GOTO
REPEAT..UNTIL Die Schleife erlaubt es, das Programmsegment zu wiederholen,
WHILE..WEND Die Schleife erlaubt es, das Programmsegment zu wiederholen,
Ermöglicht einen bedingten Sprung zu einem von mehreren
Labels.
bis die Bedingung „TRUE“ auf Seite 146 wird.
bis die Bedingung FALSE wird.
3.1.9 Slot-Parameter und -modifikatoren
/i
Bezeichnung Beschreibung
COMMSTYPE Enthält den Baugruppentyp in einem Controller-Slot.
FPGA_VERSION Gibt mit Baugruppen_nummer die FPGA-Version in einem
Controller-System zurück.
SLOT Ist ein Modifikator, der die Slot-Nummer der Baugruppe
spezifiziert.
3.1.10 Systembefehle und -funktionen
/i
Bezeichnung Beschreibung
$ (HEXADEZIMALE EINGABE)
AXIS Stellt die Achse für einen Befehl, das Lesen eines
BASICERROR Wird verwendet, um eine bestimmte Routine zu starten,
CLEAR Löscht alle globalen Variablen und die lokalen Variablen
CLEAR_BIT Löscht ein Bit einer VR-Variablen.
CLEAR_PARAMS Setzt alle im Flash-EPROM gespeicherten Parameter
Ordnet einer Variablen eine Hexadezimalzahl zu.
Achsenparameters oder die Zuordnung zu einer
bestimmten Achse ein.
wenn ein Fehler in einem BASIC-Befehl auftritt.
des aktuellen Tasks.
und Variablen auf ihre Standardwerte zurück.
PROGRAMMIERHANDBUCH 38
BASIC-Befehle
Bezeichnung Beschreibung
CONSTANT Legt eine Konstante zur Verwendung in einem
BASIC-Programm fest.
DATE$ Druckt das aktuelle Datum als Zeichenkette.
DAY$ Druckt den aktuellen Tag als Zeichenkette.
DEVICENET Konfiguriert die TJ1-DRT (DeviceNet-Slave-Baugruppe) für
den Datenaustausch oder gibt den Datenaustausch-Zustand der TJ1-DRT zurück.
ETHERNET Liest und setzt verschiedene Parameter der TJ1-MC__
Ethernet-Schnittstelle.
EX Setzt den Controller zurück.
FLAG Setzt und liest eine Bank von 32 Bit.
FLAGS Liest und setzt FLAGS als Block.
FREE Gibt die Größe des verfügbaren Speichers zurück.
GLOBAL Legt einen Referenzwert für eine der VR-Variablen fest.
HALT Stoppt die Ausführung aller aktuell laufenden Programme.
INITIALISE Setzt alle Achsen und Parameter auf ihre Standardwerte zurück.
INVERT_IN Kehrt die Eingangskanäle 0–31 in der Software um.
INVERTER_COMMAND Liest E/A und löscht Alarme des Frequenzumrichters.
INVERTER_READ Liest Parameter, Alarme, Drehzahl- und Drehmomentsollwerte
des Frequenzumrichters.
INVERTER_WRITE Schreibt Parameter, Alarme, Drehzahl- und Drehmomentsollwerte
des Frequenzumrichters.
LIST_GLOBAL Zeigt alle GLOBAL- und CONSTANT-Variablen an.
LOCK Verhindert, dass Programme angezeigt oder modifiziert werden.
PROFIBUS Konfiguriert die TJ1-PRT (PROFIBUS-DP-Slave-Baugruppe)
zum Austausch von E/A-Daten mit dem Master und gibt den Zustand der TJ1-PRT zurück.
READ_BIT Gibt den Wert des spezifizierten Bits der spezifizierten
Revision 3.0
RESET Setzt alle lokalen Variablen eines Tasks zurück.
VR-Variablen zurück.
Bezeichnung Beschreibung
SCOPE Programmiert das System so, dass bei jedem Abtastintervall
automatisch bis zu vier Parameter im TABLE-Variablen-Array
gespeichert werden.
SET_BIT Setzt ein Bit in einer VR-Variablen auf eins.
TAB LE Schreibt und liest Daten zu und aus dem TABLE-Variablen-Array.
TABLEVALUES Gibt eine Werteliste aus dem TABLE-Speicher zurück.
TIME$ Druckt die aktuelle Zeit als Zeichenkette.
TRIGGER Startet einen zuvor gesetzten SCOPE-Befehl.
VR Schreibt und liest Daten zu und aus den globalen (VR-) Variablen.
VRSTRING Kombiniert VR-Speicherwerte, sodass sie als Zeichenkette
gedruckt werden können.
WA Pausiert die Programmausführung für die angegebene Anzahl
an Millisekunden.
WAIT IDLE Setzt die Programmausführung aus, bis die Basisachse ihre
aktuelle Bewegung und eventuelle weitere im Befehlsspeicher
befindliche Bewegungen ausgeführt hat.
WAIT LOADED
WAIT UNTIL Wertet die Bedingung wiederholt aus, bis sie TRUE ist.
Setzt die Programmausführung aus, bis die Basisachse keine
weiteren Bewegungen außer der aktuell ausgeführten Bewegung
mehr im Befehlsspeicher hat.
3.1.11 Systemparameter
/i
Bezeichnung Beschreibung AIN Speichert den Wert des analogen Eingangskanals. AOUT Speichert den Wert des analogen Ausgangskanals. BATTERY_LOW Gibt den aktuellen Zustand der Batterie zurück. CHECKSUM Enthält die Prüfsumme für die Programme im RAM-Speicher. COMMSERROR Enthält alle Kommunikationsfehler, die seit der letzten
Initialisierung aufgetreten sind.
CONTROL Enthält den an das System angeschlossenen Typ des TJ1-MC__. D_ZONE_MAX Steuert den DAC-Ausgang in Verbindung mit dem
Schleppfehler-Wert.
PROGRAMMIERHANDBUCH 39
BASIC-Befehle
Bezeichnung Beschreibung D_ZONE_MIN Steuert den DAC-Ausgang in Verbindung mit dem
Schleppfehler-Wert.
DATE Gibt das aktuelle Datum der Echtzeit-Uhr zurück oder
stellt dieses ein.
DAY Gibt den aktuellen Tag zurück oder stellt diesen ein. DISPLAY Legt fest, welche E/A-Kanäle durch die LEDs auf der
Vorderseite angezeigt werden.
ERROR_AXIS Enthält die Nummer der Achse, die den Bewegungsfehler
verursacht hat.
FRAME Spezifiziert den Operationsrahmen für Rahmentransformationen. LAST_AXIS Enthält die Nummer der letzten Achse, die vom System
bearbeitet wurde.
MOTION_ERROR Enthält einen Fehlermerker für Achsenbewegungsfehler. NAIO Gibt die Anzahl der analogen Kanäle zurück, die an den
MECHATROLINK-II-Bus angeschlossen sind.
NEG_OFFSET Wendet einen negativen Offset auf das DAC-Signal vom
Servo-Regelkreis an.
NIO Enthält die Anzahl der Ein- und Ausgänge, die an das System
angeschlossen sind.
POWER_UP Ermittelt, ob Programme beim Hochfahren oder Zurücksetzen
aus dem Flash-EPROM gelesen werden sollen.
POS_OFFSET Wendet einen positiven Offset auf das DAC-Signal vom
Servo-Regelkreis an.
SCOPE_POS Enthält die aktuelleTABLE-Position, an der der SCOPE-Befehl
zurzeit den ersten Parameter speichert.
SERVO_PERIOD Stellt den Servozyklus-Zeitraum des TJ1-MC__ ein. SYSTEM_ERROR Enthält die Systemfehler seit der letzten Initialisierung. TIME Gibt die aktuelle Zeit der Echtzeit-Uhr zurück. TSIZE Gibt die aktuelle Größe der zurzeit definierten Tabelle zurück. VERSION Gibt die Versionsnummer der Controller-Firmware zurück.
Revision 3.0
WDOG Software-Schalter, der die Servotreiber aktiviert.
3.1.12 Task-Befehle und -parameter
/i
Bezeichnung Beschreibung ERROR_LINE Enthält die Nummer der Zeile, die den letzten
BASIC-Programmfehler verursacht hat.
PMOVE Enthält den Zustand der Task- Befehlsspeicher. PROC Erlaubt den Zugriff auf einen Prozessparameter aus einem
bestimmten Prozess.
PROC_STATUS Gibt den Zustand des spezifizierten Prozesses zurück. PROCNUMBER Enthält die Nummer des Tasks, in dem das aktuelle ausgewählte
Programm läuft. RUN_ERROR Enthält die Nummer des letzten BASIC-Fehlers, der im
angegebenen Task aufgetreten ist.
TICKS Enthält den aktuellen Zähler des Task-Taktimpulses.
PROGRAMMIERHANDBUCH 40
BASIC-Befehle

3.2 Alle BASIC-Befehle

3.2.1 + (Addition)
/i
Typ Mathematische Funktion
Syntax ausdruck1 + ausdruck2
Beschreibung Der Operator + addiert zwei Ausdrücke.
Argumente ausdruck1
Jeder gültige BASIC-Ausdruck.
ausdruck2
Jeder gültige BASIC-Ausdruck.
Beispiel Ergebnis = 4 + 3
Ordnet der Variablen Ergebnis den Wert 7 zu.
Siehe auch
3.2.2 – (Subtraktion)
/i
Typ Mathematische Funktion
Syntax ausdruck1 – ausdruck2
Beschreibung Der Operator – subtrahiert ausdruck2 von ausdruck1.
Argumente ausdruck1
Jeder gültige BASIC-Ausdruck.
ausdruck2
Jeder gültige BASIC-Ausdruck.
Beispiel Ergebnis = 10 – 2
Ordnet der Variablen Ergebnis den Wert 8 zu.
Siehe auch
3.2.3 * (Multiplikation)
/i
Typ Mathematische Funktion
Syntax ausdruck1 * ausdruck2
Beschreibung Der Operator * multipliziert zwei Ausdrücke.
Argumente ausdruck1
Jeder gültige BASIC-Ausdruck.
ausdruck2
Jeder gültige BASIC-Ausdruck.
Beispiel Ergebnis = 3 * 7
Ordnet der Variablen Ergebnis den Wert 21 zu.
Siehe auch
3.2.4 / (Division)
/i
Typ Mathematische Funktion
Syntax ausdruck1/ausdruck2
Beschreibung Der Operator/dividiert ausdruck1 durch ausdruck2.
Argumente ausdruck1
Jeder gültige BASIC-Ausdruck.
ausdruck2
Jeder gültige BASIC-Ausdruck.
Beispiel Ergebnis = 11/4
Ordnet der Variablen Ergebnis den Wert 2,75 zu.
Siehe auch
Revision 3.0
PROGRAMMIERHANDBUCH 41
BASIC-Befehle
3.2.5 ^ (Potenz)
/i
Typ Mathematische Funktion
Syntax ausdruck_1 ^ ausdruck_2
Beschreibung Der Operator ^ potenziert die Basis ausdruck_1 mit dem Exponenten
ausdruck_2. Bei dieser Operation werden Gleitkomma-Algorithmen verwendet, wodurch kleine Abweichungen bei Integer-Berechnungen auftreten können.
Argumente ausdruck_1
Ein BASIC-Ausdruck.
ausdruck_2
Ein BASIC-Ausdruck.
Beispiel Ergebnis = 2 ^ 5
Ordnet der Variablen Ergebnis den Wert 32 zu.
Siehe auch
3.2.6 = (Ist gleich)
/i
Typ Mathematische Funktion
Syntax ausdruck1 = ausdruck2
Beschreibung Der Operator = gibt TRUE zurück, wenn ausdruck1 gleich ausdruck2 ist,
andernfalls gibt er FALSE zurück.
Argumente ausdruck1
Jeder gültige BASIC-Ausdruck.
ausdruck2
Jeder gültige BASIC-Ausdruck.
Beispiel IF a = 10 THEN GOTO label1
Wenn die Variable a einen Wert enthält, der gleich 10 ist, fährt die Programmausführung bei dem Label label1 fort. Andernfalls fährt
Revision 3.0
Siehe auch
die Programmausführung mit der nächsten Anweisung fort.
3.2.7 = (Zuordnung)
/i
Typ Mathematische Funktion
Syntax variable = ausdruck
Beschreibung Der Operator = ordnet den Wert des Ausdrucks der Variablen zu.
Argumente variable
Ein Variablenname.
ausdruck
Jeder gültige BASIC-Ausdruck.
Beispiel var = 18
Ordnet der Variablen var den Wert 18 zu.
Siehe auch
3.2.8 <> (Ist ungleich)
/i
Typ Mathematische Funktion
Syntax ausdruck1 <> ausdruck2
Beschreibung Der Operator <> gibt TRUE zurück, wenn ausdruck1 ungleich ausdruck2
ist, andernfalls gibt er FALSE zurück.
Argumente ausdruck1
Jeder gültige BASIC-Ausdruck.
ausdruck2
Jeder gültige BASIC-Ausdruck.
Beispiel IF a <> 10 THEN GOTO label1
Wenn die Variable a einen Wert enthält, der ungleich 10 ist, fährt die Programmausführung bei dem Label label1 fort. Andernfalls fährt die Programmausführung mit der nächsten Anweisung fort.
Siehe auch
PROGRAMMIERHANDBUCH 42
BASIC-Befehle
3.2.9 > (Ist größer als)
/i
Typ Mathematische Funktion
Syntax ausdruck1 > ausdruck2
Beschreibung Der Operator > gibt TRUE zurück, wenn ausdruck1 größer als ausdruck2
ist, andernfalls gibt er FALSE zurück.
Argumente ausdruck1
Jeder gültige BASIC-Ausdruck.
ausdruck2
Jeder gültige BASIC-Ausdruck.
Beispiel IF a > 10 THEN GOTO label1
Wenn die Variable a einen Wert enthält, der größer als 10 ist, fährt die Programmausführung bei dem Label label1 fort. Andernfalls fährt die Programmausführung mit der nächsten Anweisung fort.
Siehe auch
3.2.10 >= (Ist größer oder gleich)
/i
Typ Mathematische Funktion
3.2.11 < (Ist kleiner als)
/i
Typ Mathematische Funktion
Syntax ausdruck1 < ausdruck2
Beschreibung Der Operator < gibt TRUE zurück, wenn ausdruck1 kleiner als ausdruck2
ist, andernfalls gibt er FALSE zurück.
Argumente ausdruck1
Jeder gültige BASIC-Ausdruck.
ausdruck2
Jeder gültige BASIC-Ausdruck.
Beispiel IF a < 10 THEN GOTO label1
Wenn die Variable a einen Wert enthält, der kleiner als 10 ist, fährt die Programmausführung bei dem Label label1 fort. Andernfalls fährt die Programmausführung mit der nächsten Anweisung fort.
Siehe auch
3.2.12 <= (Ist kleiner oder gleich)
/i
Typ Mathematische Funktion
Syntax ausdruck1 >= ausdruck2
Beschreibung Der Operator >= gibt TRUE zurück, wenn ausdruck1 größer oder gleich
ausdruck2 ist, andernfalls gibt er FALSE zurück.
Argumente ausdruck1
Jeder gültige BASIC-Ausdruck.
ausdruck2
Jeder gültige BASIC-Ausdruck.
Beispiel IF a >= 10 THEN GOTO label1
Wenn die Variable a einen Wert enthält, der größer oder gleich 10 ist, fährt die Programmausführung bei dem Label label1 fort. Andernfalls fährt die
Revision 3.0
Siehe auch
Programmausführung mit der nächsten Anweisung fort.
Syntax ausdruck1 <= ausdruck2
Beschreibung Der Operator <= gibt TRUE zurück, wenn ausdruck1 kleiner oder gleich
ausdruck2 ist, andernfalls gibt er FALSE zurück.
Argumente ausdruck1
Jeder gültige BASIC-Ausdruck.
ausdruck2
Jeder gültige BASIC-Ausdruck.
Beispiel IF a <= 10 THEN GOTO label1
Wenn die Variable a einen Wert enthält, der kleiner oder gleich 10 ist, fährt die Programmausführung bei dem Label label1 fort. Andernfalls fährt die Programmausführung mit der nächsten Anweisung fort.
Siehe auch
PROGRAMMIERHANDBUCH 43
BASIC-Befehle
3.2.13 $ (Hexadezimale Eingabe)
/i
Typ Systembefehl
Syntax $hex_num
Beschreibung Der Befehl $ macht die nachfolgende Zahl zu einer Hexadezimalzahl.
Argumente hex_num
Eine Hexadezimalzahl (bestehend aus den Zeichen 0–9 und A–F). hex_num gilt für den Bereich von 0 bis FFFFFF.
Beispiel >>TABLE(0,$F,$ABCD)
>>TABLE(0),TABLE(1) drucken
15.0000 43981.0000
Siehe auch HEX (PRINT)
3.2.14 ' (Kommentarfeld)
/i
Typ Programmbefehl
Syntax '
Beschreibung ' kennzeichnet alle folgenden Zeichen in einer Zeile als Kommentare und
nicht als Programmcode. Ein Kommentar wird nicht ausgeführt, wenn das Programm läuft. ' kann am Anfang einer Zeile oder nach einer gültigen Anweisung gesetzt werden.
Argumente
Beispiel ' Diese Zeile wird nicht gedruckt
PRINT "Start"
Siehe auch
3.2.15 : (Anweisungs-Trennzeichen)
/i
Typ Programmbefehl
Syntax :
Beschreibung Das Anweisungs-Trennzeichen : trennt mehrere BASIC-Anweisungen in einer
Zeile. Es kann in der Befehlszeile und in Programmen verwendet werden.
Argumente
Beispiel PRINT "DIESE ZEILE": GET niedrig : PRINT "bewirkt drei Dinge"
Siehe auch
3.2.16 #
/i
Typ Sonderzeichen
Syntax #
Beschreibung Das Symbol # wird verwendet, um einen Kommunikationskanal zu
spezifizieren, der für serielle Eingangs-/Ausgangsbefehle benutzt wird. Hinweis: Kommunikationskanäle, die größer als 3 sind, werden nur benutzt, wenn die Trajexia Tools-Software ausgeführt wird.
Argumente
Beispiel PRINT #1,"RS232"
PRINT #2,"Port 2"
Beispiel IF KEY #1 THEN GET #1,k
Überprüft die Tastatur an der RS232-Schnittstelle
Siehe auch
Revision 3.0
PROGRAMMIERHANDBUCH 44
BASIC-Befehle
3.2.17 ABS
/i
Typ Mathematische Funktion
Syntax ABS(ausdruck)
Beschreibung Die Funktion ABS gibt den Absolutwert eines Ausdrucks zurück.
Argumente ausdruck
Jeder gültige BASIC-Ausdruck.
Beispiel IF ABS(A) > 100 THEN PRINT "A liegt außerhalb des Bereichs von –
100 ... 100"
Siehe auch
3.2.18 ACC
/i
Typ Achsenbefehl
Syntax ACC(rate)
Beschreibung Stellt gleichzeitig die Beschleunigung und Verzögerung ein.
Dieser Befehl bietet eine schnelle Methode, um gleichzeitig ACCEL und DECEL einzustellen. Es wird empfohlen, die Beschleunigungs- und Verzögerungsraten mit den Achsenparametern ACCEL und DECEL einzustellen.
Argumente rate
Die Beschleunigungsrate in Einheiten/s dem Achsenparameter UNITS definieren.
2
. Sie können die Einheiten mit
3.2.19 ACCEL
/i
Typ Achsenparameter
Syntax ACCEL = ausdruck
Beschreibung Der Achsenparameter ACCEL enthält die Beschleunigungsrate der Achse.
Die Rate wird in Einheiten/s Wert einschließlich null annehmen.
Argumente
Beispiel BASE(0)
ACCEL = 100 ' Beschleunigungsrate einstellen PRINT "Beschleunigungsrate: ";ACCEL;" mm/s/s" ACCEL AXIS(2) = 100 ' Stellt die Beschleunigungsrate für Achse (2) ein
Siehe auch ACCEL, DECEL, UNITS
2
eingestellt. Der Parameter kann jeden positiven
3.2.20 ACOS
/i
Typ Mathematische Funktion
Syntax ACOS(ausdruck)
Beschreibung Die Funktion ACOS gibt den Arkuskosinus des Ausdrucks zurück. Der Wert
des Ausdrucks muss zwischen –1 und 1 liegen. Das Ergebnis in rad liegt zwischen 0 und Pi. Eingabewerte außerhalb des Bereichs geben 0 zurück.
Argumente ausdruck
Jeder gültige BASIC-Ausdruck.
Beispiel ACC(100)
Stellt ACCEL und DECEL auf 100 Einheiten/s
Siehe auch ACCEL, DECEL, UNITS
Revision 3.0
2
ein.
Beispiel >> PRINT ACOS(–1)
3.1416
Siehe auch
PROGRAMMIERHANDBUCH 45
BASIC-Befehle
3.2.21 ADD_DAC
/i
Typ Achsenbefehl
Syntax ADD_DAC(achse)
Beschreibung Der Befehl ADD_DAC kann zur dualen Regelung mit Rückführung
verwendet werden, weil er ermöglicht, dass ein zweiter Drehgeber an der Servoachse eingesetzt wird. Der Befehl erlaubt es, aus dem Ausgang von zwei Servo-Regelkreisen die Summe zu bilden, um den Drehzahlsollwert für den Servotreiber zu ermitteln. Dieser Befehl wird normalerweise in Anwendungen wie z. B. einem Walzenvorschub verwendet, wo ein zweiter Drehgeber erforderlich wäre, um den Schlupf auszugleichen. Voraussetzung für die Verwendung von ADD_DAC ist, dass die zwei Achsen mit Rückführung mit einer gemeinsamen Achse verbunden sind, an der die erforderlichen Bewegungen ausgeführt werden. Normalerweise wäre dies auch möglich, indem die Bewegungen an einer der beiden Achsen mit ADDAX oder CONNECT ausgeführt werden, um eine entsprechende Sollposition (DPOS) für beide Achsen zu erreichen. Die Servo-Regelkreisverstärkung muss für beide Achsen eingestellt werden. Die Servo-Regelkreisausgänge werden addiert und bilden den Drehzahlsollwert-Ausgang der Servoachse. Mit ADD_DAC(–1) wird die Verknüpfung aufgehoben. ADD_DAC wirkt sich auf die Basisachse aus (Einstellung mit BASE), wenn nicht AXIS verwendet wurde, um eine Achse temporär zu spezifizieren. Standard-Basisachse Hinweis:
1. Bitte beachten Sie, dass die Regelkreisverstärkung für beide Achsen sorgfältig bestimmt werden muss. Da unterschiedliche Drehgeber mit unterschiedlichen Auflösungen eingesetzt werden, sind die Verstärkungen nicht identisch.
2. Stellen Sie den Parameter OUTLIMIT für beide synchronisierten Achsen auf denselben Wert ein.
Argumente Achse
Die Achse, von der die Summe des Drehzahlsollwertausgangs für die Basisachse gebildet wird. Setzen Sie das Argument auf –1, um die Verknüpfung aufzuheben und zum normalen Betrieb zurückzukehren.
Revision 3.0
Beispiel BASE(0)
OUTLIMIT AXIS(1) = 15000 ADD_DAC(1) AXIS(0) ADDAX(0) AXIS(1) WDOG = ON SERVO AXIS(0) = ON SERVO AXIS(1) = ON ' Fuehrt Bewegung an Achse 0 aus
Dieses Beispiel zeigt die Steuerung des Servotreibers Achse 0 mit dualer Regelung mit Rückführung über Achse 0 und Achse 1.
Beispiel BASE(0)
OUTLIMIT AXIS(1) = 15000 ADD_DAC(1) AXIS(0) ADDAX(0) AXIS(1) WDOG = ON SERVO = OFF S_REF = 0 BASE(1) SERVO = ON ' Fuehrt Bewegung an Achse 1 aus
Dieses Beispiel zeigt die Steuerung des Servotreibers Achse 0 nur mit Drehgeber-Rückführung an Achse 1.
Siehe auch AXIS, ADDAX, OUTLIMIT
3.2.22 ADDAX
/i
Typ Achsenbefehl
Syntax ADDAX(achse)
Beschreibung Der Befehl ADDAX übernimmt die Sollpositionsänderungen von der
überlagernden Achse, die im Achsen-Argument spezifiziert sind und addiert sie zu jeder Bewegung, die an der Achse ausgeführt wird, an die der Befehl ausgegeben wird. Wenn der Befehl ADDAX gegeben wurde, bleibt die Verknüpfung zwischen den zwei Achsen bestehen, bis sie unterbrochen wird. Mit ADDAX(–1) wird die Achsenverknüpfung aufgehoben. ADDAX ermöglicht es, dass eine Achse die Bewegungen ausführt, die für zwei zusammenaddierte Achsen spezifiziert sind. Kombinationen von mehr als zwei Achsen sind möglich, indem ADDAX auch auf die überlagernde Achse angewendet wird.
ADDAX wirkt sich auf die Basisachse aus (Einstellung mit BASE), wenn nicht AXIS verwendet wurde, um eine Achse temporär zu spezifizieren.
PROGRAMMIERHANDBUCH 46
BASIC-Befehle
Argumente Achse
Die Achse, die als überlagernde Achse eingestellt werden soll. Setzen Sie das Argument auf –1, um die Verknüpfung aufzuheben und zum normalen Betrieb zurückzukehren.
Beispiel FORWARD ' Startet eine kontinuierliche Bewegung
ADDAX(2) ' Fügt Achse 2 zur Korrektur hinzu REPEAT GOSUB offset_lesen ' Anzuwendenden Offset einlesen MOVE(offset) AXIS(2) UNTIL IN(2) = ON ' Bis Korrektur erfolgt ist
Teile werden auf ein Laufband gelegt und an anderer Stelle aufgenommen. Eine Erkennungssystem meldet, ob sich ein Teil vor oder hinter seiner Nennposition befindet und wie weit es davon entfernt ist. In diesem Beispiel wird Achse 0 als Basisachse genommen; sie führt eine kontinuierliche Vorwärtsbewegung aus. Eine überlagernde Bewegung an Achse 2 dient dazu, Offsets gemäß dem Offset anzuwenden, der in einer Subroutine berechnet wurde.
Siehe auch AXIS, OUTLIMIT
VORSICHT Bitte beachten Sie, dass mehrere ADDAX -Befehle in einem System eine gefährliche Schleife bilden können, z. B. wenn eine Achse mit einer anderen synchronisiert ist und umgekehrt. Dies kann Instabilität im System verursachen.
3.2.23 ADDAX_AXIS
/i
Typ Achsenparameter (Nur-Lesen)
Syntax ADDAX_AXIS
Beschreibung Der Achsenparameter ADDAX_AXIS gibt die Anzahl der Achsen zurück, mit
denen die Basisachse zurzeit über ADDAX synchronisiert ist.
Argumente
Beispiel >>BASE(0)
Revision 3.0
>> ADDAX(2) >> PRINT ADDAX_AXIS
2.0000
3.2.24 AIN
/i
Typ Systemparameter
Syntax AIN(analoger_kanal)
Beschreibung +/–10 V analoge Eingangskanäle werden bereitgestellt, indem
JEPMC-AN2900-Module an den MECHATROLINK-II-Bus angeschlossen werden. Hinweis: Der Wert des Analogeingangs wird überprüft, um sicherzustellen, dass er über null liegt, auch wenn er immer positiv sein sollte. Dadurch sollen Fehlfunktionen vermieden werden, da Störungen bei den eingehenden Signalen den Wert negativ machen und einen Fehler verursachen könnten, weil eine negative Drehzahl für keine Bewegung gültig ist, außer für FORWARD oder REVERSE.
Argumente analoger_kanal
Analoger Eingangskanal Nummer 0,31
Beispiel MOVE(–5000)
REPEAT a = AIN(1) IF a<0 THEN a = 0 SPEED = a * 0,25 UNTIL MTYPE = 0
Die Geschwindigkeit einer Produktionslinie richtet sich nach der Geschwindigkeit, mit der das Material auf das Band geführt wird. Das Material wird über eine Lazy-Loop-Anordnung zugeführt, die mit einem Ultraschall­Höhenabtastgerät ausgestattet ist. Der Ausgang des Ultraschallsensors liegt im Bereich von 0 V bis 4 V; der Ausgang ist bei 4 V, wenn der Regelkreis am Maximum ist.
Siehe auch
3.2.25 AND
/i
Typ Mathematische Operation
Syntax ausdruck1 AND ausdruck2
Siehe auch ADDAX, AXIS
PROGRAMMIERHANDBUCH 47
BASIC-Befehle
Beschreibung Der Operator AND führt eine logische UND-Verknüpfung der entsprechenden
Bits der Integer-Teile von zwei gültigen BASIC-Ausdrücken durch. Die logische UND-Verknüpfung zwischen zwei Bits ist wie folgt definiert:
0 AND 0 = 0 0 AND 1 = 0 1 AND 0 = 0 1 AND 1 = 1
Argumente ausdruck1
Jeder gültige BASIC-Ausdruck.
ausdruck2 Jeder gültige BASIC-Ausdruck.
Beispiel VR(0) = 10 AND (2,1 * 9)
Die Klammern werden zuerst berechnet, aber nur der Integer-Teil des Ergebnisses, 18, wird für die AND-Operation benutzt. Deshalb ist der Ausdruck gleich Folgendem:
VR(0) = 10 AND 18 Das AND ist ein Bit-Operator, daher sieht die binäre Gleichung so aus: 01010 AND 10010 = 00010
Deshalb enthält VR(0) den Wert 2.
Beispiel IF MPOS AXIS(0) > 0 AND MPOS AXIS(1) > 0 THEN GOTO Zyklus1
Siehe auch
3.2.26 AOUT
/i
Typ Systemparameter
3.2.27 ASIN
/i
Typ Mathematische Funktion
Syntax ASIN(ausdruck)
Beschreibung Die Funktion ASIN gibt den Arkussinus des Ausdrucks zurück. Das Argument
muss einen Wert zwischen –1 und 1 haben. Das Ergebnis in rad liegt zwischen
-Pi/2 und Pi/2. Eingabewerte außerhalb dieses Bereichs geben 0 zurück.
Argumente ausdruck
Jeder gültige BASIC-Ausdruck.
Beispiel >> PRINT ASIN(–1)
–1.5708
Siehe auch
3.2.28 ATAN
/i
Typ Mathematische Funktion
Syntax ATAN(ausdruck)
Beschreibung Die Funktion ATAN gibt den Arkustangens des Arguments zurück. Ausdruck
kann jeden beliebigen Wert annehmen. Das Ergebnis wird in rad angegeben und liegt zwischen -Pi/2 und Pi/2.
Argumente ausdruck
Jeder gültige BASIC-Ausdruck.
Syntax AOUT(analoger_kanal)
Beschreibung Dieser Befehle stellt den Ausgangswert der +/–10 V analogen
Ausgangskanäle ein, die durch Anschluss von JEPMC-AN2910-Modulen an den MECHATROLINK-II-Bus bereitgestellt werden. Der Einstellbereich ist [–32000, 32000] für den Spannungsbereich [–10 V, 10 V].
Argumente analoger_kanal.
Revision 3.0
Beispiel Kein Beispiel.
Siehe auch
Analoger Ausgangskanal Nummer 0,31
Beispiel >> PRINT ATAN(1)
0.7854
Siehe auch
3.2.29 ATAN2
/i
Typ Mathematische Funktion
Syntax ATAN2(ausdruck1 ,ausdruck2)
PROGRAMMIERHANDBUCH 48
BASIC-Befehle
Beschreibung Die Funktion ATAN2 gibt den Arkustangens der komplexen Zahl ungleich
null (ausdruck2, ausdruck1) zurück, die gleich dem Winkel zwischen einem Punkt mit den Koordinaten (ausdruck1, ausdruck2) und der x-Achse ist. Wenn ausdruck2 >= 0, ist das Ergebnis gleich dem Wert von ATAN(ausdruck1/ausdruck2). Das Ergebnis wird in rad angegeben und liegt zwischen –Pi und Pi.
Argumente ausdruck1
Jeder gültige BASIC-Ausdruck.
ausdruck2 Jeder gültige BASIC-Ausdruck.
Beispiel >> PRINT ATAN2(0,1)
0.0000
Siehe auch
3.2.30 ATYPE
/i
Typ Achsenparameter
Syntax ATYPE = Wert
Beschreibung Der Achsenparameter ATYPE legt den Achsentyp für die Achse fest.
Die gültigen Werte hängen von dem TJ1-Modul ab, an das der Servotreiber angeschlossen ist, der die Achse steuert. Siehe unten stehende Tabelle. Die ATYPE-Parameter werden vom System beim Hochfahren eingestellt. Für Achsen, die über die Servotreiber gesteuert werden, die über einen MECHATROLINK-II-Bus an das System angeschlossen sind, ist der Standardwert für ATYPE 41 (Mechatro Speed). Dies gilt für einen SigmaII Servotreiber. Standardwerte anderer Servotreiber können abweichende Standardwerte haben. Bei Achsen, die von den Servotreibern gesteuert werden, an die über den TJ1-FL02 an das System angeschlossen sind, ist der Standardwert für ATYPE 44 (Flex Achsmodul Servo).
Argumente
Beispiel ATYPE AXIS(1) = 45
Revision 3.0
Siehe auch AXIS
Mit diesem Befehl wird Achse 1 als Flex Achsmodul bzw. Drehgeber­Ausgangsachse eingestellt.
AXIS-Typ ATYPE-Wert Geeignete TJ1-Baugruppe
Virtuell 0 alle
Mechatro Position 40 TJ1-ML__
(MECHATROLINK-II Master-Baugruppe)
Mechatro Drehzahl 41 TJ1-ML__
Mechatro Drehmoment 42 TJ1-ML__
Flex Achsmodul Schrittmotorausgang 43 TJ1-FL02
Flex Achsmodul Servo 44 TJ1-FL02
Flex Achsmodul Drehgeber Aus 45 TJ1-FL02
Flex Achsmodul Absolut Tamagawa 46 TJ1-FL02
Flex Achsmodul Absolut EnDat 47 TJ1-FL02
Flex Achsmodul Absolut SSI 48 TJ1-FL02
3.2.31 AUTORUN
/i
Typ Programmbefehl
Syntax AUTORUN
Beschreibung Der Befehl AUTORUN startet alle Programme, die beim Hochfahren
ausgeführt werden sollen.
Argumente
Beispiel Kein Beispiel.
Siehe auch RUNTYPE
3.2.32 AXIS
/i
Typ Systembefehl
Syntax AXIS(achsen_nummer)
/i
PROGRAMMIERHANDBUCH 49
BASIC-Befehle
Beschreibung Der Modifikator AXIS stellt die Achse für einen einzelnen Bewegungsbefehl
oder einen einzelnen Achsenparameter ein, der von einer bestimmten Achse gelesen oder zu dieser geschrieben wird. AXIS gilt nur für den Befehl oder die Programmzeile, in dem/der er programmiert ist. Verwenden Sie den Befehl BASE, um die Basisachse für alle folgenden Befehlszeilen zu ändern.
Argumente achsen_nummer
Jeder gültige BASIC-Ausdruck, der die Achsennummer spezifiziert.
Beispiel BASE(0)
PRINT VP_SPEED AXIS(2)
Beispiel MOVE(300) AXIS(0)
Beispiel REPDIST AXIS(1) = 100
Siehe auch BASE
3.2.33 AXIS_DISPLAY
/i
Typ Achsenparameter
Syntax AXIS_DISPLAY = Wert
Beschreibung Der Achsenparameter AXIS_DISPLAY ermöglicht die Anzeige verschiedener
Daten durch die LEDs auf der Frontabdeckung des TJ1-FL02. Der Parameter bezieht sich auf zwei gelbe LEDs, die den Achsenzustand anzeigen. Der Standardwert dieses Parameters ist beim Hochfahren für alle Achsen 0. Die gültigen Werte sind in der unten stehenden Tabelle gezeigt.
Argumente
Beispiel AXIS_DISPLAY AXIS(2) = 2
Dieser Befehl zeigt den Zustand von OUT 0 und OUT 1, die Achse 2 zugeordnet sind.
Siehe auch
/i
Wert von AXIS_DISPLAY 0 1 2 3
A0 REG 0 AUX IN OUT 0 ENCODER A
Revision 3.0
A1 REG 1 ENCODER Z OUT 1 ENCODER B
B0 REG 0 AUX IN OUT 0 ENCODER A
B1 REG 1 ENCODER Z OUT 1 ENCODER B
3.2.34 AXIS_ENABLE
/i
Typ Achsenparameter
Syntax AXIS_ENABLE = ON/OFF
Beschreibung Der Achsenparameter AXIS_ENABLE wird dazu verwendet, bestimmte
Achsen unabhängig von anderen Achsen zu aktivieren oder zu deaktivieren. Dieser Parameter kann für jede Achse einzeln auf EIN oder AUS gesetzt werden. Der Standardwert beim Hochfahren ist für alle Achsen EIN. Die Achsen werden aktiviert, wenn beide AXIS_ENABLE für diese Achse auf EIN gesetzt sind und WDOG aktiviert ist. Wird bei MECHATROLINK-II-Achsen die Einstellung für AXIS_ENABLE auf AUS gesetzt, wird der Servotreiberausgang zum Motor deaktiviert. Wird bei „Flex Achsmodul Servo Achse“ die Einstellung für AXIS_ENABLE auf AUS gesetzt, werden beide Spannungsausgänge zwangsweise auf 0 gesetzt. Bei Achsen mit der Einstellung „Flex Achsmodul Schrittmotorausgang“ und „Drehgeber Aus“ wird die Impulserzeugung an den Ausgängen blockiert, wenn AXIS_ENABLE auf AUS gesetzt ist.
Argumente
Beispiel AXIS_ENABLE AXIS(3) = OFF
Dieser Befehl deaktiviert Achse 3 unabhängig von anderen Achsen im System.
Siehe auch AXIS, DISABLE_GROUP
3.2.35 AXISSTATUS
/i
Typ Achsenparameter (Nur-Lesen)
Syntax AXISSTATUS
Beschreibung Der Achsenparameter AXISSTATUS enthält den Achsenzustand.
Die Definitionen für den Achsenparameter AXISSTATUS sind in der unten stehenden Tabelle gezeigt. Der Parameter AXISSTATUS wird zur Behandlung von Bewegungsfehlern der Baugruppe verwendet.
Argumente
Beispiel IF (AXISSTATUS AND 16) > 0 THEN PRINT "In Vorwärts-Grenzwert"
Siehe auch AXIS, ERRORMASK
/i
PROGRAMMIERHANDBUCH 50
BASIC-Befehle
Bit­nummer
0– 1
1 Schleppfehler-Warnung 2 w
2 Kommunikationsfehler Servotreiber 4 a
3 Servotreiber-Alarm 8 m
4 Vorwärts-Grenzwert 16 f
5 Rückwärts-Grenzwert 32 r
6 Nullpunktfahrt 64 d
7 Eingabe Vorschubstopp 128 h
8 Schleppfehler-Grenzwert 256 e
9 Softwaregrenzwert Vorwärts- 512 x
10 Softwaregrenzwert Rückwärts- 1024 y
11 Bewegung abbrechen 2048 c
12 Überdrehzahl Drehgeber- Ausgang 4096 o
Beschreibung Wert Zeichen (wie in Trajexia
Tools verwendet)
3.2.36 B_SPLINE
/i
Typ Achsenbefehl
Argumente Typ
Reserviert für zukünftige Erweiterung. Stets auf 1 setzen.
Daten_ein
Position in TABLE, an der das Quellprofil gespeichert ist.
Anzahl_ein
Anzahl von Punkten im Quellprofil.
Daten_aus
Position in TABLE, an der das erweiterte Profil gespeichert werden soll.
Erweiterungs_verhältnis
Das Erweiterungsverhältnis. Wenn z. B. das Quellprofil 100 Punkte umfasst und Erweiterungs_verhältnis auf 10 gesetzt wird, umfasst das Ergebnisprofil 1000 Punkte (100 * 10).
Beispiel Kein Beispiel.
Siehe auch
3.2.37 BASE
/i
Typ Achsenbefehl
Syntax BASE
BASE(achse_1 [ ,achse_2 [ , achse_3 [ , achse_4 [ , achse_...]]]]) BA BA(achse_1 [ ,achse_2 [ , achse_3 [ , achse_4 [ , achse_...]]]])
Syntax B_SPLINE(typ, daten_ein, anzahl_ein, daten_aus, #erweiterung)
Beschreibung Erweitert ein bestehendes Profil, das im TABLE-Speicher gespeichert ist,
mit der mathematischen B-Spline-Funktion um einen konfigurierbaren Erweiterungsfaktor zu einem anderen Bereich in der TABLE. Dieser Befehl wird idealerweise verwendet, wenn das Quellprofil CAM zu grob ist und in eine größere Anzahl von Punkten extrapoliert werden muss.
Revision 3.0
PROGRAMMIERHANDBUCH 51
BASIC-Befehle
Beschreibung Der Befehl BASE dient dazu, die Basisachse oder eine spezifizierte
Achsenfolge-Gruppe einzustellen. Alle nachfolgenden Bewegungsbefehle und Achsenparameter wirken sich auf die Basisachse oder die spezifizierte Achsengruppe aus, wenn nicht der Befehl AXIS gegeben wird, um eine Achse temporär zu spezifizieren. Die Basisachse gilt, bis sie wieder mit BASE geändert wird. Jeder BASIC-Prozess kann seine eigene Achsengruppe haben, und für jedes Programm kann unabhängig eine eigene Achsengruppe eingestellt werden. Verwenden Sie den Modifikator PROC, um auf Parameter für einen Task zuzugreifen. Die Reihenfolge der BASE-Gruppierung kann festgelegt werden, indem die Abfolge der Achsen ausdrücklich zugeordnet wird. Diese Reihenfolge wird zu Interpolationszwecken bei linearen und kreisförmigen Bewegungen mit mehreren Achsen verwendet. Die Standardeinstellung für die Achsengruppe ist (0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15) beim Hochfahren oder wenn ein Programm in einem Task abzulaufen beginnt. Der Befehl BASE gibt ohne Argumente die aktuelle Reihenfolge der Achsengruppe zurück.
Hinweis: Wenn in dem Befehl BASE nicht alle Achsen spezifiziert sind, wird der Befehl BASE die verbleibenden Werte automatisch „eintragen“. Zuerst trägt er alle verbleibenden Achsen über dem letzten angegebenen Wert ein, dann alle verbleibenden Achsen in der Abfolge. Daher ergibt sich bei BASE(2,6,10) folgende interne Anordnung von
16 Achsen: 2,6,10,11,12,13,14,15,0,1,3,4,5,7,8,9.
Argumente Der Befehl kann bis zu 16 Argumente annehmen.
Achse_i Die Anzahl der als Basisachse gesetzten Achsen und alle folgenden Achsen in der Abfolge bei Bewegungen mit mehreren Achsen.
Beispiel BASE(1)
UNITS = 2000 ' Stellt den Einheiten-Umwandlungsfaktor für Achse 1 ein SPEED = 100 ' Stellt die Drehzahl für Achse 1 ein ACCEL = 5000 ' Stellt die Beschleunigungsrate für Achse 1 ein BASE(2) UNITS = 2000 ' Stellt den Einheiten-Umwandlungsfaktor für Achse 2 ein SPEED = 125 ' Stellt die Drehzahl für Achse 2 ein
Revision 3.0
ACCEL = 10000 ' Stellt die Beschleunigungsrate für Achse 2 ein
Es ist möglich, jede Achse mit ihrer eigenen Drehzahl, Beschleunigung und anderen Parametern zu programmieren.
Beispiel BASE(0)
MOVE(100,–23,1,1250)
In diesem Beispiel bewegen sich die Achsen 0, 1 und 2 mit der für Achse 0 eingestellten Drehzahl und Beschleunigung zu den spezifizierten Positionen. BASE(0) stellt als Basisachse die Achse 0 ein, die die drei von MOVE verwendeten Achsen sowie die Drehzahl und Beschleunigungsrate bestimmt.
Beispiel >>BASE(0,2,1)
In der Befehlszeile kann die Basisachsen-Reihenfolge angezeigt werden, indem BASE eingegeben wird.
Beispiel >> RUN "PROGRAM",3
>> BASE PROC(3)(0,2,1)
Verwenden Sie den Modifikator PROC, um die Basisachsen-Reihenfolge in einem Task anzeigen zu lassen.
Beispiel >>BASE(2)
>> PRINT BASE
2.0000
Der Druckbefehl für BASE gibt die aktuell ausgewählte Basisachse zurück.
Siehe auch AXIS
3.2.38 BASICERROR
/i
Typ Systembefehl
Syntax BASICERROR
Beschreibung Der Befehl BASICERROR kann dazu verwendet werden, eine Routine zu
starten, wenn ein Laufzeitfehler in einem Programm auftritt. BASICERROR kann nur als Teil eines ON ... GOSUB oder ON ... GOTO-Befehls verwendet werden. Dieser Befehl kann nur einmal in dem BASIC-Programm ausgeführt werden. Wenn mehrere Befehle verwendet werden, hat nur der zuletzt ausgeführte Gültigkeit.
Argumente
PROGRAMMIERHANDBUCH 52
BASIC-Befehle
Beispiel ON BASICERROR GOTO fehler_routine
... kein_fehler = 1 STOP fehler_routine: IF kein_fehler = 0 THEN PRINT "Der Fehler ";RUN_ERROR[0]; PRINT "trat auf in Zeile ";ERROR_LINE[0] ENDIF STOP
Wenn in diesem Beispiel ein Fehler in einem BASIC-Befehl auftritt, wird die Fehlerroutine ausgeführt. Die Anweisung IF soll verhindern, dass das Programm die Fehlerroutine startet, wenn es normal beendet wird.
Siehe auch ERROR_LINE, ON, RUN_ERROR.
3.2.39 BATTERY_LOW
/i
Typ Systemparameter (Nur-Lesen)
Syntax BATTERY_LOW
Beschreibung Dieser Parameter gibt den aktuellen Zustand der Batterie zurück. Wenn
BATTERY_LOW = ON, muss die Batterie gewechselt werden. Wenn BATTERY_LOW = OFF, ist der Batteriezustand in Ordnung.
Argumente
Beispiel Kein Beispiel.
Siehe auch
Revision 3.0
3.2.40 BREAK_RESET
/i
Typ Systembefehl
Syntax BREAK_RESET "Programm_name"
Beschreibung Wird von Trajexia Tools verwendet, um alle Abbruchpunkte aus
dem spezifizierten Programm zu entfernen.
Argumente programm_name
Der Name des Programms, aus dem Sie alle Abbruchpunkte entfernen wollen.
Beispiel BREAK_RESET "einfacherTest"
Entfernt alle Abbruchpunkte aus dem Programm einfacherTest.
Siehe auch
3.2.41 CAM
/i
Typ Achsenbefehl Syntax CAM(start_punkt, end_punkt, tabellen_multiplikator, strecke) Beschreibung Der Befehl CAM dient dazu, eine Bewegung einer Achse zu erzeugen,
die einem Positionsprofil folgt, das im TABLE-Variablen-Array gespeichert ist. Die TABLE-Werte sind relativ zum Startpunkt Absolutpositionen, die in Drehgeber-Flanken spezifiziert sind. Das TABLE-Array wird mit dem Befehl TABL E spezifiziert. Die Bewegung kann mit jeder beliebigen Anzahl von Punkten von 2 bis 64000 definiert werden. Der TJ1-MC__ bewegt sich ständig zwischen den Werten in der Tabelle, sodass mit einer bestimmten Anzahl von Punkten ein weiches Profil definiert werden kann. Zwei oder mehr CAM-Befehle können gleichzeitig ausgeführt werden, wobei sie die gleichen oder überlappende Werte im TABLE-Array verwenden. Das TABLE-Profil wird einmal abgefahren. CAM setzt voraus, dass das Startelement im TABLE-Array den Wert null hat. Das Abstandsargument bestimmt zusammen mit den Parametern SPEED und ACCEL die Geschwindigkeit der Bewegung durch das TABLE-Array. Bitte beachten Sie: Damit das CAM-Profil genau befolgt wird, muss der Parameter ACCEL der Achse mindestens 1000 mal größer sein als der Parameter SPEED. CAM wirkt sich auf die Basisachse aus (Einstellung mit BASE), wenn nicht AXIS verwendet wurde, um eine Achse temporär zu spezifizieren.
PROGRAMMIERHANDBUCH 53
BASIC-Befehle
Argumente start_punkt
Die Adresse des ersten Elements im TABLE-Array, das verwendet werden soll. Durch die Möglichkeit, den Startpunkt zu spezifizieren, können im TABLE-Array mehr als ein Profil und/oder andere Informationen gespeichert werden.
end_punkt Die Adresse des letzten Elements im TABLE-Array.
tabellen_multiplikator Der Wert für den Tabellenmultiplikator wird dazu verwendet, die in der Tabelle gespeicherten Werte zu skalieren. Da die Table-Werte in Drehgeber-Flanken spezifiziert sind, können Sie dieses Argument zum Einstellen der Werte verwenden, z. B. für den Einheiten-Umwandlungsfaktor (der durch den Parameter
strecke Ein in Benutzereinheiten angegebener Faktor, der die Geschwindigkeit der Bewegung durch die Tabelle steuert. Die zur Ausführung von Zeit hängt von der aktuellen Achsendrehzahl und dieser Distanz ab. Nehmen wir z. B. an, das System ist in mm programmiert, die Drehzahl auf 10 mm/s eingestellt und die Beschleunigung ausreichend hoch. Wird eine Distanz von 100 mm spezifiziert, braucht Der Parameter SPEED in der Basisachse erlaubt eine Modifizierung der Geschwindigkeit der Bewegung, wenn CAM verwendet wird.
Hinweis: Wird der Befehl CAM ausgeführt, wird der Parameter ENDMOVE auf das Ende der vorherigen Bewegung eingestellt.
Beispiel Nehmen wir an, es ist eine Bewegung erforderlich, die folgender
Positionsgleichung folgt: t(x) = x * 25 + 10000(1-cos(x)). Hier ist x in Grad angegeben. Dieses Beispiel ist für eine TABLE, mit der eine einfache Schwingung mit einer konstanten Drehzahl ausgeführt wird. Um die TABLE zu laden und den Zyklus kontinuierlich ablaufen zu lassen, kann der folgende Code verwendet werden
GOSUB Cam-Tabelle schleife: CAM(1,19,1,200) GOTO schleife
Die Subroutine Cam-Tabelle lädt die Daten in der unten stehenden Tabelle
Revision 3.0
Siehe auch ACCEL, AXIS, CAMBOX, SPEED, TABLE .
in das TABLE-Array.
UNITS
vorgegeben wird).
CAM
10 Sekunden für die Ausführung.
CAM
benötigte
TABLE-Position Grad Wert
100
2 20 1103
3 40 3340
4 60 6500
5 80 10263
6 100 14236
7 120 18000
8 140 21160
9 160 23396
10 180 24500
11 200 24396
12 220 23160
13 240 21000
14 260 18236
15 280 15263
16 300 12500
17 320 10340
18 340 9103
19 360 9000
/i
PROGRAMMIERHANDBUCH 54
BASIC-Befehle
3.2.42 CAMBOX
/i
Typ Achsenbefehl
Syntax CAMBOX(start_punkt, end_punkt, tabellen_multiplikator, link_strecke,
link_achse [ , link_option [ , link_position ]])
Beschreibung Der Befehl CAMBOX dient dazu, eine Bewegung einer Achse zu erzeugen,
die einem Positionsprofil folgt, das im TABLE-Variablen-Array gespeichert ist. Die Bewegung ist mit der gemessenen Bewegung einer anderen Achse synchronisiert, um ein ständig variables Software-Getriebe zu bilden. Die TABLE-Werte sind relativ zum Startpunkt Absolutpositionen, die in Drehgeber-Flanken spezifiziert sind. Das TABLE-Array wird mit dem Befehl TABLE spezifiziert. Die Bewegung kann mit jeder beliebigen Anzahl von Punkten von 2 bis 64000 definiert werden. Durch die Möglichkeit, den Startpunkt zu spezifizieren, können im TABLE-Array mehr als ein Profil und/oder andere Informationen gespeichert werden. Der TJ1-MC__ bewegt sich ständig zwischen den Werten in der Tabelle, sodass mit einer bestimmten Anzahl von Punkten ein weiches Profil definiert werden kann. Zwei oder mehr CAMBOX-Befehle können gleichzeitig ausgeführt werden, wobei sie die gleichen oder überlappende Werte im TABLE-Array verwenden. Der Befehl CAMBOX setzt voraus, dass das Startelement der TABLE den Wert null hat. Beachten Sie auch, dass der Befehl CAMBOX je nach Richtung der Master-Achse das Abfahren der Tabelle in Vorwärts- und Rückwärtsrichtung erlaubt. Das Argument link_option kann dazu benutzt werden, verschiedene Optionen zum Starten des Befehls und einen kontinuierlichen CAM-Befehl zu spezifizieren. Wenn z. B. link_option auf 4 gesetzt wird, funktioniert
CAMBOX wie ein „physikalischer“ CAM-Befehl. CAMBOX wirkt sich auf die Basisachse aus (Einstellung mit BASE), wenn
nicht AXIS verwendet wurde, um eine Achse temporär zu spezifizieren. Hinweis: Während der Ausführung von CAMBOX wird der Parameter ENDMOVE auf das Ende der vorherigen Bewegung eingestellt. Der Achsenparameter REMAIN speichert die verbleibende Distanz zur Linkachse.
Revision 3.0
Argumente start_punkt
Die Adresse des ersten Elements im TABLE-Array, das verwendet werden soll.
end_punkt
Die Adresse des letzten Elements im TABLE-Array.
tabellen_multiplikator
Der Wert für den Tabellenmultiplikator wird dazu verwendet, die in der Tabelle gespeicherten Werte zu skalieren. Da die TABLE-Werte in Drehgeber-Flanken spezifiziert sind, können Sie dieses Argument zum Einstellen der Werte verwenden, z. B. für den Einheiten­Umwandlungsfaktor (der durch den Parameter UNITS vorgegeben wird).
link_strecke
Wenn die Distanz in Benutzereinheiten angegeben ist, muss die Linkachse die spezifizierte Ausgangsbewegung vollständig ausführen. Die Linkstrecke muss als positive Distanz spezifiziert werden.
link_achse
Die Achse, mit der synchronisiert werden soll.
link_option
Siehe Tabelle unten.
link_position Die absolute Position, bei der CAMBOX startet, wenn link_option auf 2 gesetzt ist.
Beispiel Kein Beispiel.
Siehe auch AXIS, CAM, REP_OPTION, TABLE
/i
Wert link_option Beschreibung
1
2 Der Link startet an einer absoluten Position auf der Linksachse
4 CAMBOX wird automatisch bidirektional wiederholt. Diese Option
5 Kombination der Optionen 1 und 4.
6 Kombination der Optionen 2 und 4.
Der Link startet, wenn an der Linkachse ein Druckmarkenereignis auftritt.
(siehe link_position).
wird aufgehoben, indem Bit 1 des Parameters REP_OPTION gesetzt wird (REP_OPTION = REP_OPTION OR 2).
PROGRAMMIERHANDBUCH 55
BASIC-Befehle
3.2.43 CANCEL
/i
Typ Achsenbefehl Syntax CANCEL[(1)]
CA[(1)]
Beschreibung
Argumente – Beispiel FORWARD
Beispiel MOVE(1000)
Revision 3.0
Siehe auch AXIS, MTYPE, NTYPE, PMOVE, RAPIDSTOP
Der Befehl Die Drehzahlprofil-Bewegungen (
MOVECIRC, MHELICAL
verzögert, die durch den Parameter Andere Bewegungen werden sofort gestoppt. Der Befehl CANCEL löscht den Inhalt des aktuellen Bewegungs­Befehlsspeichers (MTYPE). Der Befehl CANCEL(1) löscht den Inhalt des Befehlsspeicher für die nächste Bewegung (NTYPE), ohne sich auf die aktuelle Bewegung im Befehlsspeicher MTYPE auszuwirken. CANCEL wirkt sich auf die Basisachse aus (Einstellung mit BASE), wenn nicht AXIS verwendet wurde, um eine Achse temporär zu spezifizieren. Hinweis:
CANCEL bricht nur die zurzeit ausgeführte Bewegung ab. Wenn sich
Während der Verzögerung der aktuellen Bewegung werden weitere
CANCEL(1) bricht die Bewegung ab, die sich im Befehlsspeicher für
WA(10000) CANCEL
MOVEABS(3000) CANCEL ' Bricht die Bewegung nach 3000 ab und führt stattdessen Bewegung nach 4000 aus. MOVEABS(4000)
Bitte beachten Sie, dass der Befehl MOVEMODIFY in diesem Fall eine bessere Lösung zum Modifizieren von Endpunkten von Bewegungen ist.
CANCEL
weitere Bewegungen im Befehlsspeicher befinden, werden sie geladen.
CANCEL-Befehle ignoriert.
die nächste Bewegung befindet. Alle Bewegungen, die in den Task­Bewegungsspeichern gespeichert sind und durch die Variable PMOVE angezeigt werden, können in den Bewegungsspeicher geladen werden, sobald die im Bewegungsspeicher befindliche Bewegung gelöscht ist.
bricht die aktuelle Bewegung einer Achse ab.
FORWARD, REVERSE, MOVE, MOVEABS
und
MOVEMODIFY
DECEL
,
) werden mit der Verzögerungsrate
vorgegeben ist und dann gestoppt.
3.2.44 CHECKSUM
/i
Typ Systemparameter (Nur-Lesen)
Syntax CHECKSUM
Beschreibung Der Parameter CHECKSUM enthält die Prüfsumme für die Programme
im RAM. Beim Hochfahren wird die Prüfsumme neu berechnet und mit dem zuvor gespeicherten Wert verglichen. Wenn die Prüfsumme falsch ist, startet das Programm nicht.
Argumente
Beispiel Kein Beispiel.
Siehe auch
3.2.45 CHR
/i
Typ E/A-Befehl
Syntax CHR(x)
Beschreibung Der Befehl CHR dient dazu, einzelne ASCII-Zeichen zu senden, die über
Zahlen aufgerufen werden. PRINT CHR(x) entspricht PUT(x) in einigen anderen BASIC-Versionen.
Argumente x
Ein BASIC-Ausdruck.
Beispiel >>PRINT CHR(65);
A
Siehe auch
PROGRAMMIERHANDBUCH 56
BASIC-Befehle
3.2.46 CLEAR
/i
Typ Systembefehl
Syntax CLEAR
Beschreibung Der Befehl CLEAR setzt alle globalen VR-Variablen auf 0. Wenn er in einem
Programm verwendet wird, setzt er auch die lokalen Variablen im aktuellen Task auf 0.
Argumente
Beispiel Kein Beispiel.
Siehe auch RESET, VR
3.2.47 CLEAR_BIT
/i
Typ Systembefehl
Syntax CLEAR_BIT(bit_nummer, vr_nummer)
Beschreibung Der Befehl CLEAR_BIT setzt das spezifizierte Bit in der spezifizierten
VR-Variablen auf 0. Andere Bits in der Variablen behalten ihre Werte.
Argumente bit_nummer
Die Nummer des Bits, das zurückgesetzt werden soll. Bereich: 0–23.
vr_nummer
Die Nummer der VR-Variablen, für die das Bit zurückgesetzt wird. Bereich: 0–1023.
Beispiel Kein Beispiel.
Siehe auch READ_BIT, SET_BIT, VR.
3.2.48 CLEAR_PARAMS
/i
Typ Systembefehl
Syntax CLEAR_PARAMS
Beschreibung Setzt alle im Flash-EPROM gespeicherten Variablen und Parameter auf ihre
Revision 3.0
Argumente
Standardwerte zurück. CLEAR_PARAM kann nicht ausgeführt werden, wenn der Controller verriegelt ist.
Beispiel Kein Beispiel.
Siehe auch
3.2.49 CLOSE_WIN
/i
Typ Achsenparameter
Syntax CLOSE_WIN
CW
Beschreibung Der Achsenparameter CLOSE_WIN definiert das Ende des Fensters,
in dem oder außerhalb von dem eine Druckmarke erwartet wird. Der Wert wird in Benutzereinheiten angegeben.
Argumente
Beispiel Kein Beispiel.
Siehe auch AXIS, OPEN_WIN, REGIST, UNITS.
3.2.50 CLUTCH_RATE
/i
Typ Achsenparameter
Syntax CLUTCH_RATE
Beschreibung Der Achsenparameter CLUTCH_RATE definiert die Geschwindigkeit
des Verbindungsaufbaus, wenn der Befehl CONNECT verwendet wird. Die Rate ist definiert als Betrag der Häufigkeit pro Sekunde. Standardmäßig ist der Parameter auf einen hohen Wert gesetzt (1000000), um die Kompatibilität mit früheren TJ1-MC__-Baugruppen zu gewährleisten. Hinweis: Die Operation, die CLUTCH_RATE verwendet, ist in der Position nicht deterministisch. Falls erforderlich, verwenden Sie stattdessen den Befehl MOVELINK, um unnötige Phasendifferenzen zwischen der Basisachse und synchronisierten Achsen zu vermeiden.
Argumente
Beispiel CLUTCH_RATE = 4
Diese Einstellung bewirkt, dass es eine Sekunde bis zum Erreichen der vollständigen Verbindung dauert, wenn der Befehl CONNECT(4,1) ausgeführt wird.
Siehe auch AXIS, CONNECT, MOVELINK.
PROGRAMMIERHANDBUCH 57
BASIC-Befehle
3.2.51 COMMSERROR
/i
Typ Systemparameter (Nur-Lesen)
Syntax COMMSERROR
Beschreibung Der Parameter COMMSERROR enthält alle Kommunikationsfehler, die
seit der letzten Initialisierung aufgetreten sind. Die Bits in COMMSERROR sind in der nachstehenden Tabelle aufgeführt.
Argumente
Beispiel Kein Beispiel.
Siehe auch
/i
Bit- Beschreibung Fehlerposition
8 Port 1 Rx Daten bereit Serielle Schnittstelle 1
9 Port 1 Rx Überlauf Serielle Schnittstelle 1
10 Port 1 Paritätsfehler Serielle Schnittstelle 1
11 Port 1 Rx Frame-Fehler Serielle Schnittstelle 1
12 Port 2 Rx Daten bereit Serielle Schnittstelle 2
13 Port 2 Rx Überlauf Serielle Schnittstelle 2
14 Port 2 Paritätsfehler Serielle Schnittstelle 2
15 Port 2 Rx Frame-Fehler Serielle Schnittstelle 2
3.2.52 COMMSTYPE
/i
Typ Slot-Parameter
Syntax COMMSTYPE SLOT(baugruppen_nummer)
Beschreibung Dieser Parameter gibt den Baugruppentyp in einer Controller-Baugruppe
zurück. In der nachstehenden Tabelle sind die zurückgegebenen Werte aufgeführt.
Argumente baugruppen_nummer
Die Baugruppennummern sind 0 bis 6, wobei 0 die Einheit unmittelbar rechts vom TJ1-MC__ ist.
Beispiel Kein Beispiel.
Siehe auch
/i
Zurückgege­bener Wert
0 Nicht verwendete Baugruppe
31 TJ1-ML__
33 TJ1-FL02
34 TJ1-PRT
35 TJ1-DRT
Beschreibung
3.2.53 COMPILE
/i
Typ Programmbefehl
Syntax COMPILE
Beschreibung Der Befehl COMPILE erzwingt die Kompilierung des aktuellen Programms zu
Zwischen-Code. Das Programm wird vor seiner Ausführung oder bei Auswahl eines anderen Programms automatisch von der Systemsoftware kompiliert.
Revision 3.0
Argumente
Beispiel Kein Beispiel.
Siehe auch
PROGRAMMIERHANDBUCH 58
BASIC-Befehle
3.2.54 CONNECT
/i
Typ Achsenbefehl
Syntax CONNECT(verhaeltnis, antriebs_achse)
CO(verhaeltnis, antriebs_achse)
Beschreibung Der Befehl CONNECT verbindet die Sollposition der Basisachse mit den
gemessenen Bewegungen der Achse, die für Antriebs_achse spezifiziert sind, um ein elektronisches Getriebe zu erzeugen. Das Verhältnis kann jederzeit geändert werden, indem ein weiterer Befehl für dieselbe Achse ausgeführt wird. Um die Antriebsachse zu ändern, muss der Antriebsachsen wird ignoriert. Der Befehl oder
CLUTCH_RATE
einzustellen mit der Achsen beim Befehl CONNECT verbunden werden. CONNECT wirkt sich auf die Basisachse aus (Einstellung mit BASE), wenn nicht AXIS verwendet wurde, um eine Achse temporär zu spezifizieren.
Argumente Verhältnis
Antriebs_achse
Beispiel Bei einer Durchlaufpresse muss sich eine Walze mit einer Geschwindigkeit
drehen, die einem Viertel des von einem Drehgeber gemessenen Wertes entspricht, der an dem Zufuhr-Förderband montiert ist. Die Walze ist mit Achse 0 verdrahtet. Ein Eingangskanal überwacht die Drehgeber-Impulse vom Förderband und bildet Achse 1. Der folgende Code kann verwendet werden:
BASE(1) SERVO = OFF ' Diese Achse dient zur Ueberwachung des Foerderbandes BASE(0)
Revision 3.0
Siehe auch AXIS, CANCEL, CLUTCH_RATE, CONNECT, RAPIDSTOP.
SERVO = ON CONNECT(0,25,1)
CONNECT
RAPIDSTOP
Das Verbindungsverhältnis des Getriebes. Das Verhältnis wird spezifiziert als Drehgeber-Flankenverhältnis (keine Einheiten). Es enthält die Anzahl der Encoderflanken, die die Basisachse benötigt, um sich inkremental im Verhältnis zur Antriebsachse zu bewegen. Der Verhältniswert kann positiv oder negativ sein und hat eine 16-Bit-Bruchauflösung.
Die Master-Achse, die die Basisachse antreibt.
-Befehl zuerst aufgehoben werden.
CONNECT
-Befehl aufgehoben werden. Der Achsenparameter
kann dazu verwendet werden, die Geschwindigkeit
CONNECT
kann mit einem
CONNECT
bei anderen
CANCEL
3.2.55 CONSTANT
/i
Typ Systembefehl
Syntax CONSTANT "Name", Wert
Beschreibung Definiert den Namen als Konstante, die sowohl innerhalb des
Programms, das die Definition für CONSTANT enthält als auch von allen anderen Programmen im Trajexia Tools-Projekt verwendet werden kann. Hinweis: Das Programm mit der Definition für CONSTANT muss laufen,
-
-
Argumente Name
Beispiel CONSTANT "nak",$15
Siehe auch
bevor der Name in anderen Programmen verwendet wird. Wenn die CONSTANT Anweisung ausgeführt wird darf nur das Programm mit der CONSTANT Anweisung laufen; andernfalls wird eine Fehlermeldung angezeigt, und das Programm stoppt, wenn versucht wird, diesen Befehl auszuführen. Für einen schnellen Start sollte dieses Programm außerdem der einzige Prozess sein, der beim Hochfahren läuft. Wenn CONSTANT definiert wird, bleibt die Definition bis zum nächsten Zurücksetzen des TJ1-MC__ aktiv; dies kann erfolgen, indem die Versorgungsspannung aus und wieder eingeschaltet wird oder indem der EX-Befehl ausgeführt wird. Es können maximal 128 CONSTANT-Befehle definiert werden.
Jeder benutzerdefinierte Name, der alphanumerische oder Unterstrich-Zeichen enthält.
Wert Der Wert, der Name zugeordnet ist.
CONSTANT "start_schaltflaeche",5 IF IN(start_schaltflaeche) = ON THEN OP(led1,ON) IF key_char = nak THEN GOSUB no_ack_received
3.2.56 CONTROL
/i
Typ Systemparameter (Nur-Lesen)
Syntax CONTROL
Beschreibung Der Parameter CONTROL enthält den an das System angeschlossenen Typ
des TJ1-MC__. Der Wert dieses Systemparameters für den TJ1-MC__ ist 262.
PROGRAMMIERHANDBUCH 59
BASIC-Befehle
Argumente
Beispiel Kein Beispiel.
Siehe auch
3.2.57 COPY
/i
Typ Programmbefehl
Syntax COPY programm_name neuer_programm_name
Beschreibung Der Befehl COPY kopiert ein im Controller bestehendes Programm zu einem
neuen Programm mit dem spezifizierten Namen. Der Programmname kann ohne Anführungszeichen spezifiziert werden. Hinweis: Dieser Befehl ist für ein Offline- (VT100-) Terminal implementiert. In Trajexia Tools kann der Benutzer den Befehl aus dem Menü Programm auswählen.
Argumente programm_name
Name des zu kopierenden Programms.
neuer_programm_name
Name des neuen Programms.
Beispiel >> COPY "prog" "neuesprog"
Siehe auch DEL, NEW, RENAME.
3.2.59 CREEP
/i
Typ Achsenparameter
Syntax CREEP
Beschreibung Der Achsenparameter CREEP enthält die Schleichganggeschwindigkeit
für die Achse. Die Schleichganggeschwindigkeit wird für den langsamen Teil einer Nullpunkt-Suchsequenz verwendet. CREEP kann jeden positiven Wert einschließlich null annehmen. Die Schleichganggeschwindigkeit wird in Einheiten mit dem Einheiten­Umwandlungsfaktor UNITS eingegeben. Wenn z. B. der Einheiten­Umwandlungsfaktor auf die Anzahl der Drehgeber-Flanken/Zoll eingestellt ist, wird die Drehzahl in Zoll eingestellt.
Argumente
Beispiel BASE(2)
CREEP = 10 SPEED = 500 DATUM(4) CREEP AXIS(1) = 10 SPEED AXIS(1) = 500 DATUM(4) AXIS(1)
Siehe auch AXIS, DATUM, UNITS.
3.2.58 COS
/i
Typ Mathematische Funktion
Syntax COS(ausdruck)
Beschreibung Die Funktion COS gibt den Kosinus des Ausdrucks zurück. Die Eingabewerte
sind in rad und können jeden beliebigen Wert annehmen. Der Ergebniswert liegt im Bereich zwischen –1 und 1.
Argumente Ausdruck
Jeder gültige BASIC-Ausdruck.
Beispiel >> PRINT COS(0)
Revision 3.0
Siehe auch
1.0000
3.2.60 D_GAIN
/i
Typ Achsenparameter
Syntax D_GAIN
Beschreibung Der Achsenparameter D_GAIN enthält den D-Anteil für die Achse.
Der D-Anteil wird berechnet, indem die Änderung im Schleppfehler mit D_GAIN multipliziert wird. Der Standardwert ist 0. Fügen Sie den D-Anteil einem System hinzu, um eine sanftere Reaktion und die Verwendung einer höheren Proportionalverstärkung zu erreichen. Hohe Werte können zu Schwingungen führen. Hinweis: Die Servo-Verstärkung darf nur geändert werden, wenn SERVO deaktiviert ist.
Argumente
PROGRAMMIERHANDBUCH 60
BASIC-Befehle
Beispiel Kein Beispiel.
Siehe auch AXIS, I_GAIN, OV_GAIN, P_GAIN, VFF_GAIN.
3.2.61 D_ZONE_MAX
/i
Typ Systemparameter
Syntax D_ZONE_MAX = Wert
Beschreibung In Verbindung mit D_ZONE_MIN hält dieser Parameter den DAC-Ausgang
auf Null, wenn die gewünschte Bewegung ausgeführt und die Größe des Schleppfehlers kleiner ist als der Wert für D_ZONE_MIN. Der Servo­Regelkreis wird reaktiviert, wenn entweder der Schleppfehler über den Wert von D_ZONE_MAX ansteigt oder eine neue Bewegung gestartet wird.
Argumente
Beispiel D_ZONE_MIN = 3
D_ZONE_MAX = 10
Wenn diese beiden Parameter wie oben eingestellt sind, wird der DAC­Ausgang auf Null gehalten, wenn die Bewegung abgeschlossen ist und der Schleppfehler unter den Wert 3 abfällt. Wenn eine Bewegung neu gestartet wird oder wenn der Schleppfehler über den Wert 10 ansteigt, wird der Servo­Regelkreis reaktiviert.
Siehe auch D_ZONE_MIN.
3.2.62 D_ZONE_MIN
/i
Typ Systemparameter
Syntax D_ZONE_MIN = Wert
Beschreibung In Verbindung mit D_ZONE_MAX hält dieser Parameter den DAC-Ausgang
auf Null, wenn die gewünschte Bewegung ausgeführt und die Größe des Schleppfehlers kleiner ist als der Wert für D_ZONE_MIN. Der Servo-
Revision 3.0
Argumente
Regelkreis wird reaktiviert, wenn entweder der Schleppfehler über den Wert von D_ZONE_MAX ansteigt oder eine neue Bewegung gestartet wird.
Beispiel D_ZONE_MIN = 3
D_ZONE_MAX = 10
Wenn diese beiden Parameter wie oben eingestellt sind, wird der DAC­Ausgang auf Null gehalten, wenn die Bewegung abgeschlossen ist und der Schleppfehler unter den Wert 3 abfällt. Wenn eine Bewegung neu gestartet wird oder wenn der Schleppfehler über den Wert 10 ansteigt, wird der Servo­Regelkreis reaktiviert.
Siehe auch D_ZONE_MAX.
3.2.63 DAC
Siehe S_REF.
3.2.64 DAC_OUT
Siehe S_REF_OUT.
3.2.65 DAC_SCALE
/i
Typ Achsenparameter
Syntax DAC_SCALE
Beschreibung Der Parameter hat zwei Aufgaben:
1. Er wird beim Hochfahren der integrierten Achsen des Systems auf den Wert 16 gesetzt. Dadurch werden die für die höhere Auflösung von DAC geltenden Werte skaliert, so dass die an der Achse erforderlichen Verstärkungen ähnlich wie die sind, die bei den anderen Controllern erforderlich sind.
2. DAC_SCALE kann negativ gesetzt werden (–16), um die Polarität des DAC-Ausgangsignals umzukehren. Ist der Servo deaktiviert, ist die Größe von DAC_SCALE unwichtig, da die angelegte Spannung durch den Parameter DAC geregelt wird. Die Polarität wird jedoch durch DAC_SCALE umgekehrt.
Argumente
Beispiel DAC_SCALE AXIS(3) = –16
Siehe auch DAC, S_REF.
PROGRAMMIERHANDBUCH 61
BASIC-Befehle
3.2.66 DATE
/i
Typ Systemparameter
Syntax DATE
Beschreibung Gibt das aktuelle Datum der Trajexia-Echtzeituhr zurück oder stellt dieses ein.
Die Zahlen können im Format TT:MM:JJ oder TT:MM:JJJJ eingegeben werden.
Argumente
Beispiel DATE = 20:10:05
oder
DATE = 20:10:2005
Beispiel >>PRINT DATE
36956
Dadurch wird die Zahlenangabe für den aktuellen Tag ausgedruckt. Diese Zahl ist die Anzahl der Tage seit dem 1. Januar 1900, wobei der 1. Januar 1900 der Zahl 1 entspricht.
Siehe auch
3.2.67 DATE$
/i
Typ Systembefehl
Syntax DATE$
Beschreibung Druckt das aktuelle Datum im Format TT/MM/JJ als Zeichenkette aus.
Das Jahr wird zweistellig angegeben.
3.2.68 DATUM
/i
Typ Achsenbefehl
Syntax DATUM(sequenz)
Beschreibung Der Befehl DATUM führt eine von 6 Nullpunkt-Suchsequenzen durch, um
eine Achse auf eine Absolutposition zu setzen und um den Schleppfehler zu löschen: DATUM verwendet sowohl die Schleichganggeschwindigkeit als auch die gewünschte Geschwindigkeit für die Nullpunktsuche. Die Schleichganggeschwindigkeit wird mit dem Achsenparameter CREEP und die gewünschte Geschwindigkeit mit dem Achsenparameter SPEED eingestellt. Die Eingangsnummer für den Nullpunktschalter, die für die Sequenzen 3 bis 6 verwendet wird, wird durch den Parameter DATUM_IN eingestellt. DATUM wirkt sich auf die Basisachse aus (Einstellung mit BASE), wenn nicht AXIS verwendet wurde, um eine Achse temporär zu spezifizieren. Hinweis: Der mit dem Parameter DATUM_IN eingestellte Nullpunkteingang ist in aktiviertem Zustand null, d. h. der Nullpunktschalter wird betätigt, wenn der Eingang auf AUS steht. Die Endschaltereingänge für Feedhold, Rückwärts­JOG, Vorwärts-JOG, Vorwärts und Rückwärts sind ebenfalls in aktiviertem Zustand null Wenn Eingänge in aktiviertem Zustand null sind, bedeutet das gleichzeitig eine drahtbuchsichere Verdrahtung.
Argumente Folge
Siehe Tabelle unten.
Beispiel Kein Beispiel.
Siehe auch ACCEL, AXIS, AXISSTATUS, CREEP, DATUM_IN, DECEL,
MOTION_ERROR, SPEED.
Argumente
Beispiel PRINT #1,DATE$
Dadurch wird das Datum im folgenden Format ausgedruckt: 20/10/05
Siehe auch
Revision 3.0
/i
PROGRAMMIERHANDBUCH 62
BASIC-Befehle
Folgewert
0 Der Befehl DATUM(0) löscht den Bewegungsfehler. Die aktuell gemessene
1 Die Achse bewegt sich mit Schleichganggeschwindigkeit vorwärts, bis die
2 Die Achse bewegt sich mit Schleichganggeschwindigkeit rückwärts, bis die
3 Die Achse bewegt sich mit der gewünschten Geschwindigkeit vorwärts,
4 Die Achse bewegt sich mit der gewünschten Geschwindigkeit rückwärts,
5 Die Achse bewegt sich mit der gewünschten Geschwindigkeit vorwärts,
Revision 3.0
Beschreibung
Position wird als Sollposition eingestellt (dies ist besonders nützlich bei Schrittmotor-Achsen mit Positionskontrolle). DATUM(0) löscht auch für ALLE Achsen den Schleppfehler, der die Bedingung FE_LIMIT im Register AXISSTATUS überschritten hat. Der Befehl setzt folgende Bits in AXXISSTATUS auf null: Bit 1: Warnung Schleppfehler Bit 2: Kommunikationsfehler dezentraler Treiber Bit 3: Fehler dezentraler Treiber Bit 8: Grenzwert für Schleppfehler überschritten Bit 11: Bewegung wird abgebrochen. Bitte beachten Sie, dass der Zustand nicht gelöscht werden kann, wenn die Ursache des Problems weiterhin besteht.
Z-Marke erreicht ist. Die Sollposition wird dann auf 0 zurückgesetzt, und die gemessene Position wird korrigiert, um den Schleppfehler aufrechtzuerhalten.
Z-Marke erreicht ist. Die Sollposition wird dann auf 0 zurückgesetzt, und die gemessene Position wird korrigiert, um den Schleppfehler aufrechtzuerhalten.
bis der Nullpunktschalter erreicht ist. Die Achse bewegt sich anschließend mit Schleichganggeschwindigkeit rückwärts, bis der Nullpunktschalter zurückgesetzt ist. Die Sollposition wird dann auf 0 zurückgesetzt, und die gemessene Position wird korrigiert, um den Schleppfehler aufrechtzuerhalten.
bis der Nullpunktschalter erreicht ist. Die Achse bewegt sich anschließend mit Schleichganggeschwindigkeit vorwärts, bis der Nullpunktschalter zurückgesetzt ist. Die Sollposition wird dann auf 0 zurückgesetzt, und die gemessene Position wird korrigiert, um den Schleppfehler aufrechtzuerhalten.
bis der Nullpunktschalter erreicht ist. Die Achse bewegt sich anschließend mit Schleichganggeschwindigkeit rückwärts, bis der Nullpunktschalter zurückgesetzt ist. Die Achse bewegt sich mit Schleichganggeschwindigkeit weiter, bis die Z-Marke des Drehgebers erreicht ist. Die Sollposition wird dann auf 0 zurückgesetzt, und die gemessene Position wird korrigiert, um den Schleppfehler aufrechtzuerhalten.
Folgewert
6 Die Achse bewegt sich mit der gewünschten Geschwindigkeit rückwärts, bis
Beschreibung
der Nullpunktschalter erreicht ist. Die Achse bewegt sich anschließend mit Schleichganggeschwindigkeit vorwärts, bis der Nullpunktschalter zurückgesetzt ist. Die Achse bewegt sich mit Schleichganggeschwindigkeit weiter, bis die Z-Marke des Drehgebers erreicht ist. Die Sollposition wird dann auf 0 zurückgesetzt, und die gemessene Position wird korrigiert, um den Schleppfehler aufrechtzuerhalten.
3.2.69 DATUM_IN
/i
Typ Achsenparameter
Syntax DATUM_IN
DAT_IN
Beschreibung Der Achsenparameter DATUM_IN enthält die Eingangsnummer, die als
Nullpunktschalter für den Befehl DATUM verwendet werden soll. Der gültige Eingangsbereich ist durch die Werte 0 bis 31 gegeben. Die Werte 0 bis 15 stellen physikalisch die Eingänge des TJ1-MC__ E/A-Steckverbinders dar und werden für alle Achsen gemeinsam benutzt. Die Werte 16 bis 27 stellen Software-Eingänge dar, die beliebig in Programmen und Befehlen verwendet werden können, z. B. IN und OP. Sie gelten ebenfalls für alle Achsen. Die Werte 28 bis 31 werden direkt den am CN1-Steckverbinder vorhandenen Treiber-Eingängen zugewiesen und sind für jede Achse eindeutig. Welche Treiber-Eingänge den Eingängen 28 bis 31 zugewiesen werden, hängt von der Servotreiber-Einstellung in Parameter Pn81E ab. Die empfohlene Einstellung ist Pn81E = 0 x 4321, mit folgender Zuordnung: Hinweis: Der Nullpunkteingang ist in aktiviertem Zustand null, d. h. der Nullpunktschalter wird betätigt, wenn der Eingang auf AUS steht. Die Endschaltereingänge für Feedhold, Rückwärts-JOG, Vorwärts-JOG, Vorwärts und Rückwärts sind ebenfalls in aktiviertem Zustand null. Wenn Eingänge in aktiviertem Zustand null sind, bedeutet das gleichzeitig eine drahtbuchsichere Verdrahtung.
Sigma II Eingang 28: CN1-40
Eingang 29: CN1-41
Eingang 30: CN1-42
Eingang 31: CN1-43
PROGRAMMIERHANDBUCH 63
BASIC-Befehle
Sigma III Eingang 28: CN1-13
Eingang 29: CN1-7
Eingang 30: CN1-8
Eingang 31: CN1-9
Junma Eingang 26: CN1-2
Eingang 27: CN1-1
Weitere Informationen zum Einstellen des Parameters Pn81E finden Sie im Servotreiber-Handbuch. Standardmäßig ist der Parameter auf –1 eingestellt, und es sind keine Eingänge ausgewählt.
Argumente
Beispiel DATUM_IN AXIS(0) = 5
Siehe auch AXIS, DATUM.
3.2.70 DAY
/i
Typ Systemparameter Syntax DAY Beschreibung Gibt den aktuellen Tag als Zahl von 0 bis 6 zurück, Sonntag ist 0. DAY kann
durch Zuordnung eingestellt werden.
Argumente – Beispiel >>DAY = 3
>>? DAY
3.0000
Siehe auch
3.2.71 DAY$
/i
Typ Systembefehl Syntax DAY$ Beschreibung Druckt den aktuellen Tag als Zeichenkette. Argumente – Beispiel >>DAY = 3
Revision 3.0
Siehe auch
>>? DAY$ Mittwoch
3.2.72 DECEL
/i
Typ Achsenparameter
Syntax DECEL
Beschreibung Der Achsenparameter DECEL enthält die Verzögerungsrate der Achse.
Die Rate wird in Einheiten/s2 eingestellt. Der Parameter kann jeden positiven Wert einschließlich 0 annehmen.
Argumente
Beispiel DECEL = 100 ' Verzögerungsrate einstellen
PRINT "Verzögerungsrate ist ";DECEL;" mm/s/s"
Siehe auch ACCEL, AXIS, UNITS.
3.2.73 DEFPOS
/i
Typ Achsenbefehl Syntax DEFPOS(pos_1 [ , pos_2 [ , pos_3 [ , pos_4 [, ...]]]])
DP(pos_1 [ , pos_2 [ , pos_3 [ , pos_4 [, ...]]]])
Beschreibung
Der Befehl Absolutposition. Die gemessene Position ( um den Schleppfehler aufrechtzuerhalten. einer Nullpunkt-Suchsequenz verwendet (siehe DATUM-Befehl), da hierbei die aktuelle Position auf 0 gesetzt wird. Alternativ dazu kann auch der Achsenparameter OFFPOS benutzt werden. Dieser Parameter kann dazu verwendet werden, eine relative Anpassung der aktuellen Position vorzunehmen. DEFPOS wirkt sich auf die Basisachse aus (Einstellung mit BASE), wenn nicht AXIS verwendet wurde, um eine Achse temporär zu spezifizieren. Hinweis: Die an der Achsenposition mit dem Befehl DEFPOS oder OFFPOS vorgenommenen Änderungen werden beim nächsten Servo-Update ausgeführt. Dies kann möglicherweise Probleme verursachen, wenn im selben Servozyklus, in dem DEFPOS oder OFFPOS ausgeführt werden, auch eine Bewegung initiiert wird. Das folgende Beispiel zeigt, wie der Parameter OFFPOS verwendet werden kann, ohne dass dieses Problem auftritt. DEFPOS-Befehle werden intern in OFFPOS-Positions-Offsets umgewandelt, wodurch das Problem leicht vermieden werden kann, indem wie folgt programmiert wird:
DEFPOS(100): WAIT UNTIL OFFPOS = 0: MOVEABS(0)
DEFPOS
definiert die aktuelle Sollposition (
MPOS
) wird entsprechend geändert,
DEFPOS
DEFPOS
wird normalerweise nach
kann jederzeit verwendet werden.
DPOS
) als neue
PROGRAMMIERHANDBUCH 64
BASIC-Befehle
Argumente Der Befehl kann bis zu 16 Argumente annehmen.
pos_i
Die Absolutposition für die (basis + i) -Achse in Benutzereinheiten. Siehe BASE-Befehl für die Gruppierung der Achsen.
Beispiel BASE(2)
DATUM(5) BASE(1) DATUM(4) WAIT IDLE DEFPOS(–1000,–3500)
Die letzte Zeile definiert die aktuelle Position zu (–1000, –3500) in Benutzereinheiten. Die aktuelle Position wäre mit den beiden DATUM-Befehlen auf (0,0) zurückgesetzt worden.
Siehe auch AXIS, DATUM, DPOS, OFFPOS, MPOS, UNITS.
3.2.74 DEL
/i
Typ Programmbefehl
Syntax DEL [Programm_name]
RM [Programm_name]
Beschreibung Der Befehl DEL löscht ein Programm aus dem Controller. DEL ohne
Programmname kann dazu verwendet werden, das aktuell ausgewählte Programm zu löschen (mit SELECT). Der Programmname kann auch ohne Anführungszeichen spezifiziert werden. DEL ALL löscht alle Programme.
DEL
kann auch dazu verwendet werden, die Tabelle zu löschen: Die Bezeichnung Hinweis: Dieser Befehl ist für ein Offline- (VT100-) Terminal implementiert. In Trajexia Tools kann der Benutzer den Befehl aus dem Menü Programm auswählen.
Argumente Programm_name
Name des zu löschenden Programms.
Beispiel >> DEL altesProg
Siehe auch COPY, NEW, RENAME, SELECT, TABLE.
Revision 3.0
"TABLE"
muss in Anführungszeichen gesetzt sein.
DEL "TABLE"
3.2.75 DEMAND_EDGES
/i
Typ Achsenparameter (Nur-Lesen)
Syntax DEMAND_EDGES
Beschreibung Der Achsenparameter DEMAND_EDGES enthält den aktuellen Wert des
Achsenparameters DPOS in Drehgeber-Flankeneinheiten.
Argumente
Beispiel Kein Beispiel.
Siehe auch AXIS, DPOS.
3.2.76 DEVICENET
/i
Typ Systembefehl
Syntax DEVICENET(baugruppen_nummer, 2, 1, VR_start_ausgaenge,
anzahl_ausgaenge, VR_start_einaenge, anzahl_eingaenge) DEVICENET((baugruppen_nummer, 4, 0)
Beschreibung Die Funktion DEVICENET konfiguriert den TJ1-DRT für den Datenaustausch
mit der DeviceNet-Master-Baugruppe und definierte Bereiche im VR-Speicher, wo der E/A-Austausch stattfindet. Die Funktion DEVICENET 4 gibt den Datenaustauschstatus des TJ1-DRT zurück. Eine Beschreibung der Bits
.
Argumente baugruppen_nummer
im Datenaustausch-Statuswort finden Sie in der Tabelle.
Spezifiziert die Baugruppennummer des TJ1-DRT im Trajexia-System.
VR_start_ausgaenge
Die Startadresse im VR-Speicher des Controllers, an der sich die Ausgangsdaten vom DeviceNet-Master befinden.
anzahl_ausgaenge
Die Anzahl der Ausgangsworte vom DeviceNet-Master im VR-Speicher.
VR_start_eingaenge
Die Startadresse im VR-Speicher des Controllers, an der sich die Eingangsdaten für den DeviceNet-Master befinden.
anzahl_eingaenge
Die Anzahl der Eingangsworte zum DeviceNet-Master im VR-Speicher.
PROGRAMMIERHANDBUCH 65
BASIC-Befehle
Beispiel DEVICENET (0,2,1,10,16,150,31)
In diesem Beispiel ist der TJ1-DRT für den Datenaustausch mit dem DeviceNet-Master konfiguriert, und zwar mit 16 Ausgangsworten (die vom Master empfangen werden) an den Positionen VR(10) bis VR(25) und 31 Eingangsworten (die an den Master gesendet werden) an den Positionen VR(150) bis VR(180).
Siehe auch
/i
Bit Wert Beschreibung
00 DEVICENET (baugruppen_nummer, 2, ...) noch nicht ausgeführt
1 DEVICENET (baugruppen_nummer, 2, ...) ohne Fehler ausgeführt
1 0 Keine DeviceNet-E/A-Verbindung
1 DeviceNet-E/A-Verbindung läuft
2 0 VR-Variablen im Ausgangsdatenbereich sind aktualisiert worden
1 VR-Variablen im Ausgangsdatenbereich sind noch nicht aktualisiert
worden
3 0 Die DeviceNet-E/A-Verbindungsgröße stimmt mit dem Befehl
DEVICENET (baugruppen_nummer, 2,…) überein
1 Die DeviceNet-E/A-Verbindungsgröße stimmt nicht mit dem Befehl
DEVICENET (baugruppen_nummer, 2,…) überein
4–7 0 Immer null
8 0 Netzwerk-Spannungsversorgung OK
1 Netzwerk-Spannungsversorgung ausgefallen
9 0 Kein BUSOFF aufgetreten
1 BUSOFF aufgetreten
10 0 Kein Teilnehmeradressen-Duplizierungsfehler
1 Teilnehmeradressen-Duplizierungsfehler
Revision 3.0
PROGRAMMIERHANDBUCH 66
BASIC-Befehle
3.2.77 DIR
/i
Typ Programmbefehl
Syntax DIR
LS
Beschreibung
Argumente
Beispiel Kein Beispiel.
Siehe auch FREE, POWER_UP, PROCESS, RUNTYPE, SELECT.
Der Befehl die Speichergröße und den Speichergröße, die Betriebsart beim Einschalten und das aktuell ausgewählte Programm des Controllers an.
DIR
zeigt eine Liste von im Controller gespeicherten Programmen,
RUNTYPE
an. DIR zeigt außerdem die verfügbare
3.2.78 DISABLE_GROUP
/i
Typ Achsenbefehl
Syntax DISABLE_GROUP(–1)
DISABLE_GROUP(achse_1 [, achse_2 [, ...]])
Beschreibung Wird verwendet, um mehrere Achsen zur Fehler-Deaktivierung
zusammenzugruppieren. Wenn in einer Achsengruppe ein Fehler bei einer auftritt, wird bei allen AXIS_ENABLE deaktiviert und SERVO deaktiviert. Es können mehrere Gruppen erstellt werden, jedoch kann eine Achse nicht zu mehrere Gruppen gehören. Alle Gruppierungen können mit DISABLE_GROUP(–1) gelöscht werden.
Argumente Achse_i
Ein BASIC-Ausdruck, der die Achsennummer spezifiziert.
Beispiel DISABLE_GROUP(–1)
DISABLE_GROUP(0,1,2,3) DISABLE_GROUP(4,5,6,7) WDOG = ON STOP enable_b: FOR ax = 4 TO 7 AXIS_ENABLE AXIS(ax) = ON NEXT ax
Ein System von 8 Achsen, bei dem die Achsen 4..7 weiterlaufen, wenn bei den Achsen 0..3 ein Fehler auftritt und umgekehrt. Die Achsen können mit DISABLE_GROUP zusammengruppiert werden. Hinweis: Nur zur Verwendung bei MECHATROLINK-II.
Siehe auch
3.2.79 DISPLAY
/i
Typ Systemparameter
Syntax DISPLAY = Wert
Beschreibung
Argumente
Beispiel DISPLAY = 5
Siehe auch
/i
Legt fest, welche E/A-Kanäle durch die LEDs auf der Vorderseite angezeigt werden. Der Parameter welche E/A-Bank angezeigt werden soll. Die Werte sind in der nachstehenden Tabelle aufgeführt.
Zeigt die Ausgänge 8–15.
DISPLAY
kann dazu verwendet werden auszuwählen,
Wert Beschreibung
0 Eingänge 0 bis 7 (Standardeinstellung)
Revision 3.0
1 Eingänge 8 bis 15
2 Eingänge 16 bis 23
3 Eingänge 24 bis 31
PROGRAMMIERHANDBUCH 67
BASIC-Befehle
Wert Beschreibung
4 Ausgänge 0 bis 7 (bei Trajexia nicht verwendet)
5 Ausgänge 8 bis 15
6 Ausgänge 16 bis 23
7 Ausgänge 24 bis 31
3.2.80 DPOS
/i
Typ Achsenparameter (Nur-Lesen)
Syntax DPOS
Beschreibung Der Achsenparameter DPOS enthält die Sollposition in Benutzereinheiten,
die durch die Bewegungsbefehle in der Lageregelung generiert wird. Wenn der Lageregelkreis im Controller geöffnet ist (SERVO = OFF), wird die gemessene Position (MPOS) zu dem DPOS kopiert, um einen Schleppfehler von 0 aufrechtzuerhalten. Der Bereich der gewünschten Position wird mit den Achsenparametern REP_DIST und REP_OPTION kontrolliert. Mit dem Befehl DEFPOS oder dem Achsenparameter OFFPOS kann der Wert eingestellt werden, ohne eine Bewegung auszuführen. DPOS wird beim Hochfahren auf 0 zurückgesetzt.
Argumente
Beispiel >> PRINT DPOS AXIS(0)
34.0000
Die obige Zeile gibt die Sollposition in Benutzereinheiten zurück.
Siehe auch AXIS, DPOS, DEFPOS, DEMAND_EDGES, FE, MPOS, REP_DIST,
REP_OPTION, OFFPOS, UNITS.
3.2.81 DRIVE_ALARM
/i
Typ Achsenbefehl
Syntax DRIVE_ALARM(VR)
Beschreibung Die Funktion DRIVE_ALARM liest den aktuellen Alarm des Servotreibers
aus, der über MECHATROLINK-II an das Trajexia-System angeschlossen ist. Nach erfolgreicher Ausführung gibt der Befehl –1 zurück und speichert den Wert an dem Speicheradresse im VR-Speicher, der durch den VR-Parameter spezifiziert ist. Wenn der Befehl nicht ausgeführt werden kann, wird der Wert 0 zurückgegeben. Der Befehl wird im Treiber für die durch BASE eingestellte Basisachse durchgeführt. Die Basisachse kann mit dem Modifikator AXIS sowie mit allen anderen Achsenbefehlen und -parametern geändert werden. Dieser Befehl wartet auf die Antwort von der Achse; die Ausführung des Befehls kann langsam sein und die Dauer variieren. Wenn Sie eine schnelle Reaktion benötigen, verwenden Sie diesen Befehl nicht.
Argumente VR
Bei erfolgreicher Ausführung wird der Alarmwert an der VR-Adresse gespeichert.
Beispiel IF NOT DRIVE_ALARM(10) AXIS(2) THEN
PRINT "Alarm für Servotreiber kann nicht gelesen werden" ELSE IF VR(10) = 0 THEN PRINT "Servotreiber in Ordnung" ELSE PRINT "Servo-Alarmcode: "; VR(10) ENDIF ENDIF
In diesem Beispiel wird ein Alarm des Servotreibers von Achse 2 ausgelesen; diese Informationen werden dem Benutzer angezeigt.
Siehe auch
Revision 3.0
PROGRAMMIERHANDBUCH 68
BASIC-Befehle
3.2.82 DRIVE_CLEAR
/i
Typ Achsenbefehl
Syntax DRIVE_CLEAR
Beschreibung
Argumente
Beispiel Kein Beispiel.
Siehe auch DRIVE_STATUS.
Der Befehl MECHATROLINK-II an das System angeschlossen ist. Mit diesem Befehl können nicht alle möglichen Alarmzustände gelöscht werden. Bestimmte Alarme können nur durch Aus- und Einschalten der Spannungsversorgung (sowohl der des TJ1-MC__ als auch der des Servotreibers) zurückgesetzt werden.)
DRIVE_CLEAR
Achtung
Stellen Sie sicher, dass keine Bedienkonsole oder PC-Software an den Servotreiber angeschlossen ist, wenn dieser Befehl ausgeführt wird. Andernfalls wird die Programmausführungung unterbrochen, bis die Verbindung des anderen Gerätes mit dem Servotreiber getrennt wird.
3.2.83 DRIVE_CONTROL
/i
Typ Achsenparameter
Syntax DRIVE_CONTROL
löscht den Alarmzustand des Servotreibers, der über
Beschreibung Wird der Befehl auf eine Achse angewendet, die mit einem an den
MECHATROLINK-II-Bus angeschlossenen Servotreiber verbunden ist, wählt dieser Parameter die Daten aus, die nach der unten stehenden Tabelle durch DRIVE_MONITOR überwacht werden sollen. Wenn eine Achse mit einen Servotreiber über den TJ1-FL02 verbunden ist, stellt dieser Parameter die Ausgänge des TJ1-FL02 ein. Stellen Sie Bit 8 dieses Parameters so ein, dass OUT 0 für eine Achse eingeschaltet ist. Stellen Sie Bit 9 dieses Parameters so ein, dass OUT 1 für eine Achse eingeschaltet ist. Bitte beachten Sie, dass die gleichen Ausgänge von dem Befehl HW_PSWITCH benutzt werden.
Argumente
Beispiel DRIVE_CONTROL AXIS(2) = 256
In diesem Beispiel wird OUT 0 für Achse 2 eingeschaltet, die über den TJ1-FL02 angeschlossen ist.
Siehe auch
/i
Code Beschreibung
2 Schleppfehler (dies ist der tatsächliche FE, wenn ATYPE = 40 verwendet wird)
8 Istdrehzahl (bei Atype = 41 Einheiten = Max Drehzahl/40000000H, bei anderen
Atype-Baugruppen = Sollwerteinheiten/s)
9 Solldrehzahl (die gleichen Einheiten wie bei Istdrehzahl)
10 Zieldrehzahl (die gleichen Einheiten wie bei Istdrehzahl)
11 Drehmoment- (Kraft-) Sollwert (bei Atype = 42 Einheiten = Max Drehmoment/
40000000H, bei anderen Atype-Baugruppen = % über Nenndrehmoment)
14 Mit Pn813.0 ausgewählter Monitor. Nützlich, um die Servomonitore zu überwachen
(Unxxx)
15 Mit Pn813.1 ausgewählter Monitor. Nützlich, um die Servomonitore zu überwachen
(Unxxx)
Revision 3.0
PROGRAMMIERHANDBUCH 69
BASIC-Befehle
3.2.84 DRIVE_INPUTS
/i
Typ Achsenparameter
Syntax DRIVE_INPUTS
Beschreibung Dieser Parameter überwacht den Zustand der Eingänge des Servotreibers,
der über den MECHATROLINK-II-Bus angeschlossen ist. Der Parameterwert wird bei jeder SERVO_PERIOD aktualisiert. Er ist ein in Bits unterteiltes Wort, das aus den in der unten stehenden Tabelle aufgelisteten Bits besteht. Die empfohlene Einstellung ist: Pn81E = 4321 & Pn511 = 654x.
Argumente
Beispiel Alle Eingänge können mit diesem Wort wie folgt überwacht werden
(Sigma-II-Servotreiber):
CN1-40 DRIVE_INPUTS Bit 12 CN1-41 DRIVE_INPUTS Bit 13 CN1-42 DRIVE_INPUTS Bit 14 CN1-43 DRIVE_INPUTS Bit 15 CN1-44 DRIVE_INPUTS Bit 06 CN1-45 DRIVE_INPUTS Bit 07 CN1-46 DRIVE_INPUTS Bit 08
Beispiel Alle Eingänge können mit diesem Wort wie folgt überwacht werden
(Junma-Servotreiber):
CN1-1 DRIVE_INPUTS Bit 6 CN1-2 DRIVE_INPUTS Bit 2 CN1-3 DRIVE_INPUTS Bit 1 CN1-4 DRIVE_INPUTS Bit 0
Siehe auch
/i
Bitnummer Beschreibung Sigma-II Beschreibung Junma
0 P_OT P_OT
1N_OT N_OT
Revision 3.0
2 DEC Signal (wird mit Pn511.0 ausgewählt) /DEC
3 Drehgeber Phase A Nicht belegt
Bitnummer Beschreibung Sigma-II Beschreibung Junma
4 Drehgeber Phase B Nicht belegt
5 Drehgeber Phase C Nicht belegt
6 EXT1 Signal (wird mit Pn511.1 ausgewählt) /EXT1
7 EXT2 Signal (wird mit Pn511.2 ausgewählt) Nicht belegt
8 EXT3 Signal (wird mit Pn511.3 ausgewählt) Nicht belegt
9 BRK-Bremsausgang /BK
10 Reserviert E_STP
11 Reserviert Nicht belegt
12 IO12 (CN1-Eingangssignal in Pn81E.0
ausgewählt)
13 IO13 (CN1-Eingangssignal in Pn81E.1
ausgewählt)
14 IO14 (CN1-Eingangssignal in Pn81E.2
ausgewählt)
15 IO15 (CN1-Eingangssignal in Pn81E.3
ausgewählt)
Nicht belegt
Nicht belegt
Nicht belegt
Nicht belegt
3.2.85 DRIVE_MONITOR
/i
Typ Achsenparameter
Syntax DRIVE_MONITOR
Beschreibung Dieser Parameter enthält die Zustandsdaten eines Servotreibers, der über
den MECHATROLINK-II-Bus an das System angeschlossen ist. Die Daten, die überwacht werden sollen, werden mit DRIVE_CONTROL ausgewählt und können über Trajexia Tools angezeigt oder in einem Programm verwendet werden. Die überwachten Daten werden bei jeder SERVO_PERIOD aktualisiert.
Argumente
Beispiel Kein Beispiel.
Siehe auch
PROGRAMMIERHANDBUCH 70
BASIC-Befehle
3.2.86 DRIVE_READ
/i
Typ Achsenbefehl Syntax DRIVE_READ(parameter,Groesse,VR)
Beschreibung
Argumente Parameter
Beispiel IF DRIVE_READ($100,2,1) THEN
Revision 3.0
Siehe auch DRIVE_WRITE, HEX, $ (HEXADEZIMALE EINGABE).
Die Funktion aus, der über den MECHATROLINK-II-Bus an das Trajexia-System angeschlossen ist. Nach erfolgreicher Ausführung gibt der Befehl –1 zurück und speichert den Wert an dem Speicheradresse im VR-Speicher, der durch den VR-Parameter spezifiziert ist. Wenn der Befehl nicht ausgeführt werden kann, wird der Wert 0 zurückgegeben. Der Befehl wird im Treiber für die durch eingestellte Basisachse durchgeführt. Diese kann mit dem Modifikator sowie mit allen anderen Achsenbefehlen und -parametern geändert werden. Hinweis: Dieser Befehl wartet auf die Antwort von der Achse; daher kann die Ausführung des Befehls langsam sein und die Dauer variieren. Verwenden Sie diesen Befehl nicht zusammen mit anderen Befehlen, die eine schnelle Ausführung erfordern. Hinweis: Die Ausführung von DRIVE_READ deaktiviert zeitweilig die Anzeige des Servotreibers. Hinweis: DRIVE_READ gibt bei erfolgreicher Ausführung –1 zurück. Er gibt auch dann –1 zurück, wenn kein Parameter gelesen wurde, z. B. wenn die Parameternummer nicht existiert oder die falsche Größe hat.
Die Nummer des Parameters, der gelesen werden soll. Bitte beachten Sie, dass die Parameternummern hexadezimal sind. Das Format der Daten finden Sie im Servotreiber-Handbuch.
•Größe
Bei den meisten Parametern beträgt die Größe normalerweise 2 Byte. Einige spezielle Parameter können 4 Byte lang sein. Die Größen der einzelnen Parameter finden Sie im Servotreiber-Handbuch.
•VR
Die VR-Adresse, an der der gelesene Parameter bei erfolgreicher Ausführung gespeichert wird.
PRINT "Die Drehzahlregelkreisverstaerkung ist: ";VR(1) ELSE PRINT "Die Drehzahlregelkreisverstaerkung konnte nicht gelesen werden" ENDIF
DRIVE_READ
liest den spezifizierten Parameter eines Servotreibers
BASE
AXIS
Achtung
Stellen Sie sicher, dass keine Bedienkonsole oder PC-Software an den Servotreiber angeschlossen ist, wenn dieser Befehl ausgeführt wird. Andernfalls wird die Programmausführungung unterbrochen, bis die Verbindung des anderen Gerätes mit dem Servotreiber getrennt wird.
3.2.87 DRIVE_RESET
/i
Typ Achsenbefehl
Syntax DRIVE_RESET
Beschreibung Der Befehl DRIVE_RESET setzt einen Servotreiber zurück, der über den
MECHATROLINK-II-Bus angeschlossen ist.
Argumente
Beispiel Kein Beispiel.
Siehe auch
Achtung
Stellen Sie sicher, dass keine Bedienkonsole oder PC-Software an den Servotreiber angeschlossen ist, wenn dieser Befehl ausgeführt wird. Andernfalls wird die Programmausführungung unterbrochen, bis die Verbindung des anderen Gerätes mit dem Servotreiber getrennt wird.
PROGRAMMIERHANDBUCH 71
BASIC-Befehle
3.2.88 DRIVE_STATUS
/i
Typ Achsenparameter (Nur-Lesen)
Syntax DRIVE_STATUS
Beschreibung Bei MECHATROLINK-II-Achsen wird dieser Parameter über das
STATUS-Feld im MECHATROLINK-II-Kommunikationsrahmen eingestellt und bei jedem Servozyklus aktualisiert. Diese Bits können in Trajexia Tools im Konfigurationsfenster für die intelligenten Antriebe betrachtet und in Programmen verwendet werden. Die Erläuterungen zu den einzelnen Bits finden Sie in der unten stehenden Tabelle. (Hinweis: Es sind nur die Bits aufgelistet, die für MECHATROLINK-II-Achsen relevant sind.) Detaillierte Erklärungen zu diesen Status-Bits finden Sie im MECHATROLINK-II-Handbuch. Bei „Flex Achsmodul“-Achsen speichert dieser Parameter den Druckmarkenstatus und Zusatzeingänge sowie die Druckmarkenauswahl. Die Erläuterungen zu den einzelnen Bits finden Sie in der zweiten Tabelle unten. (Hinweis: Es sind nur die Bits aufgelistet, die für Flex Achsmodule relevant sind.)
Argumente
Beispiel PRINT DRIVE_STATUS AXIS(4)
Mit diesem Befehl wird der aktuelle Wert von DRIVE_STATUS für Achse (4) ausgegeben.
Beispiel BASE(3)
ATYPE = 44 IF (DRIVE_STATUS AND 32)= 32 THEN PRINT "REG 0 Eingang ist EIN für Achse(3)"
ENDIF
Siehe auch AXIS, MARK, MARKB, REGIST.
Bit Beschreibung (MECHATROLINK-II)
0Alarm
1 Vorsicht
2Bereit
3 Servo ein
4 Eingeschaltet
5 Maschinensperre
6 Ausgangsposition
7 Bei Position/Drehzahl
8 Ausgabe beendet
9 Drehmomentgrenzwert
10 Erfassung abgeschlossen
11 In Bereich/Drehzahlgrenze
/i
Bit Beschreibung (Flex Achsmodule)
0MARK
1 MARKB
2 REG-0 ausgewählter aktueller Wert
3 REG-1 ausgewählter aktueller Wert
4 AUX IN aktueller Wert
5 REG 0 aktueller Wert
6 REG 1 aktueller Wert
/i
Revision 3.0
PROGRAMMIERHANDBUCH 72
BASIC-Befehle
3.2.89 DRIVE_WRITE
/i
Typ Achsenbefehl Syntax DRIVE_WRITE(parameter, groesse, wert [,modus]) Beschreibung Die Funktion DRIVE_WRITE schreibt über den MECHATROLINK-II-Bus
einen Servoparameter. Nach erfolgreicher Ausführung gibt dieser Befehl – 1 zurück. Wenn der Befehl nicht ausgeführt werden kann, wird der Wert 0 zurückgegeben. Der Befehl wird im Treiber für die durch BASE eingestellte Basisachse durchgeführt. Diese kann mit dem Modifikator AXIS sowie mit allen anderen Achsenbefehlen und -parametern geändert werden. Bei einigen Parametern muss der Treiber aus- und wieder eingeschaltet werden. Der Befehl DRIVE_RESET kann zu diesem Zweck verwendet werden. Hinweis: Dieser Befehl wartet auf die Antwort von der Achse; daher kann die Ausführung des Befehls langsam sein und die Dauer variieren. Verwenden Sie diesen Befehl nicht zusammen mit anderen Befehlen, die eine schnelle Ausführung erfordern. Hinweis: Die Ausführung von DRIVE_WRITE deaktiviert zeitweilig die Anzeige des Servotreibers. Hinweis: DRIVE_WRITE gibt bei erfolgreicher Ausführung –1 zurück. Er gibt auch dann –1 zurück, wenn kein Parameter gelesen wurde, z. B. wenn die Parameternummer nicht existiert oder die falsche Größe hat.
Argumente Parameter
Die Nummer des Parameters, zu dem geschrieben werden soll. Bitte beachten Sie, dass die Parameternummern hexadezimal sind. Das Format der Daten finden Sie im Servotreiber-Handbuch.
Größe
Bei den meisten Parametern beträgt die Größe normalerweise 2 Byte. Einige spezielle Parameter können 4 Byte lang sein. Die Größen der einzelnen Parameter finden Sie im Servotreiber-Handbuch.
Wert
Der Wert, der in den Treiberparameter geschrieben werden soll.
Modus
Der Schreibmodus. Mögliche Werte: 0 (oder ausgelassen) – schreiben und im RAM speichern; 1 – schreiben und im EPROM speichern.
Beispiel IF DRIVE_WRITE($100,2,90) THEN
PRINT "Die neue Drehzahlregelkreisverstaerkung ist: 90"
Revision 3.0
ELSE PRINT "Die Drehzahlregelkreisverstaerkung konnte nicht in den RAM geschrieben werden" ENDIF
Siehe auch DRIVE_READ, DRIVE_RESET, $ (HEXADEZIMALE EINGABE)
Achtung
Stellen Sie sicher, dass keine Bedienkonsole oder PC-Software an den Servotreiber angeschlossen ist, wenn dieser Befehl ausgeführt wird. Andernfalls wird die Programmausführungung unterbrochen, bis die Verbindung des anderen Gerätes mit dem Servotreiber getrennt wird.
3.2.90 EDIT
/i
Typ Programmbefehl Syntax EDIT [ Zeilen_nummer ]
ED [ Zeilen_nummer ]
Beschreibung Der Befehl EDIT startet den integrierten Bildschirmeditor, mit dem ein
Programm im Controller über ein VT100-Terminal modifiziert werden kann. Das aktuell ausgewählte Programm wird bearbeitet. Die Editor-Befehle sind wie folgt: Dieser Befehl ist für ein Offline- (VT100-) Terminal implementiert. In Trajexia Tools kann der Benutzer den Befehl aus dem Menü Programm auswählen.
Editor beenden: [STRG] K und D
Zeile löschen: [STRG] Y
Argumente Zeilen_nummer
Die Nummer der Zeile, in der mit der Bearbeitung begonnen werden soll.
Beispiel Kein Beispiel. Siehe auch SELECT.
3.2.91 ELSE
Siehe IF..THEN..ELSE..ENDIF.
3.2.92 ELSEIF
Siehe IF..THEN..ELSE..ENDIF.
PROGRAMMIERHANDBUCH 73
BASIC-Befehle
3.2.93 ENCODER
/i
Typ Achsenparameter (Nur-Lesen)
Syntax ENCODER
Beschreibung Der Achsenparameter ENCODER enthält den direkten, unskalierten Wert
des Drehgebers. Der Achsenparameter MPOS enthält die gemessene Position, die aus dem Wert von ENCODER automatisch berechnet wird, wobei Überläufe und Offsets berücksichtigt werden.
Argumente
Beispiel Kein Beispiel.
Siehe auch AXIS, MPOS.
3.2.94 ENCODER_BITS
/i
Typ Achsenparameter
Syntax ENCODER_BITS = Wert
Beschreibung Dieser Achsenparameter konfiguriert die Schnittstelle für die Anzahl
der Drehgeber-Bits für Flex Achsmodule SSI und EnDat Absolutwert­Drehgeberachsen. Der Parameter ist nur für Achsen mit den ATYPE- Werten 47 und 48 verwendbar. Bei Flex Achsmodulen mit EnDat Absolutwert-Drehgeber sind die Bits 0–7 des Parameters auf die Gesamtanzahl der Drehgeber-Bits einzustellen. Die Bits 8–14 sind auf die Anzahl der zu verwendenden Multi-Umdrehungsbits einzustellen. Bei Flex Achsmodulen mit SSI Absolutwert-Drehgeber sind die Bits 0–5 des Parameters auf die Anzahl der Drehgeber-Bits einzustellen. Bit 6 sollte 1 für binären Betrieb sein oder 0 für Gray-Code. Hinweis: Bei Verwendung eines Flex Achsmoduls als Absolutwert­Drehgeberachse ist es wichtig, diesen Parameter für die Achse
Revision 3.0
Argumente
zu setzen, bevor ATYPE eingestellt wird.
Beispiel ENCODER_BITS = 25 + (256 * 12)
ATYPE = 47
In diesem Beispiel wird ein 25-Bit EnDat-Drehgeber verwendet, der 12 Bits für Multi-Umdrehungswerte und 13 Bits pro Umdrehung hat.
Beispiel ENCODER_BITS = 12 + (64 * 1)
ATYPE = 48
In diesem Beispiel wird ein 12-Bit- (4096 Positionen pro Umdrehung) SSI-Drehgeber mit binärem Ausgangstyp verwendet.
Siehe auch AXIS.
3.2.95 ENCODER_CONTROL
/i
Typ Achsenparameter
Syntax ENCODER_CONTROL = Wert
Beschreibung Der Parameter ENCODER_CONTROL ist nur verwendbar bei Flex
Achsmodulen in Verbindung mit einem EnDat-Absolutwert-Drehgeber mit ATYPE-Wert 47. Der Parameter steuert die Art, wie der EnDat-Drehgeber seine Position zurückmeldet. Der Drehgeber kann entweder so eingestellt werden, dass er zyklisch seine Position zurückmeldet, oder er kann auf einen Parameter-Lese-/Schreibmodus gesetzt werden. Die Standardeinstellung nach der Initialisierung ist der zyklische Rückmeldemodus. Weitere Informationen finden Sie in der Spezifikation für die EnDat Absolutwert­Drehgeberschnittstelle.
Argumente
Beispiel ENCODER_CONTROL AXIS(1) = 0
Mit diesem Befehl wird der zyklische Rückmeldemodus eingestellt.
Beispiel ENCODER_CONTROL AXIS(1) = 1
Mit diesen Befehl wird der Parameter-Lese-/Schreibmodus eingestellt.
Siehe auch AXIS, ENCODER, ENCODER_BITS.
PROGRAMMIERHANDBUCH 74
BASIC-Befehle
3.2.96 ENCODER_ID
/i
Typ Achsenparameter (Nur-Lesen) Syntax ENCODER_ID Beschreibung Dieser Parameter gibt den ID-Wert eines Absolutwert-Drehgebers für die
Achse zurück. Dieser Parameter ist nur verwendbar bei Flex Achsmodulen in Verbindung mit einem Tamagawa-Absolutwert-Drehgeber mit ATYPE -Wert 46. Er gibt vom Drehgeber den Parameter ENID zurück, der auf 17 gesetzt ist. Weitere Informationen finden Sie in der Spezifikation für die Tamagawa­Absolutwert-Drehgeberschnittstelle. Wenn dieser Parameter auf eine Achse mit einem anderen ATYPE-Wert als 46 angewendet wird, gibt er 0 zurück.
Argumente – Beispiel >>PRINT ENCODER_ID AXIS (1)
17.0000
Mit diesem Befehl wird der Wert für die Absolutwert-Drehgeber- ID für Achse 1 ausgegeben.
Siehe auch AXIS, ENCODER, ENCODER_BITS.
3.2.97 ENCODER_RATIO
/i
Typ Achsenparameter Syntax ENCODER_RATIO(nenner,zaehler) Beschreibung Erlaubt die Skalierung der Drehgeber-Signale mit einer Nicht-Integerzahl.
Dies erfolgt mit der Gleichung:
MPOS = (nenner)/(zaehler) x drehgeber_flankeneingang
Im Unterschied zu den UNITS-Parametern wirkt sich ENCODER_RATIO sowohl auf MOVECIRC als auch auf CAMBOX aus.
Hinweis: Große Verhältnisse sollten vermieden werden, da sie entweder einen Verlust der Auflösung oder eine erheblich geringere Stetigkeit im Bewegungsablauf zur Folge haben. Der tatsächliche physikalische Drehgeber-Zähler ist die Grundauflösung der Achse; der Einsatz dieses Befehls kann die Möglichkeit des Motion-Controllers einschränken, alle
Revision 3.0
Positionen genau zu erreichen. Hinweis: ENCODER_RATIO ersetzt nicht UNITS. Verwenden Sie ENCODER_RATIO nur dann, wenn es absolut notwendig ist. Verwenden Sie für die Skalierung aller anderen Achsen UNITS.
Argumente Nenner
Eine Zahl zwischen 0 und 16777215, die dazu verwendet wird, den Nenner in der obigen Gleichung zu definieren.
Zähler
Eine Zahl zwischen 0 und 16777215, die dazu verwendet wird, den Zähler in der obigen Gleichung zu definieren.
Beispiel ENCODER_RATIO(8192,7200)
UNITS = 20
Ein Drehtisch hat einen Servomotor, der direkt mit dem Drehpunkt verbunden ist. An der Rückseite des Servomotors ist ein Drehgeber angebracht und gibt einen Wert von 8192 Zählern pro Umdrehung zurück. Die Anwendung erfordert es, dass der Tisch in Grad kalibriert ist, und zwar so, dass ein Grad durch eine Integer-Zahl von Impulsen dargestellt wird.
Siehe auch
3.2.98 ENCODER_READ
/i
Typ Achsenbefehl Syntax ENCODER_READ(adresse) Beschreibung Der Befehl ENCODER_READ ist nur verwendbar bei Flex Achsmodulen
in Verbindung mit einem EnDat- Absolutwert-Drehgeber mit ATY PE-Wert 47. Der Parameter gibt einen 16-Bit-Drehgeberparameter zurück, der an der spezifizierten Adresse gespeichert ist. Die Bits 8–15 der Adresse sind die EnDat MRS-Feldeinstellungen; die Bits 0–7 sind der Offset innerhalb des EnDat MRS-Blocks. Wenn ein CRC-Fehler auftritt, gibt dieser Befehl –1 zurück. Weitere Informationen finden Sie in der Spezifikation für die EnDat Absolutwert-Drehgeberschnittstelle.
Argumente Adresse
Spezifiziert das EnDat MRS-Feld, das gelesen werden soll.
Beispiel VR(100) = ENCODER_READ($A10D) AXIS(7)
Dieser Befehl liest die Anzahl der Drehgeber-Bits und speichert diesen Wert am Speicheradresse VR(100).
Siehe auch AXIS, ENCODER, ENCODER_BITS.
PROGRAMMIERHANDBUCH 75
BASIC-Befehle
3.2.99 ENCODER_STATUS
/i
Typ Achsenparameter (Nur-Lesen)
Syntax ENCODER_STATUS
Beschreibung Dieser Parameter gibt den Zustand des Absolutwert-Drehgebers zurück.
Dieser Parameter ist nur verwendbar bei Flex Achsmodulen in Verbindung mit einem Tamagawa- Absolutwert-Drehgeber mit ATYPE-Wert 46. Er gibt sowohl das SF-Zustandsfeld als auch das ALMC-Drehgeber-Fehlerfeld zurück. Das SF-Feld ist in den Bits 0–7, das ALMC-Feld in den Bits 8–15. Weitere Informationen finden Sie in der Spezifikation für die Tamagawa Absolutwert-Drehgeberschnittstelle. Wenn dieser Parameter auf eine Achse mit einem anderen ATYPE-Wert als 46 angewendet wird, gibt er 0 zurück.
Argumente
Beispiel PRINT (ENCODER_STATUS AXIS (1) AND 255)
Mit diesem Befehl wird das SF-Feld des Tamagawa-Absolutwert-Drehgebers für Achse 1 ausgegeben.
Siehe auch AXIS, ENCODER, ENCODER_BITS.
3.2.100 ENCODER_TURNS
/i
Typ Achsenparameter (Nur-Lesen)
Syntax ENCODER_TURNS
Beschreibung Der Parameter ENCODER_TURNS gibt die Anzahl der Multi-
Umdrehungszähler vom Drehgeber zurück. Dieser Parameter ist nur verwendbar bei Flex Achsmodulen in Verbindung mit einem Tamagawa-Absolutwert-Geber mit ATYPE-Wert 46 oder einem EnDat-Absolutwert-Geber mit ATYPE-Wert 47. Die Multi-Umdrehungszähler werden nach der Initialisierung nicht automatisch auf den Achsenparameter MPOS angewendet. Der Anwendungsprogrammierer muss sie je nach Anforderung aus dem
Revision 3.0
Programm über den Befehl OFFPOS oder DEFPOS anwenden. Wenn dieser Parameter auf eine Achse mit einem anderen ATYPE-Wert als 46 oder 47 angewendet wird, gibt er 0 zurück.
Argumente
Beispiel PRINT ENCODER_TURNS AXIS (1)
Mit diesem Befehl wird der Multi-Umdrehungszähler des Absolutwert-Drehgebers für Achse 1 ausgegeben.
Siehe auch AXIS, ENCODER, ENCODER_BITS.
3.2.101 ENCODER_WRITE
/i
Typ Achsenbefehl
Syntax ENCODER_WRITE(adresse, wert)
Beschreibung Der Befehl ENCODER_WRITE ist nur verwendbar bei Flex Achsmodulen in
Verbindung mit einem EnDat-Absolutwert-Drehgeber mit ATYPE-Wert 47. Der Befehl schreibt einen Drehgeberparameter, der durch die Adresse spezifiziert wird. Die Bits 8–15 der Adresse sind die EnDat MRS-Feldeinstellungen; die Bits 0–7 sind der Offset innerhalb des EnDat MRS-Blocks. Wenn ein CRC­Fehler auftritt, gibt dieser Befehl 0 zurück. Beim Schreiben zu Adresse 0 wird eine Drehgeber-Rücksetzfunktion ausgeführt. Weitere Informationen finden Sie in der Spezifikation für die EnDat-Absolutwert-Drehgeberschnittstelle. Um mit diesem Befehl einen Drehgeber-Parameter erfolgreich zu schreiben, sollte der Parameter ENCODER_WRITE auf 1 gesetzt und der Lese-/Schreibmodus eingestellt werden.
Argumente Adresse
Spezifiziert das EnDat MRS-Feld, zu dem geschrieben werden soll.
Wert
Ein BASIC-Ausdruck.
Beispiel Kein Beispiel.
Siehe auch AXIS, ENCODER, ENCODER_BITS, ENCODER_CONTROL.
3.2.102 ENDIF
Siehe IF..THEN..ELSE..ENDIF.
PROGRAMMIERHANDBUCH 76
BASIC-Befehle
3.2.103 ENDMOVE
/i
Typ Achsenparameter
Syntax ENDMOVE
Beschreibung
Argumente
Beispiel Kein Beispiel.
Siehe auch AXIS, DPOS, FE_LIMIT, UNITS.
Der Achsenparameter aktuellen Bewegung in Benutzereinheiten. Wenn der Achsenparameter aktiviert ist, kann der Parameter Achsenstillstand eine Änderung der gewünschten Position ( Hinweis: Da die gemessene Positionen zu Anfang nicht geändert wird, sollte der Grenzwert des Schleppfehlers (FE_LIMIT) berücksichtigt werden. Wenn die Änderung der gewünschten Position zu groß ist, wird der Grenzwert überschritten.
ENDMOVE
speichert die Position am Ende der
ENDMOVE
geschrieben werden, um bei
DPOS
3.2.104 EPROM
/i
Typ Programmbefehl
Syntax EPROM
Beschreibung Der Befehl EPROM speichert die im batteriegestützten RAM-Speicher
des TJ1-MC__ enthaltenen BASIC-Programme im Flash-EPROM-Speicher. Ob die im Flash-EPROM-Speicher gespeicherten Programme beim Hochfahren ins RAM kopiert werden, wird durch den Systemparameter POWER_UP gesteuert. Hinweis: Trajexia Tools bietet diesen Befehl als Schaltfläche auf der Bedienkonsole an. Außerdem wird durch Pop-up-Bildschirme abgefragt, ob die Programmdaten in den Flash-Speicher geschrieben werden sollen.
Argumente
Beispiel Kein Beispiel.
Revision 3.0
Siehe auch POWER_UP, RUNTYPE.
SERVO
) zu erreichen.
3.2.105 ERROR_AXIS
/i
Typ Systemparameter (Nur-Lesen)
Syntax ERROR_AXIS
Beschreibung Der Achsenparameter ERROR_AXIS enthält die Nummer der Achse, die den
Argumente
Beispiel Kein Beispiel.
Siehe auch AXISSTATUS, ERRORMASK, MOTION_ERROR, WDOG.
Bewegungsfehler verursacht hat. Eine Bewegungsfehler tritt auf, wenn der AXISSTATUS-Zustand für eine der Achsen mit der Einstellung ERRORMASK übereinstimmt. In diesem Fall wird die Achsenfreigabe (WDOG) ausgeschaltet, der Parameter MOTION_ERROR hat den Wert 1, und der Parameter ERROR_AXIS enthält die Nummer der ersten Achse, bei der der Fehler auftritt.
3.2.106 ERROR_LINE
/i
Typ Task-Parameter (Nur-Lesen)
Syntax ERROR_LINE
Beschreibung Der Parameter ERROR_LINE enthält die Nummer der Zeile, die den letzten
BASIC-Laufzeitfehler in der Programmausführungung verursacht hat. Dieser Wert ist nur gültig, wenn der Parameter BASICERROR TRUE ist. Jeder Task hat seinen eigenen ERROR_LINE-Parameter. Verwenden Sie den Modifikator PROC, um auf den Parameter für einen bestimmte Task zuzugreifen. Ohne PROC wird der aktuelle Task ausgeführt.
Argumente
Beispiel >> PRINT ERROR_LINE PROC(4)
23.0000
Siehe auch BASICERROR, PROC, RUN_ERROR.
PROGRAMMIERHANDBUCH 77
BASIC-Befehle
3.2.107 ERRORMASK
/i
Typ Achsenparameter
Syntax ERRORMASK
Beschreibung Der Achsenparameter ERRORMASK enthält einen Maskenwert, der bei
jedem Servozyklus Bit für Bit über eine AND-Link mit dem Achsenparameter AXISSTATUS verbunden ist, um zu ermitteln, ob ein Bewegungsfehler aufgetreten ist. Wenn ein Bewegungsfehler auftritt, wird die Achsenfreigabe (WDOG) ausgeschaltet, der Parameter MOTION_ERROR hat den Wert 1, und der Parameter ERROR_AXIS enthält die Nummer der ersten Achse, bei der der Fehler auftritt. Überprüfen Sie den Parameter AXISVALUES auf die Zuordnungen der Status-Bits. Die Standardeinstellung von ERRORMASK ist 268.
Argumente
Beispiel Kein Beispiel.
Siehe auch AXIS, AXISSTATUS, MOTION_ERROR, WDOG.
Achtung
Der Benutzer muss definieren, in welchen Fällen ein Bewegungsfehler generiert wird. Für einen sicheren Betrieb wird dringend empfohlen, immer einen Bewegungsfehler zu generieren, wenn der Schleppfehler seinen Grenzwert überschritten hat. Dies erfolgt durch Einstellung von Bit 8 von ERRORMASK.
3.2.108 ETHERNET
/i
Typ Systembefehl
Syntax ETHERNET(funktion, baugruppen_nummer, parameter [,werte])
Beschreibung Der Befehl ETHERNET wird dazu verwendet, bestimmte Funktionen der
Ethernet-Kommunikation zu lesen und einzustellen. Der Befehl ETHERNET kann in der Befehlszeile über die serielle Schnittstelle 0 eingegeben werden, wenn Trajexia Tools vom System getrennt ist. Hinweis: Um die neuen Parameter zu aktivieren, müssen Sie die Versorgungsspannung für Trajexia aus- und wieder einschalten.
Argumente Funktion
0 = Lesen, 1 = Schreiben
Baugruppen_nummer
–1
Parameter
0 = IP-Adresse; 2 = Subnetzmaske; 3 = MAC-Adresse; 8 = Gateway; 11 = ARP-Cache (Nur-Lesen)
Werte
Der für einen Schreibvorgang erforderliche Parameter
Beispiel ETHERNET(1,–1,0,192,200,185,2)
Stellen Sie die Trajexia-IP-Adresse auf 192.200.185.002 ein.
Siehe auch
Revision 3.0
PROGRAMMIERHANDBUCH 78
BASIC-Befehle
3.2.109 EX
/i
Typ Systembefehl
Syntax EX[(option)]
Beschreibung Setzt den Controller in den Zustand wie beim Hochfahren zurück.
Mit dem Befehl EX kann die Rücksetzung und auf zwei verschiedene Arten erfolgen. EX ohne das Argument oder EX(0), um die Software des Controllers zurückzusetzen. EX(1) führt eine Hardware-Rücksetzung des Controllers aus.
Argumente
Beispiel Kein Beispiel.
Siehe auch
3.2.110 EXP
/i
Typ Mathematische Funktion
Syntax EXP(ausdruck)
Beschreibung Die Funktion EXP gibt den Exponentialwert eines Ausdrucks zurück.
Argumente Ausdruck
Jeder gültige BASIC-Ausdruck.
Beispiel >> print exp(1.0)
2.7183
Siehe auch
3.2.111 FALSE
/i
Typ Konstante (Nur-Lesen)
Syntax FALSE
Beschreibung Die Konstante FALSE gibt den numerischen Wert 0 zurück.
Argumente
Beispiel Test:
res = IN(0) OR IN(2) IF res = FALSE THEN PRINT "Eingaenge sind aus" ENDIF
Siehe auch
3.2.112 FAST_JOG
/i
Typ Achsenparameter
Syntax FAST_JOG
Beschreibung Der Achsenparameter FAST_JOG enthält die Nummer des Eingangs, der
als Schnelltippeingang verwendet werden soll. Die Nummer kann eine Zahl zwischen 0 und 7 sein. Standardmäßig ist der Parameter auf –1 eingestellt, und es ist kein Eingang ausgewählt. Der Schnelltippeingang steuert die Tippgeschwindigkeit zwischen zwei Drehzahlen. Wenn der Schnelltippeingang eingestellt ist, wird die durch den Achsenparameter SPEED vorgegebene Drehzahl als Schrittgeschwindigkeit verwendet. Wenn der Schnelltippeingang nicht eingestellt ist, wird die durch den Achsenparameter JOGSPEED vorgegebene Drehzahl verwendet. Hinweis: Dieser Eingang ist in aktiviertem Zustand null.
Argumente
Beispiel Kein Beispiel.
Revision 3.0
Siehe auch AXIS, FWD_JOG, JOGSPEED, REV_JOG, SPEED.
PROGRAMMIERHANDBUCH 79
BASIC-Befehle
3.2.113 FASTDEC
/i
Typ Achsenparameter
Syntax FASTDEC
Beschreibung Die Standardeinstellung ist null. Wenn für FASTDEC ein anderer Wert als
Null spezifiziert ist, verzögert die Achse bei dieser Verzögerungsrate vom „aktuellen Wert bis Null“, wenn ein Achsen-Begrenzungsschalter oder eine Grenzposition erreicht ist.
Argumente
Beispiel Kein Beispiel.
Siehe auch
3.2.114 FE
/i
Typ Achsenparameter (Nur-Lesen)
Syntax FE
Beschreibung Der Achsenparameter FE enthält den Positionsfehler in Benutzereinheiten.
Dieser wird berechnet aus der gewünschten Position (achsenparameter DPOS) minus die gemessene Position (achsenparameter MPOS). Der Wert des Schleppfehlers kann mit den Achsenparametern FE_LIMIT und FE_RANGE überprüft werden.
Argumente
Beispiel Kein Beispiel.
Siehe auch AXIS, DPOS, FE_LIMIT, FE_RANGE, MPOS, UNITS.
3.2.115 FE_LATCH
/i
Typ Achsenparameter (Nur-Lesen)
Syntax FE_LATCH
Beschreibung Enthält den ersten FE-Wert, der bewirkt hat, dass die Achse den Controller
in den Zustand MOTION_ERROR geschaltet hat. Dieser Wert wird nur gesetzt, wenn der FE den Grenzwert FE_LIMIT überschreitet und der Parameter SERVO auf 0 gesetzt wurde. FE_LATCH wird auf 0 zurückgesetzt, wenn der SERVO-Parameter der Achse wieder auf 1 gesetzt ist.
Argumente
Beispiel Kein Beispiel.
Siehe auch
3.2.116 FE_LIMIT
/i
Typ Achsenparameter
Syntax FE_LIMIT
Beschreibung Der Achsenparameter FE_LIMIT enthält den Grenzwert für den maximal
zulässigen Schleppfehler in Benutzereinheiten. Bei einer Überschreitung wird Bit 8 des Parameters AXISSTATUS der Achse gesetzt. Wenn der Parameter ERRORMASK richtig gesetzt ist, wird ein Bewegungsfehler generiert. Dieser Grenzwert dient zum Schutz gegen Fehlerzustände, z. B. mechanische Sperrung, Verlust der Rückmeldung vom Drehgeber usw.
Argumente
Beispiel Kein Beispiel.
Siehe auch AXIS, AXISSTATUS, ERRORMASK, FE, FE_RANGE, UNITS.
Revision 3.0
PROGRAMMIERHANDBUCH 80
BASIC-Befehle
3.2.117 FE_LIMIT_MODE
/i
Typ Achsenparameter
Syntax FE_LIMIT_MODE = Wert
Beschreibung Wenn dieser Parameter auf null gesetzt ist, löst die Achse sofort einen
MOTION_ERROR aus, wenn der FE den Wert für FE_LIMIT überschreitet. Wenn FE_LIMIT_MODE auf 1 gesetzt ist, generiert die Achse nur dann einen MOTION_ERROR, wenn der FE den Wert für FE_LIMIT während zwei aufeinander folgender Servozyklen überschreitet. Das heißt: Wird FE_LIMIT nur bei einem Servozyklus überschritten, wird dies ignoriert. Der Standardwert für FE_LIMIT_MODE ist 0.
Argumente
Beispiel Kein Beispiel.
Siehe auch
3.2.118 FE_RANGE
/i
Typ Achsenparameter
Syntax FE_RANGE
Beschreibung
Argumente
Beispiel Kein Beispiel.
Siehe auch AXIS, AXISSTATUS, ERRORMASK, FE, UNITS.
Revision 3.0
Der Achsenparameter Warnbereich in Benutzereinheiten. Wenn der Schleppfehler diesen Wert an einer Servoachse übersteigt, wird Bit 1 in dem Achsenparameter eingeschaltet. Dieser Bereich wird als erstes Zeichen für Fehlerzustände in der Anwendung benutzt (vergleiche FE_LIMIT).
FE_RANGE
enthält den Grenzwert für den Schleppfehler-
AXISSTATUS
3.2.119 FHOLD_IN
/i
Typ Achsenparameter
Syntax FHOLD_IN
FH_IN
Beschreibung Der Achsenparameter FHOLD_IN enthält die Nummer des Eingangs, der
als Feedhold-Eingang verwendet werden soll. Der gültige Eingangsbereich ist 0 bis 31. Die Werte 0 bis 15 stellen physikalisch die Eingänge des TJ1-MC__ E/A-Steckverbinders dar und werden für alle Achsen gemeinsam benutzt. Die Werte 16 bis 27 stellen Software-Eingänge dar, die beliebig in Programmen und Befehlen verwendet werden können, z. B. IN und OP. Sie gelten ebenfalls für alle Achsen. Die Werte 28 bis 31 werden direkt den am CN1-Steckverbinder vorhandenen Treiber-Eingängen zugewiesen und sind für jede Achse eindeutig. Welche Treiber-Eingänge den Eingängen 28 bis 31 zugewiesen werden, hängt von der Servotreiber-Einstellung in Parameter Pn81E ab. Die empfohlene Einstellung ist Pn81E = 0 x 4321, mit folgender Zuordnung: Standardmäßig ist der Parameter auf –1 eingestellt, und es ist kein Eingang ausgewählt. Hinweis: Dieser Eingang ist in aktiviertem Zustand null.
Sigma II Eingang 28: CN1-40
Eingang 29: CN1-41
Eingang 30: CN1-42
Eingang 31: CN1-43
Sigma III Eingang 28: CN1-13
Junma Eingang 26: CN1-2
Eingang 29: CN1-7
Eingang 30: CN1-8
Eingang 31: CN1-9
Eingang 27: CN1-1
Weitere Informationen zum Einstellen des Parameters Pn81E finden Sie im Servotreiber-Handbuch. Standardmäßig ist der Parameter auf –1 eingestellt, und es sind keine Eingänge ausgewählt.
PROGRAMMIERHANDBUCH 81
BASIC-Befehle
Wenn eine Eingangsnummer gesetzt ist und der Feedhold-Eingang aktiviert wird, ändert sich die Drehzahl der Achse zu dem Wert, der im Achsenparameter FHSPEED eingestellt ist. Die aktuelle Bewegung wird nicht abgebrochen. Außerdem wird Bit 7 des Parameters AXISSTATUS gesetzt. Wenn der Eingang wieder zurückgesetzt wird, wird jede Bewegung, die beim Setzen des Eingangs ausgeführt wurde, mit der programmierten Drehzahl fortgesetzt. Hinweis: Diese Funktion ist nur bei Bewegungen im Drehzahlbetrieb möglich. Auf Bewegungen, die nicht im Drehzahlbetrieb ausgeführt werden (CAMBOX, CONNECT und MOVELINK), wirkt sich die Funktion nicht aus.
Argumente
Beispiel Kein Beispiel.
Siehe auch AXIS, AXISSTATUS, UNITS.
3.2.120 FHSPEED
/i
Typ Achsenparameter
Syntax FHSPEED
Beschreibung Der Achsenparameter FHSPEED enthält die Feedhold-Geschwindigkeit.
Dieser Parameter kann auf den Wert in Benutzereinheiten/s gesetzt werden, mit dem sich die Achse bewegt, wenn der Feedhold-Eingang aktiviert wird. Die aktuelle Bewegung wird nicht abgebrochen. FHSPEED kann jeden positiven Wert einschließlich 0 annehmen. Der Standardwert ist 0. Hinweis: Diese Funktion ist nur bei Bewegungen im Drehzahlbetrieb möglich. Auf Bewegungen, die nicht im Drehzahlbetrieb ausgeführt werden (CAMBOX, CONNECT und MOVELINK), wirkt sich die Funktion nicht aus.
Argumente
Beispiel Kein Beispiel.
Siehe auch AXIS, AXISSTATUS, FHOLD_IN, UNITS.
3.2.121 FINS_COMMS
/i
Typ Kommunikationsbefehl
Syntax FINS_COMMS(typ, netzwerk, teilnehmer, baugruppe, ziel_bereich,
ziel_offset, laenge, lokaler_bereich, lokaler_offset, zeitueberschreitung[, ip1, ip2, ip3, ip4])
Beschreibung
FINS (Factory Interface Network Service) ist ein proprietäres OMRON­Kommunikationsprotokoll. Ein Teilbereich dieses Protokolls ist in Trajexia implementiert. Das FINS-Protokoll wurde in der Absicht implementiert, eine nahtlose Kommunikation mit anderen OMRON-Geräten (SPS, MMS, usw.) und Software (CX-Drive, CX-Server, usw.) zu ermöglichen. Weitere Informationen über das FINS-Kommunikationsprotokoll finden Sie in Abschnitt
4.2.4 und im Referenzhandbuch für Kommunikationsbefehle, Kat.-Nr. W342-E1, Abschnitte 3 und 5. Trajexia verfügt über integrierte FINS-Client-Funktionen, damit es die FINS­Kommunikation mit FINS-Slave-Geräten über Sowohl die FINS 0101- (Speicher lesen) als auch die FINS 0102- (Speicher schreiben) Befehle sind implementiert. Mit FINS 0101 kann der Speicher aus anderen Geräten mit FINS-Serverfähigkeit gelesen werden. FINS 0102 kann zum Schreiben von Daten zu Geräten mit FINS-Serverfähigkeit verwendet werden. Dieser Befehl gibt einen der folgenden Werte zurück, abhängig vom Ergebnis der Ausführung: –1: Der Befehl wurde erfolgreich ausgeführt. 0: Der Befehl konnte nicht ausgeführt werden. 1: Die Abfrage wurde nicht gesendet, weil der Client oder das FINS-Protokoll belegt war. 2: Einer oder mehrere der Abfrageparameter ist/sind ungültig. 3: Ungültiger Quell-Speicherbereich. 4: Abfrage wurde gesendet, aber keine Antwort vom dezentralen Server innerhalb des Zeitüberschreitungs-Zeitraums empfangen. 5: Fehlerantwort-Code vom dezentralen Server empfangen.
FINS_COMMS
initiieren kann.
Revision 3.0
PROGRAMMIERHANDBUCH 82
BASIC-Befehle
Argumente Typ
Revision 3.0
Der Typ des FINS-Befehls. 0 bedeutet FINS 0101, Speicher aus Ziel­FINS-Server lesen. 1 bedeutet FINS 0102, Speicher zu Ziel-FINS-Server schreiben.
Netzwerk
Das Zielnetzwerk. Weitere Angaben finden Sie im Referenzhandbuch für Kommunikationsbefehle, Kat.-Nr. W342-E1, Abschnitt 3.
Te ilneh mer
Der Teilnehmer des Ziel-FINS-Servers. Weitere Angaben finden Sie im Referenzhandbuch für Kommunikationsbefehle, Kat.-Nr. W342-E1, Abschnitt 3.
Baugruppe
Die Baugruppennummer des Ziel-FINS-Servers. Weitere Angaben finden Sie im Referenzhandbuch für Kommunikationsbefehle, Kat.-Nr. W342-E1, Abschnitt 3.
Ziel_Bereich
Der Speicherbereich, auf den auf dem-FINS-Zielserver zugegriffen wird. Bereich: 128..255. Bitte beachten Sie, dass dieser Bereich einen der folgenden Werte haben muss, wenn das Ziel ein anderes Trajexia­System ist: 0xB0: Integer-VR-Wert; 0x82: Integer-TABLE-Wert; 0xC2: Gleitkomma-TABLE-Wert.
Ziel_Offset
Der Speicher-Offset auf dem FINS-Zielserver. Bereich: 0..65535. Bitte beachten Sie, dass die Grenzwerte für die TABLE- oder VR-Adressen für diesen Bereich eingeschränkter sind, wenn das Ziel ein anderes Trajexia-System ist.
Länge
Die Anzahl der zu übertragenden Elemente. Die Anzahl richtet sich nach der FINS-Rahmenlänge und den Fähigkeiten des Clients und des Ziel-Servers. Bei einem Trajexia-System sind 1 ... 700 Integer-Werte oder 1 … 350 Gleitkommawerte möglich.
lokaler_Bereich
Der lokale (Quell-) Speicherbereich. Bitte beachten Sie, dass dieser Bereich einen der folgenden Werte haben muss, wenn das Ziel ein anderes Trajexia-System ist: 0x00: Integer-VR-Wert; 0x01: Integer­TABLE-Wert; 0x02: Gleitkomma-TABLE-Wert.
lokaler_Offset
Der Offset des ersten Wertes im lokalen (Quell-) Speicherbereich. Der Bereich richtet sich nach der Größe des VR- oder TABLE-Arrays und dem Wert für das Längenargument.
Zeitüberschreitung
Die Anzahl der Millisekunden, die auf eine Antwort vom FINS-Zielserver gewartet werden muss, bevor die Zeit überschritten ist.
IP1, IP2, IP3, IP4
Optionale Parameter, die die (Ziel-) Server-IP-Adresse definieren. Diese Argumente müssen benutzt werden, wenn sowohl das Trajexia-System als auch der FINS-Zielserver nicht zu demselben Netzwerk gehören.
Beispiel Ein Trajexia-System und eine OMRON CJ1-SPS mit Ethernet-
Baugruppensystem CJ1W-ETN11 sind mit demselben Netzwerk verbunden. Die IP-Adresse des Trajexia-Systems ist 192.168.0.5. Die IP-Adresse der SPS-Ethernet-Baugruppe ist 192.168.0.12. Wenn der Befehl FINS_COMMS(0,0,12,0,$82, 1000,20,0,500,5000,192,168,0,12) ausgeführt wird, werden 20 Worte (Länge = 20) des DM-SPS-Speicherbereichs (Ziel_Bereich = $82) ab DM1000 ausgelesen (Ziel_Offset = 1000) und im Integer-Format in den Trajexia-VR-Speicher geschrieben (lokaler_Bereich = 0), und zwar ab VR(500) (lokaler_Offset = 500). Daher werden die Werte DM1000 bis DM1019 im SPS-Speicherbereich im Trajexia-Speicher von VR(500) bis VR(519) abgelegt. Die Zeitüberschreitung ist auf 5 Sekunden eingestellt.
Siehe auch
Wenn der Befehl ausgeführt wird, werden 10 Worte ( als Integer ( CIO-Bereich der SPS geschrieben ( (
Ziel_Offset = 50
-Speicherbereich im Speicher der SPS von CIO50 bis CIO59 abgelegt. Die Zeitüberschreitung ist auf 3 Sekunden eingestellt.
FINS_COMMS(1,0,12,0,$80, 50,10,0,300,3000,192,168,0,12)
Länge = 10
lokaler_Bereich = 0
). Daher werden die Werte VR(300) bis VR(309) im Trajexia
) ab VR(300) (
Ziel_Bereich = $80
) des Trajexia-VR-Speichers
lokaler_Offset = 300
), und zwar ab CIO50
) in den
PROGRAMMIERHANDBUCH 83
BASIC-Befehle
3.2.122 FLAG
/i
Typ Systembefehl
Syntax FLAG(merker_nummer [,wert])
Beschreibung Der Befehl FLAG wird dazu verwendet, eine Bank von 32 Merker-Bits
einzustellen und zu lesen. Der Befehl FLAG kann zusammen mit einem oder zwei Parametern verwendet werden. Mit einem spezifizierten Parameter wird der Zustand des gegebenen Merker-Bits zurückgegeben. Mit zwei spezifizierten Parametern wird das gegebene Merker-Bit auf den Wert des zweiten Parameters gesetzt. Der Befehl FLAG dient dazu, die Kompatibilität mit älteren Controllern zu unterstützen und ist für neue Programme nicht empfehlenswert.
Argumente Merker_nummer
Die Merkernummer ist ein Wert von 0..31.
Wert
Wird dieser Parameter spezifiziert, gibt er den Zustand des gegebenen Merkers an, d. h. Ein oder Aus. Die Schreibweise kann auch 1 oder 0 sein.
Beispiel FLAG(27,ON)
Setzt Merker-Bit 27 auf Ein.
Siehe auch
3.2.123 FLAGS
/i
Typ Systembefehl
Syntax FLAGS([wert])
Beschreibung Liest und setzt FLAGS als Block. Der Befehl FLAGS dient dazu, die
Kompatibilität mit älteren Controllern zu unterstützen und ist für neue Programme nicht empfehlenswert. Die 32 Merker-Bits können mit FLAGS ausgelesen und mit FLAGS(wert) eingestellt werden.
Argumente Wert
Die dezimale Entsprechung des Bit-Musters, auf das die Merker eingestellt werden müssen. Siehe Tabelle unten.
Beispiel FLAGS(146) ' 2 + 16 + 128
Setzt Merker 1,4 und 7 auf EIN, alle anderen auf AUS.
Beispiel IF (FLAGS und 8) <>0 dann GOSUB irgendwo
Test, ob Merker 3 gesetzt ist.
Siehe auch
/i
Bitnummer Dezimalwert
01
12
24
38
416
532
664
7128
Revision 3.0
PROGRAMMIERHANDBUCH 84
BASIC-Befehle
3.2.124 FOR..TO..STEP..NEXT
/i
Typ Programmsteuerungsbefehl
Syntax FOR Variable = Start TO Ende [STEP Inkrement]
Befehle NEXT Variable
Beschreibung Die FOR ... NEXT Schleife erlaubt es, das Programmsegment zwischen
FOR und der NEXT-Anweisung mehrmals zu wiederholen.
Am Eingang der Schleife wird die Variable auf den Startwert initialisiert, und der Befehlsblock wird anschließend ausgeführt. Bei Erreichen des Befehls NEXT wird die Variable um das Inkrement erhöht, das nach STEP spezifiziert ist. Der STEP-Wert kann positiv oder negativ sein; bei Auslassung wird der Wert 1 angenommen. Solange die Variable kleiner oder gleich dem Endwert ist, wird der Befehlsblock wiederholt ausgeführt, bis die Variable größer als der Endwert ist. In diesem Fall fährt die Programmausführung nach NEXT fort. Hinweis: FOR ... NEXT -Anweisungen können in einem BASIC-Programm bis zu acht Ebenen tief verschachtelt werden.
Argumente Variable
Ein BASIC-Ausdruck.
Start
Ein BASIC-Ausdruck.
Ende
Ein BASIC-Ausdruck.
Inkrement
Ein BASIC-Ausdruck.
Befehle
Einer oder mehrere BASIC-Befehle.
Beispiel schleife:
FOR Dist = 5 TO –5 STEP –0,25 MOVEABS(dist) GOSUB auf_nehmen NEXT Dist
Das Inkrement STEP kann positiv oder negativ sein.
Beispiel Schleife1:
FOR l1 = 1 TO 8 Schleife2: FOR l2 = 1 TO 6 MOVEABS(l1 * 100,l2 * 100) GOSUB 1000 NEXT l2 NEXT l1 FOR..TO..STEP..NEXT können verschachtelt werden (bis zu acht Ebenen tief), wenn die inneren FOR und NEXT -Befehle beide innerhalb der äußeren FOR..TO..STEP..NEXT -Schleife sind.
Siehe auch REPEAT..UNTIL, WHILE..WEND.
Beispiel FOR opnum = 8 TO 13
OP(opnum,ON) NEXT opnum
Diese Schleife schaltet die Ausgänge 8 bis 13 ein.
Revision 3.0
PROGRAMMIERHANDBUCH 85
BASIC-Befehle
3.2.125 FORWARD
/i
Typ Achsenbefehl
Syntax FORWARD
FO
Beschreibung Der Befehl FORWARD bewegt eine Achse kontinuierlich mit der
Geschwindigkeit vorwärts, die im Achsenparameter SPEED eingestellt ist. Die Beschleunigungsrate ist im Achsenparameter ACCEL definiert. FORWARD wirkt sich auf die Basisachse aus (Einstellung mit BASE), wenn nicht AXIS verwendet wurde, um eine Achse temporär zu spezifizieren. Hinweis: Die Vorwärtsbewegung kann mit dem Befehl
RAPIDSTOP
Argumente
Beispiel Start:
FORWARD WAIT UNTIL IN(0) = ON ' Warte auf Stoppsignal CANCEL
Siehe auch AXIS, CANCEL, RAPIDSTOP, REVERSE, UNITS.
oder durch Erreichen des Vorwärts-Grenzwertes gestoppt werden.
CANCEL
3.2.126 FPGA_VERSION
/i
Typ Slot-Parameter
Syntax FPGA_VERSION SLOT(baugruppen_nummer)
Beschreibung Dieser Parameter gibt mit Baugruppen_nummer die FPGA-Version der
Baugruppe in einem Controller-System zurück.
Argumente Baugruppen_nummer
Die Baugruppennummern sind –1 bis 6 einschließlich 0, wobei –1 der TJ1-MC__ und 0 die Einheit unmittelbar rechts vom TJ1-MC__ ist.
Beispiel
Siehe auch
Revision 3.0
oder
3.2.127 FRAC
/i
Typ Mathematische Funktion
Syntax FRAC(ausdruck)
Beschreibung Die Funktion FRAC gibt den Dezimalbruchteil des Ausdrucks zurück.
Argumente Ausdruck
Jeder gültige BASIC-Ausdruck.
Beispiel >> PRINT FRAC(1.234)
0.2340
Siehe auch
3.2.128 FRAME
/i
Typ Systemparameter
Syntax FRAME = Wert
Beschreibung Wird verwendet, um den Rahmen zu spezifizieren, innerhalb dessen bei
Rahmentransformationen operiert werden soll. Rahmentransformationen dienen dazu, Bewegungen in einem Koordinaten-Bezugsrahmen mit mehreren Achsen zu ermöglichen, wobei die Bewegungen nicht eins-zu-eins mit den Achsen übereinstimmen. Ein Beispiel ist ein SCARA-Robotarm mit Gelenkachsen. Damit die Spitze des Robotarms geradlinige Bewegungen in X-Y-Richtung ausführen kann, müssen die Motoren die Bewegungen in einem Muster ausführen, das durch die Geometrie des Roboters bestimmt wird. Rahmentransformationen zur Ausführung von Funktionen wie dieser müssen aus der Quellsprache C kompiliert und in die Controller-Systemsoftware geladen werden. Wenden Sie sich an OMRON, wenn Sie solche Funktionen benötigen. Ein Maschinensystem kann mit mehreren verschiedenen Rahmen spezifiziert werden. Der aktuell aktive FRAME wird mit dem Systemparameter FRAME spezifiziert. Standardmäßig ist FRAME 0, was einer Eins-zu-eins-Transformation entspricht.
Argumente
Beispiel FRAME = 1
Siehe auch
PROGRAMMIERHANDBUCH 86
BASIC-Befehle
3.2.129 FREE
/i
Typ Systemfunktion
Syntax FREE
Beschreibung Die Funktion FREE gibt den freien Speicherplatz zurück, der für
Anwenderprogramme und TABLE-Array-Elemente verfügbar ist. Hinweis: Jede Zeile beansprucht mindestens 4 Zeichen (Byte) im Speicher. Diese sind für die Länge dieser Zeile, die Länge der vorherigen Zeile, die Anzahl der Leerzeichen am Anfang der Zeile und ein einzelnes Befehls­Token. Weitere Befehle benötigen ein Byte pro Token; die meisten Daten sind im ASCII-Format gespeichert. Der TJ1-MC__ kompiliert Programme, bevor sie ausgeführt werden, d. h., es wird der doppelte Speicherplatz benötigt, um ein Programm ausführen zu können.
Argumente
Beispiel >> PRINT FREE
47104.0000
Siehe auch
3.2.130 FS_LIMIT
/i
Typ Achsenparameter
Syntax FS_LIMIT
FSLIMIT
Beschreibung Der Achsenparameter FS_LIMIT enthält die Absolutposition des Vorwärts-
Softwaregrenzwertes in Benutzereinheiten. Ein Softwaregrenzwert für die Vorwärtsbewegung kann aus dem Programm heraus gesetzt werden, um den Arbeitsbereich der Maschine zu steuern. Wenn der Grenzwert erreicht ist, verzögert der TJ1-MC__ auf 0, dann wird die Bewegung abgebrochen. Bit 9 im Achsenparameter
Revision 3.0
Argumente
AXISSTATUS wird eingeschaltet, wenn die Achsenposition größer ist als FS_LIMIT.
Beispiel Kein Beispiel.
Siehe auch AXIS, AXISSTATUS, UNITS.
3.2.131 FWD_IN
/i
Typ Achsenparameter
Syntax FWD_IN
Beschreibung Der Achsenparameter FWD_IN enthält die Nummer des Eingangs,
der als Vorwärts-Endlage verwendet werden soll. Der gültige Eingangsbereich ist 0 bis 31. Die Werte 0 bis 15 stellen physikalisch die Eingänge des TJ1-MC__ E/A-Steckverbinders dar und werden für alle Achsen gemeinsam benutzt. Die Werte 16 bis 27 stellen Software-Eingänge dar, die beliebig in Programmen und Befehlen verwendet werden können, z. B. IN und OP. Sie gelten ebenfalls für alle Achsen. Die Werte 28 bis 31 werden direkt den am CN1­Steckverbinder vorhandenen Treiber-Eingängen zugewiesen und sind für jede Achse eindeutig. Welche Treiber-Eingänge den Eingängen 28 bis 31 zugewiesen werden, hängt von der Servotreiber-Einstellung in Parameter Pn81E ab. Die empfohlene Einstellung ist Pn81E = 0 x 4321, mit folgender Zuordnung: Wenn eine Eingangsnummer gesetzt und der Grenzwert erreicht ist, wird jede Vorwärtsbewegung dieser Achse gestoppt. Bit 4 von AXISSTATUS wird ebenfalls gesetzt. Hinweis: Dieser Eingang ist in aktiviertem Zustand null.
Sigma II Eingang 28: CN1-40
Eingang 29: CN1-41
Eingang 30: CN1-42
Eingang 31: CN1-43
Sigma III Eingang 28: CN1-13
Eingang 29: CN1-7
Eingang 30: CN1-8
Eingang 31: CN1-9
Junma Eingang 26: CN1-2
Eingang 27: CN1-1
PROGRAMMIERHANDBUCH 87
BASIC-Befehle
Weitere Informationen zum Einstellen des Parameters Pn81E finden Sie im Servotreiber-Handbuch. Standardmäßig ist der Parameter auf –1 eingestellt, und es sind keine Eingänge ausgewählt.
Argumente
Beispiel Kein Beispiel.
Siehe auch AXIS, AXISSTATUS REV_IN.
3.2.132 FWD_JOG
/i
Typ Achsenparameter
Syntax FWD_JOG
Beschreibung
Argumente
Beispiel Kein Beispiel.
Siehe auch AXIS, FAST_JOG, JOGSPEED, REV_JOG.
Der Achsenparameter der als Jog-Vorwärtseingang verwendet werden soll. Die Nummer kann eine Zahl zwischen 0 und 7 sein. Standardmäßig ist der Parameter auf –1 eingestellt, und es ist kein Eingang ausgewählt. Hinweis: Dieser Eingang ist in aktiviertem Zustand null.
FWD_JOG
enthält die Nummer des Eingangs,
Argumente n
Das spezifizierte Eingabegerät. Wird dieses Argument ausgelassen, wird die Schnittstelle verwendet, die durch INDEVICE spezifiziert ist. Siehe Tabelle unten.
Variable
Der Name der Variablen, die den ASCII-Code empfangen soll.
Beispiel GET#5, k
Diese Zeile speichert das über Kanal 5 der Trajexia Tools-Schnittstelle empfangene ASCII-Zeichen in k.
Siehe auch INDEVICE, INPUT, KEY, LINPUT
/i
Nummer des Eingabegerätes
0 Programmierschnittstelle 0
1 Serielle RS-232C-Schnittstelle 1
2 Serielle RS-422A/485-Schnittstelle 2
5 Trajexia Tools Schnittstelle 0 Benutzerkanal 5
6 Trajexia Tools Schnittstelle 0 Benutzerkanal 6
7 Trajexia Tools Schnittstelle 0 Benutzerkanal 7
Beschreibung
3.2.133 GET
/i
Typ E/A-Befehl
Syntax GET [#n,] Variable
Beschreibung Der Befehl GET ordnet den ASCII-Code eines empfangenen Zeichens einer
Variablen zu. Wenn der Eingangsspeicher der seriellen Schnittstelle leer ist, wird die Programmausführung angehalten, bis ein Zeichen empfangen worden ist. Die Kanäle 5 bis 7 sind logische Kanäle, die bei der Verwendung
Revision 3.0
PROGRAMMIERHANDBUCH 88
von Trajexia Tools der Programmierschnittstelle 0 übergeordnet sind. Hinweis: Kanal 0 ist für die Verbindung zu Trajexia Tools und/oder der Befehlszeilenschnittstelle reserviert. Bitte achten Sie darauf, dass es bei diesem Kanal für diese Funktion Probleme geben kann.
BASIC-Befehle
3.2.134 GLOBAL
/i
Typ Systembefehl
Syntax GLOBAL "Name", Vr_nummer
Beschreibung Legt den Namen als Referenz für eine der globalen VR-Variablen
fest. Der Name kann dann sowohl innerhalb des Programms, das die Definition für GLOBAL enthält als auch von allen anderen Programmen im Trajexia Tools 2-Projekt verwendet werden. Hinweis: Das Programm mit der Definition für GLOBAL muss zuerst laufen, bevor die Bezeichnung in anderen Programmen verwendet wird. Außerdem sollte nur dieses Programm zu dem Zeitpunkt laufen, zu dem GLOBAL ausgeführt wird; andernfalls wird eine Fehlermeldung angezeigt, und das Programm stoppt, wenn versucht wird, diesen Befehl auszuführen. Für einen schnellen Start sollte das Programm außerdem der einzige Prozess sein, der beim Hochfahren läuft. Wenn GLOBAL definiert wird, bleibt die Definition bis zum nächsten Zurücksetzen des TJ1-MC__ aktiv; dies kann erfolgen, indem die Versorgungsspannung aus und wieder eingeschaltet wird oder indem der EX-Befehl ausgeführt wird. In Programmen, die den definierten Befehl GLOBAL benutzen, hat Name die gleiche Bedeutung wie VR(vr_number). Verwenden Sie nicht die Syntax: VR(name). Es können maximal 128 GLOBAL-Befehle definiert werden.
Argumente Name
Jeder benutzerdefinierte Name, der alphanumerische oder Unterstrich-Zeichen enthält.
VR_nummer
Die Nummer der VR, die mit Name assoziiert ist.
Beispiel GLOBAL "Gewinde_steigung",12
GLOBAL "verhaeltnis1",534 verhaeltnis1 = 3,56 Gewinde_steigung = 23,0
Revision 3.0
Siehe auch
PRINT Gewinde_steigung, verhaeltnis1
3.2.135 GOSUB..RETURN
/i
Typ Programmsteuerungsbefehl
Syntax GOSUB Kennzeichnung
... RETURN
Beschreibung Die Struktur GOSUB ermöglicht den Sprung in ein Unterprogramm-. GOSUB
speichert die Position der Zeile nach dem GOSUB-Befehl und springt dann zu der spezifizierten Bezeichnung. Beim Erreichen der Anweisung RETURN kehrt die Programmausführung zu der gespeicherten Position zurück. Hinweis: Unterprogramme können in jedem Task in bis zu 8 Ebenen verschachtelt werden.
Argumente label
Eine gültiger Label, der im Programm vorkommt. Bei einem ungültigen Label wird vor der Ausführung ein Kompilierungsfehler ausgegeben. Labels können Zeichenketten beliebiger Länge sein, aber nur die ersten 15 Zeichen werden ausgewertet.
Beispiel haupt:
GOSUB unterprogramm GOTO haupt unterprogramm: PRINT "Gemessene Position = ";MPOS;CHR(13); RETURN
Siehe auch GOTO
3.2.136 GOTO
/i
Typ Programmsteuerungsbefehl Syntax GOTO label Beschreibung Die Struktur GOTO ermöglicht einen Sprung in der Programmausführung.
GOTO bewirkt, dass die Programmausführung zu der Programmzeile springt, die den Label enthält.
PROGRAMMIERHANDBUCH 89
BASIC-Befehle
Argumente label
Eine gültiger Label, der im Programm vorkommt. Bei einem ungültigen Label wird vor der Ausführung ein Kompilierungsfehler ausgegeben. Labels können Zeichenketten beliebiger Länge sein, aber nur die ersten 15 Zeichen werden ausgewertet
Beispiel schleife:
PRINT "Gemessene Position = ";MPOS;CHR(13); GOTO schleife
Siehe auch GOSUB..RETURN
3.2.137 HALT
/i
Typ Systembefehl Syntax HALT Beschreibung Der Befehl HALT stoppt die Ausführung aller aktuell laufenden Programme.
Der Befehl kann in der Befehlszeile und in Programmen verwendet werden. Der Befehl STOP kann zum Stoppen eines einzelnen Programms verwendet werden.
Argumente – Beispiel Kein Beispiel. Siehe auch PROCESS, STOP.
3.2.138 HEX
/i
Typ E/A-Befehl Syntax HEX Beschreibung Dieser Befehl wird in einer Druckanweisung verwendet, um eine Zahl
im Hexadezimalformat auszugeben.
Argumente – Beispiel PRINT#5,HEX(IN(8,16))
Revision 3.0
Siehe auch
3.2.139 HLM_COMMAND
/i
Typ Kommunikationsbefehl Syntax HLM_COMMAND(befehl, schnittstelle [ , teilnehmer
[ , mc_bereich/betriebsart [ , mc_offset ]]])
Beschreibung Der Befehl HLM_COMMAND führt einen Host-Link-Befehl bei einem
oder allen Host-Link-Slaves an der ausgewählten Schnittstelle durch. Die Programmausführung wird angehalten, bis die Antwort-Zeichenkette empfangen wurde oder eine Zeitüberschreitung eingetreten ist. Die Zeitüberschreitung wird durch den Parameter HLM_TIMEOUT spezifiziert. Der Status der Übertragung kann mit den Parameter HLM_STATUS überwacht werden. Hinweise:
Wenn Sie den Befehl HLM_READ benutzen, stellen Sie sicher, dass
das Host-Link-Masterprotokoll eingerichtet ist, indem Sie den Befehl SETCOM verwenden.
Die Host-Link-Masterbefehle dürfen nur von einem Programm ausgeführt werden, um Timing-Probleme mit Befehlen in Programmen, die in anderen Tasks laufen, zu vermeiden.
Argumente Befehl
Die Auswahl der durchzuführenden Host-Link-Operation. Siehe die erste Tabelle unten.
Schnittstelle Die spezifizierte serielle Schnittstelle. 1 = serielle RS-232C-Schnittstelle 1; 2 = serielle RS-422A-Schnittstelle 2.
teilnehmer (für HLM_MREAD, HLM_TEST, HLM_ABORT und HLM_STWR) Die Slave-Teilnehmernummer, an die der Host-Link-Befehl gesendet werden soll. Bereich: [0, 31].
betriebsart (für HLM_STWR) Die Betriebsart der CPU-Baugruppe. 0 = PROGRAM-Betriebsart; 2 = MONITOR-Betriebsart; 3 = RUN-Betriebsart.
mc_bereich (für HLM_MREAD) Der Speicherbereich des TJ1-MC__, aus dem Daten gelesen und zu dem Daten gesendet werden sollen. Siehe zweite Tabelle unten.
mc_offset (für HLM_MREAD) Die Startadresse des TJ1-MC__-Speicherbereichs, aus dem gelesen werden soll. Bereich für VR-Variablen: [0, 1023]. Bereich für TABLE­Variablen: [0, 63999].
PROGRAMMIERHANDBUCH 90
BASIC-Befehle
Beispiel HLM_COMMAND(HLM_MREAD,1,12,MC_VR,233)
Dieser Befehl liest den Modell-Code der CPU-Baugruppe des Host-Link­Slaves mit der Teilnehmeradresse 12 aus, der an die RS-232C-Schnittstelle angeschlossen ist. Das Ergebnis wird nach VR(233) geschrieben. Wenn der angeschlossene Slave ein C200HX-PC ist, enthält VR(233) nach erfolgreicher Ausführung den Wert 12 (hex).
Beispiel HLM_COMMAND(HLM_TEST,2,23)
PRINT HLM_STATUS PORT(2)
Dieser Befehl überprüft die Host-Link-Kommunikation mit dem Host-Link­Slave (Teilnehmer 23), der an die RS-422A-Schnittstelle angeschlossen ist. Wenn der Parameter HLM_STATUS den Wert 0 enthält, ist die Kommunikation hergestellt.
Beispiel HLM_COMMAND(HLM_INIT,2)
HLM_COMMAND(HLM_ABORT,2,4)
Mit diesen zwei Befehlen werden die Host-Link-Operationen INITIALIZE und ABORT an der RS-422A-Schnittstelle 2 durchgeführt. Der Slave hat die Teilnehmernummer 4.
Beispiel HLM_COMMAND(HLM_STWR,2,0,2)
Wenn Daten über Host-Link an einen PC geschrieben werden, darf die CPU­Baugruppe nicht in der RUN-Betriebsart sein. Der Befehl dazu verwendet werden, sie in die MONITOR-Betriebsart zu setzen. Der Slave hat die Teilnehmeradresse 0 und ist an die RS-232C-Schnittstelle angeschlossen.
Siehe auch HLM_READ, HLM_COMMAND, HLM_STATUS, HLM_TIMEOUT,
HLS_NODE, HLM_WRITE, SETCOM.
/i
Befehlswert Beschreibung
HLM_MREAD
(oder Wert 0)
HLM_TEST
(oder Wert 1)
Revision 3.0
HLM_ABORT
(oder Wert 2)
Hierdurch wird der Host-Link-PC-Befehl MODEL READ (MM) zum Auslesen des Modell-Codes der CPU-Baugruppe durchgeführt. Das Ergebnis wird zu der TJ1-MC__-Variablen geschrieben, die durch mc_bereich und mc_offset spezifiziert ist.
Hierdurch wird der Host-Link-Befehl richtigen Kommunikation durchgeführt, indem die Zeichenkette „MCW151 TEST STRING“ gesendet und die Echo-Zeichenkette überprüft wird. Überprüfen Sie das Ergebnis im Parameter
Hierdurch wird der Host-Link-Befehl ABORT (XZ) zum Abbruch des Host-Link-Befehls durchgeführt, der aktuell verarbeitet wird. Bei dem Befehl ABORT wird keine Antwort empfangen.
TEST (TS
HLM_COMMAND
) zur Überprüfung der
HLM_STATUS
Befehlswert Beschreibung
HLM_INIT
(oder Wert 3)
HLM_STWR
(oder Wert 4)
/i
mc_Bereichswert Datenbereich
MC_TABLE
(oder Wert 8)
MC_VR
(oder Wert 9)
Hierdurch wird der Host-Link-Befehl INITIALIZE (**) zur Initialisierung des Übertragungvorgangs aller Slave-Baugruppen durchgeführt.
Hierdurch wird der Host-Link-PC-Befehl STATUS WRITE (MM) zum Ändern der Betriebsart der CPU-Baugruppe durchgeführt.
TABLE-Variablen-Array
Globales (VR-) Variablen-Array
3.2.140 HLM_READ
/i
Typ Kommunikationsbefehl
kann
.
Syntax HLM_READ(schnittstelle, teilnehmer, pc_bereich, pc_offset, laenge,
mc_bereich, mc_offset)
Beschreibung Der Befehl HLM_READ liest Daten aus einem Host-Link-Slave aus, indem
an die serielle Schnittstelle eine Host-Link-Befehlszeichenkette gesendet wird, die die Teilnehmernummer des Slaves enthält. Die empfangenen Antwortdaten werden entweder zu VR- oder TABLE-Variablen geschrieben. Jedes Datenwort wird an eine Variable übermittelt. Die maximale Datenlänge ist 30 Worte (Einzelrahmen-Übertragung). Die Programmausführung wird angehalten, bis die Antwort-Zeichenkette empfangen wurde oder eine Zeitüberschreitung eingetreten ist. Die Zeitüberschreitung wird durch den Parameter HLM_TIMEOUT spezifiziert. Der Status der Übertragung kann mit dem Parameter HLM_STATUS überwacht werden. Hinweise:
Wenn Sie den Befehl HLM_READ benutzen, stellen Sie sicher, dass das Host-Link-Masterprotokoll eingerichtet ist, indem Sie den Befehl SETCOM verwenden.
Die Host-Link-Masterbefehle dürfen nur von einem Programm ausgeführt werden, um Timing-Probleme mit Befehlen in Programmen, die in anderen Tasks laufen, zu vermeiden.
PROGRAMMIERHANDBUCH 91
BASIC-Befehle
Argumente Schnittstelle
Die serielle Schnittstelle. 1 = serielle RS-232C-Schnittstelle 1; 2 = serielle RS-422A-Schnittstelle 2.
Te ilneh mer
Die Slave-Teilnehmernummer, an die der Host-Link-Befehl gesendet werden soll. Bereich: [0, 31].
pc_bereich
Die PC-Speicherauswahl für den Host-Link-Befehl. Siehe erste Tabelle unten.
pc_offset
Die Adresse des PC-Speicherbereichs, aus dem gelesen werden soll. Bereich: [0, 9999].
laenge
Die Anzahl der zu übertragenden Datenworte. Bereich: [1, 30].
mc_bereich
Der Speicherbereich des TJ1-MC__, aus dem Daten gelesen und zu dem Daten gesendet werden sollen. Siehe zweite Tabelle unten.
mc_Offset
Die Adresse des TJ1-MC__-Speicherbereichs, in den geschrieben werden soll. Bereich für VR-Variablen: [0, 1023]. Bereich für TABLE­Variablen: [0, 63999].
Beispiel HLM_READ(2,17,PLC_DM,120,20,MC_TABLE,4000)
Dieses Beispiel zeigt, wie 20 Worte aus den PC-DM-Bereichsadressen 120–139 an die TABLE-Adressen 4000–4019 des TJ1-MC__ ausgelesen werden. Der PC hat Slave-Teilnehmeradresse 17 und ist an die RS-422A­Schnittstelle angeschlossen.
Siehe auch HLM_COMMAND, HLM_STATUS, HLM_TIMEOUT, HLS_NODE,
HLM_WRITE, SETCOM.
/i
pc_bereichswert Datenbereich Host-Link-Befehl
PLC_DM
(oder Wert 0)
PLC_IR
(oder Wert 1)
PLC_LR
Revision 3.0
(oder Wert 2)
PLC_HR
(oder Wert 3)
DM-Bereich RD
CIO/IR-Bereich RR
LR-Bereich RL
HR-Bereich RH
pc_bereichswert Datenbereich Host-Link-Befehl
PLC_AR
(oder Wert 4)
PLC_EM
(oder Wert 6)
/i
mc_Bereichswert Datenbereich
MC_TABLE
(oder Wert 8)
MC_VR
(oder Wert 9)
AR-Bereich RJ
EM-Bereich RE
TABLE-Variablen-Array
Globales (VR-) Variablen-Array
3.2.141 HLM_STATUS
/i
Typ Kommunikationsparameter
Syntax HLM_STATUS PORT(n)
Beschreibung Der Parameter HLM_STATUS enthält den Status des letzten Host-Link-
Masterbefehls, der an die im Befehl spezifizierte Schnittstelle gesendet wurde. Der Parameter zeigt den Status für die Befehle HLM_READ, HLM_WRITE und HLM_COMMAND an. Die Status-Bits sind in der nachstehenden Tabelle definiert. Der Parameter HLM_STATUS hat den Wert 0, wenn keine Probleme aufgetreten sind. Ist der Wert nicht 0, muss im Anwender-BASIC-Programm eine geeignete Maßnahme, z. B. eine Befehlswiederholung oder ein Nothalt programmiert werden. Jede Schnittstelle hat einen HLM_STATUS-Parameter. Der Modifikator PORT ist erforderlich, um die Schnittstelle zu spezifizieren.
Argumente n
Die spezifizierte serielle Schnittstelle. 1 = serielle RS-232C-Schnittstelle 1; 2 = serielle RS-422A-Schnittstelle 2.
Beispiel >> HLM_WRITE(1,28,PLC_EM,50,25,MC_VR,200)
>> PRINT HEX(HLM_STATUS PORT(1)) 1
Anscheinend befindet sich die CPU-Baugruppe in der RUN-Betriebsart und akzeptiert den Schreibvorgang nicht.
PROGRAMMIERHANDBUCH 92
BASIC-Befehle
Beispiel >> HLM_COMMAND(HLM_TEST,2,0)
>> PRINT HLM_STATUS PORT(2)
256.0000
Es ist ein Zeitüberschreitungsfehler aufgetreten.
Siehe auch HLM_READ, HLM_COMMAND, HLM_TIMEOUT, HLS_NODE,
HLM_WRITE, SETCOM.
/i
Bit Name Beschreibung
0–7 Endcode Der Endcode kann entweder der Endcode sein, der durch den
Host-Link-Slave definiert ist (Problem in der gesendeten Befehls­Zeichenkette) oder ein Endcode, der wegen eines Problems definiert wurde, das beim Host-Link-Master aufgetreten ist (Problem in der empfangenen Antwort-Zeichenkette).
8 Zeitüberschrei-
tungsfehler
9 Befehl nicht
erkannt
Ein Zeitüberschreitungsfehler tritt auf, wenn innerhalb der für die Zeitüberschreitung festgelegten Zeit keine Antwort empfangen wird. Dies deutet daraufhin, dass die Kommunikation unterbrochen ist.
Dieser Zustand deutet darauf hin, dass der Slave den Befehl nicht erkannt und eine IC-Antwort zurückgegeben hat.
3.2.142 HLM_TIMEOUT
/i
Typ Kommunikationsparameter
Syntax HLM_TIMEOUT
Beschreibung Der Parameter HLM_TIMEOUT spezifiziert die für die
Zeitüberschreitung festgelegte Zeit für das Host-Link­Masterprotokoll für beide serielle Schnittstellen. Ein Zeitüberschreitungsfehler tritt auf, wenn die Zeit, die zum Senden des Befehls und zum Empfangen der Antwort vom Slave benötigt wird, länger als die mit diesem Parameter spezifizierte Zeit ist. Der Parameter gilt für die Befehle HLM_READ, HLM_WRITE und HLM_COMMAND. Der Parameter HLM_TIMEOUT ist in Servozyklen spezifiziert.
Argumente
Beispiel >> HLM_TIMEOUT = 2000
Beachten Sie, dass der Servozyklus des TJ1-MC__ auf 500 ms eingestellt ist (SERVO_PERIOD = 500). Für beide serielle Schnittstellen ist die Host-Link-Master-Zeitüberschreitung auf 1 s eingestellt.
Siehe auch HLM_READ, HLM_COMMAND, HLM_STATUS, HLS_NODE,
HLM_WRITE, SETCOM SERVO_PERIOD.
Revision 3.0
PROGRAMMIERHANDBUCH 93
BASIC-Befehle
3.2.143 HLM_WRITE
/i
Typ Kommunikationsbefehl
Syntax HLM_WRITE(schnittstelle, teilnehmer, pc_bereich, pc_offset, laenge,
mc_bereich, mc_offset)
Beschreibung
Der Befehl Host-Link-Slave, indem an die serielle Schnittstelle eine Host-Link­Befehlszeichenkette gesendet wird, die die Teilnehmernummer des Slaves enthält. Die empfangenen Antwortdaten werden entweder aus VR- oder TABLE-Variablen geschrieben. Jede Variable definiert das Wort oder die Daten, die übermittelt werden. Die maximale Datenlänge ist 29 Worte (Einzelrahmen-Übertragung). Die Programmausführung wird angehalten, bis die Antwort-Zeichenkette empfangen wurde oder eine Zeitüberschreitung eingetreten ist. Die Zeitüberschreitung wird durch den Parameter HLM_TIMEOUT spezifiziert. Der Status der Übertragung kann mit dem Parameter HLM_STATUS überwacht werden. Hinweise:
Wenn Sie den Befehl HLM_WRITE benutzen, stellen Sie sicher, dass
Die Host-Link-Masterbefehle dürfen nur von einem Programm ausgeführt
HLM_WRITE
das Host-Link-Masterprotokoll eingerichtet ist, indem Sie den Befehl SETCOM verwenden.
werden, um Timing-Probleme mit Befehlen in Programmen, die in anderen Tasks laufen, zu vermeiden.
schreibt Daten aus dem TJ1-MC__ zu einem
Argumente Schnittstelle
Die spezifizierte serielle Schnittstelle. 1 = serielle RS-232C-Schnittstelle 1; 2 = serielle RS-422A-Schnittstelle 2.
Teilnehmer Die Slave-Teilnehmernummer, an die der Host-Link-Befehl gesendet werden soll. Bereich: [0, 31].
pc_bereich Die PC-Speicherauswahl für den Host-Link-Befehl. Siehe erste Tabelle unten.
pc_offset Die Adresse des PC-Speicherbereichs, in den geschrieben werden soll. Bereich: [0, 9999].
laenge Die Anzahl der zu übertragenden Datenworte. Bereich: [1, 29].
mc_bereich Der Speicherbereich des TJ1-MC__, aus dem Daten gelesen und zu dem Daten gesendet werden sollen. Siehe zweite Tabelle unten.
mc_Offset Die Adresse des TJ1-MC__-Speicherbereichs, aus dem gelesen werden soll. Bereich für VR-Variablen: [0, 1023]. Bereich für TABLE-Variablen: [0, 63999].
Beispiel HLM_WRITE(1,28,PLC_EM,50,25,MC_VR,200)
Dieses Beispiel zeigt, wie 25 Worte aus den VR-Adressen 200–224 des TJ1-MC__ an die EM-Bereichsadressen 50–74 des PCs geschrieben werden. Der PC hat Slave-Teilnehmeradresse 28 und ist an die RS-232C-Schnittstelle angeschlossen.
Siehe auch HLM_READ, HLM_COMMAND, HLM_STATUS, HLM_TIMEOUT,
HLS_NODE, SETCOM.
/i
pc_bereichswert Datenbereich Host-Link-Befehl
Revision 3.0
PLC_DM
(oder Wert 0)
PLC_IR
(oder Wert 1)
PLC_LR
(oder Wert 2)
DM-Bereich RD
CIO/IR-Bereich RR
LR-Bereich RL
PROGRAMMIERHANDBUCH 94
BASIC-Befehle
pc_bereichswert Datenbereich Host-Link-Befehl
PLC_HR
(oder Wert 3)
PLC_AR
(oder Wert 4)
PLC_EM
(oder Wert 6)
/i
mc_Bereichswert Datenbereich
MC_TABLE
(oder Wert 8)
MC_VR
(oder Wert 9)
HR-Bereich RH
AR-Bereich RJ
EM-Bereich RE
TABLE-Variablen-Array
Globales (VR-) Variablen-Array
3.2.144 HLS_NODE
/i
Typ Kommunikationsparameter
Syntax HLS_NODE
Beschreibung Der Parameter HLS_NODE definiert die Slave-Baugruppennummer für das
Host-Link-Slave-Protokoll. Der TJ1-MC__ antwortet auf die Host-Link-Master­Befehlszeichenketten nur mit der in diesem Parameter spezifizierten Baugruppennummer. Der gültige Bereich für diesen Parameter ist [0, 31]. Der Standardwert ist 0.
Argumente
Beispiel Kein Beispiel.
Siehe auch
Revision 3.0
3.2.145 HW_PSWITCH
/i
Typ Achsenbefehl
Syntax HW_PSWITCH(betriebsart, richtung, ausstatus, tabellen_anfang,
tabellen_ende)
Beschreibung
Argumente Modus
Beispiel HW_PSWITCH(1, 1, ON, 21, 50)
Der Befehl Einschaltposition für die Achse erreicht ist. Ausgang OUT 0 wird ausgeschaltet, wenn die Ausschaltposition erreicht ist. Positionen sind im TABLE-Speicher als Wertefolge im Bereich von werden bei Ausführung des Befehls gespeichert. Der Parameter ist nur auf Flex Achsmodule mit denATYPE-Werten 43, 44 und 45 anwendbar. Der Befehl kann zusammen mit einem oder mit 5 Parametern verwendet werden. Es ist nur ein Parameter erforderlich, um den Befehl zu deaktivieren oder die FIFO-Warteschlange zu löschen. Alle fünf Parameter sind erforderlich, um den Befehl zu aktivieren. Nach dem Laden der FIFO-Warteschlange und dem Abarbeiten der Positionsfolge in der FIFO-Schlange muss diese gelöscht werden. Erst danach kann der Befehl HW_PSWITCH mit den gleichen Parametern erneut ausgeführt werden.
Richtung
Ausstatus
Tabellen_anfang
Tabellen_ende
Dieser Befehl lädt die FIFO mit 30 im TABLE-Speicher gespeicherten Positionen in aufsteigender Richtung ab Position erreicht ist, wird Ausgang OUT 0 eingeschaltet und anschließend abwechselnd beim Erreichen der folgenden Positionen in der Folge aus­und eingeschaltet, bis die in
HW_PSWITCH
0 = Schalter deaktivieren; 1 = EIN und FIFO laden; 2 = FIFO löschen.
0 = absteigend; 1 = aufsteigend.
Ausgangsstatus, der in der ersten Position in der FIFO eingestellt ist; EIN oder AUS.
Tabellen-Anfangsadresse der Folge.
Tabellen-Endadresse der Folge.
schaltet OUT 0 für die Achse ein, wenn die
Tabellen_anfang
HW_PSWITCH
TABLE(21)
TABLE(50)
bis
Tabellen_ende
in der FIFO-Warteschlange
. Wenn die in
gespeicherte Position erreicht ist.
TABLE(21)
definiert und
gespeicherte
PROGRAMMIERHANDBUCH 95
BASIC-Befehle
Beispiel HW_PSWITCH(0)
Dieser Befehl schaltet den Schalter aus, wenn er zuvor eingeschaltet war, löscht jedoch nicht die FIFO-Warteschlange.
Beispiel HW_PSWITCH(2)
Dieser Befehl löscht die FIFO-Warteschlange, wenn sie vorher geladen war.
Siehe auch AXIS
3.2.146 I_GAIN
/i
Typ Achsenparameter
Syntax I_GAIN
Beschreibung Der Achsenparameter I_GAIN enthält die Integralverstärkung für die Achse.
Die integrale Leistungsbeeinflussung wird berechnet, indem die Summen der Schleppfehler mit dem Wert des Parameters I_GAIN multipliziert werden. Der Standardwert ist 0. Das Hinzufügen einer Integralverstärkung zu einem Servosystem verringert den Positionierfehler im Ruhezustand oder bei stetigen Bewegungen. Die Integralverstärkung kann Überschwingen und Schwingungen verursachen und ist deshalb nur für Systeme geeignet, die mit konstanter Drehzahl oder langsamer Beschleunigung arbeiten. Hinweis: Um Instabilität zu vermeiden, sollte die Servoverstärkung nur dann geändert werden, wenn SERVO ausgeschaltet ist.
Argumente
Beispiel Kein Beispiel.
Siehe auch D_GAIN, I_GAIN, OV_GAIN, P_GAIN, VFF_GAIN.
3.2.147 IDLE
Siehe WAIT IDLE.
Revision 3.0
3.2.148 IEEE_IN
/i
Typ Mathematische Funktion
Syntax IEEE_IN(byte0,byte1,byte2,byte3)
Beschreibung Die Funktion IEEE_IN gibt die durch vier Byte dargestellte Gleitkommazahl
zurück, die normalerweise über eine Kommunikationsverbindung empfangen wurde.
Argumente Byte0 – Byte3
Jede Kombination von 8-Bit-Werten, die eine gültige IEEE­Gleitkommazahl darstellt.
Beispiel VR(20) = IEEE_IN(b0,b1,b2,b3)
Siehe auch
3.2.149 IEEE_OUT
/i
Typ Mathematische Funktion
Syntax Byte_n = IEEE_OUT(wert, n)
Beschreibung Die Funktion IEEE_OUT gibt ein einzelnes Byte im IEEE-Format zurück,
das aus dem Gleitkommawert zur Übertragung über ein Bussystem extrahiert wurde. Die Funktion wird normalerweise viermal aufgerufen, um jedes Byte nacheinander zu extrahieren. Hinweis: Byte 0 ist die höherwertige Bytezahl des 32-Bit-IEEE­Gleitkommaformats.
Argumente Wert
Jede(r) BASIC-Gleitkommavariable oder -parameter.
n Die Nummer des zu extrahierenden Bytes (0 bis 3).
Beispiel V = MPOS AXIS(2)
Byte0 = IEEE_OUT(V, 0) Byte1 = IEEE_OUT(V, 1) Byte2 = IEEE_OUT(V, 2) Byte3 = IEEE_OUT(V, 3)
Siehe auch
PROGRAMMIERHANDBUCH 96
BASIC-Befehle
3.2.150 IF..THEN..ELSE..ENDIF
/i
Typ Programmsteuerungsbefehl Syntax IF bedingung_1 THEN Befehle {ELSEIF bedingung_i THEN Befehle}
[ ELSE Befehle ] ENDIF IF bedingung_1 THEN Befehle
Beschreibung Diese Struktur steuert den Programmablauf basierend auf den Ergebnissen
der Bedingung. Wenn die Bedingung TRUE ist, werden die Befehle ausgeführt, die auf THEN bis ELSEIF, ELSE oder ENDIF folgen. Wenn die Bedingung
FALSE ist und der Befehl einer darauf folgenden ELSEIF-Unterstruktur TRUE ist, werden die Befehle dieser Unterstruktur ausgeführt. Wenn alle
Bedingungen FALSE sind, werden die auf ELSE folgenden Befehle ausgeführt, oder das Programm nimmt die Zeile nach ENDIF wieder auf, falls keine ELSE-Bedingung enthalten ist. ENDIF wird verwendet, um das Ende des Bedingungsblocks zu kennzeichnen. Hinweis: IF..THEN..ELSE..ENDIF-Folgen können unbegrenzt verschachtelt werden. Bei einer mehrzeiligen IF..THEN-Konstruktion darf keine Anweisung hinter THEN stehen. Bei einer einzeiligen Konstruktion darf kein ENDIF verwendet werden.
Argumente Bedingung_i
Ein logischer Ausdruck.
Befehle
Einer oder mehrere BASIC-Befehle.
Beispiel IF MPOS > (0,22 * VR(0)) THEN GOTO position_gross Beispiel IF IN(0) = ON THEN
nummer = nummer + 1 PRINT "Nummer = ";nummer fehlschlag = 0 ELSE fehlschlag = fehlschlag + 1 ENDIF
Beispiel IF IN(stopp) = ON THEN
OP(8,ON) VR(zyklus_merker) = 0 ELSEIF IN(start_zyklus) = ON THEN VR(zyklus_merker) = 1 ELSEIF IN(schritt1) = ON THEN VR(zyklus_merker) = 99 ENDIF
Beispiel IF buchstabe_zeich = $31 THEN
GOSUB zeich_1 ELSEIF buchstabe_zeich = $32 THEN GOSUB zeich_2 ELSEIF buchstabe_zeich = $33 THEN GOSUB zeich_3 ELSE PRINT "Zeichen unbekannt" ENDIF
Siehe auch
3.2.151 IN
/i
Typ E/A-Funktion Syntax IN(eingangs_nummer [ , letzte_eingangs_nummer ])
IN
Beschreibung Die Funktion IN gibt den Wert digitaler Eingänge zurück.
IN (eingangs_nummer, letzte_eingangs_nummer) gibt die Binärsumme der Eingangsgruppe zurück. Die beiden Argumente dürfen nicht mehr als 24 auseinander liegen.
IN (eingangs_nummer) mit einem Wert für Eingangs_nummer, der unter 32 liegt, gibt den Wert des entsprechenden Kanals zurück.
IN (ohne Argumente) gibt die Binärsumme der ersten 24 Eingänge zurück (als IN(0,23)).
Revision 3.0
PROGRAMMIERHANDBUCH 97
BASIC-Befehle
Argumente eingangs_nummer
Die Nummer des Eingangs, für den ein Wert zurückgegeben werden soll. Wert: Eine Integer-Zahl zwischen 0 und 31.
letzte_eingangs_nummer Die Nummer des letzten Eingangs, für den ein Wert zurückgegeben werden soll. Wert: Eine Integer-Zahl zwischen 0 und 31.
Beispiel Die folgenden Zeilen können dazu verwendet werden, die auf einem
Daumenradschalter eingestellte Position zu bewegen, die mit einem Faktor multipliziert wird. Der Daumenradschalter ist mit den Eingängen 4, 5, 6 und 7 verbunden und gibt Werte in BCD aus.
bewegschleife: MOVEABS(IN(4,7) * 1.5467) WAIT IDLE GOTO bewegschleife
Der Befehl MOVEABS ist wie folgt aufgebaut: Schritt 1: IN(4,7) ergibt eine Zahl zwischen 0 und 15. Schritt 2: Die Zahl wird mit 1,5467 multipliziert, um die benötigten Entfernung zu erhalten. Schritt 3: Es wird eine absolute Bewegung zu dieser Position ausgeführt.
Beispiel In diesem Beispiel wird ein einzelner Eingang getestet:
Test : WAIT UNTIL IN(4) = ON ' Band ist in Position wenn ON GOSUB stelle
Siehe auch OP.
3.2.152 INDEVICE
/i
/i
Wert Beschreibung
0 Programmierschnittstelle 0 (standard)
1 Serielle RS-232C-Schnittstelle 1
2 Serielle RS-422A/485-Schnittstelle 2
5 Trajexia Tools Schnittstelle 0 Benutzerkanal 5
6 Trajexia Tools Schnittstelle 0 Benutzerkanal 6
7 Trajexia Tools Schnittstelle 0 Benutzerkanal 7
3.2.153 INITIALISE
/i
Typ Systembefehl
Syntax INITIALISE
Beschreibung Setzt alle Achsen-, System- und Prozessparameter auf ihre Standardwerte
zurück. Die Parameter werden auch jedes Mal zurückgesetzt, wenn der Controller hochgefahren wird oder wenn ein EX- (Software-Rücksetz-) Befehl ausgeführt wird. In Trajexia Tools entspricht der Menüpunkt Controller zurücksetzen... im Menü Controller der Funktion eines EX-Befehls.
Argumente
Beispiel Kein Beispiel.
Siehe auch EX
Typ E/A-Parameter
Syntax INDEVICE
Beschreibung Der Parameter INDEVICE definiert das Standard-Eingabegerät. Dieses Gerät
wird für die Eingabebefehle ausgewählt, wenn die Option #n ausgelassen wird. Der Parameter INDEVICE ist Task-spezifisch. Die unterstützten Werte sind in der nachstehenden Tabelle aufgeführt.
Argumente
Revision 3.0
Beispiel Kein Beispiel.
Siehe auch GETGET, INPUT, LINPUT, KEY.
PROGRAMMIERHANDBUCH 98
BASIC-Befehle
3.2.154 INPUT
/i
Typ E/A-Befehl
Syntax INPUT [ #n ], Variable { , Variable }
Beschreibung Der Befehl INPUT ordnet den spezifizierten Variablen numerische Eingabe-
Zeichenkettenwerte zu. Mehrere Eingabe-Zeichenkettenwerte können in einer Zeile, durch Kommas getrennt oder in mehreren Zeilen, die durch Wagenrücklauf getrennt sind, angefordert werden. Die Programmausführung wird angehalten, bis die Zeichenkette mit einem Wagenrücklauf beendet ist, nachdem die letzte Variable zugeordnet wurde. Wenn die Zeichenkette ungültig ist, wird eine Fehlermeldung angezeigt, und der Task wird wiederholt. Die maximale Anzahl von Eingaben in einer Zeile ist nur durch die Zeilenlänge begrenzt. Die Kanäle 5 bis 7 sind logische Kanäle, die bei der Verwendung von Trajexia Tools der RS-232C-Programmierschnittstelle 0 übergeordnet sind. Hinweis: Kanal 0 ist für die Verbindung zu Trajexia Tools und/oder der Befehlszeilenschnittstelle reserviert. Bitte achten Sie darauf, dass es bei diesem Kanal für diese Funktion Probleme geben kann.
Argumente n
Das spezifizierte Eingabegerät. Wird dieses Argument ausgelassen, wird die Schnittstelle verwendet, die durch INDEVICE spezifiziert ist.
Variable Die Variable, zu der geschrieben werden soll.
Beispiel Das folgende Programm dient dazu, Daten vom Terminal zu empfangen.
INPUT#5, Num PRINT#5, "BATCH COUNT = ";num[0]
Eine mögliche Antwort vom Terminal könnte sein:
123<CR> BATCH COUNT = 123
Siehe auch INDEVICE, GET, LINPUT, KEY
Revision 3.0
3.2.155 INT
/i
Typ Mathematische Funktion
Syntax INT(ausdruck)
Beschreibung Die Funktion INT gibt den Integer-Teil des Ausdrucks zurück.
Hinweis: Um eine positive Zahl auf den nächsten Integer-Wert zu runden, nehmen Sie die INT-Funktion des Wertes plus 0,5. Ziehen Sie zum Runden bei einem negativen Wert auf ähnliche Weise 0,5 von dem Wert ab, bevor Sie INT anwenden.
Argumente Ausdruck
Jeder gültige BASIC-Ausdruck.
Beispiel >> PRINT INT(1.79)
1.0000
Siehe auch
3.2.156 INVERT_IN
/i
Typ Systembefehl
Syntax INVERT_IN(eingang,ein/aus)
Beschreibung Mit dem Befehl INVERT_IN können die Eingangskanäle 0..31 softwareseitig
einzeln invertiert werden. Dies ist wichtig, da diese Eingangskanäle aktiven Funktionen zugeordnet werden können, z. B. Feedhold. Die Funktion INVERT_IN schaltet die Invertierung für einen Kanal ein oder aus. Sie kann nur auf die Eingänge 0..31 angewendet werden.
Argumente Eingang
Ein BASIC-Ausdruck.
Beispiel >>? IN(3)
0.0000 >>INVERT_IN(3,ON) >>? IN(3)
1.0000
Siehe auch
PROGRAMMIERHANDBUCH 99
BASIC-Befehle
3.2.157 INVERT_STEP
/i
Typ Achsenparameter
Syntax INVERT_STEP
Beschreibung INVERT_STEP dient dazu, eine Hardware-Invertierung in den Schrittmotor-
Ausgangsschaltkreis einzufügen. Dies kann für den Anschluß einiger, Schrittmotor-Treiber notwendig sein. Die elektronische Logik im Trajexia­Schrittmotor-Impulsgeber geht davon aus, dass die FALLENDE Flanke des Schrittausgangs die aktive Flanke ist, die eine Motorbewegung zur Folge hat. Dies ist für die meisten Schrittmotor-Treiber geeignet. Die Einstellung INVERT_STEP = ON macht die STEIGENDE Flanke des Schrittsignals zur aktiven Flanke. Falls erforderlich, sollte INVERT_STEP eingestellt werden, bevor der Controller mit WDOG = ON aktiviert wird. Die Standardeinstellung ist AUS. Hinweis: Falls die Einstellung falsch ist, kann ein Schrittmotor die Position um einen Schritt verlieren, wenn die Richtung geändert wird.
Argumente
Beispiel Kein Beispiel.
Siehe auch
3.2.158 INVERTER_COMMAND
/i
Typ Systembefehl
Syntax INVERTER_COMMAND(modul, station, 7, betriebs_signale)
INVERTER_COMMAND(modul, station, 1, alarm_nummer)
Beschreibung Der Befehl INVERTER_COMMAND steuert Eingänge und löscht Alarme
eines Frequenzumrichters, der über den MECHATROLINK-II-Bus an das System angeschlossen ist. Es gibt zwei INVERTER_COMMAND-Funktionen:
1: Löscht einen Alarm.
7: Steuert Betriebssignale.
Um einen Frequenzumrichter über MECHATROLINK-II zu verwenden, sollten Sie den Befehl und den Sollwert über folgende Kommunikationsoption eingeben:
Frequenzumrichter MV/V7: N3 = 3; N4 = 9
Frequenzumrichter F7/G7: B1-01 = 3; B1-02 = 3.
Vergewissern Sie sich, dass die Frequenzumrichter-Firmware die MECHATROLINK-II-Karte unterstützt. Bei erfolgreicher Ausführung gibt der Befehl –1, andernfalls 0 zurück. Der an den Frequenzumrichter gesendete Befehl entspricht den in der Tabelle unten angegebenen Bits.
Argumente Modul
Die Anzahl der TJ1-ML__, an die der Frequenzumrichter angeschlossen ist.
Station
Die MECHATROLINK-II-Stationsnummer des Frequenzumrichters.
Alarm_nummer
Die Nummer des Alarms. Weitere Informationen finden Sie im Frequenzumrichter-Handbuch.
Betriebs_signale
Ein in Bits unterteilter Wert zur Steuerung der Betriebssignale. Siehe Tabelle unten.
Revision 3.0
Beispiel Kein Beispiel.
Siehe auch
/i
PROGRAMMIERHANDBUCH 100
Loading...