CS機(jī)器人PLC控制29999端口
1. 簡(jiǎn)介
PLC進(jìn)行socket通訊發(fā)送給機(jī)器人數(shù)據(jù)時(shí),是以ASCII碼的格式發(fā)送16進(jìn)制字符串。ASCII碼是基于拉丁字母的一套電腦編碼系統(tǒng),主要用于顯示現(xiàn)代英語和其他西歐語言。它是最通用的信息交換標(biāo)準(zhǔn),并等同于國際標(biāo)準(zhǔn) ISO/IEC 646。圖表如下:


2.操作流程
以socket助手示例以16進(jìn)制形式發(fā)送字符串給機(jī)器人。字符串轉(zhuǎn)16進(jìn)制可參考上圖表,或使用在線轉(zhuǎn)換工具。
例如下圖當(dāng)前任務(wù)a1,需要通過29999端口切換任務(wù)。

在手冊(cè)中找出切換任務(wù)的字符串是’task -p’ ,在網(wǎng)址中把字符串轉(zhuǎn)換為16進(jìn)制,如下圖,切換到www任務(wù),再將轉(zhuǎn)換后的16進(jìn)制字符串發(fā)送給機(jī)器人切換任務(wù)。


注意:指令是以換行符為結(jié)束語,在計(jì)算機(jī)語言中換行是/n,但不能把/n以字符串形式轉(zhuǎn)換,在圖表中有直接定義的換行:0A
3.常見問題解答
3.1 指令發(fā)送給機(jī)器人都要以換行符為結(jié)束,如發(fā)兩次指令,只有第二次加換行符,機(jī)器人會(huì)報(bào)錯(cuò)或當(dāng)一次指令接受,例如task指令會(huì)報(bào)錯(cuò)路徑錯(cuò)誤,log指令會(huì)收到當(dāng)成只收到一次但不報(bào)錯(cuò)。
3.2 在計(jì)算機(jī)語言中換行是/n,但不能把/n以字符串形式轉(zhuǎn)換為16進(jìn)制,在圖表中有直接定義的換行:0A
3.3 中文的符號(hào)和英文的符號(hào)字節(jié)不一樣,轉(zhuǎn)換時(shí)需要注意。
4.示例
以下示例16進(jìn)制未加換行,使用時(shí)需加上。
調(diào)用任務(wù)——task -p:74 61 73 6b 20 2d 70
釋放抱閘——obotControl -on :72 6f 62 6f 74 43 6f 6e 74 72 6f 6c 20 2d 6f 6e
關(guān)閉正在顯示的安全模式彈出框并清除報(bào)警——closeSafetyDialog :63 6c 6f 73 65 53 61 66 65 74 79 44 69 61 6c 6f 67
下電——robotControl -off :72 6f 62 6f 74 43 6f 6e 74 72 6f 6c 20 2d 6f 66 66
更多指令可參考29999端口使用文檔或CS_用戶手冊(cè)_EliRobot Dashboard。