RM新时代赚钱项目

CS機器人ModBusTCP通訊

2024-09-30

1.  簡(jiǎn)介

Modbus是一種串行通訊協(xié)議,是Modicon公司于1979年為使用可編程邏輯控制器通信而發(fā)表。Modbus已經(jīng)成為工業(yè)領(lǐng)域通信協(xié)議的業(yè)界標準,并且現在是工業(yè)電子設備之間常用的連接方式。

CS系列機器人支持modbus tcp,機器人既可以做主站也可以做從站,在某些情況下我們可以通過(guò)modbus poll即第三方通訊助手來(lái)測試該通訊。

CS 系列支持的,可使用 Modbus 協(xié)議讀寫(xiě)的數據類(lèi)型為布爾型與無(wú)符號短整型(16 位)兩種,

每種類(lèi)型分別包含一組輸入和一組輸出寄存器,因此 Modbus 共有 4 組寄存器可被主站訪(fǎng)問(wèn)。其中,

輸入型寄存器只允許讀操作,輸出型寄存器可讀可寫(xiě)。有關(guān)寄存器協(xié)議接口的詳細說(shuō)明,請登陸官網(wǎng):

wap.713st.com,進(jìn)入“服務(wù)與支持 > 技術(shù)資料”板塊,選擇“CS_用戶(hù)手冊_V2.11.0_附件”進(jìn)行

查詢(xún)

1. 布爾型寄存器(8 位):主要用于操作數字 IO,CS 系列目前可訪(fǎng)問(wèn)的輸入/輸出數字 IO 寄存器

的有效地址范圍為 0-63,雖然其值的類(lèi)型為 bool,但每個(gè) IO 仍會(huì )占用一個(gè)字節的空間,所以數字 IO

共占 2*64 字節。

2. 無(wú)符號短整型(16 位):用于保存和修改機器人的版本,TCP,系統狀態(tài)等信息;也用于映射

數字 IO。CS 系列目前可訪(fǎng)問(wèn)的輸入/輸出寄存器的有效地址范圍為 0-415。

工具 Modbus 主站設備可通過(guò)以下功能碼讀/寫(xiě)從站寄存器:

1. 0x01: 讀一個(gè)或者多個(gè)輸出數字信號 (read output bits)

2. 0x02: 讀一個(gè)或者多個(gè)輸入數字信號 (read input bits)

3. 0x03: 讀一個(gè)或者多個(gè)輸出寄存器 (read output registers)

4. 0x04: 讀一個(gè)或者多個(gè)輸入寄存器 (read input registers)

5. 0x05: 寫(xiě)單個(gè)輸出數字信號 (write output bit)

6. 0x06: 寫(xiě)單個(gè)輸出寄存器 (write output register)

7. 0x0F: 連續寫(xiě)多個(gè)輸出數字信號 (write multiple output bits)

8. 0x10: 連續寫(xiě)多個(gè)輸出寄存器 (write multiple output registers)

2.  操作流程

2.1機器人做從站

機器人做從站,modbus通訊使用機器人控制柜FB1網(wǎng)口或FB2網(wǎng)口,連接控制柜和電腦,

機器人Ip設置:

電腦設置為機器人的同一網(wǎng)段后可以ping一下查看網(wǎng)絡(luò )是否連接正常

打開(kāi)第三方網(wǎng)絡(luò )調試助手modbus poll,--connection--connect,選擇modbus tcp/ip,ip地址欄輸入機器人的ip,端口默認502,最后點(diǎn)擊ok

只要對話(huà)框不顯示noconnection 就表明調試軟件已連上cs機器人

接下來(lái)我們可以用modbus poll來(lái):

寫(xiě)入標準數字輸出

讀取標準數字輸出

讀取標準數字輸入

讀取寄存器

寫(xiě)入寄存器

2.1.1讀取標準數字輸入

功能碼選擇 02 Read Discrete inputs ,地址格式十進(jìn)制,起始地址 0,讀寫(xiě)數量 24(機器人輸入地址 0-23,共 24 個(gè))

上圖顯示輸入4為1與下圖示教器顯示匹配,可見(jiàn)讀取成功

2.1.2讀取標準數字輸出

功能碼選擇 02 Read Discrete Inputs ,地址格式十進(jìn)制,起始地址 32,(機器人輸出地址 32-59,共 28 個(gè)),讀寫(xiě)數量可選擇 28 即全部讀取

由圖可見(jiàn)32與41為1,與機器人modbus slave界面顯示標準數字輸出0和標準數字輸出顯示的數據一樣,可見(jiàn)讀取成功

2.1.3寫(xiě)入標準數字輸出

setup--read/write definition中可以先擇 01 read coils(0x)讀取線(xiàn)圈方便在modbus poll上觀(guān)察

點(diǎn)擊functions--選擇功能碼15:write multiple coils(寫(xiě)多個(gè)線(xiàn)圈),勾選所需的coil,點(diǎn)擊send,回復respons ok 即可輸出信號

2.1.4讀取寄存器

setup--read/write definition中可以先擇 功能碼04read input registers,十進(jìn)制,起始地址 97,

讀寫(xiě)數量 10(根據實(shí)際需求修改)

2.1.5寫(xiě)入寄存器

可以在setup--read/write definition 選擇04 read input register,地址address256,數量10,先讀這些可讀可寫(xiě)的寄存器方便我們觀(guān)察變化

