1 系統(tǒng)總體設(shè)計
針對西門子S7-200 PLC,設(shè)計基于nRF2401的PLC無線通信控制器,其系統(tǒng)結(jié)構(gòu)如圖1所示。
在發(fā)送信號時,單片機從PLC獲取現(xiàn)場數(shù)據(jù),再將獲取的數(shù)據(jù)經(jīng)nRF2401傳輸至另一臺PLC;接收數(shù)據(jù)時,nRF240l從另一臺PLC接收信號,經(jīng)單片機傳送到接收端的PLC。
2 系統(tǒng)硬件設(shè)計
2.1 單片機與PLC接口電路
在西門子S7-200 PLC端,通過RS-485總線與單片機AT89S52通信,為了避免RS-485信號與單片機之間的電氣信號不匹配,二者之間采用6N137進行光電隔離。
在PLC端,采用MAX485通過一個9針端口與西門子S7-200 PLC的自由接口連接,MAX485通過光電隔離6N137與單片機AT89S52相連。單片機的P1.2通過光電隔離6N137控制MAX485的使能端和DE。當(dāng)為邏輯0時,MAX485處于接收狀態(tài);當(dāng)DE為邏輯1時,則處于發(fā)送狀態(tài)。在任意時刻這2個使能端都只有1引腳有效。使得MAX485能夠滿足其半雙工的通信方式。
接收與發(fā)送控制信號時,單片機的P3.0/RXD端通過6N137與MAX485的R0端相連,單片機的P3.1/TXD通過6N137與MAX485的DI端相連,從而實現(xiàn)PLC與單片機的通信。其電路原理圖如圖2所示。
2.2 單片機與nRF240l接口電路
在無線通信端,單片機AT89S52與nRF2401模塊相連實現(xiàn)無線通信。此處,由于單片機用5 V電源供電,而nRF2401采用3.3 V電源供電,為了避免兩者之間產(chǎn)生電氣干擾,仍需要采用光電隔離實現(xiàn)兩者問的電氣連接。表1給出了單片機AT89S52與nRF2401模塊的通信接口描述。圖3給出單片機AT89S52通過光電隔離4N35與nRF2401的對應(yīng)端口相連的電路原理圖。
2.3 波特率的設(shè)置
在接口電路設(shè)計完成后。要使單片機與nRF2401之間實現(xiàn)通信,還要考慮單片機的傳輸率,此處選擇單片機的波特率為9 600 b/s。根據(jù)波特率計算公式:
式中,波特率控制位SMOD置O,定時器時間常數(shù)X=253。
由此可得晶振頻率fosc=11.0592MHz,則單片機選用11.0592MHz的晶體振蕩器。
2.4 電源
該系統(tǒng)的電源部分由外部電源、集成穩(wěn)壓電路和部分外圍元件組成,這里選用集成穩(wěn)壓電路LMlll7為構(gòu)成各元件提供供電電源。為了改善nRF2401的瞬態(tài)響應(yīng),在LMlll7外接2只電容,且在輸出端另加2只電容用于濾波,以改善輸出電壓波形。
3 軟件部分設(shè)計
在單片機與PLC的通信中,主要利用單片機向PLC發(fā)送命令和接收返回數(shù)據(jù),用于讀取數(shù)據(jù)或修改PLC程序中控制參數(shù)。通信協(xié)議選用莫迪康Modbus ASCII串行通訊協(xié)議。
實現(xiàn)來自于RS-485通信接口基于Modbus ASCII串行通信協(xié)議的命令及數(shù)據(jù)轉(zhuǎn)換成滿足無線數(shù)據(jù)傳輸要求的通信格式,并傳送給其他通信終端,同時將現(xiàn)場采集的實時信號及狀態(tài)信號轉(zhuǎn)換為滿足Modbus ASCII串行通信協(xié)議要求的格式,并傳送給RS-485通信接口。圖4為無線通信控制器發(fā)送數(shù)據(jù)程序流程。圖5為無線通信控制器接收數(shù)據(jù)的程序流程。
圖4中,在單片機與nRF2401通信端,單片機先向nRF2401寫入配置字,然后檢測CE是否為高,若CE為高電平,則檢測通道1的中斷DRl是否為高,DRl為高,則有中斷信號,使nRF2401進入發(fā)送狀態(tài),開始發(fā)送數(shù)據(jù),每發(fā)送完l位,系統(tǒng)檢查l幀數(shù)據(jù)發(fā)送是否完成,若未完成,則繼續(xù)發(fā)送,反之,結(jié)束該幀的發(fā)送程序。由此將獲取的現(xiàn)場數(shù)據(jù)傳送給另一通信終端設(shè)備。
4 試驗結(jié)果
實驗室采用GFG8016G信號發(fā)生器與計算機進行模擬PLC數(shù)據(jù)無線傳輸,試驗結(jié)果表明,在9 m范圍內(nèi),該無線通信控制器可實現(xiàn)數(shù)據(jù)的無線傳輸。
5 結(jié)論
基于nRF2401的PLC無線通信控制器,可根據(jù)需求實現(xiàn)短距離無線數(shù)據(jù)傳輸;對于該無線傳輸研究,后續(xù)需從其傳輸中的抗干擾和擴展傳輸距離方面進一步研究。