摘 要介紹一種PLC實(shí)驗(yàn)箱模擬系統(tǒng),用于配合PLC實(shí)驗(yàn)平臺(tái)完成“轎廂式電梯控制”“流水線產(chǎn)品計(jì)數(shù)”實(shí)驗(yàn),能根據(jù)PLC控制程序的運(yùn)行狀態(tài)直觀、形象地模擬演示實(shí)驗(yàn)現(xiàn)象;提出用單片機(jī)作控制器,用多只條式發(fā)光二極管燈組顯示電梯和傳送帶的移動(dòng)現(xiàn)象的方法;給出單片機(jī)I/O口擴(kuò)展和單片機(jī)與PLC的通信電路原理圖,并詳細(xì)介紹模擬系統(tǒng)的軟件設(shè)計(jì)方法。
關(guān)鍵詞PLC 單片機(jī);條式發(fā)光二極管;通信
中圖分類(lèi)號(hào) TP273 文獻(xiàn)標(biāo)識(shí)碼 A 文章編號(hào) 1671-489X(2008)08-0088-03
1 引言
“可編程序控制器原理及應(yīng)用”是機(jī)電類(lèi)專(zhuān)業(yè)的一門(mén)必修課,四川交通職業(yè)技術(shù)學(xué)院亦開(kāi)設(shè)了該課程。為了達(dá)到良好的教學(xué)效果,增強(qiáng)學(xué)生的實(shí)踐技能,突出高職高專(zhuān)教育的實(shí)用性和針對(duì)性,學(xué)校教師自行開(kāi)發(fā)生產(chǎn)了配套的PLC實(shí)驗(yàn)箱。本課題設(shè)計(jì)的實(shí)驗(yàn)箱能完成“轎廂式電梯控制實(shí)驗(yàn)”“流水線產(chǎn)品計(jì)數(shù)實(shí)驗(yàn)”等實(shí)驗(yàn)項(xiàng)目。為了能比較直觀、形象地模擬實(shí)驗(yàn)現(xiàn)象,教師設(shè)計(jì)了基于單片機(jī)的模擬系統(tǒng),配合PLC實(shí)驗(yàn)控制程序來(lái)模擬和演示電梯轎廂及流水線傳送帶的移動(dòng)狀態(tài),指示電梯的當(dāng)前樓層位置。同時(shí),為了使“轎廂式電梯控制實(shí)驗(yàn)”“流水線產(chǎn)品計(jì)數(shù)實(shí)驗(yàn)”所做的PLC控制更貼近實(shí)際,需要向其提供控制現(xiàn)場(chǎng)的環(huán)境。可以根據(jù)控制現(xiàn)場(chǎng)的實(shí)際情況來(lái)模擬現(xiàn)場(chǎng)的一些關(guān)鍵信號(hào),如電梯的位置傳感器、控制開(kāi)關(guān),傳送帶移動(dòng)到位等信號(hào)。
2 方案設(shè)計(jì)
功能需求分析:
1)根據(jù)PLC控制程序運(yùn)行狀態(tài)模擬和演示3層電梯轎廂及傳送帶的移動(dòng)狀態(tài);
2)模擬電梯行程開(kāi)關(guān),在電梯轎廂到達(dá)相應(yīng)樓層時(shí)產(chǎn)生到位信號(hào)并指示,同時(shí)送給PLC;
3)產(chǎn)生傳送帶移動(dòng)到位的位信號(hào)并指示,同時(shí)送給PLC。
采用36只條式發(fā)光二極管組成一條燈帶,點(diǎn)亮12只條式發(fā)光二極管表示電梯轎廂或流水線上的產(chǎn)品,用單個(gè)的發(fā)光二極管來(lái)指示到位信號(hào),用光電耦合器實(shí)現(xiàn)單片機(jī)與PLC的信息通訊與電路的隔離,采用單片機(jī)作為模擬系統(tǒng)的控制核心。系統(tǒng)組成框圖如圖1所示。
3 硬件設(shè)計(jì)與調(diào)試
單片機(jī)選用AT89S51,該芯片支持ISP(In-system programmable)編程模式,利于程序下載與調(diào)試。完成本設(shè)計(jì)的電路比較簡(jiǎn)單,但是信號(hào)的輸入輸出個(gè)數(shù)特別多,而單片機(jī)的I/O口位數(shù)很有限, I/O分配非常關(guān)鍵。
1)I/O分配與擴(kuò)展。
PLC至單片機(jī)的通信信號(hào):
①電梯啟動(dòng)。
②3層電梯的移動(dòng)狀態(tài)請(qǐng)求信號(hào):1樓到2樓;2樓到3樓;1樓到3樓;3樓到2樓;2樓到3樓;3樓到1樓。
③傳送帶啟動(dòng)。
單片機(jī)至PLC的通信信號(hào):
①電梯位置到位狀態(tài):1樓;2樓;3樓。
②傳送帶移動(dòng)到位。
PLC至單片機(jī)共8位信號(hào)輸入,單片機(jī)至PLC共4位信號(hào)輸出。
為了比較直觀地模擬電梯和傳送帶的移動(dòng)狀態(tài),選用雙列、36行(36位)的發(fā)光二極管帶。因此,共計(jì)需要48位I/O口,AT89S51只有4個(gè)8位的I/O口,需要擴(kuò)展I/O口。用5只鎖存器74LS573可擴(kuò)展出40位數(shù)據(jù)口,用于36行(36位)的發(fā)光二極管的控制數(shù)據(jù)輸出。單片機(jī)的P1口用作鎖存器的片選控制端口,P0分時(shí)復(fù)用和P2口(輸出)構(gòu)成地址口,用譯碼器74LS138來(lái)分配擴(kuò)展端口的地址。用P2口(輸入)作PLC至單片機(jī)的通信口,用部分P3口作單片機(jī)至PLC的通信口。
2)電路設(shè)計(jì)。部分電路原理圖如2所示。
地址分配為片選法,用譯碼器74LS138完成,根據(jù)3~8譯碼器的原理得出。此時(shí),將片外數(shù)據(jù)地址空間分成了8段,5只鎖存器的地址分別為: 0000H、2000H、4000H、6000H、8000H。
從74HC573的工作原理得知,用P1口控制/OC的電平狀態(tài)來(lái)決定是否選中74HC573。有且只有當(dāng)鎖存允許信號(hào)C=/(CS1 | WR)來(lái)一個(gè)上升沿的跳變脈沖時(shí),Q=D。從P0口送來(lái)的數(shù)據(jù)通過(guò)74HC573送到相應(yīng)發(fā)光二極管的陰極。發(fā)光二級(jí)管的陽(yáng)極通過(guò)限流電阻接電源,若輸入的數(shù)據(jù)為00H,發(fā)光二極管被點(diǎn)亮;反之若輸入端為高電平“1”,對(duì)應(yīng)的發(fā)光二極管熄滅。
如圖3所示,PLC至單片機(jī)的通信信號(hào)從PLC輸出后在實(shí)驗(yàn)箱平臺(tái)轉(zhuǎn)換為電平信號(hào)則可通過(guò)P2口直接送給單片機(jī),單片機(jī)輸出的電平信號(hào)通過(guò)光電耦合器轉(zhuǎn)換為開(kāi)關(guān)信號(hào)送給PLC。采用光電耦合器不但可實(shí)現(xiàn)電平與開(kāi)關(guān)量的轉(zhuǎn)換,并且可以使模擬系統(tǒng)電路與PLC實(shí)驗(yàn)平臺(tái)電路隔離,提高實(shí)驗(yàn)箱系統(tǒng)的抗干擾能力。通過(guò)J1接插口連接模擬系統(tǒng)電路與PLC實(shí)驗(yàn)平臺(tái),在調(diào)試、安裝和維修時(shí)操作非常方便。
4 軟件設(shè)計(jì)
1)軟件功能模塊劃分。
主程序:根據(jù)PLC的通信要求協(xié)調(diào)各子程序的工作。
電梯模擬子程序:模擬轎廂的移動(dòng)狀態(tài),模擬電梯當(dāng)前位置狀態(tài),模擬限位開(kāi)關(guān)合上和釋放的狀態(tài),并將這些電梯狀態(tài)信號(hào)送給PLC。
傳送帶模擬子程序:根據(jù)PLC的要求啟動(dòng)、停止傳送帶的移動(dòng),并將傳送帶到位信號(hào)送給PLC。
2)程序設(shè)計(jì)。將2列、36行的發(fā)光二極管平均分為3段,表示電梯轎廂的3種位置狀態(tài)。這樣要模擬每種狀態(tài)時(shí)均需點(diǎn)亮12行發(fā)光二極管,但是數(shù)據(jù)口只有8位,需用動(dòng)態(tài)掃描顯示實(shí)現(xiàn)。
模擬電梯的移動(dòng)狀態(tài)時(shí),將點(diǎn)亮的2列、12行發(fā)光二極管,按照移動(dòng)方向逐行搬移即可實(shí)現(xiàn)。按照移動(dòng)要求將這12行發(fā)光二極管處于各種位置時(shí)陰極狀態(tài)編成數(shù)據(jù)表,用查表方式、動(dòng)態(tài)掃描顯示方法送出這些數(shù)據(jù)即可。
傳送帶模擬子程序:基本原理同電梯移動(dòng)狀態(tài)的模擬。程序設(shè)計(jì)流程圖如圖4和圖5所示。
5 結(jié)論
本課題設(shè)計(jì)的PLC實(shí)驗(yàn)箱已于2007年初正式投入教學(xué)使用。實(shí)踐表明,該P(yáng)LC實(shí)驗(yàn)箱模擬系統(tǒng)設(shè)計(jì)方法是可行的、可靠的。該模擬系統(tǒng)可以良好地配合PLC實(shí)驗(yàn)平臺(tái)完成“轎廂式電梯控制”“流水線產(chǎn)品計(jì)數(shù)”實(shí)驗(yàn);能根據(jù)PLC控制程序的運(yùn)行狀態(tài)直觀、形象地模擬演示實(shí)驗(yàn)結(jié)果,利于學(xué)生調(diào)試PLC控制程序,有助于PLC應(yīng)用課程的實(shí)驗(yàn)教學(xué)。