隨著嵌入式與通信技術(shù)的發(fā)展,數(shù)控系統(tǒng)經(jīng)歷了由傳統(tǒng)的單處理器的集中式體系結(jié)構(gòu)到開放式體系結(jié)構(gòu),再到多處理器的分布式數(shù)控系統(tǒng)體系結(jié)構(gòu)的發(fā)展過程。分布式數(shù)控系統(tǒng)以高精、高速的加工特征為發(fā)展核心,同時以達到異構(gòu)網(wǎng)絡(luò)間信息的無縫融合,實現(xiàn)高實時性、高可靠性和高兼容性的新一代生產(chǎn)制造系統(tǒng)為發(fā)展方向。
針對如何提高分布式數(shù)控系統(tǒng)實時通信能力的問題,陶林等[1]提出了一種基于以太網(wǎng)的分布式數(shù)控系統(tǒng)實時通信網(wǎng)絡(luò); 宋真君等[2]提出了基于工業(yè)以太網(wǎng)的分布式控制系統(tǒng)體系結(jié)構(gòu),雖然以太網(wǎng)技術(shù)有良好的穩(wěn)定性、低成本、高帶寬及優(yōu)良的兼容性等優(yōu)點,但以太網(wǎng)的CSMA /CD( 載波多路訪問、沖突檢測)的傳輸機制決定了它無法確保網(wǎng)絡(luò)傳輸延遲,導致其實時性差。金振華[3]提出了基于CAN 總線的分布式數(shù)控系統(tǒng),雖然各種現(xiàn)場總線廣泛應用于連接現(xiàn)場設(shè)備,有布線簡單、硬件成本低、運行精確穩(wěn)定等優(yōu)點,但數(shù)據(jù)傳輸率低,實時性不高。反射內(nèi)存網(wǎng)光纖總線不但數(shù)據(jù)傳輸率遠高于以太網(wǎng)和現(xiàn)場總線,而且是一種實時、確定性的網(wǎng)絡(luò),可以較好地解決實時系統(tǒng)中數(shù)據(jù)傳輸?shù)膶崟r性問題[4 - 5]。
反射內(nèi)存技術(shù)用于所有使用以太網(wǎng)、光纖通道或其他串行網(wǎng)絡(luò)將計算機或可編程邏輯控制器連接在一起的應用場合,如實時的飛行仿真器、電訊、高速過程控制( 軋鋼廠和制鋁廠) 、高速測試和測量系統(tǒng)等,但并非適用于所有應用場合[6 - 8]。因此反射內(nèi)存網(wǎng)是否適用
于分布式數(shù)控系統(tǒng),如何將反射內(nèi)存網(wǎng)有效地應用到數(shù)控機床中成為反射內(nèi)存網(wǎng)絡(luò)應用的關(guān)鍵問題。文中在分析分布式數(shù)控系統(tǒng)基本結(jié)構(gòu)和反射內(nèi)存網(wǎng)工作原理的基礎(chǔ)上,提出了一種基于反射內(nèi)存網(wǎng)的分布式數(shù)控系統(tǒng)實時通信網(wǎng)絡(luò)方案,給出了系統(tǒng)的基本框架結(jié)構(gòu)、節(jié)點模型和拓展結(jié)構(gòu)。該結(jié)構(gòu)方案的實現(xiàn)不僅極大地提高了網(wǎng)絡(luò)帶寬,而且也提高了數(shù)控系統(tǒng)數(shù)據(jù)傳輸?shù)膶崟r性能。
1 分布式數(shù)控系統(tǒng)基本結(jié)構(gòu)
分布式數(shù)控系統(tǒng)是分布式控制思想在數(shù)控系統(tǒng)上的綜合應用。隨著數(shù)控系統(tǒng)功能的增加,數(shù)控機床加工速度的提高,許多數(shù)控系統(tǒng)采用了多微處理器結(jié)構(gòu),每個微處理器通過數(shù)據(jù)總線或者通信方式進行連接,共享系統(tǒng)的公用存儲器與I /O 接口,每個處理器分擔系統(tǒng)的一部分工作[3,9- 11]。在分布式數(shù)控系統(tǒng)中,信號傳遞對實時性要求越來越高。
圖1 是分布式數(shù)控系統(tǒng)共享總線基本結(jié)構(gòu)。
2 反射內(nèi)存網(wǎng)技術(shù)
2. 1 反射內(nèi)存網(wǎng)工作原理
反射內(nèi)存網(wǎng)( Reflective Memory Network,RNN) 是一種高速實時網(wǎng)絡(luò),是由光纖連接的高速共享內(nèi)存網(wǎng)絡(luò),與一般的基于TCP/IP 協(xié)議的局域網(wǎng)一樣,也是在每個節(jié)點計算機上附加一塊網(wǎng)卡。反射內(nèi)存網(wǎng)接口適配器為各任務(wù)設(shè)備和反射內(nèi)存光纖網(wǎng)絡(luò)相連的接口,具有數(shù)據(jù)傳輸及網(wǎng)絡(luò)管理雙重功能,是整個反射內(nèi)存環(huán)網(wǎng)的核心設(shè)備。RM 接口適配器主要由光電轉(zhuǎn)換、數(shù)據(jù)編/解碼/并行處理、網(wǎng)絡(luò)管理狀態(tài)機、存儲器、協(xié)議管理模塊及任務(wù)設(shè)備接口等組成,系統(tǒng)功能框圖如圖2 所示。
圖2 RM 接口適配器功能框圖
反射內(nèi)存網(wǎng)是一種特殊的共享內(nèi)存系統(tǒng),每個節(jié)點都占有一段對應的內(nèi)存地址,可以在每一個節(jié)點子系統(tǒng)中獨立地保存整個系統(tǒng)內(nèi)存。在實時通信網(wǎng)的節(jié)點機上各插一塊反射內(nèi)存卡,卡上帶有雙口內(nèi)存,各層軟件可以讀寫這些內(nèi)存[12 - 13]。反射內(nèi)存網(wǎng)可以在分布系統(tǒng)中實現(xiàn)內(nèi)存到內(nèi)存的通信。當數(shù)據(jù)被寫入一臺機器的反射內(nèi)存卡的內(nèi)存中后,反射內(nèi)存卡FPGA 硬件通過光纖自動將數(shù)據(jù)傳輸?shù)綄崟r通信網(wǎng)上其他反射內(nèi)存網(wǎng)中反射內(nèi)存網(wǎng)節(jié)點卡的內(nèi)存里。通常,一個節(jié)點的更新只有不到0. 4 μs 的時間延遲,傳輸遍歷所有反射內(nèi)存卡,所有反射內(nèi)存網(wǎng)節(jié)點中對應地址都被寫入對應數(shù)據(jù)。因此,實時通信網(wǎng)上各成員在訪問數(shù)據(jù)時,只要訪問本地反射內(nèi)存卡的內(nèi)存即可[9, 14 - 15]。一個反射內(nèi)存網(wǎng)節(jié)點由本地內(nèi)存、嵌入式接口和用來提供訪問主機和反射內(nèi)存的仲裁邏輯構(gòu)成,反射內(nèi)存網(wǎng)節(jié)點可以安裝或者連接在不同種類的計算機總線上,包括VME、PCI /PCI - X、PCI Express 等[4]。
2. 2 反射內(nèi)存網(wǎng)拓撲結(jié)構(gòu)
反射內(nèi)存網(wǎng)主要是由反射內(nèi)存卡通過光纖等傳輸介質(zhì)連接而成的,它主要有兩種物理拓撲結(jié)構(gòu): 星型拓撲結(jié)構(gòu)( 如圖3 所示) 和環(huán)型拓撲結(jié)構(gòu)( 如圖4 所示) 。對于環(huán)型拓撲結(jié)構(gòu)的反射內(nèi)存網(wǎng),相鄰反射內(nèi)存卡通過輸入端和輸出端的連接形成一個環(huán)形網(wǎng)絡(luò),數(shù)據(jù)包沿著環(huán)形網(wǎng)絡(luò)進行傳遞。其優(yōu)點是不需要光纖Hub、光纖使用量小、節(jié)省經(jīng)費; 缺點是每個節(jié)點都有延時,如果任何節(jié)點或者光纖發(fā)生故障時,數(shù)據(jù)包將不能被發(fā)送,從而導致整個傳遞網(wǎng)絡(luò)癱瘓。因此,一般采用星型結(jié)構(gòu)。事實上,星型拓撲結(jié)構(gòu)只是一個物理意義上的結(jié)構(gòu),因為網(wǎng)絡(luò)集線器內(nèi)部結(jié)構(gòu)是環(huán)型連接。邏輯上來講,它仍然是一個環(huán)型結(jié)構(gòu)[4]。在網(wǎng)絡(luò)中的每一個節(jié)點都有唯一的節(jié)點ID,在同一個網(wǎng)絡(luò)中,不允許有兩個一樣的標識ID,這個ID 是通過板上的撥碼開關(guān)進行設(shè)置的。ID 號越小,優(yōu)先級越高。當數(shù)據(jù)源節(jié)點通過集線器發(fā)送數(shù)據(jù)包時,集線器可以根據(jù)相鄰板的高低ID 來找出數(shù)據(jù)傳遞方向,從而實時更新所有節(jié)點的相應數(shù)據(jù)。在星型配置中,如果一個節(jié)點不工作時,集線器可以自動屏蔽故障節(jié)點,而不影響其他節(jié)點的數(shù)據(jù)傳輸,當然星型結(jié)構(gòu)的缺點是網(wǎng)絡(luò)中的Hub 一旦發(fā)生故障,整個網(wǎng)絡(luò)將會癱瘓[16]。圖3 星型拓撲結(jié)構(gòu)圖4 環(huán)型拓撲結(jié)構(gòu)
? ? ? ?3 基于反射內(nèi)存網(wǎng)的分布式數(shù)控系統(tǒng)的構(gòu)建
3. 1 數(shù)控系統(tǒng)網(wǎng)絡(luò)構(gòu)建根據(jù)數(shù)控系統(tǒng)信息傳輸?shù)奶攸c及總體傳輸要求,擬采用反射內(nèi)存光纖總線連接CNC 裝置、PLC、故障診斷專家系統(tǒng)、HMI 控制面板、CAD/CAM、數(shù)控加工仿真模擬系統(tǒng)等部件構(gòu)成一個分布式數(shù)控系統(tǒng)。總線網(wǎng)絡(luò)的每個任務(wù)節(jié)點接一個RM( Reflective Memory) 接口適配器,每個RM 接口適配器均集成一塊專用的存儲空間,系統(tǒng)將該存儲空間映射到該網(wǎng)絡(luò)節(jié)點處理系統(tǒng)的地址空間,這樣節(jié)點處理系統(tǒng)對RM 接口適配器的操作就和對本機內(nèi)存操作方式一樣。當節(jié)點任務(wù)設(shè)備往映射到反射存儲器的虛擬地址空間的某個位置寫數(shù)據(jù)的時候,反射內(nèi)存網(wǎng)絡(luò)協(xié)議在納秒級的時間內(nèi)將數(shù)據(jù)傳播到網(wǎng)絡(luò)上的每個其他節(jié)點。并且更新的傳播操作是異步的,沒有應用系統(tǒng)處理器的介入。數(shù)控系統(tǒng)網(wǎng)絡(luò)連接結(jié)構(gòu)如圖5 所示。
圖5 數(shù)控系統(tǒng)反射內(nèi)存網(wǎng)絡(luò)連接圖分布式數(shù)控系統(tǒng)工作過程: CAD/CAM 系統(tǒng)對待加工零件建模,并根據(jù)加工工藝生成NC 代碼[17]; 數(shù)控仿真加工及加工模擬系統(tǒng)對生成的NC 代碼進行圖形仿真,進行預加工,檢測是否有刀具干涉等異?,F(xiàn)象;HMI( 人機操作界面) 作為工控機的輸入和顯示單元是系統(tǒng)和用戶之間進行信息交換的媒介,顯示各種控制信號的狀態(tài),操作人員可以通過它對機床進行操作,對機床參數(shù)進行設(shè)定和修改,加載零件加工文件; CNC模塊接收上位機傳送的加工代碼,通過解釋器、插補器生成運動控制指令; 遠程監(jiān)控及故障診斷專家系統(tǒng)通過采集數(shù)控系統(tǒng)及機床本體傳感器件信息,遠程監(jiān)控機床運行狀態(tài),對運行故障進行故障原因分析和故障點定位。如果將這些功能或者系統(tǒng)裝在一臺計算機上,會增加計算機負載,而插補過程是一個高實時性的過程,用反射內(nèi)存網(wǎng)絡(luò)把這些模塊分別連接起來,并且其相互之間信息交換幾乎沒有時間延遲,相當于一臺計算機實現(xiàn)的控制,能很好地滿足數(shù)控機床對加工實時性的要求。
3. 2 反射內(nèi)存網(wǎng)絡(luò)通訊過程
由于反射內(nèi)存網(wǎng)的傳輸是純硬件操作,所以不受特定網(wǎng)絡(luò)協(xié)議的限制,也就不用編寫復雜的接口程序,軟件上只需幾行代碼就可以完成對反射內(nèi)存卡的讀寫操作。整個通訊過程如下:Step1: 打開板卡并復位板卡;Step2: 板卡初始化設(shè)置:執(zhí)行中斷初始化函數(shù)( INT_Init) ;設(shè)置板卡中斷包中斷使能( RM_IntDataArrive_IntEnable) ;使能光纖收發(fā)器( RM_FM_Enable)Step3: 通訊開始
(1) 發(fā)送方發(fā)送中斷包( RM_TxIntPkt) ,中斷包中斷后,中斷處理函數(shù)自動調(diào)用中斷處理函數(shù)( RM_Rx-IntPkt) 。發(fā)送方發(fā)送數(shù)據(jù)包( RM_TxDatPk) : 當產(chǎn)生一個對SDRAM 的寫操作時,反射內(nèi)存卡自動將數(shù)據(jù)和其他相關(guān)信息( 包括數(shù)據(jù)地址、節(jié)點號等) 寫入到發(fā)送緩沖器中,在發(fā)送緩沖器中,發(fā)送電路檢測并將數(shù)據(jù)變成一個4 到64 字節(jié)長度可變的數(shù)據(jù)包,通過光纖接口發(fā)送到下一個板卡的接收端口。
?。?2) 接收方接收中斷包; 中斷包中斷后,中斷處理函數(shù)自動調(diào)用中斷處理函數(shù)( RM_RxIntPkt) 。接收數(shù)據(jù)包( RM_RxDatPkt) ,寫入磁盤,開啟線程函數(shù)查詢板卡接收數(shù)據(jù)包狀態(tài)( RM_IntStatus) ,先判斷本節(jié)點是否需要寫入數(shù)據(jù),若不需要,則直接轉(zhuǎn)發(fā)寫中斷給下一組內(nèi)節(jié)點; 否則,向其反射內(nèi)存卡中寫入數(shù)據(jù)后發(fā)送讀中斷,接收電路解開數(shù)據(jù)包并將數(shù)據(jù)存儲到板載的接收緩沖器中,在接收緩沖器中,另一個電路將數(shù)據(jù)寫入到本地的SDRAM 的和源節(jié)點相同的地址中。同時該電路將數(shù)據(jù)發(fā)送到發(fā)送FIFO 中,重復這個處理過程直至所發(fā)送的數(shù)據(jù)返回到源節(jié)點接收端,然后源節(jié)點將節(jié)點ID 相同的數(shù)據(jù)從網(wǎng)絡(luò)中刪除,從而實現(xiàn)所有節(jié)點都被更新。重復上述流程。退出程序,關(guān)閉板卡( RM_Card_close) 。
3. 3 帶寬及實時性分析高速、高精加工中插補周期一般控制在1 ~ 2 ms,插補周期越短,以直代曲插補直線段越逼近實際加工曲線,加工精度越高。對于分布式數(shù)控系統(tǒng)而言,地理位置上相對獨立的各個單元通過網(wǎng)絡(luò)通信系統(tǒng)進行互聯(lián),數(shù)據(jù)傳輸?shù)膸捈皩崟r性會極大地影響實際加工效果。
表 1 為幾種數(shù)控系統(tǒng)中常用網(wǎng)絡(luò)通信方式的對比情況。文中采用的發(fā)射內(nèi)存網(wǎng)帶寬最高可達1. 06Gbps,網(wǎng)絡(luò)傳輸延遲為400 ~ 750 ns,這兩個指標都明顯優(yōu)于FDDI( Fiber Distributed - Data Interface) 、CAN、工業(yè)以太網(wǎng)及PROFIUBS 現(xiàn)場總線。表1 幾種通訊網(wǎng)絡(luò)對比網(wǎng)絡(luò)類型帶寬實時性分析RMN 1. 06 Gbps 節(jié)點確定的傳輸延遲為400 ~ 750 nsFDDI 100 Mbps光纜延遲和站延遲使其響應時間至少為> 5msCAN 1 Mbps數(shù)據(jù)率很低,速度低,一般響應時間5 ~ 10ms工業(yè)以太網(wǎng)100 MbpsCSMA/CD 的傳輸機制決定了它無法確保傳輸延遲的確定性,導致其實時性差。傳輸延遲可達到1 ~ 10 msPROFIBUS < 12 Mbps 響應時間> 10 ms4
? ? ? ? 結(jié)束語文
? ? ? ? ?中對反射內(nèi)存網(wǎng)技術(shù)應用于數(shù)控系統(tǒng)這一極富研究價值的領(lǐng)域作了初步探索,提出了一種基于反射內(nèi)存網(wǎng)的分布式數(shù)控系統(tǒng)實時通信網(wǎng)絡(luò)方案,給出了系統(tǒng)的基本框架結(jié)構(gòu)、節(jié)點模型和拓展結(jié)構(gòu)。在實際應用中,可以考慮把反射內(nèi)存網(wǎng)同以太網(wǎng)相結(jié)合,在強實時部分使用反射內(nèi)存網(wǎng),在弱實時部分則利用以太網(wǎng),實現(xiàn)資源的充分利用,降低開發(fā)成本。
評論
查看更多