彭小軍
(新余學院 機械工程學院,新余 338004)
在我國國民經濟產業中,制造業占據了相當重的比例,制造業的發展不僅促進了工業的發展進程,它還逐漸滲透到我們生活當中,對我們的生活、生產、文化都造成了一定的影響。制造業信息化的過程是指將信息技術應用到制造業當中,將產品從設計到維護的整個流程都記錄在信息當中,在促進企業生產效率的同時,方便了企業的管理。隨著信息技術的不斷改進,該技術的應用范圍日益增廣,它逐漸滲透到了工業領域及制造行業。
Zigbee技術具有雙向、無線通訊、短距離、低消耗、低復雜度和低成本等特點,作為一種通信技術,它在控制領域的應用范圍較廣,在多種設備中都可以安裝。與其他通信技術相比,Zigbee技術具有低耗低成本和地數據傳輸的特點,這也就決定了該技術適應的業務都具有小數據流量的特點。Zigbee協議中包含兩種設備,即全功能設備FFD和簡化功能設備RFD,FFD是負責網絡節點的集中和協調,RFD負責終端節點,所以在該協議中FFD為主協調器,RFD為從協調器。
嵌入式技術是針對計算機專業系統裝置或設備來說的,該系統的控制程序通常都儲存在只讀內存當中。為了完善離散型制造業MES系統的功能,增強系統的一致性、配置型、擴展性和接口的多樣化,需在無線傳感網絡MES中嵌入系統。改善后的無線檢測終端對系統和設備的集成有明顯的提高,設備各方面的性能、通用性和使用范圍也因此得到了改善,同時還推動了企業信息技術的發展。
本文針對離散型制造執行系統在制造行業中的運用實例進行說明,本文網絡的管理結構是使用的半分布式數據結構。傳感器節點和協調器節點是組成這個系統的兩大結構。
核心控制模塊需要控制任務管理、路由協議、同步定位和節點處理等模塊,所以該控制模塊須具有外設功能、低能耗、外圍設備資源豐富等特點才能滿足外圍電路設計的要求,目前以ARM7TDMI體系中的AT91SAM7S64結構最為合適。無線檢測終端的電源形式有五種分別是1.8V、3.3V 、5V、 24V、12V。其中24V和12V這兩個電壓是由開關電源管理。5V電壓須經降壓芯片處理成3.3V后才能使用,從而保證電壓的穩定性。AT91SAM7S64內部包含了兩個收發器,該收發器有一個通用的同步異步雙工串口,如圖1所示為串口通信電路原理圖。

