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

網絡控制系統仿真平臺的研究

2008-04-12 00:00:00季曉靜楊智慧
現代電子技術 2008年6期

摘 要:網絡控制系統(Networked Control Systems,NCS)是計算機控制系統發展的趨勢,對于他的研究必須建立在仿真平臺的基礎上。介紹網絡控制系統仿真平臺建立的幾種方法,包括利用Truetime工具箱進行仿真,VC和Matlab通過引擎方式進行仿真和DLL方式進行混合編程方式,以上3種方法經過初步驗證是可以實現的。通過分析他們在應用范圍方面的不同,指出應該根據研究的需要選擇合適的方法。

關鍵詞:網絡控制系統;Truetime;C++與Matlab混合編程;仿真平臺

中圖分類號:TP393 文獻標識碼:A

文章編號:1004-373X(2008)06-090-03

Study on the Simulation Platform of Network Control System

ZHANG Fang,WU Bin,JI Xiaojing,YANG Zhihui

(School of Mechanical Electronic and Control Engineering,Beijing Jiaotong University,Beijing,100044,China)

Abstract:Network Control System(NCS) is the development direction of computer control system.To studyit,a platform must be built.in this paper,serveral ways of platform building are introduced,including using Truetime toolbox,using Matlab engine and VC,Matlab and VC DLL programming,the three methods are proved to be usdful.It analyses the differences in application field,and at present,suitable method should be chosen according to demand.

Keywords:network control system;Truetime;C++ and Matlab mixed programming;simulation platform

1 引 言

網絡控制系統(Network Control System,NCS),又稱網絡化的控制系統,即在網絡環境下實現的控制系統。

對于網絡控制系統的仿真,目前比較常用的有2種方法。第一種是純軟件仿真,即用Truetime工具箱搭建軟件平臺;第二種方法是引入實際網絡搭建仿真平臺。用Truetime工具箱建立網絡仿真平臺,可以根據需要選擇不同的網絡,設置不同的參數,由于真實網絡的加入,第二種方法能更逼真地仿真實際網絡控制系統,滿足網絡控制系統設計的需要。

2 Truetime工具箱

Truetime工具箱是瑞典Lund工學院的Dan Henriksson和Anton Cervin等學者開發的一種基于Matlab的實時控制與網絡控制仿真工具箱。TrueTime工具箱主要包括計算機模塊(TrueTime Kerne1)和網絡模塊(TrueTime Network)兩個模塊。

Truetime工具箱的安裝過程如下:

(1) 把Truetime工具箱文件夾拷到Matlab的安裝目錄/Toolbox下;

(2) 在Matlab中的set path下添加Truetime/Ttkernel;

(3) 在控制面版/系統/高級/環境變量中添加變量TTKERNEL,以及路徑(用戶變量和系統變量中都要加);

(4) Matlab/Toolbox/Local/Startsav中加如下命令:

addpath (getenv(′TTKERNEL′))

init_truetime;把文件更名為:startup.m

(5) 在Matlab中打開Matlabrc.m,并用SAVE Workplace to命令把文件命名為Matlab.mat;

(6) copy init_truetime to local floder;

(7) 安裝C++編譯器;

(8) make_truetime命令;

(9) truetime命令。

下面以模擬直流電機模型在網絡環境下被控制的過程為例,說明搭建網絡控制系統仿真平臺的過程。

此平臺由傳感器、控制器、執行器與干擾節點、通信網絡模塊以及被控對象組成。此平臺具體采用了4個TrueTime Kernel模塊與一個TrueTime Network模塊構成一個基于CANBUS總線的控制系統仿真模型,通信協議為TCP/IP協議,采用的是CSNMA/CD介質訪問方式。被控對象模型為連續系統模型,傳感器部分負責對其狀態進行采樣轉換為數字量,并將其采樣信息通過網絡傳送到控制器節點,控制器部分經過計算得到控制量輸出并通過網絡傳送到執行器節點,數字信號在執行器節點通過D/A轉換為模擬信號。干擾節點的作用是通過網絡給其自身發射信號,在模擬時,此干擾信號將占用一部分網絡寬度,使有用信號的傳輸環境發生變化;因為在實際的網絡中,不可能沒有干擾信號,且同時傳輸各種數據;由于各種信號共享網絡,使得網絡寬松或擁擠,這樣就發生數據碰撞,產生數據丟失,出現變化的時延等;在此仿真平臺中,干擾節點就是為達到此目的而設。不僅如此,在控制節點中還加入了一個高優先級的干擾信號,這是為了模擬控制環境的復雜性,在實際環境下,控制器很容易受外界信號的干擾,此干擾信號的設置就是用這個來模擬的。直流電機模型網絡控制系統結構圖如圖1所示。 圖1 直流電機模型網絡控制系統結構圖

