婷婷亚洲天堂影院-国产精品豆花视频www-伊人影院在线观看-日本少妇浓毛bbwbbwbbw-av网站观看-亚州欧美在线-91精品国产乱码久-任我爽精品视频在线播放-日本视频不卡-亚洲国产精品va在线观看香蕉-国产毛片乡下农村妇女-国产成人免费ā片在线观看老同学-欧美日韩免费在线-成人无码视频免费播放-色综合美女-免费毛片av

電子開發(fā)網(wǎng)

電子開發(fā)網(wǎng)電子設(shè)計 | 電子開發(fā)網(wǎng)Rss 2.0 會員中心 會員注冊
搜索: 您現(xiàn)在的位置: 電子開發(fā)網(wǎng) >> 電子開發(fā) >> plc工業(yè)軟件使用 >> 正文

其實,Modbus通訊很簡單!——手把手教你,STEP7

作者:佚名    文章來源:本站原創(chuàng)    點擊數(shù):    更新時間:2024/9/20

主要內(nèi)容:

  • S7-200 PLC Modbus通訊概述

  • S7-200 PLC Modbus通訊指令,STEP7

  • S7-200 PLC Modbus通訊常問問題

(1)Modbus通訊

S7-200的Modbus通訊:

  • S7-200只支持Modbus RTU協(xié)議,不支持Modbus ASCII協(xié)議;

  • Modbus是一種單主站的主/從通信模式。一條Modbus網(wǎng)絡(luò)上同時只能有一臺主站,從站可以有若干個(如下圖所示)。從站的地址范圍為1-247;

Modbus是一種單主站的主/從通信模式 
  • 一個Modbus通訊的傳輸字符應(yīng)包括一個起始位,8個數(shù)據(jù)位,1個或0個校驗位(奇偶校驗或無校驗可選擇),以及一個停止位

  • 在S7-200 CPU通信口上實現(xiàn)的是RS485半雙工通信,使用的是S7-200的自由口功能。

 

上圖是一個典型的主站和從站的網(wǎng)絡(luò)結(jié)構(gòu),對于Modbus主站而言可以對從站進(jìn)行讀或者寫的操作,其中它所支持的功能碼(FC,F(xiàn)unction Code)包括主站左側(cè)表格中所述功能,例如功能碼為'01'時表示讀取單個/多個線圈(DO)狀態(tài)或功能碼為'04'時表示讀取單個/多個輸入寄存器(AI)狀態(tài)。而對于從站,我們只需要把Modbus的標(biāo)準(zhǔn)地址和從站的地址對應(yīng)關(guān)系建立好就可以了,S7-200的從站與Modbus標(biāo)準(zhǔn)的對應(yīng)關(guān)系如從站右側(cè)表格所示。表中左側(cè)是Modbus標(biāo)準(zhǔn)地址碼,其中1-128對應(yīng)于S7-200的Q0.0-Q15.7,10001-10128對應(yīng)于S7-200的I0.0-I15.7,30001-30032對應(yīng)于AIW0-AIW62,40001-4xxx對應(yīng)的是S7-200的保持寄存器(V區(qū)),它的范圍是T-T+2*(xxxx-1),T表示的是V區(qū)的起始地址,這一點由Modbus從站的指令所決定的。

MBUS_MSG指令說明 

Modbus的主站指令叫做MBUS_MSG,通過這條指令可以將Modbus的標(biāo)準(zhǔn)報文發(fā)給從站,例如在上圖例子當(dāng)中從站的第一個字節(jié)是03,表示的是從站的地址,F(xiàn)C功能碼為03,表示的是讀取單個/多個保存寄存器,Modbus標(biāo)準(zhǔn)地址是40001,長度是10。隨著功能碼的不同,報文的格式會發(fā)生相應(yīng)的變化,具體的報文格式需要去參閱Modbus的通訊手冊。

MBUS_SLAVE指令 

從站的指令時MBUS _SLAVE,在接到主站發(fā)給它的報文后會根據(jù)報文的需求返回報文,比如在上圖例子中返回的格式是第一個字節(jié)為從站的地址,第二個為功能碼,第三個是數(shù)據(jù)返回給主站,這樣就完成了一次Modbus通訊的請求與應(yīng)答的過程。

(2)STEP7中Modbus庫文件的安裝和調(diào)用

55

