為機床工具企(qǐ)業提供深度市場(chǎng)分析                     

用戶名:   密碼:         免費注冊  |   申請VIP  |  

English  |   German  |   Japanese  |   添加收藏  |  
廣州數控
數控係統

車床 銑床 鑽床 數控係統 加工中心 鍛壓機床 刨插拉(lā)床 螺紋加工機床 齒輪加工機床
磨床 鏜床 刀具 功能部件 配件(jiàn)附件 檢驗測量 機床電器 特種加工 機(jī)器人

數控係統

電工電力 工程機械 航空航天 汽車 模具
儀器儀表 通用機械 軌道交通 船舶

搜索
熱門關鍵字:

數控機床

 | 數(shù)控車床 | 數控係統 | 滾齒機 | 數控銑床 | 銑刀 | 主軸 | 立式加(jiā)工中心 | 機器(qì)人
您現在(zài)的位(wèi)置:數控係統(tǒng)網> 技術前沿>基於simulink-realtime的數(shù)控係統(tǒng) 仿真(zhēn)與實(shí)驗平台研究
基於simulink-realtime的數控係統 仿真與實驗(yàn)平台研究
2018-3-29  來(lái)源(yuán):上海交通大學  作者:蔡一天,奚學程,趙萬(wàn)生

      摘要:提出一種(zhǒng)采(cǎi)用simulink-realtime構建數控係統仿真實驗平台(tái)的方法。首先,介紹(shào)了simulink一realtime的硬(yìng)件部分結構及其軟件部分原理與設置(zhì)。然後,詳述了基於simulink一realtime應用(yòng)程序的開發流程(chéng),並以一個單軸PID控製器(qì)的程序(xù)開發為例。最後,以對輪(lún)廓誤差控製(zhì)中典型的交叉禍合控製(zhì)器研究證明了所搭建的(de)仿真實驗平台對於研究(jiū)數控(kòng)技術(shù)的實用性。
       
      關鍵詞:simulink-realtime;數控係統;實驗平台

      數控係統(tǒng)作為(wéi)數控機床(chuáng)的(de)核心部分,其性能對於機床的加工精度和效率有著至關重要的影響。因此,研究先進的數控技術對於打破國外壟斷、提高(gāo)裝(zhuāng)備製造業水平有著重要意義。

      但是,一般的商用數控係統往往是封閉的,這也意味著用戶無法知道其具體(tǐ)原理(lǐ),也不能對其進行修改。因此,部分學者采用由PMAC運動控製卡來實現底層運動控製、而(ér)自己(jǐ)開發上層軟件的方法,這雖然部分地解決了數控係統(tǒng)開放性不足的問題,但當需要研究底層(céng)運(yùn)動控製功能時,采用運動控製卡的方法仍使研究受到局限。此外,部分研究人員采用(yòng)自己開(kāi)發數控係統的方法,但耗(hào)時較長,且需把過多精(jīng)力投入(rù)到非核心技術的開發上}z-o。也有其他(tā)學者(zhě)采用開源數控係統(如LinuxCNC ),在此基礎上進行(háng)修改以符合自身要求[f410但這種方法需(xū)先對開源數控係統有一個較好的了解,前期耗費時(shí)間(jiān)長,且所有算法功(gōng)能都用C++語言(yán)實現,在算法(fǎ)實(shí)現上也需花費很(hěn)多精力。

      本(běn)文利用M at1ab軟件中的simulink-realtime實現從模型設計仿真到算法實現的無縫對接。利(lì)用simulink-realtime由仿真模(mó)型自(zì)動生成C語言代碼的功能,使原來最費(fèi)時(shí)的算法實現階段(duàn)時間幾乎縮短為0。並以此為基(jī)礎,集成數控係統中常用的功能模塊,搭建一個開放的(de)數控技術仿真實驗平台。

      1.   Simulink-realtime簡(jiǎn)介
 
      從核心功能上講,simulink一realtime是一(yī)組Mat1al)提供的幫助用戶從simulink模型快速創建實時程序(xù),並自動卜載到目(mù)標控製機的工具(jù)集。同時,它也包括了眾多的I/0硬件馭動,比如:模擬信號(hào)I/0、數字信號(hào)I/0、脈(mò)衝產生與接收、CAN總線、網絡通信等。
 
      1.1 硬件係統結(jié)構

      Simulink-realtime具體實現(xiàn)時的硬件體係結(jié)構見圖1。開發機(development computer)負責Matlab程序、simulink仿真模型的搭建,通過simulink-real-time提供的編譯器編譯後卜載到目標機中運行,之(zhī)後(hòu)開發(fā)機可實時調整(zhěng)程序中的參數,並監測和記錄程(chéng)序運行(háng)的信號。開發機一般為裝有Windows係統(tǒng)並有Matlab程序的 PC機。目標機往往(wǎng)也是PC機,當然也可以是如PC/104 , CompactPCI形式的工控機。而I/0硬件(jiàn)通常指通過PCI擴(kuò)展(zhǎn)槽連接(jiē)到目標機上(shàng)的各種I/0板卡,最(zuì)後通過這些I/0板卡控製真實的(de)物理部件。

