技術頻道

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

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

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

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

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

關鍵詞:Modbus;PLC;遠程溫度采樣

1、前言

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

Modbus的巨大成功,可以歸結到以下3個方面:

a.標準、開放:用戶可以免費、放心地使用Modbus協(xié)議,不用交納許可證費,也不會侵犯知識產權。目前,支持Modbus的廠家超過400家,支持Modbus的產品超過600種,而且在國內也有很多的用戶支持和使用Modbus的產品。

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

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

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

2、Modbus在遠程溫度采樣控制系統(tǒng)中的總體設計

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

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

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

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

Modbus地址與S7-200地址對應關系如表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(遠程傳輸單元)兩種報文傳輸模式。Modbus網絡中所有的站必須采用相同的傳輸模式和串口參數(shù)。本系統(tǒng)采用RTU模式,其報文格式如表2所示。

表2RTU模式的報文格式

地址

功能碼

數(shù)據1

數(shù)據n

CRC高字節(jié)

CRC低字節(jié)

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

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

(2)Modbus通信指令

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

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

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:“奇偶校驗”參數(shù)。“奇偶校驗”參數(shù)被設為與Modbus從站奇偶校驗相匹配。所有設置使用一個起始位和一個停止位??山邮艿臄?shù)值為:0-無奇偶校驗,1-奇校驗,2-偶校驗。

2)MBUS_MSG指令如圖3所示。

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

First:“首次”參數(shù)。“首次”參數(shù)應該在有新情求要發(fā)送時才打開以進行一次掃描。“首次”輸入應當通過一個邊沿檢測元素(例如上升沿)打開,這將導致請求被傳送一次。

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

RW:“讀寫”參數(shù)。“讀寫”參數(shù)指定是否要讀取或寫入該消息。“讀寫”參數(shù)允許使用下列兩個值:0-讀,1-寫。

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

Count:“計數(shù)”參數(shù)。“計數(shù)”參數(shù)指定在該請求中讀取或寫入的數(shù)據元素的數(shù)目。“計數(shù)”數(shù)值是位數(shù)(對于位數(shù)據類型)和字數(shù)(對于字數(shù)據類型)。

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

 

圖4MBUS_INIT指令      圖5MBUS_SLAVE指令

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

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

圖6PLC硬件接線圖

(1)溫度表

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

圖7溫度表

(2)PT100

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

圖8PT100外表

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

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

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

圖9調用的庫要分配系統(tǒng)內存地址區(qū)

編程時使用SM0.1調用子程序MBUS_INIT進行初始化,使用SM0.0調用MBUS_SLAVE,并指導相應參數(shù)。關于參數(shù)的詳細說明,可在子程序的局部變量表中找到。

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

圖10調用ModbusPTU通信指令庫

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

a.模式選擇:啟動/停止Modbus,1=啟動;0=停止

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

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

d.奇偶校驗:0=無校驗;1=奇校驗;2=偶校驗

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

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

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

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

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

j.初始化完成標志:成功初始化后置1

k.初始化錯誤代碼

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

m.錯誤代碼:0=無錯誤

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

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

圖11主站主程序

5、結束語

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

參考文獻

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

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

[3]李方園.零起點學習西門子S7-200PLC[M].機械工業(yè)出版社,2012

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

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

標簽:

點贊

分享到:

上一篇:基于神經網絡的抽油機控制系...

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

中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.surachana.com)獨家所有。如需轉載請與0755-82949061聯(lián)系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

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

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

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

網站客服服務咨詢采購咨詢媒體合作

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