• 方案介紹
    • 1.主要功能
    • 2.仿真設(shè)計(jì)
    • 3.程序設(shè)計(jì)
    • 4.設(shè)計(jì)報(bào)告
    • 5.下載鏈接
  • 附件下載
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

基于STM32的居家環(huán)境監(jiān)測報(bào)警Proteus仿真+程序設(shè)計(jì)+設(shè)計(jì)報(bào)告+講解視頻

6小時(shí)前
255
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

設(shè)計(jì)資料獲取聯(lián)系方式.doc

共1個(gè)文件

基于STM32的居家環(huán)境監(jiān)測仿真設(shè)計(jì)

(Proteus仿真+程序設(shè)計(jì)+設(shè)計(jì)報(bào)告+講解視頻)

仿真圖Proteus 8.9

程序編譯器:keil 5

編程語言:C語言

設(shè)計(jì)編號(hào):C0110

1.主要功能

基于STM32的居家環(huán)境監(jiān)測仿真設(shè)計(jì)

基于STM32單片機(jī)的溫濕度煙霧濃度和可燃?xì)怏w濃度采集報(bào)警Proteus仿真設(shè)計(jì)系統(tǒng)。完成LCD1602液晶顯示、DHT11溫濕度測量、MQ-2煙霧傳感器、MQ-5可燃?xì)怏w傳感器、指示燈、蜂鳴器控制等多項(xiàng)任務(wù)。

1、以STM32為最小系統(tǒng)電路進(jìn)行連接,用LCD1602液晶顯示屏顯示溫度、濕度、溫度閾值,濕度閾值和煙霧濃度和煤氣濃度。

2、用DHT11溫濕度傳感器進(jìn)行溫濕度的測量,MQ-2測量煙霧濃度,MQ-5測量可燃?xì)怏w濃度

3、可以通過按鍵可以設(shè)置溫濕度閾值、煙霧和可燃?xì)怏w報(bào)警值。設(shè)置按鍵進(jìn)入設(shè)置模式/退出設(shè)置模式,按鍵加減調(diào)整閾值。

4、當(dāng)溫濕度,煙霧,或者可燃?xì)怏w超過設(shè)置的閾值時(shí)有聲光報(bào)警,對應(yīng)報(bào)警指示燈點(diǎn)亮,蜂鳴器報(bào)警。

5、默認(rèn)溫度低閾值20℃,高閾值30℃,濕度低閾值50%,濕度高閾值80%,煙霧報(bào)警值1000ppm,可燃?xì)怏w報(bào)警值1000ppm。

可燃?xì)怏w包括煤氣天然氣

proteus仿真沒有沒有MQ-2和MQ-5傳感器,使用滑動(dòng)變阻器替代輸出AD值

STM32單片機(jī) DHT11 LCD1602 按鍵 MQ-2煙霧傳感器 MQ-5可燃?xì)怏w傳感器

資料下載鏈接:

通過網(wǎng)盤分享的文件:KEY_C0110

鏈接: https://pan.baidu.com/s/1D2kup5oTWOXgO7yHGa9rJQ

提取碼: 3m6n

2.仿真設(shè)計(jì)

開始仿真后LCD1602液晶循環(huán)顯示溫濕度和煙霧可燃?xì)怏w濃度。

img

第一行顯示溫度T,濕度H,第二行顯示溫度正常范圍,濕度正常范圍。

img

第一行顯示煙霧濃度單位PPM,可燃?xì)怏w濃度,第二行顯示對應(yīng)的報(bào)警值

調(diào)整DHT11溫濕度模塊溫度為39攝氏度,高于閾值,蜂鳴器報(bào)警,溫度過高指示燈點(diǎn)亮。

img

3.程序設(shè)計(jì)

程序是用keil5 mdk版本打開的,如果打開有問題,核實(shí)下keil的版本。程序是HAL版本編寫的,有stm32cubemx配置文件。有注釋可以結(jié)合講解視頻理解。

img

