(樂山職業(yè)技術學院 四川 樂山 614000)
隨著工業(yè)2.0的發(fā)展,溫度以及其他數據的采集越來越頻繁,應用越來越廣泛,傳統(tǒng)的溫度采集不方便,在高溫環(huán)境下,給采集人員帶來一定的安全隱患,本文通過設計一個非接觸式的遠程溫度采集系統(tǒng),該系統(tǒng)使用atmega16系列芯片作為主控器件,利用NFRF905芯片進行遠程通信,溫度傳感器使用PT100,PT100是一個溫度傳感器,是一種穩(wěn)定性和線性都比較好的鉑絲熱電阻傳感器,可以工作在-200℃至650℃的范圍。
系統(tǒng)由PT100采集外部溫度,并將溫度信息量轉換成電壓量,在通過模擬信號數字化,將溫度的模擬量,轉變?yōu)檫m合計算機或控制器處理的數字量,送給atmega16單片機處理,單片機將處理后的信息送到LCD1602液晶屏上顯示,然后在通過nrf905無線傳輸模塊遠程傳遞給控制中心。整個系統(tǒng)包括系統(tǒng)溫度采集模塊、模/數轉換模塊、無線傳輸模塊、和系統(tǒng)控制中心。
系統(tǒng)硬件模塊框圖如圖1所示:
在此框圖中,每一個從模塊,可以控制多個溫度采集模塊,溫度控制器模塊可以分為主模塊和從模塊,一個溫度控制器主模塊可以控制多個溫度控制器從模塊。
無線傳輸模塊使用NRF905芯片,NRF905是一款工作于433MHZ、868MHZ、915MHZ的高斯移頻鍵控調制模式下的一款無線傳輸芯片,最多可利用512個通信頻率,使用shockburst傳輸模式,和微控制器之間使用全雙工的串行外設接口進行通信。配置非常方便。此外,其功耗非常低,以-10dBm的輸出功率發(fā)射時電流只有11mA,工作于接收模式時的電流為12.5mA,內建空閑模式與關機模式,易于實現節(jié)能。nRF905適用于無線數據通信、無線報警及安全系統(tǒng)、無線開鎖、無線監(jiān)測、家庭自動化和玩具等諸多領域[1]。
核心控制芯片使用atmega16,它是一款高性能、低功耗的8位avr的微控制器,有32x8的通用寄存器,內有16K字節(jié)的程序存儲器,在系統(tǒng)內可編程Flash,512字節(jié)的EEPROM和1K字節(jié)內部SRAM。

圖1 系統(tǒng)硬件結構圖

圖2 軟件流程圖
系統(tǒng)的軟件分為上位機軟件和控制器軟件,本系統(tǒng)設計中主要是對控制器軟件進行設計,從控制器軟件的流程圖如圖2所示:
在使用NFR905作為無線傳輸模塊的時候,主要考慮三個方面的因素:Nrf905模式的配置、Nrf905通過寄存器配置、Nrf905需要spi通信配置寄存器[2]。模式的配置,有四種模式:如下表所示:

表1 NRF905配置模式
其中射頻接收模式和射頻發(fā)送模式是實現系統(tǒng)溫度數據遠程接收和發(fā)送功能的兩種模式,假設PWR_UP為高電平,可以通過如下的軟件設計將其配置為接收模式。
void SetRxMode(void)
{
TXEN=0;
TRX_CE=1;
Delay(1);
}
其中Delay(1)的延時時間應該大于或等于650us。
同樣的也可以將其配送為發(fā)送模式,配置為發(fā)送模式的程序段如下所示:
void SetTxMode(void)
{
TRX_CE=0;
TXEN=1;
Delay(1);
}
2.1 nRF905配置
根據手冊,可以寫出如下的配置程序:
unsigned char idata RFConf[11]=
{
0x00, //配置命令//
0x4c,//CH_NO,配置頻段在430MHZ
0x0c,//輸出功率為10db,不重發(fā),節(jié)電為正常模式
0x44,//地址寬度設置,為4字節(jié)
0x04,0x04,//接收發(fā)送有效數據長度為32字節(jié)
0xCC,0xCC,0xCC,0xCC,//接收地址
0x58,//CRC充許,8位CRC校驗,外部時鐘信號不使能,16M晶振
};
本系統(tǒng)在設計上實現了一對多的通信模式,可以通過主控制對多個從控制器實現控制和管理,多個溫度采集系統(tǒng)將采集的溫度數據送給從控制器進行處理,從控制器又將這些數據送給主控制器進行管理和在上位機中顯示、保存。