国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32

這篇具有很好參考價(jià)值的文章主要介紹了嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。


0 前言

?? 這兩年開(kāi)始畢業(yè)設(shè)計(jì)和畢業(yè)答辯的要求和難度不斷提升,傳統(tǒng)的畢設(shè)題目缺少創(chuàng)新和亮點(diǎn),往往達(dá)不到畢業(yè)答辯的要求,這兩年不斷有學(xué)弟學(xué)妹告訴學(xué)長(zhǎng)自己做的項(xiàng)目系統(tǒng)達(dá)不到老師的要求。

為了大家能夠順利以及最少的精力通過(guò)畢設(shè),學(xué)長(zhǎng)分享優(yōu)質(zhì)畢業(yè)設(shè)計(jì)項(xiàng)目,今天要分享的是

?? 基于單片機(jī)的遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng)

??學(xué)長(zhǎng)這里給一個(gè)題目綜合評(píng)分(每項(xiàng)滿分5分)

  • 難度系數(shù):3分
  • 工作量:3分
  • 創(chuàng)新點(diǎn):4分

1 簡(jiǎn)介

基于STM32的紅外測(cè)溫測(cè)距實(shí)驗(yàn)箱,可實(shí)現(xiàn)紅外測(cè)溫,測(cè)距等功能。

2 主要器件

  • STM32F103RCT6芯片
  • MLX90614紅外測(cè)溫傳感器
  • TOF10120激光測(cè)距傳感器
  • ESP_WIFI模塊
  • 1.77寸TFT屏幕
  • DHT11溫濕度傳感器
  • DS18B20傳感器
  • 光敏電阻、蜂鳴器、按鍵等

3 實(shí)現(xiàn)效果

嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32,單片機(jī)
嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32,單片機(jī)

4 設(shè)計(jì)原理

4.1 MLX90614紅外測(cè)溫傳感器

MLX90614是一款紅外非接觸溫度計(jì)。TO-39金屬封裝里同時(shí)集成了紅外感應(yīng)熱電堆探測(cè)器芯片和信號(hào)處理專用集成芯片。由于集成了低噪聲放大器、17位模數(shù)轉(zhuǎn)換器和強(qiáng)大的數(shù)字信 號(hào)處理單元,使得高精度和高分辨度的溫度計(jì)得以實(shí)現(xiàn)。溫度計(jì)具備出廠校準(zhǔn)化,有數(shù)字 PWM和 SMBus(系統(tǒng)管理 總線)輸出模式。作為標(biāo)準(zhǔn),配置為 10 位的 PWM 輸出格式用于連續(xù)傳送溫 度范圍為-20…120 ?C 的物體溫度,其分辨率為 0.14 ?C。 POR 默認(rèn)模式是 SMBus 輸出格式。
實(shí)物
嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32,單片機(jī)

硬件電路圖如下:
嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32,單片機(jī)

4.2 TOF10120激光測(cè)距傳感器

簡(jiǎn)介
TOF10120激光模塊最大的優(yōu)勢(shì)在于測(cè)距遠(yuǎn)、操作簡(jiǎn)單,程序中僅僅需要通過(guò)單片機(jī)給模塊串口發(fā)送命令字符串,就可以向單片機(jī)發(fā)送回距離數(shù)據(jù)。如果發(fā)送自動(dòng)測(cè)距的字符串命令,則模塊會(huì)按照一定頻率自動(dòng)回送數(shù)據(jù),相關(guān)物理量都可以通過(guò)命令字符串設(shè)置。傳感器僅需要串口就可以實(shí)現(xiàn)。
嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32,單片機(jī)

TOF10120基于Sharp低成本標(biāo)準(zhǔn)CMOS工藝和SPAD技術(shù),可為自動(dòng)對(duì)焦(AF)提供精確、可重復(fù)的長(zhǎng)距離測(cè)量,測(cè)量結(jié)果不受物體反射的影響。主要特點(diǎn)包括:

  • 采用940nm激光;
  • 小型陶瓷封裝(20×13.2×2.0mm);
  • 可在室內(nèi)測(cè)量長(zhǎng)達(dá)1.8m長(zhǎng)度,精度5%;
  • 測(cè)量距離不受姆堡反射的影響;
  • 先進(jìn)廣促俄串?dāng)_補(bǔ)償技術(shù);
  • 30ms高速測(cè)量;
  • 單電源供電;
  • Txd接口用于設(shè)備控制和數(shù)據(jù)傳送;
  • 無(wú)鉛,符合RoHS指令。

嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32,單片機(jī)

TOF10120典型測(cè)距范圍為100-1800mm,電源電壓3-5v,消耗電流35mA,兼容Arduino、ESP8266、ESP32等5V和3.3V控制板,適合-20°C to +70°C等室內(nèi)外環(huán)境。

TOF10120支持UART、I2C通訊,1#引腳、2#引腳、3#引腳、4#引腳、5#引腳、6#引腳分別為GND、VDD、RXD、TXD、SDA、SCL。在六個(gè)引腳中,本項(xiàng)目只使用了其中的GND, VDD, SDA, and SCL四個(gè)腳。

根據(jù)數(shù)據(jù)表,TOF10120的I2C地址為0xA4,但尋址采用高7bit即0x52,這相當(dāng)于82。

4.3 DS18B20傳感器

DS18B20數(shù)字溫度計(jì)提供9位溫度讀數(shù)。信息經(jīng)過(guò)單線接口送入或送出DS18B20傳感器,因此從中央處理器到DS18B20僅需要提供電源以及一根數(shù)據(jù)線,就可以工作。

DS18B20的ROM指令表
嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32,單片機(jī)
DS18B20的RAM指令表
嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32,單片機(jī)

DS18B20單總線協(xié)議

1、DS18B20初始化
嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32,單片機(jī)

(1) 數(shù)據(jù)線拉到低電平“0”。

(2) 延時(shí)480微妙(該時(shí)間的時(shí)間范圍可以從480到960微妙)。

(3) 數(shù)據(jù)線拉到高電平“1”。

(4) 延時(shí)等待80微妙。如果初始化成功則在15到60微妙時(shí)間內(nèi)產(chǎn)生一個(gè)由DS18B20所返回的低電平“0”.根據(jù)該狀態(tài)可以來(lái)確定它的存在,但是應(yīng)注意不能無(wú)限的進(jìn)行等待,不然會(huì)使程序進(jìn)入死循環(huán),所以要進(jìn)行超時(shí)判斷。

(5) 若CPU讀到了數(shù)據(jù)線上的低電平“0”后,還要做延時(shí),其延時(shí)的時(shí)間從發(fā)出的高電平算起(第3步的時(shí)間算起)最少要480微妙。

2、讀時(shí)序
嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32,單片機(jī)

(1) 將數(shù)據(jù)線拉低“0”。

(2) 延時(shí)1微妙。

(3) 將數(shù)據(jù)線拉高“1”,釋放總線準(zhǔn)備讀數(shù)據(jù)。

(4) 延時(shí)10微妙?!?/等待數(shù)據(jù)穩(wěn)定

(5) 讀數(shù)據(jù)線的狀態(tài)得到1個(gè)狀態(tài)位,并進(jìn)行數(shù)據(jù)處理。

(6) 延時(shí)45微妙。

(7) 重復(fù)1~7步驟,直到讀完一個(gè)字節(jié)。

3、寫時(shí)序
嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32,單片機(jī)

(1) 數(shù)據(jù)線先置低電平“0”

(2) 延時(shí)15微妙。

(3) 按從低位到高位的順序發(fā)送數(shù)據(jù)(一次只發(fā)送一位)。

(4) 延時(shí)60微妙。

(5) 將數(shù)據(jù)線拉到高電平。

(6) 重復(fù)1~5步驟,直到發(fā)送完整的字節(jié)。

(7) 最后將數(shù)據(jù)線拉高。

5 部分核心代碼