img

  while (1)
  {

    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
		HAL_Delay(20);
		
	HAL_ADCEx_Calibration_Start(&hadc1);   //開啟adc前校準(zhǔn)一下ADC
	HAL_Delay(100);
 	HAL_ADC_Start_DMA(&hadc1,(uint32_t *)&ADC_Value,3);//開啟ADC的DMA,采集的數(shù)據(jù)直接放入 AD_Buf這個(gè)數(shù)組里,操作簡單。		

		gas_temp=ADC_Value[0];	//讀取ADC1的值
		gas_temp=(float)gas_temp*(1.0/4095)*10000; 
//		sprintf(adc_str,"lvalue=%drn",temp);
		sprintf(adc_str,"GAS=%4.0fppmrn",gas_temp);
		HAL_UART_Transmit(&huart1, (uint8_t *)adc_str, strlen(adc_str), 20);//串口1發(fā)送字符串,數(shù)組長度為strlen(str),超時(shí)20ms
		memset(adc_str,0,strlen(adc_str));
		
//		temp=(float)adcv*(3.3/4095);
		smoke_temp=ADC_Value[1];
		smoke_temp=(float)smoke_temp*(1.0/4095)*10000;    
		sprintf(adc_str,"SMOKE=%4.0fppmrn",smoke_temp);
		HAL_UART_Transmit(&huart1, (uint8_t *)adc_str, strlen(adc_str), 20);//串口1發(fā)送字符串,數(shù)組長度為strlen(str),超時(shí)20ms		
		memset(adc_str,0,strlen(adc_str));
//MQ-2其檢測可燃?xì)怏w與煙霧的范圍是100~10000ppm
		
	    if(DHT11_Get_TempHumi(&hum_dat, &temp_dat)){//讀取失敗
	    HAL_UART_Transmit(&huart1, (uint8_t *)&"DHT11 read failedrn", 20, 10);						//串口1發(fā)送字符串,數(shù)組長度為3,超時(shí)10ms	
	    } else{//讀取正常
  	  		sprintf(str,"TEMP=%dCrn",temp_dat);
			HAL_UART_Transmit(&huart1, (uint8_t *)str, 20, 10);//串口1發(fā)送字符串,數(shù)組長度為6,超時(shí)10ms	
			sprintf(str,"HUM=%d%%rn",hum_dat);
			HAL_UART_Transmit(&huart1, (uint8_t *)str, 20, 10);//串口1發(fā)送字符串,數(shù)組長度為6,超時(shí)10ms 
	    }	
				//液晶顯示:T溫度  H濕度,
		sprintf(data_str1,"T:%d    H:%d	       ",temp_dat,hum_dat);//轉(zhuǎn)換溫度,濕度
		sprintf(data_str3,"S:%5.0f G:%5.0f	   ",smoke_temp,gas_temp);//轉(zhuǎn)換煙霧 煤氣
		sprintf(data_str4,"WS:%d  WG:%d   ",warm_smoke_temp,warm_gas_temp);//轉(zhuǎn)換煙霧 煤氣	
		if(setnum==0)
		{
			sprintf(data_str2,"%d--%d %d--%d    ",set_temp_dat_l,set_temp_dat,set_hum_dat,set_hum_dat_h);///轉(zhuǎn)換設(shè)置溫度,設(shè)置濕度
		}
		if(setnum== 1)
		{
			sprintf(data_str2,"%d^-%d %d--%d    ",set_temp_dat_l,set_temp_dat,set_hum_dat,set_hum_dat_h);///轉(zhuǎn)換設(shè)置溫度,設(shè)置濕度
		}
		if(setnum== 2)
		{
			sprintf(data_str2,"%d--%d^ %d--%d    ",set_temp_dat_l,set_temp_dat,set_hum_dat,set_hum_dat_h);///轉(zhuǎn)換設(shè)置溫度,設(shè)置濕度			
		}
		if(setnum== 3)
		{
			sprintf(data_str2,"%d--%d %d^-%d    ",set_temp_dat_l,set_temp_dat,set_hum_dat,set_hum_dat_h);///轉(zhuǎn)換設(shè)置溫度,設(shè)置濕度			
		}
		if(setnum== 4)
		{
			sprintf(data_str2,"%d--%d %d--%d^    ",set_temp_dat_l,set_temp_dat,set_hum_dat,set_hum_dat_h);///轉(zhuǎn)換設(shè)置溫度,設(shè)置濕度	
		}
		
		if(setnum== 5)
		{
			sprintf(data_str4,"WS:%d^  WG:%d   ",warm_smoke_temp,warm_gas_temp);//轉(zhuǎn)換設(shè)置煙霧 煤氣	
		}	
		if(setnum== 6)
		{
			sprintf(data_str4,"WS:%d WG:%d^   ",warm_smoke_temp,warm_gas_temp);//轉(zhuǎn)換設(shè)置煙霧 煤氣	
		}

		if(setnum==0){//不設(shè)置的顯示
			if((disp_turn%2)==0){
				LCD_ShowString(0,0,data_str1);	//LCD1602顯示第一行
				LCD_ShowString(1,0,data_str2);	//LCD1602顯示第二行
			}else{
				LCD_ShowString(0,0,data_str3);	//LCD1602顯示第三行
				LCD_ShowString(1,0,data_str4);	//LCD1602顯示第四行
			}
		}else if(setnum<5){//設(shè)置溫濕度的顯示
			LCD_ShowString(0,0,data_str1);	//LCD1602顯示第一行
			LCD_ShowString(1,0,data_str2);	//LCD1602顯示第二行

		}else{//設(shè)置煙霧的顯示
			LCD_ShowString(0,0,data_str3);	//LCD1602顯示第三行
			LCD_ShowString(1,0,data_str4);	//LCD1602顯示第四行
		}
		
//		sprintf(data_str4,"T:%d  H:%d L:%4.0f  ",temp_dat,hum_dat,gas_temp);//
		HAL_ADC_Stop(&hadc1);											//停止ADC1	
		HAL_Delay(500);
		time_cnt++;
	   if(time_cnt==255)time_cnt=0;
	   if((time_cnt%5)==0){
		   disp_turn++;
	   }

//		LCD_ShowString(0,0,data_str1);	//LCD1602顯示第一行
//		LCD_ShowString(1,0,data_str2);	//LCD1602顯示第二行
//		memset(str,0,strlen(data_str1)); 
		



  }