圖1   simulink-realtime係統架(jià)構圖(tú)

      在開發機和目標(biāo)機之間(jiān)可采用2種通信方式:RS-232和ethernet } RS-232方式隻(zhī)能以一台開發機對應一台目標機,但Ethernet方(fāng)式可支持一台開發機(jī)對應多台目標機。

      這(zhè)是因為此時目標機和開發機之間是通過TCP/IP協議通信,兩者之間不(bú)是必須通過網線直接連接,完全可通過(guò)路由(yóu)器接通。因此(cǐ),ethernet的連接方式提供了更好(hǎo)的擴展性,且ether-net相對於RS-232通(tōng)信更加不易(yì)受幹擾,可(kě)支持長距離傳輸,數據傳輸速率快。因此,木文選用ether-net連接方(fāng)式。

      此處的硬件I/0板卡需為Matlab公司支持的型號,因為隻有這(zhè)部分板卡(kǎ)Matlab裏的I/0 31}動庫才提供simulink block形式的(de)馭動。否則,需要用戶自己編(biān)寫硬件馭動,這會(huì)相當繁瑣。

      1.2 軟件設置

      從圖(tú)1可看出,如果要在目標機運行實時程序,需(xū)在目標機(jī)有一個實時操作係統。但這個實操作(zuò)係(xì)統並不是平時常見的如VxWorks,uc-os等,它是一(yī)個M atlal)公司(sī)提(tí)供的名為“simulink real-time kernel”的微型實時內核。因此,在目標機中不需由用戶預(yù)裝Windows或(huò)Linux等任何其他係統。要在目標機啟(qǐ)動simulink real-time kernel,有以卜4種方法:
   
      (I) 從光盤設備啟動。從CD/DVD啟動,需用戶自己刻(kè)錄光盤,成木較高且不方便。

      (2) 從移動盤啟(qǐ)動。從移動U盤或移動硬盤啟動,這時隻需通過Matlab提供的工(gōng)具製作啟動盤,然後(hòu)通過USB接入目標機即可。
 
      (3) DOS loader啟動。這要求目標機(jī)有DOS啟動係統,且有其(qí)他諸多限製。
 
        (4) 網絡啟動。把實(shí)時操作係統放在一(yī)個開發機上,當開發機檢測到目標機啟動時,通過網絡把操作係統相關數(shù)據(jù)傳輸到目標機,然後啟動(dòng)係統。該方法要求目標機的(de)Bioses支(zhī)持從網絡啟動。
      
      上述方(fāng)法中,從移動盤啟動係統最為方便快捷且限製較小。因此,木文選取這種方法。
    
      製作裝(zhuāng)有simulink real-time kernel微型實時內核的U盤(pán)可通過Matlal)提供的“simulink real-time explorer”工具實現。隻需在Matlab命令行中(zhōng)輸入"slrtexplr";在Target而板中設置如卜3個方而的屬性:
    
      (1) 開發機到目標機的連接屬性(Host-to-Tar-get communication)。木文采用開發機目標機用(yòng)網線直接相連的方式,故(gù)連接方式選擇“TCP/IP"。目標機的相關網絡設置必須保證和開發機在同一個局域網中,即目標機的IP地址和開發機前3段必須相同(tóng),僅最後一段不同。且需注意開發(fā)機設(shè)為固定IP。
    
      (2) 目標機屬性(Target settings )。主要是設置目標(biāo)機(jī)相關的屬性,如目標(biāo)機是否為(wéi)多核、是否為386/486體係架構等(děng)。
     
      (3) 啟動配置(Boot configuration )。由於木文選用從U盤啟動(dòng)係統(tǒng),所以boot mode可(kě)選擇Remov-able Disk,然後就能創建啟動(dòng)盤。同時需特別注意設置目標(biāo)機的Bioses為優先從U盤啟動(dòng)係統,否則一般都默認從硬盤啟動係統。
   
      1.3 應用程序開發(fā)
     
      基於simulink一(yī)realtime開發實時應用程序都是采用“基於模(mó)型的設計”思想,即一(yī)以(yǐ)係統(tǒng)模型為基(jī)礎,用戶隻需建立相應的算法模型,而不需關(guān)心具體的算法轉化為實時(shí)程序的細節。其開發過程見圖2。
  
