999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于單片機操作平臺的數據采集網關的設計

2019-01-10 01:48:14丁夢遙魏霞
現代電子技術 2019年1期

丁夢遙 魏霞

關鍵詞: 協議轉換; 網關; Modbus RTU; Modbus TCP; 消息機制; 數據采集

中圖分類號: TN915.04?34; TP274+.2 ? ? ? ? ? ? ? ? ? 文獻標識碼: A ? ? ? ? ? ? ? 文章編號: 1004?373X(2019)01?0028?05

Abstract: With the control strengthen of large power plants, and increase of controlled data category and data protocol category, the benefit maximization is pursued, which leads to a bottleneck for many?to?one protocol conversion. Therefore, the available protocol conversion mode is improved, and the traditional "one?to?one" transmission mode is improved as the "many?to?one" mode to avoid "message blocking". The single chip microcomputer (SCM) operation platform is introduced. A multi?protocol data acquisition gateway is implemented on software and hardware. The message mechanism is used in software to combine the functions of channel selection, protocol conversion, gateway parameter setting and detection into a complete system, which is convenient for uniform scheduling, and can improve the efficiency and real?time performance of protocol conversion effectively. The 51 serial SCM is used to complete the protocol conversion gateway, which can reduce the design cost.

Keywords: protocol conversion; gateway; Modbus RTU; Modbus TCP; message mechanism; data acquisition

0 ?引 ?言

隨著人們對環保的重視程度越來越高,特別是像熱電廠、鋁廠、鋼鐵廠這樣的煙氣排放量大的廠站,環保局更是嚴格要求。本文主要針對熱電廠的能耗以及煙氣排放量等非實時數據進行研究。在電力監控系統中,電廠的煙氣排放以及電能量相關數據被劃分到生產控制大區內的安全二區即非實時區[1]。

現代大型的熱電廠中主流采用的是DCS系統,而DCS系統中的數據信息協議格式和種類繁多,這對于數據的集中調度和處理產生一定影響,而且容易造成“信息孤島”,難以實現設備間或者系統與設備間的信息交互,并且在一定程度上阻礙了運行管理體系的進一步發展[2]。傳統方法花費大量的資金投入在現場的智能本地設備上,并且為每種協議格式的數據配一個專門的協議轉換網關,最后匯集到數據庫中。現場的智能設備和系統大部分支持的通信協議種類繁多,且系統具有分布性、異構性等特點,更加不利于數據的采集和集成[3]。雖然已經有公司研發出多協議轉化網關,但由于價格昂貴且針對的協議種類領域較單一,無法滿足熱電廠實際需求。

考慮到數據的非實時性以及實際需求,本文設計采用51系列單片機,可在滿足基本要求的前提下大大降低成本,增加備件數量。

首先將各個底層智能設備采集來的數據匯集到數據采集網關,由數據采集網關將各種串口傳輸的數據格式Modbus/RTU轉化成統一的網口傳輸格式Modbus/TCP,再通過以太網發送給上位機。

1 ?數據采集網關

多協議數據采集網關主要通過在軟件上實現多種協議到一種協議的轉換,硬件設計上較簡單,便于現場的安裝和使用[4],同時軟件層面引入單片機操作平臺,便于后期維護和升級。

本文設計針對的是熱電廠中DCS系統中底層設備的水、電、氣數據進行匯總和傳輸,常用的協議有Modbus,M?bus以及DEL?645協議,本文設計就是針對上述三種協議進行轉換,統一成Modbus /TCP,再借助以太網上傳。

現在工業上使用最廣泛的通信協議之一就是由Modicon于1979年發表的Modbus協議,該協議主要有Modbus /RTU和Modbus/TCP兩種[5]。其中Modbus/RTU主要應用于串口傳輸,由于協議對功能碼進行了嚴格定義,雖然傳播速度不及RTU但是其數據安全性較高,而Modbus/TCP協議則是將Modbus /RTU和以太網相結合,以滿足一些對數據傳輸速度有較高要求的用戶需求[6]。除此以外,Modbus協議還是完全對外開放的一種通信協議[7]。

本文設計了一款基于經典的51單片機的數據采集網關,通過數據采集網關可以將底層采集上來的串口類型信息轉換成統一的Modbus/TCP格式的報文信息,便于在網口上快速安全上傳和管理[8]。而熱電廠中常用的串口數據類型主要有Modbus協議、M?Bus協議以及DEL?645協議等。由于篇幅有限,本文只對Modbus/RTU與 Modbus/TCP協議轉化進行詳細闡述。

