亚洲aⅴ精品,亚洲精品日本,国产精品97色综合国产精品,欧美日韩国产一二三区

CS機(jī)器人ModBusTCP通訊

2024-09-30

1.  簡介

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

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

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

每種類型分別包含一組輸入和一組輸出寄存器,因此 Modbus 共有 4 組寄存器可被主站訪問。其中,

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

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

查詢

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

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

共占 2*64 字節(jié)。

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

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

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

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

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

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

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

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

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

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

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

2.  操作流程

2.1機(jī)器人做從站

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

機(jī)器人Ip設(shè)置:

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

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

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

接下來我們可以用modbus poll來:

寫入標(biāo)準(zhǔn)數(shù)字輸出

讀取標(biāo)準(zhǔn)數(shù)字輸出

讀取標(biāo)準(zhǔn)數(shù)字輸入

讀取寄存器

寫入寄存器

2.1.1讀取標(biāo)準(zhǔn)數(shù)字輸入

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

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

2.1.2讀取標(biāo)準(zhǔn)數(shù)字輸出

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

由圖可見32與41為1,與機(jī)器人modbus slave界面顯示標(biāo)準(zhǔn)數(shù)字輸出0和標(biāo)準(zhǔn)數(shù)字輸出顯示的數(shù)據(jù)一樣,可見讀取成功

2.1.3寫入標(biāo)準(zhǔn)數(shù)字輸出

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

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

2.1.4讀取寄存器

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

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

2.1.5寫入寄存器

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

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

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

2.2機(jī)器人做主站

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

查看電腦ip,這邊為192.168.1.205

打開 modbus slave 調(diào)試助手,點(diǎn)擊 connection--connect,如下圖設(shè)置后點(diǎn)擊ok

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

2.2.1讀線圈

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

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

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

打開modbus slave調(diào)試助手,雙擊對應(yīng)地址,修改值,即可發(fā)現(xiàn)機(jī)器人示教器界面的值也改變

2.2.2寫線圈

打開modbus slave,可點(diǎn)擊File--new,會出來一根新的監(jiān)視表,

右擊其選擇Slave Definition,

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

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

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

2.2.3讀寄存器

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

右擊其選擇Slave Definition,

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

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

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

在示教器界面可查看對應(yīng)數(shù)值

2.2.4寫寄存器

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

右擊其選擇Slave Definition,

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

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

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

3.  程序中操作

3.1機(jī)器人做從站

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

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

3.1.1任務(wù)中讀取(等待)線圈值

當(dāng)線圈m_a為高是彈出彈窗信息1

3.1.2任務(wù)中設(shè)置(給出)線圈值

機(jī)器人中如上圖設(shè)置,點(diǎn)擊運(yùn)行,調(diào)試助手中顯示為1,即成功

3.1.3任務(wù)中讀取(等待)寄存器值

運(yùn)行機(jī)器人程序,在poll中地址66輸入44,機(jī)器人彈窗提示1,即ok

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

運(yùn)行機(jī)器人程序,poll中地址277顯示為值897即ok

3.2機(jī)器人做主站

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

3.2.1任務(wù)中讀取(等待)線圈值

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

3.2.2任務(wù)中設(shè)置寫入線圈值

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

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

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

3.2.3任務(wù)中讀取(等待)寄存器值

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

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

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

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

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



download-669.svg comicon14.svg

電話咨詢

download-397.svg comicon15.svg

免費(fèi)試用

Vector.svg Frame.svg

微信小程序

img1.jpg

微信小程序

準(zhǔn)備好突破增長瓶頸,開啟智能制造了嗎?
了解我們的機(jī)器人如何幫助您的業(yè)務(wù)增長
歡迎下載艾利特機(jī)器人資料

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

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

提交