摘要:由傳統(tǒng)的高壓電力線通信技術(shù)發(fā)展而來(lái)的低壓電力線載波通信(PLC,low-voltage power line carrie-current communication)技術(shù)已經(jīng)越來(lái)越受到關(guān)注,且被視為解決因特網(wǎng)接入“最后一公里”問(wèn)題的有效手段。文章通過(guò)軟硬件結(jié)合的方式,自主搭建了一個(gè)低壓電力線載波通信系統(tǒng),從而實(shí)現(xiàn)了利用低壓電力線進(jìn)行數(shù)據(jù)傳輸?shù)哪康摹?/P>
關(guān)鍵詞:低壓電力線;MSCOMM控件;載波通信;接口轉(zhuǎn)換
0 引言
現(xiàn)代社會(huì)的發(fā)展,人們對(duì)生產(chǎn)和生活有了更多、更高的要求,例如要求更節(jié)能環(huán)保、更舒適便捷,這些要求的實(shí)現(xiàn)都需要大量信息的獲取、傳輸和處理,需要把與生產(chǎn)生活相關(guān)的大量設(shè)備和對(duì)象連接起來(lái),構(gòu)成網(wǎng)絡(luò),以實(shí)現(xiàn)對(duì)它們的監(jiān)測(cè)控制與管理,從而形成物聯(lián)網(wǎng)、家域網(wǎng)(HAN)等。在這些網(wǎng)絡(luò)中,需要連接的對(duì)象數(shù)量眾多,位置可能變動(dòng),給網(wǎng)絡(luò)的構(gòu)成帶來(lái)一定的困難。由于這些對(duì)象的工作大都離不開(kāi)電力,所以,用低壓電力線組成網(wǎng)絡(luò)進(jìn)行通信,是一種很需要重新布線,覆蓋范圍廣,維護(hù)少,節(jié)約資源。為此,本文結(jié)合國(guó)內(nèi)外研究動(dòng)態(tài),對(duì)低壓電力線載波通信技術(shù)進(jìn)行了研究,并采用相關(guān)功能模塊,編寫(xiě)了相關(guān)控制軟件,實(shí)現(xiàn)了兩點(diǎn)之間通過(guò)低壓電力線載波通信來(lái)進(jìn)行數(shù)據(jù)傳輸,并通過(guò)上位機(jī)進(jìn)行監(jiān)控的目的。
1 系統(tǒng)總體結(jié)構(gòu)
本設(shè)計(jì)主要包括載波通信模塊、上位機(jī)監(jiān)控界面及轉(zhuǎn)換接口電路等幾個(gè)部分。其中,轉(zhuǎn)換接口電路主要負(fù)責(zé)PLC模塊的TTL電平接口與上位機(jī)的串口之間的接口通信。其系統(tǒng)框圖如圖1所示。
在數(shù)據(jù)信號(hào)發(fā)送端,上位機(jī)發(fā)出數(shù)據(jù)信號(hào)給COM口,通過(guò)接口轉(zhuǎn)換電路把上位機(jī)發(fā)出的數(shù)據(jù)信號(hào)轉(zhuǎn)換為PLC模塊能夠接收并處理的TTL電平信號(hào)。然后經(jīng)過(guò)PLC模塊將信號(hào)調(diào)制成特殊的電力信號(hào),再通過(guò)電力線進(jìn)行傳輸。
在數(shù)據(jù)信號(hào)接收端,PLC模塊將電力線上的信號(hào)耦合下來(lái),并通過(guò)濾波、解調(diào)轉(zhuǎn)換為原來(lái)的TTL電平信號(hào),再經(jīng)接口轉(zhuǎn)換電路把信號(hào)發(fā)送到上位機(jī)進(jìn)行顯示。
該系統(tǒng)信息是雙向傳輸?shù),即PLC模塊與轉(zhuǎn)換接口電路均可以實(shí)現(xiàn)雙向通信。
2 系統(tǒng)硬件選擇與設(shè)計(jì)
2.1 低壓電力線載波模塊
本文選用杭州新實(shí)科技有限公司的SENS-01嵌入式電力線載波通信模塊,該模塊可提供半雙工通信功能,可以在220 V/110 V、50Hz/60 Hz電力線上實(shí)現(xiàn)局域通信;通信速率有600 b/s、1 200 b/s、2 400 b/s、4 800 b/s、9 600 b/s、19 200 b/s等多種速率;每幀長(zhǎng)度小于或等于20 B;具有TTL電平接口,可為用戶(hù)提供透明的數(shù)據(jù)通道,而且數(shù)據(jù)傳輸與用戶(hù)協(xié)議無(wú)關(guān)。
2.2 接口轉(zhuǎn)換電路選擇與設(shè)計(jì)
本設(shè)計(jì)選用的是USB接口作為上位機(jī)與PLC模塊的通信接口,因?yàn)楝F(xiàn)在的筆記本大多沒(méi)有RS232接口,而且現(xiàn)在許多工業(yè)現(xiàn)場(chǎng)也采用USB接口作為串口通信,十分靈活便捷。因此,本文選用FTDI公司生產(chǎn)的FT232RL芯片作為USB與TTL電平接口的轉(zhuǎn)換芯片,該芯片具有全握手協(xié)議及MODEM接口(CTS、RTS、DTR、DCD、RI),并具有硬件及Xon/Xoff流量控制。芯片內(nèi)置晶振,外圍電路簡(jiǎn)單,驅(qū)動(dòng)能力強(qiáng)。其接口轉(zhuǎn)換電路如圖2所示。
3 系統(tǒng)軟件設(shè)計(jì)
本文采用MSCOMM控件(即Microsoft Communication Control)進(jìn)行串口編程,該控件是Microsoft公司為簡(jiǎn)化Windows下串行通信編程而提供的ActiveX控件。它提供了一系列標(biāo)準(zhǔn)通信命令的使用接口,因此,利用它能夠建立和串口的連接,并能夠通過(guò)串口連接到其他通信設(shè)備(如調(diào)制解調(diào)器)發(fā)出命令、交換數(shù)據(jù)以及監(jiān)控和響應(yīng)串行連接中發(fā)生的事件和錯(cuò)誤。使用MSCOMM控件編寫(xiě)串口程序時(shí),不需要花費(fèi)時(shí)間了解復(fù)雜的API函數(shù),但它在執(zhí)行的時(shí)候需要調(diào)用API函數(shù)。
MSCOMM控件串行通信處理方式采用事件驅(qū)動(dòng)方式,許多情況下,在事件發(fā)生時(shí)需要得到通知,這時(shí),就可以利用MSCOMM控件的OnComm事件捕捉并處理這些通信事件。這種方法的優(yōu)點(diǎn)是程序響應(yīng)及時(shí),可靠性高。
3.1 系統(tǒng)通信程序設(shè)計(jì)
本系統(tǒng)數(shù)據(jù)的發(fā)送與接收顯示都是通過(guò)對(duì)上位機(jī)編寫(xiě)軟件來(lái)實(shí)現(xiàn)的。其流程大致為:關(guān)閉串口,對(duì)串口的波特率進(jìn)行選擇,然后設(shè)置通信參數(shù);打開(kāi)串口之后,可以選擇發(fā)送方式為手動(dòng)或自動(dòng)(自動(dòng)發(fā)送周期根據(jù)模塊的處理速度固定為2 s),也可以選擇是否為十六進(jìn)制發(fā)送(對(duì)應(yīng)的接收端應(yīng)選擇十六進(jìn)制顯示)。
在監(jiān)控顯示部分,當(dāng)接收緩沖區(qū)有數(shù)據(jù)時(shí),系統(tǒng)就會(huì)觸發(fā)OnComm事件,對(duì)數(shù)據(jù)進(jìn)行讀取并在編輯框中顯示。修改波特率時(shí),一般需要關(guān)閉串口然后才能調(diào)試。其系統(tǒng)程序流程圖如圖3所示。
3.2 數(shù)據(jù)發(fā)送部分算法
由于在數(shù)據(jù)發(fā)送時(shí),模塊每次只能接收20 b以?xún)?nèi)的數(shù)據(jù),因此,為了使模塊能夠發(fā)送或接收更多的數(shù)據(jù),本文采用指針指向的方法,分段取出所要發(fā)送的數(shù)據(jù),每段20 b。
數(shù)據(jù)發(fā)送首先要獲取編輯框內(nèi)所要發(fā)送的數(shù)據(jù),然后計(jì)算其長(zhǎng)度,再判斷與20的關(guān)系。如果整除得b的話(huà),就直接發(fā)送b次,每次分段讀取,且必須在兩次發(fā)送之間添加延時(shí)程序,否則,這樣處理就沒(méi)有意義,因?yàn)槟K的處理速度慢于發(fā)送的速度會(huì)造成數(shù)據(jù)丟失。當(dāng)不能整除且得到的余數(shù)為a時(shí),要先發(fā)送b次,讀取完bX20個(gè)字符后,再發(fā)送剩余的a個(gè)字符。圖4所示是其數(shù)據(jù)發(fā)送程序流程圖。
3.3 通信與監(jiān)視界面
圖5所示是本系統(tǒng)中上位機(jī)的通信與監(jiān)控界面圖。從圖中可以看出,在通信界面設(shè)置好波特率,然后打開(kāi)串口,在COM6發(fā)送窗口輸入字符串,然后點(diǎn)擊發(fā)送(或自動(dòng)發(fā)送),COM5接收顯示窗口就會(huì)顯示COM6所發(fā)送的信息。由圖5可知,數(shù)據(jù)信息的傳輸量已經(jīng)突破了模塊自定義的20 B,即能夠?qū)崿F(xiàn)較多信息量的發(fā)送與接收。
4 結(jié)語(yǔ)
電力網(wǎng)絡(luò)是目前覆蓋范圍最廣的網(wǎng)絡(luò),有著巨大的潛在利用價(jià)值。在家居自動(dòng)化、家用電器控制等方面,PLC技術(shù)有著得天獨(dú)厚的優(yōu)勢(shì)。本文利用低壓電力線載波方式實(shí)現(xiàn)了數(shù)據(jù)在低壓電力線上的傳輸,并能通過(guò)上位機(jī)實(shí)時(shí)顯示數(shù)據(jù)。但是,目前PLC技術(shù)仍然存在很多不足,在電力線上干擾嚴(yán)重時(shí),通信成功率可能還無(wú)法保證,通信速率也比較低,因此還需要更深入的研究。
作者:曾 萍 黃梓瑜 李仕彥 高文剛 葉 程 來(lái)源:電子科技