圖二 simulink-realtime 應用程序開(kāi)發(fā)流程 
 
      如(rú)本文的運動控製係統,需對(duì)這個軸設計PID控(kòng)製器以改善各軸的跟蹤性能。若交流伺服電機(jī)簡化為二階(jiē)模型,則(zé)帶PID控製器的係(xì)統模型(xíng)見圖3。
 
 
     
   圖三 單軸PID控製器模型
 
      現在要設計PID控製器,並在目標機中實現,因此需對上(shàng)述模型進行實時化。首先,實時程序並不支持一般(bān)的(de)Scope模(mó)塊,必須用simulink一realtime庫中專用的Scope。它支持實時數據顯示,或記錄數據到文件;另一方而,此時的傳遞函(hán)數1/(sz+3s+2)已用真實的物理係統代替,即交流伺服電機,所以傳遞函數(shù)模塊(kuài)可刪去。控製係統信號量和反(fǎn)饋信號需通過I/0板卡采集,因(yīn)此還需添加相應的硬件馭動(dòng)模塊(kuài)。同(tóng)時,由於采集到的反饋信(xìn)號為脈衝信號,需經過單位(wèi)轉換才能接入閉環,故在反饋處還需加入(rù)一個增益(yì)環節。假設此處采用的(de)I/0板卡為NI公司(sī)的PCI-6221,則(zé)係統模型經實時化(huà)改造後變為如圖4所(suǒ)示。
 
圖4 實時化改造後的單軸PID控製器模型 

      接下來,隻要接通開發機和目標機,編譯經(jīng)過(guò)實時化(huà)改造的模型(xíng),卜載到目標機(jī)就能在(zài)目標機運(yùn)行個PID控製器。這個編譯、下載、運行的過程隻(zhī)需簡單調用M atlal提供的命令或直接在GUI中操作即可。

      最後,如需讀取記錄的數據,可調用相應命令把記錄(lù)的數據文件(jiàn)從目標機複製到開發機,然(rán)後讀取到相應變量中。比如卜列函數就可完成這個(gè)任務,其中(zhōng)t為包含目標機的(de)對(duì)象(xiàng),filename為需要複製(zhì)到開發機的數據記(jì)錄文件:

        function scope_ core data=get target_ scope data(tg, filename)
        SimulinkRealTime,copyFilcToHost  (tg, file-name;
        scopes data =SimulinkRealTime.  utils.  get-FilcScopeData(filename);
        scopes c<)二一Iata=scope data. data(:,1);
        end
 
      由此可看出(chū),所有工作都是圍(wéi)繞係統模(mó)型展開,且用戶隻需集中精力(lì)於算法開發就好。

      2、數控係統實驗平台設計

      本文基於simulink-realtime搭建的數控係統實驗平台的硬件係統見圖5
 
 
