999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于CVI的數據庫與MATALAB應用

2020-03-02 07:42:44匡偉男袁鉀光
科技創新與應用 2020年5期

匡偉男 袁鉀光

摘? 要:利用CVI的平臺對SQLServer數據庫與MATALAB的調用,實現了數據的動態存儲與利用MATALAB對數據進行處理的功能。

關鍵詞:CVI;SQLSever;MATALAB;腳本;ActiveX控件

中圖分類號:TP311.5? ? ? ?文獻標志碼:A 文章編號:2095-2945(2020)05-0176-02

Abstract: This paper using CVI platform to call the SQL Server database and MATALAB, thus realizing the dynamic storage of data and the processing of data.

Keywords: CVI; SQLSever; MATALAB; Scripts; ActiveX controls

引言

在自動化生產中特別是在上位機的開發中,經常遇到一些場景需要對大量的數據進行儲存與處理。如果讓上位機自己開發底層的數據存儲與處理程序,則勢必會加大工作量,且“不專業”的數據處理方式可能會占用相當大的資源,使得正常處理流程受到影響。所以,本文從“專業的人”干“專業的事”角度出發,利用CVI 強大的支持庫對SQL Server與MATALAB進行調用來對數據進行處理。

1 利用CVI調用MATALAB與數據庫

LabWindows/CVI 是NI 開發的虛擬儀器開發平臺,包含了集成式開發環境、交互式編程方法、簡單直觀的圖形用戶界面設計和強大的圖表功能[1]。實現LabWindows/CVI 和MATLAB 調用的關鍵是其數據和命令的交換,LabWindows/CVI 和MATLAB都提供了與外部程序接口的組件[2],使得這種調用成為可能。

NI 的LabWindows/CVI SQL 工具包提供了一套簡單易用的工具,使用戶能夠快速鏈接本地或者遠程數據庫,并通過結構化查詢語言(SQL)編程,執行諸多常用數據庫操作[3]。本文是將利用SQL Server將數據庫建立在本地,通過CVI訪問所建立的數據庫,對數據庫進行簡單的操作。

在本文中,調用方法主要如下所示:

1.1 創建ActiveX支持庫調用MATALAB

在菜單欄選擇Tool-> Create ActiveX Controller->Matlab Application(Version 8.6) Type Library,然后根據向導選擇支持庫保存的文件路徑。完成后會在庫中自動生成一個MATALAB 2015b的支持庫和五個相關的拓展名為.c .fp .h .obj .sub的文件,將后綴為.fp的文件需要被添加到自己的工程目錄中。

1.2 利用CVI訪問SQL Server數據庫

SQL Server建立數據庫,創建用戶并創建一個新的表,在CVI中安裝SQL數據庫支持工具NILWCVISQL220,該工具包支持對多種數據庫的訪問與使用。

1.3 支持庫中的接口函數

接口函數是支持庫封裝的最基本函數,在應用中只需要按其要求調用,知悉其作用而不用去管內部實現過程。本文只給出幾個重要的接口函數的參數說明,其余的接口函數使用,讀者可調用函數面板查看使用指南。

(1)MLApp_NewDIMLApp,該函數創建一個Matlab的句柄。(2)MLApp_DIMLAppExecute,該函數執行一條Matlab命令。(3)MLApp_DIMLAppQuit,該函數退出Matlab。(4)DBInit,該函數對數據庫進行初始化操作。(5)DBConnect,該函數設置連接參數,指定數據庫類型,文件路徑,登錄id,密碼等。(6)DBBindColChar,該函數對數據庫中的列進行綁定。(7)DBFetchNext,該函數順序得到數據庫中的下一個記錄。

1.4 函數調用實例

在CVI上建立調用M腳本的運行環境,按照腳本語言編寫簡單的腳本,在CVI中調用。以下主要給出打開matalab與執行腳本的代碼,不對整個工程邏輯與子函數進行贅述。實現打開matalab功能,并最大化打開的matalab窗口。得到句柄后可進行對MATALAB的操作,運行單個命令函數代碼,如圖1所示。

本函數的調用在“運行腳本”的回調函數中,其中函數RunMatlabCommand為主要對1.3節函數DIMLAppExecute封裝。

由執行結果可知,本工程順利執行腳本中所寫腳本,畫出了3D測試效果圖,實現了由CVI調用matalab的過程。

