久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10905|回復: 12
打印 上一主題 下一主題
收起左側

單片機DHT11無線溫濕度多點采集系統實戰項目所有資料下載

  [復制鏈接]
跳轉到指定樓層
樓主
無線溫濕度多點采集系統具有實時在線監測、多點采集、集中顯示、系統布線簡單等特點,特別適用于復雜地形條件、高腐蝕性、建筑群、爆炸等場合,或者被采集對象是運動、旋轉等情況。
本項目充分利用無線數據傳輸的優勢,將溫濕度采集和無線通訊相結合,具有一定的使用價值,同時,也很容易在此系統上擴展更多功能。
內包含詳細資料和應用軟件!工程都已編譯無誤!連接圖等重要信息都有


項目實戰五
無線溫濕度多點采集系統
艾克姆科技
STC單片機項目實戰

修訂歷史記錄
RevisionRecords

日期

Date
版本

Version
編制

Written By
審核

Checked By
批準

Approved By
說明

Explanation

2017.9.20

A

康工

飛宇


初建













目錄
1. 系統概述........................................................................ 4
2. 開發需求........................................................................ 4
2.1. 軟件需求..................................................................... 4
2.2. 硬件需求..................................................................... 4
3. 系統組成結構................................................................ 4
3.1. 設備描述.................................................................... 5
3.2. 系統容量.................................................................... 5
3.3. 系統主要功能............................................................ 6
4. 通訊協議...................................................................... 6
4.1. 設備編碼................................................................... 6
4.2. 報文格式................................................................... 6
5. 實驗步驟...................................................................... 7
5.1. 程序下載................................................................... 7
5.1.1. 接收基站程序下載..................................................7
5.1.2. 檢測節點程序下載..................................................7
5.2. 設備連接................................................................... 8
5.2.1. 接收基站和計算機之間的連接.............................. 8
5.2.2. DHT11 溫濕度傳感器連接到檢測節點................... 8
6. 軟件操作..................................................................... 9
6.1. 啟動系統.................................................................. 9
6.2. 觀察檢測節點的溫濕度值和溫濕度曲線................. 9
7. 技術支持.................................................................... 10


1.  系統概述

無線溫濕度多點采集系統具有實時在線監測、多點采集、集中顯示、系統布線簡單等特 點,特別適用于復雜地形條件、高腐蝕性、建筑群、爆炸等場合,或者被采集對象是運動、 旋轉等情況。
本項目充分利用無線數據傳輸的優勢,將溫濕度采集和無線通訊相結合,具有一定的使 用價值,同時,也很容易在此系統上擴展更多功能。

               系統以 2.4GHz 為通訊網絡,可選擇使用近距離(約 200 米)或遠距離(約 1500 米)無線模 塊,配置靈活。

               系統采用計算機作為顯示設備,實時顯示各個節點采集的信息,方便統一管理。

               檢測節點和基站均采用 IAP15W4K58S4(或 IAP15W4K61S4 或 STC15W4K56S4)單片 機為控制核心。節點外接溫濕度傳感器 DHT11,每 300 毫秒采集一次溫濕度值,并通 過無線的方式發送給基站;窘邮盏焦濣c的信息后,通過串口將此信息發送給計算機, 由計算機完成溫濕度值的顯示。



2.              開發需求

2.1. 軟件需求

               Windows XP 或 Windows 7 32/64 或 WIN8 系統。
               keil uv4 for 51。
               stc-isp-15xx-v6.85P。

2.2. 硬件需求

表一:硬件需求

設備
數量
計算機
1 臺
進取者 STC 開發板
5 塊(最少 2 塊)
DHT11 溫濕度傳感器
4 個(最少 1 塊)
NRF24L01 無線模塊
最少 2 個
UBS MINI 數據線
最少 1 根
連接線材
若干


3.              系統組成結構

無線溫濕度多點采集系統由無線檢測節點(搭配 DHT11 溫濕度傳感器)、接收基站、溫 度監測工作站(計算機顯示)三部分組成。系統的結構示意圖如下:



