最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

三菱FX-5U MODBUS Tcp主站程序?qū)W習(xí)筆記

2022-04-19 18:07 作者:3_qq_3  | 我要投稿

程序如下

=========================通信程序解析==============================

(*ModbusTcp通信中用到的指令*)


(*

// SP_SOCOPEN

// SP_SOCCLOSE

// SP_CPRTCL

*)


(*

5u做為 ModbusTcp_主站?

通信數(shù)據(jù)包的設(shè)置

工具--》通信協(xié)議支持功能--》模塊類型? CPU(以太網(wǎng))--》

添加協(xié)議(手動(dòng)添加)--》通信協(xié)議庫(kù)? 選擇制造商 型號(hào) (ModbusTcp) 協(xié)議句(對(duì)應(yīng)Modbus功能碼)

也可直接添加下面這個(gè)數(shù)據(jù)包

D:\mitsubishi\通信DEMO\三菱Q內(nèi)置以太網(wǎng)socket通信的程序\ModbusTcpClient數(shù)據(jù)包設(shè)置.tpx

需要單獨(dú)將數(shù)據(jù)包下載到PLC中

數(shù)據(jù)包的作用就是將報(bào)文協(xié)議中的信息存入到程序員分配的寄存器中(內(nèi)部進(jìn)行轉(zhuǎn)化)比如D1000……,

然后可對(duì)分配的寄存器進(jìn)行讀寫操作

*)

//執(zhí)行工程工具中登錄的通信協(xié)議。

(*

SP.ECPRTCL "U0" K1 K1 D1400 M200;

SP_CPRTCL( ?BOOL_EN? , 'U0' , ?ANY16_ARRAY_s? , ?ANY16_U_n1? , ?ANY16_U_n2??

?ANYBIT_ARRAY_d? );

*)

(*MOV K1 D1402

SP.ECPRTCL "U0" K1 K1 D1400 M200;*這里是和通信數(shù)據(jù)包中的設(shè)置參數(shù)對(duì)應(yīng)的

控制數(shù)據(jù) D1400? D14002? ?(D14002? ? D14003? D14004 D14005 D14006 D14007 D14008 D14009? 這8個(gè)寄存器對(duì)應(yīng)8外協(xié)議號(hào))

通信狀態(tài)M200 M201? M200 通信完成? M200通信異常

*)?

(* 數(shù)據(jù)包設(shè)置說(shuō)明

SP.ECPRTCL "U0" K1 K1 D1400 M200;

D1000 Transaction ID 傳輸標(biāo)識(shí)? 就像表格中的序號(hào),便于區(qū)分,可在程序中對(duì)其加1,每次完成后對(duì)傳輸標(biāo)識(shí)加1,這樣就知道通信了幾次了

D1001? 單元標(biāo)識(shí)符??

D1002 寄存器起始地址?

D1003 讀取數(shù)量 (在這里是4個(gè)線圈)

*)


