機床數控系統中嵌入式plc的設計
在機床數控系統中,電氣設備的控制占有重要的地位。目前,一般采用可編程控制器(PLC)進(jìn)行機床電氣控制。PLC可靠性高,使用方便,對于復雜的,控制點(diǎn)數較多的應用場(chǎng)合,可以在PLC基本單元外加上一定數目的擴展單元,實(shí)現復雜的電氣控制功能。在數控機床上。如果采用PLC進(jìn)行電氣控制,必需在PLC與NC 間建立電氣聯(lián)系,否則,NC程序中的MST指令反映不到PLC中,PLC也就不可能做出相應的動(dòng)作。目前市場(chǎng)上出售的PLC一般都具有通訊功能,可以利用這種功能在PLC與NC之間建立聯(lián)系。由于PLC的通訊方式為串行通訊,通訊速度比較低,對于數控機床的某些實(shí)時(shí)性要求很強的信號如急停,超程等。就難以勝任一必需采取其它措施滿(mǎn)足這些特殊需要,但這又增加了系統的復雜程度。為了提高速度,降低戚本。在數控系統中t可以采用開(kāi)關(guān)量I/O板加外接繼電器,配臺主機的軟件對電氣開(kāi)關(guān)進(jìn)行控制。但此方案周NC主機要直接參與電氣控制邏輯的運算過(guò)程。占用了主機的部分工作時(shí)間,增加了軟件的復雜程度。更重要的是。把過(guò)多的功能集中到主機使主機-發(fā)生故障的風(fēng)險加大 出于對實(shí)時(shí)性和可靠性的考慮。作者在研制五軸聯(lián)動(dòng)數控系統的過(guò)程中。設計了一種嵌入式PLC.在保證實(shí)時(shí)性的同時(shí)。使故障風(fēng)險相對分散。
本文引用地址:http://dyxdggzs.com/article/201710/365810.htm1 嵌入式PLC的硬件結構
我們研制的五軸聯(lián)動(dòng)數控系統是一種基于工業(yè)PC 的多CPU 分布式開(kāi)放化數控系統。做為其中的一部分,嵌入式PLC的設計也必需遵循開(kāi)放化的原則。其硬件是模塊化的。按照標準的工控機插卡進(jìn)行設計。目前,工控機的底板總線(xiàn)有兩類(lèi):ISA總線(xiàn)和PCI總線(xiàn)。ISA總線(xiàn)的數據轉輸速率比PCI總線(xiàn)要低得多。但已完全能夠滿(mǎn)足一般工業(yè)控制的需要,而且ISA 總線(xiàn)對工控機擴展卡的要求比PCI要寬松。 從已有的工業(yè)應用經(jīng)驗看??煽啃砸脖容^高。因此我們仍選擇ISA總線(xiàn)做為嵌入式PLC設計的基礎。
嵌入式PLC的組成參圖1
嵌入式PLC的CPU 采用Intel16 位單片機80C196。其獨特的寄存器一累加器結構以及三操作數指令可以大大減少程序中數據傳送類(lèi)指令的數目,提高程序運行的效率 圖1中雙口存儲器用于PLC與數控系統主機之間交換信息,數控系統運行過(guò)程中.PLC在不斯地進(jìn)行電氣控制邏輯運算的同時(shí)。也周期性地刷新雙口RAM 中的內容,把電氣開(kāi)關(guān)狀態(tài).PLC運行狀態(tài)等反映到雙口RAM中。有一部分面板按鍵如循環(huán)啟動(dòng),進(jìn)給保持。手動(dòng)等用于NC操作,不能按一般的I/O點(diǎn)處理。嵌入式PLC識別按鍵操作并在雙口RAM 中維護一個(gè)循環(huán)隊刊記錄這些按鍵操作。另一方面,NC 軟件根據加工程序中的M、S和T指夸修改雙口RAM 中特定的數據,PLC周期性地讀取這些數據,并據此控制電氣設備的通斷。對于實(shí)時(shí)性要求很高的信號,PLC可在更新雙口RAM 內容后,通過(guò)ISA總線(xiàn)向NC發(fā)出中斷。
這里運用雙口RAM 完成NC與嵌入式PLC之間的信息交換,與采用并行口的方案相比。該方法簡(jiǎn)潔明了,無(wú)需復雜的通訊協(xié)議,NC可以隨時(shí)了解外部設備開(kāi)關(guān)狀態(tài)而不需額外消耗時(shí)間。效率高于其它實(shí)現方式。
圖1中包括一片的靜態(tài)RAM 芯片6264,用后備電池供電-主要用于存儲PLC梯形圖程序。在NC中對電氣控制邏輯進(jìn)行編程,編譯后經(jīng)雙口RAM 存入6264中。PLC運行這部分程序。完成電氣控制。
2 軟件設計
嵌入式PLC軟件設計有兩部分內容,一個(gè)是工控PC機中相關(guān)程序設計,另一個(gè)是嵌入式PLC 自身所帶監控程序設計。前者的主要功能模塊參圖2。
梯形圖編程模塊為用戶(hù)提供方便的PLC電氣控制邏輯編程手段,其生成結果為梯形圖文件。梯形圖文件僅存儲I/0點(diǎn)之間的邏輯關(guān)系,其格式與嵌入式PLC所用CPU類(lèi)型無(wú)關(guān),以提高編程模塊的適應性及可重用性。梯形圖編譯模塊則用于把該文件轉化為一系列的80C196機器指令,并加上一些必要的附加指令,產(chǎn)生BIN文件,即機器碼文件。此部分應當考慮到PLC中I/O點(diǎn)的資源分布情況,使最后生成的BIN 文件的指令與實(shí)際I/O 資源協(xié)調一致。通訊模塊用于把BIN文件傳輸到雙口 RAM 中,再由PLC監控程序把它轉儲到6264中。此部分提供用戶(hù)開(kāi)發(fā)接口,以便用戶(hù)自行控制BIN文件的傳輸,為用戶(hù)提供對PLC進(jìn)行現場(chǎng)編程的功能。監控模塊提供用戶(hù)I/O 點(diǎn)監視與設置、PLC運行狀態(tài)/編程狀態(tài)設置等功能,方便用戶(hù)現場(chǎng)調試。另外,為了使用戶(hù)能夠在自主開(kāi)發(fā)的應用程序中對嵌入式PLC進(jìn)行有效的監控,此部分也提供開(kāi)放的用戶(hù)接口。
嵌入式PLC的監控程序主要實(shí)現以下功能:6264中邏輯處理程序(即由工控機傳來(lái)的BIN文件)及運行狀態(tài)的有效性檢驗,I/O 點(diǎn)及雙口RAM 映射區域的周期性刷新,運行故障監鍘,面板按鍵的檢測等。當6264中已存有有效的BIN文件,且已設置好有效的運行標志時(shí),啟動(dòng)運行6264中的邏輯處理程序。另外在運行期問(wèn)。運用Watch Dog對運行是否正常加以監視。防止并處理諸如運行6264中程序時(shí)發(fā)生超時(shí)錯,6264中的邏輯處理程序出錯等異常情況此系統設計的優(yōu)點(diǎn)總結如下:
?。?)采用插卡式設計,NC與PLC之間無(wú)多余導線(xiàn)連接,可靠性高,實(shí)時(shí)性有保證。
?。?)運用雙口RAM 進(jìn)行信息交換。速度快,線(xiàn)路簡(jiǎn)潔。
?。?)嵌入到工拉機系統中。開(kāi)發(fā)、調試、使用和維護方便。便于與用戶(hù)的軟硬件組臺成更復雜的系統。
3 在數控系統中使用嵌入式PLC
如前所述。數控機床的電氣控制可以采用三類(lèi)方法。即:外裝式PLC,虛擬PLC和嵌入式PLC 如果采用常規的程序設計方法,對于 以上三種電氣控制方式。就得設計不同的軟件接口,數控系統軟件主體就會(huì )直接涉及到電氣控制的實(shí)現方式及其細節。一但控制方式發(fā)生變化,將不得不對軟件進(jìn)行大量修改。這樣編寫(xiě)出的軟件通用性差,難以適應變化 為了增加軟件與設備之間的相互獨立性。我們運用面向對象技術(shù)對系統進(jìn)行了開(kāi)放化設計。
顯然,不論哪一種控制方式,其目標都是相同的。經(jīng)認真分析,我們找出了三者之問(wèn)的共同點(diǎn),由此得出一抽象類(lèi)CPLC,它提供了數控機床電氣控制所有的外部特征,為數控系統主體軟件提供了完備的接口函數,數控系統中其它部分只需調用相應接口函數就可使電氣開(kāi)關(guān)做出相應的動(dòng)作。但該部分不涉及電氣操作過(guò)程中的細節??紤]到數控系統中電氣控制點(diǎn)數比較多,為每個(gè)控制動(dòng)作如液壓開(kāi),液壓關(guān)等等各設計一個(gè)接口函數會(huì )導致過(guò)多的接口函數,應用不方便,因此,我們設計了一個(gè)通用的接口函數,其定義如下:
如果定義液壓開(kāi)關(guān)編號為1,冷卻開(kāi)關(guān)編號為2,……,
則開(kāi)液壓的函數調用為
在抽象類(lèi)CPIC的基礎上,針對三種方式分別定義了派生類(lèi)CExternalPlc、CVirtualPLc和CEmbedPLc,在這些類(lèi)中,才真正對接口函數編程,完成硬件操作。按照這種設計思想得到的電氣控制部分軟件具有圖3所示的結構。由圖中3可以看出,這種設計方法在數控系統主體軟件與電氣控制硬件之間加入了抽象類(lèi)層次,使其相互依賴(lài)性減弱,成為相對獨立的兩部分。運用這種方法得到的數控系統軟件具有與設備無(wú)關(guān)的特征 當有新的硬件設備出現時(shí)。只需在原抽象類(lèi)上派生出新的類(lèi),按照共同的標準對接口函數進(jìn)行解釋。操縱硬件做出相應的動(dòng)作即可,無(wú)需對軟件其它部分做任何修改。太太提高了軟件設計的效率。實(shí)際上。在對接口函數參數的意義做出明確的規范后,其它任何人都可以參照該規范設計出新的電氣控制硬件及相應的驅動(dòng)程序,集成人系統中。這也就是數控系統開(kāi)放化設計的主要目的。
4 結束語(yǔ)
數控系統的開(kāi)放化設計設計者的知識范圍和經(jīng)駐密切相關(guān)。只有在充分了解現有設計技術(shù)及用戶(hù)需要,并對其近期內的發(fā)展做出預測的基礎上,運用工程設計方法,才有可能得到完善的開(kāi)放化數控系統。目前對開(kāi)放化的討論多著(zhù)眼于系統硬件結構。操作系統及開(kāi)發(fā)環(huán)境。具體如何實(shí)現開(kāi)放化特別是軟件的開(kāi)放化則談的很少。本文從硬件到軟件對電氣控制子系統進(jìn)行了開(kāi)放化設計。對此做出了有益的探索。該子系統已集成人我們開(kāi)發(fā)的五軸聯(lián)動(dòng)數控系統中。從使用效果來(lái)看,其開(kāi)放的接口標準以及與設備無(wú)關(guān)的軟件設計有助于減少編寫(xiě)數控系統主體軟件時(shí)的錯誤,有較強的適應性和可靠性。
評論