圖5 實驗平台(tái)硬件係統示意圖(tú) 
 
     其電控部分就是基於圖1所述的結構,I/0板卡選用(yòng)NI公司的PCI6221,它包含兩路模擬輸出可控製電機,還(hái)自帶犯位計數器可作為電機編碼器的反饋。機械部分為(wéi)一個由滾珠絲杠傳(chuán)動的兩軸X-Y交流伺服平台(tái)。由於該平台把一個軸置於另個軸之上(shàng),這樣兩軸3動的質量不(bú)同,從而(ér)保證兩軸的動態特性(xìng)不匹配較明顯,更好地(dì)模擬了真實機床的情況。

      在軟件方而,可劃分為如圖6所示的幾個模塊,各部(bù)分的功能如下:
      (1)參數曲線生成(chéng)模塊。目前高級的數控係(xì)統多(duō)用NURBS曲(qǔ)線來表示參數曲線,此模塊完成NURBS曲線相關的操作。
 
      (2)插補算法模塊。從參數曲線生成一係列的插補點,可根據需要采用不同的插補(bǔ)算法。
 
      (3)速度規劃模(mó)塊。合理規劃運動速度(dù),可采用S型加減速等方法。
 
      (4)模型(xíng)辨識模塊。這主要是(shì)為了(le)仿真(zhēn)方便,如上所述,simulink一realtime是以模型為核心的。若能辨識出係統模型,就能(néng)很方便地仿真(zhēn)相應的算法。
 
      (5)基於繼(jì)電反饋的PID自整定模塊。單軸的PID控製器是最(zuì)基木的控製器,而繼電反饋法又是整定PID參(cān)數(shù)的優秀方法。
 
      (6)輪廓誤差離線精確計算腳本(běn)。這(zhè)主要是為了研究輪廓誤差控(kòng)製等時驗證算法的效果。
 
      (7)數據提取與存儲模塊。存儲數據,方便以後進一步處理。
 
 
 
圖6 實驗平台軟件部(bù)分模塊規劃 
 
      至此,數控係統實驗平(píng)台完成,可用該平台方(fāng)便地進行數控技術各方麵的研究。

      3、輪廓控製仿真與實驗
     
      木文以研究數控技術(shù)中的輪廓誤差控製技術為例,選用其中最經典的交叉禍合控製器來證明所搭建實驗平台(tái)的實用性。交叉禍合控(kòng)製的思想是把輪廓(kuò)誤差看作一個整體來控製,即意味著每個軸不但受(shòu)本軸的影響,也接收其他軸的誤差信息。這(zhè)樣,多軸之間能(néng)更好地協同,共同達(dá)到減小輪廓誤差的(de)目的。

      根據算法思想(xiǎng)建立對於(yú)一個圓形軌跡的控製器模型(圖(tú)7)。
 
 
圖7 一個圓形(xíng)輪廓的交叉耦合控製器模(mó)型 
 
      其中,curve data是用參數曲線生成、插(chā)補、速度規劃(huá)模塊(kuài)一步步生成的參考指令點,兩(liǎng)個(gè)軸的係統模型可用係統辨識模(mó)塊獲(huò)得,單(dān)軸PID參數可通過繼電反饋法整定,而中間的PID控製器參數可通過建立如圖7所(suǒ)示模(mó)型後,用Mat1al)提供的PID參數整定工具自動整定,最後可用輪廓誤差離線精確計算腳木來估計控製器的效果。在確定算法後,將上述模型進行實時化改造(圖8),再調用係統相關工(gōng)具編譯下(xià)載到目標機即可運行。
 
 
 
 
圖8 實時化後交叉偶合控製器模(mó)型

      在本實驗中,圓的半徑為40 mm,線速度為20mm/s,有和沒有交叉禍合控製器時的輪廓誤差見圖9。
 
 
圖9 是否加入交叉耦合控製器的誤差對比
 
      可(kě)見,交叉禍合控製器顯著減小了輪廓誤差,同時也(yě)證明本文搭建的實驗(yàn)平台能很好地滿足數控技術中(zhōng)的輪廓誤差控製技術研究的需要。

      4、結束語
 
      本文(wén)設計了基於simulink-realtime的數控(kòng)係統仿真與實驗係統。相對於傳(chuán)統的實驗平台,它提供了極大的(de)便利性,可(kě)大大減少(shǎo)通常算法實現時花費的大量時間。同時,該平台以模型為核心的特點,很好地整合了從算法仿真到實(shí)現的過程。本文搭建的實驗平(píng)台集成了數控技術中常用的各種模塊(kuài),具有很好的開放性,適於研究數控技術的各個方麵。


    投稿箱:
        如果您有(yǒu)機床行(háng)業、企業相關新聞稿件發表,或進行資訊合作,歡迎聯係本網編輯部, 郵箱:skjcsc@vip.sina.com
国产999精品2卡3卡4卡丨日韩欧美视频一区二区在线观看丨一区二区三区日韩免费播放丨九色91精品国产网站丨XX性欧美肥妇精品久久久久久丨久久久久国产精品嫩草影院丨成人免费a级毛片丨五月婷婷六月丁香综合