基本概念
開放結構於20世紀80年代初提出,與開放系統概念的提出和實現密切相關。它的發展是為了適應更大規模地推廣計算機的套用和計算機網路化的需求,現仍處於繼續發展和完善之中。一些標準化組織對開放系統的概念是大體相同的,但具體的定義不完全一致。
開放式體系結構 (open system architecture)是具有套用系統的可移植性和可剪裁性、網路上各結點機間的互操作性和易於從多方獲得軟體的體系結構,簡稱開放結構(OA),它是構成開放套用體系結構(OAA)的技術基礎。
對於開放系統,美國電氣和電子工程師協會(IEEE)給出了以下定義:“開放系統應提供這樣一些功能,它們使正確執行的應用程式能在多個廠商提供的不同平台上運行,和其它應用程式互操作,並且為用戶相互作用提供一個統一風格的界面。”該定義中有三個關鍵點:一是應用程式能在不同平台上運行;二是套用軟體能夠互操作;三是有統一風格的人機界面(HCI) 。
開放體系結構
在開放體系結構的研究中,美國的OMAC (Open Modular Architecture Controls)、歐盟的SAGA (Open System Architecture for Control within Automation System、日本的OSEC (Open system environment for controllers)這三種體系結構影響深遠。OMAC由基類和模組來描述抽象的體系結構,通過選擇不同的模組,以搭積木的思想來構造系統。OSACA提出一個“分層的系統平台與結構功能單元”的結構。體系結構以一個系統平台為基礎,由一組邏輯上離散的部件組成,控制系統本身不帶有平台的任何信息;在平台之間定義了很好的接口,允許不同供應商提供的組件之間協調工作;正確工作的控制器可以運行在不同的系統平台上。OSEC體系屬於層次性結構,系統按功能分層,每一層按照功能分為若干個模組,層次間具有單向調用或者依賴關係,每一層都在其下層建立,下層為上層提供所需的服務。同一層的模組間按照一定的接口關係自由調用。
OMAC與OSACA體系是理想的、革命性的,力圖成為自動化領域的通用國際標準,它的範圍涵蓋了整個自動化領域。而OSEC體系的目標是建立國際性的工廠自動化控制設備標準。
其重點集中在數控本身和分散式控制系統上,因而它是可階段性實現的,並且對數控系統的發展有直接的指導意義。基於OSEC的體系結構思想,微機數控系統的開放體系結構如圖1所示:
圖1
最底層是設備層,包括採用可重構功能模組組成的工具機本體,以及具有標準接口的伺服系統、輸入輸出模組和智慧型感測器模組等,設備層中所有設備均採用統一標準接口的模組,因此易實現互換或互用。中間層是功能層,主要完成數控系統的運動軌跡控制和工具機邏輯控制功能。最上層是套用層,是計算機主流作業系統上的標準套用,負責提供人機界面,CAPP/ CAM等的工藝規劃,NC程式的處理等。網路接口使得網路製造以及遠程監控、診斷和決策變得容易。
在以上三個層次結構中,功能層是實現開放式數控系統的關鍵,它必須實現兩個層次上的開放。即向下對設備層的開放和向上對套用層的開放,對設備層的開放是指提供一個通用的接口訪問外部控制設備,使功能層具有設備無關性;對套用層的開放是指提供一個通用的數據交換接口,接受來自套用層的命令並把相關操作和處理後的數據送回到套用層,使功能層具有套用無關性。
開放體系結構的實現
在現階段技術條件下,數控系統開放體系結構的具體化有兩種典型的結構。
PC加NC的主從式
把工具機運動控制、邏輯控制功能由獨立的運動控制器完成,運動控制器通常由以PC硬體外掛程式的形式構成系統,這是一種模組化、層次化的結構,通過各種形式向外提供統一的規範接口,具有了開放性特點。其系統結構如圖2所示。在這種結構中,PC機主要完成的是數控系統任務中非實時的任務,如數控加工程式的編輯、加工仿真、故障診斷、人機接口界面、數控程式的解釋解碼、刀具補償等。屬於套用環境功能層。NC功能層則是以可程式多軸運動控制器為核心,完成軸控制和順序邏輯控制等實時處理任務。運動控制器實質就是一個NC裝置。只要符合PC機匯流排接口標準,任何生產廠家開發的一控制器均可使用,並可以方便的互換。用戶可以選取不同廠家的控制器,構建新的系統。
基於PC集成的軟體式
基於PC集成的軟體式數控系統就是將系統的所有子系統,如運動控制器、工具機邏輯控制器等,全部集中到一個統一的硬體平台。使數控系統的所有功能全由軟體來實現,在高性能CPU的PC硬體平台上實現數控集成化。在軟體方面,以優秀實時作業系統核心為平台,開發可對硬體進行直接操作的高效PC數控軟體和PC伺服軟體,以及PC化PLC軟體,以完成集成化數控的所有控制任務。這種“硬體功能軟體化”不僅不會導致任何系統性能損失。而且軟體實現的靈活性和硬體平台的無關性將有利於系統實現更深入的開放性和系統性能的快速增長。一基於PC集成的軟體式數控系統的優點是顯而易見的。可實現較高層次的開放。它的核心控制策略可以開放,對智慧型控制也有充分的考慮。而且更加注重標準化和集成性,在兼容數控領域的主要標準的同時,更加向計算機技術靠攏。併力圖使數控成為集成平台上的標準套用。這種體系結構的數控系統的主要功能部件均表現為套用軟體的形式。實現形式上的變革使得系統可以更方便、更廣泛地套用計算機技術和自動控制技術的先進成果,簡化系統實現難度,縮短開發周期,有助於技術創新。軟體化實現也大大增強了系統的可縮放性、可替換性和可移植性,從而使其體系結構高度開放性的實現成為可能。數控系統的硬體本身己經是完全開放的,構成開放式數控系統的工作完全在軟體上。只要制定好規範,並嚴格按照規範開發軟體,則從信息處理、軌跡插補、加減速控制、開關量控制以及伺服控制都可以開放。
特點
為滿足建立和實現開放系統的需要,開放結構應具有以下4個特點:
①可移植性。各種計算機套用系統可在具有開放結構特性的各種計算機系統間進行移植,不論這些計算機是否同種型號、同種機型。
②可互操作性。如計算機網路中的各結點機都具有開放結構的特性,則該網上各結點機間可相互操作和資源共享,不論各結點機是否同種型號、同種機型。
③可剪裁性。如某個計算機系統是具有開放結構特性的,則在該系統的低檔機上運行的套用系統應能在高檔機上運行,原在高檔機上運行的套用系統經剪裁後也可在低檔機上運行。
④易獲得性。在具有開放結構特性的機器上所運行的軟體環境易於從多方獲得,不受某個來源所控制。
為了全面實現上述開放系統的4個特性,首先要保證實現系統的可移植性和互操作性:
①為實現可移植性,首先要建立起符合開放系統概念的開發平台,在這個開發平台上所開發的套用系統都可以在另一個符合開放系統概念的平台上,以同樣的工作環境去編譯和運行原套用系統,不必對源程式作任何修改。
②為實現互操作性,首先應實現通信時的互操作性,即應實現開放系統互連環境(OSIE)。
基礎標準
標準化是實現開放性的基礎,為了確保互聯和互操作等性能的實現,就必須制定一些標準規範。開放系統互連(OSI)有關的標準是國際標準化組織(ISO)信息處理系統技術委員會於1978年開始制定的。ISO開發的OSI及相關標準已超過200餘項,幾乎覆蓋了信息處理的各個重要領域。世界上各大計算機製造商和用戶都支持OSI標準,建立在OSI上的環境,稱為OSIE,開放體系結構(OA)也是實現OSIE的技術基礎。
國際電報和電話諮詢委員會(CCITT)也從事OSI標準開發工作。CCITT是聯合國組織——國際電信聯盟的一部分。CCITT和ISO緊密合作,共同開發信息處理和信息通信的有關標準。
OSI基礎標準是開放系統互連OSI(Open System Inte-rconnection)模型,為連線分散式套用處理的開放系統提供了基礎,OSI採用分層的結構化技術。開放系統互連OSI參考模型共有7層,即:物理層、數據鏈路層、網路層、傳輸層、會話層、表示層和套用層。OSI參考模型是定義了的一種抽象結構,它的特點是:定義了一種將異構系統互連的分層結構;提供了控制互連繫統互動規則的標準框架;定義了實現不同計算機的同層之間進行通信的協定規程。
在OSI模型的基礎上,由ISO和國際電工協會(IEC )兩大國際標準組織的聯合技術委員會JTC1負責制定OSI的基礎標準,由JTC1下屬的有關分技術委員會(SC)和工作組(WG)具體負責開發這些標準。
功能標準
為了確保系統的互操作性,除基礎標準外,還要根據用戶的需求和實際的網路能力,選定一些功能標準(也稱為功能輪廓或規範檔案)。顯然,功能標準不應同基礎標準相矛盾,而只是對每一基礎標準所允許的選項加以特定的選擇。一些國家或機構正在針對自己的具體情況制定一些各自的功能標準。例如:①英國的中央計算機和電信局(CCTA)定義了名為MUSIC的開放系統套用結構框架,其中的M、U、S、I、C分別表示管理、用戶接口、系統和套用接口、信息和數據服務及通信服務。②由若干計算機廠商組成的國際性非盈利組織X/open,在ANSI、IEEE和ISO等標準化組織所正式公布的標準中選定開放系統規範。③由百餘個計算機製造商和研究機構組成的非盈利組織開放軟體基金會(OSF),為開放軟體環境制定一套套用環境規範(AES),並對按照這些規範開發的源程式發放許可證。
開放體系結構計算環境
開放體系結構計算環境(OACE),指的是一組在具備開放系統體系架構的系統中使用的、統一的基於標準的計算資源。其中,開放系統指的是按照足夠開放的接口、服務和支持格式規範實現的系統,使得適當設計的系統組分能以最小的改變在多種系統中被利用;能與本地和遠程系統的其他組分實現互操作;能以方便移植的方式實現與用戶的互動。因此OACE的本質應該是利用一組計算機、內部和外部的網路互連設備、網路傳輸介質、操作和控制軟體、通信軟體以及接口軟體等,來提供一個分散式的高效計算環境,並且該環境至少要滿足:
(1)採用了意義明確的、廣泛使用的、開放的標準或協定;
(2)全面的接口定義便於各種套用增添新的系統功能,並且在擴充或升級時對系統的影響最小;
(3)確保分散式處理、可移植性、可量測性、可伸縮性、模組性、容錯性、共享資源管理和自動使用等 。