《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 自動控制系統綜合分析軟件的設計
自動控制系統綜合分析軟件的設計
劉 莉,張 健,李煥洲
四川師范大學 物理與電子工程學院,四川 成都 610066
摘要: 集成自動控制系統常用的分析方法,在Matlab的基礎上開發軟件系統,可以對控制系統進行時域、根軌跡與頻域的分析。該軟件不僅可以作為自動控制原理課程教學強有力的補充,還可以為工程技術人員提供友好的分析實際自動控制系統的軟件環境,避開學習Matlab,將更多的精力用于工程實踐上。
Abstract:
Key words :

摘 要:集成自動控制系統常用的分析方法,在Matlab的基礎上開發軟件系統,可以對控制系統進行時域、根軌跡與頻域的分析。該軟件不僅可以作為自動控制原理課程教學強有力的補充,還可以為工程技術人員提供友好的分析實際自動控制系統的軟件環境,避開學習Matlab,將更多的精力用于工程實踐上。
關鍵詞:自動控制系統;分析軟件; Matlab

  對于實際的自動控制系統來說,無論用于分析還是設計,都不可避免地要對其進行計算與作圖。在經典的控制理論中,時域、根軌跡與頻域的分析方法各有千秋,很多開發環境中也有相關的算法程序,比如Matlab[1]。Matlab是美國MathWorks公司開發的一種跨平臺的用于矩陣數值計算和可視化編程軟件,該軟件中匯集了當前最新的數學算法庫,編程風格接近數學語言描述,計算精度高,尤其在繪圖方面功能十分強大,并且在Matlab基礎上開發的程序不依賴于計算機和操作系統類型。但是要利用這些算法進行分析自動控制系統時,哪怕只是一個簡單的自控系統對象,使用者都必須熟悉Matlab的編程環境并進行代碼的編制,這大大影響了學習與工作的效率。如果能夠把所有方法集成到一個軟件環境里,那么無論是在自動控制原理課程教學中,還是實際的工程應用中,都能給使用者帶來極大的方便。
  對此類分析軟件的開發,過去為了充分利用C++Builder或Visual C++等可視化編程環境在開發可視化界面的優勢和Matlab在繪圖方面的強大功能以及豐富的數學算法庫,常常采用二者進行混合編程[2-6]。但是無論采用何種接口方式,程序運行的速度都很難令人滿意。尤其是混合編程會忽略Matlab中的任何錯誤,這對調試程序非常不利,嚴重影響開發的進度。
  最近幾年,隨著Matlab的圖形用戶界面開發環境GUI(Graphical User Interface)的不斷完善,其在開發交互式用戶界面上的可操作性幾乎能夠同目前流行的Visual C++、C++  Builder等開發環境比擬。雖然Matlab圖形用戶界面編程環境中可供選的控件數量還不是很多,但是對于開發常規的實用分析軟件來說,這些已經足夠了。而且Matlab中已經包含了很多數學算法與繪圖函數,大大縮短了軟件的開發周期。
  本自動控制系統輔助分析軟件(ACAAS)是在Matlab 7.1的基礎上開發的,它集成了自動控制系統常用的分析方法,可以對控制系統進行時域、根軌跡與頻域的分析。
1 Matlab GUI
   在Matlab中有一個guide工具[7],即Matlab的圖形用戶界面GUI的開發環境,該工具使編程者可以通過選擇與布局GUI控件來生成GUI應用,并對所選擇的控件進行名字、顏色與文本等屬性的編輯。
1.1 guide工具
   在Matlab主窗口中點擊“guide”快捷方式,或者在命令行輸入“guide”,均可進入Matlab的GUI開發環境。
1.2 guide控件
  Matlab的GUI開發環境中可供選擇的主要控件如表1所示。

     當用戶需要用到某種控件時,只需要用鼠標選中該控件,然后在如圖1所示的設計區點擊鼠標即可產生此控件。雙擊控件,進入“Property Inspector”,可以編輯控件的顏色、名稱等屬性。在控件上單擊鼠標右鍵,從彈出菜單中選擇“View Callback”-“Callback”,可以對控件的觸發事件進行編程。

