回應
當控制器正確接收到命令時,會在執行命令中顯示下列格式的回應。
命令 | 格式 |
---|---|
取得值的遠程命令 (以下)除外 | #[遠程命令],[0]終端 |
GetCurRobot | #GetCurRobot,[機器人編號]終端 |
GetIO | #GetIO,[0 | 1]終端 *1 |
GetMemIO | #GetMemIO,[0 | 1]終端 *1 |
GetIOByte | #GetIOByte,[位元組(8位)的十六進位字串(00至FF)]終端 |
GetMemIOByte | #GetMemIOByte,[位元組(8位)的十六進位字串(00至FF)]終端 |
GetIOWord | #GetIOWord,[字(16位)的十六進位字串(0000至FFFF)]終端 |
GetIOMemWord | #GetMemIOWord,[字(16位)的十六進位字串(0000至FFFF)]終端 |
GetVariable | #GetVariable,[參數值]終端 |
GetVariable(若為陣列) | #GetVariable,[變數值1],[變數值2],...,終端 *4 |
GetStatus | #GetStatus,[狀態],[錯誤、警告代碼]終端 範例 #GetStatus,aaaaaaaaaaa,bbbb *2 *3 |
Execute | 如果數值以命令執行的結果傳回 #Execute,"[執行結果]"終端 |
GetAlm | #GetAlm,[警報數量],[警報編號]...終端 範例)沒有警報發生時 # GetAlm,0 終端 範例)發生警報1和9時 # GetAlm,2,1,9 終端 |
*1 [0 | 1] I/O位 開啟:1/關閉:0
*2 aaaaaaaaaaa部分:狀態
在上述範例中,11個數字「aaaaaaaaaaa」係用於下列11個旗標。
Test/Teach/Auto/Warning/SError/Safeguard/EStop/Error/Paused/Running/Ready
開啟:1/關閉:0
若Ready和Auto為開啟,則為「00100000001」。
*3 bbbb部分:錯誤/警告代碼
以4個數字表示。如果沒有出現錯誤和警告,則為 0000。
範例1:#GetStatus,00100000001,0000
Auto和Ready的位元為開啟(1)。
這表示AutoMode為開啟且進入Ready狀態。您可以執行命令。
範例2:#GetStatus,00110000010,0517
這表示操作期間出現警告。針對警告代碼採取適當的措施。(在此情況下,警告代碼為0517)
旗標 | 內容 |
---|---|
Test | 在TEST模式下開啟 |
Teach | 在TEACH模式下開啟 |
Auto | 在遠程輸入接受狀況下開啟 |
Warning | 在警告狀況下開啟 即使出現警告,任務也能如常執行。不過,請儘快針對警告採取相應措施。 |
SError | 在嚴重錯誤狀況下開啟發生嚴重錯誤時,重啟控制器以從錯誤狀況恢復。「Reset輸入」無法使用。 |
Safeguard | 在安全門打開的情況下開啟 |
EStop | 在緊急狀況下開啟 |
Error | 在錯誤狀況下開啟使用「Reset輸入」可從錯誤狀況恢復。 |
Paused | 任務暫停時開啟 |
Running | 任務執行時開啟 在「Paused輸出」開啟時會關閉。 |
Ready | 於控制器啟動完成且沒有任務正在執行時開啟 |
*4 其會傳回在「取得數值」中指定的數值。
錯誤回應
當控制器無法正確接收遠程命令時,會以下列格式顯示錯誤回應。
格式:![遠程命令],[錯誤代碼]終端
錯誤代碼 | 內容 |
---|---|
10 | 遠程命令沒有使用$作為開頭 |
11 | 遠程命令錯誤 Login未執行 |
12 | 遠程命令格式錯誤 |
13 | Login命令密碼錯誤 |
14 | 指定的取得數值超出範圍(大於1或小於100) 取得數值被省略 已指定字串參數 |
15 | 參數不存在 參數的維度錯誤 調用了超出範圍的元素 |
19 | 要求超時 |
20 | 控制器未就緒 |
21 | 因Execute正在運行中而無法執行 |
98 | 使用全域IP地址時,需要使用密碼才能登陸 |
99 | 系統錯誤 通信錯誤 |