整體的實現方法如圖1所示,其中接口機可以使用PC機代替。

在數據采集網關工作的過程中,數據采集網關主要的工作就是掃描檢測串口和以太網端口,當有數據需要上傳或者下達時,網關只需根據消息類型讀取相應的數據,再通過消息機制調用相應的子函數進行協議轉換。

當主機即上位機發送讀取數據命令請求時,網關首先對請求消息進行分析,判斷是否為廣播消息。如果是,則讀取所有端口消息;否則就會針對性地讀取相應串口的狀態,并且讀取串口數據,先存儲到單片機的外部存儲設備中,再根據不同的數據類型執行相應的協議轉換子程序,轉換成統一的Modbus/TCP協議格式,借助TCP/IP協議棧通過以太網發送給上位機。

整個協議完成主要通過軟件實現,那么就得考慮如何合理地利用有限的資源更好地實現協議轉換功能,所以將整個協議轉化的功能分解到一個小單片機的前后臺架構上,這樣既可以簡化程序開發的過程,便于后期維護,又可以提高協議的轉換效率。

2 ?數據采集網關的軟件平臺

本文設計采用的軟件平臺是一種簡易的前后臺架構,主要借鑒操作系統、手機的一些概念,在一個標準化的硬件基礎上擴展一個標準化的軟件平臺,將一些常用功能集成到一起,形成一個完整的系統。基于該平臺,可自主地增減功能以滿足自己的實際需求。而該軟件平臺主要由三大結構——中斷、節拍和大循環構成,貫穿整個框架的核心是消息機制。

2.1 ?三大結構

2.1.1 ?大循環

嵌入式程序設計時,常常采用中斷的方式實現循環,這樣做可以快速對外部或內部中斷信號進行響應,但是容易受到錯誤的中斷信號干擾。為了克服這一缺點,并且針對協議轉換的特點,本設計采用了一種更為簡單、主動、安全的循環方法——掃描。在大循環內通過不斷地主動掃描,判斷switch語句中各個case狀態的變化,每種case對應一種消息類型,再根據不同消息類型調用不同的消息執行程序,從而降低了CPU的等待時間,提高了程序整體的效率。但由于掃描周期的局限性,這種主動的掃描方式只適合低速設備,并且當發生突發性事件時,只能等到下一個掃描周期到達才可以被執行。

2.1.2 ?節拍和中斷

為了實現對協議轉換時間的精確控制,本文設計采用由芯片內部時鐘產生的節拍,有效地避免了由于轉換時間的誤差導致的錯誤。此外,可以通過對系統節拍進行速度分級提高系統的實時性,使系統更加穩定可靠地運行。

中斷的使用則是用于分擔CPU負擔,幫助完成一些任務,減少CPU的占用率,同時也提高了整體程序的效率。

2.2 ?消息機制

消息機制作為協議轉換的軟件實現框架,主要是對已知的任務和事件進行預先定義,并且設置特定的消息處理函數,當檢測到事件或者任務被觸發,再調用相應的消息處理函數進行處理,可以簡單地理解為“入消息”和“出消息”。

而將消息機制運行起來,需要先對其參數——消息隊列進行設置。對消息的定義分為兩個部分,即消息類型(MsgType)和消息值(Val)。

消息隊列常被定義為16 bit無符號整形數據,將其高8位定義為消息類型,低8位定義為消息值。

消息類型根據實際需要在頭文件中先定義并枚舉出,方便對各種消息類型進行遍歷,而消息值則作為相應的消息處理函數作參數。

首先完成協議轉換相關程序的初始化,再執行大循環內的程序,大循環內通過主動掃描方式判斷各消息的狀態,當有消息被觸發時,再調用相應功能函數實現消息調度。

取消息,顧名思義即通過取消息函數將消息隊列中的16 bit消息取出,再執行該消息相應的程序。

同樣,在執行取消息程序前,首先判斷消息隊列是否為空,若為空則返回0x0000;若不為空,則先保存中斷使能狀態,并且關中斷,取出消息后,恢復中斷使能狀態后返回。

2.2.2 ?消息機制的應用

上述即為消息機制的執行過程。在程序初始化之后,消息隊列默認為空,雖然循環體內一直會取消息并判斷消息類型,但始終執行MSG_NULL程序段。

消息只能在大循環中被讀取和執行,在中斷和節拍中被接收,存入消息隊列中。

