《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 測試測量 > 設(shè)計應(yīng)用 > 計算機(jī)近距離無線數(shù)據(jù)采集系統(tǒng)設(shè)計
計算機(jī)近距離無線數(shù)據(jù)采集系統(tǒng)設(shè)計
中國測控網(wǎng)
摘要: 針對某醫(yī)療裝置中的人體生理信號采集和傳輸問題,,本文設(shè)計了計算機(jī)近距離無線數(shù)據(jù)采集系統(tǒng),。采用 Nodic公司的nRF2401作為無線收發(fā)核心器件。系統(tǒng)由一臺PC,、無線數(shù)據(jù)接收模塊和無線數(shù)據(jù)采集發(fā)射模塊組成。無線數(shù)據(jù)發(fā)射模塊以C8051F021單片機(jī)為處理核心,,采用單片機(jī)內(nèi)部的12位ADC對現(xiàn)場的模擬信號進(jìn)行采集和發(fā)送,;無線數(shù)據(jù)接收模塊以C8051F021單片機(jī)作為處理核心,接收與發(fā)射模塊由nRF2401無線收發(fā)芯片完成,,采用MAX5591實(shí)現(xiàn)12位D/A轉(zhuǎn)換,,采用 RS-485總線與PC進(jìn)行通信,它負(fù)責(zé)現(xiàn)場數(shù)據(jù)的接收和初步處理,,并轉(zhuǎn)發(fā)給PC以供顯示和監(jiān)控,,同時將數(shù)字量轉(zhuǎn)換為模擬量,供示波器顯示,;PC有良好的人機(jī)界面,,利用NI的虛擬示波器顯示遠(yuǎn)端現(xiàn)場采集的數(shù)據(jù),并可以向現(xiàn)場的采集模塊發(fā)送控制命令,,同時可以實(shí)現(xiàn)保存采集數(shù)據(jù),、打印、回放歷史數(shù)據(jù)等功能,。
Abstract:
Key words :

  引言

  針對某醫(yī)療裝置中的人體生理信號采集和傳輸問題,,本文設(shè)計了計算機(jī)近距離無線數(shù)據(jù)采集系統(tǒng)。采用 Nodic公司的nRF2401作為無線收發(fā)核心器件,。系統(tǒng)由一臺PC,、無線數(shù)據(jù)接收模塊和無線數(shù)據(jù)采集發(fā)射模塊組成。無線數(shù)據(jù)發(fā)射模塊以C8051F021單片機(jī)為處理核心,,采用單片機(jī)內(nèi)部的12位ADC對現(xiàn)場的模擬信號進(jìn)行采集和發(fā)送,;無線數(shù)據(jù)接收模塊以C8051F021單片機(jī)作為處理核心,,接收與發(fā)射模塊由nRF2401無線收發(fā)芯片完成,采用MAX5591實(shí)現(xiàn)12位D/A轉(zhuǎn)換,,采用 RS-485總線與PC進(jìn)行通信,,它負(fù)責(zé)現(xiàn)場數(shù)據(jù)的接收和初步處理,并轉(zhuǎn)發(fā)給PC以供顯示和監(jiān)控,,同時將數(shù)字量轉(zhuǎn)換為模擬量,,供示波器顯示;PC有良好的人機(jī)界面,,利用NI的虛擬示波器顯示遠(yuǎn)端現(xiàn)場采集的數(shù)據(jù),,并可以向現(xiàn)場的采集模塊發(fā)送控制命令,同時可以實(shí)現(xiàn)保存采集數(shù)據(jù),、打印,、回放歷史數(shù)據(jù)等功能。

  系統(tǒng)分析及設(shè)計

  計算機(jī)短距離無線數(shù)據(jù)采集系統(tǒng)組成如圖1所示,。



