無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中的連通支配集求解算法
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:本文介紹了一種采用MATLAB及CCS對(duì)異步電機(jī)無(wú)速度傳感器交流調(diào)速系統(tǒng)進(jìn)行調(diào)試的方法。應(yīng)用MATLAB語(yǔ)言強(qiáng)大的分析能力和繪圖功能,與DSP高速運(yùn)算的優(yōu)勢(shì)相結(jié)合,在自行搭建的無(wú)傳感器矢量控制系統(tǒng)平臺(tái)進(jìn)行了調(diào)速實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明,采用Matlab調(diào)試及直接目標(biāo)代碼生成的方法能避免傳統(tǒng)計(jì)算機(jī)模擬的復(fù)雜編程過(guò)程,減少了工作量,有助于提高系統(tǒng)的綜合效率, 且能夠保持系統(tǒng)良好的動(dòng)靜態(tài)調(diào)速控制性能。
1. 引言
Matlab 是一個(gè)強(qiáng)大的分析、計(jì)算和可視化工具,特別適用于控制系統(tǒng)的分析和模擬,但由于其依賴(lài) 的平臺(tái)是計(jì)算機(jī)及其CPU,因而由于CPU 系統(tǒng)功耗的原因,使得MATLAB 程序的執(zhí)行速度相對(duì)于高速信 號(hào)的輸入/輸出顯得很慢,遠(yuǎn)不能滿(mǎn)足實(shí)時(shí)信號(hào)處理的要求,而DSP 就其軟件的編程能力而言,與單片機(jī) 及計(jì)算機(jī)的CPU 的編程設(shè)計(jì)方法有類(lèi)似之處,但DSP 比單片機(jī)的運(yùn)算速度快得多,又比CPU 的功耗及 設(shè)計(jì)復(fù)雜度低得多,但是其分析和可視化能力遠(yuǎn)不及Matlab,開(kāi)發(fā)過(guò)程比較復(fù)雜。不過(guò),目前有一種新 的技術(shù),可以將DSP 和Matlab 兩者密切結(jié)合起來(lái),充分利用兩者的特長(zhǎng),有力的促進(jìn)控制系統(tǒng)的實(shí)現(xiàn)。
伺服驅(qū)動(dòng)裝置是印刷機(jī)無(wú)軸傳動(dòng)[3]控制系統(tǒng)中重要的組成部分,國(guó)內(nèi)大部分產(chǎn)品是采用帶速度傳感器 的專(zhuān)用變頻器調(diào)速,控制精度不高[4],而國(guó)外的產(chǎn)品價(jià)格又非常昂貴,由此,本文自行開(kāi)發(fā)了一套基于PI 調(diào)節(jié)器的無(wú)速度傳感器矢量控制系統(tǒng),并且在自行搭建的實(shí)驗(yàn)平臺(tái)進(jìn)行了調(diào)速實(shí)驗(yàn),在實(shí)驗(yàn)過(guò)程中,運(yùn)用 了Matlab 與DSP 混合編程的調(diào)試方法,實(shí)驗(yàn)結(jié)果表明,采用Matlab 調(diào)試及直接目標(biāo)代碼生成的方法能 避免傳統(tǒng)計(jì)算機(jī)模擬的復(fù)雜編程過(guò)程,減少了工作量,有助于提高系統(tǒng)的綜合效率, 且能夠保持系統(tǒng)良好 的動(dòng)靜態(tài)調(diào)速控制性能,很好地滿(mǎn)足了印刷機(jī)無(wú)軸傳動(dòng)控制系統(tǒng)的要求。
2. 無(wú)速度傳感器矢量控制系統(tǒng)介紹
由于采用高性能的矢量控制方法且缺省了速度傳感器,那么如何準(zhǔn)確的獲取轉(zhuǎn)速信息,且保持伺服系 統(tǒng)較高的控制精度,滿(mǎn)足實(shí)時(shí)控制的要求,也就成為本課題研究的重要方向。在這里我們采用PI 自適應(yīng)控 制方法 [9] ,利用在同步軸系中q 軸電流的誤差信號(hào)實(shí)現(xiàn)對(duì)電機(jī)速度的估算 [9-10] ,整體結(jié)構(gòu)如圖1 所示。 角速度給定值ω*與推算角速度反饋值ω 的誤差送入速度調(diào)節(jié)器,速度調(diào)節(jié)器的輸出即為電磁轉(zhuǎn)矩的給定 值te*,由iq1 = LrTe/PmLmФd2 可以計(jì)算出電流的q 軸分量給定值iq1*,當(dāng)q 軸電流沒(méi)達(dá)到設(shè)定值時(shí),可由 Rs 產(chǎn)生的q 軸電壓和ω1σLs 產(chǎn)生的d 軸電壓來(lái)調(diào)節(jié)。因此,iq1*與定子電流q 軸分量的實(shí)際值iq1 的誤差 信號(hào)送入PI 調(diào)節(jié)器調(diào)節(jié)器的輸出 uq1’為定子電流q 軸分量誤差引起定子電壓q 軸分量的調(diào)節(jié)量。
圖1 算法原理結(jié)構(gòu)框圖
其中速度推算模塊以不含有真實(shí)轉(zhuǎn)速的轉(zhuǎn)子磁鏈方程以及坐標(biāo)變換方程作為參考模型,以含有待辨識(shí) 轉(zhuǎn)速的PI 自適應(yīng)律為可調(diào)模型,以定子電流轉(zhuǎn)矩分量作為比較輸出量,采用比例積分自適應(yīng)律進(jìn)行速度估 計(jì),經(jīng)過(guò)PI 調(diào)節(jié)后,輸出量就是待求的電機(jī)轉(zhuǎn)速。這種方法計(jì)算量小,結(jié)構(gòu)簡(jiǎn)單,容易實(shí)現(xiàn)。
3. Matlab 與DSP 混合編程的調(diào)試方法
在傳統(tǒng)的開(kāi)發(fā)過(guò)程中,總是先用MATLAB 進(jìn)行仿真。當(dāng)仿真結(jié)果滿(mǎn)意時(shí)再把算法修改成C/C++語(yǔ) 言, 再在硬件的DSP 目標(biāo)板上實(shí)現(xiàn)。發(fā)現(xiàn)偏差,需要再用Matlab 對(duì)算法進(jìn)行修正,再在DSP 上編寫(xiě)修 正的算法程序。如此過(guò)程反復(fù)進(jìn)行,在DSP 的開(kāi)發(fā)工具、Matlab 工作空間之間來(lái)回多次切換,非常不 便,當(dāng)系統(tǒng)比較復(fù)雜時(shí),還需要分步驗(yàn)證各個(gè)中間結(jié)果和最終結(jié)果。
如果能夠把Matlab 和DSP 集成開(kāi)發(fā) 環(huán)境CCS 及目標(biāo)DSP 連接起來(lái),利用Matlab 的分析能力來(lái)調(diào)試DSP 代碼,那么操作TI DSP 的存儲(chǔ)器 或者寄存器就可以像操作Matlab 變量一樣簡(jiǎn)單。工具包Matlab Link for CCS Development Tools 的 使用,可以使上述問(wèn)題迎刃而解,利用此工具箱,在Matlab 環(huán)境下,就可以完成對(duì)CCS 的操作,即整 個(gè)目標(biāo)DSP 對(duì)于Matlab 像透明的一樣,所有操作只利用Matlab 命令和對(duì)象來(lái)實(shí)現(xiàn),簡(jiǎn)單、方便、 快 捷。以下用調(diào)試上述無(wú)速度傳感器矢量控制系統(tǒng)的例子來(lái)說(shuō)明Matlab-DSP 集成開(kāi)發(fā)環(huán)境在控制系統(tǒng)中的 應(yīng)用。 在Matlab 命令窗口中輸入Simulink, 打開(kāi)Simulink 模塊窗,建立異步電動(dòng)機(jī)矢量控制變頻調(diào)速系 統(tǒng)的模型[12],如圖2 所示,結(jié)構(gòu)簡(jiǎn)單明了,全部實(shí)現(xiàn)模塊化,容易擴(kuò)展,可以根據(jù)實(shí)際需要,改變每一模 塊的參數(shù)。
圖2 算法原理結(jié)構(gòu)框圖
接下來(lái)設(shè)置仿真參數(shù)和Real-Time Workshop 選項(xiàng),編譯仿真模型。并利用Matlab Link for CCS Development Tools 建立與目標(biāo)DSP 的連接。利用CCSLink 工具 ,可以把數(shù)據(jù)從CCS 中傳送到 Matlab 工作空間中,也可以把Matlab 中的數(shù)據(jù)傳送到CCS 中,而且通過(guò)RTDX(實(shí)時(shí)數(shù)據(jù)交換技 術(shù)),可以在Matlab 和實(shí)時(shí)運(yùn)行的DSP 硬件之間建立連接,在它們之間實(shí)時(shí)傳送數(shù)據(jù)而不使正在DSP 上 運(yùn)行的程序停止,這項(xiàng)功能可以在程序運(yùn)行期間為我們提供一個(gè)觀察DSP 實(shí)時(shí)運(yùn)行狀態(tài)的窗口,大大簡(jiǎn)化 了調(diào)試工作。Matlab、CCSlink、CCS 和硬件目標(biāo)DSP 的關(guān)系如圖3 所示。
圖3 CCSlink 把Matlab 和CCS 及目標(biāo)DSP 連接在一起
我們可以在Matlab 中修改一個(gè)參數(shù)或變量,并把修改值傳遞給正在運(yùn)行的 DSP,從而可以實(shí)時(shí)地調(diào) 整或改變處理算法,并通過(guò)觀察探針點(diǎn)數(shù)據(jù)來(lái)調(diào)試程序。最后把 CCSlink 和Embedded Target for C2000 DSP Platform. 相結(jié)合,可以直接由調(diào)試好的Simulink 模型生成DSP2812 的可執(zhí)行代碼,并加載 到DSP 目標(biāo)板中,這樣我們就可以在同一的Matlab 環(huán)境中完成系統(tǒng)算法的設(shè)計(jì)、仿真、調(diào)試、測(cè)試,并 最終在DSP2812 目標(biāo)板上運(yùn)行。
4. 系統(tǒng)調(diào)試
實(shí)驗(yàn)臺(tái)硬件結(jié)構(gòu)[14-15]如圖4 所示,變頻器系統(tǒng)用DSP 作為運(yùn)算控制單元,用IPM 模塊作為功率電 路交換單元,用霍爾電流傳感器檢測(cè)電機(jī)三相電的兩相電流。DSP 控制器在對(duì)檢測(cè)到的電流信號(hào)進(jìn)行相應(yīng) 的運(yùn)算處理之后,將PI 控制算法產(chǎn)生的三對(duì)SVPWM 脈沖信號(hào),作用于IPM 來(lái)驅(qū)動(dòng)異步電機(jī),通過(guò)改變 輸出脈沖信號(hào)的頻率來(lái)實(shí)現(xiàn)異步電動(dòng)機(jī)的變頻調(diào)速。
圖4 系統(tǒng)整體結(jié)構(gòu)框圖
電機(jī)參數(shù)為:Rs=10Ω;Rr=5.6Ω;Ls =0.3119H;Lr=0.3119H;Lm = 0.297H;P = 4;J=0.001kg.m2
通過(guò)DSP 與CCS 的連接,可在Matlab 環(huán)境下對(duì)目標(biāo)DSP 的存儲(chǔ)器數(shù)據(jù)進(jìn)行訪(fǎng)問(wèn),再利用Matlab 強(qiáng)大的分析和可視化工具對(duì)其數(shù)據(jù)進(jìn)行訪(fǎng)問(wèn),也可以實(shí)現(xiàn)對(duì)工程的編譯、鏈接、加載、運(yùn)行,設(shè)置斷點(diǎn)和 探點(diǎn),最后將滿(mǎn)意的調(diào)試結(jié)果生成的目標(biāo)代碼直接加載到實(shí)驗(yàn)臺(tái)上。轉(zhuǎn)速輸入設(shè)定為一階躍函數(shù),電機(jī)帶 額定負(fù)載運(yùn)行,獲得的動(dòng)態(tài)響應(yīng)曲線(xiàn)如下圖所示。
圖5 實(shí)驗(yàn)結(jié)果
由圖5 可見(jiàn),d-q 軸電壓電流及磁通角響應(yīng)曲線(xiàn)平穩(wěn),在動(dòng)態(tài)過(guò)程中,在Matlab 環(huán)境下[10]的電機(jī)轉(zhuǎn)矩和實(shí)際DSP 實(shí)驗(yàn)平臺(tái)下[11-13]的轉(zhuǎn)矩曲線(xiàn)基本一致,系統(tǒng)響應(yīng)快,且超調(diào)量小,只需0.6S 即可 達(dá)到穩(wěn)定。轉(zhuǎn)速的階躍響應(yīng)如圖5(d)所示,系統(tǒng)在電機(jī)起動(dòng)時(shí)有一定的波動(dòng),但是在PI 自適應(yīng)控 制器的作用下,只需0.5S 系統(tǒng)就可以達(dá)到穩(wěn)定狀態(tài),證明速度觀測(cè)器下的轉(zhuǎn)速能夠較好地跟蹤實(shí)際 速度變化,在穩(wěn)態(tài)時(shí)實(shí)際速度等于仿真速度值。
5. 結(jié)論
本文提出的Matlab 下的DSP 集成設(shè)計(jì)方法確實(shí)可行,實(shí)驗(yàn)證明:在此環(huán)境下可以完成對(duì)DSP 目標(biāo) 板的操作,包括訪(fǎng)問(wèn)DSP 存儲(chǔ)器和寄存器等,又可利用Matlab 的強(qiáng)大工具對(duì)DSP 存儲(chǔ)器中的數(shù)據(jù)進(jìn)行 分析和可視化處理,因此系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,調(diào)試工作量小,易于實(shí)現(xiàn)。同時(shí),具有一定自適應(yīng)能力的PI 速度 估算方法能夠?qū)﹄姍C(jī)轉(zhuǎn)速做出準(zhǔn)確的估計(jì),實(shí)驗(yàn)結(jié)果驗(yàn)證了此系統(tǒng)設(shè)計(jì)方案的正確性和可行性。