DNC係統能夠實現車間數控設備及生產工位的統一聯網(wǎng)管理,支持數控設備的在線加工、NC程序的斷點續傳、在線遠程請求和曆史(shǐ)追溯等,提高企業數控設備的生產效率。
七十年(nián)代以後,隨著數控機床(CNC)技術的不斷發展(zhǎn),數控係統的(de)存貯容量和計算(suàn)速度都大為提高,DNC的含義由簡單的直接數字控製發(fā)展到分布式數字控製。它不但具(jù)有直接數字控製的所有功能(néng),而且具(jù)有係統信(xìn)息收集、係統狀態監視以及係統控製等功能。八十年(nián)代以後,隨著計算機技術、通訊技術和CIMS技(jì)術的發展,DNC的內涵和功能不斷擴大,與六、七十年代的(de)DNC相比已有很大區別,它開(kāi)始著眼於車間的信息集成,針對(duì)車間的生產計劃,技術準備,加工操作等基本作業進行(háng)集中監控與分散控製,把生產任務通過(guò)局域網分配給各個加(jiā)工單元,並使之信息相互交換。而對物(wù)流等係統可以在條件成熟時再擴充,既適用於現有的生(shēng)產環境,提高了生產(chǎn)率,又節省了成本。
如上圖所示構成DNC係統的主要組成部分有:中央計算(suàn)機及外(wài)圍存儲設備、通信接(jiē)口、機床(chuáng)及機床控製器。由計算機進行數據管理(lǐ),從大容量的存儲器中(zhōng)取回零件程序並把它傳遞給機床。然後在這兩個方向上控製信息(xī)的流動,在多(duō)台計算機間分配信息,使各機床控製器能完成(chéng)各自的操(cāo)作。最後由計算機監視並處理機床反饋。其中解決計算機與數控機床之間(jiān)的信息交換和互聯,是DNC的核心問題(tí)。它與FMS(柔(róu)性(xìng)製造係統)的主(zhǔ)要差別是沒有自動(dòng)化物流輸送係(xì)統(tǒng),因而成本低,容易實現。由於(yú)它(tā)可以通(tōng)過計算機網(wǎng)絡實現NC(數控)程序的直(zhí)接裝載和靈(líng)活存儲,因(yīn)此能:
● 消除程序讀入裝置維護所需的費用(yòng);
● 減(jiǎn)少程序輸入的錯(cuò)誤;
● 簡化NC程序的管理(lǐ);
● 便於進行生產(chǎn)調(diào)度和監控(kòng)。
目前,DNC係統的研究(jiū)尚存在以下(xià)有待解決的技術問(wèn)題:①DNC係統(tǒng)體係結構的開放性不強。國內(nèi)大部分DNC係統局限於單(dān)一供應商的製造設備,平台之間可移植性差(chà),不同應用程序互操作能力(lì)有待提高,不利於係統集(jí)成;②DNC係統通信結(jié)構多為(wéi)點對點(diǎn)式,或采用局域(yù)網加點對點(diǎn)式,不能很好地解決(jué)通信競爭問題; ③DND係統(tǒng)與NCP和CAD的接口功能還很弱(ruò);④DNC係統控製(zhì)軟件可重用性不強,需要進行麵向對象設(shè)計和實現。本文提出了基於CORBA(通用對象請求(qiú)代理結構)的車間(jiān)層(céng)控製(zhì)係統中(zhōng)DNC係統,給上述問題以很好的解答,並實現了(le)軟件的編製(zhì)及聯機調式。
DNC係統是基於CORBA車(chē)間層控製係統的一個功能單元,現在(zài)的企業麵對的是一個(gè)多變的需求(qiú)環境,因而車間層控製係統麵對的加工(gōng)任務也是多變的。這(zhè)種變(biàn)化(huà)包(bāo)括生產零件的品種、類型、規格、產量和交貨期等多(duō)個因素的變化以及加工工藝路線隨生產任務的不同而變化等。這就需要一個在時間和空間上都開放的(de)車間層控(kòng)製係統體係結構,以運行於不同硬件環境的異構計算機係統中,同時又能適應新技術的發展,容(róng)納新設備的增加。
在基於(yú)CORBA的車間層控製係統中,構造車間信息(xī)集成(chéng)和(hé)共享的公共平台是核(hé)心問(wèn)題之一,我們采用基於客戶/服務器結構的分布式控製平台(如 Orbix),既可以將傳統的遞(dì)階控製(zhì)結(jié)構變換成更適合(hé)信息集成的分布或控製結構,又可適應不同產品製造過程(離散製造(zào)或連續製造)中統一的生產管(guǎn)理和組織要(yào)求。
車間層控製係統總體結構分為三(sān)層:底層為係統支持層,由分布式計算環(huán)境和異構網絡集(jí)成係(xì)統兩個子層構(gòu)成,提供底層的計算(suàn)機係統(tǒng)、網絡(luò)係統和數據係統等係統級功能(néng);中間層為開(kāi)放式分布處理(lǐ)層,提供統一(yī)的集成通信服務,由開放式分布處理平台(tái)和應用程序接口組成,最上層為信息(xī)集成層,支持多客戶/服務器(qì)的分(fèn)布式多數據庫集成係統,將現(xiàn)有的應用和數據信息集成到係統中。為實現控製結構的(de)分布、數據庫的分布以(yǐ)及係統功能的分布,提出的車(chē)間層控製(zhì)係統軟件采(cǎi)用基於 CORBA規(guī)範的(de)分布式對象體係結構。
CORBA規範主要特點是實現軟件總線結構。所謂軟件總線的(de)功能(néng),就(jiù)是起到類似於計算機係統硬件總線的作用(yòng),隻要將應用模塊按總(zǒng)線規範作成軟插件,插入總線即可實現集成(chéng)運行。實現軟件總線的核心(xīn)係統(tǒng)稱為ORB(對象(xiàng)請求(qiú)代理器),它不僅支持標準的OMG對(duì)象模型,還具有分布進程管理和(hé)通信管理功能。此(cǐ)外, CORBA定義了IDL(Interface Definition Language)語言,以描述軟件總線上的插銷。IDL提供了對成員係統(tǒng)的封裝和成員(yuán)係統之間隔離,任何成員係統作為一個對象,通(tōng)過IDL對其(qí)接口參(cān)數進行定義(yì)和說明,就可接(jiē)到ORB上,為其它係統提供服務或向其它係統提出請求,達到即插即用(yòng)效果。
車間層控製係(xì)統劃分為許多獨立的功能單元,每個功能(néng)單元對應於(yú)一個包含功能接口定義和實體的抽象對象,每(měi)類對象的(de)接口由(yóu)屬性和操(cāo)作組成,由IDL定義的其它功能單元可(kě)以透明訪問的(de)服務以調用該對象的私有數據,具體功能的實現被封裝在實體裏。我們將每類對(duì)象按照功能劃分成若幹個子對象,將其設計成為可以直接插在CORBA軟件總線(xiàn)上(shàng)的對象插件。這些對象插件按照(zhào)各層客戶/服務器結構組成整個平台(tái)係統。這種結構(gòu)可(kě)以(yǐ)帶來長遠的利益,既能(néng)迅速增加對新的DBMS 的應用、增加新的用戶界麵,又能升級支持各種新功能(néng)。
由前節所述,從DNC概念的出現(xiàn)到今天的DNC技術,不論從功能上還是(shì)內(nèi)涵上都發生了很大的(de)變化(huà)。也正因為不斷的變化,人們對DNC的概念有(yǒu)著(zhe)各種各樣的理解,從而導致(zhì)對DNC的分類標準也各不相同,不同角度有著不同的分類(lèi)方法。
按照DNC的功能的強(qiáng)弱,可將其分為初始DNC、基本DNC、狹義DNC和廣義DNC。
具(jù)體(tǐ)劃(huá)分見表1-1。
表1-1DNC功能分類Category of DNC Function
|
功能(néng) |
複雜程度 |
價格 |
|
|
初始DNC |
下傳NC程序 |
簡單 |
低廉(lián) |
|
基本DNC |
CNC程序的管理和雙向傳輸 |
一般 |
低廉 |
|
狹義DNC |
CNC程序的管理和雙向傳(chuán)輸係統,狀態采集、反饋 |
中等 |
一般 |
|
廣義DNC |
CNC程序的管理和(hé)雙向傳輸,係統狀態采集、反饋,遠(yuǎn)程(chéng)控製與車間生產管理體係 |
複雜 |
昂貴 |
按(àn)DNC係統的內涵的不同,可(kě)將其分為直接DNC、分布式DNC、柔性(xìng)DNC,網絡DNC、集成(chéng)DNC和智能DNC等。
a) 直接(jiē)DNC係統,也就是直接數字控製DNC(Direct Numerical control),是早(zǎo)期的DNC概念,其主要功能是將計算機與數控機床的(de)直接連接,隻是實現NC程序(xù)的下(xià)傳到數控機床以完成零件的加工而已。
b)分布式數控係統(Distributed Numerical Control)是隨著網絡和計算機技術的發展而賦予了DNC新的內涵。不但能夠實現(xiàn)NC程序的雙(shuāng)向傳(chuán)輸,而且具有係統(tǒng)信息采集、狀(zhuàng)態(tài)監視和係統控製等功能(néng)。
c)柔性DNC係統是隨著DNC的發展,DNC和FMS的(de)界限越來(lái)越模糊,此(cǐ)時的DNC己成為FMS中必不(bú)可少的一(yī)部分。
d)網絡DNC係(xì)統,是為了適(shì)應敏(mǐn)捷製造、全(quán)球製造、分布式製造和遠程製造(zào)而(ér)發展起來的一種DNC係統。這種DNC係統的特點是(shì)更強調網絡與分布式數據(jù)庫方麵的功能與(yǔ)虛擬(nǐ)集成。
e)集成DNC係統,是(shì)以數控技術、計(jì)算(suàn)機技術(shù)、控(kòng)製技術、通(tōng)信技術和網絡技術等先進技術(shù)為(wéi)基礎,把與製造過程有關的設備與上層控(kòng)製計算機集成(chéng)起來,從而實現(xiàn)製造車間製造設備的集成控製管理以及製造設備(bèi)之間(jiān)、製造(zào)設備與上層計(jì)算機之間的信息交換。
f)智能DNC係統是隨著人工智能技(jì)術的發展及(jí)其在製造領域的應用而出現的,目的是為了克服基於知(zhī)識的人工智能的缺點,人工智能最新研究己經向計(jì)算智(zhì)能方向發展。計算智能主要包括:模糊技(jì)術、人工神經網絡、遺(yí)傳算法等。這(zhè)些智(zhì)能技術的運用,必將促進智能製造技術的發展以及新的智能DNC的出現。
DNC係統(tǒng)設備層(céng)的不(bú)同,可以實現的DNC的(de)功能也是不同的,所以分類工作也可以按設備層來劃分。根據具體的設備層不同,可將其分成四種,如表1-2所示。
表1-2按通信(xìn)接口分類的DNC係統Category of DNC System Based on Communication Interface
|
分類 |
通信接口(kǒu) |
可實現的DNC形式 |
典型產品 |
|
經濟型數控係統 |
紙帶閱讀機接口、磁帶錄音機接口 |
基本DNC(外接DNC接口板) |
早期(qī)單板機改裝的數控係統 |
|
無RS-232串行接口的數控係統 |
並(bìng)行紙帶閱讀機接口、穿孔接(jiē)口、PLC接口 |
DNC接口基本DNC、狹義DNC、廣義DNC(均要外接DNC接口板) |
FANUC 7M |
|
有RS-232串(chuàn)行接口的數控(kòng)係統 |
RS-232接口、PLC接口 |
基本DNC、狹義DNC、廣義DNC(外加(jiā)DNC接口(kǒu)板) |
FANUC 6M CINCINNATIA2100E |
|
有DNC通信接口的數控係統 |
基本DNC、狹義 DNC、廣義DNC |
FANUC 0 FANUC15 |
20世紀80年代後,隨著信息技術和先進製造技(jì)術的發展,DNC的功能和內涵也在不斷(duàn)擴大,主要體(tǐ)現為以下兩個方麵:
目前DNC係統傳輸的不僅包括NC程序,而且包括執行特(tè)定生產(chǎn)任務所需的製造(zào)數據(jù),如刀(dāo)具數據、作業(yè)計劃、機床配(pèi)置(zhì)信息等。部分DNC係統還(hái)具(jù)有機床狀態采集和遠程控製等功能。
利(lì)用DNC的通信網絡(luò)可以把車間內(nèi)的數控機床通過調度和運轉控(kòng)製聯係在一(yī)起從而掌握整個車間(jiān)的加工情況(kuàng),便於實現加(jiā)工物件的傳送和自動化(huà)檢測設(shè)備的連接,DNC係統連接數控(kòng)設備和上層計算(suàn)機,是實現(xiàn)CADC/AM和計算機輔助生產(chǎn)管理係統(CAPMS)集成的紐帶,是實現(xiàn)設計製造一體化的橋梁。相比與FMS,DNC更注重於信息流的集成,從而避免FMS在物流上的高投資,是機械加工車間實現製造自動化的較好方式。按照CIMS的遞階控製理論,DNC係統可以方便的組織為數控單元,接收來(lái)自車間的作(zuò)業計劃,實現單元(yuán)內的作業調度和資(zī)源調度、決定零件的加工路線、監控和統計數(shù)控設備(bèi)的任務執行情況等。因此DNC是實現信息集成製造的一個層次(cì),既(jì)可以單獨使用,也可以繼續發展(zhǎn)為FMS和CIMS。
DNC係統作為車間層(céng)控製係統的一個功能單元(yuán)。
DNC係統(tǒng)功能包括①NC程序及數(shù)據的傳遞,以某種通信協議(如Philip532等)實(shí)現通(tōng)信功能;②機床狀態采集和上報;③根據工序計劃(huá),自動分配NC程序及數據到相應機床;④刀具數據的分配與傳遞。
DNC係統軟件的功(gōng)能模(mó)型,其中NC數據管理的主要功能是對數控數據進行管理,主要有數控(kòng)數據的顯示、插入、修改、刪除、更新(xīn)、鎖定(不允許更改)和(hé)打印等操作;NC數(shù)據執行的主要(yào)功能有:數控數據在計算機和機床之間(jiān)的(de)傳(chuán)送、刪除機床(chuáng)上的(de)數控數(shù)據、啟動機床上的數控程序(xù)、隨時(shí)從機床設備獲得(dé)工作狀態信息(xī)並存入數據庫,作為運行數據采集模塊評價加(jiā)工過程的根據(jù);DNC通訊接口通過DNC協議和數據鏈路協議建立單元控製(zhì)係(xì)統和CNC的連接(jiē)。
基於CORBA的DNC係統軟件的實(shí)現平台建立在車間層控(kòng)製係統平台的基礎上。我們將DNC係統體係(xì)結構劃分為三(sān)層的客戶/服務器結構,以將表示邏輯、業務邏輯和數據(jù)處理(lǐ)邏(luó)輯明確劃分(fèn)開來(lái)。為此,表示層用(yòng)來表示信(xìn)息(xī)和收集數據,此(cǐ)處為由VB實現的可移植的DNC人機接口;業(yè)務層響(xiǎng)應用戶(hù)(或其它的業務服務)發來的請(qǐng)求,執行某種業務任務,此處為由VC++來(lái)實現DNC應有程序及NC數據管理應用程序(xù);數據層包括數據(jù)的定義、維修、訪問和更新以及管理,並響應業務服務的數據請(qǐng)求,此處為經IDL功能接口定(dìng)義封裝的NC局部數據庫(Access)服務器。這些層並不一定與網絡(luò)上的具體物(wù)理位置相對應,它們隻(zhī)是概念上的層,借助(zhù)這(zhè)些概念可以開發出(chū)健壯的、基於組件的應用程序。
使用模型,可以把應用程序的需求分解成明確定(dìng)義的服務。在定(dìng)義了服務之後,需要進一步創建具體的物理(lǐ)組件來實現它們。根據性能和(hé)維護的需求、工作量、網絡帶寬以及其它因素,可以(yǐ)在網絡上靈活地部署這些組件。
DNC係統軟件中涉及到數據(jù)實體包含四類:①與(yǔ)製造設備硬件(jiàn)相關的數據實(shí)體(如機床等);②與人機通訊相關的(de)數據實體(如通訊協議實(shí)體和串口(kǒu)通(tōng)訊實(shí)體(tǐ)); ③數控數據實體(如NC程序號、刀具號、工序號);④輸入操(cāo)作指令或派工單實體。采用麵向(xiàng)對象方法將上述(shù)實體抽象成為(wéi)類,可分為能力(lì)單元類、NC機床類、 NC控製器類、通訊協(xié)議類、終端服務器類、串口(kǒu)通訊類、NC程序類等。
盡管DNC有多種多樣的分類方式,但各種分類方(fāng)式都有構成(chéng)DNC係統必不可少的基本組(zǔ)成部分。其中主要有:
(1)DNC控製計算機,包(bāo)括大(dà)容量存儲器和1/0接口(kǒu);
(2)通訊介質(雙絞線,同軸電纜等);
(3)通訊接口;
(4)NC或CNC數控設備;
(5)軟件係統(包括實時多任務操作係統、DNC通信軟件(jiàn)、DNC管理和監控軟件、NC程序(xù)編輯軟件(jiàn)、還可能有數控係統軟件)。
由於DNC係統的多種構成形式,係統的大小(xiǎo)和複雜程度也各不相同。DNC係統可以小到隻有一台DNC主機控製多台(tái)數(shù)控(kòng)機床也可以大到包括單元層、車間層和工廠層。所以具體的DNC係統組成(chéng)要根據其(qí)要求達到的目標(biāo)和具體條件來(lái)決定。影(yǐng)響(xiǎng)DNC係統配置的因素很多(duō)
DNC計算機的任務勞動力成本車間層管理(lǐ)計算機(jī)係統被處理信息的層次CNC的數(shù)量車間CNC的負載所需要的柔性
但首先應(yīng)考慮工廠具體(tǐ)的需求,如需要的自動化程度、信息(xī)流以及工廠的計算機結構層次等重要因素。
DNC應用程序中的(de)對象(xiàng)從這些類中繼承下來,每(měi)個對象的方(fāng)法即該對象的成員(yuán)函數(shù)根據相應的(de)功能需求來定義。下麵(miàn)以NC機床類(lèi)的定義為例(lì):
‖ncmach.h -NC Machine Class definations
‖NC Machines are part processors.For this class,a part is loaded,
‖a NC file is downloaded to the device,and the machine is started.
class MACHINE-TOOL{
char*CurrentNCFile; ‖currently loaded NC file
intFixtureStatus; ‖fixture status
public:
MACHINE-TOOL();
char* getCurrentNCFile();
void setCurrentNCFile(char?F);
Int getFixtureStatus();
void setFixtureStatus(int S);
virtual int processPart(char? PartName);
virtual int downloadNCFile(char?File);
virtual int stopMachine();
virtual in graspPart();
virtual int releasePart();
};
基於CORBA的車間層控(kòng)製係統需要(yào)兩種層次的(de)互連。第一層是利用計算機局域網(wǎng)技術和協議(yì)軟件把由異構計算(suàn)機組成的車間層控製(zhì)器(qì)、設備控製器等互連起來,第二層是在這一(yī)互連的基礎上,實現各節點、各被控的異構製造設備(如加工(gōng)中心、機器人、PLC等)之(zhī)間(jiān)的信息交互,這種交互通過製造信息規範(MMS)實現。作為車間(jiān)層控製係統的一個重要組成部分,本文DNC係統的物理配置(zhì)基(jī)本結構如下圖所示,主計算機通過網絡(luò)介質(具有獨立(lì)IP地址的終端服(fú)務器)分(fèn)別連接多台CNC係統實現NC程序的裝卸、刀具數據的傳遞、操作命令的下達和狀(zhuàng)態信息的反饋。這是一種通(tōng)過局域網連接起來的通信結構,它具有包括物理層、數據鏈路層、傳輸層(céng)及(jí)應用層等的四層結構,其中數據鏈路層(céng)采用LSV2通訊協議,傳輸層(céng)采用DNC協議(如SINUMERIK或PHILIPS協議)。
DNC係(xì)統的優(yōu)越性在於其簡單的程序數據管理,快速的NC數據傳送,以及數(shù)據傳送所具有的更高的安全性能,且可實現NC機床完全自動的(de)、柔性的操作。引入DNC的目的在不同的企業是不同的,但(dàn)通常有如下(xià)的原因:
(1)消除程序讀入裝(zhuāng)置維護所需的費用;(2)減少數據輸入(rù)的錯(cuò)誤;(3)簡化NC程序的管(guǎn)理(lǐ);(4)便於生(shēng)產的管理(lǐ);(5)增加加工係統(tǒng)的柔性。在工(gōng)廠使用了一(yī)定數量的數控機床之(zhī)後,由於以上原因,通常會產生引入DNC的需求,但從經濟和技術上綜合考慮,引入DNC的原則一般有:
(1)係統內的數控機床數量連接在係統內的數控(kòng)機床數(shù)量對於係統的效率和成本的(de)回收都是十分重要的,一般的,在係統中有4-6台NC機床或更多時,即應考慮DNC;(2)控製係統要處理的數據量在數據(jù)量(liàng)很大且程序的處理速度要求很快時,應考慮DNC;(3)NC程序的管理NC程序管理的(de)問題越大(dà),就越應(yīng)當考慮采用DNC;(4) NC程序的長度在CNC的程序存儲器(qì)不能滿足程序的要求時,應考慮(lǜ)DNC;(5)在加工中需要頻繁更換程序加工的批(pī)量越小(xiǎo),程序越小,在正(zhèng)確的(de)機床上,正確的時間內,使用正確的程(chéng)序加工就越(yuè)困難,但(dàn)如果(guǒ)采用DNC就(jiù)能比較容易的解(jiě)決這個問題。