聯系我們contact

電話(huà):027-59760188-801

地址:武漢市東湖高(gāo)新開發區(qū)光(guāng)谷大(dà)道120号現代森林(lín)小鎮A座609室

強大(dà)到無法想象,Excel居然可(kě)以實現數據獲取和(hé)硬件實時(shí)控制

發布時(shí)間:2018-10-25 浏覽次數:394次

近日,小編聽(tīng)聞,Excel還(hái)可(kě)以用(yòng)來(lái)作數據獲取和(hé)硬件實時(shí)控制……

What?

在驚歎之餘,更多(duō)的(de)是懷疑:Excel真能做(zuò)數據獲取和(hé)硬件實時(shí)控制?即使能行又有什(shén)麽實用(yòng)價值?

帶著(zhe)驚歎和(hé)懷疑,小編查到了(le)大(dà)量的(de)資料。

事實證實了(le)小編的(de)out,Excel實現這(zhè)些功能全無壓力。

這(zhè)裏爲大(dà)家分(fēn)享其中一篇8年前發表在ISA Transactions上的(de)文章(zhāng),一起開開眼界。

小編相信,絕大(dà)多(duō)數讀者并不會有使用(yòng)Excel進行數據采集和(hé)硬件控制的(de)需求。此文的(de)價值在于給我們的(de)一個(gè)啓示:如此複雜(zá)的(de)功能都能實現,日常工作中還(hái)有什(shén)麽是不能通(tōng)過Excel實現的(de)?

原文參見ISA Transactions 49 (2010) 264_269,文章(zhāng)标題《Data acquisition and real-time control using spreadsheets: Interfacing Excel with external hardware》。

文中介紹了(le)在馬德裏歐洲大(dà)學使用(yòng)的(de)兩款實驗室教學電子表格,用(yòng)于進行數據采集和(hé)硬件控制的(de)演練,幫助學生直觀高(gāo)效地掌握教學内容。

表格功能通(tōng)過兩個(gè)插件實現:Excel Daq數據獲取插件和(hé)Excel PID實時(shí)控制插件。

話(huà)不多(duō)說,直接上工作原理(lǐ)。

首先,插件開發者使用(yòng)Excel VBA語言編寫驅動程序,驅動程序通(tōng)過通(tōng)訊協議(yì)在寄存器的(de)信息讀取信息,從而實現Excel和(hé)外部硬件的(de)數據傳輸。Excel工作表、VBA代碼、驅動程序和(hé)硬件之間的(de)關系如下(xià)圖1所示:

圖1:Excel與硬件接口連接結構圖

Excel Daq與Advantech PCI數據采集闆共同完成數據采集的(de)工作。

一方面,使用(yòng)特定的(de)VBA代碼作爲驅動程序的(de)前端來(lái)控制數據采集闆。另一方面,通(tōng)過VBA開發定制程序,将測量數據直接導入到Excel工作表中,執行任務。如:篩選獲得(de)的(de)數據、執行控制器代碼并将命令發送給執行器,以及自動繪制圖表。

通(tōng)過VBA控件的(de)組合設計,實現與用(yòng)戶的(de)交互。如圖2所示,Excel Daq用(yòng)戶界面有一個(gè)簡單的(de)對(duì)話(huà)框,通(tōng)過啓用(yòng)通(tōng)道、選擇增益和(hé)采樣速率來(lái)配置數據采集闆。

圖2:Excel-Daq應用(yòng)程序用(yòng)戶界面

圖3爲Excel測試程序的(de)界面,該實用(yòng)程序允許對(duì)硬件功能進行驗證,并進行簡單的(de)數據采集試驗。通(tōng)過用(yòng)戶界面,用(yòng)戶可(kě)以選擇輸入通(tōng)道、電壓範圍、并設置采樣周期。該工具還(hái)允許選擇輸入正弦、正方形和(hé)鋸齒波形,其中的(de)最大(dà)值和(hé)最小值可(kě)以通(tōng)過滑塊進行調整。

圖3:Excel設備測試工具

當構建完模拟輸入和(hé)輸出功能後,下(xià)一步則是在Excel 中建立循環執行控制。

在實時(shí)控制中,輸入輸出和(hé)任務控制是需要一定的(de)同步性和(hé)實時(shí)性,同步通(tōng)常通(tōng)過使用(yòng)輪詢技術、外部中斷和(hé)軟件定時(shí)器來(lái)實現。由軟件定時(shí)器驅動的(de)控制任務遵循圖4所示的(de)方案。

圖4:定時(shí)驅動器控制任務

計時(shí)器根據編程的(de)采樣間隔周期性地觸發一個(gè)回調函數,用(yòng)于讀取輸入、運行控制器代碼和(hé)命令輸出。使用(yòng)同樣的(de)方式,完成與用(yòng)戶的(de)交互。Excel-PID應用(yòng)程序用(yòng)戶界面如圖5所示:

圖5:Excel-PID應用(yòng)程序用(yòng)戶界面

在完成所有數據采集和(hé)設備控制程序開發後,下(xià)一步則将所有組件整合在一起,使用(yòng)圖形化(huà)界面來(lái)控制程序即可(kě)。

原文包含代碼等更詳細的(de)内容,感興趣的(de)讀者可(kě)以查閱。

強大(dà)到無法想象,Excel值得(de)學好、用(yòng)好