1.3 編程步驟
   (1)確定需要在GUI中實現的功能以及每部分功能要用到的函數;
   (2)進入“guide”開發環境,選擇相關的控件,并調整好各個功能模塊的合理布局;
   (3)根據需要改變控件的屬性,如字體、顏色等;
   (4)保存“.fig”文件,同時系統會自動生成該圖形界面文件對應的“.m”文件;
   (5)在 “.m”文件編寫控件的回調函數,以實現相應的功能。
2 輔助分析軟件系統的設計
2.1 ACAAS 軟件主要功能模塊
  ACAAS軟件的主要功能結構圖如圖2所示。  

2.2系統主界面
  該ACAAS系統主要包括自動控制系統模型輸入與系統分析,可以以單幅圖和單幅多道圖的形式對分析結果進行顯示。主菜單中包括“文件”、“模型輸入”、“分析方法”、“繪圖方式”等選項,每個主菜單下都有相關的子菜單,用戶可以根據需要在各個功能菜單中方便地進行切換。在輸入系統模型時,其下面的文本框中顯示輸入的提示信息;而分析結果的圖形得到后,用戶還可以在該文本框中看到此自動控制系統閉環傳遞函數的閉環極點情況,得到系統穩定性方面的信息。在“文件”菜單中,用戶可以對分析結果進行保存與打印,也可以打開以前保存的結果。主界面如圖3所示。

2.3系統模型輸入
  系統給用戶提供了3種模型輸入形式[8]:零極點形式、反饋控制結構形式、分子分母多項式形式,用戶可以根據已知的自動控制系統傳遞函數,在“系統模型”菜單項中選擇最方便的輸入形式。在零極點模型輸入時,系統的零極點可能為復數,按“-5+2j”的形式輸入即可。而反饋控制結構模型和分子分母多項式模型中,輸入參數均為實數。模型輸入界面如圖4所示。

  圖4中,由反饋控制結構多項式系統形式輸入的自動控制系統傳遞函數為:
   

   而由閉環多項式系數模型與閉環零極點模型輸入的自動控制系統傳遞函數分別為:
  

  以零極點模型輸入界面為例,下面是主要的程序代碼。
     function ZPMenuItem_Callback(hObject, eventdata, handles)
  global MdlValue        %定義全局變量
     MdlValue=1;         %定義模型控制字:1-零極點模型,2-多項式模型,3-反饋控制結構模型
           %顯示零極點模型的輸入部件組
  set(findobj(gcf,'Tag','MDLuipanel'),'Title','閉環零極點模型');
  set(findobj(gcf,'Tag','text1'),'Visible','off');
  set(findobj(gcf,'Tag','text3'),'Visible','on');
  set(findobj(gcf,'Tag','text2'),'Visible','on');
  set(findobj(gcf,'Tag','text4'),'Visible','on');
  set(findobj(gcf,'Tag','GFZedit'),'Visible','off');
  set(findobj(gcf,'Tag','HFZedit'),'Visible','on');
  set(findobj(gcf,'Tag','GFMedit'),'Visible','on');
  set(findobj(gcf,'Tag','HFMedit'),'Visible','on');
            %給零極點模型的輸入部件的文本屬性或編輯框內容賦值
  set(findobj(gcf,'Tag','text2'),'String','增益:');
  set(findobj(gcf,'Tag','text3'),'String','零點:');
  set(findobj(gcf,'Tag','text4'),'String','極點:');
  set(findobj(gcf,'Tag','GFMedit'),'String','10');
  set(findobj(gcf,'Tag','HFZedit'),'String','-1 -2');
  set(findobj(gcf,'Tag','HFMedit'),'String','-3 -4 -5');
            %用戶輸入提示
  fmtData ={'輸入數據時,兩個數之間請用空格分隔符!'  '若為復數時,請按如下格式輸入:  -5+2j'  '注意 j 的位置不可與2交換!' };
  Mstring=sprintf('%s\n%s\n%s\n',fmtData{1},fmtData{2},fmtData{3});      
  set(findobj(gcf,'Tag','SMedit'),'String',Mstring) 
