<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > Elmo運(yùn)動(dòng)控制系統(tǒng)在飛機(jī)數(shù)字化裝配系統(tǒng)中的應(yīng)用

          Elmo運(yùn)動(dòng)控制系統(tǒng)在飛機(jī)數(shù)字化裝配系統(tǒng)中的應(yīng)用

          作者: 時(shí)間:2013-11-04 來源:網(wǎng)絡(luò) 收藏


          本系統(tǒng)使用的CAN總線全面支持CANOpen 層面的DS301、DS305、DS401、DS402等協(xié)議,DS401、DS402這兩個(gè)協(xié)議為基于運(yùn)動(dòng)控制所開發(fā)的通訊協(xié)議,可以直接應(yīng)用于運(yùn)動(dòng)控制場(chǎng)合;

          由于以色列公司的產(chǎn)品全部采用的是CANOpen協(xié)議,其相關(guān)的通訊底層協(xié)議全部為開放式,方便客戶與自己的其他設(shè)備連接通訊;

          CAN總線上可以掛接其他的設(shè)備, 例如現(xiàn)場(chǎng)總線I/O,但是所掛接設(shè)備必須支持CANOpen協(xié)議;

          每個(gè)CAN總線理論上可以支持最多108個(gè)節(jié)點(diǎn)(Node),以色列公司目前的MAESTRO多軸控制器最多具有2路CAN總線,理論上最多支持216個(gè)節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)均可以掛接伺服電機(jī)或者CAN總線設(shè)備,故對(duì)于未來設(shè)備的擴(kuò)展帶來了很多的方便之處。

          MAESTRO的特點(diǎn)

          以色列公司設(shè)計(jì)生產(chǎn)的MAESTRO為一種基于網(wǎng)絡(luò)的多軸運(yùn)動(dòng)控制器,可以完成2D、2.5D的差補(bǔ),多個(gè)軸的同步以及開始、停止等類似 PLC的運(yùn)動(dòng)控制功能,同時(shí)其在整個(gè)系統(tǒng)的通訊層面可以完成的工作很豐富,諸如:網(wǎng)絡(luò)的網(wǎng)關(guān);各個(gè)節(jié)點(diǎn)的狀態(tài)的監(jiān)控;運(yùn)動(dòng)的網(wǎng)絡(luò)遠(yuǎn)程訪問和控制;CAN現(xiàn)場(chǎng)總線的主站等。

          一種基于MAESTRO的多軸可以簡單的用如圖3所示的框圖來表示:


          圖3 多軸運(yùn)動(dòng)控制器框圖

          其中,需要明確幾個(gè)定義:

          軸:每一臺(tái)驅(qū)動(dòng)器與每一臺(tái)電機(jī)組成對(duì),完成單個(gè)運(yùn)動(dòng)的控制,稱其為軸。

          組:由多個(gè)軸組成,可以由MAESTRO發(fā)相同的同步指令到組里面的各個(gè)軸,其中每個(gè)獨(dú)立的軸均可以完成獨(dú)立的運(yùn)動(dòng),同時(shí)要求構(gòu)成組的每個(gè)軸的運(yùn)動(dòng)形式必須要一致。組可以定義多個(gè)。

          矢量組:一般為由兩個(gè)獨(dú)立的軸組成的組,通過嚴(yán)格的控制時(shí)鐘同步來獲得精確的單軸運(yùn)動(dòng)定位,借此獲得期望的系統(tǒng)性能,同時(shí)矢量組可以完成2個(gè)軸的直線差補(bǔ)、圓弧差補(bǔ)以及螺旋差補(bǔ)等功能。同樣,矢量組也可以定義多個(gè)。


          圖4 MAESTRO的基本構(gòu)成

          其中,按照功能不同,將其內(nèi)部分為了五層,分別用不同的顏色表示,具體功能如下:

          作為CAN現(xiàn)場(chǎng)總線主站的MAESTRO可以提供很多的網(wǎng)絡(luò)功能,其中包括了完成網(wǎng)絡(luò)配置;偵測(cè)并描述出CAN網(wǎng)絡(luò)中存在的CAN設(shè)備;通過使用標(biāo)準(zhǔn)的CANOpen協(xié)議完成CAN網(wǎng)絡(luò)信息的接收和發(fā)送;CAN網(wǎng)絡(luò)報(bào)警信息處理;根據(jù)其內(nèi)部自帶的同步機(jī)制完成時(shí)鐘同步;通過使用CANOpen 的 DS301、DS305、DS401、DS402協(xié)議完成各個(gè)CAN設(shè)備之間的通訊等。同時(shí),其作為同步運(yùn)動(dòng)控制器還可以實(shí)現(xiàn)以下一系列的同步功能: 發(fā)送同步運(yùn)動(dòng)指令到指定的運(yùn)動(dòng)單元軸;同步運(yùn)動(dòng)單元軸之間的啟動(dòng)和停止等動(dòng)作;通過其內(nèi)部的callback功能實(shí)現(xiàn)對(duì)運(yùn)動(dòng)完成以及Elmo驅(qū)動(dòng)器內(nèi)部定義的觸發(fā)條件等的監(jiān)控;以及發(fā)送通知到上位機(jī)等。

          在與上位機(jī)通訊的過程中,MAE-STRO可以使用的通訊方式有TCP/IP以及RS-232。通過該通訊可以完成的功能包括:程序的上傳和下載;系統(tǒng)當(dāng)前的狀態(tài)反饋;用戶程序運(yùn)行情況的反饋;傳輸和解釋對(duì)MAESTRO的指令以及對(duì)任意一臺(tái)終端CAN設(shè)備的操作指令。用戶還可以通過使用 Elmo公司提供的Composer軟件通過這條通路完成對(duì)終端Elmo驅(qū)動(dòng)器的直接操作和監(jiān)控。

          在運(yùn)行用戶程序方面,MAESTRO也有其獨(dú)有的一些特點(diǎn):其作為一個(gè)全面可編程的運(yùn)動(dòng)控制器可以實(shí)現(xiàn)并完成多軸運(yùn)動(dòng)的編程工作;可以運(yùn)行一個(gè)或者多個(gè)用戶程序;用戶可以通過使用MAESTRO的編程語言來實(shí)現(xiàn)對(duì)其的編程操作,其編程語言與Elmo公司的驅(qū)動(dòng)器的編程語言類似,都屬于類C的計(jì)算機(jī)語言,非常容易掌握;同時(shí),其編程環(huán)境可以使用Elmo公司提供的Elmo Studio軟件來輕松實(shí)現(xiàn)。

          基于以上的諸多特點(diǎn),通過MAESTRO與Elmo智能型驅(qū)動(dòng)器的配合使用,筆者便構(gòu)成了一套分布式控制系統(tǒng)的基本框架,用戶可以根據(jù)自己的使用工藝要求和具體的工況來選擇合適的搭配和擴(kuò)展,可靠穩(wěn)定的完成預(yù)期功能。




          圖5 內(nèi)部功能示意圖

          結(jié)語

          目前,應(yīng)用該套分布式控制系統(tǒng)的飛機(jī)柔性已經(jīng)通過了國家的驗(yàn)收,準(zhǔn)備投入批量生產(chǎn)。由于國內(nèi)對(duì)于CAN總線的研究起步比較晚,在具體應(yīng)用方面相對(duì)于國外也有很大的差距,對(duì)這方面的了解也并不是很全面,還處于摸索階段。但是通過該項(xiàng)目的成功應(yīng)用,更加堅(jiān)定了公司對(duì)這種分布式控制系統(tǒng)的推廣信心。我們將會(huì)加倍努力,將該套控制系統(tǒng)應(yīng)用于諸如醫(yī)療、紡織、印刷等更多的行業(yè)和領(lǐng)域。


          上一頁 1 2 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();