圖 1:無線溫濕度多點采集系統結構圖


3.1. 設備描述

               溫濕度監測工作站:由計算機和顯示器組成,用于集中顯示顯示采集現場的溫濕度值, 便于統一觀察、管理。

              接收基站:接收各個檢測節點無線發送的溫濕度數據,整理后上傳給溫度監測工作站。              
              檢測節點:讀取 DHT11 溫濕度傳感器傳感器數據,處理后通過無線的方式發送給接收 基站。
              溫濕度傳感器:采用 DHT11 溫濕度傳感器,用于采集現場溫濕度數據。


3.2. 系統容量

系統基于無線通訊,采用多點對點的星型網絡通訊,單個接收基站可最大管理 255 個檢 測節點(考慮到無線傳輸距離、覆蓋范圍和通訊效率的因素,單個接收基站不建議配置太多 的檢測節點)。本系統為演示方便,單個接收基站下面配置了 4 個檢測節點,定義設備如下:

               溫濕度監測工作站:一臺計算機和一臺顯示器。
           接收基站:1 臺。
               檢測節點:4 臺,每個節點外接一個 DHT11 溫濕度傳感器。


3.3. 系統主要功能

               顯示功能:在計算機終端和圖形設備上以文字、圖形等形式顯示各個檢測節點采集的溫 濕度值。

               數據通訊功能:溫濕度監測工作站和接收基站之間通過 UART 進行數據傳輸。

               溫濕度超標預警功能:當檢測節點檢測到溫濕度值超標預警值,立即上報信息,溫濕度 監測工作站接收到此信息后進行報警提示。注:該功能暫未實現。

               故障診斷功能:在工作站的軟件界面上能實時反映檢測節點的工作狀態,自動診斷其是 否在線并能進行報警提示。



4.              通訊協議

4.1. 設備編碼
網絡中的設備需要有一個標識自身身份的地址(編碼)才能相互之間通訊,本系統中, 設備編碼如下:

               溫濕度監測工作站:地址固定為 E5(16 進制)。在本系統中,溫濕度監測工作站指的是 計算機。

               接收基站:地址為 1。
               檢測節點:地址為 1~4(10 進制,可以根據自己的需要進行修改,注意,演示軟件中可 檢測的測控基站地址是:1~4,也就是說,使用本系統進行演示,4 個檢測節點的地址 必須設置為 1~4,并且,地址不能重復)。


4.2. 報文格式



目 的 地 址 幀頭

(DA)
表二:接收基站和工作站之間銅須的報文格式
源 地 址

數據長度(IL)              流水號(SN)              數據 data              校驗(FCS) (SA)


表三:報文解釋
內容

長             度 (byte)

備注
幀頭
2
標志一個數據幀的開始,固定為 55 AA。
目的地址
1
數據包到達地址。工作站(計算機)地址固定為:E5(16 進制)。
源地址
1
數據包發出設備的地址。
數據長度
1
數據的總字節數。本演示系統中固定為 16 個字節。每個檢測節



點 4 個字節,4 個檢測節點一共 16 字節
數據
16
4 個檢測節點上報的溫濕度數值。詳見表 4。
校驗
1
異或校驗。注:該校驗位為預留字節,不進行檢驗是為了調試方便,需要使用此校驗的可以自行加上。


表四:數據

檢測節點 1數據
檢測節點 1數據
檢測節點 1數據
檢測節點 1數據
4 個字節
4 個字節
4 個字節
4 個字節
字節 1:溫度高字節
字節 2:溫度低字節字節 3:濕度高字節字節 4:濕度低字節
字節 1:溫度高字節
字節 2:溫度低字節字節 3:濕度高字節字節 4:濕度低字節
字節 1:溫度高字節
字節 2:溫度低字節字節 3:濕度高字節字節 4:濕度低字節
字節 1:溫度高字節
字節 2:溫度低字節字節 3:濕度高字節字節 4:濕度低字節

5.              實驗步驟

5.1. 程序下載

5.1.1. 接收基站程序下載

