遠端RS232命令
遠程啟動
啟動控制器的遠端RS232功能。
EOT 1byte |
EOT : &H04(&H為十六進位)
要求格式
STX 1byte | 命令 1Byte | 資料 變數 | ETX 1Byte | BCC 1Byte |
STX : &H02
ETX : &H03
BCC:已傳送和已接收資料的總和檢查碼
每1Byte從命令至ETX的XOR值
遠程命令 | 傳送命令 | 資料 | 描述 | 輸入接受狀況 (*1) |
---|---|---|---|---|
Login | 'L' &H4C | 密碼 | 透過密碼驗證 正確執行登錄,命令執行保持啟動,直到登出為止 | 隨時可用(*2) |
Logout | 'l' &H6C | 登出後,執行 Login 命令以啟動遠端 RS232 功能。 在任務執行期間登出會導致錯誤。 | 隨時可用(*2) | |
Start | 'G' &H47 | 函數編號 (1 Byte) | 執行指定編號的函數 (*3) (*11) 範例)執行‘main’ &H02&H47&H00&H03&H44 | Auto開啟 Ready開啟 Error關閉 EStop關閉 Safeguard關閉 |
Stop | 'Q' &H51 | 停止所有任務及命令 | Auto開啟 | |
Pause | 'P' &H50 | 暫停所有任務 (*4) | Auto開啟 Running開啟 | |
Continue | 'C' &H43 | 繼續所暫停的任務 | Auto開啟 Paused開啟 | |
Reset | 'R' &H52 | 重置緊急停止及錯誤。(*5) | Auto開啟 Ready開啟 | |
SetMotorsOn | 'M' &H4D | 機器人編號 (1 Byte) | 開啟機器人馬達 (*6)(*7) | Auto開啟 Ready開啟 EStop關閉 Safeguard關閉 |
SetMotorsOff | 'N' &H4E | 機器人編號 (1 Byte) | 關閉機器人馬達 (*7) | Auto開啟 Ready開啟 |
SetCurRobot | 'Y' &H59 | 機器人編號 (1 Byte) | 選擇機器人 | Auto開啟 Ready開啟 |
GetCurRobot | 'y' &H79 | 取得目前機器人編號 | 隨時可用(*2) | |
Home | 'H' &H48 | 機器人編號 (1 Byte) | 將機器人手臂移至使用者所定義的起始點位置。 | Auto開啟 Ready開啟 Error關閉 EStop關閉 Safeguard關閉 |
GetIO | 'i' &H69 | I/O位編號 (2Byte) | 取得指定的I/O位 範例)取得I/O位1 &H02&H69&H0001&H03&H6B | 隨時可用(*2) |
SetIO | 'I' &H49 | [I/O位編號] (2Byte) [值] (1 Byte) | 設置I/O指定位 &H01: 開啟位 &H00: 關閉位 範例)開啟I/O位1 &H02&H49&H0001&H01&H03&H4A | Auto開啟 Ready開啟 |
GetIOByte | 'b' &H62 | I/O埠號 (1 Byte) | 取得指定的I/O埠(8位)(*8) 範例)取得I/O埠1 &H02&H62&H01&H03&H60 | 隨時可用(*2) |
SetIOByte | 'B' &H42 | [I/O埠號] (1 Byte) [值] (1 Byte) | 設定I/O指定埠(8位)(*8) 範例)將&H0F設為I/O埠1 &H02&H42&H01&H0F&H03&H4F | Auto開啟 Ready開啟 |
GetIOWord | 'w' &H77 | I/O字 埠號 (1 Byte) | 取得指定的I/O字埠(16位)(*8) 範例)取得I/O字埠1 &H02&H77&H01&H03&H75 | 隨時可用(*2) |
SetIOWord | 'W' &H57 | [I/O字 埠號] (1 Byte)[值] (2Byte) | 設定I/O指定字埠(16位)(*8) 範例)將&H010F設為I/O字埠1 &H02&H57&H01&H010F&H03&H5B | Auto開啟 Ready開啟 |
GetMemIO | 'o' &H6F | 記憶體I/O 位編號 (2 Byte) | 取得指定的記憶體I/O位 (*8) 範例)取得記憶體I/O位1 &H02&H6F&H0001&H03&H6D | 隨時可用(*2) |
SetMemIO | 'O' &H4F | [記憶體I/O 位編號] (2Byte)[值] (1位元組) | 設定I/O指定位 (*8) &H01: 開啟位 &H00: 關閉位 範例)開啟記憶體I/O位1 &H02&H4F&H0001&H01&H03&H4C | Auto開啟 Ready開啟 |
GetMemIOByte | 't' &H74 | 記憶體I/O 埠號 (1 Byte) | 取得指定記憶體I/O埠(8位)(*8) 範例)取得記憶體I/O埠1 &H02&H74&H01&H03&H76 | 隨時可用(*2) |
SetMemIOByte | 'T' &H54 | [記憶體I/O 埠號] (1 Byte)[值] (1位元組) | 設定指定的記憶體I/O埠(8位)(*8) 範例)將&H0F設為記憶體I/O埠1 &H02&H54&H01&H0F&H03&H59 | Auto開啟 Ready開啟 |
GetMemIOWord | 'u' &H75 | 記憶體I/O 字埠 編號(1 Byte) | 取得指定記憶體I/O字埠(16位)(*8) 範例)取得記憶體I/O字埠1 &H02&H75&H01&H03&H77 | 隨時可用(*2) |
SetMemIOWord | 'U' &H55 | [記憶體I/O 字埠 編號] (1 Byte) [值] (1 Byte) | 設置指定的記憶體I/O字埠(16位)(*8) 範例)將&H010F設為記憶體I/O字埠1 &H02&H55&H01&H010F&H03&H59 | Auto開啟 Ready開啟 |
GetVariable | 'v' &H76 | [變數名稱],(&H2C)[類型] (1 Byte) | 取得備份(全域保留)變數的值 (*8) 範例)取得Global Integer g_Status &H02&H76&H67&H5F&H53&H74&H61&H74&H75 &H73&H2C&H03&H03&H56 | 隨時可用 (*2) |
[變數名稱],(&H2C) (陣列元素), (&H2C) [變數類型] (1 Byte), (&H2C) [取得數量] (2 Byte) | 取得備份(全域保留)陣列變數的值 (*9) 範例)取得所有Global Integer g_intArray(10) &H02&H76&H67&H5F&H69&H6E&H74&H41&H72 &H72&H61&H79&H2C &H0000&H2C&H03&H2C&H000A&H03&H42 範例)從Global Integer g_int3Array(10,10,10)的元素(3,5,0) 取得10個元素 &H02&H76&H67&H5F&H69&H6E&H74&H33&H41 &H72&H72&H61&H79&H2C&H0003&H2C&H0005 &H2C&H0000&H2C&H03&H2C&H000A&H03&H77 | |||
SetVariable | 'V' &H56 | [變數名稱], (&H2C) [值] (類型大小), (&H2C)[類型] (1 Byte) | 設定備份(全域保留)變數的值 (*8) 範例)將0(&H0000)設為Global Integer g_Status &H02&H56&H67&H5F&H53&H74&H61&H74&H75 &H73&H2C&H0000&H2C&H03&H03&H5A | Auto開啟 Ready開啟 |
GetStatus | 'S' &H53 | 取得控制器狀態 | 隨時可用(*2) | |
Execute | 'X' &H58 | 命令 使用字串 | 執行命令 (*10) (*11) 範例)執行 ‘print here’ &H02&H58&H22&H70&H72&H69&H6E&H74&H20 &H68&H65&H72&H65&H22&H03&H10 | Auto開啟 Ready開啟 Error關閉 EStop關閉 Safeguard關閉 |
Abort | 'A' &H41 | 終止命令執行 (*10) | Auto開啟 | |
GetAlm | 'z' &H7A | 取得警報狀態 | 隨時可用(*2) | |
ResetAlm | 'Z' &H5A | 警報編號 (1位元組) | 重設指定警報編號的警報 範例)重設警報5時 &H02&H5A&H05&H03&H5C | Auto開啟 Ready開啟 |
*1:可透過GetStatus取得的控制器狀態位元。
*2:「Available any time」僅於符合下列條件時適用。
- 「遠端乙太網」設為控制裝置時,或者
- 「遠端乙太網」未設為控制裝置,但設為用於監控。
*3:執行Main[函數編號]中指定的函數。
函數名稱 | 函數編號 |
---|---|
Main | 0 |
Main1 | 1 |
Main2 | 2 |
Main3 | 3 |
Main4 | 4 |
Main5 | 5 |
Main6 | 6 |
Main7 | 7 |
⋮ | ⋮ |
Main63 | 63 |
*4:「NoPause任務」和「NoEmgAbort任務」不會暫停。
如需詳細資訊,請參閱說明或以下手冊。
「SPEL+語言參考 - Pause」
*5:關閉I/O輸出並初始化機器人參數。
如需詳細資訊,請參閱說明或以下手冊。
「SPEL+語言參考 - Reset」
*6:同時初始化機器人參數。
如需詳細資訊,請參閱說明或以下手冊。
「SPEL+語言參考 - Motor」
*7:當在機器人編號指定為「0」時,所有機器人將會運作。
若要操作特定機器人,請指定目標機器人的機器人編號(1至16)。
*8:變數類型
參數類型 | 類型值(1Byte) |
---|---|
Boolean | &H00 |
Byte | &H01 |
Double | &H02 |
Integer | &H03 |
Long | &H04 |
Real | &H05 |
String | &H06 |
UByte | &H07 |
Short | &H08 |
UShort | &H09 |
Int32 | &H0A |
UInt32 | &H0B |
Int64 | &H0C |
UInt64 | &H0D |
適用於參數名稱及類型相同時的備份參數。
*9:對於陣列元素,請指定開始取得的元素,如下所示。
從陣列開頭取得時,亦須指定元素。
以2Byte值指定陣列元素。
一維陣列 | 參數名稱&H2C&H0000 | 從開頭取得。 |
參數名稱,元素編號。 | 從指定元素編號取得。 | |
二維陣列 | 參數名稱&H2C&H0000&H2C&H0000 | 從開頭取得。 |
參數名稱、元素編號1、元素編號2 | 從指定元素編號取得。 | |
3D陣列 | 參數名稱&H2C&H0000&H2C&H0000&H2C&H0000 | 從開頭取得。 |
參數名稱、元素編號1、元素編號2、元素編號3 | 從指定元素編號取得。 |
您無法指定參數類型的字串。
可用的取得數值最多為100。
如果指定的數值超過陣列元素的數值,將會發生錯誤。
*10:在雙引號中指定要執行的命令(含參數)。
要執行的命令字串不能超過256 Byte,執行結果字串不能超過4060 Byte。
機器人動作命令將會執行至所選取的機器人。在執行命令之前使用GetCurRobot,檢查所選的機器人。
當Execute正在運行時,可以使用下列命令。
Execute運行時可以使用的命令
遠程命令
- Abort
- GetStatus
- SetIO
- SetIOByte
- SetIOWord
- SetMemIO
- SetMemIOByte
- SetMemIOWord
當在(SetIO,SetIOByte,SetIOWord,SetMemIO,SetMemIOByte,SetMemIOWord)中指定的命令相同且同時執行時,之後執行的命令將會發生錯誤。在執行Execute命令及其輸出命令之後,務必使用GetStatus檢查執行結果。
*11:若要執行包含PC功能(PC檔、PC RS-232C、資料庫訪問、DLL調用)相關命令的專案時,請確保在連接Epson RC+ 8.0的情況下運行該專案。如果Epson RC+ 8.0未連接,則命令執行將發生錯誤。
← 偵錯遠端RS232控制 監控命令 →