PLC源程序在華中世紀(jì)星維修實(shí)驗(yàn)臺中編譯及加載的實(shí)現(xiàn)
點(diǎn)擊:1715
A+ A-
所屬頻道:新聞中心
數(shù)控機(jī)床順序控制的邏輯離散信息如主軸起停和正反轉(zhuǎn)等開關(guān)量信息的處理,是由可編程序邏輯控制器(PLC)完成的。PLC在機(jī)床中以獨(dú)立型和內(nèi)置型兩種形式存在。獨(dú)立型PLC是各個(gè)廠家生產(chǎn)的常見的自成獨(dú)立自動控制設(shè)備,有成熟的系統(tǒng)運(yùn)行平臺和程序?qū)崿F(xiàn)方法;而內(nèi)置型PLC是內(nèi)嵌在CNC裝置內(nèi),從屬于CNC裝置并與CNC裝置集成于一體,對其運(yùn)行方式和程序?qū)崿F(xiàn)知之甚少。下面通過利用c語言編寫的PLC源程序在華中數(shù)控系統(tǒng)中的實(shí)現(xiàn),使用戶能對數(shù)控機(jī)床進(jìn)行更好的故障診斷和維護(hù),對完善PLC程序、進(jìn)一步提升機(jī)床的性能有一定的實(shí)際意義。
1 華中數(shù)控內(nèi)置式PLC的軟件結(jié)構(gòu)及其運(yùn)行過程
和一般c語言程序都必須提供Main()函數(shù)一樣,用戶編寫內(nèi)置式PLC的C語言程序必須提供如下系統(tǒng)函數(shù)定義及系統(tǒng)變量值:
extern void init(void);//初始化PLC
extern unsigned plcl—time;//函數(shù)plcl()的運(yùn)行周期,單位:ms
extern void plcl(void);//PLC程序人口1
extem unsigned ple2一time;//函數(shù)plc2()的運(yùn)行周期,單位:ms
extern void pie2(void);//PLC程序人口2
開機(jī)數(shù)控系統(tǒng)初始化PLC時(shí),將調(diào)用PLC提供的init()函數(shù)(該函數(shù)只被調(diào)用一次)。在系統(tǒng)初始化完成后,數(shù)控系統(tǒng)將周期性地運(yùn)行如下過程:
(1)從硬件端口及數(shù)控系統(tǒng)成批讀人所有X、F、P寄存器的內(nèi)容;
(2)如果plel—time所指定的周期時(shí)間已到,調(diào)用函數(shù)plcl();
(3)如果plc2一time所指定的周期時(shí)間已到,調(diào)用函數(shù)plc2();
(4)系統(tǒng)成批輸出G、Y、B寄存器。一般地,plcl—time總是小于pie2一time,即函數(shù)plel()較plc2()調(diào)用的頻率要高。因此,華中數(shù)控稱函數(shù)plcl()為PLC高速掃描進(jìn)程、plc2()為低速掃描進(jìn)程。
2 利用華中數(shù)控系統(tǒng)平臺生成PLC源程序
華中數(shù)控系統(tǒng)PLC源程序的編譯環(huán)境為:BorlandC++3.1和MS.DOS 6.22。數(shù)控系統(tǒng)約定PLC源程序后綴為“.cld”,即“*.cld”文件為PLC源程序。打開華中數(shù)控系統(tǒng)并進(jìn)入DOS界面,按如下步驟操作:
(1)在DOS環(huán)境下,進(jìn)入數(shù)控軟件PLC所安裝的目錄,如:
C:\HNC-21TF\PLC
(2)在DOS提示符下敲入如下命令:
C:\HNC-21\plc)edit plc—null.cld(回車)
此項(xiàng)操作的作用是建立一個(gè)文本文件,也就是用
c語言編寫的PLC源程序,并命名為“plc—null.eld”,其程序其框架結(jié)構(gòu)為:
?。?
//plc—null.cld:
?。疨LC程序空框架,保證可以編譯運(yùn)行,但什么功能也不提供
?。鏅?quán)所有:武漢華中數(shù)控系統(tǒng)有限公司,保留所有權(quán)利。
?。痟ttp://huazhongenc.com email:market@hua—
zhongcnc.com
#pragma inline
#Include”plc.h”//PLC系統(tǒng)頭文件
void init(){}//PLC初始化函數(shù)
void plcl(void)//PLC程序人口1
{plcl—time=16;//系統(tǒng)將在16 ins后再次調(diào)用plcl()函數(shù)
}
void plc2(void)//PLC程序人口2
{Plc2一time=32;//系統(tǒng)將在32ms后再次調(diào)用plc2()函數(shù)
}
3 PLC源程序在華中C系統(tǒng)中的編譯及加載
保存并退出編輯文本后。對于數(shù)控銑床,在數(shù)控系統(tǒng)的PLC目錄下,輸入如下命令即可生成執(zhí)行文件:C:\HNC-21\pie>makeplc plc—null.cld(回車)而對于數(shù)控車床,必須在數(shù)控系統(tǒng)的PLC目錄下,修改M.bat文件(M.bat文件是建立的編譯PLC源文件的批處理文件)。具體操作如下:
修改完后,此時(shí)仍然在PLC的目錄下,這時(shí)運(yùn)行M.bat文件,系統(tǒng)就會自動對PLC的源文件進(jìn)行編譯,其編譯過程如下:
系統(tǒng)會響應(yīng):
并且又回到DOS提示符下:c:、HNC-2I\plc)這時(shí)表示PLC程序編譯成功,編譯結(jié)果為文件plc—null.eom。然后,更改數(shù)控軟件系統(tǒng)配置文件NCBIOS.CFG,并加上一行文本:device=C:\HNC.21ff\plc\pie—null.tom,讓系統(tǒng)啟動時(shí)加載新近編寫的PLC程序,具體操作如下:
在DOS環(huán)境下,進(jìn)人數(shù)控軟件所安裝的目錄,如c:、HNC-2Iff、在DOS提示符下敲入如下命令:c:\HNC-21tf)edit ncbios.cfg(回車),可編輯數(shù)控系統(tǒng)配置文件。一般情況下,配置文件的內(nèi)容如下(具體內(nèi)容因機(jī)床的不同而異):
以上任務(wù)完成后,重啟華中數(shù)控系統(tǒng),用戶編寫的PLC程序就能被系統(tǒng)運(yùn)行。
4 結(jié)論
通過上述工作,實(shí)現(xiàn)了用戶編寫的PLC源程序在華中數(shù)控系統(tǒng)的運(yùn)行,不但更深地理解了開關(guān)量順序控制的PLC控制的機(jī)理和更好地診斷機(jī)床故障,而且為PLC內(nèi)置型數(shù)控系統(tǒng)的功能擴(kuò)展提供了思路。
(審核編輯: 智匯工業(yè))
分享