1 引言
數據采集記錄儀在工業控制領域中有著十分重要的意義。在許多工業場合。尤其是對于一些分散的、無人值守的現場.需要對數據進行定時采集以便及時了解現場的情況.并根據情況發送控制命令。以前這些系統大多采用普通的單片機來實現.其缺陷是明顯的.如系統資源短缺、指令不夠精簡、CPU操作頻率低等,大大地限制了其使用場合。現在廣泛使用的是ARM和PC機通過串行口構成的多微機監測系統.但仍存在問題,比如多儀器問的精確同步。
本文提出了一種基于ARM和GPS(Global Positioning System)的數據采集記錄儀,并結合uC/OS—II嵌入式實時操作系統來實現。該系統具有良好的環境適應性、多儀器間的精確同步性、人機交互性、穩定性、高效性,很適合運用于電化學實驗、腐蝕測量工程等領域。
2 系統總體結構設計
本數據采集記錄儀主要包括兩大部分:數據采集與數據存儲傳輸。本文主要介紹數據采集模塊的設計與實現。整個系統的系統功能模塊如圖1所示。
該系統要求采集4路電壓通路.采集時間為100ms~255h.并連續記錄ON、OFF電位至少24小時(不需要記錄整個波形):同時由于本數據采集記錄儀是一個多儀器系統,要求所有儀器都能夠精確同步。因此.該系統要求每分鐘,秒鐘記錄一次測試時間(GPS時間)。并將此時間與其它儀器記錄時間相比。其它儀器記錄時間用GPS同步。同時,該系統要求支持本地數據存儲和u盤數據保存功能.且u盤數據保存的可存儲容量取決于u盤的整體容量:該系統支持多種數據通訊功能。如Zigbee通訊、SPI總線接口通訊、I2C總線接口通訊、UART異步串行通訊。
圖1 數據采集記錄儀的功能模塊圖
結合圖1,可得整個系統的實現方案.如下:
1)與硬件平臺相關的軟件部分分析與實現,并編寫相應的底層函數:
2)進行uC/OS—II嵌入式實時操作系統在LPC2220微處理器的移植:
3)系統各功能模塊的分析與實現:
4)系統調試及改進。
該系統采用uC/OS-II嵌入式實時操作系統作為中問件,并將與硬件平臺相關的部分與相應功能模塊的實現隔離開來,盡可能地實現硬件與軟件分開.這樣方便進行系統設計。uC/OS-II嵌入式實時操作系統是一個多任務的實時內核,其允許建立多達63個用戶任務.并根據程序建立和運行的情況.決定在什么時候從一個任務切換到另一個任務。同時。任務的優先級也是uC/OS-II嵌入式實時操作系統必須得到的信息之一。具體的任務劃分如圖2所示:
圖2 系統任務劃分圖
3 數據采集模塊原理與底層設計
3.1 采集信號分析
由于本數據采集記錄儀主要應用于電化學實驗及腐蝕測量工程中.其對信號采集與記錄上有較高的要求.如下:
1) 3路直流0~±2.5V。14~16bit,分辨值0.1mV;
2) 1路交流0~±40v 14~16bit,分辨值0.1mV,自動檔量程預選;
3) 4路通用10位AD.范圍0~5v(預留)。
信號的采集過程為:首先采集并存儲128個信號采樣點,計算并存儲此128個信號采樣點中8個連續數據點的“斜率”。8個連續數據點的“斜率”計算算法為:首先每2個連續數據點計算一次斜率K1=(Y1-Y2)/(X1-X2).一次循環后得到4個斜率.對4個斜率取平均值并將此作為8個連續數據點的“斜率”。然后對前后一段時間的斜率的大小與走勢進行比較.并根據相應的閾值來確定ON/OFF電位的位置。
3.2 數據采集
由于LPC2220內部提供一個8路10位A/D轉換器.且轉換時間低至2.44us捕足該系統對信號采集的基本要求。因此在進行數據采集的時候.就直接利用其內部提供的A/D轉換器。LPC2220擁有一個10位8路A/D轉換器.A/D轉換器的基本時鐘由VPB時鐘提供.每個轉換器包含一個可編程分頻器,可將時鐘調整至逐次逼迫轉換所需的4.5MHz(最大)。完全滿足精度要求的轉換需要11個轉換時鐘。
此MD轉換器的主要特性如下:
* 1個10位逐次逼近式模數轉換器:
* 具有掉電模式:
* 10位轉換時間小于2.44μs;
* 一個或多個輸入的Burst轉換模式:
啟動A/D轉換器的方式非常靈活.既可以單路軟件啟動,也可以設置為BURST模式對幾路信號逐個循環采樣。與其他LPC2000系列單片機相比.LPC2220增加了獨立的基準電壓源引腳.這對提高轉換精度很有利。
由于被采集信號相對較復雜,且在ON/OFF電位處可能有較大的紋波,而實驗證明最大程度的硬件濾波也無法達到非常理想的要求,因此必須使用軟件濾波來減少紋波對信號采樣的影響.具體濾波方法主要有中值/中值平均濾波法、限幅,限幅平均濾波法、算術/算術平均濾波法、消抖,消抖平均濾波法、加權遞推,加權遞推平均濾波法等。該系統主要采用中值平均濾波法與算術平均濾波法相結合的方法。
與數據采集有關的函數調用如下:
void ADInit(uint8 channel) //ADC初始化
uint32 ADRead(uint8 channel) //切換到ADC的任何一個通道并讀取轉換數據
void ADProcessfuint8*data) //數據處理與ON/OFF電位確定
數據采集模塊基本流程圖如圖3所示。
圖3 數據采集模塊基本流秤圖
3.3 數據采集模塊測試
將系統數據采集模塊輸入端連接到現場傳感器數據輸出端.并結合ADSI.2中的AXD調試環境針對用戶的相應操作對整個系統進行調試。測試結果如下:
1) 單通道數據采集測試結果及分析:單通道數據采集結果1如圖4(a),ON電位為-0559.0mV,OFF電位為-0594.OmV,測量長度為00000000.4 S。數據采集結果2如圖4(b)。上一次ON電位為-0589.0mV.OFF電位為-0584.0mv:當前ON電位為-0492.2mV.OFF電位為-0492.4mV.測量長度為00013467.8m。測試結果符合信號要求。
2) 四通道數據采集測試結果及分析:四通道數據采集如圖5所示通道1數據為--0848inV.通道2數據為--0726mV,通道3數據-0023mV.通道4數據為-0152mv測量長度為147879221m。四個通道數據都正常.偏離實際信號數據在誤差范圍內。
圖4 單通道數據采集結果
圖5 四通道數據采集結果
4 結束語
本數據采集記錄儀在LPC2220微控制器的硬件系統支持下.結合uC/OS一Ⅱ嵌入式實時操作系統和GPS全球定位系統實現對工業信號進行采集、記錄、傳輸(無線與有線)、顯示等功能。并具有以下創新點:
1)結合uCOS嵌入式實時操作系統進行系統設計.可以更大程度地提高系統的穩定性、高效性、智能性及降低系統開發的難度:
2)采用GPS全球定位系統技術輔助系統功能設計.可以實現各子系統間的精確同步,保證系統的穩定性;
3)提供多種形式的數據存儲與轉存接口;
4)提供Zigbee無線通訊,可以多系統組網,相互協調運作。
本文重點介紹的數據采集模塊是整個數據記錄儀的重要組成部分,具有高效性、高速性、實時性、智能性,精確同步性等特點。
責任編輯:gt
-
微控制器
+關注
關注
48文章
7573瀏覽量
151667 -
嵌入式
+關注
關注
5087文章
19149瀏覽量
306230 -
操作系統
+關注
關注
37文章
6856瀏覽量
123457
發布評論請先 登錄
相關推薦
評論