(*?

D1499是干什么的?

MOV H0 D1499

(*Request發(fā)送的數(shù)據(jù)*)

MOV D1499 D1000? //D1000? Transaction ID傳送標(biāo)識(shí)符? ?

MOV H1 D1001 //D1001? Module ID 單元標(biāo)識(shí)符(從站編號(hào))

(假設(shè)有5個(gè)從站,從站編號(hào)為1號(hào)從站2號(hào)從站3號(hào)從站4號(hào)從站當(dāng)Protocol ID=1時(shí)表示指定1號(hào)從站與主站通信)

MOV H0 D1002? //Head input number? (首個(gè)輸入的地址)

MOV H4 D1003? ?//Read Points

MOV K1 D1402? //調(diào)用第1個(gè)協(xié)議號(hào)

SP.ECPRTCL "U0" K1 K1 D1400 M200;*這里是和通信數(shù)據(jù)包中的設(shè)置參數(shù)對(duì)應(yīng)的

控制數(shù)據(jù) D1400? D14002? ?(D14002? ? D14003? D14004 D14005 D14006 D14007 D14008 D14009? 這8個(gè)寄存器對(duì)應(yīng)8個(gè)協(xié)議號(hào)

MOV D1010 K1Y0

D1009 數(shù)據(jù)長(zhǎng)度? D1010 數(shù)據(jù)存儲(chǔ)區(qū) 將讀到的數(shù)據(jù)存到這里

*)


(*

主站發(fā)送的報(bào)文

0644 0000 0006 0102 00 00 00 04

傳送標(biāo)識(shí)符0644?

0000? 協(xié)議標(biāo)識(shí)符? 0000 表示MODBUS TCP協(xié)議

0006 數(shù)據(jù)長(zhǎng)度6個(gè)字節(jié)(0102 00 00 00 04? 占用6個(gè)字節(jié)的存儲(chǔ)空間)

01? 單元標(biāo)識(shí)符(從站設(shè)備地址)

02? 功能碼為02? 讀離散量輸入

00 00? 起始地址

00 04? 寄存器數(shù)量(離散量個(gè)數(shù))

*)

(*?

報(bào)文分析

https://blog.csdn.net/weixin_39608394/article/details/110456624

主機(jī)請(qǐng)求消息

07 78 00 00 00 06 03 03 00 00 00 14

一 二? 三四 ? ?五六? ? ? 七 八? ? ? ?九十? ? ? 十一 十二

****************************

1,2事務(wù)處理標(biāo)識(shí)(傳送標(biāo)識(shí)符)

2字節(jié)

07 78可以理解為報(bào)文的序列號(hào),一般每次通信之后就要加1以區(qū)別不同的通信數(shù)據(jù)報(bào)文。

************************************************************************************

3,4協(xié)議標(biāo)識(shí)符

2字節(jié)

00 00表示ModbusTCP協(xié)議。

****************************

5,6長(zhǎng)度

2字節(jié)

00 06表示接下來(lái)的數(shù)據(jù)長(zhǎng)度,單位為字節(jié)。

****************************

7單元標(biāo)識(shí)符

1字節(jié)

03可以理解為Slave設(shè)備地址。

****************************

8功能碼

1字節(jié)

03 功能碼,讀保持寄存器

****************************

9,10起始地址

2字節(jié)

00 00 起始地址}

****************************

11,12寄存器數(shù)量

2字節(jié)

00 14 讀取寄存器數(shù)量}

======================================================================

從機(jī)回復(fù)消息

07 78 00 00 00 2B 03 03 28 00 01 00 02 00 03 00 04 00 05 00 06 00 07 00 08 00 09 00 0A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

事務(wù)處理標(biāo)識(shí)

2字節(jié)

07 78可以理解為報(bào)文的序列號(hào),一般每次通信之后就要加1以區(qū)別不同的通信數(shù)據(jù)報(bào)文。

協(xié)議標(biāo)識(shí)符

2字節(jié)

00 00表示ModbusTCP協(xié)議。

長(zhǎng)度

2字節(jié)

00 2B表示接下來(lái)的數(shù)據(jù)長(zhǎng)度,單位為字節(jié)。

單元標(biāo)識(shí)符

1字節(jié)

03可以理解為Slave設(shè)備地址。

功能碼

1字節(jié)

03 功能碼,讀保持寄存器

起始地址

1字節(jié)

28 回復(fù)的數(shù)據(jù)大小

寄存器數(shù)據(jù)

xxx字節(jié)

讀取的寄存器數(shù)據(jù)

*)


三菱FX-5U MODBUS Tcp主站程序?qū)W習(xí)筆記的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
中超| 广饶县| 微山县| 汤阴县| 汉沽区| 东乌珠穆沁旗| 临西县| 翁源县| 祁阳县| 远安县| 江北区| 蓝山县| 酉阳| 江安县| 郁南县| 乐安县| 简阳市| 周口市| 鄂托克前旗| 海宁市| 乳山市| 星座| 广德县| 儋州市| 扎兰屯市| 班玛县| 上蔡县| 辛集市| 汕尾市| 通辽市| 嵩明县| 文成县| 鄱阳县| 蛟河市| 临潭县| 社旗县| 镇坪县| 永丰县| 山西省| 天柱县| 南和县|