技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動(dòng)網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 基于Modbus的遠(yuǎn)程溫度采樣控制系統(tǒng)

基于Modbus的遠(yuǎn)程溫度采樣控制系統(tǒng)

時(shí)間:2015-08-04 16:41:00來源:王子娜 李方園

導(dǎo)語:?在現(xiàn)場(chǎng)總線應(yīng)用中,最常用的就是Modbus總線。本文主要介紹一種基于Modbus的遠(yuǎn)程溫度采樣控制,給出了PLC硬件接線原理,闡述了軟件設(shè)置與編程,在實(shí)際應(yīng)用中獲得了很好的效果。

摘要:在現(xiàn)場(chǎng)總線應(yīng)用中,最常用的就是Modbus總線。本文主要介紹一種基于Modbus的遠(yuǎn)程溫度采樣控制,給出了PLC硬件接線原理,闡述了軟件設(shè)置與編程,在實(shí)際應(yīng)用中獲得了很好的效果。

關(guān)鍵詞:Modbus;PLC;遠(yuǎn)程溫度采樣

1、前言

Modbus是由Modicon公司(現(xiàn)為施耐德電氣的一個(gè)品牌)在1978年發(fā)明的,這是一個(gè)劃時(shí)代、里程碑式的網(wǎng)絡(luò)協(xié)議,是全球第一個(gè)真正用于工業(yè)現(xiàn)場(chǎng)的總線協(xié)議。

Modbus的巨大成功,可以歸結(jié)到以下3個(gè)方面:

a.標(biāo)準(zhǔn)、開放:用戶可以免費(fèi)、放心地使用Modbus協(xié)議,不用交納許可證費(fèi),也不會(huì)侵犯知識(shí)產(chǎn)權(quán)。目前,支持Modbus的廠家超過400家,支持Modbus的產(chǎn)品超過600種,而且在國內(nèi)也有很多的用戶支持和使用Modbus的產(chǎn)品。

b.Modbus是面向消息的協(xié)議??梢灾С侄喾N電氣接口,如:RS232、RS422、RS485等,還可以在多種介質(zhì)上傳送,如:雙絞線、光纜、無線射頻等。要說明的是:和很多的現(xiàn)場(chǎng)總線不同,它不用專用的芯片與硬件,完全采用市售的標(biāo)準(zhǔn)部件。這就保證了采用Modbus的產(chǎn)品造價(jià)最為低廉。

c.Modbus協(xié)議的幀格式是最簡(jiǎn)單、最緊湊的協(xié)議??梢哉f:簡(jiǎn)單高效,通俗易懂。所以用戶使用容易,廠商開發(fā)簡(jiǎn)單。用戶和廠商可以通過ww.Modbus-IDA.org網(wǎng)站和其他網(wǎng)站,下載各種語言的樣例程序、控件、以及各種Modbus工具軟件,更好地使用Modbus。

本文將主要闡述一種基于Modbus的遠(yuǎn)程溫度采樣控制系統(tǒng),使用2臺(tái)西門子S7-200PLC,將連接在從站PLC上的PT100溫度,顯示在具有Modbus總線接口的溫度表上。

2、Modbus在遠(yuǎn)程溫度采樣控制系統(tǒng)中的總體設(shè)計(jì)

系統(tǒng)總框圖如圖2.1所示。S7-200PLC從站獲取溫度信號(hào)(即PT100),將信息通過Modbus反饋到S7-200PLC主站上,再通過Modbus總線反饋到溫度表上,將溫度的上限和下限可以設(shè)置,并在信號(hào)燈進(jìn)行輸出,這樣就能夠更容易得觀察到溫度變化現(xiàn)象,時(shí)時(shí)記錄數(shù)據(jù),更具人性化。

圖1系統(tǒng)總體框圖

(1)Modbus報(bào)文傳輸協(xié)議

Modbus地址通常是包含數(shù)據(jù)類型和偏移量的5個(gè)或6個(gè)字符值。第一個(gè)或前面兩個(gè)字符決定數(shù)據(jù)類型,最后的4個(gè)字符是符合數(shù)據(jù)類型的一個(gè)適當(dāng)?shù)闹?。Modbus主站指令可以將地址映射至相應(yīng)的功能,以發(fā)送到從站。

Modbus地址與S7-200地址對(duì)應(yīng)關(guān)系如表1所示。

表1映射Modbus地址到S7-200

000001

Q0.0

000002

Q0.1

000003

Q0.2

000127

Q15.6

000128

Q15.7

010001

I0.0

010002

I0.1

010003

I0.2

010127

I15.6

010128

I15.7

030001

AIW0

030002

AIW2

030003

AIW4

030032

AIW62

040001

HoldStart

040002

HoldStart+2

040003

HoldStart+4

04xxxx

HoldStart+2x(xxxx-1)

