系統(tǒng)結(jié)構(gòu)
系統(tǒng)的基本結(jié)構(gòu)如圖1所示,本系統(tǒng)采用巡回檢測的方式實(shí)現(xiàn)多路檢測報(bào)警,并通過USB接口連接到PC機(jī),用VB報(bào)警界面集中監(jiān)控顯示。首先,可以根據(jù)防盜區(qū)的需求有規(guī)律地設(shè)置多路報(bào)警檢測點(diǎn)(本系統(tǒng)可設(shè)置多達(dá)256個(gè)),即前端檢測電路。其次,由中心控制系統(tǒng)的單片機(jī)有順序地向前端發(fā)送檢測信號(hào),當(dāng)某個(gè)前端被檢測到時(shí),會(huì)通過前端單片機(jī)向中心控制系統(tǒng)發(fā)回自己的代碼并附上有無報(bào)警信息,如果有報(bào)警,中心控制系統(tǒng)就通過USB接口將數(shù)據(jù)傳送給PC機(jī),VB界面上會(huì)顯示相應(yīng)報(bào)警點(diǎn),并把報(bào)警時(shí)間和報(bào)警點(diǎn)編號(hào)記錄下來,接著就繼續(xù)檢測下一個(gè)檢測點(diǎn),否則就直接轉(zhuǎn)去檢測下一個(gè)檢測點(diǎn)。但當(dāng)中心控制系統(tǒng)向前端發(fā)送檢測信號(hào)時(shí),如果等待某一段時(shí)間后前端無應(yīng)答時(shí),就報(bào)出錯(cuò)信息。如此周而復(fù)始,以達(dá)到對(duì)防盜區(qū)域內(nèi)的有效監(jiān)控。
圖1? 系統(tǒng)結(jié)構(gòu)
本系統(tǒng)用軟件設(shè)置發(fā)送與接收是分時(shí)的,可以避免控制信號(hào)和檢測信號(hào)相互干擾,影響系統(tǒng)工作的正確性,又可減少硬件開銷,順利實(shí)現(xiàn)雙音頻信號(hào)的雙向傳輸。還利用全速USB設(shè)備接口連接到PC機(jī),既插即用,使用方便。用PC機(jī)的VB界面進(jìn)行報(bào)警,直觀明了,還可利用PC機(jī)的存儲(chǔ)記憶功能,使本系統(tǒng)更完善可靠。
本系統(tǒng)的功能指標(biāo)為:
·256個(gè)點(diǎn)巡回檢測。
·用220V低壓電力線傳輸信息。
·巡回檢測一次所有的前端的時(shí)間不超過1分鐘。
·前端檢測部分熱釋電人體紅外傳感器電路的感應(yīng)距離在10米,感應(yīng)持續(xù)時(shí)間為10s。
·PC監(jiān)視界面能給出無報(bào)警、報(bào)警、故障三種狀態(tài)的指標(biāo),并能以文本的格式存儲(chǔ)報(bào)警信息。
通信傳輸協(xié)議
為實(shí)現(xiàn)電力線載波通信的順利進(jìn)行,特制定如下傳輸協(xié)議:中心單片機(jī)控制信息的數(shù)據(jù)格式為:“#+目標(biāo)地址+*”,前端單片機(jī)返回檢測信息的數(shù)據(jù)格式為:“本機(jī)地址+?;虮緳C(jī)地址+*”。由于本系統(tǒng)采用巡回檢測的方式,所以中心發(fā)送命令時(shí)要附上目標(biāo)地址,前端接受信息時(shí)要與本機(jī)地址進(jìn)行核對(duì),以備前端判別是否要回送數(shù)據(jù),中心接收前端返回的檢測信息時(shí),也要與發(fā)送出去的目標(biāo)地址進(jìn)行核對(duì),以備中心判別是否其正在等待的信息。
單片機(jī)軟件設(shè)計(jì)
前端單片機(jī)軟件
前端檢測系統(tǒng)的程序流程圖如圖2所示。本機(jī)地址設(shè)為*000#,分別存放到內(nèi)存單元30H、31H、32H、33H、34H。單片機(jī)AT89C2051從P3口讀入五組8421代碼。經(jīng)過密碼校驗(yàn),如果密碼正確,則檢測P3.7口是否為低電平,如果是低電平就向中心發(fā)送報(bào)警信號(hào)“000#”,否則就發(fā)送“000*”。如果密碼不正確,前端就等待中心發(fā)送下一個(gè)檢測信號(hào)的命令。每發(fā)送一個(gè)代碼,都要調(diào)用一次延時(shí)子程序,這是為了有足夠的時(shí)間進(jìn)行編碼和有足夠的時(shí)間進(jìn)行譯碼,實(shí)驗(yàn)測得25ms的延時(shí)是比較可靠的。
圖2? 前端檢測系統(tǒng)的程序流程圖
中心單片機(jī)軟件
中心控制系統(tǒng)的程序流程圖如圖3所示。由主程序、檢測命令發(fā)送子程序、密碼校對(duì)子程序、25ms延時(shí)子程序、USB中斷處理子程序組成。中心單片機(jī)發(fā)出五位檢測命令代碼后,啟動(dòng)100ms的TO中斷,如果在這段時(shí)間內(nèi)沒接收到前端的返回信息,中心就認(rèn)定該前端出現(xiàn)故障,如果接收到信息,中心單片機(jī)先對(duì)前三位代碼與內(nèi)存單元中的目標(biāo)地址進(jìn)行一一校對(duì),一致的話則繼續(xù)判斷下一位,最后判斷地4位的報(bào)警狀態(tài),并通過USB接口發(fā)送數(shù)據(jù)給PC幾的應(yīng)用程序進(jìn)行處理。接著中心繼續(xù)發(fā)送檢測下一個(gè)前端的命令。在程序中設(shè)置了大循環(huán)和小循環(huán),目的是小循環(huán)完成以后裝入下一個(gè)檢測前端設(shè)定值,以保證有異常輸入時(shí),系統(tǒng)延遲一定的時(shí)間后自動(dòng)恢復(fù)正常工作,當(dāng)中心控制需要通過USB接口向PC發(fā)送數(shù)據(jù)時(shí),只要調(diào)用中斷數(shù)據(jù)發(fā)送子程序,執(zhí)行三條語句就可以了。
圖3? 中心控制系統(tǒng)的程序流程圖
結(jié)語
本系統(tǒng)設(shè)計(jì)的電路,性能穩(wěn)定、工作可靠、運(yùn)轉(zhuǎn)正常,能成功實(shí)現(xiàn)了單片機(jī)的雙向通信?;陔p音頻信號(hào)傳輸?shù)碾娏€載波通信系統(tǒng)為單片機(jī)遠(yuǎn)距離通信提供了一種方法。
參考文獻(xiàn):
1.? 孫海翠、張金波,低壓電力線載波通信技術(shù)研究與應(yīng)用,電測與儀表,2006,第八期,54
2.? 齊淑清,電力線通信技術(shù)與應(yīng)用,北京高等教育出版社,2005,66
3.? 陳永甫,紅外探測與控制電路,人民郵電出版社,2004,178
評(píng)論
查看更多