《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 基于Excel的實時監控人機界面軟件的開發與應用
基于Excel的實時監控人機界面軟件的開發與應用
黎 藜1,2,甘志銀1,2,張
摘要: 基于Excel開發實時監控人機界面(HMI)軟件的技術路線,大大降低了實時監控人機界面軟件的開發難度和工作量,大幅度地縮短了開發周期,節省了研發費用和投資;不僅使所開發出的軟件具有強大的實時監控功能,而且還具有高度的靈活性和可拓展性,支持嵌入式系統項目的研發、生產及維護的整個生命周期的各個階段。
Abstract:
Key words :

  摘 要: 基于Excel開發實時監控人機界面(HMI)軟件的技術路線,大大降低了實時監控人機界面軟件的開發難度和工作量,大幅度地縮短了開發周期,節省了研發費用和投資;不僅使所開發出的軟件具有強大的實時監控功能,而且還具有高度的靈活性和可拓展性,支持嵌入式系統項目的研發、生產及維護的整個生命周期的各個階段。
  關鍵詞: Excel;實時監控;人機界面;BASIC語言

  對于以單片機為核心的嵌入式自動測控系統,通常在系統開發階段需要借助微型計算機(PC機)來完成數據采集、數據分析、實時監控、人機交互等任務。要有效地達到此目的,需要在PC機上安裝和運行一個實時監控人機界面軟件,自動化或半自動化地完成上述任務。目前,主要有兩種開發實時監控人機界面軟件的方法:(1)采用某種計算機語言直接編程實現,如采用微軟的可視化編程語言VC++6.0[1]或VB 6.0[1]等;(2)在商品化的人機界面軟件框架的基礎上進行二次開發實現,此類軟件框架在國外有InTouth[2]、WinCC[3]、RSView[4]等,國內有“力控”[5]、“組態王”[6]等。第一種方法具有高度的靈活性和可拓展性,但要求開發者具有較高的計算機軟件技術水平,開發難度大,開發周期長。第二種方法降低了開發難度,但靈活性和可拓展性受到了很大限制,有些方面難以滿足實際要求,且此類商品化軟件框架的價格為幾千到十幾萬元,這是一筆不小的投資。基于對上述兩種方法優缺點的認識,本文提出了一條新的技術路線:基于Excel[7]開發實時監控人機界面軟件。采用這條新的技術路線,大大降低了實時監控人機界面軟件的開發難度,大幅度縮短了開發周期,節省了研發費用和投資;同時,不僅使所開發出的軟件具有強大的實時監控功能,而且還具有高度的靈活性和可拓展性,支持嵌入式系統項目的研發、生產和維護的整個生命周期的各個階段。

1 基于Excel的技術路線
  Excel是功能強大的電子表格處理軟件,其對象模型包括了一百多個不同的對象,從文本框、矩形等簡單對象到透視表、圖表等復雜對象。特別是它集成了與微軟VB 6.0相兼容的Visual Basic計算機語言,支持先進的面向對象和面向部件的編程技術,使得它成為了一個功能強大的軟件開發工具。開發基于Excel的人機界面應用程序包括兩部分:設計用戶界面(GUI)和編寫代碼程序。
  傳統的應用程序界面開發方法要編寫一大段程序語句。與此不同的是,本文利用了Excel集成的可視化Visual Basic編程語言和支持“快速原型法”的軟件開發模式,即使用“工具箱”中的若干控件,按照設計者的構思,在指定位置“畫”出對用戶友好的界面。
  有了用戶界面后,對應用界面要執行的控件進行“事件驅動”,也就是執行某個程序算法,使它按照設計者的意愿運行。這一技術路線把原來統一控制的大程序分解成為許多獨立、小規模的子程序,分別執行事件。如利用Excel自帶的自動化編程技術“錄制宏”生成的程序模塊為樣板程序,或利用自有的或第三方的AciveX控件編程進行功能拓展。

