李言武
(安徽工貿(mào)職業(yè)技術(shù)學(xué)院,安徽 淮南 232007)
目前,采用PLC控制交通燈顯示是一種較為穩(wěn)定可靠的手段,但由于交通燈顯示是雙向的、同時(shí)按照一定的規(guī)律變化,在設(shè)計(jì)控制程序時(shí)容易造成邏輯關(guān)系不夠清晰,可讀性差,不易理解掌握。為此,本文根據(jù)交通燈顯示PLC控制要求,給出交通燈顯示控制時(shí)序圖,利用計(jì)數(shù)器指令計(jì)數(shù)秒脈沖實(shí)現(xiàn)交通燈顯示計(jì)時(shí),利用比較指令比較計(jì)數(shù)器的當(dāng)前計(jì)數(shù)值驅(qū)動(dòng)交通燈顯示。
圖1 交通燈顯示示意圖
交通燈顯示PLC控制如圖1所示,在十字路口,東西方向?yàn)镽1紅、Y1黃、G1綠3組6盞指示燈,南北方向?yàn)镽2紅、Y2黃、G2綠3組6盞指示燈。當(dāng)某個(gè)方向綠燈點(diǎn)亮(另一方向紅燈點(diǎn)亮)20s后,黃燈以2s周期閃爍3次,然后紅燈點(diǎn)亮(另一方向綠燈點(diǎn)亮、黃燈閃爍),如此循環(huán)顯示。
根據(jù)控制要求,交通燈顯示控制時(shí)序圖如圖2所示,其中某個(gè)方向紅黃綠指示燈顯示的一個(gè)完整周期為50s。
圖2 交通燈顯示控制時(shí)序圖
在圖2中,東西方向綠燈點(diǎn)亮20s,黃燈閃爍5s,紅燈點(diǎn)亮25秒;對(duì)應(yīng)南北方向紅燈點(diǎn)亮25s,綠燈點(diǎn)亮20秒,黃燈閃爍5s。因此,程序設(shè)計(jì)采用的思路如下:
(1)任務(wù)周期設(shè)定。利用50s計(jì)數(shù)器進(jìn)行計(jì)時(shí),即計(jì)數(shù)器指令的計(jì)數(shù)脈沖周期為1s,當(dāng)前值每增1所需時(shí)間為1s ,計(jì)數(shù)器預(yù)置值設(shè)為50。
(2)指示燈顯示控制。通過比較計(jì)數(shù)器指令比較計(jì)數(shù)器的當(dāng)前計(jì)數(shù)值,在達(dá)到設(shè)定值時(shí)分別驅(qū)動(dòng)綠燈、黃燈、紅燈3色交通燈顯示。① 東西方向: 0≤“C0”當(dāng)前值≤19,綠燈顯示;“C0”當(dāng)前值=20、22、24,黃燈顯示,達(dá)到間隔2s閃爍;25≤“C0”當(dāng)前值≤50,紅燈顯示。②南北方向:0≤“C0”當(dāng)前值≤24,紅燈顯示;25≤“C0”當(dāng)前值≤44,綠燈顯示;“C0”當(dāng)前值=45、47、49,黃燈顯示,達(dá)到間隔2s閃爍。
程序設(shè)計(jì)主要運(yùn)用整數(shù)比較指令和增計(jì)數(shù)器指令,其格式及功能如表1所列。
表1 主要指令格式及功能
編程元件分配及功能如表2所列。
表2 編程元件分配及功能
依據(jù)交通燈顯示控制時(shí)序圖,利用整數(shù)比較指令和增計(jì)數(shù)器指令編寫控制程序如圖3所示。
圖3 交通燈顯示PLC控制梯形圖
在圖3中,I0.0為啟停開關(guān)SB1,控制交通燈顯示狀態(tài),程序解析如下:(1)網(wǎng)絡(luò)1程序段,實(shí)現(xiàn)50s計(jì)時(shí)器功能:特殊寄存器SM0.5觸點(diǎn)提供周期T為1s、占空比50%的時(shí)鐘脈沖;增計(jì)數(shù)器C0實(shí)現(xiàn)“1s時(shí)鐘脈沖”的計(jì)數(shù),總數(shù)為50個(gè),即50s計(jì)數(shù);中間寄存器M0.0觸點(diǎn)實(shí)現(xiàn)增計(jì)數(shù)器C0復(fù)位(C0當(dāng)前計(jì)數(shù)值置0,輸出狀態(tài)位置0)。
(2)網(wǎng)絡(luò)2程序段,實(shí)現(xiàn)循環(huán)控制:增計(jì)數(shù)器C0的觸點(diǎn)實(shí)現(xiàn)輸出線圈M0.0狀態(tài)為置1,即M0.0=1,使中間寄存器M0.0的觸點(diǎn)接通。
(3)網(wǎng)絡(luò)3~5程序段,實(shí)現(xiàn)東西方向交通燈顯示控制:增計(jì)數(shù)器C0當(dāng)前值為0~19綠燈點(diǎn)亮;增計(jì)數(shù)器C0當(dāng)前值為20~24黃燈閃爍3次;增計(jì)數(shù)器C0當(dāng)前值為25~50紅燈點(diǎn)亮。
(4)網(wǎng)絡(luò)6~8程序段,實(shí)現(xiàn)南北方向交通燈顯示控制:增計(jì)數(shù)器C0當(dāng)前值為0~24紅燈點(diǎn)亮;增計(jì)數(shù)器C0當(dāng)前值為25~44綠燈點(diǎn)亮;增計(jì)數(shù)器C0當(dāng)前值為45~49黃燈閃爍3次。
連接好 PLC外圍接線,確認(rèn)無誤后接通電源,使交通燈顯示PLC控制線路處于正常工作狀態(tài),程序控制功能的調(diào)試步驟如下:①編寫梯形圖程序,編譯后將梯形圖程序下載到PLC中。②閉合啟停開關(guān)SB1,交通燈以設(shè)定好的工作方式運(yùn)行顯示。③運(yùn)行期間,斷開啟停開關(guān)SB1,交通燈立即停止顯示。
對(duì)交通燈顯示PLC控制程序進(jìn)行修改,實(shí)現(xiàn)黃燈閃爍次數(shù)由3次變?yōu)?次,紅燈和黃燈顯示要求不變,則交通燈顯示控制時(shí)序圖如圖4所示,其中某個(gè)方向紅黃綠指示燈顯示的一個(gè)完整周期為58s。
圖4 交通燈顯示控制時(shí)序圖
在圖4中,交通燈依據(jù)計(jì)數(shù)器C0當(dāng)前值的顯示狀態(tài)設(shè)定如下:
(1)東西方向。0≤“C0”當(dāng)前值≤19,綠燈顯示;“C0”當(dāng)前值=20、22、24、26、28,黃燈顯示;29≤“C0”當(dāng)前值≤58,紅燈顯示。
(2)南北方向。0≤“C0”當(dāng)前值≤28,紅燈顯示;29≤“C0”當(dāng)前值≤48,綠燈顯示;“C0”當(dāng)前值=49、51、53、55、57,黃燈顯示。
實(shí)踐表明,采用此方法設(shè)計(jì)交通燈PLC控制程序優(yōu)點(diǎn)如下:
(1)邏輯關(guān)系清晰。根據(jù)交通燈顯示控制要求,給出紅黃綠指示燈工作時(shí)序圖,程序設(shè)計(jì)邏輯關(guān)系清晰。
(2)可讀性好。利用計(jì)數(shù)器指令實(shí)現(xiàn)秒計(jì)數(shù)進(jìn)行計(jì)時(shí),利用比較指令比較計(jì)數(shù)器當(dāng)前計(jì)數(shù)值驅(qū)動(dòng)交通燈顯示,顯示狀態(tài)轉(zhuǎn)換關(guān)系明確。
(3)便于掌握。程序設(shè)計(jì)主要使用的計(jì)數(shù)器指令和比較指令功能簡(jiǎn)單,易于掌握和靈活應(yīng)用。