Xqt
用於執行以函式名稱指定的程式並生成工作。
格式
Xqt [工作編號,] 函式名稱 [(引數清單)] [, Normal | NoPause | NoEmgAbort ]
參數
- 任務編號
- 以1~32的整數指定要執行的任務編號。可省略。若為背景工作,則指定65~80的整數。
- 函數名稱
- 指定所要執行函數名稱。
- 引數清單
- 指定呼叫時傳遞給函數的引數清單。若有數個引數,則請用逗號分隔。可省略。
- 工作類型
- 可省略。通常會省略。若為背景工作,指定工作類型没有意義。
- Normal
- 生成一般任務。
- NoPause
- 發生Pause陳述式或Pause輸入信號時、以及在啟動安全防護的狀態下生成不暫停的任務時,指定本命令。
- NoEmgAbort
- 若要生成在緊急停止時以及發生錯誤時繼續處理的任務,則指定本命令。
說明
Xqt用於啟動指定函式並立即返回。
平常不需要工作編號參數。若省略工作編號,SPEL+則會自動在函式上附加工作編號,因此使用者無需管理工作編號。
注意
工作類型
可透過在工作類型中指定NoPause或NoEmgAbort,生成用於監視整體控制器的工作。
但是,強烈建議在充分理解SPEL+的工作運作和特殊工作的限制事項之前提下使用這些特殊工作。
有關特殊工作的詳細資訊,請參閱以下手冊。
「Epson RC+ 使用者指南 - 特殊工作」背景工作
若在背景工作執行Xqt,生成的工作也會變成背景工作。
若要在背景工作執行Main函式,請使用StartMain命令。
有關背景工作的詳細資訊,請參閱以下手冊。
「Epson RC+ 使用者指南 - 特殊工作」
無法在NoEmgAbort工作和背景工作中執行的命令
不可在NoEmgAbort工作和背景工作中執行以下命令。
| A | Accel |
| AccelR | |
| AccelS | |
| AIO_TrackingStart | |
| AIO_TrackingEnd | |
| Arc | |
| Arc3 | |
| Arch | |
| Arm | |
| ArmCalib | |
| ArmCalibCLR | |
| ArmCalibSET | |
| ArmClr | |
| ArmSet | |
| AutoLJM | |
| AutoOrientationFlag | |
| AvoidSingularity | |
| B | Base |
| BGo | |
| BMove | |
| Box | |
| BoxClr | |
| Brake | |
| C | Calib |
| Cnv_AbortTrack | |
| Cnv_Accel | |
| Cnv_AccelLim | |
| Cnv_Adjust | |
| Cnv_AdjustClear | |
| Cnv_AdjustGet | |
| Cnv_AdjustSet | |
| Cnv_DownStream | |
| Cnv_Fine | |
| Cnv_Mode | |
| Cnv_OffsetAngle | |
| Cnv_PosErrOffset | |
| Cnv_QueAdd | |
| Cnv_QueMove | |
| Cnv_QueReject | |
| Cnv_QueRemove | |
| Cnv_QueUserData | |
| Cnv_Trigger | |
| Cnv_UpStream | |
| CollisionDetect | |
| CP | |
| CP_Offset | |
| Curve | |
| CVMove | |
| E | ECP |
| ECPClr | |
| ECPSet | |
| F | Find |
| Fine | |
| FineDist | |
| G | Go |
| H | Hand_On |
| Hand_Off | |
| Home | |
| HomeClr | |
| HomeSet | |
| Hordr | |
| I | Inertia |
| J | JTran |
| Jump | |
| Jump3 | |
| Jump3CP | |
| JRange | |
| L | LatchEnable |
| LimitTorque | |
| LimZ | |
| LimZMargin | |
| Local | |
| LocalClr | |
| M | MCal |
| MCordr | |
| Motor | |
| Move | |
| O | OLAccel |
| P | Pass |
| PerformMode | |
| Pg_LSpeed | |
| Pg_Scan | |
| Plane | |
| PlaneClr | |
| Power | |
| PTPBoost | |
| Pulse | |
| Q | QP |
| QPDecelR | |
| QPDecelS | |
| R | Range |
| Reset *1 | |
| Restart *2 | |
| S | Sense |
| SetLatch | |
| SFree | |
| SF_LimitSpeedS | |
| SF_LimitSpeedSEnable | |
| SF_RealSpeedS | |
| SingularityAngle | |
| SingularityDist | |
| SingularitySpeed | |
| SLock | |
| SoftCP | |
| Speed | |
| SpeedFactor | |
| SpeedR | |
| SpeedS | |
| SyncRobots | |
| T | TC |
| TGo | |
| Till | |
| TLSet | |
| TLClr | |
| TMove | |
| Tool | |
| Trap | |
| V | VCal |
| VcalPoints | |
| VCls | |
| VCreateCalibration | |
| VCreateObject | |
| VCreateSequence | |
| VDefArm | |
| VDefGetMotionRange | |
| VDefLocal | |
| VDefSetMotionRange | |
| VDefTool | |
| VDeleteCalibration | |
| VDeleteObject | |
| VDeleteSeuence | |
| VEditWindow | |
| VGet | |
| VGoCenter | |
| VLoad | |
| VLoadModel | |
| VRun | |
| VSave | |
| VSaveImage | |
| VSaveModel | |
| VSet | |
| VShowModel | |
| VStasShow | |
| VStatsReset | |
| VStatsResetAll | |
| VStatsSave | |
| VSD | |
| VStatsShow | |
| VTeach | |
| VTrain | |
| W | WaitPos |
| Weight | |
| WorkQue_Add | |
| WorkQue_Reject | |
| WorkQue_Remove | |
| WorkQue_Sort | |
| WorkQue_UserData | |
| X | Xqt *3 |
| XYLim |
- *1 可執行Reset Error
- *2 可在Trap Error的處理工作中執行
- *3 可在背景工作中執行
使用時,請勿在Loop陳述式中頻繁重複XQT命令 使用時,請勿在Do…Loop等Loop陳述式中頻繁重複XQT命令。 否則,控制器有可能進入意外停機狀態。若要這樣使用, 請輸入Wait命令(Wait 0.1)。
參照
Function/Fend、Halt、Resume、Quit、Startmain、Trap
Xqt範例
Function main
Xqt flash '啟動工作flash
Xqt Cycle(5) '啟動工作Cycle
Do
Wait 3 '執行工作flash3秒鐘
Halt flash '暫停工作
Wait 3
Resume flash '重新開始工作
Loop
Fend
Function Cycle(count As Integer)
Integer i
For i = 1 To count
Jump pick
On vac
Wait .2
Jump place
Off vac
Wait .2
Next i
Fend
Function flash
Do
On 1
Wait 0.2
Off 1
Wait 0.2
Loop
Fend