2 實時監控人機界面軟件的結構
  在高性能恒溫晶振(OCXO)的科研項目中,開發了用于精密控制恒溫箱的實時監控人機界面。該高精度溫度控制系統以微控制器MSC1210為核心組成嵌入式系統控制器,或稱為下位機。下位機通過RS232串口與上位機(PC機)通信,如圖1所示。


  通過與下位機的通信,對嵌入式系統的下位機進行監控,自動記錄和顯示采樣數據、顯示工藝參數的實時趨勢曲線等。其軟件結構如圖2所示。

 


  啟動模塊具有“啟動監控中心”、“數據保存到文件”和初始化全局變量的功能。實時監控中心可以控制通信開關、上載開關、選擇上載數據的處理方式,實時設置并顯示控制器參數,以及實時顯示采樣數據。其中通信開關是其他功能按鈕的使能開關,即只有打開通信開關,上、下位機的通信開始工作后,其他功能按鈕才能工作。
3 主要功能模塊的設計介紹
3.1 通信模塊

  通信模塊是軟件設計的難點,其主要功能為實現上位機與下位機的通信,設計的關鍵在于上位機與下位機通信協議條款的制定及實現。上位機與下位機通信的穩定性與正確性是實現實時監控的前提,通信協議所制定的通信數據包格式一般需要設計成能完成基本的校驗功能,它包含有前導碼、數據包標識碼、數據校驗碼和結束碼。
  為了減少編程的難度和工作量,采用微軟提供的串口通信AciveX控件MSCOMM32.OCX來實現與RS232串口硬件直接有關的底層功能。因此,通信模塊程序僅處理有關通信協議方面的高層功能,如收、發和校驗通信數據包,上載與下載控制器參數包,發送上位機向下位機下達的命令包等。


3.2 主監控模塊
  主監控模塊用于顯示最新上載數據,包括給定值、測量值、控制值以及上載量、設置給定值、設置手動控制值以及切換控制方式。值得一提的是,這一實時監控人機界面軟件可以實現無擾動切換自動與手動的控制方式,即在兩者相互切換的過程中,PWM占空比不會出現大幅度跳動,由此防止恒溫箱的輸入電流出現瞬時的大幅度變化,干擾整個電路的正常工作。圖3為主監控模塊的操作界面。


3.3 實時數據記錄與保存模塊
  此模塊把從控制器上載的實時數據和相關的時間、工藝參數自動記錄到電子表格并將自動形成文件保存到硬盤中。
  模塊程序的編寫使用了Excel電子表格對象模型,并結合面向對象的編程技術來實現。采用了“錄制宏”的自動化編程技巧完成此項工作:首先,采用“錄制宏”,把手工操作實現數據記錄與保存的每個步驟錄制下來后,Excel就會自動給出一個實現相應操作、采用BASIC面向對象語言描述的程序模塊;然后,以此BASIC程序模塊為樣板程序,添加少量必要的程序流程控制語句和少量其他修改,調試通過后就完成了此模塊程序的編寫。
  從控制器上載的實時數據可以選擇直接寫入電子表格,或者在趨勢曲線上顯示后成批寫入電子表格。電子表格或趨勢曲線被設計成能夠顯示1 000組數據,并按照記錄時間自動分配文件名保存到指定文件夾內,以便于將來對數據進行分析和處理。
3.4 控制器參數的實時修改和保存
  控制器參數的實時修改功能是專為控制器的調試設置的。在調試過程中,需要不斷調整控制器參數以尋找最佳值。把控制器的參數設計為存放在單片機的RAM中,每個參數均可按單獨下載刷新的方式方便地進行實時修改。同時,把存放在RAM的參數寫入閃存,以及把存放在閃存的參數恢復到RAM中存放的功能。
  因此,當調試完成或告一段落時,就可以將控制器存放在RAM中的參數寫入閃存保存,作為最終產品的控制器參數或供下次實驗使用。控制器在上電復位的初始化的過程中,自動完成控制器參數的恢復或上次實驗參數的加載,從而減少調試的工作量。圖4為控制器參數的實時修改和保存界面。

 


3.5 實時趨勢曲線的顯示
  如果直接用計算機語言編寫顯示實時趨勢曲線的程序,將是難度很大且十分耗時的任務。因此,為了降低難度和節省開發時間,采用了微軟提供的圖形顯示AciveX控件MSCHRT20.OCX來完成這個任務。所獲得的實時趨勢曲線顯示效果如圖5所示。


  實時趨勢曲線圖直觀地顯示了當前控制器的測量值、給定值和控制值,大大降低了參數調試的操作難度。
