吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

STHS34PF80高靈敏度紅外感應器(1)----獲取人體存在狀態(tài)

嵌入式單片機MCU開發(fā) ? 來源:嵌入式單片機MCU開發(fā) ? 作者:嵌入式單片機MCU開 ? 2024-10-14 10:36 ? 次閱讀

概述

STHS34PF80是一款高性能的紅外(IR)傳感器,特別適用于檢測存在感和運動。其主要特點是高靈敏度,能在沒有透鏡的情況下探測到4米遠的物體(尺寸為70 x 25厘米),并配有集成的硅紅外濾波器。這款傳感器能夠區(qū)分靜止和移動物體,并具有80°的視場角。它出廠時已校準,且設(shè)計為低功耗,包含用于提高探測效果的智能算法
其應用范圍廣泛,不僅包括存在感和接近感應、報警/安全系統(tǒng)、智能家居、智能照明、物聯(lián)網(wǎng)、智能儲物柜和智能墻板,還特別適用于檢測人體的存在。由于其高靈敏度和精確度,它能夠有效地用于人體檢測,如在安保系統(tǒng)中探測潛在的入侵者,或在智能家居系統(tǒng)中監(jiān)測房間內(nèi)的人員動態(tài)。
最近在弄ST的課程,需要樣片的可以加群申請:615061293 。

視頻教學

