孫寒冰 劉德亮
摘 要:在工業(yè)自動化、汽車制造、能源和電網電力等工業(yè)制造或生產領域中,經常需要對離散空間工作場所進行生產或制造車間圖像視頻信號和工作現(xiàn)場機器環(huán)境監(jiān)測性能參數(shù)進行實時監(jiān)控和調度,以便行政管理部門對工作現(xiàn)場領域進行遠程控制和指揮調度。為了解決當今工業(yè)企業(yè)生產領域中實時工業(yè)環(huán)境測繪監(jiān)測系統(tǒng)數(shù)據(jù)不能實現(xiàn)跨域傳輸和數(shù)據(jù)速率延時等問題,提出了一種基于ZIGBEE協(xié)議的工業(yè)環(huán)境監(jiān)測系統(tǒng)。
關鍵詞:ZIGBEE協(xié)議;工業(yè)環(huán)境監(jiān)測系統(tǒng)
基于ZIGBEE總線協(xié)議(簡稱ZIGBEE協(xié)議)的工業(yè)企業(yè)環(huán)境測繪監(jiān)測系統(tǒng)信號聯(lián)網跨域的限制,實現(xiàn)了工業(yè)生產現(xiàn)場遠程環(huán)境數(shù)據(jù)采集和生產設備的性能參數(shù)數(shù)據(jù)實時上傳管理,大大提高了數(shù)據(jù)傳輸?shù)乃俾?、性能和時效性。
一、工業(yè)環(huán)境監(jiān)測系統(tǒng)結構總體設計
遠程在線監(jiān)控系統(tǒng)的主控制芯片采用SUN公司生產的同構四核處理器AthZIGBEE 64,該64位處理器由2組AthZIGBEE 64 X2內置芯片和2組AthZIGBEE 64 X4內置芯片組成。AthZIGBEE 64 X2內核主要實現(xiàn)的功能[4]是處理器VxWorks(嵌入式實時操作系統(tǒng))的安裝、網絡協(xié)議異構互連轉換和監(jiān)控系統(tǒng)內部數(shù)據(jù)交互。AthZIGBEE 64 X4內核能夠執(zhí)行一系列高效可靠算法來實現(xiàn)監(jiān)控系統(tǒng)的浮點控制數(shù)據(jù)計算,四個核心芯片之間的數(shù)據(jù)互通是利用片上共享前端總線實現(xiàn)的。遠程監(jiān)控系統(tǒng)的終端層采用支持快速以太網技術的人機交互HMI系統(tǒng)。
二、工業(yè)環(huán)境監(jiān)測系統(tǒng)功能設計
遠程監(jiān)控系統(tǒng)功能設計主要包括了:VxWorks在AthZIGBEE 64上的移植設計、ZIGBEE協(xié)議在AthZIGBEE 64芯片上的移植設計、基于三次握手機制的TCP/IP協(xié)議棧在VxWorks上的植入設計和HIM系統(tǒng)觸摸屏操作面板程序的開發(fā)設計。
(一)ZIGBEE協(xié)議在AthZIGBEE 64芯片上的移植
ZIGBEE協(xié)議能夠實現(xiàn)工業(yè)自動化領域中不同工業(yè)設備之間的智能數(shù)據(jù)交互,是工業(yè)自動化領域使用頻率較高的全雙工并行通訊總線協(xié)議。在遠程實時監(jiān)控系統(tǒng)中ZIGBEE協(xié)議執(zhí)行的主要功能是在AthZIGBEE 64芯片上完成ZIGBEE協(xié)議的啟動初始化和程序運行過程中斷服務機制。ZIGBEE協(xié)議初始化啟動為每個AthZIGBEE 64芯片寄存器參數(shù)設置來執(zhí)行ZIGBEE模塊開始、時間和服務器參數(shù)、比特值配置和操作模式調用等功能,然后打開AthZIGBEE 64處理器繼續(xù)執(zhí)行函數(shù)高級中斷、中級中斷和低級中斷功能。AthZIGBEE 64芯片上的ZIGBEE中斷服務例程任務包括:測試中斷源、服務器數(shù)據(jù)采集和服務器響應等。
(二)VxWorks在AthZIGBEE 64芯片上的移植
VxWorks能夠為AthZIGBEE 64芯片提供各類任務管理的函數(shù)調度,調度函數(shù)的功能主要包括:實時調度TCP/IP協(xié)議棧線程、遠程過程調度(RFC)、調度ZIGBEE協(xié)議數(shù)據(jù)的傳輸、調度遠程文件訪問、調度Ethernet網絡數(shù)據(jù)的傳輸、BSD套接字兼容的編程接口以及時鐘同步等。
(三)TCP/IP協(xié)議棧在AthZIGBEE 64芯片上的移植
AthZIGBEE 64數(shù)據(jù)幀的傳輸過程主要是靠數(shù)據(jù)幀收發(fā)模塊來處理的。當有數(shù)據(jù)幀發(fā)送至幀模塊之后首先啟動啟動Ethernet服務中斷程序,通過中斷服務程序接收進程將數(shù)據(jù)幀交給TCP/IP協(xié)議棧進行封裝處理,然后封裝的數(shù)據(jù)包被TCP/IP協(xié)議棧進行數(shù)據(jù)包的分解、復用、校驗和丟失等處理工作。在這里,幀收發(fā)模塊采用直接數(shù)據(jù)接收處理機制,不需要AthZIGBEE 64內核CPU直接處理,使得數(shù)據(jù)幀的傳輸效率和傳輸實時性得到了保障。
(四)VxWorks系統(tǒng)對TCP/IP協(xié)議棧的功能調用
當TCP/IP協(xié)議棧在AthZIGBEE 64芯片上完成移植之后,VxWorks需要調用TCP/IP協(xié)議棧才能具備網絡數(shù)據(jù)通信功能。TCP/IP協(xié)議在通信過程中主要涉及了數(shù)據(jù)結構函數(shù)Data-structure()、數(shù)據(jù)封裝函數(shù)Data-encapsulation()、數(shù)據(jù)解封裝函數(shù)Data-decapsulation()、數(shù)據(jù)進程函數(shù)Data-Process()和數(shù)據(jù)接收函數(shù)Data-Receives()的編寫,而VxWorks系統(tǒng)本身設計了數(shù)據(jù)傳輸過程中涉及的數(shù)據(jù)結構和函數(shù),因此在TCP/IP協(xié)議棧的功能調用時VxWorks系統(tǒng)只要稍加修改便可以實現(xiàn)協(xié)議棧的直接功能調用。
三、系統(tǒng)測試環(huán)境搭建
系統(tǒng)測試提供1000M光纖IP網絡,將AthZIGBEE 64核心芯片的網絡IP地址設置為168.2.1.1,人機監(jiān)控系統(tǒng)的網絡出口路由器IP地址設置為168.1.1.1,客戶端主機IP地址設置為192.168.1.1。本地接入路由器IP地址設置為168.2.1.2,對外端口號設置為176,數(shù)據(jù)傳輸目的IP地址設置為192.168.1.2,端口號設置為176。20套控制終端通過ZIGBEE協(xié)議連到AthZIGBEE 64上,然后上電運行監(jiān)控系統(tǒng)。
作者簡介:孫寒冰,宿州學院專業(yè)教師。劉德亮,宿州學院專業(yè)教師。
基金項目:安徽省教育廳高??茖W研究重點項目2022AH051379。