消息機制可以有效解決由于運行時間較長而造成的延遲問題,避免消息堵塞。消息機制可以理解為一個連接器,先將運行時間較長的事件分解為多個小任務,當完成一個小任務后,再發起執行下一個小任務的消息。

同理,消息機制還可以用于解決函數嵌套的深度問題,當函數調用嵌套過深,會導致內存消耗過大而編譯失敗,特別是內存不是很寬裕的芯片,通過引入消息機制,可以把一個很深的函數調用問題分解為多個較短的函數調用問題,且函數入口都在大循環main里,有效地解決了內存不足的問題。

3 ?協議轉換

3.1 ?協議轉換原理

在協議轉化前,需要對下位機發送來的串口數據的正確性進行分析。如果符合串口協議的規約再進行協議轉化,否則返回錯誤信息。

協議轉化的實現過程,簡單地說就是通過對底層智能設備上傳過來的串口協議報文進行分析,根據不同串口協議中的報文幀的差異性,將報文中相應的數據幀提取出來,再加上目的協議的報文頭、校驗位以及結束符等具體位數,通過以太網發送出去。

本文以Modbus/RTU與Modbus/TCP轉換為例具體說明,首先分析兩個協議報文結構的差異,如圖2所示。

通過對報文幀的具體分析可知,實現Modbus/RTU到Modbus/TCP的轉換如圖3所示。

由于Modbus ASCII的協議格式和RTU差距不是很大,所以此處就不詳細贅述。

Modbus采用主/從工作模式,其中主機只能有一個,而從機可以有多個,并且只有主機可以發送請求,從機根據主機的要求給出相應的響應[9]。整個數據采集網關的工作過程如圖4所示。

3.2 ?數據采集網關軟件部分介紹

數據采集網關的軟件框架,主要函數有以下幾個:

boot.c:主程序入口,大循環通過內部的while()函數實現;

common.h:包含了用到的全局頭文件;

rtu2tcp.c:實現Modbus/RTU到TCP的轉換;

tcp2rtu.c:實現Modbus/TCP到RTU的轉換;

uIP.c和uIP.h:將Modbus/TCP網口數據通過uIP協議棧發送到網絡上。

4 ?uIP協議棧

數據采集網關將底層下位機的數據類型Modbus RTU轉化成Modbus TCP后,再借助以太網向上傳送,此處可借助TCP/IP協議棧實現。而傳統的TCP/IP協議棧實現起來過程較為復雜且實時性較差,考慮到系統硬件資源的限制,所以本文引入輕量級的TCP/IP協議棧——uIP協議棧,以實現以太網傳輸功能[10]。

uIP協議棧是一種免費、可實現的極小的TCP/IP協議棧,可以使用于由8位或16位微處理器構建的嵌入式系統[11]。

5 ?結 ?語

目前,市場上的協議轉換網關主要針對某些固定的應用需求,協議種類比較單一,且只能實現協議間一對一的轉換。本文設計是針對新疆某熱電廠運行管理的現狀提出的,網關具有支持多種串口設備組網,以及能建立串口與網口間橋梁的特點。

參考文獻

[1] 唐俊,蔣健,謝申喜.基于樹莓派的能耗數據采集網關設計[J].測控技術,2017(3):98?100.

TANG Jun, JIANG Jian, XIE Shenxi. Design of energy consumption data acquisition gateway based on Raspberry Pi [J]. Measurement & control technology, 2017(3): 98?100.

[2] 毛蘇杭,宋蘊璞,劉林.基于工業網關的鋼鐵企業實時數據采集技術[J].物聯網技術,2015,5(12):10?12.

MAO Suhang, SONG Yunpu, LIU Lin. Real?time data acquisition technology of steel enterprises based on industrial gateways [J]. Internet of Things technologies, 2015, 5(12): 10?12.

[3] 霍昕,關麗嘉.如何有效提升信令采集網關的數據完整性[J].中國新通信,2015(13):64.

HUO Xin, GUAN Lijia. How to effectively improve the data integrity of the signal acquisition gateway [J]. China new communications, 2015(13): 64.

[4] 李琦,張康,王月明.基于CoAP協議的數據采集網關設計[J].電子技術應用,2015(6):154?156.

LI Qi, ZHANG Kang, WANG Yueming. Design of data acquisition gateway based on CoAP protocol [J]. Electronic technology application, 2015(6): 154?156.

[5] XU Sen, REN Jia, SU Jie. Design of the Modbus communication through serial port in QNX operation system [C]// Procee?dings of 2008 Computing, Communication, Control, and Ma?nagement Conference. Guangzhou, China: IEEE, 2008: 434?438.