Modbus通信協(xié)議有ASCII和RTU(遠(yuǎn)程傳輸單元)兩種報(bào)文傳輸模式。Modbus網(wǎng)絡(luò)中所有的站必須采用相同的傳輸模式和串口參數(shù)。本系統(tǒng)采用RTU模式,其報(bào)文格式如表2所示。

表2RTU模式的報(bào)文格式

地址

功能碼

數(shù)據(jù)1

數(shù)據(jù)n

CRC高字節(jié)

CRC低字節(jié)

地址:Modbus地址,1個(gè)字節(jié)。

功能碼:Modbus功能代碼,1個(gè)字節(jié);Modbus協(xié)議支持的功能碼共16條(1-16)。

(2)Modbus通信指令

西門子專門為ModbusRTU通信開發(fā)了指令庫,及大地簡(jiǎn)化了ModbusRTU通信的開發(fā),以便于快速實(shí)現(xiàn)相關(guān)應(yīng)用。通過ModbusRTU從站指令庫,使得S7-200可作為ModbusRTU中的從站設(shè)備集成到Modbus網(wǎng)絡(luò)中,以實(shí)現(xiàn)與Modbus主站設(shè)備的通信。

西門子Modbus主站協(xié)議協(xié)議庫包括兩條主站協(xié)議指令:MBUS_CTRL指令和MBUS_MSG指令。MBUS_CTRL指令用于初始化主站通信,MBUS_MSG指令(或用于端口1的MBUS_MSG_P1)用于啟動(dòng)對(duì)Modbus從站的請(qǐng)求并處理應(yīng)答。

1)MBUS_CTRL指令如圖2所示。

   

圖2MBUS_CTRL指令        圖3MBUS_MSG指令

主要參數(shù)含義如下:

Mode:“模式”參數(shù),輸入數(shù)值來選擇通信協(xié)議。1將CPU端口分配給Modbus協(xié)議并啟用該協(xié)議;0將CPU端口分配給PPI系統(tǒng)協(xié)議,并禁用Modbus協(xié)議。

Baud:“波特率”參數(shù)。MBUS_CTRL指令支持的波特率為19200、38400、57600或115200bit/s。

Parity:“奇偶校驗(yàn)”參數(shù)。“奇偶校驗(yàn)”參數(shù)被設(shè)為與Modbus從站奇偶校驗(yàn)相匹配。所有設(shè)置使用一個(gè)起始位和一個(gè)停止位??山邮艿臄?shù)值為:0-無奇偶校驗(yàn),1-奇校驗(yàn),2-偶校驗(yàn)。

2)MBUS_MSG指令如圖3所示。

主要參數(shù)含義如下:

First:“首次”參數(shù)。“首次”參數(shù)應(yīng)該在有新情求要發(fā)送時(shí)才打開以進(jìn)行一次掃描。“首次”輸入應(yīng)當(dāng)通過一個(gè)邊沿檢測(cè)元素(例如上升沿)打開,這將導(dǎo)致請(qǐng)求被傳送一次。

Slave:“從站”參數(shù)。“從站”參數(shù)是Modbus從站的地址,允許的范圍是0-247.地址0是廣播地址,只能用于寫請(qǐng)求,不存在對(duì)地址0的廣播請(qǐng)求的應(yīng)答。并非所有的從站會(huì)支持廣播地址,S7-200Modbus從站協(xié)議庫不支持廣播地址。

RW:“讀寫”參數(shù)。“讀寫”參數(shù)指定是否要讀取或?qū)懭朐撓ⅰ?ldquo;讀寫”參數(shù)允許使用下列兩個(gè)值:0-讀,1-寫。

Addr:“地址”參數(shù)。“地址”參數(shù)是起始的Modbus地址。

Count:“計(jì)數(shù)”參數(shù)。“計(jì)數(shù)”參數(shù)指定在該請(qǐng)求中讀取或?qū)懭氲臄?shù)據(jù)元素的數(shù)目。“計(jì)數(shù)”數(shù)值是位數(shù)(對(duì)于位數(shù)據(jù)類型)和字?jǐn)?shù)(對(duì)于字?jǐn)?shù)據(jù)類型)。

西門子Modbus從站協(xié)議庫包括兩條從站指令:MBUS-INIT指令和MBUS-SLAVE指令(圖4和圖5)。

 

圖4MBUS_INIT指令      圖5MBUS_SLAVE指令

3、系統(tǒng)硬件電路的設(shè)計(jì)

PLC硬件接線圖如圖6所示。PLC部分略去不講,主要介紹外部元器件。

圖6PLC硬件接線圖

(1)溫度表

由于是總線控制的溫度表,一般都選用支持Modbus的RS485型數(shù)顯儀(如圖7所示)。

圖7溫度表

(2)PT100

西門子S7-200支持兩種類型的溫度傳感器,即熱電阻和熱電偶,其溫度模塊也有不同,必須合理配置。圖8為常用的PT100熱電阻。

圖8PT100外表

4、系統(tǒng)軟件程序的設(shè)計(jì)