通過對參數的設置,該網絡平臺可以模擬各種參數對網絡控制系統的影響,包括網絡傳輸速率、數據包大小、丟包、時延、采樣周期和時延等單一參數對控制系統的影響,還可以模擬存在干擾節點和干擾信號的網絡控制系統的調度問題。仿真結果如圖2所示。

3 C++與Matlab混合編程

Matlab是一個具有矩陣運算、結果可視化和數據處理等強大功能的科技應用優秀軟件。他集語言開發、Simulink動態系統仿真和大量的工具箱于一身,編程效率高,是應用十分廣泛的一種軟件。然而,由于Matlab程序是解釋執行的,因此程序運行效率較低。此外,由于他的開發平臺的局限性。用Matlab開發的程序,不能脫離Matlab運行環境,在處理具體應用時,又顯得靈活性不足,VC是微軟公司提供的Windows程序開發平臺,使用VC行開發的程序具有容易維護,界面友好,代碼效率高,執行速度快等一系列優點。因此,如果將Matlab和VC結合起來,不僅能大大縮短研發周期,還能有效地提高軟件的性能。

網絡控制系統仿真平臺的建立需要Simulink與VC++6.0進行接口。Simulink與VC應用程序接口一個顯著的特點就是Simulink仿真必須依賴于Matlab系統。Matlab提供引擎方式將Simulink同VC應用程序的編程結合起來。還可以用VC編寫DLL(動態鏈接庫文件),在Simulink的S-function里面調用,實現Simulink與VC++6.0的接口。

3.1 VC和Matlab通過引擎方式的混合編程

要通過引擎方式將Simulink與VC結合起來首先要掌握VC與Matlab通過引擎方式混合編程以及Simulink命令行仿真2方面的內容。

VC++6.0集成環境中建立Matlab引擎程序的方法:

(1) 建立項目工程。啟動VC++6.0集成環境,選擇File下拉式菜單中的New選項,可有3種類型的應用程序創建工程選擇。分別為MFC AppWizard(exe),Win32Application和Win32conso1e Application。選擇其中一種,在Project name編輯框中輸入項目名,按照項目向導完成項目工程創建。

(2) 設置編譯環境。選擇下拉式菜單Tools中的菜單項Options,選擇其中的Directories屬性頁,在其中的Show directories下拉式選項框中分別選擇Include Files和Library Files,在下部的編輯框中通過瀏覽分別添加如下路徑:

Include Fiels:Matlab根目錄\\\\extern\\\\include

Matlab根目錄\\\\extern\\\\include\\\\cpp

Library Fiels:Matlab根目錄\\\\extern\\\\lib

Matlab根目錄\\\\extern\\\\include

(3) 設置項目連接選項。選擇菜單Project中的子菜單Settings,選擇其中的屬性頁Link,在其中的Catogery下拉式選項框中選擇Input。在下部的Object Library modules編輯框中填寫:libeng.lib,lib-mx.1ib和libmat.1ib。

(4) 加入引擎頭文件。在準備使用Matlab引擎的類的cpp文件中,加入“#include \"engine.h\"”語句,并且在以后建立的要使用Matlab引擎的類中也注意加入上述語句。

在一般情況下,Simulink是類似框圖圖形化的仿真方法;而在通過引擎方式將Simulink同VC相結合時,仿真的每個操作是通過調用engEvalString執行一個用字符串表示的Matlab表達式(Simulink仿真命令)實現。因此,要掌握SimulinkVC混合編程,首先需要掌握Simulink的命令行仿真方式:

[t,x,y]=sim(′modelname′)

//利用對話框參數進行仿真,返回輸出矩陣;

[t,x,y]=sim(′modelname′,timespan,options,ut)//利用輸入參數進行仿真,返回輸出矩陣;

[t,x,y1,y2,...yn]=sim(′modelname′,timespan,options,ut)利用輸入參數進行仿真,返回逐個輸出。

3.2 DLL方式實現混合編程

網絡通訊采用客戶機/服務器模式,采用基于TCP的網絡傳輸協議,在系統開始通信時首先建立連接,之后一直保持該連接,進行數據的收發和通信。由TCP協議保證數據傳輸的可靠性和有序性。

網絡通信通過Winsock編程來實現,利用VC編寫一個動態鏈接庫模塊,對于通訊功能進行封裝。主要應包括以下幾個函數:

Net_connect():負責服務器/客戶機的初始化任務;并開啟兩個工作線程,一個負責發送數據,一個負責接收數據。

Net_writedata():該函數負責向數據發送緩沖區寫入數據。

Net_readdata():該函數負責從數據接收緩沖區。