程序流程圖

img

4.設(shè)計(jì)報(bào)告

13417字設(shè)計(jì)報(bào)告,內(nèi)容包括設(shè)計(jì)目標(biāo)、硬件設(shè)計(jì)、軟件設(shè)計(jì)、結(jié)論等。

img

隨著物聯(lián)網(wǎng)技術(shù)的飛速發(fā)展與智能終端的廣泛普及,環(huán)境安全監(jiān)測已成為構(gòu)建智慧城市、實(shí)現(xiàn)工業(yè)4.0轉(zhuǎn)型和保障公共安全的關(guān)鍵技術(shù)領(lǐng)域。在智能家居場景中,實(shí)時(shí)監(jiān)測廚房燃?xì)庑孤?、浴室溫濕度異??捎行ьA(yù)防火災(zāi)和人員意外;在工業(yè)生產(chǎn)環(huán)境里,對化工車間可燃?xì)怏w濃度的精準(zhǔn)把控直接關(guān)系到生產(chǎn)安全與環(huán)保合規(guī);而在公共場所如商場、學(xué)校,煙霧濃度的早期預(yù)警更是消防安全體系的核心環(huán)節(jié)。傳統(tǒng)環(huán)境監(jiān)測方案普遍存在三大技術(shù)瓶頸:其一,單參數(shù)獨(dú)立監(jiān)測模式導(dǎo)致信息孤島,無法實(shí)現(xiàn)多源數(shù)據(jù)融合分析;其二,模擬式傳感器精度受環(huán)境干擾嚴(yán)重,數(shù)據(jù)校準(zhǔn)周期短;其三,報(bào)警機(jī)制單一,缺乏人機(jī)交互界面,導(dǎo)致應(yīng)急響應(yīng)滯后。