2.4 分析方法設計
  在經典的控制理論中,分析自動控制系統性能的方法有時域法、頻域法和根軌跡法[9]。在時域法中系統常見的輸入信號為單位階躍與脈沖信號,對應的響應結果可以在該軟件中顯示。頻域法中表示系統頻率特性的圖形有奈氏圖、對數幅頻特性曲線和對數相頻特性曲線。這些方法都可以在菜單“分析方法”中進行選擇。利用結果顯示曲線,可以用相應的方法對自動控制系統進行性能分析。
  以根軌跡分析為例,下面是主要的程序代碼。
  function GMenuItem_Callback(hObject, eventdata, handles)
  global MdlValue TxValue Fxtag FxValue      
                         %聲明全局變量
  FxValue=3;                    %1-階躍響應,2-脈沖響應,3-根軌跡,4-奈氏圖
  ……
  switch MdlValue          %判斷模型輸入方式
    case 1                   %1-零極點模型
              %讀入模型參數
  K=(get(findobj(gcf,'Tag','GFMedit'),'String'));
  Z=(get(findobj(gcf,'Tag','HFZedit'),'String'));
  P=(get(findobj(gcf,'Tag','HFMedit'),'String'));
           %將字符串類型轉化為數字型
  k=str2num(K);
  z=str2num(Z);
  p=str2num(P);
           %提示輸入錯誤
  if isempty(k)==1|isempty(p)==1;  %零點z可以為空  errordlg('輸入參量不符合要求','錯誤');
  else
    axes(handles.axes1);              %選擇繪圖部件
    G=zpk(z,p,k);                      %生成傳遞函數

    rlocus(G);                           %畫根軌跡
    sgrid;
     ……
  end
     case 2       ……
     case 3  ……
2.5 繪圖方式設計
  使用ACAAS系統,用戶可以得到所選擇的分析方法所對應的單道分析曲線,如圖5所示。為了方便用戶對不同的自動控制系統的性能進行對比分析,該軟件還為用戶提供了“單幅多道圖” 的繪圖形式,即在同一坐標系下繪制多條不同的自動控制系統的分析曲線。對時域法、頻域法和根軌跡法,均可以采用此種繪圖方式。從“單幅多道圖”中能夠很容易看出某一參數的變化及對系統性能的影響。

  下面是主要的程序代碼。
  ……
  switch TxValue 
      case 1                %單道圖
       axes(handles.axes1);
            cla;
      case 2                 %多道圖
       if Fxtag==FxValue 
       axes(handles.axes1);
       hold on
       else           
  warndlg('請在同一種分析方法下使用!','提示');
         end   
  end
   ……
  圖6是3個放大系數不同的自控系統Φ(s)的單位階躍響應曲線,利用該圖可以立刻得到放大系數對系統性能的影響,即:隨著放大系數的增加,系統的穩態誤差減少,但是超調增大,震蕩加劇。其中
  

  自動控制系統輔助分析軟件(ACAAS)采用Matlab7.1中的GUI環境進行開發,充分利用了Matlab中集成的關于自動控制系統的性能分析算法庫和強大的繪圖功能,特別是由于自動控制系統的性能分析算法庫與GUI開發工具均屬于Matlab軟件,因此用戶輸入與分析算法之間的接口變得十分容易,大大縮短了軟件的開發周期。與傳統的采用混合編程模式開發的同類型軟件系統相比,該軟件易于維護與升級,在運行時間上其優勢更加突出。
  采用ACAAS,用戶可以十分方便地分析自動控制系統的時域、根軌跡與頻域性能,并在“單幅多道圖”中對不同系統之間進行性能比較,為下一步進行自動控制系統的設計打下良好的理論基礎。該軟件不僅可以作為《自動控制原理》課程教學強有力的補充,并且在Matlab仿真環境與自動控制工程設計人員之間搭起了一座橋梁,使他們不必花大量的時間用于Matlab的學習就可以對系統進行仿真,能夠將更多的精力用于工程實踐與應用上。
