(廣州番禺職業(yè)技術學院 科學技術處,廣州 511483)
反射內(nèi)存網(wǎng)絡是一種基于高速共享存儲器技術的實時網(wǎng)絡,多以星型或環(huán)形方式組網(wǎng)。星型連接則采用集線器作為數(shù)據(jù)中繼轉(zhuǎn)發(fā)設備,網(wǎng)絡中每個節(jié)點先將數(shù)據(jù)傳輸?shù)郊€器,集線器將數(shù)據(jù)進行相應處理后,再同時轉(zhuǎn)發(fā)給其它節(jié)點。有了集線器的使用,可以對數(shù)據(jù)流進行實時監(jiān)視,旁路錯誤節(jié)點,并且數(shù)據(jù)更新時間大大縮短[1]。但其驅(qū)動控制系統(tǒng)的建設,卻是當前困擾人們的問題之一[2]。反射內(nèi)存網(wǎng)絡集線器驅(qū)動的控制系統(tǒng)的設計,對網(wǎng)絡集線器的使用壽命以及利用率方面有著重要作用[3]。當前的驅(qū)動控制方式存在控制誤差大,能耗高,微弱信號檢測精度低等問題,已不能滿足網(wǎng)絡集線器的發(fā)展需求[4]。提出設計反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)。通過制定驅(qū)動控制系統(tǒng)整體設計方案,分別對網(wǎng)絡節(jié)點、電源單元等系統(tǒng)硬件進行改進,優(yōu)化驅(qū)動控制功能,完成反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)設計。實驗證明,該系統(tǒng)控制誤差小,能耗低,微弱驅(qū)動信號檢測精度高,滿足驅(qū)動控制的需求。
對反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)進行設計,需先制定驅(qū)動控制系統(tǒng)整體設計方案[5]。將系統(tǒng)劃分為了三個主要部分:網(wǎng)絡的協(xié)調(diào)單元、轉(zhuǎn)換器節(jié)點單元、驅(qū)動控制系統(tǒng)管理單元。輔助單元有:時鐘與看門狗、系統(tǒng)信號處理單元、電源單元、液晶顯示單元等。驅(qū)動控制系統(tǒng)整體結(jié)構劃分如圖1所示。
圖1 驅(qū)動控制系統(tǒng)整體結(jié)構圖
在反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)中,轉(zhuǎn)換器節(jié)點分別在應用環(huán)境的各個部分進行分布,并將各點的驅(qū)動進行采集。轉(zhuǎn)換器節(jié)點憑自助組織形式,將網(wǎng)絡的協(xié)調(diào)器當作中心,形成無線數(shù)據(jù)通信體系,轉(zhuǎn)換器節(jié)點把收集到的驅(qū)動信息,利用無線傳輸?shù)男问桨l(fā)送給協(xié)調(diào)器。
協(xié)調(diào)器將對全部和其連接的轉(zhuǎn)換器節(jié)點進行管理,同時將反射內(nèi)存網(wǎng)絡集線器節(jié)點驅(qū)動信息接收,再把收集到的全部節(jié)點驅(qū)動信息,傳輸至監(jiān)測中心,監(jiān)測中心將所得信息進行記錄,同時對于不同應用進行不同分析,從而進行相應控制處理。
驅(qū)動控制系統(tǒng)整體設計方案為系統(tǒng)的設計提供充足的理論依據(jù),使所設計的控制系統(tǒng)具有合理性。
反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)的硬件主要包括轉(zhuǎn)換器網(wǎng)絡節(jié)點、協(xié)調(diào)器、管理中心電路、信號處理單元、電源單元等。對各部分進行優(yōu)化改進,完成驅(qū)動控制系統(tǒng)硬件的設計。具體設計過程如下:
轉(zhuǎn)換器節(jié)點設計中,要凸顯出對反射內(nèi)存網(wǎng)絡集線器驅(qū)動的采集和處理,以及傳輸[6]。該單元的設計以單片機STC89C51,對射頻芯片NRF24L01,驅(qū)動轉(zhuǎn)換器DS18B20進行控制,完成驅(qū)動轉(zhuǎn)換器節(jié)點性能,對應關系如圖2所示。
圖2 驅(qū)動轉(zhuǎn)換器節(jié)點構架
圖2中的DS18B20作為一種智能的驅(qū)動轉(zhuǎn)換器,可直接將反射內(nèi)存網(wǎng)絡集線器驅(qū)動讀出。NRF24L01為高集成單片無線數(shù)據(jù)收發(fā)芯片,該芯片內(nèi)部含有鏈路層,其具備主動應答,及數(shù)據(jù)主動重發(fā)等性能,速度為2 Mbps,共有125個供選的工作頻道,頻道的切換時間特別短,能夠應用至跳頻,輸出的功率和選擇頻道,與設置協(xié)議均能夠利用SPI口完成設置。NRF24L01內(nèi)部還能夠在同一個頻道上,接收6路不同通道的數(shù)據(jù),同時通過FDMA技術,最多能夠采集750個點的數(shù)據(jù)。NRF24L01芯片最主要的工作形式為:收發(fā)形式,待機形式、掉電形式。利用SPI指令控制,能夠?qū)崿F(xiàn)幾種形式的快速切換,保障該芯片具有低功耗及高效率的優(yōu)勢,其中設計用到的最主要的形式是收發(fā)形式。NRF24L01芯片于發(fā)送接收形式下,主要的作用就是驅(qū)動數(shù)據(jù)的迅速傳輸。在驅(qū)動數(shù)據(jù)包處理方面,能夠劃分成ShockBurstTM形式,與增強型ShockBurstTM形式,其工作流程如下:增強型ShockBurstTM形式,與ShockBurstTM形式之間的差別就是增強型的ShockBurstTM形式使用的為雙向鏈接的協(xié)議,也就是發(fā)送端傳輸完數(shù)據(jù)后,將進入接收的模式,等待接收端收到數(shù)據(jù)之后,進行相應的信號應答,由此發(fā)送端能夠確認通信成功與否,或者存在數(shù)據(jù)丟包與否等,假設數(shù)據(jù)的通信存在誤差,那么能夠重新發(fā)送數(shù)據(jù)。該種模式優(yōu)勢為:驅(qū)動數(shù)據(jù)收發(fā)及應答,和數(shù)據(jù)重新發(fā)送等一系列操作,均無需占用控制器,能夠減少控制器的工作量,并提升測溫系統(tǒng)的整體運行效率,減少系統(tǒng)運行所用能耗。
在接收形式中,為了實現(xiàn)多點無線組網(wǎng),在一個4*6房間中,設置4個從機端,與1個主機端,即所設計的星形的網(wǎng)絡中心主機端,能夠同時收到房間四個角的從機端傳輸?shù)?路驅(qū)動信息數(shù)據(jù)。即使每個數(shù)據(jù)的通道所使用的均為固定的頻率,和相同的射頻頻道,但他們所用的IP是不同的,接收端利用IP來識別發(fā)射端。當NRF24L01進到增強型ShockBurstTM的接收形式之后,會對所接收的數(shù)據(jù)進行相應通道IP的記錄,同時利用它把應答的信號傳輸至發(fā)送端[7]。而在發(fā)送端,驅(qū)動數(shù)據(jù)通道將被用于對應答信號進行回應,所以數(shù)據(jù)通道接收IP要和發(fā)送端IP相同,能夠保證收到的應答信號正的。
在發(fā)送形式中,NRF24L01進到ShockBurstTM的發(fā)送模式之后,控制器中只要存在待發(fā)數(shù)據(jù),NRF24L01就能夠發(fā)送數(shù)據(jù),數(shù)據(jù)傳輸完成之后,NRF24L01將進入接收形式,等待接收端有應答的信號回復,假設收到了應答的信號,那么認為最后的數(shù)據(jù)包發(fā)送成功,也代表通信成功,假設沒有接收到應答的信號,NRF24L01則會重新發(fā)送數(shù)據(jù)包,一直到接收應答信號,假設超過最大的重發(fā)時間與次數(shù),系統(tǒng)將生成MAX_RT中斷。
在反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)的協(xié)調(diào)器設計中,其主要作用是將轉(zhuǎn)換器收集的驅(qū)動信息進行接收,同時利用串口將信息傳輸至管理中心[8]。協(xié)調(diào)器的硬件與傳感器的節(jié)點相似,不過是缺少轉(zhuǎn)換器,內(nèi)部增加了串行通信單元。
整個反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)管理中心電路的主要性能就是擔任PC。其中,管理中心利用串口將協(xié)調(diào)器所得信息進行接收,并把收到的信息存儲,同時也能夠利用獲得的信息,對于不同應用,進行相應控制和處理。
反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)存儲接收到數(shù)據(jù)時,如果要明確了解驅(qū)動采集的時間,就要對時鐘電路進行設計。以保證系統(tǒng)長期且可靠的工作為目的,系統(tǒng)要對看門狗功能進行設置。其主要用途為使得控制器陷入錯誤形態(tài)之后,在額定時間范圍復位??撮T狗程序啟動時,假設程序在周期內(nèi),沒有喂狗,則看門狗會生成系統(tǒng)復位。
反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)的信號處理單元中包含:前置放大器、主放大器、低通濾波器、帶通濾波器等,其中還包含環(huán)境驅(qū)動的補償模塊。
假設反射內(nèi)存網(wǎng)絡集線器節(jié)點中的待測驅(qū)動目標強度較弱,可能會被噪聲淹沒,從中得到信噪比和精度較高的驅(qū)動控制數(shù)據(jù),這是當前驅(qū)動控制系統(tǒng)設計方法很難實現(xiàn)的[9]。采用電子開關型的相敏檢波器,實現(xiàn)微弱驅(qū)動信號的檢測。驅(qū)動信號進行放大之后,通過帶通濾波器將噪聲抑制住,以此提升信噪比。接著利用運算放大器組建的主放大器,實現(xiàn)信號的進一步擴大,采用相敏檢波器將其傳送至低通濾波器,去除高于待測信號的干擾以及噪聲。低通濾波器所輸出的參考方波信號的頻率,和目標信號的頻率相同。低通濾波器所輸出的電壓是目標輻射,與斬波器輻射之間的差。
反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)對電源單元的要求為:具有“雙電源”的轉(zhuǎn)換性能,也就是測溫系統(tǒng)能夠利用直流電源進行供電,同時能夠利用電池供電,這兩者間可自動進行轉(zhuǎn)換,進而保障系統(tǒng)最少使用其中一種形式供電。圖3為電源單元:
圖3 電源單元
圖3中的肖特基二極管D2主要作用為:對第二輸入電源利用電阻對能量進行消耗這種現(xiàn)象進行阻止。為了達到電源單元設計的需求,第一輸入電源輸出電壓應較高,且輸出電流應較大,反之,第二輸入電源輸出的電壓和電流就應該比較小。綜上,文章選取5 V直流電源,當作第一電源,利用4.5 V電池電源,當作第二電源。
出于對反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制結(jié)果的顯示,均為數(shù)字與字母的考慮,液晶單元選取的是LCD1602[10]。其主要是由點陣字符構成,并且所顯示的內(nèi)容至多兩行,且每行至多能夠顯示16字符。該單元共具備16個引腳,內(nèi)部含有:電源及接地,寄存器選取,使能端和背光電源的正負極。該單元數(shù)據(jù)手冊中,供給4線的連接形式,即僅適用7個輸入和輸出管腳,就能完成驅(qū)動控制結(jié)果的顯示,7個管腳中有3個控制口:RS,R/W,E與數(shù)據(jù)線DB7-DB4,由此寫入1個字節(jié)的驅(qū)動數(shù)據(jù),或者指令時,先寫入高半字節(jié),然后寫入低半字節(jié)。
根據(jù)以上管理中心電路、信號處理單元、電源單元、液晶顯示單元等硬件設備的改進,完成驅(qū)動控制系統(tǒng)硬件部分的設計,為系統(tǒng)軟件設計提供最優(yōu)的硬件環(huán)境。
反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)的軟件功能主要是對驅(qū)動進行控制。在啟動傳感器節(jié)點之后,要先初始化各設備及寄存器,同時查找協(xié)調(diào)器,同時和協(xié)調(diào)器進行連接,再依次對節(jié)點上的各個驅(qū)動傳感器上的數(shù)據(jù)信息進行讀取,并把驅(qū)動數(shù)據(jù)傳輸至協(xié)調(diào)器,全部的傳感器讀取過程完成一次后,傳感器將入至定時休眠的狀態(tài),并等待下輪數(shù)據(jù)讀取。具體過程如圖4所示:
圖4 轉(zhuǎn)換器工作程序
協(xié)調(diào)器的主要責任為構建通信協(xié)議,這個協(xié)議是完成無線聯(lián)網(wǎng),與無線數(shù)據(jù)傳輸性能的重要部分,管理系統(tǒng)的硬件部分資源,同時為系統(tǒng)的應用與開發(fā)提供接口。其中,協(xié)議中主要包括控制器的初始化、利用SPI接口實現(xiàn)通信系統(tǒng)初始化等。
NRF24L01無線單元的軟件部分中主要有兩個部分:從機端程序,也就是發(fā)送端程序,和主機端程序,也就是接收端程序。其中從機端性能:利用無線網(wǎng)絡,把從機端的MCU交出的驅(qū)動數(shù)據(jù)信息傳輸出去,而主機端的性能就是將從機端傳輸出去的驅(qū)動數(shù)據(jù)信息,交至主機端MCU。因此兩個部分代碼程序略有不同。
在該程序使用增強型ShockBurstTM對數(shù)據(jù)包進行處理時,其中,通信的速率是1 Mbps,或者是2 Mbps,晶振頻率是16 MHz,工作的頻段是2445 MHz,發(fā)射的頻率自定義是0 dBm,設置的校驗為16位。增強型ShockBurstTM形式下發(fā)射流程為:
寄存器內(nèi)的PRIM_RX位配置是低電平;每當MCU內(nèi)部有待發(fā)數(shù)據(jù)時,接收節(jié)點IP,與有效數(shù)據(jù)利用SPI接口寫至NRF24L01。其中MCU內(nèi)的數(shù)據(jù)依照字節(jié),依次寫至無線單元的TX FIFO內(nèi),并等待被發(fā)送;將CE管腳的電平拉高,并將其保持高電平至少10 μs,NRF24L01的配置是發(fā)射形式的;NRF24L01進入ShockBurstTM形式下工作;無線單元上電并運行;NRF24L01芯片內(nèi)部16 MHz時鐘初始化;依據(jù)設定好的通信速率完成數(shù)據(jù)的發(fā)送;將驅(qū)動數(shù)據(jù)信息進行發(fā)送之后,將NRF24L01設置為接收模式,并等待從機端傳送應答信號,假設在有效應答時間范圍接收到回應信號,那么表示數(shù)據(jù)傳輸成功,TX_DS位置是高電平,同時將TX FIFO內(nèi)的數(shù)據(jù)清空,假設在規(guī)定的時間內(nèi),傳送端并無應答信號,那么系統(tǒng)將重發(fā)數(shù)據(jù),如果重發(fā)次數(shù)超過了設置好的最大次數(shù),那么生成MAX_RT中斷,不過TX FIFO中的數(shù)據(jù)不清空;將CE管腳拉到低電平位置,系統(tǒng)將進入至待機狀態(tài),不然,系統(tǒng)將繼續(xù)傳送TX FIFO寄存器內(nèi)的驅(qū)動數(shù)據(jù)信息。
綜上所述,通過系統(tǒng)電源單元、信息處理單元等硬件的改進,及軟件驅(qū)動控制功能的優(yōu)化,完成了反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)的設計。
為了證明所設計的反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)的性能,需進行一次實驗。將實驗平臺搭建在Matlab上,實驗數(shù)據(jù)取自于某反射內(nèi)存網(wǎng)絡集線器。
實驗分別從以下幾個方面進行:
1)反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)控制誤差;
2)反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)運行能耗;
3)反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng),對微弱驅(qū)動信號的檢測效果。
分別利用傳統(tǒng)系統(tǒng)和改進系統(tǒng)對反射內(nèi)存網(wǎng)絡集線器中的兩個點驅(qū)動進行控制,測試兩種系統(tǒng)的控制誤差。根據(jù)時間的不斷增加,觀察不同系統(tǒng)對兩個待測點驅(qū)動控制結(jié)果,與實際驅(qū)動的擬合程度如圖5所示。
圖5 兩種不同系統(tǒng)控制誤差對比結(jié)果
分析圖5實驗結(jié)果可得,改進系統(tǒng)相比傳統(tǒng)系統(tǒng)在驅(qū)動控制精度方面具有絕對的優(yōu)勢。
改進系統(tǒng)利用DS18B20這種智能的驅(qū)動傳感器,作為反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)的驅(qū)動采集模塊。其可利用編程完成9~12位數(shù)字值讀數(shù),提升了改進系統(tǒng)的整體驅(qū)動精度,同時也證明了所提方法具有很強的可靠性。
圖6中,黑色區(qū)域所占面積越多表示系統(tǒng)運行所用能耗越多,黑色區(qū)域所占空間越少,表示系統(tǒng)運行作用能耗越少。分別選用傳統(tǒng)系統(tǒng)和改進系統(tǒng)對驅(qū)動控制系統(tǒng)運行能耗進行測試,對比兩種系統(tǒng)的能耗結(jié)果如圖6所示。
圖6 兩種不同系統(tǒng)運行能耗對比
分析圖6可得,改進設計的驅(qū)動控制系統(tǒng)運行能耗,相比傳統(tǒng)的驅(qū)動控制系統(tǒng)運行能耗明顯較少。改進系統(tǒng)采用NRF24L01芯片中的ShockBurstTM形式的優(yōu)勢就是:驅(qū)動數(shù)據(jù)收發(fā)及應答,和數(shù)據(jù)重新發(fā)送等一系列操作,均無需占用控制器,能夠減少控制器的工作量,減少系統(tǒng)運行所用能耗;同時在電源單元中,肖特基二極管D2對第二輸入電源利用電阻對能量進行消耗的現(xiàn)象進行了阻止,更加減少了系統(tǒng)運行的所用能耗。
圖7選取的是反射內(nèi)存網(wǎng)絡集線器運行波形中的一段,其中的波形線為微弱驅(qū)動信號,利用傳統(tǒng)系統(tǒng)和改進系統(tǒng)對其微弱驅(qū)動信號進行檢測,觀察兩種不同系統(tǒng)微弱驅(qū)動信號的檢測效果,測得兩種系統(tǒng)的實驗對比結(jié)果如圖7所示。
圖7 兩種不同系統(tǒng)微弱驅(qū)動信號檢測效果對比
分析圖7結(jié)果,改進系統(tǒng)采用了電子開關型的相敏檢波器,其原理為:驅(qū)動信號進行放大之后,通過帶通濾波器將噪聲抑制住,以此提升信噪比。接著利用運算放大器組建的主放大器,實現(xiàn)信號的進一步擴大,采用相敏檢波器將其傳送至低通濾波器,去除高于待測信號的干擾以及噪聲,并以此增強對微弱驅(qū)動信號檢測效果。
綜合以上實驗結(jié)果可得,改進設計的反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)的控制誤差小,運行能耗低,微弱驅(qū)動信號檢測效果好,具有一定的實用性和有效性。
為解決傳統(tǒng)系統(tǒng)存在的控制誤差大,能耗高,微弱驅(qū)動信號檢測效果差等問題,提出反射內(nèi)存網(wǎng)絡集線器驅(qū)動控制系統(tǒng)設計。通過制定的驅(qū)動控制系統(tǒng)的整體結(jié)構,對系統(tǒng)硬件部分的電源單元等進行改進,并優(yōu)化設計了驅(qū)動控制的軟件功能,完成驅(qū)動控制系統(tǒng)的設計。實驗證明,該系統(tǒng)控制誤差小,運行能耗低,且對微弱驅(qū)動信號檢測精度高。但該系統(tǒng)在運行穩(wěn)定性方面尚有不足,未來將針對系統(tǒng)穩(wěn)定性進行研究,為驅(qū)動控制領域提供有效借鑒依據(jù)。