2 利用CVI混合調用數據庫與MATALAB

2.1 建立工程

將上述庫建到同一個工程中,預期實現由CVI程序產生一個正弦波曲線數據,將產生的數據保存到文件中,并將保存的文件的路徑與日期寫到建立的數據庫中,在matalab中實現對曲線數據的重繪。

2.2 實現過程

在TABLE控件中,建立其點擊的回調函數,在回調函數的實現中獲取點擊處的單元格的值,此值為一個文件名,將此文件名調用MATALAB命令行輸入到MATALAB中,預先建好一個M腳本文件,寫好需要畫圖的腳本實現,只需將腳本中的參數由命令行中先指定即可實現預期效果。重要的函數實現如圖2所示。

2.3 實現結果

可以看到點擊一個文件名時MATALAB自動的對數據進行重繪,繪制出來的圖像與預期一致,如圖3所示。

3 結束語

通過這種混合調用的方式,能夠大大減少工作量,也能夠讓工作變得更加直觀與靈活。本文只介紹了CVI對數據存儲與處理兩方面的軟件簡單調用,讀者可在本文基礎上進行更深入的使用或是對其它需要的軟件進行調用。

參考文獻:

[1]王曉崗,吳得光.LabWindows/CVI環境下調用Excel文檔的實現方法[J].甘肅科學學報,2013,25(2):101-104.

[2]劉君華.基于LabWindows/CVI的虛擬儀器設計[M].北京:電子工業出版社,2003.

[3]蘇少雄,鄭賓.LabWindows/CVI下基于ActiveX技術的Excel調用[J].測控技術,2018,37(5):128-131.

主站蜘蛛池模板: 国产在线精彩视频二区| 久久夜色精品| 亚洲AⅤ综合在线欧美一区| 亚洲日韩国产精品综合在线观看| 国产女人18毛片水真多1| 午夜欧美在线| 91精品国产91久无码网站| 久草视频精品| 成人av专区精品无码国产| 亚洲国产精品VA在线看黑人| 国产永久免费视频m3u8| 国产在线小视频| 国产成人啪视频一区二区三区| 亚洲福利视频一区二区| 日韩一区精品视频一区二区| 午夜限制老子影院888| 亚洲国产中文在线二区三区免| 国产精品三级专区| 1级黄色毛片| 日韩中文无码av超清| 午夜福利在线观看成人| 五月综合色婷婷| 国产午夜福利亚洲第一| 91色在线观看| 亚洲一区第一页| 亚洲无码高清免费视频亚洲 | 亚洲美女操| 欧美一区福利| 亚洲成a∧人片在线观看无码| 999福利激情视频| 欧美A级V片在线观看| 91探花在线观看国产最新| 最新国产在线| 2021国产精品自产拍在线| 97免费在线观看视频| 亚洲天堂区| 91成人在线观看视频| 人妻一本久道久久综合久久鬼色| 国产精品视频系列专区| 成人毛片免费观看| 国产亚洲欧美日本一二三本道| jizz国产视频| 国产成人久久777777| 国产免费怡红院视频| 亚洲无码91视频| 高清码无在线看| 欧美三级不卡在线观看视频| 国产99久久亚洲综合精品西瓜tv| 亚洲国产综合第一精品小说| 国产91成人| 情侣午夜国产在线一区无码| 最新日本中文字幕| 久久91精品牛牛| 99免费视频观看| 亚洲天堂网在线观看视频| 日本欧美在线观看| 欧美中出一区二区| 亚洲中文久久精品无玛| 伊大人香蕉久久网欧美| 伊人久久青草青青综合| 国产va欧美va在线观看| 麻豆AV网站免费进入| 国产91久久久久久| 成人精品免费视频| 九月婷婷亚洲综合在线| 亚洲国产成人精品无码区性色| 欧美精品在线免费| 亚洲成人免费在线| 69综合网| 国产在线欧美| 香蕉在线视频网站| 国产综合在线观看视频| 国产在线八区| 欧美在线精品怡红院| 九九久久99精品| 成人夜夜嗨| 极品尤物av美乳在线观看| 国产第四页| 欧美日韩国产系列在线观看| 国产在线观看91精品亚瑟| a级毛片在线免费| 97se亚洲综合在线韩国专区福利|