环球电气之家-午夜精彩视频-中国专业电气电子产品行业服务网站!

產品分類

當前位置: 首頁 > 工業控制產品 > 自動化控制 > 工業軟件

類型分類:
科普知識
數據分類:
工業軟件

世紀星組態軟件標準Modbus協議驅動揭秘(一)

發布日期:2022-07-20 點擊率:83

MODBUS協議是莫迪康公司1978年發明用于電子控制器進行控制和通信的協議。不同廠商生產的符合MODBUS協議的控制設備可以連成工業網絡,進行集中監控。MODBUS協議采用主從(master-slave)技術,是一種問答方式的通信協議。每次通信均由主機發出數據請求信息,從機接收到正確消息后就可以發送數據到主機以響應請求;主機也可以直接發信息修改從機的數據,實現雙向讀寫。  在具體介紹Modbus協議之前,先向大家簡單介紹一下設備中的數據如何存儲。我們常把設備中存儲數據的單元稱為寄存器,按照存儲數據的類型可以分為位寄存器和16位寄存器兩種,如圖1所示:

位寄存器的容量為1位,16位寄存器的容量為16位,每一個存儲數據的寄存器都有一個對應的寄存器地址,Modbus協議就是根據寄存器地址來查詢數據或者設置數據到特定的寄存器中。如圖1所示,位寄存器用來存儲離散值,即開關量;16位寄存器用來存儲16位整數,16位寄存器里的數據既可以獨立表示一個16位整數,也可以用兩個連續的16位寄存器表示32位整型或實型的數據,低地址存放低16位,高地址存放高16位。

接下來詳細介紹Modbus協議。Modbus協議分為三種通信方式:Modbus RTU、Modbus ASCII以及Modbus TCP。

首先,Modbus TCP的通信格式和Modbus RTU非常相似,唯一的差別只是Modbus RTU最后帶兩個字節的CRC校驗,而Modbus TCP沒有。

其次,Modbus ASCII的通信格式與Modbus RTU其實“神合貌離”,就是把Modbus RTU的每一個字節(例如:27H)高四位(2)和低四位(7)拆分為兩個字節,并以ASCII碼的方式表現出來(32 37),再給命令幀分別加上起始符和結束符便可以,當然Modbus RTU和Modbus ASCII的校驗的方式不同,這里暫不詳述,所以同一條命令用Modbus RTU方式和Modbus ASCII方式表現出來,雖然在命令長度的上有很大的區別,但其實際表達的意思卻是一樣。

下面就以Modbus RTU為例,詳細表述世紀星組態軟件是如何讀取設備中的數據,并且將數據設置到設備中。

1.讀數據:

上位機發送命令:02 03 00 05 00 02 D4 39

設備返回的數據:02 03 04 20 08 20 10 49 3D

之前沒有接觸過Modbus RTU協議的朋友們看了上面列出的數據,會稍有不解,這里為大家詳細解釋一下。

1)發送的命令:

第一個字節:02,它表示的是設備地址。在同一條485總線上,可能會接多個設備,而這個設備地址就相當于每一個設備的標識,繼而決定每一個設備的設備地址在同一條總線上必須是唯一。

第二個字節:03,這個字節是功能碼字節,作用就是告訴設備,上位機想要讀取的是什么樣的數據,世紀星組態軟件支持的讀數據的功能碼有:01H、02H、03H和04H,具體含義請參照表1。

第三第四個字節:00 05,表示的是一個寄存器地址,它告訴設備上位機想要讀取的數據,是從寄存器地址5開始的一個或多個寄存器里的數據。

第五第六個字節:00 02,表示的是讀取寄存器的個數,結合第三第四個字節,就是告訴設備,上位機想要讀取的數據是從寄存器地址5開始的2個寄存器里的數據,即寄存器地址為5和6的寄存器里的數據。

第七第八個字節:D4 39,是CRC校驗碼,不論是讀數據還是設置數據,發送和返回命令里的最后兩個字節都是CRC校驗碼,具體的計算方法這里暫不詳述。

2)返回的數據:

第一個字節:02,表示設備地址,作用同發送命令中第一個字節02。

第二個字節:03,表示功能碼,作用同發送命令中第二個字節03。

