內(nèi)窺鏡清消機(jī)的自動控制系統(tǒng)
S7-214的I/O分配示意圖如圖2所示。
4 軟件設(shè)計(jì)
本系統(tǒng)中,在進(jìn)行三種模式清洗和排藥時(shí),需要升降電機(jī)、水/藥分離電機(jī)和水泵、藥泵等多個(gè)電機(jī)按一定順序協(xié)同工作,控制任務(wù)較為復(fù)雜。為了便于編程,我們對清洗模式一、模式二、模式三和排藥等工作過程進(jìn)行分析,將各種工作模式中的動作歸納成對水/藥閥門的控制、水/藥泵的控制和升降電機(jī)的控制。其中,水/藥閥門和水/藥泵的轉(zhuǎn)換由各種工作模式計(jì)數(shù)器的狀態(tài)來判斷,并且在計(jì)數(shù)器達(dá)到預(yù)設(shè)值時(shí),產(chǎn)生停止信號。清洗過程中,根據(jù)零位開關(guān)和下行限位開關(guān)的狀態(tài)進(jìn)行電機(jī)上行/下行的轉(zhuǎn)換。
在S7-214PLC中,與計(jì)數(shù)器相關(guān)的變量有兩個(gè):一個(gè)是當(dāng)前值,為16位符號整數(shù),存儲累積脈沖數(shù);另一個(gè)是計(jì)數(shù)器位,當(dāng)計(jì)數(shù)器的當(dāng)前值大于或等于預(yù)設(shè)值時(shí),此位置為“1”??梢允褂糜?jì)數(shù)器的地址(C+計(jì)數(shù)器號)來存取這些變量。對計(jì)數(shù)器位或當(dāng)前值的存取依賴于所用的指令:帶位操作指令存取計(jì)數(shù)器位,而帶字操作的指令存取計(jì)數(shù)器的當(dāng)前值。
在編程中,利用計(jì)數(shù)器的當(dāng)前值和計(jì)數(shù)器位,可以方便地進(jìn)行工作狀態(tài)的判斷。例如,在清洗模式一中,水洗一次,然后藥洗兩次,再水洗一次,清洗噴頭上、下行一次,遇到下行限位開關(guān),產(chǎn)生一個(gè)計(jì)數(shù)脈沖,計(jì)數(shù)器的預(yù)設(shè)值為4。利用字節(jié)比較指令,可以對工作狀態(tài)進(jìn)行設(shè)定:當(dāng)Cx(x為計(jì)數(shù)器號)的當(dāng)前值為0、3時(shí),進(jìn)行水洗,開水閥、開水泵;當(dāng)Cx的當(dāng)前值為1、2時(shí),進(jìn)行藥洗,開藥閥、開藥泵。當(dāng)計(jì)數(shù)器達(dá)到預(yù)設(shè)值時(shí),Cx的計(jì)數(shù)器位置“1”,用于產(chǎn)生停止信號。利用這種方法,可以較為方便地實(shí)現(xiàn)對各種工作模式的編程,而且如果對工作模式進(jìn)行修改,也非常容易實(shí)現(xiàn)。
為了使系統(tǒng)工作可靠,不僅在硬件和軟件中考慮了聯(lián)鎖保護(hù)和報(bào)警功能,而且為了防止傳感器斷線或電機(jī)中間被卡住,在編程中加入了系統(tǒng)的運(yùn)行狀態(tài)監(jiān)視。即利用看門狗定時(shí)器的原理,用四個(gè)定時(shí)器分別監(jiān)視水/藥分離電機(jī)的運(yùn)行狀態(tài)和升降電機(jī)的運(yùn)行狀態(tài),如果水、藥閥門的動作時(shí)間或上行、下行的時(shí)間超過設(shè)定值,系統(tǒng)將停止電機(jī)的工作,并進(jìn)行報(bào)警。程序框圖如圖3所示。
在整個(gè)編程工作中,我們充分利用了SIEMENS S7-214豐富的指令,如計(jì)數(shù)器的指令、置位和復(fù)位指令以及比較指令等,為程序的編制提供了很大的方便。同時(shí),利用上位機(jī)編程軟件SETP7 Microwin32,可在計(jì)算機(jī)上進(jìn)行梯形圖編輯和程序調(diào)試,提高了工作效率。
內(nèi)窺鏡自動清消機(jī)的控制模式較為復(fù)雜,我們利用SIEMENS S7-214可編程序控制器來控制整個(gè)系統(tǒng)的工作,圓滿地完成了控制任務(wù)。整個(gè)系統(tǒng)工作可靠、性能穩(wěn)定,并保證了內(nèi)窺鏡的清洗、消毒的效果,提高了內(nèi)窺鏡的使用效率。
評論