- 相關推薦
淺談基于CNC 的軟PLC 虛擬機中元件庫的研究論文
0 引言
數控是用數字信息對機械運動和自動化加工過程進行控制的技術,是現代國家制造業信息化水平和國際競爭能力的象征,已有50 多年的發展歷史。如今,隨著市場競爭日趨激烈,被加工零件的精益求精及微型計算機的迅猛發展,軟PLC 發展成為進一步提高數控技術、實現數控系統開放化的重要手段。軟PLC 能夠充分利用工業控制計算機( IPC) 或嵌入式計算機( EPC) 的硬件和軟件資源,改變傳統硬件PLC繁瑣、呆板的缺點,全部用軟件靈活地來實現數控功能。
1 軟PLC 虛擬機系統
在數控機床運行過程中,PLC 是機床本體與數控裝置之間的橋梁。它根據CNC 內部標志以及機床的各控制開關、檢測元件、運行部件的狀態,按照程序設定的控制邏輯,完成對刀庫運動、換刀機構、冷卻液等的控制功能。
1. 1 軟PLC
軟PLC 采取基于虛擬機的解決方案,分為開發系統和運行系統兩部分。開發系統實際上就是編程器,完成調試和編譯工作。運行系統是軟PLC 的核心,完成輸入處理、程序執行、輸出處理等工作。
1. 2 軟PLC 虛擬機
軟PLC 虛擬機是相對我們平常所用的實際的計算機而言的一個概念,它是一個假想的模擬實際計算機進行工作的軟件系統,由編譯器、解釋執行器、元件庫和管理模塊組成,可以完成對圖文件的編譯、中間代碼生成和解釋執行,對PLC 文件的加載和執行。其中,元件庫提供了梯形圖元件的相關信息,作為一個單獨的模塊可動態升級,可根據用戶的需要進行裁減。這種架構給PLC 虛擬機帶來了極大的靈活性和可擴展型,是數控系統實現開放化的關鍵技術。
2 軟PLC 中元件庫模塊的研究
2. 1 元件及元件庫
梯形圖中的觸點、線圈和用方框表示的功能塊,把這些繪圖元素叫做“元件”。由于“元件”在梯形圖中作為梯形圖的繪圖元素,因此元件中包括其所具有的自身參數( 輸入參數、輸出參數) 和功能函數( 邏輯行為) 。
所有的元件按照一定的分類規則組合在一起,稱元件的組合為元件庫。元件庫是軟PLC 虛擬機中獨立的模塊,包含元件的繪圖信息和行為信息,提供了一組對外訪問的接口,其它模塊通過這些接口獲取希望獲得的信息。
2. 2 元件庫的數據結構
由于標準中規定的元件數量較多,為了便于信息查找,可對其建模過程采用按類型分組的策略,功能相近的元件分在同一個元件組中,采用的數據結構是鏈表。每個元件庫包含一個元件組鏈表,該鏈表的結點為元件組的信息,每個元件組又包含一個元件鏈表,結點為元件。2. 3 開發語言及編程工具的選擇
開發元件庫,可以選擇當今業界流行的C + + 語言,C + + 是C 的派生,是C 的超集,是一種面向對象的程序設計語言( Object - Oriented Programming Language,OOPL) ,具有封裝性、繼承性、多態性等獨到之處,使程序結構更加清晰,更易于擴充和維護,更加靈活,程序設計者能更好地理解和管理龐大的復雜程序。
3 標準元件庫的創建
3. 1 實現原則
元件庫創建的過程中,采用了C + + 標準程序庫,提供了容器和泛性算法。比如: 實現元件庫模型中的實體類時,使用了標準庫中提供的元素,包括pair、wstring 等類型和list、vector 等容器,直接調用容器類提供的成員函數,不但避免了自己設計鏈表、動態數組等數據結構容易產生的錯誤,而且對軟件的可靠性有了很大的提高,大大提高了開發效率和程序質量。
3. 2 元件庫的組類
元件的信息分成兩部分描述。一部分為靜態信息,包括繪圖信息和參數信息,抽象出元件基類CBaseUnit,具體的元件類都繼承自元件基類,例如元件ID、元件大小、元件名稱和參數表等屬性的初始化和描述; 另一部分為動態信息,也就是元件的行為信息,抽象出行為抽象基類CDictate,具體元件行為的描述都繼承自該類,例如純虛函數Run。通過兩部分信息結合,完成對元件描述和類型聲明。
由于元件較多,所以采取了分組策略,將標準中規定的功能相關的元件放在一組當中,產生元件組。對元件組類的聲明可以如下:
class CUnitGroup
{
public:
CUnitGroup( ) ;
virtual ~ CUnitGroup( ) ;
void AddUnit ( CBaseUnit * pUnit) ; / /向元件組中添加元件
成員函數定義略……
private:
unsigned int m_nID; / /組ID
std: : wstring m_szName; / /組名稱
std: : list < CBaseUnit* > Units m_units; / /元件
組中包含元件鏈表
} ;
元件組實例對象可以通過調用AddUnit 成員函數向元件組添加元件,使得元件組中成員變量鏈表的節點是元件對象的指針,對元件的操作可通過遍歷元件組來實現。
3. 3 標準元件庫的實現
標準元件庫中共包括觸點組、線圈組、程序控制組、計數器指令組、定時器指令組、數學運算組、邏輯運算組等多個元件組,將標準中的元件按功能分配到相應的元件組中。在元件庫中需要將具體的元件組組織起來,并且通過公有接口提供給系統中的其它模塊。針對元件庫的功能出元件庫基類CBaseUnitTempl,在該類中包含成員變量std: : list < CUnitGroup *> namedUnitGroups,該成員變量把元件組的指針作為鏈表的節點,可以把元件組對象的指針存放在該鏈表對象namedUnitGroups 中。此外,該基類主要包含了一組虛函數,標準元件庫繼承該基類,并對繼承的接口進行重寫,元件庫中接口按功能主要分為以下4類:
( 1) 元件庫信息相關接口,包括獲取元件庫ID號、是否是標準元件庫等接口。
( 2) 元件組信息相關接口,包括獲取元件組名稱、各個元件組中元件的數量、創建新的元件組等接口。
( 3) 判斷元件類型的接口,包括判斷元件是否為直線、是否為觸點等接口。
( 4) 元件信息相關的接口,包括獲取元件參數類型、獲取元件大小、獲取元件名稱等接口。
4 總結
開放式數控系統是當今數控技術的發展方向,軟PLC 因具有更好的數據處理能力、網絡通訊能力和開放的體系結構,將傳統的硬PLC 替而代之。筆者以FANUC 數控系統作為硬件平臺,對軟PLC 技術進行分析,尤其是元件庫模塊進行了研究設計,提出了新的解決方案,解決了傳統封閉式數控系統兼容性差、功能不易擴展等問題,提高數控系統的開放性、降低成本。
【淺談基于CNC 的軟PLC 虛擬機中元件庫的研究論文】相關文章:
淺談PLC的前景和未來論文04-29
嵌入式系統中軟外設的研究論文05-06
淺談“包袱”在婚禮主持中的研究與運用論文05-05
淺談道路改造中軟土地基的處理方法論文05-01
淺談研究生論文寫作中的問題與對策09-09
軟土地基處理方法研究論文05-03
基于軟系統思想的公共項目決策支持模式研究04-26
基于林業整地造林研究論文05-04
軟巖中掘進支護的應用論文05-01