第一種方法:直接雙擊poll表格里的地址,修改value值來(lái)寫(xiě)入(對應功能碼06 寫(xiě)單個(gè)輸出寄存器)

第二種方法:點(diǎn)擊functions --16:write multiple registers,雙擊圖中顯示列表來(lái)修改寄存器值

2.2機器人做主站

機器人做主站,modbus通訊使用機器人控制柜FB2網(wǎng)口,連接控制柜和電腦

查看電腦ip,這邊為192.168.1.205

打開(kāi) modbus slave 調試助手,點(diǎn)擊 connection--connect,如下圖設置后點(diǎn)擊ok

點(diǎn)擊機器人示教器配置--通訊--modbus--添加modbus設備,輸入ip(此處ip為主站ip)

2.2.1讀線(xiàn)圈

打開(kāi)modbus slave調試助手,右擊名為“mbalave1”窗口,點(diǎn)擊slave definition,

輸入下圖的id,功能碼,地址,數量,點(diǎn)擊ok

點(diǎn)擊示教器頁(yè)面,輸入類(lèi)型-數字輸入 地址為0從站地址可為1,頻率10(可選),當圖標變?yōu)榫G色即ok

打開(kāi)modbus slave調試助手,雙擊對應地址,修改值,即可發(fā)現機器人示教器界面的值也改變

2.2.2寫(xiě)線(xiàn)圈

打開(kāi)modbus slave,可點(diǎn)擊File--new,會(huì )出來(lái)一根新的監視表,

右擊其選擇Slave Definition,

輸入id 功能碼 地址和數量,注意地址不要與上一步設置重復

機器人示教器上點(diǎn)擊添加信號,如下圖設置:

在該界面點(diǎn)擊值,可在modbus slave,查看到

2.2.3讀寄存器

打開(kāi)modbus slave,可點(diǎn)擊File--new,會(huì )出來(lái)一個(gè)新的監視表

右擊其選擇Slave Definition,

輸入id 1,功能碼04,地址20,數量5(自定義),點(diǎn)擊ok

在機器人示教器界面點(diǎn)擊添加信號,輸入下列數據,圓形圖標變綠色表明連接成功

可在modbus slave界面,點(diǎn)擊對應地址輸入數值,

在示教器界面可查看對應數值

2.2.4寫(xiě)寄存器

打開(kāi)modbus slave,可點(diǎn)擊File--new,會(huì )出來(lái)一個(gè)新的監視表

右擊其選擇Slave Definition,

選擇id 1,function03,地址30,數量5(自定義),點(diǎn)擊ok

在示教器界面點(diǎn)擊添加信號--輸入下圖對應信息,圓形圖標變綠色表明連接成功

點(diǎn)擊值,輸入數據,即可在modbus slave上查看到寫(xiě)入的值

3.  程序中操作

3.1機器人做從站

為方便在modbus信號在程序中方便配置和使用,可以在配置--通訊--modbus連接機器人自己作為主站

如上圖所示,下述以數字輸入,地址32;數字輸出,地址33;寄存輸入,地址266;寄存器輸出,地址277為例

3.1.1任務(wù)中讀?。ǖ却┚€(xiàn)圈值

當線(xiàn)圈m_a為高是彈出彈窗信息1

3.1.2任務(wù)中設置(給出)線(xiàn)圈值

機器人中如上圖設置,點(diǎn)擊運行,調試助手中顯示為1,即成功

3.1.3任務(wù)中讀?。ǖ却┘拇嫫髦?/strong>

運行機器人程序,在poll中地址66輸入44,機器人彈窗提示1,即ok

3.1.4任務(wù)中設置(給出)寄存器值

運行機器人程序,poll中地址277顯示為值897即ok

3.2機器人做主站

確定按照上述步驟客戶(hù)端io設置完成

3.2.1任務(wù)中讀?。ǖ却┚€(xiàn)圈值

運行任務(wù),當從站的信號modbus=高 時(shí) ,頁(yè)面彈出窗口提示“1”,代表已獲取到該mosbus

3.2.2任務(wù)中設置寫(xiě)入線(xiàn)圈值

先檢查助手里面準備寫(xiě)入得地址是否為0

如圖在任務(wù)里添加設置

點(diǎn)擊運行任務(wù),助手中值變化

3.2.3任務(wù)中讀?。ǖ却┘拇嫫髦?/strong>

運行任務(wù),當從站的信號modbus_2=3 時(shí) ,頁(yè)面彈出窗口提示“1”,代表已獲取到該寄存器的值

3.2.4任務(wù)中寫(xiě)入從站的寄存器值

先檢查助手里面準備寫(xiě)入得地址是否為0

如圖在任務(wù)里添加設置

點(diǎn)擊運行任務(wù),助手中值變化



download-669.svg comicon14.svg

電話(huà)咨詢(xún)

download-397.svg comicon15.svg

免費試用

Vector.svg Frame.svg

微信小程序

img1.jpg

微信小程序

準備好體驗輪式人形機器人帶來(lái)的效率飛躍了嗎?開(kāi)啟智能制造之旅
了解我們的機器人如何幫助您的業(yè)務(wù)增長(cháng)
歡迎下載艾利特機器人資料

我已閱讀并同意艾利特《隱私政策》和《法律聲明》

我已知曉并同意艾利特通過(guò)電子郵件發(fā)送相關(guān)資料

提交
RM新时代赚钱项目