如果想要應(yīng)用Modbus指令庫,那么首先需要到因特網(wǎng)上或者向西門子的客服人員申請名稱為'Toolbox_V32-STEP 7-Micro WIN' 的指令庫,將它解壓并且安裝到Micro WIN當(dāng)中就可以使用了,安裝后會在Micro WIN的庫文件當(dāng)中出現(xiàn)上圖標(biāo)記的三個庫,其中Port0和Port1都可以做Modbus Master,而Slave只有Port0口可以做。

3)Modbus庫文件的使用

西門子PLC的Modbus庫文件的使用 

使用方法很簡單,打開Modbus主站指令庫會有相應(yīng)的指令塊出現(xiàn),直接把指令塊拖拽到程序當(dāng)中進(jìn)行調(diào)用就可以了。

西門子PLD的Modbus庫文件的使用 

在調(diào)用Modbus庫指令的時候,需要注意一定記得為Modbus庫文件分配庫存儲區(qū)。具體的方法是右鍵單擊庫,然后選擇庫存儲區(qū),在彈出來的對話框當(dāng)中可以選擇建議地址,自動分配一個程序里面不會用到的地址區(qū)間,也可以人為地手動填寫起始地址,這個區(qū)間在程序當(dāng)中不可以和其他的數(shù)據(jù)區(qū)相沖突,否則Modbus功能將不正常。所謂的庫存儲區(qū)其實就是Modbus指令庫能夠正常工作所必須的一部分背景數(shù)據(jù),只要給它分配好區(qū)間并保證不與程序當(dāng)中其他的地址相沖突就可以了。

(4)Modbus從站指令,MBUS_INIT初始化和MBUS_SLAVE從站指令

Modbus從站指令,MBUS_INIT初始化和MBUS_SLAVE從站指令 

從站指令一共有兩條,第一條是從站的初始化指令(MBUS_INIT),另一條是MBUS_SLAVE從站指令,在Modbus從站的初始化指令當(dāng)中涉及哪些內(nèi)容呢?首先,第一個引腳Mode表示等于1的時候是啟動Modbus,等于0的時候是關(guān)閉Modbus,Addr表示的是這個從站的從站地址,Baud表示波特率,Parity是奇偶校驗,0是無校驗,1是奇校驗,2是偶校驗,Delay是附加字符之間的延遲,MaxIQ表示的是最大I/Q地址(默認(rèn)128),MaxAI表示的是最大AI長度(默認(rèn)32),MaxHold表示的是最大的V存儲區(qū)(VW),最關(guān)鍵的是HoldStart,表示的是V區(qū)起始地址(對應(yīng)40001),在之前已經(jīng)提到過S7-200作為從站的時候,它的V區(qū)地址對應(yīng)于Modbus標(biāo)準(zhǔn)地址的起始地址是可更改的,那么就在這里進(jìn)行設(shè)定,在本例中如果HoldStart寫的是VB0,那么40001對應(yīng)的地址就是VW0,40002對應(yīng)的地址是VW2,40003對應(yīng)的地址是VW4,以此類推,每一個標(biāo)準(zhǔn)的Modbus地址碼對應(yīng)的是一個Word,以字為單位,同樣如果這里設(shè)的是VB100,那么40001對應(yīng)的就是VW100,40002對應(yīng)的是VW102,以此類推。這一條初始化指令只需要調(diào)用一次就可以了,所以在上圖中用的是SM0.1在上電的時候執(zhí)行一次就可以了。

MBUS_SLAVE這個功能塊必須要用前面的條件必須是一直為1的,上圖中用SM0.0。

(5)Modbus主站指令,MBUS_CTRL

Modbus主站指令MBUS_CTRL 

Modbus主站指令當(dāng)中的第一個塊叫做MBUS_CTRL,MBUS_CTRL有哪些內(nèi)容呢?我們來看一下引腳定義的說明:首先Mode寫1的時候是選擇Modbus,寫0的時候是選擇PPI;Baud表示波特率;Parity是奇偶校驗,0是無校驗,1是奇校驗,2是偶校驗,這與從站的設(shè)置相類似;Timeout表示的是主站等待從站響應(yīng)的時間(ms);Done位是初始化完成;Error位表示的是故障代碼。其中值得一提的是Timeout這個時間,主站等待從站響應(yīng)的時間指的是什么呢?讓我們來看一下主站和從站之間通訊的過程:

 