3.6 歷史數據的重現與分析(圖示分析或統計數值分析)
  實時數據的自動保存功能可以使歷史數據重現。Excel能完成絕大多數常用統計分析任務。同時,Excel電子表格在數據的預處理、圖形的繪制等方面具有相當出色的應用,其內置函數數量多且使用方便,可以用于完成歷史數據的重現與分析。
4 在科研項目中的應用
  上述實時監控人機界面已在項目實驗中應用,并借此工具對高精度恒溫箱的制造技術參數、工藝參數和控制參數進行了大量有價值的探索。
  (1)控制器參數的設置。其中,PID參數的設置是整個控溫的關鍵,其好壞直接影響控溫效果。這一人機界面實時反映控制器當前狀態,使操作者能夠及時調整控制器參數。同時,手動操作的功能也有助于了解被控對象的特性,獲得第一手經驗和技術訣竅,用于引入“實時專家系統”。
  (2)實驗數據的記錄與分析。基于Excel電子表格的人機界面借用了Excel自帶的數據處理功能,可以在曲線上重現歷史數據,從分析和重現記錄的歷史數據中獲得有用經驗。
  (3)變換實驗方案。基于Excel的實時監控人機界面的開發簡便而有效,采用模塊式的編程方法,組態靈活、擴展容易,兼容性好,從而在變換實驗方案時能以較快速度進行擴展和升級維護,以適應實驗方案的改變。
  (4)在項目產品生產階段,這一程序可擴展為產品測試檢驗軟件,自動生成產品質量的檢驗文件,實現產品質量的查詢、分析和跟蹤的電子化,并能夠向客戶提供合格產品的電子質量報告文件。
  為嵌入式自動測控系統量身定制實時監控人機界面軟件是一項技術復雜、難度大、開發周期長的任務。本文利用新的方法和技術路線達到了降低開發難度、縮短開發周期和節省研發費用的目的,并在嵌入式系統科研項目的應用中獲得了很好的運行效果,驗證了新的技術路線的可行性和有效性。這一技術路線能有效支持嵌入式系統產品的整個生命周期。基于Excel方案的最大缺點是運行速度比較慢,原因為Excel的BASIC語言是解析執行的。但是,基于Excel方案的程序很容易移植到微軟的VB6.0下編譯執行。最終采用此方法,對基于Excel方案的程序進行移植處理后,不僅能夠提高程序的執行速度,而且還可以按照商品化的形式發布程序。


參考文獻
[1] Microsoft Corporation.MSDN Library Visual Studio 6.0.1998.
[2] Invensys Systems,Inc.In touch user′s guide.2002.
[3] Siemens AG.SIMATIC HMI WinCC V6.0 Online Help.2005.
[4] Rockwell Software Inc.RSView32 user′s guide.1999.
[5] 北京三維力控科技有限公司.力控6.0聯機幫助.2008.
[6] 北京亞控科技有限公司.組態王6.52聯機幫助.2007.
[7] Microsoft Corporation.Microsoft Excel在線幫助.2003.

 

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 亚洲日本va中文字幕在线不卡 | 日韩精品福利视频一区二区三区 | www青青草 | 国产精品莉莉欧美自在线线 | 下面一进一出好爽视频 | 最新欧美在线 | 天天射天天干天天操 | 中文字幕在线观看一区 | 久色视频在线 | 网站四虎1515hhcom | 久久亚洲欧美综合激情一区 | 波多野结衣在线观看一区 | 国产日韩一区二区三区在线播放 | 免费老色鬼永久视频网站 | 韩国videos18高清hd | 日本三级黄色录像 | 亚洲欧美日韩第一页 | 欧美小视频在线 | 日本大臿亚洲香蕉大片 | 欧美特黄三级在线观看 | 碰超在线| 日本一区深夜影院深a | 亚洲嗯啊 | 国产精品国产三级国产an不卡 | 三级簧片 | 亚洲第一视频网站 | 日韩成人免费视频 | 今天免费中文字幕视频 | 高清国语自产拍免费视频国产 | 天天做日日爱 | 久久久久综合一本久道 | 黄色视屏在线免费看 | 夜夜弄 | 美国一级做a爰片性色毛片 美国一级做a一级视频 | 亚洲人成在线中文字幕 | 福利网站在线观看 | 未成18年禁止观看的免费 | 被免费网站在线视频 | 国产欧美日韩视频在线观看 | 最近高清无吗免费看 | 深夜在线看 |