第三個字節:04,表示返回有效數據的字節個數,這里要說明一下的是對于位寄存器(包括表1中的線圈狀態和輸入狀態),每一個寄存器的容量只有一位,如果上位機發送的命令中要求連續讀8個位寄存器(即發送命令中的第五第六個字節為00 08),設備返回的數據中的第三個字節只為1,因為一個字節的容量為8位,可以表示8個位寄存器的狀態。而對于表1中的保持寄存器和輸入寄存器,每一個寄存器的容量為16位,它可以表示一個16位的整型數據,或者一個32位整型或實型數據的高16位或低16位。所以設備回傳一個保持寄存器或輸入寄存器的數據需要兩個字節,這就解釋了發送命令中要求讀取2個保持寄存器的數據,設備返回的有效數據為4個字節。

緊跟在第三個字節后面的4個字節的數據便是設備返回的有效數據,結合發送的命令,我們可知在寄存器地址為0005H的寄存器中存儲的數據為2008H(十進制為8200),寄存器地址為0006H的寄存器中存儲的數據為2010H(十進制為8208)。

第八第九個字節:49 3D,是CRC校驗碼。

2. 寫數據

1)寫位寄存器

上位機發送命令:02 05 00 05 FF 00 9C 08

設備返回的數據:02 05 00 05 FF 00 9C 08

第一個字節:02,表示設備地址,這里就不做重復介紹。

第二個字節:05,為功能碼字節,05號功能碼的作用為強置一個位寄存器的0/1(ON/OFF)狀態。

第三第四個字節:0005,表示的是上位機發送命令所強置的寄存器的地址。

第五第六個字節:FF00H,表示上位機要將地址為5的位寄存器強置為1,當強置為0時,第五第六個字節為:00 00。

第七第八個字節:9C 08,為CRC校驗字節。

設備正常返回時,返回的數據與上位機發送的命令是完全一致的。

2)寫單個16位寄存器

上位機發送命令:02 06 00 05 00 12 19 F5

設備返回的數據:02 06 00 05 00 12 19 F5

第一個字節:02,表示設備地址。

第二個字節:06,為功能碼字節,06號功能碼的作用為預置單個16位寄存器。

第三第四個字節:0005,表示的是上位機發送命令所預置的寄存器的地址。

第五第六個字節:0012H,表示上位機要將地址為5的16位寄存器預置為12H(十進制為18)。

第七第八個字節:19 F5,為CRC校驗字節。

設備正常返回時,返回的數據與上位機發送的命令完全一致。

3)寫多個16位寄存器

上位機發送命令:02 10 00 06 00 02 04 01 02 00 00 DC FD

設備返回的數據:02 10 00 06 00 04 21 F8

發送的命令:

第一個字節:02,表示設備地址。

第二個字節:10H(十進制為16),為功能碼字節,10H號功能碼的作用為預置多個16位寄存器。

第三第四個字節:0006,表示的是上位機發送命令所預置的多個寄存器的起始地址為0006H。

第五第六個字節:0002,表示上位機要連續預置連續的兩個寄存器。

第七個字節:04,表示后面跟著的4個字節數據是要預置到指定寄存器中去的。

緊跟在第七個字節后的四個字節便是要預置到指定寄存器中的數據,結合前面的信息,我們知道這條命令是要將0102H(十進制為258)預置到地址為6的寄存器中,0000H預置到地址為7的寄存器中。

最后兩個字節:9C08,為CRC校驗字節。

返回的數據:

第一個字節:02,表示設備地址。

第二個字節:10H(十進制為16),為功能碼字節。

第三第四個字節:0006,表示的是上位機發送命令所預置的多個寄存器的起始地址位0006H。

第五第六個字節:0004,表示上位機預置了連續的兩個寄存器即4個字節的有效數據。

第七第八個字節:19 F5,為CRC校驗字節。

無論是強制位寄存器還是預置16位寄存器,設備返回數據的作用僅僅是告訴上位機數據已經成功設置到設備寄存器中了。

關于Modbus RTU協議格式的暫時介紹到這里,希望這篇文章可以讓對通信協議不了解甚至沒有接觸過Modbus協議的朋友們對Modbus有初步的認識。在下一期的《世紀星月刊》中,我會繼續介紹世紀星組態軟件對Modbus 協議的支持情況,希望會對世紀星的廣大用戶有所幫助。

下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

推薦產品