圖 1 系統(tǒng)組成框圖

  系統(tǒng)分析及硬件設(shè)計

  由于現(xiàn)場要采集的數(shù)據(jù)為醫(yī)學(xué)人體實(shí)驗數(shù)據(jù),,幅值大約在-1.0V~+1.0V之間,頻率為300Hz,,要求測量誤差低于10mV,,C8051F021自帶的12位ADC在精度上可以滿足要求;但是單片機(jī)中的ADC要求輸入為正電壓,,同時考慮到轉(zhuǎn)換精度要求,,故需要對信號進(jìn)行轉(zhuǎn)換,將原信號轉(zhuǎn)換為幅值在0~3V,、頻率300Hz左右的信號,。可以利用MAX4194組成信號轉(zhuǎn)換電路,,將模擬信號的零參考電平抬升到1.0V,。這樣,原先-1.0V~0V之間的電壓信號轉(zhuǎn)換為0~1.0V之間的電壓,,而原先0V~1.0V之間的電壓轉(zhuǎn)換為1.0V~2.0V之間的電壓,。這樣就完成了原始信號的轉(zhuǎn)換,適應(yīng)了單片機(jī)的輸入要求,。單片機(jī)A/D轉(zhuǎn)換參考電壓選擇外部3.3V,由MAX6013提供,。

  考慮到無線數(shù)據(jù)的發(fā)送與接收特點(diǎn),,故選用Nordic 公司的nRF2401芯片。nRF2401是單片射頻收發(fā)芯片,,工作于2.4GHz~2.5GHz ISM頻段,,芯片內(nèi)置頻率合成器,、功率放大器、晶體振蕩器和調(diào)制器等功能模塊,,輸出功率和通信頻道可通過程序進(jìn)行配置,。芯片功耗非常低,以-5dBm的功率發(fā)射時,,工作電流只有10.5mA,,接收時工作電流只有18mA。其獨(dú)有的DuoCeiver技術(shù)使nRF2401可以使用同一天線,,同時接收兩個不同頻道的數(shù)據(jù),。nRF2401使用跳頻技術(shù),在2400MHz~2527MHz之間設(shè)立了128個頻道(每個頻道帶寬1MHz),,頻道間的切換時間小于200ms,。此外,nRF2401內(nèi)置CRC編解碼模塊,,可以在不增加編程難度的條件下減小誤碼率,。

  無線數(shù)據(jù)接收后,要進(jìn)行D/A轉(zhuǎn)換,,供示波器觀看,;考慮到數(shù)據(jù)的采集精度要求,故采用了 MAX5591作為轉(zhuǎn)換器件,,一方面可以方便地與C8051F021單片機(jī)SPI接口連接,,另一方面,它是12位DAC,,與采集端的ADC匹配,,可減小轉(zhuǎn)換誤差。

  無線數(shù)據(jù)接收到終端后,,要求能直觀地觀看,,并且可以對現(xiàn)場的數(shù)據(jù)采集次數(shù)、采集啟停時間進(jìn)行控制,,故需要將數(shù)據(jù)傳到PC,,進(jìn)行顯示;同時,,通過人機(jī)界面,,對現(xiàn)場進(jìn)行遠(yuǎn)程控制。PC采用VC++編寫程序,,利用NI 的虛擬示波器和其它控件實(shí)現(xiàn)友好的人機(jī)界面,,數(shù)據(jù)顯示、存儲和打印功能。

  系統(tǒng)中的主要軟件模塊

  系統(tǒng)軟件主要由上位機(jī)軟件和下位機(jī)軟件組成,。

  上位機(jī)軟件主要實(shí)現(xiàn)與單片機(jī)通信,、波形顯示、數(shù)據(jù)存儲,、數(shù)據(jù)回放,、打印等功能。下位機(jī)的主要功能有:系統(tǒng)初始化,、數(shù)據(jù)采集(A/D轉(zhuǎn)換),、無線數(shù)據(jù)發(fā)射、無線數(shù)據(jù)接收,、數(shù)據(jù)D/A轉(zhuǎn)換,、與PC串口通信等。下面重點(diǎn)介紹下位機(jī)的無線發(fā)射與接收部分軟件,。

  無線數(shù)據(jù)收發(fā)主要通過對nRF2401進(jìn)行操作實(shí)現(xiàn),,包括器件配置、發(fā)送數(shù)據(jù),、接收數(shù)據(jù)等,。nRF2401的工作模式通過引腳PWR_UP、CE和CS選擇,。在RX/TX模式下,,有兩種工作方式:ShockBurs和Direct Mode。本系統(tǒng)選用了ShockBurst模式,,這種模式下需要配置的內(nèi)容有:接收數(shù)據(jù)長度,、接收通道地址、CRC校驗,、工作方式,、發(fā)送頻率、傳送速率,、接收與發(fā)送等,。需要15字節(jié)的配置內(nèi)容,下面給出了16進(jìn)制的配置內(nèi)容:0x80,0x80,0x00,0xcc,0xcc,0xcc,0x00,0xcd,0xcd,0xcd,0xcd,0x83,0x4f,0x05,。

  難點(diǎn)分析及解決方法

  nRF2401半雙工通信方式與C8051全雙工通信接口的轉(zhuǎn)換

  在數(shù)據(jù)的采集端,,單片機(jī)與射頻模塊是雙向通信,可以直接采用單片機(jī)自帶的SPI 接口與射頻模塊單向通信,,包括配置射頻模塊的工作方式,、接收通道地址、接收數(shù)據(jù)長度,、接收頻率,、發(fā)送功率等參數(shù)和要發(fā)送的采集數(shù)據(jù),;當(dāng)單片機(jī)要讀取遠(yuǎn)端發(fā)送的控制命令時,,要將SPI模式關(guān)閉,,同時將MOSI、DR1端口定義為輸入方式,,然后將射頻模塊接收的控制命令讀到單片機(jī)內(nèi)部,,并根據(jù)控制命令進(jìn)行相應(yīng)的操作,如采集通道選擇,、采集次數(shù)設(shè)定,、開始采集、停止采集,、發(fā)送數(shù)據(jù)等,。



