隨著數控設備的普及,無論是從事數控設備的制造還是數控設備維修的專業人員,對PLC控制程序的特點和應用都需要熟練的掌握。在這里,我們對國內目前常用的發那科0i、西門子802D、華中08 軟件三種數控系統,在PLC編程中各自的特點、區別及應用,作一個簡單的介紹。
1 三種數控系統PLC指令的特點
PLC編程常用的位操作、定時、計數、比較、運算、傳送、賦值、跳轉等指令在三種系統中的作用及功能都大致相同。而發那科和華中08 軟件系統,為了便于機床PLC編程簡化,增加了不少的功能指令。比如說發那科和華中系統中就提供了專門為刀庫或刀架選刀控制的ROT旋轉功能指令,在PLC程序中,運用ROT功能指令,就很方便地實現捷徑選刀功能,相比西門子系統編寫的捷徑選刀判斷程序簡化了許多。另外,在發那科系統中,還應用了PMC 與CNC之間讀、寫窗口數據的讀寫指令WINDR(W),PMC 不僅能很方便地讀取CNC的一些信息(如當前日期),而且可通過PMC向CNC 寫入更多的窗口信息(如參數、宏變量等)。
其中D500為數據地址,它存放功能代碼。如果本程序要讀取當前系統時間,則將D500 寫入系統當前時間的功能代碼151,并在數據表中,將D500 對應的參數設為0,類型設為1,數據設為5,D510 的對應的參數設為0,類型設為1,數據設為100。當ACT=1 時,執行WINDR 功能后,數據表中的D510,D512,D514 的數據將會分別更新為當前系統的年份、月份和日期。
華中08 軟件系統中的PLC指令基本上與發那科一致,只不過是功能指令比發那科少了許多。
2 三種數控系統PLC程序的結構特點
西門子PLC程序分主程序、子程序塊,在主程序塊中編寫調用各子程序塊,在子程序中可采用局部變量進行編程。而發那科和華中系統,將PLC程序劃分為第一級(優先)和第二級優先順序兩級程序,第一級優先執行,掃描時間比第二級短。一般要求第一級程序盡可能短,否則將延長整個程序的執行時間。特別是對于華中08軟件系統,在盡量縮短第一級程序的同時,應將需要高速處理的信號和程序段必須放在第一級程序段進行處理。比如機械手刀庫中機械手扣刀位、停止位等一些短暫信號的程序段,必須要放到第一級程序中,否則會引起誤動作。
3 PLC程序對M代碼的處理
三種系統在PLC 程序中對執行M 代碼的處理方式完全不同。西門子系統由于程序執行M代碼時,對應的PLC變量只保持一個PLC周期,如果在PLC程序中對執行M代碼不作處理,運行程序會在執行M指令后,不管M代碼指定的動作是否執行,都將繼續往下執行程序。所以,對于西門子系統PLC 在接到執行M指令時,必須對系統作一個進給保持和禁止讀入處理,只有在M 指令指定的動作執行完之后,才能取消進給保持和禁止讀入,否則,程序會一直往下執行。而對于發那科系統,M代碼的執行,是通過PLC 程序中的譯碼指令功能來獲得的,如果運行程序執行了M 指令后,沒有從PMC中得到M指令完成信號(G4.3),程序會一直停在M指令上。所以PLC 程序在處理M 指令時,一定要在M 指令指定的動作完成后,向系統發出一個M 指令完成信號(G4.3),告知系統M 指令已經完成,驅動系統繼續往下執行程序。對于華中08軟件系統,與發那科系統一樣,也需要得到一個M指令完成信號來結束執行M指令,但這個完成信號不是由PLC 程序給出,而是通過在系統畫面上填寫輔助功能表格的內容來完成的。具體操作如下:系統設置輔助功能,在這個畫面上的表格中,填寫M 指令,在對應的等待信號欄中填寫的信號地址就是M指令完成信號的地址。不需在PLC程序中作處理。
4 運行程序與PLC信息的交流
數控設備中經常需要加工程序或宏程序與PLC 交換信息。比如換刀宏程序中,要讀主軸上是否有刀,即PLC中一個變量的狀態。發那科系統在處理類似問題時,通常都是通過系統的變量來完成的。其中程序中使用的變量#1000-#1031(只讀)對應PLC 程序中的G54.0-G55.7,#1100-#1131(讀/寫)對應PLC 程序中的F54.0-F55.7。華中系統此功能與發那科系統基本一致。西門子系統除采用一些特定的系統變量外,在系統中還設立了一組公共存儲器變量V49000000-V490000512,它對應于程序中的$A-DBB [0]-$A-DBB[512]的值。此外,還可通過程序中H(H1、H2、H3)值的變化,從PLC 程序中讀出對應變量的變化(V25000012.0-V25000012.2)。注意程序中每執行一次H 值的改變,對應的PLC變量只保持一個PLC 周期。
應用舉例:在西門子802D 系統PLC 程序中,ATC=1 時,將值2 賦值給VB49000010。如果程序中執行到IF SA_DBB[11]= 2 GOTOB _W_ACK這條指令時,會自動跳轉到_W_ACK程序段。
5 結束語
PLC的強大功能,為我們編寫各種控制程序提供了保障。只要我們對PLC 編程的特點、指令功能及應用技巧等方面具備較為熟練的掌握,運用起來就迎刃而解了。
(審核編輯: 智匯張瑜)
分享