中心議題:
- PCB電鍍電流的無線傳感器網(wǎng)絡(luò)監(jiān)測系統(tǒng)設(shè)計
解決方案:
- NRF9E5單片機(jī)系統(tǒng)
- 無線通信單元設(shè)計
- 傳感器單元設(shè)計
- 指示燈報警電路設(shè)計
- 無線傳感器網(wǎng)絡(luò)的軟件設(shè)計
利用計算機(jī)、傳感器技術(shù)和無線通信,本文設(shè)計了用于PCB電鍍電流檢測的無線傳感器網(wǎng)絡(luò)監(jiān)測系統(tǒng)。該監(jiān)控系統(tǒng)以NRF9E5單片機(jī)為無線傳感器節(jié)點(diǎn)核心,運(yùn)用霍爾電流傳感器和檢測電路的設(shè)計,實現(xiàn)了無線傳感器節(jié)點(diǎn)與計算機(jī)的無線通信。
PCB板的主要功能是使各種電子零組件形成預(yù)定電路的連接,其質(zhì)量的好壞將直接影響整個機(jī)電產(chǎn)品的性能.PCB電鍍電流是影響PCB板質(zhì)量的重要因素之一,目前PBC電鍍電流的檢測是由操作人員拿著手持的監(jiān)測設(shè)備、間隔一定時間進(jìn)行檢測;因此存在不少缺點(diǎn),如非實時檢測,容易漏檢和誤檢,長期在電鍍環(huán)境里工作會損害人體健康等.鑒于人工檢測已不能適應(yīng)當(dāng)今制造技術(shù)發(fā)展的需要,本文提出PCB電鍍電流的無線傳輸方案,即在需要檢測電鍍電流的地方安放傳感器節(jié)點(diǎn),并由監(jiān)控中心對采集的電流數(shù)據(jù)進(jìn)行統(tǒng)一實時的監(jiān)測和控制.
1 系統(tǒng)框架
基于無線傳感器網(wǎng)絡(luò)的PCB電鍍電流監(jiān)測系統(tǒng)架構(gòu)如圖1所示,它可以分為3層:數(shù)據(jù)采集層、系統(tǒng)通信層和管理層.
數(shù)據(jù)采集層是整個系統(tǒng)的最底層,它由安放在工作環(huán)境中的傳感器節(jié)點(diǎn)和匯聚節(jié)點(diǎn)組成.通過內(nèi)置的數(shù)據(jù)采集單元,傳感器節(jié)點(diǎn)可以采集流過PCB板的電流信號,進(jìn)行數(shù)據(jù)整理后,以無線通信的方式發(fā)送給匯聚節(jié)點(diǎn);匯聚節(jié)點(diǎn)將傳感器節(jié)點(diǎn)發(fā)送來的數(shù)據(jù)進(jìn)行匯聚、分析和儲存,并等待計算機(jī)的命令,準(zhǔn)備好與計算機(jī)之間的通信.
系統(tǒng)通信層是指匯聚節(jié)點(diǎn)與計算機(jī)之間的通信,采用RS232串口通信方式.通過設(shè)置P0_ALT.1=1,P0_DIR.1=l,選擇NRF9E5的P01與P02引腳的第二功能作為串口的RXD與TXD,通過芯片MAX232進(jìn)行電平轉(zhuǎn)換與計算機(jī)的串口連接來處理從各節(jié)點(diǎn)采集回來的數(shù)據(jù),并通過主模塊發(fā)送控制指令和有效數(shù)據(jù)完成對各個節(jié)點(diǎn)的設(shè)置,實現(xiàn)對現(xiàn)場設(shè)備的控制.管理層是計算機(jī)對采集上來的電鍍電流數(shù)據(jù)進(jìn)行分析處理的過程.計算機(jī)能根據(jù)管理者的需要采集安裝霍爾傳感器節(jié)點(diǎn)的電流數(shù)據(jù),并完成數(shù)據(jù)處理、圖表顯示、控制和儲存等多種管理功能;當(dāng)流過PCB板的電流超過或低于給定值范圍,系統(tǒng)給出聲光報警.
2 系統(tǒng)硬件及設(shè)計
無線傳感器節(jié)點(diǎn)是整個無線網(wǎng)絡(luò)的基本組成單元,它的主要任務(wù)是采集PCB電鍍電流數(shù)據(jù),對數(shù)據(jù)進(jìn)行前期處理,并對來自上位機(jī)的命令做出回應(yīng),進(jìn)而向上位機(jī)發(fā)送采集到的電流數(shù)據(jù).無線傳感器節(jié)點(diǎn)由NRF9E5單片機(jī)系統(tǒng)、無線通信單元、傳感器單元和指示燈報警電路等組成。
2.1 NRF9E5單片機(jī)系統(tǒng)
NRF9E5無線單片機(jī)是NordicVLSI公司于2004年推出的無線單片機(jī)芯片,它是真正的系統(tǒng)級芯片,內(nèi)置的433MHz、868MHz、915MHz收發(fā)器與NRF905芯片的收發(fā)器一樣.內(nèi)嵌的微8051控制器,帶有4輸入10位80kS/s的A/D轉(zhuǎn)換器,工作電壓較寬(1.9~3.6V),可以工作于ShockBurst方式,即自動處理前綴、地址和CRC方式;CPU還擴(kuò)展了2個數(shù)據(jù)指針以方便從片外RAM讀取數(shù)據(jù).NRF9E5的微處理器中有256bit的數(shù)據(jù)RAM和512bit的ROM.上電復(fù)位或軟件復(fù)位后,處理器自動執(zhí)行ROM引導(dǎo)區(qū)中的代碼.用戶程序通常是在引導(dǎo)區(qū)的引導(dǎo)下,從EEROM加載到1個4kbit的RAM中,這個4kbit的RAM也可用作存儲數(shù)據(jù).整個單片機(jī)系統(tǒng)的建立需要極少的外圍元器件,節(jié)約資源,對實現(xiàn)低功耗十分有利.
2.2 無線通信單元
由于NRF9E5無線單片機(jī)內(nèi)置了NRF905的433MHz、868MHz、915MHz收發(fā)器,從而使整個系統(tǒng)的設(shè)計更加簡潔可靠.通過軟件編程,收發(fā)器可自動完成發(fā)送、接收和監(jiān)聽等功能,從系統(tǒng)設(shè)計角度講,只需對數(shù)據(jù)包中的數(shù)據(jù)進(jìn)行軟件解釋和控制即可.
[page]
2.3 傳感器單元
傳感器單元主要負(fù)責(zé)電流信息的采集,它是保證整個系統(tǒng)性能的基礎(chǔ).首先需要將電流信號轉(zhuǎn)換為電壓信號,這里用TBC-LTA系列霍爾電流傳感器,其工作電源電壓±(12~15)V,工作溫度-40~85℃.為了提高測量精度,結(jié)合實際被測電流大小值,本文選取TBC-LTA系列直流電流傳感器中的TDC503LTA傳感器.
NRF9E5內(nèi)含一個10位線性AD轉(zhuǎn)換器,其轉(zhuǎn)換速率為80kS/s,AD轉(zhuǎn)換器參考電壓可以通過軟件選擇Aref輸入或內(nèi)部帶隙參考電壓1.22V.AD轉(zhuǎn)換器有5個輸入可以通過軟件進(jìn)行選擇,其典型應(yīng)用是啟動/停止模式,采樣時間由軟件控制.默認(rèn)狀態(tài)下它是10位的,如有需要可以通過軟件設(shè)置為6位、8位或12位.同時,AD轉(zhuǎn)換器也可以在差分模式下應(yīng)用,當(dāng)AIN0作為負(fù)輸入端時,AIN1~3作為正輸入端.
2.4 指示燈報警電路
當(dāng)流過電路板電流低于下限值或高于上限值時,指示燈報警電路將產(chǎn)生聲光報警,以便管理人員立即采取應(yīng)對措施.在本設(shè)計中,利用紅色LED 燈和揚(yáng)聲器作為指示燈報警電路.
3 系統(tǒng)軟件設(shè)計
3.1 下位機(jī)軟件設(shè)計
在現(xiàn)代無線通信中,數(shù)據(jù)都是以數(shù)據(jù)包的方式來進(jìn)行傳輸?shù)?對NRF9E5這樣的無線片上系統(tǒng),每次發(fā)送和接收數(shù)據(jù)也是以數(shù)據(jù)包的方式進(jìn)行的.數(shù)據(jù)包格式是通信協(xié)議的重要部分,NRF9E5的無線數(shù)據(jù)包格式有:Preamble、ADDR、PAYLOAD、CRC.其中,Preamble是前導(dǎo)碼,由硬件自動加上去;ADDR則發(fā)送32~40位地址碼;PAYLOAD是有效數(shù)據(jù)(最大為32bit);CRC是循環(huán)冗余碼校驗和,可以由內(nèi)置CRC糾檢錯硬件電路自動加上,可設(shè)為0位、8位或16位.傳感器節(jié)點(diǎn)最重要的工作就是將采集到的數(shù)據(jù)發(fā)送出去.要實現(xiàn)數(shù)據(jù)的無線發(fā)送,必須使處理器中的無線收發(fā)器工作在發(fā)送模式下.NRF9E5的收發(fā)器(NRF905)共有3種工作模式:ShockBurst接收(RX)方式、Shock Burst發(fā)送(TX)方式和節(jié)能方式,其發(fā)送數(shù)據(jù)流程如圖3所示.
3.2 上位機(jī)軟件設(shè)計
上位機(jī)軟件設(shè)計利用VisualC++進(jìn)行編程,設(shè)計了電流實時顯示面板和用于數(shù)據(jù)儲存的數(shù)據(jù)庫.無線傳感器網(wǎng)絡(luò)布置完成后,眾多傳感器節(jié)點(diǎn)的數(shù)據(jù)上傳到計算機(jī),計算機(jī)程序即上位機(jī)程序?qū)⑦@些數(shù)據(jù)存儲起來,為以后的數(shù)據(jù)查詢和處理提供方便.VisualC++為用戶提供了ODBC、DAO和OLEDB等3種數(shù)據(jù)庫訪問方式.ODBC提供了應(yīng)用程序接口(API),任何一個數(shù)據(jù)庫都可以通過這些API達(dá)到管理數(shù)據(jù)庫的目的.使用MFCAppWizard提供的ODBC數(shù)據(jù)庫的一般過程是:
1)用數(shù)據(jù)庫工具例如Access建立一個數(shù)據(jù)庫;
2)在Windows中為1)建立的數(shù)據(jù)庫定義一個ODBC數(shù)據(jù)源;
3)在創(chuàng)建數(shù)據(jù)庫處理的文檔應(yīng)用程序向?qū)е羞x擇上面定義的數(shù)據(jù)源;
4)設(shè)計界面,并使控件與數(shù)據(jù)表字段關(guān)聯(lián).
本設(shè)計中,首先建立了一個數(shù)據(jù)庫,并根據(jù)傳感器節(jié)點(diǎn)數(shù)目建立了若干個數(shù)據(jù)表,然后利用MFC提供的ODBC類:記錄集類、數(shù)據(jù)庫類和可視記錄集類進(jìn)行編程,把各個無線傳感器節(jié)點(diǎn)上傳的數(shù)據(jù)按照它們的節(jié)點(diǎn)號存儲在各個數(shù)據(jù)表中.
4 結(jié)語
本系統(tǒng)的無線傳感器節(jié)點(diǎn)以低功耗的NRF9E5單片機(jī)為核心,利用TBC-LTA系列霍爾電流傳感器,并且融合計算機(jī)技術(shù)和無線傳感器網(wǎng)絡(luò)技術(shù),對PCB電鍍電流進(jìn)行實時數(shù)據(jù)采集和A/D轉(zhuǎn)換,并對采集到的電流數(shù)據(jù)進(jìn)行分析和存儲,為監(jiān)控PCB電鍍電流的生產(chǎn)提供了良好的操作環(huán)境,改善了PCB板的質(zhì)量,提高了產(chǎn)品的競爭力.本系統(tǒng)具有低成本、低功耗、較高的檢測精度、操作簡單和人性化等特點(diǎn),能夠很好地解決PCB電鍍電流監(jiān)測的問題,具有良好的應(yīng)用和發(fā)展前景.