/* 紅外溫度傳感器對(duì)象初始化 */
void MLXInitialization(MLXObjectType *mlx,    //MLX90614對(duì)象
                       uint8_t address,       //設(shè)備地址
                       MLXRead read,          //讀數(shù)據(jù)函數(shù)指針
                       MLXWrite write,        //寫數(shù)據(jù)函數(shù)指針
                       MLXDelayus delayus      //微秒巖石函數(shù)指針
                                                                             )
{
  if((mlx==NULL)||(read==NULL)||(write==NULL)||(delayus==NULL))
  {
    return;
  }
  mlx->Read=read;
  mlx->Write=write;
  mlx->Delayus=delayus;
             
  mlx->tempAmbient=0.0;
  mlx->tempObject1=0.0;
  mlx->tempObject2=0.0;
 
  if(address>0x00)
  {
     mlx->devAddress=address;
  }
  else
  {
     mlx->devAddress=MLXSlaveAddress;
  }
 
  mlx->Delayus(200);
 
  GetIDFromMLX90614(mlx);
 
  mlx->flags=(uint8_t)ReadFlagFromMLX(mlx);
 
  mlx->pwmctrl=ReadDataFromMLX(mlx,EEPROMAccess|PWMCTRL);
 
  mlx->ConfigRegister=ReadDataFromMLX(mlx,EEPROMAccess|ConfigRegister1);
}
/*******************************************************************************
* 函 數(shù) 名         : DS18B20_Check
* 函數(shù)功能		   : 檢測(cè)DS18B20是否存在
* 輸    入         : 無(wú)
* 輸    出         : 1:未檢測(cè)到DS18B20的存在,0:存在
*******************************************************************************/
u8 DS18B20_Check(void) 	   
{   
	u8 retry=0;
	DS18B20_IO_IN();//SET PG11 INPUT	 
	
	while (DS18B20_DQ_IN&&retry<200)
	{
		retry++;
		delay_us(1);
	};
	
	if(retry>=200)
		return 1;
	else 
		retry=0;
	
	while (!DS18B20_DQ_IN&&retry<240)
	{
		retry++;
		delay_us(1);
	};
	if(retry>=240)
		return 1;	 
	
	return 0;
}
 
/*******************************************************************************
* 函 數(shù) 名         : DS18B20_Read_Bit
* 函數(shù)功能		   : 從DS18B20讀取一個(gè)位
* 輸    入         : 無(wú)
* 輸    出         : 1/0
*******************************************************************************/
u8 DS18B20_Read_Bit(void) 			 // read one bit
{
	u8 data;
	DS18B20_IO_OUT();//SET PG11 OUTPUT
	DS18B20_DQ_OUT=0; 
	delay_us(2);
	DS18B20_DQ_OUT=1; 
	DS18B20_IO_IN();//SET PG11 INPUT
	delay_us(12);
	
	if(DS18B20_DQ_IN)
		data=1;
	else 
		data=0;	 
	
	delay_us(50);  
	
	return data;
}
 
/*******************************************************************************
* 函 數(shù) 名         : DS18B20_Read_Byte
* 函數(shù)功能		   : 從DS18B20讀取一個(gè)字節(jié)
* 輸    入         : 無(wú)
* 輸    出         : 一個(gè)字節(jié)數(shù)據(jù)
*******************************************************************************/
u8 DS18B20_Read_Byte(void)    // read one byte
{        
	u8 i,j,dat;
	dat=0;
	for (i=1;i<=8;i++) 
	{
		j=DS18B20_Read_Bit();
		dat=(j<<7)|(dat>>1);
	}						    
	return dat;
}
 
/*******************************************************************************
* 函 數(shù) 名         : DS18B20_Write_Byte
* 函數(shù)功能		   : 寫一個(gè)字節(jié)到DS18B20
* 輸    入         : dat:要寫入的字節(jié)
* 輸    出         : 無(wú)
*******************************************************************************/
void DS18B20_Write_Byte(u8 dat)     
{             
	u8 j;
	u8 testb;
	DS18B20_IO_OUT();//SET PG11 OUTPUT;
	for (j=1;j<=8;j++) 
	{
		testb=dat&0x01;
		dat=dat>>1;
		if (testb) 
		{
			DS18B20_DQ_OUT=0;// Write 1
			delay_us(2);                            
			DS18B20_DQ_OUT=1;
			delay_us(60);             
		}
		else 
		{
			DS18B20_DQ_OUT=0;// Write 0
			delay_us(60);             
			DS18B20_DQ_OUT=1;
			delay_us(2);                          
		}
	}
}




5 最后

?? 項(xiàng)目分享與指導(dǎo):https://gitee.com/sinonfin/sharing文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-828202.html

到了這里,關(guān)于嵌入式項(xiàng)目分享 單片機(jī)遠(yuǎn)程wifi紅外無(wú)接觸體溫測(cè)量系統(tǒng) - 物聯(lián)網(wǎng) stm32的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包