羅秋慧,吳延斌,燕永敏
1.鄭州科技學(xué)院,河南 鄭州 450000
2.鄭州西電系統(tǒng)控制工程技術(shù)有限公司,河南 鄭州 450000
單片微型計算機(jī)包含微處理器(CPU)、存儲器、輸入/輸出接口、定時器和計數(shù)器(T/C)以及中斷系統(tǒng)等功能部件[1]。單片機(jī)集成度高、體積小,可以根據(jù)用戶編寫的程序控制芯片的各個引腳在不同時間輸出高電平或低電平,從而控制與引腳相連的外圍電路的狀態(tài)。PLC 控制器為可編程邏輯控制器,適用性強(qiáng),能適應(yīng)惡劣環(huán)境[2]。文章根據(jù)不同的設(shè)計方法,分析單片機(jī)控制和PLC 控制設(shè)計的異同和各自的優(yōu)勢。
東西方向綠燈亮5 s,汽車通行;南北方向紅燈亮5 s,汽車禁行。5 s 時間定時結(jié)束,東西方向綠燈滅,未過斑馬線的車輛禁行,黃燈亮3 s,使行駛在路口中間的車輛通過。之后東西方向紅燈亮起5 s,車輛禁行;南北方向綠燈亮5 s,車輛通行。后南北方向綠燈滅,未過斑馬線的車輛禁行,黃燈亮3 s,使行駛在南北路口中間的車輛通過,循環(huán)往復(fù)。
STC89C52 單片機(jī)屬于應(yīng)用比較廣泛的單片機(jī),占有的市場份額較大,且能在網(wǎng)絡(luò)、書籍等各個資源平臺找到眾多學(xué)習(xí)資料。STC89C52 芯片問世較早,市場應(yīng)用成熟。單片機(jī)硬件電路設(shè)計包括兩方面,即系統(tǒng)擴(kuò)展(單片機(jī)內(nèi)部的功能單元)和系統(tǒng)的配置(按照系統(tǒng)功能的要求配置外圍設(shè)備)。單片機(jī)最小應(yīng)用系統(tǒng)包含電源、晶振電路和復(fù)位電路,如圖1 所示[3]。
圖1 單片機(jī)最小應(yīng)用系統(tǒng)
1.2.1 晶振電路設(shè)計
選用STC89C52 單片機(jī)作為控制核心。在電路中為防止外部設(shè)備的干擾,在電源供電VCC 和接地GND端口,加入0.1 μF 電容[4]。單片機(jī)能正常工作的必要條件之一是時鐘電路,所以單片機(jī)很需要晶振。單片機(jī)STC89C52 的18 引腳和19 引腳為單片機(jī)的晶振引腳,連接11.059 2 MHz 的晶振,外接2 個20 pF 電容,濾除噪聲,使晶振起振的振蕩信號保持穩(wěn)定波形,如圖2 所示。
圖2 晶振電路
1.2.2 復(fù)位電路設(shè)計
復(fù)位電路接在單片機(jī)的9 引腳RST 復(fù)位引腳上,如圖3 所示。當(dāng)程序運(yùn)行中遭受到意外干擾造成程序死機(jī)時,需要復(fù)位電路使單片機(jī)重新開始。
圖3 復(fù)位電路
單片機(jī)電路為5 V,交通燈在1~20 mA 電流的情況下能正常工作,超過20 mA,交通燈中的發(fā)光二極管會被燒毀。二極管分壓在2 V 左右,為保證發(fā)光二極管在20 mA 以下工作,需要有電阻限制電流大小。將阻值為1 kΩ 的電阻與單片機(jī)電路相連,如圖4 所示。將VCC 位置轉(zhuǎn)換成單片機(jī)的P0.0 接口,使P0.0處于高電平,小燈即可點(diǎn)亮。
圖4 發(fā)光二極管電路
1.2.3 交通燈控制系統(tǒng)電路設(shè)計
單片機(jī)整體硬件設(shè)計如圖5 所示??偣彩褂? 個I/O 口,東西方向6 個燈需要3 個I/O 口,南北方向6個燈需要3 個I/O 口,東、西、南、北方向燈的控制方式和時間一致,故需要6 個I/O 口。同時,STC89C52單片機(jī)雖有5 V 供電,但引腳處于高電平時,其電壓不能滿足實(shí)際需要,沒有實(shí)際負(fù)載拉動能力,故需要引入上拉電阻,帶動P0 口電壓值,使LED 小燈能夠亮起。
圖5 交通燈控制系統(tǒng)電路原理圖
1.3.1 模式切換時間設(shè)計
采用定時器實(shí)現(xiàn)定時控制,根據(jù)定時時間實(shí)現(xiàn)交通燈模式切換,通過控制單片機(jī)P0.0~P0.5 引腳輸出的高低電平控制不同顏色交通燈的亮滅。在定時器中斷服務(wù)程序中,實(shí)現(xiàn)4 種模式的切換:先使東西方向綠燈亮,南北方向紅燈亮,時間為5 s;5 s 之后,切換到下一狀態(tài),使東西方向綠燈滅,東西方向黃燈亮3 s;之后進(jìn)行下一狀態(tài),南北方向綠燈亮5 s,東西方向紅燈亮5 s;5 s 之后,南北方向綠燈滅,黃燈亮3 s。
1.3.2 程序設(shè)計步驟
(1)初始化定時器中斷函數(shù),根據(jù)定時時間設(shè)置定時器初始高低位參數(shù),確定定時器定時模式,開啟定時器。(2)設(shè)置4 種十字路口紅綠燈運(yùn)行模式,并送到緩沖區(qū)。(3)將緩沖區(qū)索引位置存放的數(shù)據(jù)送到P0.0 口。在此期間定時器一直處在定時狀態(tài),并且到定時時間中斷響應(yīng),定時結(jié)束后更新。
日本三菱PLC 控制器市場占有份額相對較大,應(yīng)用場合較多,且可靠性相對較高,與其他控制器相比,性價比較高,故文章選用三菱PLC 系列控制器[5]。系統(tǒng)交通信號燈有一個開始按鈕,按下開始按鈕,系統(tǒng)設(shè)計的交通燈開始進(jìn)入工作狀態(tài):南北方向紅燈亮,車輛禁行;東西綠燈亮,車輛通行,定時時間為5 s。5 s時間到,進(jìn)入下一狀態(tài),即南北信號燈黃燈亮3 s,東西方向紅燈亮,定時3 s。定時時間到,進(jìn)入下一狀態(tài),此時南北方向綠燈亮,東西方向紅燈亮,亮起時間為5 s。定時器定時,定時結(jié)束進(jìn)入下一狀態(tài),此時南北方向紅燈亮,東西方向黃燈亮,亮起時間為3 s。定時結(jié)束,進(jìn)入開始的狀態(tài),周而復(fù)始。
輸入接口接按鍵SB1,為紅綠燈的開始按鈕,選擇FX2N 系列控制器。連接好電源,將按鈕與輸入口X0 直接連接,輸出口Y0 接南北綠燈,Y1 接南北黃燈,Y2 接南北紅燈,Y3 接?xùn)|西紅燈,Y4 接?xùn)|西綠燈,Y5接?xùn)|西黃燈。將通信線與計算機(jī)連接,硬件設(shè)計配置完成,如圖6 所示。
圖6 PLC 控制接線示意圖
(1)確定每個輸入輸出部分的接口設(shè)備,確定紅綠燈接線口。(2)選用合適的編程語言。PLC 控制有很多編程方法,可根據(jù)控制情況的不同,選用不同的編程語言[6]。編程邏輯與實(shí)際控制方式相符合。PLC控制系統(tǒng)是從一種狀態(tài)切換到另一種狀態(tài),并且有一定的時間順序關(guān)系,選用順序控制方式,輸入端X0 接啟動按鈕SB1,東西南北各燈接輸出接口的Y0 到Y(jié)5口。I/O 分配中,輸入接線端的啟動按鈕為SB1,輸入繼電器為X0;輸出接線端分別為南北綠燈、南北黃燈、南北紅燈、東西紅燈、東西綠燈以及東西黃燈,匹配的輸出繼電器分別為Y0、Y1、Y2、Y3、Y4、Y5。根據(jù)控制設(shè)計要求,程序設(shè)計選用并行分支設(shè)計。并行分支是在滿足相應(yīng)條件后,多個流程分支可同時執(zhí)行。將十字路口12 個交通燈分成兩種模式,可以同步運(yùn)行,故選用順序轉(zhuǎn)移圖,狀態(tài)轉(zhuǎn)移圖如圖7 所示。將程序?qū)懲昃幾g下載到PLC 控制器即可。
圖7 交通燈控制狀態(tài)轉(zhuǎn)移圖
單片機(jī)制作需要模電和數(shù)電基礎(chǔ)知識,編程語言需要匯編語言或者C 語言基礎(chǔ)。設(shè)計人員需要一定的知識儲備。而且在程序編程時,單片機(jī)的程序指令過多,編程語言不能出現(xiàn)錯誤。邏輯一旦出錯,則很難修改,且功能也無法實(shí)現(xiàn)。
PLC 控制屬于封裝好的模塊,在應(yīng)用時只需要按照說明書接線。設(shè)計語言有梯形圖、狀態(tài)功能圖等,簡單易學(xué)。而且梯形圖編程符合基礎(chǔ)電路知識,操作人員能很快看懂,所需的知識較為簡單。
單片機(jī)成本低廉、價格實(shí)惠、性價比較高??刂乒δ芩韬诵牟考某杀局挥袔资?。PLC 的成本相對較高,控制器成本較高。單片機(jī)在價格方面占優(yōu)勢。
PLC 交通燈控制系統(tǒng)修改方便,操作簡單、易上手。城市交通管理人員不需專業(yè)的知識儲備,電工人員能夠通過學(xué)習(xí)很快上手,并且可現(xiàn)場修改程序。PLC 控制系統(tǒng)抗干擾能力強(qiáng),可抵抗環(huán)境中各種電磁信號的干擾。單片機(jī)抗干擾能力弱,容易受現(xiàn)場磁場的干擾,設(shè)備維修人員需要具備較高的知識水平。
文章通過分析單片機(jī)與PLC 交通燈控制系統(tǒng)對操作人員的要求、價格、抗干擾能力等,得出以下結(jié)論:(1)單片機(jī)和PLC 控制方式各有利弊,用戶可根據(jù)實(shí)際需求進(jìn)行選擇;(2)若后期維護(hù)對于維護(hù)人員的知識儲備要求不高,可選用PLC 控制方式;(3)若從經(jīng)濟(jì)角度出發(fā),可選用單片機(jī)控制方式。