拷貝“…高級項目實戰例程 項目實戰 5-無線溫濕度多點采集系統”目錄下的接收基 站工程文件夾“Station”到合適的目錄,如 D 盤。

注:為什么要拷貝出來? 原因主要有兩點:
               拷貝出來可以隨意修改,修改錯了,可以再次拷貝而不用重新去網盤下載。
               資料中的工程目錄包含中文且目錄很深,開發軟件時,強烈建議工程文件不要包含中 文目錄,且工程路徑不要過深。

打開 Keil uVision4,點擊“Project”→“Open Project”打開“…StationProject”目錄 下的工程“Station.uvproj”。編譯工程,下載程序。

5.1.2. 檢測節點程序下載

拷貝“…高級項目實戰例程 項目實戰 5-無線溫濕度多點采集系統”目錄下的接收基 站工程文件夾“Nod”到合適的目錄,如 D 盤。
打開 Keil uVision4,點擊“Project”→“Open Project”打開“…NodProject”目錄下的 工程“nod.uvproj”。
打開“config.h”文件,配置檢測節點地址,如下圖所示,注意,在本演示系統中,檢 測節點的地址只能配置為 1~4,且不能重復,否則,檢測軟件無法顯示。

圖 2:檢測節點地址設置 地址修改好后,編譯程序并將程序下載到檢測節點。


5.2. 設備連接

5.2.1. 接收基站和計算機之間的連接

接收基站和計算機之間連接很簡單,通過一根 MINI USB 數據線連接,按下電源開關即
可。


5.2.2. DHT11 溫濕度傳感器連接到檢測節點




圖 3:DHT11 溫濕度傳感器

表五:DHT11 和基站連接

管腳
信號
和基站連接
1
VCC
5V
2
DO
P3.6
3
NC
NC
4
GND
GND



6.              軟件操作

6.1. 啟動系統

打開“…高級項目實戰例程 項目實戰 5-無線溫濕度多點采集系統”目錄下的“無線 溫濕度多點采集系統.exe”,啟動軟件。軟件啟動后界面如下:



圖 6:iM-Net 溫濕度監控系統軟件界面 打開軟件后,選擇好串口號,串口波特率設置為 9600,點擊啟動按鈕,啟動系統。



6.2. 觀察檢測節點的溫濕度值和溫濕度曲線

系統正常工作后,即可在軟件界面中觀察到各個節點的溫濕度值和溫濕度曲線,如下圖 所示?梢酝ㄟ^顯示選項選擇顯示曲線的節點,通過節點的通訊狀態指示燈可以觀察到各個 節點的通訊狀態。





圖 7:溫濕度曲線