首先,主站會發(fā)一幀讀寫請求給從站,在主站的讀寫請求發(fā)出后,從站應(yīng)當(dāng)在Timeout指定的時間內(nèi)返回應(yīng)答;如果在此時間內(nèi)從站沒有應(yīng)答,則主站發(fā)第2次讀寫請求,第2次還不行發(fā)第3次讀寫請求,如果連續(xù)3次在此時間內(nèi)從站沒有應(yīng)答,則主站認(rèn)定從站無相應(yīng),放棄該從站并報錯。

MBUS_MSG主站指令 

下面來看主站的讀寫命令(MBUS_MSG),看一下引腳說明:首先First指的是讀寫請求觸發(fā)(沿觸發(fā)),每當(dāng)First這一端來了一個沿,Modbus指令便會做出一次讀或者寫請求,RW標(biāo)示的是這一次的命令是讀還是寫,0表示讀,1表示寫;Addr表示的是從站數(shù)據(jù)地址(Modbus標(biāo)準(zhǔn)地址格式),0開頭、1開頭、3開頭和4開頭的;Count指的是通訊數(shù)據(jù)的長度,最大120個字,單位可能是bit或word;DataPtr指的是參與通訊的本方數(shù)據(jù)區(qū),如果是讀指令標(biāo)示的是讀回來的指令放在本地的哪一塊數(shù)據(jù)區(qū),如果是寫命令表示的是把本地的哪一塊數(shù)據(jù)發(fā)給對方;Done位和Error位分別是功能完成和故障代碼。

 

其中值得一提的是Count,剛才講過它的單位可能是bit或word,究竟是bit或word取決于當(dāng)時所用的Modbus標(biāo)準(zhǔn)的地址碼是用的哪一塊,如果對于1-128而言這是一個DO的輸出,對于1開頭的是一個DI的輸入點,這個時候Count的單位指的是bit,而對于3開頭和4開頭的,那么是AI和保存寄存器,它們的單位是word。需要注意的是當(dāng)Count的單位是Bit時,一定Count的數(shù)值設(shè)置為8的整數(shù)倍,否則會出錯,這是因為一個基本傳輸?shù)淖址前?個數(shù)據(jù)位的,沒有辦法只傳送一個或幾個bit。

(6)Modbus主從站輪詢

西門子plc的Modbus主從站輪詢 

當(dāng)存在Modbus多主站輪詢的時候,在程序當(dāng)中我們應(yīng)當(dāng)如何處理呢?上圖中展示了這種方法。例如第一個MBUS_MSG指令我們可以利用它的Done位(本例中為M2.1),把它作為第二條MBUS_MSG指令的First前面的激活端,也就是說第一個MBUS_MSG完成的時候才會去激活下一條MBUS_MSG指令,那么同樣,第二條指令完成時我們把它作為第三條MBUS_MSG指令的激活條件,在最后又把第三條指令的完成位還給第一條網(wǎng)絡(luò),這樣的話就構(gòu)成了一個循環(huán)的輪詢方式。

(7)Modbus FAQ

Q1:S7-200是否支持Modbus ASCII模式?

答:S7-200可以支持上述模式,但是沒有現(xiàn)成的指令庫,需要用戶自己利用自由口的方式編程。

Q2:項目編譯后為何出現(xiàn)很多錯誤?

答:使用指令庫時,若編譯后出現(xiàn)很多錯誤,一般是因為未指定庫指令數(shù)據(jù)存儲區(qū)。

Q3:Modbus從站的網(wǎng)絡(luò)地址與S7-200的CPU網(wǎng)絡(luò)地址有何關(guān)系?

答:沒有關(guān)系。支持網(wǎng)絡(luò)通信的通信協(xié)議必須有其自己的網(wǎng)絡(luò)尋址規(guī)定。Modbus從站的地址只是它在Modbus網(wǎng)絡(luò)上的地址,而通常所說的S7-200 CPU地址是CPU在西門子的PPI網(wǎng)絡(luò)上的站地址。

Q4:MBUS_MSG指令中代表數(shù)據(jù)長度的COUNT引腳單位是什么?

答:對于Modbus地址=0xxxx或1xxxx的,引腳單位為Bit;對于Modbus地址=3xxxx或4xxxx的,引腳單位為Word。

Q5:如何訪問大于9999的保持寄存器地址?

答:Modbus Master協(xié)議庫支持超過9999的保持寄存器地址。地址范圍為400001-465536。只需在調(diào)用MBUS_MSG子程序時給Addr參數(shù)賦相應(yīng)的值即可,如416768。

Q6:為何有些HMI軟件使用Modbus RTU讀取S7-200中的實數(shù)會出現(xiàn)錯誤?

