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