電磁流量計測量系統軟件通過JTAG使用ARM公司推出的ARM核微控制器集成開發工具ADS。ADSl.2支持ARMl0之前的所有ARM系列微控制器,支持軟件調試及JTAG硬件仿真調試,支持匯編、C、c++源程序,具有編譯效率一、系統庫功能強等特點,可以在Windows98、Windows XP、Windows2000以及RedHatLinux上運行。ADS 1.2由6個部分組成,如表4—2所示。表4—2 ADSI.2的組成部分名稱描述使用方式代碼生成工具ARM匯編器,ARM的c、c++編譯器, 由CodeWarrior IDE調用Thumb的c、c++編譯器,ARM連接器集成開發環境CodeWarrior IDE 工程管理,編譯連接調試器AXD,ADW從DU,ARMSD 仿真調試指令模擬器ARMulator 由AXD調用ARM開發包一些底層的例程,實用程序(如一些實用程序由CodeWarrior fromELF) IDE調用ARM應用庫C、c++函數庫等用戶程序使用
測量系統軟件:
電磁流量計系統選用的嵌入式微處理器是ARM,它體積小、可靠性一、能耗低和性價比好。由于本測量系統的軟件規模小,所以無需使用嵌入式系統的操作系統軟件,增加額外的內存開銷。由于嵌入式系統資源特別是存儲介質相當有限,所以在本測量系統軟件程序編寫時對系統資源的開銷做了詳細的計劃,特別在方案設計、選擇器件時就留了足夠余量。本測量系統軟件在開發過程中與低層的硬件非常相關,對于硬件的操作都把它封裝在函數內,這樣程序的可讀性好、易于二次開發、增加了復用性。根據上文所提到嵌入式軟件的組成,本測量系統的作業管理系統就是完成流量測量的任務;而用戶界面處理系統是鍵盤和液晶顯示屏:數據處理系統則是對輸入A/D轉換數據進行處理,轉換成需要的物理量:麗通訊處理系統則包括RS.232、RS.485、HART。由于本測量系統屬于小型系統,還不需要使用市場上的商業化操作系統。
本系統由于規模不大,采用的是傳統方法學作為軟件開發的方法。就軟件過程而言,由于瀑布模型適用于功能、性能明確、完整、無重大變化的軟件系統的開發,所以本系統開發采用的是瀑布模型。下面將詳細論述瀑布模型在本軟件開發過程中的應用。
首先是需求分析。我們在廣泛參考國內外電磁流量計的軟件功能之后,發現軟件的基本功能都差不多,但各自都有自己的***色功能,我們在綜合了眾人之長之后,提出了自己的設計方案和設計規格書。
設計規格要點如下:
(1)軟件以模塊化,結構化,可進行二次開發,復用性好的原則進行開發。
(2)菜單本著人性化,易操作的原則設計成分***菜單,操作方便。
(3)綜合了市場上產品的新的***色功能,如上電、掉電時間記錄,批量控制功能,多高語言顯示,以及顯示單位的多樣化等。
然后根據規格說明對軟件系統進行了設計和實現。系統軟件由主程序、時基中斷程序、菜單處理程序、勵磁信號產生、A/D、D/A、通訊、顯示、高沖頻率輸出等部分組成。主程序對系統進行初始化,通過對各模塊的應答響應,判斷各模塊是否正常運行。通過設定用戶特別,可實現對儀表參數設定的分***控制, 分屬不同特別的生產廠家、售后服務和用戶均只能訪問相應特別允許訪問和修改的儀表參數。在工況測量狀態下,儀表將實時顯示瞬時流量、累積流量、流速和報警信息等。在參數設定狀態,可設置的參數如下:(1)語言:中英文可選;(2) 網絡地址:可設范圍為O~99;(3)通訊速度:600~14400可選;(4)口徑:3~ 3000可選:(5)顯示單位:可選;(6)量程:0~99999.9999可設;(7)濾波常數:0~100秒可選:(8)流動方向選擇:正反可選:(9)低流量切除:0~99% 可沒;(10)低流量切除顯示:允許/禁止可選;(11)流量積算單位:0.0000lL~ 1m3,英加侖,美加侖,公斤和噸可選;(12)數字輸入1功能:可選;(13)數字輸入2功能:可選;(14)數字輸出1功能:可選;(15)數字輸出2功能:可選;(16)流量狀態點X:可設;(17)流量狀態點Y:可設;(18)累計量觸發點:可設:(19)電流輸出選擇:可選;(20)高沖輸出選擇:頻率/高沖可選;(21) 高沖當量:0.00001L~lm3可選:(22)輸出頻率:0~5000Hz可選;(23)空管報警:允許/禁止可選:(24)空管報警門艱:可設;(25)流量上限報警:允許/ 禁止可設;(26)上限報警閩值:可設;(27)流量下i艮報警:允許,禁止可設;(28) 下限報警閾值:可設;(29)總量清楚:輸入密碼;(30)總量清楚密碼:可設; (31)傳感器日期:可設;(32)傳感器序列號:可設;(33)傳感器系數:可設; (34)勵磁方式選擇:介質可選;(35)流量校正系數:可設;(36)儀表計算系數:可設;(37)出廠標定系數:可設;(38)轉換器日期:可設;(39)轉換器序列號:可設;(40)當前年月日:可設;(41)當前時間:可設;(42)******密碼:可設:(43)二***密碼:可設;(44)三***密碼:可設;(45)四***密碼:可設;(46)恢復出廠參數:初始化密碼。系統將把改變的系數和累計流量等相關信息在線保存,并可記錄多次上電和復位時間信息,以備現場工作人員查閱。系統的主程序流程圖和定時器中斷響應處理程序如圖4***l,4—2所示。上電初始化{多中斷初始化鍵盤響應初始化通訊初始化A刪刃始化D/A初始化J} LCD初始化等待定時器中斷響應———————ji2—————***l定時器中斷響應處I 理程序圖4—1系統程序流程圖圖4—2定時器中斷響應處理程序接著將程序下載到測量系統進行組裝測試和驗收測試。整個測量系統軟件實現的各個高段間具有順序性和依賴性,即必須等前***高段的工作完成之后,才能開始后***高段的工作,以此來保證系統軟件的一、高產。
本章介紹了嵌入式系統軟件開發的特點和設計思想,軟件開發的方法和模型,以及在本測量系統軟件開發中的應用,并且介紹軟件的開發環境和軟件系統程序框圖。