亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于LabVIEWd的xPC—Target人機(jī)界面的研究綜述

        2016-10-11 12:58:50袁威
        科技視界 2016年24期

        袁威

        【摘 要】針對(duì)實(shí)時(shí)仿真器xPC傳統(tǒng)界面單一;難操作;不友好和不能獨(dú)立脫離Simulink運(yùn)行問題,本文分析基于LabVIEW開發(fā)出一種能夠解決以上問題的人機(jī)界面。探討了xPC實(shí)時(shí)仿真平臺(tái)界面的開發(fā)原理,分別對(duì)xPC的接口函數(shù)API、LabVIEW的調(diào)用庫函數(shù)節(jié)點(diǎn)和界面實(shí)現(xiàn)過程及原理進(jìn)行詳細(xì)分析,并且在C語言環(huán)境開發(fā)編寫加載和釋放API的DLL文件。最后LabVIEW通過調(diào)用API構(gòu)建xPC仿真平臺(tái)實(shí)時(shí)控制功能的圖形化界面,分析表明利用LabVIEW開發(fā)的界面與xPC自帶的傳統(tǒng)界面相比,更友好,美觀,易操作并能脫離MATLAB/Simulink運(yùn)行,具有一定的工程實(shí)踐意義。

        【關(guān)鍵詞】xPC Target;LabVIEW;Simulink;API;監(jiān)控界面

        【Abstract】Because the traditional interface of real-time simulator xPC is single, difficult to operate, not friendly and cannot run without Simulink, the intention of this paper is to develop a Man-interface to solve the above problems based on LabVIEW. The paper discusses the development principle of the interface of xPC hardware simulation platform. The interface functions of API, library function node of LabVIEW, the process and principle of the interface are analyzed in detail, and the xPCInitAPI and xPCFreeAPI dynamic link library are developed to achieve the function of loading and unloading of .DLL files in C language environment. Finally, the graphical interface of real time control function of xPC simulation platform is constructed by calling API. The analysis show that the use of LabVIEW development of the interface is friendlier and more beautiful than the traditional interface of xPC, and easy to operate. Most importantly, it can run without MATLAB/Simulink and has a certain practical significance.

        【Key words】xPC Target; LabVIEW; Simulink; API; Monitor interface

        0 引言

        隨著智能電網(wǎng)的發(fā)展,對(duì)電網(wǎng)的自動(dòng)化水平提出了新要求。由于計(jì)算機(jī)信息技術(shù)在電力行業(yè)越來越廣泛的應(yīng)用,管理者可以通過監(jiān)控系統(tǒng)監(jiān)控變配電現(xiàn)場的運(yùn)行工況,并根據(jù)實(shí)際情況可以對(duì)電網(wǎng)進(jìn)行遠(yuǎn)程操作。這給管理者帶來了極大的便利,但是xPC傳統(tǒng)的控制界面單一、不友好、操作繁瑣和不能建立脫離Matlab/Simulink環(huán)境的控制程序的缺點(diǎn),給現(xiàn)代工業(yè)測(cè)量或控制系統(tǒng)帶來不便。

        針對(duì)以上問題本文探討利用LabVIEW的強(qiáng)大虛擬儀器控件優(yōu)點(diǎn)開發(fā)出豐富、美觀、更友好、操作簡單的界面。通過LabVIEW中的調(diào)用庫函數(shù)節(jié)點(diǎn)對(duì)xPC Target中的API函數(shù)進(jìn)行調(diào)用開發(fā)圖形化界面。通過LabVIEW中的調(diào)用庫函數(shù)節(jié)點(diǎn)對(duì)xPC Target中的API函數(shù)進(jìn)行調(diào)用,與常規(guī)基于Windows系統(tǒng)開發(fā)實(shí)時(shí)監(jiān)控系統(tǒng)及采用MathWorks公司自己提供的Matlab中的GUIDE工具進(jìn)行開發(fā)(通過調(diào)用API函數(shù))的界面相比,該方法減少了開發(fā)成本及簡化了開發(fā)過程,且提高了界面的友好性[1]。同時(shí)解決了xPC Target和LabVIEW實(shí)時(shí)通信難題。

        1 xPC Target

        xPC Target是MathWorks公司基于RTW體系框架的實(shí)時(shí)仿真平臺(tái),通過Simulink搭建模型,通過Real-Time Workshop和Stateflow Code自動(dòng)生成代碼,將Simulink模型生成代碼實(shí)時(shí)運(yùn)行在低成本的X86或是兼容的PC機(jī)實(shí)時(shí)內(nèi)核中。并且xPC Target擁有外圍I/O,可以通過它驅(qū)動(dòng)外圍系統(tǒng)或采集。xPC Target通過以太網(wǎng)或串口的連接實(shí)現(xiàn)和宿主機(jī)的通信,但其宿主機(jī)的界面單一,所以本文采用LabVIEW調(diào)用DLL開發(fā)友好實(shí)時(shí)監(jiān)控界面,具有一定的現(xiàn)實(shí)意。

        2 xPC Target的API

        API全稱是應(yīng)用程序編程接口(Application Programming Interface),xPC Target的API是MathWorks公司在開發(fā)xPC Target提供的應(yīng)用程序接口之一,用戶可以通過調(diào)用這種接口可以對(duì)實(shí)時(shí)仿真器xPC Target進(jìn)行控制并且可脫離Simulink環(huán)境運(yùn)行。通過LabVIEW調(diào)用API開發(fā)的界面更友好和直觀[2]。開發(fā)出的軟件運(yùn)行在另一臺(tái)PC機(jī)上即可以對(duì)xPC Target中運(yùn)行的系統(tǒng)實(shí)現(xiàn)遠(yuǎn)程操作。

        3 LabVIEW的程序接口

        LabVIEW是美國國家儀器(NI)公司推出的一種程序開發(fā)軟件,和C語言開發(fā)環(huán)境類似,但它和別的開發(fā)軟件有顯著的區(qū)別,別的開發(fā)軟件是采用基于本文的語言代碼,編程難度較大,而LabVIEW是基于圖形化語言編寫程序,它提供很多儀器儀表類似的控件并且擁有美化界面的功能,因此是現(xiàn)代工業(yè)和學(xué)術(shù)研究機(jī)構(gòu)用于開發(fā)測(cè)量或控制系統(tǒng)的理想選擇。LabVIEW具有強(qiáng)大的外部接口能力,該軟件提供了調(diào)用庫函數(shù)節(jié)點(diǎn)(Call Library Function)控件,可以通過該控件對(duì)xPC Target中的API的接口函數(shù)進(jìn)行調(diào)用,從而開發(fā)出實(shí)時(shí)仿真器xPC的圖形化界面[3]。

        4 開發(fā)LabVIEW界面原理

        MALAB公司提供的xpcapi.dll包含了所有的API接口函數(shù),還提供了源文件xpcintfree.c和頭文件xpcapi.h,這是用于開發(fā)加載API( xPCInitAPI)以及釋放API( xPCFreeAPI)的動(dòng)態(tài)鏈接庫。因此要通過LabVIEW開發(fā)出xPC的用戶監(jiān)控界面,首先通過Visual Studio 2013語言環(huán)境開發(fā)一個(gè)用于加載或釋放xpcapi.dll的DLL文件。然后把用于顯示加載API的動(dòng)態(tài)鏈接庫xPCInitAPI加載到LabVIEW的“調(diào)用庫函數(shù)節(jié)點(diǎn)”控件里面,加載API成功后,通過該控件即可方便選擇不同函數(shù)實(shí)現(xiàn)相應(yīng)的功能,當(dāng)程序結(jié)束后通過調(diào)用動(dòng)態(tài)鏈接庫xPCFreeAPI釋放API。當(dāng)在調(diào)用不同函數(shù)時(shí)一定要注意入口參數(shù)和出口參數(shù)的數(shù)據(jù)類型。

        實(shí)現(xiàn)整個(gè)用戶界面的過程:

        1)通過調(diào)用API中的int xPCInitAPI(void)函數(shù)進(jìn)行初始化,若初始化成功,該函數(shù)返回參數(shù)為1。

        2)通過調(diào)用int xPCOpenTcpIpPort(const char *ipAddress,const char *ipPort)實(shí)現(xiàn)宿主機(jī)和目標(biāo)機(jī)之間的網(wǎng)卡通信連接,入口參數(shù)Address是指xPC Target的地址,Port是端口號(hào),當(dāng)宿主機(jī)和目標(biāo)機(jī)連接成功后該函數(shù)返回參數(shù)為不為-1。當(dāng)然也可以調(diào)用別的函數(shù)實(shí)現(xiàn)串口通信(int xPCOpenSerialPort(int comPort,int baudRate)。

        3)通過調(diào)用void xPCLoadApp(int port,const char *pathstr,const char *filename)下載仿真系統(tǒng)的相關(guān)文件(.dlm)到xPC Target中,入口參數(shù)port為xPCOpenTcpIpPort連接成功后的返回參數(shù),參數(shù)pathstr為.dlm文件的路徑,filename是相應(yīng)的文件名。

        4)啟動(dòng)目標(biāo)機(jī)的應(yīng)用程序通過調(diào)用void xPCStartApp(int port),其入口參數(shù)為xPCOpenTcpIpPort連接成功后的返回參數(shù)。

        5)對(duì)xPC Target中程序進(jìn)行監(jiān)控。監(jiān)控包含對(duì)模型的參數(shù)進(jìn)行調(diào)整,和對(duì)數(shù)據(jù)的采集。

        (1)對(duì)運(yùn)行參數(shù)的調(diào)整,在xPC運(yùn)行的程序中每一個(gè)可調(diào)的參數(shù)都有一個(gè)唯一的ID值。可以通過int xPCGetParamIdx(int port,const char *blockName,const char *paramName),獲得相應(yīng)參數(shù)的ID后,即可通過void xPCSetParam(int port,int paramIdx,const char *paramValue)進(jìn)行參數(shù)的調(diào)整。

        (2)對(duì)數(shù)據(jù)的采集,同樣通過函數(shù)xPCGetParamIdx獲得其參數(shù)名的ID號(hào),然后通過函數(shù)double xPCGetSignal(int port,int sigNum)即可完成對(duì)數(shù)據(jù)的采集。

        6)當(dāng)要停止目標(biāo)應(yīng)用程序,可以通過調(diào)用函數(shù)void xPCStopApp(int port)即可停止目標(biāo)程序。其中入口參數(shù)為連接xPC Target成功后生成的返回參數(shù)。

        7)當(dāng)停止目標(biāo)應(yīng)用程序后,可以由于實(shí)踐中的需要,可以通過調(diào)用開始運(yùn)行的函數(shù)從新開始運(yùn)行程序。如無此需要可以通過調(diào)用void xPCUnloadApp(int port)對(duì)目標(biāo)機(jī)中的程序進(jìn)行卸載。并通過void xPCClose(int port)關(guān)閉端口釋放API。

        5 結(jié)語

        本文首先詳細(xì)解釋了xPC Target中API以及使用LabVIEW調(diào)用庫函數(shù)節(jié)點(diǎn)的原理及過程,并通過調(diào)用庫函數(shù)實(shí)現(xiàn)了xPC和LabVIEW的互聯(lián),解決了通信問題,充分利用了LabVIEW強(qiáng)大虛擬儀器的優(yōu)點(diǎn),該方法與傳統(tǒng)的xPC Target界面相比,更友好和直觀,同時(shí)和基于文本語言開發(fā)過程相比,開發(fā)難度小且周期短,可以用于對(duì)廣泛應(yīng)用在工業(yè)生產(chǎn)中的xPC Target進(jìn)行實(shí)時(shí)監(jiān)控。

        【參考文獻(xiàn)】

        [1]顏艷騰,葉周,張銳.搭建基于labview的xPC目標(biāo)實(shí)時(shí)仿系統(tǒng)控制平臺(tái)[J].電子設(shè)計(jì)工程,2015,23(3):70-71.

        [2]李丁夏.基于xPC Target的數(shù)據(jù)采集系統(tǒng)開發(fā)[D].吉林大學(xué),2013:8-17.

        [3]朱野,王旭永,陶建峰,閆述.實(shí)時(shí)控制系統(tǒng)平臺(tái)xPC與LabVIEW接口分析與應(yīng)用[J].上海交通大學(xué)學(xué)報(bào),2008,42(2):267-269.

        [責(zé)任編輯:王偉平]

        欧美婷婷六月丁香综合色| 亚洲中文字幕午夜精品| 日本精品一区二区三区试看| 色婷婷在线一区二区三区| 91精品国产91久久综合桃花| 国产成年无码久久久免费| 青春草在线视频精品| 久久爱91精品国产一区| 日韩中文字幕乱码在线| 亚洲一区二区三区麻豆| 久久中文字幕国产精品| 精品视频手机在线免费观看| 久久久极品少妇刺激呻吟网站| 丝袜美腿一区二区国产| 狠狠色丁香婷婷久久综合| 久久无码字幕中文久久无码 | 精品一区二区av在线| 亚洲国产精品av麻豆一区| 大量漂亮人妻被中出中文字幕| 亚洲综合日韩一二三区| 亚洲亚色中文字幕剧情| 欧美高清精品一区二区| 人妻少妇不满足中文字幕| 国产操逼视频| 国产自偷自偷免费一区| 亚洲av无码一区二区三区在线 | 久久久久久久99精品国产片| 国产精品青草久久久久婷婷| 久久精品成人91一区二区| 在线不卡中文字幕福利| 亚洲一区二区三区在线更新| 能看不卡视频网站在线| 久久一区二区三区少妇人妻| 色婷婷av一区二区三区久久| 又爽又黄又无遮挡的视频| 成人妇女免费播放久久久| 中文字幕亚洲乱码熟女在线萌芽| 美女窝人体色www网站| 精品女同一区二区三区不卡| 国产日产桃色精品久久久| 大地资源中文第3页|