針對上述行業(yè)痛點(diǎn),本設(shè)計(jì)提出一種基于STM32F103C6T6微控制器的多模態(tài)環(huán)境感知與智能決策系統(tǒng)。該方案創(chuàng)新性地將數(shù)字溫濕度傳感器DHT11、電化學(xué)型煙霧傳感器MQ-2及半導(dǎo)體式可燃?xì)怏w傳感器MQ-5進(jìn)行有機(jī)整合。

5.下載鏈接

0、常見使用問題及解決方法–必讀?。。。?/p>

1、程序代碼

2、Proteus仿真

3、功能要求

4、開題報(bào)告

5、設(shè)計(jì)報(bào)告

6、框圖

7、講解視頻

Altium Designer 安裝破解

KEIL+proteus 單片機(jī)仿真設(shè)計(jì)教程

KEIL安裝破解

Proteus元器件查找

Proteus安裝

Proteus簡易使用教程

單片機(jī)學(xué)習(xí)資料

相關(guān)數(shù)據(jù)手冊

答辯技巧

設(shè)計(jì)報(bào)告常用描述

鼠標(biāo)雙擊打開查找嘉盛單片機(jī)51 STM32單片機(jī)課程畢業(yè)設(shè)計(jì).url

img

資料下載鏈接:

通過網(wǎng)盤分享的文件:KEY_C0110

鏈接: https://pan.baidu.com/s/1D2kup5oTWOXgO7yHGa9rJQ

提取碼: 3m6n

  • 設(shè)計(jì)資料獲取聯(lián)系方式.doc
    下載
意法半導(dǎo)體

意法半導(dǎo)體

意法半導(dǎo)體(ST)集團(tuán)于1987年6月成立,是由意大利的SGS微電子公司和法國Thomson半導(dǎo)體公司合并而成。1998年5月,SGS-THOMSON Microelectronics將公司名稱改為意法半導(dǎo)體有限公司。意法半導(dǎo)體是世界最大的半導(dǎo)體公司之一,公司銷售收入在半導(dǎo)體工業(yè)五大高速增長市場之間分布均衡(五大市場占2007年銷售收入的百分比):通信(35%),消費(fèi)(17%),計(jì)算機(jī)(16%),汽車(16%),工業(yè)(16%)。 據(jù)最新的工業(yè)統(tǒng)計(jì)數(shù)據(jù),意法半導(dǎo)體是全球第五大半導(dǎo)體廠商,在很多市場居世界領(lǐng)先水平。例如,意法半導(dǎo)體是世界第一大專用模擬芯片和電源轉(zhuǎn)換芯片制造商,世界第一大工業(yè)半導(dǎo)體和機(jī)頂盒芯片供應(yīng)商,而且在分立器件、手機(jī)相機(jī)模塊和車用集成電路領(lǐng)域居世界前列.

意法半導(dǎo)體(ST)集團(tuán)于1987年6月成立,是由意大利的SGS微電子公司和法國Thomson半導(dǎo)體公司合并而成。1998年5月,SGS-THOMSON Microelectronics將公司名稱改為意法半導(dǎo)體有限公司。意法半導(dǎo)體是世界最大的半導(dǎo)體公司之一,公司銷售收入在半導(dǎo)體工業(yè)五大高速增長市場之間分布均衡(五大市場占2007年銷售收入的百分比):通信(35%),消費(fèi)(17%),計(jì)算機(jī)(16%),汽車(16%),工業(yè)(16%)。 據(jù)最新的工業(yè)統(tǒng)計(jì)數(shù)據(jù),意法半導(dǎo)體是全球第五大半導(dǎo)體廠商,在很多市場居世界領(lǐng)先水平。例如,意法半導(dǎo)體是世界第一大專用模擬芯片和電源轉(zhuǎn)換芯片制造商,世界第一大工業(yè)半導(dǎo)體和機(jī)頂盒芯片供應(yīng)商,而且在分立器件、手機(jī)相機(jī)模塊和車用集成電路領(lǐng)域居世界前列.收起

查看更多

相關(guān)推薦

方案定制

去合作
方案開發(fā)定制化,2000+方案商即時(shí)響應(yīng)!