參考文獻
[1] 徐明遠.Matlab仿真在通信與電子工程中的應用[M].  西安:西安電子科技大學出版社,2005.
[2] 劉維.精通MATLAB與C/C++混合程序設計[M]. 北京:北京航空航天大學出版社,2005.
[3] 邢輝.基于C++ Builder和MATLAB混合編程的仿真應用[J].計算機與現代化,2005(10).
[4] 張寶利.從Matlab版本間差異看VC與Matlab混合編程趨勢[J].長春工業大學學報:自然科學版,2008,29(02).
[5] 彭博棟.VC6.0與MATLAB7.X混合編程方法研究[J].計算機與數字工程,2008,36(09).
[6] 黃金明. VC++與MATLAB的混合編程研究[J]. 電腦開發與應用,2008,21(10).
[7] CHAPMA S J. Matlab programming for engineers[M]. Beijing: Science Press, 2003.
[8] 薛定宇. 反饋控制系統分析與設計[M]. 北京:清華大學出版社,2000.
[9] 黃堅.自動控制原理及其應用[M]. 北京:高等教育出版社,2004.
  

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲人成人77777线观看| 亚洲欧美精品在线观看| 一区二区三区免费观看| 久久综合中文| 亚洲精品影视在线观看| 欧美在线国产精品| 一区二区三区欧美成人| 亚洲精品日韩在线| 尤物yw午夜国产精品视频明星 | 亚洲视频自拍偷拍| 亚洲日本免费| 亚洲欧洲综合另类| 亚洲黄色免费网站| 亚洲国产一区二区三区在线播| 日韩五码在线| 亚洲精品自在久久| 国内外成人免费激情在线视频 | 国产精品私房写真福利视频| 久色婷婷小香蕉久久| 久久国产精品亚洲va麻豆| 欧美在线播放高清精品| 亚洲欧美日本视频在线观看| 午夜精品福利电影| 欧美一区永久视频免费观看| 欧美在线资源| 久久久九九九九| 麻豆精品91| 欧美激情一二区| 欧美日本中文字幕| 欧美视频一区二区三区四区 | 久久夜色精品国产| 亚洲综合第一| 午夜精品久久99蜜桃的功能介绍| 亚洲精品国产精品国产自| 亚洲第一在线综合在线| 亚洲在线中文字幕| 91久久国产综合久久| 91久久夜色精品国产网站| 亚洲美女诱惑| 中国女人久久久| 午夜精品www| 亚洲国产精品悠悠久久琪琪| 亚洲精一区二区三区| 一本色道久久综合亚洲精品婷婷| 久久国产精品亚洲va麻豆| 亚洲国产精品一区二区久 | 亚洲自拍偷拍网址| 亚洲一区二区三区四区五区午夜 | 国产精品蜜臀在线观看| 欧美激情视频一区二区三区不卡| 欧美在线观看一区| 亚洲天堂av在线免费观看| 亚洲小少妇裸体bbw| 欧美综合二区| 欧美成人中文字幕在线| 欧美性猛交99久久久久99按摩| 欧美激情综合五月色丁香| 欧美天堂亚洲电影院在线观看 | 一区二区三区免费看| 午夜影院日韩| 91久久久亚洲精品| 久久精品毛片| 一本色道久久88精品综合| 午夜精品久久久久久99热软件| 亚洲欧美中文字幕| 裸体素人女欧美日韩| 欧美三区在线| 黄色日韩在线| 亚洲午夜一级| 亚洲精品看片| 欧美专区日韩专区| 欧美女主播在线| 国产一区二区精品| 激情自拍一区| 亚洲一级高清| 亚洲精品欧美极品| 欧美专区亚洲专区| 欧美色图一区二区三区| 国外成人在线| 在线亚洲一区观看| 亚洲精品国久久99热| 欧美一区二区三区四区在线观看地址| 欧美影院在线播放| 欧美日韩成人激情| 欧美视频在线观看 亚洲欧| 欧美日本在线| 黄色精品一二区| 亚洲影院色无极综合| 欧美一区二区日韩一区二区| 久久精品99国产精品| 亚洲视频在线一区| 欧美成人性网| 国产在线精品成人一区二区三区 | 久久精品人人爽| 欧美日韩国产综合在线| 激情丁香综合| 亚洲精品日韩精品| 久久精品一区二区国产| 性欧美8khd高清极品| 欧美日韩一二三四五区| 在线成人小视频| 欧美在线亚洲综合一区| 欧美亚洲免费电影| 国产精品电影网站| 国内久久婷婷综合| 亚洲男人av电影| 亚洲自拍偷拍一区| 欧美色道久久88综合亚洲精品| 国产日韩欧美视频在线| 一本久久综合| 91久久综合亚洲鲁鲁五月天| 久久人人超碰| 国一区二区在线观看| 欧美亚洲色图校园春色| 午夜精品影院在线观看| 国产精品爱啪在线线免费观看| 国产美女精品视频免费观看| 一区在线观看| 亚洲午夜羞羞片| 亚洲女人av| 国产精品99一区二区| 亚洲免费av观看| av成人免费观看| 欧美日本三区| 99国产麻豆精品| 久久精品一级爱片| 久久偷窥视频| 一区二区三区在线观看国产| 亚洲二区精品| 麻豆国产精品777777在线| 在线观看国产精品淫| 亚洲国产一区二区a毛片| 亚洲男女自偷自拍| 国产精品九九| 亚洲欧美变态国产另类| 欧美在线亚洲| 欧美日韩三区四区| 99在线精品观看| 亚洲欧美第一页| 国产精品免费看| 亚洲欧美日韩国产中文在线| 欧美主播一区二区三区美女 久久精品人 | 国产精品五月天| 午夜日韩激情| 久久性色av| 亚洲第一视频| 一本色道久久综合亚洲精品不卡| 久久免费视频这里只有精品| 国产一区二区三区日韩欧美| 亚洲视频香蕉人妖| 欧美一区=区| 黄色日韩网站视频| 99亚洲一区二区| 国产精品美女久久久久aⅴ国产馆| 最新中文字幕一区二区三区| 在线视频亚洲一区| 国产精品视频不卡| 久久精品一本久久99精品| 欧美大片免费久久精品三p | 91久久综合| 亚洲免费视频网站| 国模私拍一区二区三区| 亚洲肉体裸体xxxx137| 欧美色图麻豆| 欧美一区二区大片| 欧美福利在线| 亚洲香蕉成视频在线观看| 久久久精品国产一区二区三区| 国产亚洲综合精品| 91久久夜色精品国产网站| 欧美性片在线观看| 欧美淫片网站| 欧美日韩国产综合久久| 欧美一区二区免费| 久久精品国产99国产精品澳门| 国产精品一区二区欧美| 亚洲国产成人在线| 欧美日韩一区二区三区在线| 亚欧成人在线| 欧美日韩国产一级片| 欧美在线免费看| 欧美日韩精品久久久| 久久成人精品电影| 欧美日韩在线视频观看| 一本久道久久久| 久久综合一区二区三区| 国产精品99久久久久久久女警| 亚洲综合第一| 在线看视频不卡| 欧美一二区视频| 亚洲精品欧美日韩专区| 中日韩高清电影网| 国内揄拍国内精品少妇国语| 亚洲一区国产| 亚洲国产精品久久久久婷婷884| 野花国产精品入口| 国产综合精品| 午夜精品一区二区三区在线| 亚洲青涩在线| 美乳少妇欧美精品|