Net_disconnect():結束工作線程,釋放網絡通信連接資源的,斷開網絡連接。

Sendthreadproc():監視數據緩沖區,當數據緩沖區數據發生改變時,首先判斷是否為結束標志,若不是,則通過網絡發送數據緩沖區內的數據;若為結束標志,則通過網絡發送結束標志,結束線程。

Receivethreadproc():監視網絡,當有數據傳送過來時,首先判斷是否為結束標志,若不是,則將其寫入數據緩沖區;若是結束標志,則結束工作線程。

該模塊中的函數封裝在動態鏈接庫中,可以在S-function中直接調用,這樣就將底層的網絡通信和上層的系統仿真分模塊進行處理,保證了程序具有清晰的結構和較好的可移植性。

4 結 語

網絡控制系統仿真平臺是網絡控制系統仿真的基礎。以上3種方法經過初步驗證是可以實現的。由于True-time工具箱仿真的方式是在理想的網絡環境下進行的仿真,具有通用性,但不完全符合實際網絡的情況,VC和Matlab混合編程的方法適合用來分析實際網絡對控制系統的影響。為了提高仿真的速度和運行效果,可以選用Simulink命令行的方式。

參考文獻

[1]蘇金明,劉宏,劉波.Matlab高級編程[M].北京:電子工業出版社,2005.

[2]劉維.精通Matlab與C/C++混合程序設計[M].北京:北京航空航天大學出版社,2005.

[3]楊高波.精通Matlab 7.0混合編程[M].北京:電子工業出版社,2006.

[4]董維國.深入淺出Matlab 7.x混合編程\\[M\\].北京:機械工業出版社,2005.

作者簡介 張 芳 女,1982年出生,山東東營人,北京交通大學碩士研究生。主要研究方向為網絡控制系統、網絡編程、嵌入式系統等。

吳 斌 女,1970年出生,福建人,副教授,北京交通大學碩士生導師。研究方向為自動控制和現代控制理論。

主站蜘蛛池模板: 亚洲最大看欧美片网站地址| 在线观看亚洲国产| 欧美日本在线一区二区三区| 99国产在线视频| 九色91在线视频| 国产精品乱偷免费视频| 国产日韩欧美视频| AV在线天堂进入| 中国一级特黄视频| AV在线天堂进入| 日本人妻一区二区三区不卡影院| 午夜爽爽视频| 9cao视频精品| 日韩欧美国产成人| 首页亚洲国产丝袜长腿综合| 91久久精品国产| 精品午夜国产福利观看| 黄网站欧美内射| 精品亚洲国产成人AV| 九九热视频精品在线| 精品无码国产一区二区三区AV| 国产精品尹人在线观看| 国产成人精品18| 国产小视频免费| 中文字幕人成人乱码亚洲电影| 一级高清毛片免费a级高清毛片| 亚洲第一网站男人都懂| 日韩欧美国产精品| 麻豆AV网站免费进入| 91精品国产91久久久久久三级| 伊人AV天堂| 92午夜福利影院一区二区三区| 在线看国产精品| 4虎影视国产在线观看精品| 美女被狂躁www在线观看| 久久久久青草大香线综合精品| 91啦中文字幕| 亚洲欧美精品一中文字幕| 午夜人性色福利无码视频在线观看 | 精品一区二区三区水蜜桃| 真实国产乱子伦高清| 亚洲Aⅴ无码专区在线观看q| 日韩福利视频导航| 六月婷婷精品视频在线观看| 九九热这里只有国产精品| 亚洲综合亚洲国产尤物| 67194在线午夜亚洲| 国产精品99久久久久久董美香| 国产美女一级毛片| A级全黄试看30分钟小视频| 国产精品极品美女自在线网站| 亚洲中文精品久久久久久不卡| 国产91小视频在线观看| 久久久久88色偷偷| 免费在线色| a级毛片网| 国产91小视频| 日本不卡在线| 午夜啪啪福利| 青青操国产视频| 日本亚洲成高清一区二区三区| 亚洲中文字幕无码爆乳| 国产97视频在线观看| 啊嗯不日本网站| 欧美中文字幕在线播放| 欧美日韩中文字幕在线| 在线欧美一区| 亚洲国产中文精品va在线播放| 亚洲男人天堂久久| 国产综合色在线视频播放线视| 国产精品成人免费视频99| 91人妻日韩人妻无码专区精品| 日韩精品久久久久久久电影蜜臀| 极品国产在线| 欧洲精品视频在线观看| 又爽又大又黄a级毛片在线视频 | a级免费视频| 美女被躁出白浆视频播放| 免费视频在线2021入口| 国产美女丝袜高潮| 国产成人精品2021欧美日韩| 久久semm亚洲国产|