圖1 串口通信電路原理圖
RS232的傳輸距離在50以內,而檢測系統在實際傳輸中的傳輸距離遠遠大于RS232的傳輸距離,所以需要用接口RS485來擴展傳輸距離。RS485接口的轉換電路包括三個部分,即電源、485電路、232電平轉換。RS485使用的電路是集成電路MAX485,MAX485利用MAX485控制數據的輸入輸出是依靠RE和DE這兩個引腳完成的,所以這兩個引腳電平的高低就決定了數據輸入輸出的有效性。
在FreeRTOS系統中的內核編程使用的都是C語言,所以使用的單片機應用軟件Keil必須是兼容C語言的軟件。從FreeRTOS中下載最新源碼FreeRTOSV5.0.4,將下載后的源碼進行解壓釋放到一個方便的途徑。首先在FreeRTOS/Source/portable/keil下創建一個[architecture]文件夾,然后把空白的portmacro.h文件和port.C文件放置在[architecture]文件夾中,portmacro.h文件和PORT.C文件中有函數和宏列表,樁文件stub files只需參照這兩個文件就可獲得所需函數和宏。
驅動硬件和系統的操作內核是通過設備驅動程序來連接的,硬件設備對應用程序來說僅僅是一個文件,它的作用就是簡化應用程序在硬件中的細節問題。
3.2.1 UAR T驅動開發
對緩沖區UART下定義,分離緩沖區內的驅動程序和驅動硬件,用戶程序和驅動硬件間的聯系依靠緩存技術來完成。如下所示為UART緩沖區的定義表達式:
typedef struct
{
int AppFlag;
unchar RrcvIsBuzy;
uint waitrecvtime;
unchar sendbuff [MAX_Q_UNIT];unchar recvbuff [RECVBUFFSIZE];
}UArT_BUF;
初始化串口函數Init_UART0 (),中斷串口,設置芯片外圍參數,按照系統中的時鐘頻率、波特率等參數對與UART相關的寄存器進行設置,保證能串口的正常使用。
以recvbuff為基礎,增加queue,在驅動程序中UART包括了兩個隊列,一個負責數據發送,一個負責數據接受。發送隊列在發送時需注意以下幾點:首先必須保證發送隊列中包含數據,讓能發送處于中斷狀態,中斷服務程序會在能發送中斷的狀態下將發送隊列中包含的數據發送至指定串口。加載后的設備保持數據接收狀態,若程序中斷,則將數據copy到queue文件內,在讀取數據和調用數據時需進入到queue文件中。若如果有數據,則按照queue文件內的數據發送過去,如果沒有數據,就需要等待,直至接收中斷。
3.2.2 LCD驅動開發
在初始化函數之前需先初始化LCD控制器,在寄存器中設置控制器的顏色數目和顯示模式,然后按照不同的設置將LCD分配到不同的緩存區域。緩存區面積計算方式為:點陣的行數×列數×表示單個像素的比特數÷8。若LCD顯示的點陣行數為320,點陣列數為240,像素比特數為1,則該顯示緩存區的大小為320×240×1/8=9600比特。分配緩存區通常儲存在大容量片外SDRAM中,起始地址則由LCD控制寄存器保存。編寫底層驅動SED1335液晶控制器的程序。讀寫數據函數包括兩種,即自動讀寫和一次讀寫,在這之前需設置好指針的地址及狀態的檢查。檢查完畢后輸入指令代碼,數據操作過程就算完成了。
傳感器、調節器節點的數據發送和收集、主程序處理模塊和通信服務子程序這四個部分是構成無線檢測終端軟件系統的主要部分。主程序處理模塊在軟件系統中主要負責功能模塊初始化,它還可以
設置寄存器的工作模式和其他內部微處理器的工作參數。之后就是數據的傳輸,建立通信鏈路,并保證數據在鏈路傳輸中的可靠性和穩定性。通信服務子程序在軟件系統中主要負責數據的接收、處理、打包和發送,保證數據完整可靠的進入用戶應用程序,顯示和調用終端檢測信息,儲存數據到數據庫。如圖2所示為主程序處理模塊的流程圖。

圖2 主程序流程圖
PSFQ是Pump Slowly, Fetch Quickly的縮寫,其意思就是慢分發和快提取,它是一種建立在可靠數據上的傳輸協議。判斷丟失消息能否找回的標準是比較接收序列號和預期序列號的大小,若大于則代表能找回,從而啟動錯誤恢復操作。流經中間節點的數據都是可靠而有保障的,它的發送序列號和轉發次序是嚴格按照順序發送的,這樣一來,就少做了很多無用功。PSFQ在程序中的作用是保證報文緩存數量在中間節點的平衡性,同時它還能降低錯誤恢復所需的開銷。
PSFQ傳輸協議有三個優點,即信息傳遞、錯誤恢復、選擇性狀態報告,信息傳遞是指將消息傳入網絡當中。在中間節點設立一個數據緩存區,這樣不僅可保證數據有序的傳達,還具有恢復丟失的文件、消息功能,數據緩存區可以檢查數據的接收量,以便及時發現數據是否缺失。中間節點在消息傳遞過程中擔任檢驗者的角色,負責消息的中轉及錯誤恢復操作的啟動。
軟件X-CTU是一款專門用于測試模塊或程序性能的軟件,本文利用它來檢測XBee無線通信模塊的配置和性能。X-CTU軟件操作相對簡單,需要的輔助設備較少。但X-CTU軟件也存在一些不足,比如它只有在Windows平臺上才能完成檢測,且 系統操作平臺的版本不能低于Windows98。設計出來的檢測終端已經過實際的驗證,將檢測信息進行分析,這些信息就體現了該企業設備的使用效率,針對缺陷做出改善,從而達到提高生產效率的目的。
[1] 呂強, 劉玉華, 劉志軍, 王國勝.基于ZigBee技術的無線溫濕度檢測終端設計[J].科學技術與工程, 2008, 8(23).
[2] 包盛花.基于DSP和CPLD的電力參數檢測終端的設計[J].電子設計應用, 2004(1): 88-90.
[3] 王瑋, 樊則賓.基于CC2430的無線溫度檢測終端的設計[J].電子工程師, 2007, 33(8): 78-80.
[4] 趙洪軍.基于GPRS的電能質量檢測終端設計[J].農業科技與裝備, 2011(2).