利用指令庫編程前首先應(yīng)為Modbus從站分配存儲(chǔ)區(qū),否則Micro/Win軟件編譯時(shí)會(huì)報(bào)錯(cuò)。通過Micro/Win軟件菜單命令“文件”→“庫存儲(chǔ)區(qū)”,打開“庫存儲(chǔ)區(qū)分配”對(duì)話框。在“庫存儲(chǔ)區(qū)分配”對(duì)話框中輸入庫存儲(chǔ)區(qū)的起始地址,注意避免該地址和程序中已經(jīng)采用或準(zhǔn)備采用的其他地址重合。單擊“建議地址”按鈕,系統(tǒng)將自動(dòng)計(jì)算存儲(chǔ)區(qū)的截止地址。

而對(duì)于從站來說,S7-200作Modbus通信要用到自由口通信下的ModbusSlave庫,對(duì)于此庫的應(yīng)用要注意的是:ModbusSlave庫僅支持ModbusPTU通信模式,不支持ASCII通信模式;目前的ModbusSlave庫僅支持通信口Port0。使用ModbusSlave庫時(shí)也要注意對(duì)庫分配內(nèi)存區(qū)空間,否則編譯后會(huì)出現(xiàn)很多的錯(cuò)誤。如圖9所示。

圖9調(diào)用的庫要分配系統(tǒng)內(nèi)存地址區(qū)

編程時(shí)使用SM0.1調(diào)用子程序MBUS_INIT進(jìn)行初始化,使用SM0.0調(diào)用MBUS_SLAVE,并指導(dǎo)相應(yīng)參數(shù)。關(guān)于參數(shù)的詳細(xì)說明,可在子程序的局部變量表中找到。

初始化Modbus從站如圖10所示。

圖10調(diào)用ModbusPTU通信指令庫

圖中參數(shù)意義如下:

a.模式選擇:?jiǎn)?dòng)/停止Modbus,1=啟動(dòng);0=停止

b.從站地址:Modbus從站地址,取值1-247

c.波特率:可選1200,2400,4800,9600,19200,38400,57600,115200

d.奇偶校驗(yàn):0=無校驗(yàn);1=奇校驗(yàn);2=偶校驗(yàn)

e.延時(shí):附加字符間延時(shí),缺省值為0

f.最大I/O位:參與通信的最大I/O點(diǎn)數(shù),S7-200的I/O映像區(qū)為128/128,缺省值為128

g.最大AI字?jǐn)?shù):參與通信的最大AI通道數(shù),可為16或32

h.最大保持寄存器區(qū):參與通信的最大V存儲(chǔ)區(qū)字(VW)

i.保持寄存器區(qū)起始地址:以&VBx指定(間接尋址方式)

j.初始化完成標(biāo)志:成功初始化后置1

k.初始化錯(cuò)誤代碼

l.Modbus執(zhí)行:通信中時(shí)置1,無Modbus通信活動(dòng)時(shí)為0

m.錯(cuò)誤代碼:0=無錯(cuò)誤

從程序截圖中可見,S7-200作為Modbus從站,從站地址為10,接收存儲(chǔ)區(qū)為VB0開始。

調(diào)用Modbus主站指令編程前也應(yīng)分配庫存儲(chǔ)區(qū),與從站編程類似。主站主程序如圖11所示。

圖11主站主程序

5、結(jié)束語

Modbus是公開通信協(xié)議,其具有兩種串行傳輸模式,ASCII和RTU。它們定義了數(shù)據(jù)如何打包、解碼的不同方式。通信雙方必須同時(shí)支持上述模式中的一種,通常支持Modbus通信的設(shè)備大都支持RTU格式。本文主要介紹了其中的一種RTU協(xié)議,應(yīng)用在遠(yuǎn)程溫度采樣控制中。該系統(tǒng)可以在需要實(shí)時(shí)了解和掌握惡劣現(xiàn)場(chǎng)工礦的溫度采樣控制中進(jìn)行實(shí)施。

參考文獻(xiàn)

[l]劉華波.西門子S7-200PLC編程應(yīng)用案例精選[M].機(jī)械工業(yè)出版社,2010

[2]李方園.零起點(diǎn)學(xué)西門子變頻器應(yīng)用[M].機(jī)械工業(yè)出版社,2011

[3]李方園.零起點(diǎn)學(xué)習(xí)西門子S7-200PLC[M].機(jī)械工業(yè)出版社,2012

[4]李方園.西門子S7-200PLC從入門到實(shí)踐[M].電子工業(yè)出版社,2010

[5]廖常初.S7-200PLC編程及應(yīng)用[M].電子工業(yè)出版社,2008

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:基于神經(jīng)網(wǎng)絡(luò)的抽油機(jī)控制系...

下一篇:電力監(jiān)控系統(tǒng)在浙江商學(xué)院的應(yīng)用

中國傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動(dòng)網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來源“中國傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡(jiǎn)介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號(hào) | 營業(yè)執(zhí)照證書 | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)