利用計(jì)算機(jī)、傳感器技術(shù)和無(wú)線通信,本文設(shè)計(jì)了用于PCB電鍍電流檢測(cè)的無(wú)線傳感器網(wǎng)絡(luò)監(jiān)測(cè)系統(tǒng)。該監(jiān)控系統(tǒng)以NRF9E5單片機(jī)為無(wú)線傳感器節(jié)點(diǎn)核心,運(yùn)用霍爾電流傳感器和檢測(cè)電路的設(shè)計(jì),實(shí)現(xiàn)了無(wú)線傳感器節(jié)點(diǎn)與計(jì)算機(jī)的無(wú)線通信。
PCB板的主要功能是使各種電子零組件形成預(yù)定電路的連接,其質(zhì)量的好壞將直接影響整個(gè)機(jī)電產(chǎn)品的性能。PCB電鍍電流是影響PCB板質(zhì)量的重要因素之一,目前PBC電鍍電流的檢測(cè)是由操作人員拿著手持的監(jiān)測(cè)設(shè)備、間隔一定時(shí)間進(jìn)行檢測(cè);因此存在不少缺點(diǎn),如非實(shí)時(shí)檢測(cè),容易漏檢和誤檢,長(zhǎng)期在電鍍環(huán)境里工作會(huì)損害人體健康等。鑒于人工檢測(cè)已不能適應(yīng)當(dāng)今制造技術(shù)發(fā)展的需要,本文提出PCB電鍍電流的無(wú)線傳輸方案,即在需要檢測(cè)電鍍電流的地方安放傳感器節(jié)點(diǎn),并由監(jiān)控中心對(duì)采集的電流數(shù)據(jù)進(jìn)行統(tǒng)一實(shí)時(shí)的監(jiān)測(cè)和控制。
1 系統(tǒng)框架
基于無(wú)線傳感器網(wǎng)絡(luò)的PCB電鍍電流監(jiān)測(cè)系統(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ù)整理后,以無(wú)線通信的方式發(fā)送給匯聚節(jié)點(diǎn);匯聚節(jié)點(diǎn)將傳感器節(jié)點(diǎn)發(fā)送來(lái)的數(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ī)的串口連接來(lái)處理從各節(jié)點(diǎn)采集回來(lái)的數(shù)據(jù),并通過主模塊發(fā)送控制指令和有效數(shù)據(jù)完成對(duì)各個(gè)節(jié)點(diǎn)的設(shè)置,實(shí)現(xiàn)對(duì)現(xiàn)場(chǎng)設(shè)備的控制。管理層是計(jì)算機(jī)對(duì)采集上來(lái)的電鍍電流數(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ì)
無(wú)線傳感器節(jié)點(diǎn)是整個(gè)無(wú)線網(wǎng)絡(luò)的基本組成單元,它的主要任務(wù)是采集PCB電鍍電流數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行前期處理,并對(duì)來(lái)自上位機(jī)的命令做出回應(yīng),進(jìn)而向上位機(jī)發(fā)送采集到的電流數(shù)據(jù)。無(wú)線傳感器節(jié)點(diǎn)由NRF9E5單片機(jī)系統(tǒng)、無(wú)線通信單元、傳感器單元和指示燈報(bào)警電路等組成。
2.1 NRF9E5單片機(jī)系統(tǒng)
NRF9E5無(wú)線單片機(jī)是NordicVLSI公司于2004年推出的無(wú)線單片機(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 無(wú)線通信單元
由于NRF9E5無(wú)線單片機(jī)內(nèi)置了NRF905的433MHz、868MHz、915MHz收發(fā)器,從而使整個(gè)系統(tǒng)的設(shè)計(jì)更加簡(jiǎn)潔可靠。通過軟件編程,收發(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℃。為了提高測(cè)量精度,結(jié)合實(shí)際被測(cè)電流大小值,本文選取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)代無(wú)線通信中,數(shù)據(jù)都是以數(shù)據(jù)包的方式來(lái)進(jìn)行傳輸?shù)?。?duì)NRF9E5這樣的無(wú)線片上系統(tǒng),每次發(fā)送和接收數(shù)據(jù)也是以數(shù)據(jù)包的方式進(jìn)行的。數(shù)據(jù)包格式是通信協(xié)議的重要部分,NRF9E5的無(wú)線數(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ù)的無(wú)線發(fā)送,必須使處理器中的無(wú)線收發(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ù)庫(kù)。無(wú)線傳感器網(wǎng)絡(luò)布置完成后,眾多傳感器節(jié)點(diǎn)的數(shù)據(jù)上傳到計(jì)算機(jī),計(jì)算機(jī)程序即上位機(jī)程序?qū)⑦@些數(shù)據(jù)存儲(chǔ)起來(lái),為以后的數(shù)據(jù)查詢和處理提供方便。VisualC++為用戶提供了ODBC、DAO和OLEDB等3種數(shù)據(jù)庫(kù)訪問方式。ODBC提供了應(yīng)用程序接口(API),任何一個(gè)數(shù)據(jù)庫(kù)都可以通過這些API達(dá)到管理數(shù)據(jù)庫(kù)的目的。使用MFCAppWizard提供的ODBC數(shù)據(jù)庫(kù)的一般過程是:
1)用數(shù)據(jù)庫(kù)工具例如Access建立一個(gè)數(shù)據(jù)庫(kù);
2)在Windows中為1)建立的數(shù)據(jù)庫(kù)定義一個(gè)ODBC數(shù)據(jù)源;
3)在創(chuàng)建數(shù)據(jù)庫(kù)處理的文檔應(yīng)用程序向?qū)е羞x擇上面定義的數(shù)據(jù)源;
4)設(shè)計(jì)界面,并使控件與數(shù)據(jù)表字段關(guān)聯(lián)。
本設(shè)計(jì)中,首先建立了一個(gè)數(shù)據(jù)庫(kù),并根據(jù)傳感器節(jié)點(diǎn)數(shù)目建立了若干個(gè)數(shù)據(jù)表,然后利用MFC提供的ODBC類:記錄集類、數(shù)據(jù)庫(kù)類和可視記錄集類進(jìn)行編程,把各個(gè)無(wú)線傳感器節(jié)點(diǎn)上傳的數(shù)據(jù)按照它們的節(jié)點(diǎn)號(hào)存儲(chǔ)在各個(gè)數(shù)據(jù)表中。
4 結(jié)語(yǔ)
本系統(tǒng)的無(wú)線傳感器節(jié)點(diǎn)以低功耗的NRF9E5單片機(jī)為核心,利用TBC-LTA系列霍爾電流傳感器,并且融合計(jì)算機(jī)技術(shù)和無(wú)線傳感器網(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)品的競(jìng)爭(zhēng)力。本系統(tǒng)具有低成本、低功耗、較高的檢測(cè)精度、操作簡(jiǎn)單和人性化等特點(diǎn),能夠很好地解決PCB電鍍電流監(jiān)測(cè)的問題,具有良好的應(yīng)用和發(fā)展前景。
評(píng)論
查看更多