西門(mén)子s7-1500CPU模塊
數(shù)控系統(tǒng)的PLC控制模塊實(shí)時(shí)性要求較高,因而必須在系統(tǒng)的實(shí)時(shí)域內(nèi)運(yùn)行。根據(jù)通用數(shù)控系統(tǒng)的PLC控制以及數(shù)控系統(tǒng)軟件模塊化設(shè)計(jì)的要求,將數(shù)控系統(tǒng)的PLC控制模塊作為RT-Linux系統(tǒng)的實(shí)時(shí)任務(wù)之一,其優(yōu)先級(jí)和調(diào)用周期取決于數(shù)控系統(tǒng)各任務(wù)的實(shí)時(shí)性要求以及控制要求的響應(yīng)時(shí)間,。PLC控制模塊主要完成數(shù)控系統(tǒng)的邏輯控制,而被控制的輸入輸出也就是I/O的輸入輸出由PC機(jī)I/O接口卡輸入輸出模塊來(lái)完成,即完成數(shù)控系統(tǒng)的PLC控制需要兩個(gè)RT-Linux實(shí)時(shí)任務(wù),如圖3所示,這兩個(gè)任務(wù)分別為RT-Task1(以下稱“適配卡輸入輸出"),、RT-Task2(以下稱“PLC控制")。
圖3是基于RT-Linux系統(tǒng)的嵌入式PLC實(shí)時(shí)任務(wù)關(guān)系圖,其中適配卡輸入輸出主要是完成數(shù)控系統(tǒng)的輸入輸出,即各軸位置控制命令的輸出,、I/O的輸出,、I/O輸入以及位置反饋輸入,它實(shí)際上是數(shù)控系統(tǒng)控制卡的設(shè)備驅(qū)動(dòng)模塊,其優(yōu)先級(jí)在數(shù)控系統(tǒng)的各實(shí)時(shí)任務(wù)中為。根據(jù)其硬件特征以及運(yùn)動(dòng)控制要求,其響應(yīng)周期為100μs,響應(yīng)時(shí)鐘周期由PC機(jī)I/O接口卡上的硬件定時(shí)器產(chǎn)生,。根據(jù)RT-Linux系統(tǒng)對(duì)硬件中斷的響應(yīng)機(jī)制,輸入輸出控制任務(wù)的實(shí)時(shí)性是可以保證的,這一點(diǎn)在我們的數(shù)控系統(tǒng)已經(jīng)得到驗(yàn)證,。

圖3中PLC控制主要是完成數(shù)控系統(tǒng)的PLC控制功能,其任務(wù)優(yōu)先級(jí)低于適配卡輸入輸出,同時(shí)也低于數(shù)控系統(tǒng)的精插補(bǔ)實(shí)時(shí)任務(wù)和位置伺服實(shí)時(shí)任務(wù),。根據(jù)通用數(shù)控系統(tǒng)的PLC控制要求,確定其響應(yīng)周期為5ms,響應(yīng)周期由RT-Linux的軟件定時(shí)器產(chǎn)生,根據(jù)RT-Linux系統(tǒng)的實(shí)時(shí)多任務(wù)調(diào)度機(jī)制,PLC控制任務(wù)的實(shí)時(shí)性是可以保證的。在實(shí)際應(yīng)用中也得到驗(yàn)證,。
嵌入式PLC的實(shí)時(shí)任務(wù)模塊數(shù)據(jù)通訊
完成數(shù)控系統(tǒng)PLC控制的兩個(gè)實(shí)時(shí)任務(wù)之間由于需要輸入輸出的數(shù)據(jù)量(一般情況下為64輸入,64輸出,但輸入輸出根據(jù)需要還可以擴(kuò)展)不太大,因而采用共享內(nèi)存的通訊方式,在適配卡輸入輸出和PLC控制
兩個(gè)實(shí)時(shí)任務(wù)之間開(kāi)兩塊共享內(nèi)存,一塊用于適配卡向PLC控制傳輸I/O口狀態(tài)信息,另一塊用于PLC控制向適配卡輸入輸出任務(wù)傳輸經(jīng)PLC邏輯處理后的控制信息,。
西門(mén)子s7-1500CPU模塊