答:不同的廠家關(guān)于浮點數(shù)格式定義的不同,西門子的PLC遵循的是高位低存的規(guī)律,和其他的廠家有可能會不一樣,這樣讀回來的實數(shù)或整數(shù)的高低字節(jié)會發(fā)生反轉(zhuǎn),這個時候可以通過監(jiān)控、判斷,在程序當(dāng)中把它掉過來就可以了。

Q7:MBUS_MSG顯示Error 6#?

答:Error 6#表示Modbus正在忙于其它請求。MBUS_MSG指令同時只能允許有一個讀寫操作處于運(yùn)行過程,如果在一個讀寫操作尚未完成時啟用另外一個讀寫請求,就會發(fā)生Error 6#。利用Done位可以對規(guī)避這一問題。

Q8:MBUS_MSG顯示Error 3#?

答:Error 3#表示從站無應(yīng)答。即主站的讀寫請求發(fā)出后,從站沒有在Timeout時間內(nèi)返回報文。多種原因可以引起此故障,包括:

  • 硬件故障(線路,端口等問題)。

  • 錯誤的從站地址,波特率,奇偶校驗。

  • 從站不支持此功能碼,或不能被從站識別的從站數(shù)據(jù)地址。

  • Timeout時間過短(從站響應(yīng)較慢),通過延長Timeout可以解決這個問題。

關(guān)注本公眾號,可提高PLC技術(shù),拓寬PLC知識。