更多
主站蜘蛛池模板: 复盛空压机配件-空气压缩机-复盛空压机(华北)总代理 | Type-c防水母座|贴片母座|耳机接口|Type-c插座-深圳市步步精科技有限公司 | 微信聊天记录恢复_手机短信删除怎么恢复_通讯录恢复软件下载-快易数据恢复 | 活性氧化铝球|氧化铝干燥剂|分子筛干燥剂|氢氧化铝粉-淄博同心材料有限公司 | 网络推广公司_网络营销方案策划_企业网络推广外包平台-上海澜推网络 | Eiafans.com_环评爱好者 环评网|环评论坛|环评报告公示网|竣工环保验收公示网|环保验收报告公示网|环保自主验收公示|环评公示网|环保公示网|注册环评工程师|环境影响评价|环评师|规划环评|环评报告|环评考试网|环评论坛 - Powered by Discuz! | 合金耐磨锤头_破碎机锤头_郑州市德勤建材有限公司 | 爆炸冲击传感器-无线遥测传感器-航天星百科 | 网络推广公司_网络营销方案策划_企业网络推广外包平台-上海澜推网络 | 无线遥控更衣吊篮_IC卡更衣吊篮_电动更衣吊篮配件_煤矿更衣吊篮-力得电子 | 针焰试验仪,灼热丝试验仪,漏电起痕试验仪,水平垂直燃烧试验仪 - 苏州亚诺天下仪器有限公司 | 慢回弹测试仪-落球回弹测试仪-北京冠测精电仪器设备有限公司 | 天津市能谱科技有限公司-专业的红外光谱仪_红外测油仪_紫外测油仪_红外制样附件_傅里叶红外光谱技术生产服务厂商 | 护栏打桩机-打桩机厂家-恒新重工 | 1000帧高速摄像机|工业高速相机厂家|科天健光电技术 | 钢板仓,大型钢板仓,钢板库,大型钢板库,粉煤灰钢板仓,螺旋钢板仓,螺旋卷板仓,骨料钢板仓 | 中式装修设计_全屋定制家具_实木仿古门窗花格厂家-喜迎门 | 耐火浇注料-喷涂料-浇注料生产厂家_郑州市元领耐火材料有限公司 耐力板-PC阳光板-PC板-PC耐力板 - 嘉兴赢创实业有限公司 | 附着力促进剂-尼龙处理剂-PP处理剂-金属附着力处理剂-东莞市炅盛塑胶科技有限公司 | 玉米深加工设备-玉米深加工机械-新型玉米工机械生产厂家-河南粮院机械制造有限公司 | 砂尘试验箱_淋雨试验房_冰水冲击试验箱_IPX9K淋雨试验箱_广州岳信试验设备有限公司 | 南溪在线-南溪招聘找工作、找房子、找对象,南溪综合生活信息门户! | 定制防伪标签_防伪标签印刷_防伪标签厂家-510品保防伪网 | 成都租车_成都租车公司_成都租车网_众行宝 | 沙盘模型公司_沙盘模型制作公司_建筑模型公司_工业机械模型制作厂家 | DNA亲子鉴定_DNA基因检测中心官方预约平台-严选好基因网 | 不发火防静电金属骨料_无机磨石_水泥自流平_修补砂浆厂家「圣威特」 | 南京技嘉环保科技有限公司-杀菌除臭剂|污水|垃圾|厕所|橡胶厂|化工厂|铸造厂除臭剂 | 机器视觉检测系统-视觉检测系统-机器视觉系统-ccd检测系统-视觉控制器-视控一体机 -海克易邦 | 快速卷帘门_硬质快速卷帘门-西朗门业 | 探伤仪,漆膜厚度测试仪,轮胎花纹深度尺厂家-淄博创宇电子 | 山东钢衬塑罐_管道_反应釜厂家-淄博富邦滚塑防腐设备科技有限公司 | 广州云仓代发-昊哥云仓专业电商仓储托管外包代发货服务 | 清管器,管道清管器,聚氨酯发泡球,清管球 - 承德嘉拓设备 | 天津试验仪器-电液伺服万能材料试验机,恒温恒湿标准养护箱,水泥恒应力压力试验机-天津鑫高伟业科技有限公司 | 三效蒸发器_多效蒸发器价格_四效三效蒸发器厂家-青岛康景辉 | 铸铁平台,大理石平台专业生产厂家_河北-北重机械 | 数码管_LED贴片灯_LED数码管厂家-无锡市冠卓电子科技有限公司 | 气动|电动调节阀|球阀|蝶阀-自力式调节阀-上海渠工阀门管道工程有限公司 | 仓储笼_仓储货架_南京货架_仓储货架厂家_南京货架价格低-南京一品仓储设备制造公司 | 广州物流公司_广州货运公司_广州回程车运输 - 万信物流 |