[6] KUANG Jian, WANG Guibao, BIAN Jiali. A Modbus protocol stack compatible with RTU/TCP frames and embedded application [M]// ZHU Min. Business, economic, financial sciences. Berlin: Springer?Verlag, 2012: 765?770.

[7] 陳巖.安全隔離網關對數據庫數據的采集在宣鋼的應用[J].通訊世界,2015(11):266.

CHEN Yan. The application of the security isolation gateway to the collection of database data in Xuanhua Iron and Steel Co., Ltd. [J]. Communications world, 2015(11): 266.

[8] 劉清茂,萬春紅,楊彩玲,等.基于ZigBee的水泥生產過程電量無線采集[J].電氣技術,2015(3):85?86.

LIU Qingmao, WAN Chunhong, YANG Cailing, et al. Wireless collection of electricity in cement production process based on ZigBee [J]. Electric technology, 2015(3): 85?86.

[9] 郭藍天.數據采集網關的研制及其在中型熱電廠運行管理系統中的應用[D].青島:青島科技大學,2012.

GUO Lantian. Development of data acquisition gateway and its application in medium?sized thermal power plant operation ma?nagement system [D]. Qingdao: Qingdao University of Science and Technology, 2012.

[10] 吳磊,李振亮.一種網絡溫濕度控制器設計與實現[J].計算機測量與控制,2014(10):3165?3167.

WU Lei, LI Zhenliang. Design and implementation of a network temperature and humidity controller [J]. Computer measurement & control, 2014(10): 3165?3167.

[11] 謝文娣.基于DSP的嵌入式uIP TCP/IP協議棧的應用研究[D].南京:南京郵電大學,2012.

XIE Wendi. Application research of embedded uIP TCP/IP protocol stack based on DSP [D]. Nanjing: Nanjing University of Posts and Telecommunications, 2012.

主站蜘蛛池模板: 久久精品视频一| 97视频在线观看免费视频| 亚洲国产成人久久77| 国产在线视频欧美亚综合| 国产白浆在线| 久久精品视频亚洲| 久久网欧美| 国产精品播放| 久久婷婷色综合老司机| 国产在线自在拍91精品黑人| 无码精品一区二区久久久| 国产不卡一级毛片视频| 亚洲天堂在线免费| 久久久精品国产SM调教网站| 69av免费视频| aⅴ免费在线观看| 一级一级特黄女人精品毛片| 国产精品自拍露脸视频| 婷婷午夜影院| 久久99国产精品成人欧美| 91亚瑟视频| 国产人成在线观看| 久青草免费视频| 久久综合色视频| 无码人中文字幕| 97影院午夜在线观看视频| 国产欧美精品午夜在线播放| 国产在线视频自拍| 亚洲侵犯无码网址在线观看| 喷潮白浆直流在线播放| 91区国产福利在线观看午夜| 亚洲a免费| 特黄日韩免费一区二区三区| 久久久久久久久18禁秘| 欧美成人精品高清在线下载| 美女免费黄网站| 国产日韩欧美成人| 色综合成人| 亚洲人成网线在线播放va| 亚洲香蕉伊综合在人在线| 国产久操视频| 亚洲九九视频| 久久精品无码中文字幕| 亚洲AⅤ波多系列中文字幕| 精品视频一区在线观看| 国产99免费视频| 久久96热在精品国产高清| 国产成人高清在线精品| 一级一级特黄女人精品毛片| 青草视频久久| 99在线视频免费| 亚洲性日韩精品一区二区| 熟妇丰满人妻| 国产交换配偶在线视频| 伊人激情久久综合中文字幕| 福利片91| 无码综合天天久久综合网| 久久人体视频| 国产在线欧美| 日韩黄色在线| 亚洲国产天堂久久九九九| 免费人成黄页在线观看国产| 亚洲精品久综合蜜| 免费一级毛片不卡在线播放| 2019年国产精品自拍不卡| 特级精品毛片免费观看| 青青草原偷拍视频| 日本黄网在线观看| 国产亚洲精品在天天在线麻豆| 欧美国产日韩在线| 毛片视频网址| 国产黄在线免费观看| 18禁色诱爆乳网站| 日本91视频| 无码高清专区| 亚洲无码不卡网| 免费国产无遮挡又黄又爽| 国产精品久线在线观看| 日韩无码白| 国产精品主播| 亚洲精品va| 欧洲高清无码在线|