Tags:Modbus通訊,STEP7,西門子PLC  
責(zé)任編輯:admin
  • 上一篇文章:
  • 下一篇文章: 沒有了
  • 請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
    1分 2分 3分 4分 5分

    還可以輸入 200 個字
    [ 查看全部 ] 網(wǎng)友評論
    最新推薦
    關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線幫助 - 文章列表
    返回頂部
    刷新頁面
    下到頁底
    晶體管查詢
    婷婷亚洲天堂影院-国产精品豆花视频www-伊人影院在线观看-日本少妇浓毛bbwbbwbbw-av网站观看-亚州欧美在线-91精品国产乱码久-任我爽精品视频在线播放-日本视频不卡-亚洲国产精品va在线观看香蕉-国产毛片乡下农村妇女-国产成人免费ā片在线观看老同学-欧美日韩免费在线-成人无码视频免费播放-色综合美女-免费毛片av
    <button id="4i884"></button>
  • <abbr id="4i884"><source id="4i884"></source></abbr>
  • <code id="4i884"><tr id="4i884"></tr></code>
  • <rt id="4i884"></rt>
    <li id="4i884"></li>
  • <rt id="4i884"><tr id="4i884"></tr></rt>
  • 久久精品国产sm调教网站演员| 污片在线免费看| 午夜久久久精品| 成年人视频在线免费| 欧美变态另类刺激| 内射国产内射夫妻免费频道| 国产精品一线二线三线| 777av视频| 3d动漫一区二区三区| 青春草国产视频| 亚洲人精品午夜射精日韩| 少妇一晚三次一区二区三区| 成人在线免费高清视频| 久久成人福利视频| 欧美韩国日本在线| 五月婷婷深爱五月| 国产又粗又长又爽又黄的视频| www.四虎成人| 亚洲精品成人在线播放| 日韩欧美中文视频| 国产一区二区四区| 玩弄japan白嫩少妇hd| 中日韩av在线播放| 4444在线观看| 不卡av免费在线| 午夜一级免费视频| 欧美亚洲日本一区二区三区| av免费播放网址| 国产5g成人5g天天爽| 久草免费福利在线| 蜜臀av免费观看| 蜜桃视频一区二区在线观看| 黄色一级一级片| 久久久久福利视频| aaa毛片在线观看| 久久视频免费在线| 欧美精品无码一区二区三区| 国产欧美综合一区| av免费网站观看| 美女黄色免费看| 日本在线播放一区二区| 国产女大学生av| 最近免费观看高清韩国日本大全| 缅甸午夜性猛交xxxx| 亚洲精品性视频| 午夜精品久久久内射近拍高清| 男人j进女人j| 婷婷激情综合五月天| 农村妇女精品一二区| 国产 日韩 亚洲 欧美| 国产探花在线观看视频| 日本a级片免费观看| a级黄色片免费| 奇米视频7777| 国产 porn| 久久久免费视频网站| 日本欧美视频在线观看| 在线观看三级网站| 午夜激情视频网| 中文字幕成人在线视频| 国产精品丝袜久久久久久消防器材| 欧美xxxx吸乳| 日韩视频一二三| 一本大道东京热无码aⅴ| 国产福利片一区二区| 亚洲精品中文字幕乱码无线| 91极品视频在线观看| 性chinese极品按摩| 亚洲欧美日本一区二区三区| 在线免费观看视频黄| 日本女优爱爱视频| 激情综合网俺也去| 日本美女高潮视频| 999精彩视频| 久久艹这里只有精品| 天天色天天干天天色| 日韩精品免费一区| av在线播放亚洲| 国产成人久久777777| 国产免费又粗又猛又爽| 911福利视频| 欧美精品久久96人妻无码| 日韩极品视频在线观看 | 粉嫩虎白女毛片人体| 欧美伦理视频在线观看| 浓精h攵女乱爱av| 天堂网成人在线| 日韩一级特黄毛片| 99视频在线免费播放| 精品99在线视频| 吴梦梦av在线| 国产美女无遮挡网站| 亚洲综合色在线观看| 欧美精品久久96人妻无码| 欧美激情视频免费看| 性chinese极品按摩| 日韩中文在线字幕| 国产xxxxx在线观看| 精品一区二区成人免费视频 | 天天摸天天碰天天添| 久久人人爽人人片| 女人喷潮完整视频| 狠狠操狠狠干视频| 国产片侵犯亲女视频播放| 日韩精品一区中文字幕| 国产精品日韩三级| 少妇一级淫免费播放| 男人日女人逼逼| www亚洲国产| 欧美午夜aaaaaa免费视频| 白白操在线视频| 亚洲美女性囗交| 欧在线一二三四区| 99色这里只有精品| 一级黄色免费在线观看| 超碰av在线免费观看| 黄色成人在线看| 国产一级做a爰片久久毛片男| 美女在线视频一区二区| 337p粉嫩大胆噜噜噜鲁| 亚洲精品久久久久久久蜜桃臀| 99国产精品久久久久久| 91热这里只有精品| 人妻有码中文字幕| 免费看国产一级片| 日本欧美黄色片| 97久久国产亚洲精品超碰热 | 国产极品尤物在线| 日韩一级性生活片| 国产乱子伦精品无码专区| 波多野结衣在线免费观看| 国产91色在线观看| www.精品在线| 日韩欧美亚洲另类| 天天操精品视频| 一级黄色录像免费看| 色婷婷综合在线观看| 永久av免费在线观看| 91制片厂免费观看| 成人国产在线看| www插插插无码视频网站| 日韩精品视频在线观看视频| 男人c女人视频| 久久国产精品网| 1024精品视频| 日韩爱爱小视频| 国产又爽又黄ai换脸| 男人日女人的bb| 国产精品欧美激情在线观看| 国产福利视频在线播放| 亚洲色图 在线视频| 日本网站在线看| 免费av手机在线观看| 日日噜噜夜夜狠狠| 国产在线拍揄自揄拍无码| 免费国产a级片| 天天干天天操天天做| 真人做人试看60分钟免费| 一女被多男玩喷潮视频| 三级视频中文字幕| 国产1区2区3区中文字幕| 国产综合免费视频| 亚洲在线观看网站| 国产美女无遮挡网站| 黄频视频在线观看| 日韩欧美精品在线观看视频| 亚洲国产欧美91| 欧美少妇性生活视频| 国产一区一区三区| 丰满少妇被猛烈进入高清播放| 在线观看av免费观看| 国产精品国产亚洲精品看不卡| 久久久久久久久久一区| a在线视频观看| 国产精品免费看久久久无码| 亚洲中文字幕久久精品无码喷水 | 国产a级片免费观看| 日韩在线视频在线| 手机av在线免费| 国产第一页视频| xxxx一级片| 香蕉视频xxx| 欧美 日韩 国产在线观看| 亚洲 欧美 另类人妖| 波多野结衣家庭教师在线| 久久久99精品视频| 国产无遮挡猛进猛出免费软件| 超碰97人人射妻| 久草热视频在线观看| av片在线免费| 手机在线免费毛片| 国内外成人免费在线视频| 妓院一钑片免看黄大片| 欧美成人精品欧美一级乱| 欧美亚洲日本一区二区三区| 日韩不卡视频一区二区| 伊人国产精品视频| 亚洲精品中文字幕乱码无线| 日韩一区二区三区久久| 久久人人爽av|