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