新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于ZigBee的現場安全溫度在線監控系統

        基于ZigBee的現場安全溫度在線監控系統

        作者: 時間:2010-09-15 來源:網絡 收藏

        2 系統硬件設計
        2.1 應用芯片簡介
        Freescale公司推出的MCl3213是一款可以搭建符合IEEE802.15.4標準的2.4 GHz低功耗收發器平臺的集成MCU。它通過內部SPI連接RF和HCS08,具有低功耗、高集成度等優點,同時擁有豐富的外部接口資源。
        LM75A是具有高速I2C總線接口的集成數字溫度傳感器,內部Temp寄存器存放一個11位二進制數的補碼,用來在-55~+125℃的溫度范圍內實現0.125℃的精度。
        FT232BL是一款USB接口轉換芯片,實現USB到串行UART接口的轉換,有多種電路設計方式,配合使用EEPROM可存儲USB VID、PID等產品描述信息。
        LCDl602是一款內嵌驅動及字符的液晶顯示模塊。由于MCl3213的I/O數目的限制,其采用4線數據的連接方式,將8位數據分兩次各4位地間接傳送。
        SP3220E為TTL轉RS-232的電平轉換芯片。
        2.2 硬件電路設計
        圖3為硬件電路的邏輯結構圖。

        14c.jpg


        針對系統的低功耗及低成本,根據所要實現的功能在圖3的基礎上進行篩選。ZED、ZR、ZC分別采用不同的設計電路,其篩選組合的方式如表1所列。

        14d.jpg

        3 系統軟件設計
        3.1 軟件設計思想
        為了實現溫度監控與空間定位的功能,系統網絡中的各類設備須相互通信、協調合作。軟件設計思想如圖4所示。ZED利用攜帶的LM75A周期性地檢測生產現場的溫度,然后在LCDl602上實時顯示溫度信息以供現場操作,并向ZR和ZC發送溫度數據;ZR主要是度量接收ZED數據的RSSI/LQI值,并發送給ZC以達到對ZED空間定位的目的;ZC接收來自ZED及ZR的數據,通過USB/RS-232接口與上位機VB程序及Internet,網絡通信,利用上位機監控軟件或遠程網絡,集中在線對整個網絡的協調和ZED生產現場進行安全溫度的監控。

        14e.jpg


        3.2 溫度檢測程序的設計
        LM75A內部A/D每隔100 ms執行一次溫度一數字的轉換,并將轉換得到的11位二進制數的補碼數據存放進Temp寄存器中,從而實現0.125 ℃的溫度精度。系統需要注意讀取LM75A溫度數據的頻率,并且應將讀取Temp中的數據轉換成實際真實的溫度值。
        若Temp數據的MSB位D10=O,則溫度是一個正數:
        溫度=(Temp中的數據)×O.125℃ (1)
        若Temp數據的MSB位D10=1,則溫度是一個負數:
        溫度=(Temp中的數據二進制補碼)×O.125℃ (2)
        為了兼顧現場顯示與遠程監控,ZED依據式(1)、(2)利用C語言的移位等命令獲得實際溫度值,并在LCDl602上實時顯示(當現場溫度超過設定的安全范圍時,蜂鳴器報警),而直接讀取Temp的兩個字節發送至網絡中。
        3.3 空間定位的實際數學模型
        為了獲得LQI值與距離d之間的數學關系,系統需要對不同的d測量大量接收數據的LQI值。以一片開闊的籃球場作為實驗基地,利用卷尺等工具在0~64 m范圍內測量LQI值。在相同的d距離下連續測量不同方向的60組數據,并將10個最值濾波舍去,求平均值作為該距離d的LQI。然后,利用Matlab軟件對各距離下的LQI-d數值進行一個分段對數函數的曲線擬合,求得實際數學模型。擬合曲線如圖5所示。

        14f.jpg
        由于實測LQI值易受干擾,波動性較大不穩定,因此對ZED空間定位時在一個周期內連續測量24組數據,然后濾去4個最值求取平均值作為定位的LQI。為了提高系統的速度和穩定性,定位應用程序根據式(3)在上位機中采用VB語言進行編寫,從而減輕了網絡的數據處理負擔。



        關鍵詞: ZigBee

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 黄冈市| 花莲县| 兴仁县| 鹤峰县| 桂东县| 望江县| 两当县| 兴文县| 乌恰县| 盐城市| 宜黄县| 咸宁市| 高要市| 武宣县| 汕头市| 怀集县| 浦城县| 包头市| 海城市| 湟源县| 陇川县| 惠州市| 古丈县| 三明市| 城步| 页游| 兴安县| 宁波市| 甘德县| 济阳县| 双城市| 黄平县| 越西县| 阿克| 青岛市| 石棉县| 镇宁| 泰宁县| 衡东县| 祁阳县| 固原市|