單片機源程序如下:
  1. /****************************************Copyright (c)****************************************************
  2. **                                       
  3. **                                      [艾克姆科技]
  4. **                                        IIKMSIK
  5. **--------------File Info---------------------------------------------------------------------------------
  6. ** File name:                        
  7. ** Last modified Date:         
  8. ** Last Version:                  
  9. ** Descriptions:                                                        
  10. **--------------------------------------------------------------------------------------------------------
  11. ** Created by:                        強光手電
  12. ** Created date:                2016-09-17
  13. ** Version:                            1.0
  14. ** Descriptions:                無線溫濕度多點采集系統-基站程序                                
  15. **--------------------------------------------------------------------------------------------------------
  16. ** Modified by:                        
  17. ** Modified date:               
  18. ** Version:                                
  19. ** Descriptions:               
  20. **********************************************************************************************************/
  21. /****-----請閱讀PDF文檔  項目實戰5:無線溫濕度多點采集系統進行實驗--***********/

  22. #include "config.h"
  23. #include "nRF24L01.h"
  24. #include "uart.h"        
  25. #include "timer.h"        

  26. #define  FRAME_HEAD55    0x55
  27. #define  FRAME_HEADAA    0xAA

  28. uint8_t  RxPayload[32];   //無線接收緩存
  29. //uint8_t  TxPayload[32];   //無線發送緩存
  30. uint8_t  RepFlag;

  31. typedef struct Frame_Report
  32. {
  33.   uint8_t   len;
  34.         uint8_t   buf[FRAME_MAX_LEN];  //上報數據緩存

  35. }Frame_ReportInfo;

  36. Frame_ReportInfo FrameReportInfo = {0};

  37. uint8_t ReceBuf[4][4];//存放4個節點的數據
  38. /**************************************
  39. 功能描述:延時函數
  40. 入口參數:uint x ,該值為1時,延時1ms
  41. 返回值:無
  42. ***************************************/
  43. void delay_ms(uint16_t x)
  44. {  
  45.         uint16_t j,i;   
  46.         for(j=0;j<x;j++)   
  47.         {   
  48.                 for(i=0;i<1100;i++);   
  49.         }  
  50. }
  51. /***************************************************************************
  52. * 描  述 : 數據打包
  53. * 入  參 : 無
  54. * 返回值 : 數據長度
  55. **************************************************************************/
  56. static uint8_t ReportFrame(void)
  57. {
  58.         uint8_t i,j;
  59.         
  60.         FrameReportInfo.len = 16;                //數據長度固定為16
  61.         FrameReportInfo.buf[0] = FRAME_HEAD55;
  62.         FrameReportInfo.buf[1] = FRAME_HEADAA;  //幀頭
  63.         FrameReportInfo.buf[2] = HOST_ADDR;     //對于基站來說,主機是基站的目的地址。即0xEA
  64.         FrameReportInfo.buf[3] = LOCAL_ADDR;    //本機地址
  65.         FrameReportInfo.buf[4] = FrameReportInfo.len;

  66.   for(i=0; i<4; i++)
  67.   {
  68.                 for(j=0; j<4; j++)FrameReportInfo.buf[5+i*4+j] = ReceBuf[i][j];
  69.   }        
  70.         return FrameReportInfo.len+6;
  71. }
  72. /***************************************************************************
  73. * 描  述 : 發送數據給主機
  74. * 入  參 : 無
  75. * 返回值 : 無
  76. **************************************************************************/
  77. static void SendDatToHost(uint8_t len)
  78. {
  79.         uint8_t i;

  80.         for(i=0; i<len; i++)
  81.         {
  82.     U1SendData(FrameReportInfo.buf[i]);
  83.   }
  84.         delay_ms(5);
  85. }
  86. /***************************************************************************
  87. * 描  述 : 主函數
  88. * 入  參 : 無
  89. * 返回值 : 無
  90. **************************************************************************/
  91. int main()            //主函數
  92. {
  93.   uint8_t i,j;
  94.   uint16_t loop =0;        
  95. /////////////////////////////////////////////////
  96. //注意: STC15W4K32S4系列的芯片,上電后所有與PWM相關的IO口均為
  97. //      高阻態,需將這些口設置為準雙向口或強推挽模式方可正常使用
  98. //相關IO: P0.6/P0.7/P1.6/P1.7/P2.1/P2.2
  99. //        P2.3/P2.7/P3.7/P4.2/P4.4/P4.5
  100. /////////////////////////////////////////////////
  101.         P0M1 = 0;        P0M0 = 0;        //設置P0.0~P0.7為準雙向口
  102.         P2M1 = 0;        P2M0 = 0;        //設置P2.0~P2.7為準雙向口
  103.         P3M1 = 0;        P3M0 = 0;        //設置P3.0~P3.7為準雙向口
  104.         P4M1 = 0;        P4M0 = 0;        //設置P4.0~P4.7為準雙向口
  105.         P5M1 = 0;        P5M0 = 0;        //設置P5.0~P5.7為準雙向口
  106.         
  107.         Uart1_Init();             //初始化串口1
  108.         Timer0Init();             //初始化定時器0,用于定時發送各個節點的溫濕度值到計算機
  109.         Init_NRF24L01();                //初始化
  110.         Set_RxMode();                                            //配置nRF24L01為接收模式
  111.         EA = 1;                   //總中斷打開
  112.         
  113.   while(1)
  114.   {               
  115.                 if(NRF24L01_RxPacket(RxPayload) == RX_OK)        //如果接收成功
  116.                 {
  117.       if(RxPayload[0] == 0x5A)               
  118.       {
  119.                                 led=~led;//NRF24L01模塊狀態指示燈翻轉
  120.                                 //注意,這里進行了簡化,只支持接收4個節點的數據,而且,4個節點的地址必須是1 2 3 4
  121.                                 if((RxPayload[1]>0) && (RxPayload[1]<5))//判斷節點地址是否合法
  122.                                 {
  123.                                         for(i=0;i<4;i++)ReceBuf[RxPayload[1]-1][i] = RxPayload[2+i];        
  124.                                 }
  125.                                 RxPayload[0]  = 0;
  126.       }                        
  127. ……………………

  128. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

所有資料51hei提供下載:
項目實戰5-無線溫濕度多點采集系統.zip (5.5 MB, 下載次數: 195)



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏8 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:221117 發表于 2017-7-23 09:45 | 只看該作者
看著很高大上啊,下來看看,學習中......
回復

使用道具 舉報

板凳
ID:134271 發表于 2017-8-5 10:39 | 只看該作者
能提供上位機VB/VC源程序嗎?
回復

使用道具 舉報

地板
ID:384025 發表于 2018-11-6 10:40 | 只看該作者
很不錯的文檔!謝謝樓主!
回復

使用道具 舉報

5#
ID:137005 發表于 2018-11-22 09:09 | 只看該作者
謝謝分享!
回復

使用道具 舉報

6#
ID:357107 發表于 2018-11-22 11:24 | 只看該作者
能提供上位機VB/VC源程序嗎
回復

使用道具 舉報

7#
ID:429003 發表于 2018-11-22 12:33 | 只看該作者
樓主精神可嘉,不過這個傳感器,濕度測量完全是個雞肋,偏差有點大!
回復

使用道具 舉報

8#
ID:357107 發表于 2018-11-22 15:30 | 只看該作者
可以改成sht21   
回復

使用道具 舉報

9#
ID:417098 發表于 2019-1-4 13:46 | 只看該作者
你好  請問有電路板的圖嗎? 下載的資料包里只有一張照片,剛入門看不懂
回復

使用道具 舉報

10#
ID:612332 發表于 2019-9-16 23:11 | 只看該作者
有電路 圖嗎
回復

使用道具 舉報

11#
ID:512907 發表于 2019-9-19 22:08 | 只看該作者
好不錯的
回復

使用道具 舉報

12#
ID:601639 發表于 2020-5-11 17:50 | 只看該作者
下下來看看效果。
回復

使用道具 舉報

13#
ID:704585 發表于 2020-5-15 15:26 | 只看該作者
謝謝樓主分享
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 99精品久久 | 精品一区二区三区91 | 国产精品视频免费观看 | 国产一卡二卡三卡 | 日本精品久久 | av天天干 | www性色| 在线视频日韩 | 国产一级视频在线 | 日韩在线视频一区 | 国产一区二区精 | 国产高清精品一区二区三区 | 在线观看中文字幕视频 | 国产午夜三级一区二区三 | 亚洲精品一区在线观看 | 日韩免费在线观看视频 | 青青久在线视频 | 国产精品一区二区在线 | 伊人中文字幕 | 久草福利| 日韩毛片免费看 | 日韩视频在线观看中文字幕 | 97色在线视频 | 精品中文字幕一区二区 | 国产精品99一区二区 | 亚洲午夜在线 | 在线视频一区二区 | 免费一级网站 | 极品粉嫩国产48尤物在线播放 | 成人亚洲视频 | 国产激情三区 | 日韩中文字幕在线视频 | 精品久久久久久亚洲精品 | 欧美日韩一区精品 | 日本淫视频 | 亚洲一区不卡在线 | 亚洲综合久久久 | 91在线视频观看免费 | 91精品国产一二三 | 精品自拍视频 | 337p日本欧洲亚洲大胆精蜜臀 |