隨著計算機語言從過程型語言發展到面向對象的語言,已在一定層次上實現了軟件的可重用性-而OLE/COM /DCOM/ActiveX概念的提出和普及,才使計算機語言實現了真正意義下的基于二進制標準的代碼重用-因此,采用OPC(OLEforprocess基金項目:中國-新加坡“中新聯合研究計劃‘’、國家教育部”網上合作研究中心“、國防預研基金項目(9918-1-3WW526);武漢市科委國際合作研究項目資助(997002065)module)/ActiveX組件技術進行開發,是實現軟件系統開放互操作的基礎-數控系統的軟件組件,即通過對數控系統的功能劃分,建立類似集成電路芯片的數控系統軟件芯片庫-當建立新的數控系統時,只需從軟件芯片庫中提取相應的功能芯片加以組合即可-必要時可對軟件芯片庫加以擴充,而無需從頭開發整個系統-這樣便改變了目前數控系統的封閉式設計,大大提高整個系統的靈活性,很好地實現了數控系統開放性設計及資源重用,對數控系統的及時升級換代和對市場的及時響應,都具有很好的開發前景- 1虛擬CNC系統虛擬制造技術是在計算機中實現制造過程的一種行之有效的方法-虛擬CNC系統是虛擬制造系統的總體規劃,它由兩大子系統組成:虛擬數控系統和虛擬機床庫-虛擬機床庫主要由機床零部件庫夾具庫、工件庫機床附件庫和材料庫組成-虛擬數控系統由六個功能模塊組成,分別為可定制的控制面板組件顯示管理組件數控代碼解釋組件、預處理組件、插補組件、軟PLC組件- a可定制的控制面板組件-用軟件把數控系統的硬件面板虛擬化,生成各種虛擬按鈕、開關虛擬圖形顯示區等逼真的圖形組件,并有標準接口,可以根據要求定制- b.數控代碼解釋組件-對零件圖生成的數控代碼進行語法檢查,并解釋譯碼,為預處理組件提供正確的中間代碼- c-預處理組件-完成插補前的預處理任務,如英制轉換坐標轉換刀具補償及系統模態值的處理-d-插補組件-負責加減速控制插補、終點判別等工作,包括直線圓弧和螺旋線的插補以及對橢圓、拋物線、正弦線和一些專用線的插補等工作,計算出各軸的位置信息。
顯示管理組件。其內部封裝的任務有零件程序、參數、刀具位置機床狀態、刀具加工軌跡的靜態、動態圖形以及在線編程時的圖形顯示。
軟PLC組件。由其完成本系統的邏輯運算處理和順序控制流程。
2數控(NC)代碼解釋組件運用COM技術和OPC規范,用戶可根據所用數控系統的實際情況,交互地建立一個數控系統的代碼對應庫。由該NC代碼解釋組件可實現NC代碼的翻譯,用于指揮加工器的動作和狀態。
NC代碼解釋組件的主要工作是檢錯和翻譯。
檢錯,即按照數控系統編程規定和有關數控加工的常識,對NC代碼進行語法分析、詞法分析、語義分析,從而檢查出NC代碼的詞法錯誤、語法錯誤、邏輯錯誤。數控代碼解釋組件工作原理圖如所示。
其中,詞法分析的主要任務是從左到右逐個字符對程序進行掃描,從輸入的數控代碼字符串中識別一個個具有獨立意義的*小語法單位。語法分析的主要任務是根據語法規則進行數控代碼分析,來確定整個輸入代碼段在語法上是否構成完整正確的指令代碼段。語義分析是解釋器中具體實現各類數控代碼指令的操作和執行的部分,它根據不同的要求,將從語法分析中得出的中間代碼,轉換為相應的數據狀態信號和控制信號,送給插補組件,或者由軟件模擬機床運動來完成加工運動軌跡仿真。
通過對現有數控車銑床各種指令代碼進行收集歸納總結,結合數控系統的實際情況與要求,則在NC代碼解釋組件需要處理的數據有:G代碼功能S指令(S0-S9999)刀具功能T指令(T0000 -T3232)輔助功能M指令(MOO-M99)及其它特殊指令(這可以通過添加特殊功能解釋組件來實現)。而在編制NC代碼解釋組件時,用到的有關數據結構如下:區程序調用時備份模態值/坐標系旋轉用的緩沖區structscaled" /礦放用的緩沖區結構構結構頭在該組件的編制過程中,利用C+ +面向對象和類庫編程的特點開發了一個數控語言編譯系統,采用COM技術,使用OPC技術規范,來解決內存占用和系統重組等問題,并可對系統進行封裝。同時,采用解釋控制方法實現加工過程控制,即在零件代碼譯碼檢查后就啟動系統,邊解釋邊執行。在加工過程中,解釋程序可預解釋下一條程序。該方法可滿足封裝性及外部低耦合的要求。
3組件接口的設計與實現3.1COM接口ID的生成COM指定接口和對象用全局**標識符128位數字)來標識。GUID用于標識兩種類型的項目:接口標識符D(interfacidentifier)和類標識符CLASID(ClassID)。運用VisualC++編譯器包含的GUIDGEN.EXE,就可以在安裝了網絡接口卡的計算機上獲得一個****的GUID(類以如5254AB20A6D9)。若沒有安裝網絡接口卡,則用戶得到的是一個合成的偽隨機GUID. 3.2創建對象8)><函數是替代匚++構造函數的更強有力的工具,利用CoGetClassObect函數,可以在獲得對象的同時,加上所選擇的接口,并且用這個接口為這個對象獲取其它的接口。CoGetClas-sObect原型如下:數是指向類對象示例所在地機器指針。類型REF-CLSID和REFID是對128位GUIDS(globallyu-niqueindentifiersforCOMclassesandinterfaces,COM類和接口的全局**的標識符)的引用。STDAPI表示函數將返回類型為HRESULT的32位有效值。標準的GUID是定義在能夠動態鏈接到程序的Windows函數庫中的。而用于用戶定做的類和接口的GUID必須按特定的格式定義。當用戶調用CoGetClassObect時,COM加入進來,它在Windows注冊表中搜尋組件的**的128位類ID號碼,找到磁盤上相應的組件。實際上,當在WinNT或Win98/2000運行regedit,在其鍵值中隨便就可+中的ATLCOMAppWizard是創建COM項目*方便的方法。這樣可以向項目中添加對象或控件,然后可以向已有的對象或控件添加新接口。
/COM+的一條核心原則是位置透明(locationtranspanrency),所以它不能夠判斷客戶程序是進程間、本地還是遠程的組件,這個問題由IclassFactory來解決。,它是由COM/COM+對象實現的接口。用來生成其它的COM對象。它有兩個方法:CreateInstance和LockServer.其中Lock-Server方法防止對象卸載出錯。
3.4部分程序實例4結束語利用組件的二進制兼容性、平臺的獨立性和網絡的透明性,可以設計分布式、不同語言兼容的虛擬數控系統軟件,為虛擬數控系統的軟件開發,增添組件,更新組件提供了方便。本文在提出虛擬數控機床系統組件化的思路,對系統進行了比較完整的分析,并在對COM組件技術進行介紹的基礎上,對組件接口技術進行了研究。在實際開發工作中,已經初步面向敏捷制造的產品數據管理框架研究薛善良,葉文華,王寧生(南京航空航天大學CIMS工程研究中心,江蘇南京210016)捷制造,分析面向敏捷制造的PDM功能需求,構建面向敏捷制造的PDM集成框架,并詳細介紹面向敏捷制造PDM框架的功能模型和信息模型。
0引言收穡日期:2001-隨著網絡技術、數據庫技術等信息技術的發展以及Client/ServerBrowser/Server體系結構和0-0技術的應用,*近幾年PDM技術產生了突飛猛進的發展-其功能已突破當初單一產品圖檔管理的局限,幾乎滲透到與產品有關的全部信息和過程中,成了企業實現信息集成的不可缺少的環境平臺。
國際上提出了許多面向21世紀的新的制造企業哲理和發展模式。敏捷制造因其強調企業的敏捷性而倍受人們的關注,必將成為21世紀制造企業的主要模式-新的制造企業哲理和發展模式的提出,使人們更加關注作為企業信息集成環境平臺的PDM研究- 1面向敏捷制造的PDM速響應市場的制造概念,它是圍繞著新的市場機遇通過建立動態聯盟來實現的-動態聯盟是指企業群體為了贏得某一機遇性市場競爭,把復雜產品迅速開發、生產出來并推向市場,他們從各自公司中選出開發生產新產品的優勢部分,然后綜合成一個單一的經營實體-敏捷制造和動態聯盟是跨機構、跨地區的全球企業組織方式,這就要求作為企業集成環境平臺的PDM突破單個企業范圍的限制,從以產品為核心開發出NC代碼解釋組件,并與其他研究人員所開發組件進行了鏈接,也體現出了組件化軟件的優點-