[https://www.bilibili.com/video/BV1om4ae5EBR/]

樣品申請

[https://www.wjx.top/vm/OhcKxJk.aspx#]

完整代碼下載

[https://download.csdn.net/download/qq_24312945/89741150]

主要特點

高靈敏度探測: 專為探測紅外線的存在和運動設(shè)計,具有高靈敏度。
探測范圍: 能夠在沒有透鏡的情況下,探測到70 x 25厘米大小的物體,最遠達4米。
集成硅紅外濾波器: 通過濾除非紅外波長,確保精確探測。
靜態(tài)和運動物體探測: 能夠檢測到靜止和移動的物體。
視場角: 提供80°的視場角。
出廠校準: 出廠即校準,保證了即插即用的可靠性和準確性。
低功耗設(shè)計: 設(shè)計注重能效,確保低能耗。
嵌入式智能算法: 用于提升存在感和運動探測的效果。

硬件準備

首先需要準備一個開發(fā)板,這里我準備的是自己繪制的開發(fā)板,需要的可以進行申請。

主控為STM32H503CB,TMOS為STHS34PF80。

接口

STHS34PF80模塊接口的示意圖如下所示,支持IIC或者SPI通訊。

最大速率可以達到1M。

最小系統(tǒng)圖

生成STM32CUBEMX

用STM32CUBEMX生成例程,這里使用MCU為STM32H503CB。 配置時鐘樹,配置時鐘為250M。

串口配置

查看原理圖,PA9和PA10設(shè)置為開發(fā)板的串口。

配置串口,速率為2000000。

IIC配置

STHS34PF80配置IIC速度為400k

CS設(shè)置

STS34PF80IO設(shè)置如下所示。 在IIC模式下CS需要給個高電平。

官方提供IIC接線如下所示。

設(shè)置PB8為輸出口。

串口重定向

打開魔術(shù)棒,勾選MicroLIB

在main.c中,添加頭文件,若不添加會出現(xiàn) identifier "FILE" is undefined報錯。

/* USER CODE BEGIN Includes */
#include "stdio.h"
/* USER CODE END Includes */

函數(shù)聲明和串口重定向:

/* USER CODE BEGIN PFP */
int fputc(int ch, FILE *f){
    HAL_UART_Transmit(&huart1 , (uint8_t *)&ch, 1, 0xFFFF);
    return ch;
}
/* USER CODE END PFP */

參考案例

[https://github.com/STMicroelectronics/sths34pf80-pid]

獲取ID

參考例程序中對應的獲取ID驅(qū)動程序,如下所示。

獲取ID可以查看0x0F,讀出來的值應該為0xD3。

對應的獲取ID驅(qū)動程序,如下所示。

printf("HELLO!n");
  HAL_GPIO_WritePin(CS_GPIO_Port, CS_Pin, GPIO_PIN_SET);

    HAL_Delay(100);


  stmdev_ctx_t dev_ctx;
  uint8_t whoami;
  sths34pf80_lpf_bandwidth_t lpf_m, lpf_p, lpf_p_m, lpf_a_t;
  sths34pf80_drdy_status_t status;
  sths34pf80_func_status_t func_status;

  /* Initialize mems driver interface */
  dev_ctx.write_reg = platform_write;
  dev_ctx.read_reg = platform_read;
  dev_ctx.mdelay = platform_delay;
  dev_ctx.handle = &SENSOR_BUS;

  /* Initialize platform specific hardware */
//  platform_init();

  /* Wait sensor boot time */
  platform_delay(BOOT_TIME);

  /* Check device ID */
  sths34pf80_device_id_get(&dev_ctx, &whoami);
    printf("STHS34PF80_ID=0x%x,whoamI=0x%xn",STHS34PF80_ID,whoami);
  if (whoami != STHS34PF80_ID)
    while(1);

溫度測量濾波方式

首先需要設(shè)置AVG_TRIM (10h) 寄存器用于配置溫度平均值濾波的參數(shù),以控制環(huán)境溫度和目標溫度測量的平滑度和穩(wěn)定性。在溫度測量中,可能會受到噪聲和干擾的影響,這可能導致短期內(nèi)測量值的波動。通過應用平均值濾波,可以平滑這些波動,從而得到更加穩(wěn)定的溫度數(shù)據(jù)。AVG_TRIM 寄存器中的設(shè)置會決定平均值濾波的級別,從而影響濾波的時間常數(shù)以及平滑度。

這里默認參數(shù)如下

  1. 在AVG_TRIM(10h)寄存器中寫入02h // AVG_T = 8,AVG_TMOS = 32
  2. 在CTRL1(20h)寄存器中寫入07h // ODR = 15 Hz

AVG_T[1:0]: 這個設(shè)置位用于選擇環(huán)境溫度的平均值濾波樣本數(shù)。

AVG_TMOS[2:0]: 這個設(shè)置位用于選擇目標溫度的平均值濾波樣本數(shù)以及與之相關(guān)的噪聲水平。

對象溫度的平均值數(shù)量 (sths34pf80_avg_tobject_num_set 函數(shù)): 這個函數(shù)設(shè)置用于測量對象溫度的平均值數(shù)量。參數(shù) val 可以是多種不同的值,例如 AVG_TMOS_2, AVG_TMOS_8, AVG_TMOS_32, 等等,表示不同的平均值數(shù)量。這些設(shè)置影響傳感器輸出的平滑程度和響應速度,高的平均值數(shù)量會增加輸出數(shù)據(jù)的平滑度,但也可能增加響應時間。

環(huán)境溫度的平均值數(shù)量 (sths34pf80_avg_tambient_num_set 函數(shù)): 類似地,這個函數(shù)設(shè)置環(huán)境溫度測量的平均值數(shù)量。參數(shù) val 可以是 AVG_T_8, AVG_T_4, AVG_T_2, AVG_T_1 等,用于設(shè)置不同的平均值數(shù)量。這也會影響傳感器輸出的平滑程度和響應速度。

在你提供的代碼段中,使用了 STHS34PF80_AVG_TMOS_32 和 STHS34PF80_AVG_T_8 作為參數(shù),分別用于設(shè)置對象溫度和環(huán)境溫度的平均值數(shù)量。這意味著傳感器會對對象溫度使用32個數(shù)據(jù)點的平均值,對環(huán)境溫度使用8個數(shù)據(jù)點的平均值。這樣的設(shè)置有助于在傳感器的測量中實現(xiàn)一定程度的數(shù)據(jù)平滑和過濾噪聲,同時保持適當?shù)捻憫俣取?/p>

/* Set averages (AVG_TAMB = 8, AVG_TMOS = 32) */
  sths34pf80_avg_tobject_num_set(&dev_ctx, STHS34PF80_AVG_TMOS_32);
  sths34pf80_avg_tambient_num_set(&dev_ctx, STHS34PF80_AVG_T_8);

智能識別算法

STHS34PF80嵌入了智能數(shù)字算法,以支持以下三種檢測模式:
? 存在檢測
? 運動檢測
? 環(huán)境溫度沖擊檢測
這些算法分別使用不同的低通濾波器(LPF_P、LPF_M和LPF_A_T)。此外,存在和運動檢測算法使用另一個共同的低通濾波器(LPF_P_M)。這些濾波器用于生成中間信號(TPRESENCE、TMOTION和TAMB_SHOCK),可以用于對算法本身進行微調(diào)。這些濾波器的截止頻率值可以通過它們各自的位范圍進行配置,這些位范圍可以在LPF1(0Ch)和LPF2(0Dh)寄存器中找到,如下所示。

寄存器LPF1 (0Ch)和LPF2 (0Dh)如下所示。

案例中只是對濾波器進行了讀取以及打印。

/* read filters */
  sths34pf80_lpf_m_bandwidth_get(&dev_ctx, &lpf_m);
  sths34pf80_lpf_p_bandwidth_get(&dev_ctx, &lpf_p);
  sths34pf80_lpf_p_m_bandwidth_get(&dev_ctx, &lpf_p_m);
  sths34pf80_lpf_a_t_bandwidth_get(&dev_ctx, &lpf_a_t);

  printf("lpf_m: %02d, lpf_p: %02d, lpf_p_m: %02d, lpf_a_t: %02drn", lpf_m, lpf_p, lpf_p_m, lpf_a_t);

使用塊數(shù)據(jù)更新(BDU)功能

在很多傳感器中,數(shù)據(jù)通常被存儲在輸出寄存器中,這些寄存器分為兩部分:MSB和LSB。這兩部分共同表示一個完整的數(shù)據(jù)值。例如,在一個加速度計中,MSB和LSB可能共同表示一個加速度的測量值。
連續(xù)更新模式(BDU = ‘0’):在默認模式下,輸出寄存器的值會持續(xù)不斷地被更新。這意味著在你讀取MSB和LSB的時候,寄存器中的數(shù)據(jù)可能會因為新的測量數(shù)據(jù)而更新。這可能導致一個問題:當你讀取MSB時,如果寄存器更新了,接下來讀取的LSB可能就是新的測量值的一部分,而不是與MSB相對應的值。這樣,你得到的就是一個“拼湊”的數(shù)據(jù),它可能無法準確代表任何實際的測量時刻。
塊數(shù)據(jù)更新(BDU)模式(BDU = ‘1’):當激活BDU功能時,輸出寄存器中的內(nèi)容不會在讀取MSB和LSB之間更新。這就意味著一旦開始讀取數(shù)據(jù)(無論是先讀MSB還是LSB),寄存器中的那一組數(shù)據(jù)就被“鎖定”,直到兩部分都被讀取完畢。這樣可以確保你讀取的MSB和LSB是同一測量時刻的數(shù)據(jù),避免了讀取到代表不同采樣時刻的數(shù)據(jù)。
簡而言之,BDU位的作用是確保在讀取數(shù)據(jù)時,輸出寄存器的內(nèi)容保持穩(wěn)定,從而避免讀取到拼湊或錯誤的數(shù)據(jù)。這對于需要高精度和穩(wěn)定性的應用尤為重要。

案例也是設(shè)置了BDU。 BDU在CTRL1 (20h)寄存器中。

/* Set BDU */
  sths34pf80_block_data_update_set(&dev_ctx, 1);

設(shè)置ODR速率

初始化完畢之后需要通過CTRL1(20h)寄存器中的ODR[3:0]位范圍選擇其中一種操作模式(連續(xù)模式),或者在CTRL2(21h)寄存器中將ONE_SHOT位設(shè)置為1(單次觸發(fā)模式)。

當配置了寄存器LPF1 (0Ch)和LPF2 (0Dh) 的LPF_P、LPF_M和LPF_A_T、LPF_P_M濾波器之后,可以去設(shè)置ODR速率。

這里設(shè)置速率為8Hz。

/* Set ODR */
  sths34pf80_odr_set(&dev_ctx, STHS34PF80_ODR_AT_30Hz);

獲取狀態(tài)

STATUS (地址為0x23U) 用于表示傳感器的狀態(tài)。
drdy(1位):這個位用于指示數(shù)據(jù)就緒(Data Ready)狀態(tài)。當傳感器有新的數(shù)據(jù)可供讀取時,這個位會被設(shè)置。

FUNC_STATUS(25h)主要檢測三個標志位:PRES_FLAG、MOT_FLAG 和 TAMB_SHOCK_FLAG,這些標志位用于檢測不同類型的事件。
PRES_FLAG是存在檢測標志位。當存在檢測到人員存在時,此位變?yōu)?。
MOT_FLAG:運動檢測標志位。當檢測到運動時,此位變?yōu)?。
TAMB_SHOCK_FLAG:環(huán)境溫度沖擊檢測標志位。當檢測到環(huán)境溫度沖擊時,此位變?yōu)?。

/* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
  sths34pf80_drdy_status_t status;
  sths34pf80_func_status_t func_status;

  sths34pf80_drdy_status_get(&dev_ctx, &status);
  if (status.drdy)
  {
    sths34pf80_func_status_get(&dev_ctx, &func_status);

    printf("TAmbient Shock: %d - Presence: %d - Motion: %drn",func_status.tamb_shock_flag, func_status.pres_flag, func_status.mot_flag);
 }        

    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 */

測試結(jié)果

在未有人的情況下。

在人體純在情況下。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 傳感器
    +關(guān)注

    關(guān)注

    2553

    文章

    51407

    瀏覽量

    756633
  • 智能算法
    +關(guān)注

    關(guān)注

    0

    文章

    78

    瀏覽量

    11964
  • 紅外感應器
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

    8419
收藏 人收藏

    評論

    相關(guān)推薦

    矽典微新品XenD101H人體生命存在感應參考設(shè)計

    靜止人體生命存在毫米波傳感采用FMCW調(diào)頻連續(xù)波技術(shù),對空間內(nèi)的靜止、微動、運動的人體目標進行探測,通過精確的生命存在
    的頭像 發(fā)表于 12-30 15:29 ?145次閱讀
    矽典微新品XenD101H<b class='flag-5'>人體</b>生命<b class='flag-5'>存在</b><b class='flag-5'>感應</b>參考設(shè)計

    紅外感應在智能照明中的具體應用

    一款國產(chǎn)A/D型具有增強型1T8051內(nèi)核8位高性能Flash的接近感應單片機XD08M3232,因其性能優(yōu)越而受到用戶的青睞。在智能照明系統(tǒng)中,XD08M3232紅外感應單片機可以發(fā)揮重要作用
    發(fā)表于 12-12 18:21

    基于BCDMOS技術(shù)設(shè)計的高靈敏度雙極霍爾開關(guān)芯片-AH501

    霍爾傳感 - AH501是一款基于BCDMOS技術(shù)設(shè)計的高靈敏度雙極霍爾開關(guān)芯片。芯片包括溫度補償、比較和輸出驅(qū)動。此外,機械應力對芯片的磁性參數(shù)影響很小。
    的頭像 發(fā)表于 11-13 09:49 ?304次閱讀
    基于BCDMOS技術(shù)設(shè)計的<b class='flag-5'>高靈敏度</b>雙極霍爾開關(guān)芯片-AH501

    STHS34PF80高靈敏度紅外感應器(2)----InfraredPD存在感應檢測

    InfraredPD 主要作用是通過與 STHS34PF80 紅外傳感器配合,提供對存在感應和運動檢測的支持,同時對傳感
    的頭像 發(fā)表于 10-14 11:10 ?1166次閱讀
    <b class='flag-5'>STHS34PF80</b><b class='flag-5'>高靈敏度</b><b class='flag-5'>紅外感應器</b>(2)----InfraredPD<b class='flag-5'>存在</b><b class='flag-5'>感應</b>檢測

    電容感應器感應對高度的靈敏度有影響嗎

    之間存在電場時,它們之間就形成了一個電容。當導體之間的距離、形狀或介質(zhì)發(fā)生變化時,電容的數(shù)值也會隨之改變。電容感應器正是利用這一原理來檢測物體的位置和特性。 電容感應器對高度的靈敏度
    的頭像 發(fā)表于 10-14 11:09 ?402次閱讀

    電容感應器和電感感應器區(qū)別

    電容感應器和電感感應器是兩種不同類型的傳感,它們在許多應用中扮演著重要的角色,如自動化、工業(yè)控制、機器人技術(shù)等。 1. 定義 電容感應器
    的頭像 發(fā)表于 10-14 11:04 ?770次閱讀

    OPT4060高速高靈敏度RGBW顏色傳感數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《OPT4060高速高靈敏度RGBW顏色傳感數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 08-09 10:23 ?1次下載
    OPT4060高速<b class='flag-5'>高靈敏度</b>RGBW顏色傳感<b class='flag-5'>器</b>數(shù)據(jù)表

    可以檢測人體存在和移動的紅外傳感器來了

    MEMS熱絕緣柵,通過意法半導體先進的MEMS技術(shù)實現(xiàn)。本次M5Stack推出的TMOSPIRUNIT紅外傳感器采用STHS34PF80方案,可以通過感應物體的紅
    的頭像 發(fā)表于 07-27 08:31 ?1155次閱讀
    可以檢測<b class='flag-5'>人體</b><b class='flag-5'>存在</b>和移動的<b class='flag-5'>紅外傳感器</b>來了

    MCU紅外感應器模塊可適用于物體探測應用

    紅外感應器
    WT-深圳唯創(chuàng)知音電子有限公司
    發(fā)布于 :2024年07月02日 16:07:09

    測量過程中如何調(diào)節(jié)檢流計的靈敏度

    檢流計是一種高靈敏度的電流測量儀器,常用于測量微小電流。在測量過程中,根據(jù)需要調(diào)節(jié)檢流計的靈敏度是確保測量準確性的重要步驟。
    的頭像 發(fā)表于 05-11 18:26 ?4517次閱讀

    覓感人體存在雷達感應器系列方案

    科技作為行業(yè)領(lǐng)先的雷達傳感解決方案廠家,通過深入的市場調(diào)研和產(chǎn)品研究,正式推出人體存在雷達感應器系列方案。人體存在雷達
    的頭像 發(fā)表于 04-30 08:16 ?878次閱讀
    覓感<b class='flag-5'>人體</b><b class='flag-5'>存在</b>雷達<b class='flag-5'>感應器</b>系列方案

    具有高靈敏度熱致變色和逐級可調(diào)熒光的可編程動態(tài)信息存儲薄膜

    已知CLC的折射率和螺距受溫度影響,通過改變溫度可以調(diào)節(jié)CLC折射率和螺距,從而影響CLC的SBR波長和顏色。先前報道的熱致變色CLC靈敏度較低,在實際應用中還存在很大的提升空間。本篇工作為了制備高靈敏度CLC進行了一系列探索。
    的頭像 發(fā)表于 04-29 17:43 ?1243次閱讀
    具有<b class='flag-5'>高靈敏度</b>熱致變色和逐級可調(diào)熒光的可編程動態(tài)信息存儲薄膜

    PIR熱釋電紅外人體傳感優(yōu)點主要有這些

    熱釋電紅外傳感器是一種廣泛應用于人體感應和監(jiān)測領(lǐng)域的傳感技術(shù)。它采用紅外傳感技術(shù),能夠檢測和測量物體的
    的頭像 發(fā)表于 04-29 08:28 ?1837次閱讀
    PIR熱釋電<b class='flag-5'>紅外人體</b>傳感<b class='flag-5'>器</b>優(yōu)點主要有這些

    通過STEVAL-MKI109V3在unico上識別不到STHS34PF80是為什么?怎么處理?

    TMOS測試:通過STEVAL-MKI109V3在unico上識別不到STHS34PF80
    發(fā)表于 03-26 08:31

    構(gòu)建一個高靈敏度的聲控LED燈電路

    只需幾個晶體管和電阻即可構(gòu)建高靈敏度的聲激活LED燈電路。
    的頭像 發(fā)表于 02-25 14:16 ?1647次閱讀
    構(gòu)建一個<b class='flag-5'>高靈敏度</b>的聲控LED燈電路
    百家乐筹码价格| 做生意门朝向什么方向| 属马做生意坐向| 百家乐赌博现金网平台排名| 大发888八大胜博彩| 百家乐官网千术道具| 圣安娜百家乐官网包杀合作| 奔驰百家乐可信吗| 24山向吉凶详解视频| 威尼斯人娱乐城导航网| 洪雅县| 百家乐官网有公式| 澳门百家乐新濠天地| 金盛娱乐| 香港百家乐官网赌城| 百家乐娱乐网代理佣金| 博彩导航| 大玩家百家乐官网的玩法技巧和规则| 狮威百家乐娱乐场| zaixian百家乐| 澳门百家乐官网门路| 百家乐官网群bet20| 北京太阳城小区| 百家乐官网优博娱乐城| 网上赌百家乐被抓应该怎么处理| 龙虎斗| 网络百家乐官网游赌博| 澳门百家乐然后赢| 百家乐官网庄闲必赢| 新朝代百家乐开户网站| 武胜县| 百家乐官网西园二手房| 百家乐娱乐备用网址| bet365投注| 老牌百家乐娱乐城| 环澳娱乐| 杨公24山日课应验诀| 蜀都棋牌游戏| 金海岸百家乐官网的玩法技巧和规则 | 万博娱乐| 百家乐官网牌壳|