新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > ModBUS協(xié)議通訊的應(yīng)用

ModBUS協(xié)議通訊的應(yīng)用

作者: 時間:2012-06-09 來源:網(wǎng)絡(luò) 收藏

引言

在燃氣蓄熱式窯爐控制系統(tǒng)中,不僅需要將溫度、壓力、流量等模擬參數(shù)進行采集、計算控制輸出至執(zhí)行器,同時還應(yīng)將火焰狀態(tài)、電磁閥狀態(tài)、換相閥狀態(tài)進行采集,隨時控制點火器點火,并進行周期性換相,換相周期會根據(jù)溫度的不同而變化。面對眾多參量的采集控制,需要建立時變系統(tǒng)和非線性系統(tǒng)的狀態(tài)空間表達式進行復(fù)雜的多相關(guān)變量的運算,得到穩(wěn)定輸出以控制相關(guān)變量。事實上,取得大量數(shù)據(jù),建立相應(yīng)數(shù)據(jù)庫,進行數(shù)據(jù)分析,單靠低端的數(shù)字控制設(shè)備難以完成。通常的做法是信號的數(shù)據(jù)采集、濾波、簡單PID運算、輸出量、及輸出量的互鎖由低端控制器完成。為了完成上述功能,我們采用ABB公司生產(chǎn)的PLC,配置如下:

名稱 數(shù)量 描述

07KT51 1塊 50CPU,8DI,6DO

XM06B5 2塊 Extension I/O,4AI,2AO

XK08F1 1塊 Extension I/O,4DI,6DO

PLC軟件采用AC31 SOFTWARE,上位機程序用VB編制,實現(xiàn)與上位工控機通訊的過程中需要使用MODBUS協(xié)議。本文重點介紹其通訊實現(xiàn)的過程。

一、 MODBUS簡介

MODBUS協(xié)議是應(yīng)用于電子控制器的一種通訊語言。利用這個協(xié)議,控制器相互之間(例如485、232C等),控制器通過網(wǎng)絡(luò)(例如以太網(wǎng))和其他設(shè)備之間進行通訊。它定義了一種控制器能認識使用的消息結(jié)構(gòu),而不管它們是通過何種網(wǎng)絡(luò)實現(xiàn);描述的是控制器請求訪問其它設(shè)備的過程,如何回應(yīng)來自其它設(shè)備的請求,以及怎樣偵錯并記錄;制定了消息域格局和內(nèi)容的公共格式。

MODBUS通訊實現(xiàn)有兩種傳輸模式(ASCII或RTU),ABB公司的50系列PLC產(chǎn)品采用的是RTU(遠程終端單元)模式,在消息中的每個8Bit字節(jié)包含兩個4Bit的十六進制字符。這種方式的主要優(yōu)點是:在同樣的波特率下,可比ASCII方式傳送更多的數(shù)據(jù)。

1、代碼系統(tǒng):

· 8位二進制,十六進制數(shù)0...9,A...F

· 消息中的每個8位域都是一個兩個十六進制字符組成每個字節(jié)的位

· 1個起始位

· 8個數(shù)據(jù)位,最小的有效位先發(fā)送

· 1個奇偶校驗位,無校驗則無

· 1個停止位(有校驗時),2個Bit(無校驗時)

· 錯誤檢測域 CRC(循環(huán)冗長檢測)

2、基于RS485的MODBUS通訊格式為:


它定義了在這些網(wǎng)絡(luò)上連續(xù)傳輸?shù)南⒍蔚拿恳晃?,以及決定怎樣將信息打包成消息域和如何解碼。

3、其查詢回應(yīng)周見下圖:


(1)查詢 查詢消息中的功能代碼告之被選中的從設(shè)備要執(zhí)行何種功能。數(shù)據(jù)段包含了從設(shè)備要執(zhí)行功能的任何附加信息。例如功能代碼03是要求從設(shè)備讀保持寄存器并返回它們的內(nèi)容。數(shù)據(jù)段必須包含要告之從設(shè)備的信息:從何寄存器開始讀及要讀的寄存器數(shù)量。錯誤檢測域為從設(shè)備提供了一種驗證消息內(nèi)容是否正確的方法。


上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