表1 實(shí)驗數(shù)據(jù)表

  在接收端,單片機(jī)和射頻模塊之間也是雙向通信,,單片機(jī)首先關(guān)閉SPI 模式,,將MISO定義為輸入模式,通過模擬的SPI 操作,,對射頻模塊進(jìn)行配置,;當(dāng)有控制命令要發(fā)送時,仍將MISO端口定義為輸出模式,,將射頻模塊配置為發(fā)送模式,,將控制命令發(fā)送到數(shù)據(jù)采集終端;當(dāng)要接收采集終端傳來的數(shù)據(jù)時,,首先將射頻模塊配置為接收模式,,然后打開SPI 功能,利用單片機(jī)的SPI接口,,將數(shù)據(jù)讀到單片機(jī)內(nèi)部,。

  這樣,就完成了射頻模塊的半雙工通信接口與單片機(jī)全雙工通信接口的轉(zhuǎn)換,。

  單片機(jī)與MAX5591之間的SPI接口通信

  C8051單片機(jī)的SPI 操作時序不能滿足MAX5591的時序要求,。要使單片機(jī)和MAX5591之間進(jìn)行數(shù)據(jù)傳輸,必須根據(jù)MAX5591的時序要求將單片機(jī)的SPI時序進(jìn)行轉(zhuǎn)換,。

  實(shí)驗結(jié)果及分析總結(jié)

  實(shí)驗結(jié)果

  現(xiàn)場模擬電壓信號通過12位ADC轉(zhuǎn)換為數(shù)字量,,通過無線方式傳送到遠(yuǎn)端監(jiān)控室,一方面通過DAC轉(zhuǎn)換為模擬量,,供示波器觀看,;另一方面,通過RS-232傳送到PC進(jìn)行顯示,、存儲和打印,。表1是實(shí)驗數(shù)據(jù),。

  分析總結(jié)

  從試驗數(shù)據(jù)可以看到,系統(tǒng)實(shí)現(xiàn)了現(xiàn)場模擬電壓信號的采集,、無線傳輸以及模擬信號還原,,誤差不大于0.2%,滿足了設(shè)計要求,。同時系統(tǒng)還存在著不足之處:在數(shù)據(jù)量加大,,傳輸速率為1MHz時,偶爾會出現(xiàn)數(shù)據(jù)丟失現(xiàn)象,;當(dāng)被測信號頻率大于500Hz的時候,,信號復(fù)現(xiàn)時會出現(xiàn)波形失真。

  系統(tǒng)實(shí)現(xiàn)了遠(yuǎn)端現(xiàn)場采集8路人體生理信號,,無線傳送到監(jiān)控中心并復(fù)現(xiàn)現(xiàn)場信號的功能,。實(shí)驗證明,系統(tǒng)在250Kbps速率下無線傳輸距離可達(dá)50米,,采集信號誤差低于0.5% ,。數(shù)據(jù)傳輸中采用了16位CRC校驗,降低了誤碼率,。該系統(tǒng)已經(jīng)在某醫(yī)療器械上得到應(yīng)用,。經(jīng)改造,系統(tǒng)可以采集現(xiàn)場的數(shù)字量和一些開關(guān)量,,實(shí)現(xiàn)設(shè)備狀態(tài)監(jiān)測和開關(guān)量控制等,。

  結(jié)語

  本文采用軟件切換的方式實(shí)現(xiàn)了半雙工器件與全雙工器件的通訊轉(zhuǎn)換,采用軟件模擬SPI操作,,解決了多SPI器件之間的通信協(xié)議匹配問題,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。