陳永昕,陳洪寶
(1.吉林工業(yè)職業(yè)技術(shù)學(xué)院,吉林 吉林 132013;2.吉林石化公司有機(jī)合成廠電氣車(chē)間,吉林 吉林 132000)
智能家居等物聯(lián)網(wǎng)應(yīng)用環(huán)境中的基本控制會(huì)經(jīng)常需要開(kāi)關(guān)量控制,比如電燈、水泵、電磁閥控制流體流通和截止的情況。目前,常見(jiàn)的策略是應(yīng)用嵌入式技術(shù)設(shè)計(jì)制作控制主板,完成網(wǎng)絡(luò)通信和開(kāi)關(guān)量甚至模擬量的采集及控制。這對(duì)開(kāi)發(fā)者的要求較高,需要具有嵌入式技術(shù)基礎(chǔ),能夠進(jìn)行高級(jí)語(yǔ)言程序編寫(xiě),能夠完成通信任務(wù),并同其他控制計(jì)算機(jī)或者網(wǎng)絡(luò)終端進(jìn)行通信,實(shí)現(xiàn)網(wǎng)絡(luò)控制。為了降低開(kāi)發(fā)簡(jiǎn)單開(kāi)關(guān)量控制系統(tǒng)的技術(shù)難度,本設(shè)計(jì)給出了一種簡(jiǎn)易的終端硬件解決方案,其中重點(diǎn)介紹可編程邏輯控制終端的設(shè)計(jì)實(shí)現(xiàn)方案,能夠滿足物聯(lián)網(wǎng)技術(shù)應(yīng)用中簡(jiǎn)單開(kāi)關(guān)量的控制需求。
可編程邏輯控制終端采用宏晶科技公司生產(chǎn)的增強(qiáng)型51單片機(jī)作為控制核心,電路板配有RS232通信接口,由串口傳遞控制信息,實(shí)現(xiàn)開(kāi)關(guān)量控制。電路板整體框圖如圖1所示[1]。
軟件編程通過(guò)傳統(tǒng)單片機(jī)編程軟件進(jìn)行編寫(xiě),可以使用C語(yǔ)言或者匯編語(yǔ)言,但這兩種語(yǔ)言要求技術(shù)人員有較好的編程基礎(chǔ)。相對(duì)這類代碼語(yǔ)言,PLC編程使用的梯形圖更容易被工程人員接受。本設(shè)計(jì)方案編程實(shí)現(xiàn)途徑計(jì)劃采用梯形圖對(duì)功能程序進(jìn)行編寫(xiě)[2]。
控制核心選擇STC12C5616AD直插式窄體封裝28腳單片機(jī),時(shí)鐘電路晶振采用11.059 2 MHz晶振配合30 pF瓷片電容。電源電路使用LM7805將12 V直流電壓降壓為5 V,對(duì)單片機(jī)系統(tǒng)供電[3]。具體串行口通信接口電路圖如圖2所示。
使用MAX232芯片進(jìn)行通信接口電路設(shè)計(jì),將單片機(jī)串行口轉(zhuǎn)為232電平,通過(guò)九針串口接口同上位機(jī)系統(tǒng)進(jìn)行連接。具體電路圖如圖3所示。
圖3 RS232通信接口電路
開(kāi)關(guān)量輸出部分電路本方案中采用機(jī)械繼電器進(jìn)行實(shí)現(xiàn),單片機(jī)對(duì)繼電器的驅(qū)動(dòng)選用ULN2003芯片,該芯片本質(zhì)上是高耐壓、大電流復(fù)合晶體管陣列,由七個(gè)硅NPN復(fù)合晶體管組成,每一對(duì)達(dá)林頓都串聯(lián)一個(gè)2.7 K的基極電阻,在5 V的工作電壓下它能與TTL和CMOS電路直接相連,可以直接處理原先需要標(biāo)準(zhǔn)邏輯緩沖器來(lái)處理的數(shù)據(jù)。每個(gè)芯片可以支持七路繼電器,在本方案的硬件電路中需要14路繼電器開(kāi)關(guān)量輸出,因此需要兩片ULN2003芯片[4]。具體芯片和單片機(jī)連接關(guān)系如圖4所示。
圖4 ULN2003芯片與單片機(jī)連接關(guān)系圖
以第4組繼電器開(kāi)關(guān)量輸出電路為例進(jìn)行介紹,具體電路圖如圖5所示,圖中K4為機(jī)械繼電器,線圈輸入端并聯(lián)電路中有一個(gè)泄放二極管和一個(gè)工作指示發(fā)光二極管。繼電器輸出端直接連接四位接線端子,可輸出控制直流或交流0~380 V電壓的通斷任務(wù)。
圖5 開(kāi)關(guān)量輸出及指示電路
圖6 完整電路原理圖
結(jié)合上述局部電路設(shè)計(jì),按照總體硬件系統(tǒng)框圖機(jī)構(gòu)設(shè)計(jì)電路圖,整個(gè)電路外接口能夠支持14路繼電器開(kāi)關(guān)量輸出,通過(guò)RS232串口給入控制命令,可以和PC電腦上位機(jī)、組態(tài)觸摸屏等多種串口通信設(shè)備進(jìn)行完成控制命令的輸入。在RS232接口上連接無(wú)線通信轉(zhuǎn)換模塊,可以完成無(wú)線聯(lián)網(wǎng)開(kāi)關(guān)量可控制[5]。
PCB電路板布局:本設(shè)計(jì)使用的是Altium designer軟件,在電路圖中添加元件,封裝后導(dǎo)入PCB電路板圖文件,在機(jī)械層和禁止布線層繪制電路板邊框,然后將所有元件封裝合理布局到電路板外框中。在PCB繪圖界面中元件封裝布局如圖7所示。
圖7 PCB元件封裝布局
封裝布局時(shí)注意元件擺放整齊和周邊相連元件的方向,方便進(jìn)行布線時(shí)線路走向美觀、線路距離短。
電路板布線、覆銅:在布線規(guī)則中設(shè)定開(kāi)關(guān)量輸出信號(hào)線線寬60 mil,其他電路板信號(hào)線線寬20 mil,按照雙層布線,在PCB繪圖界面菜單欄執(zhí)行“Auto Route->All...”,在彈出窗口上點(diǎn)擊右下角Route All按鈕完成自動(dòng)布線;最后需要在頂層和底層進(jìn)行覆銅,覆銅和GND網(wǎng)絡(luò)連通。覆銅形狀及位置如圖8所示。
圖8 PCB電路板圖繪制效果
圖8頂層和底層覆銅大小及位置要一致,并且電路板兩側(cè)的覆銅需要分成兩部分,直流電路部分和交流部分覆銅分開(kāi)。防止通斷交流信號(hào)干擾直流電路。
該邏輯控制器程序編寫(xiě)可采用C語(yǔ)言、匯編語(yǔ)言這類代碼語(yǔ)言,通過(guò)單片機(jī)開(kāi)發(fā)環(huán)境進(jìn)行程序編寫(xiě),但對(duì)工程人員編程技術(shù)要求較高。本方案中重點(diǎn)介紹的是一種使用PLC梯形圖編寫(xiě)單片機(jī)程序的解決方案[6]。PMW2HEX軟件是一種將三菱PLC梯形圖轉(zhuǎn)成51單片機(jī)HEX文件的工具軟件[7]。該軟件新版本除對(duì)基本開(kāi)關(guān)量梯形圖指令有支持外,在串行口通信和ModBus總線協(xié)議上都有側(cè)重支持,而增加的WIFI模塊功能的支撐,也使得PLC梯形圖編程方法在物聯(lián)網(wǎng)終端應(yīng)用上有了更好的支持。同時(shí),該軟件在STC8、STC15和STC12系列單片機(jī)梯形圖編程上都有支撐。
該轉(zhuǎn)換軟件的應(yīng)用界面如圖9所示,通過(guò)界面上“PLC I/O端口映射”區(qū)域進(jìn)行端口對(duì)應(yīng)設(shè)置,單片機(jī)的I/O引腳和PLC進(jìn)行一一對(duì)應(yīng)設(shè)置,便于轉(zhuǎn)換后邏輯輸入輸出關(guān)系之間的對(duì)應(yīng)。此處對(duì)梯形圖指令的使用不再進(jìn)行贅述[8]。
圖9 PMW2HEX轉(zhuǎn)換軟件界面
由于使用三菱PLC兼容指令,對(duì)工業(yè)組態(tài)軟件有了更好的支撐,比如技術(shù)人員可以使用MCGS或者組態(tài)王這類工業(yè)組態(tài)軟件完成上位機(jī)人機(jī)界面程序的編寫(xiě)或者直接使用工業(yè)HMI設(shè)計(jì)觸控人機(jī)界面[9]。
有些項(xiàng)目應(yīng)用環(huán)境數(shù)據(jù)傳輸較為簡(jiǎn)單,不需要或者工程師不期望使用較為復(fù)雜的工業(yè)通信協(xié)議,比如工程技術(shù)人員自行編寫(xiě)上位機(jī)軟件,為了保障通信控制命令穩(wěn)定,就需要自行編寫(xiě)串行口通信數(shù)據(jù)協(xié)議。這里介紹一種簡(jiǎn)易通信協(xié)議設(shè)計(jì)方法[10]。
一個(gè)協(xié)議幀由包頭、地址、數(shù)據(jù)段、校驗(yàn)位和包尾5個(gè)部分組成。
例如:如表1所示,包頭、地址和包尾都為一個(gè)字節(jié)的十六進(jìn)制數(shù),數(shù)據(jù)段可以根據(jù)實(shí)際需要定義數(shù)據(jù)長(zhǎng)度,這里電路板上有14路開(kāi)關(guān)量輸出接口,定義14個(gè)字節(jié)。校驗(yàn)位是兩字節(jié)十六進(jìn)制數(shù),用于存儲(chǔ)地址、數(shù)段所有十六進(jìn)制數(shù)求和。第一個(gè)字節(jié)存儲(chǔ)求和高八位二進(jìn)制數(shù),第二個(gè)字節(jié)用于存儲(chǔ)求和后的第八位二進(jìn)制數(shù)。發(fā)送端和接收端根據(jù)協(xié)議定義,對(duì)每次接收的數(shù)據(jù)幀重新做一次求和,然后同接收道德校驗(yàn)位進(jìn)行比較,數(shù)值一樣說(shuō)明接收的數(shù)據(jù)無(wú)誤。
表1 協(xié)議幀數(shù)據(jù)格式
通過(guò)上述內(nèi)容介紹,給出了一種可編程邏輯控制終端的簡(jiǎn)易實(shí)現(xiàn)方案。對(duì)于一些簡(jiǎn)單開(kāi)關(guān)量控制終端,使用成品PLC來(lái)做成本相對(duì)較高,使用傳統(tǒng)單片機(jī)制作硬件系統(tǒng)開(kāi)發(fā)難度又相對(duì)較大,本設(shè)計(jì)中提供的實(shí)現(xiàn)方案既降低了開(kāi)發(fā)難度,又能穩(wěn)定保障簡(jiǎn)單邏輯控制在民用和工業(yè)中的應(yīng)用。本方案中設(shè)計(jì)硬件終端實(shí)物照片如圖10所示。該控制板目前已經(jīng)用于會(huì)議室窗簾和投影幕的開(kāi)關(guān)控制上,實(shí)現(xiàn)了會(huì)議室投影模式和普通模式的切換功能。
圖10 可編程邏輯控制終端實(shí)物圖