D6T-1A-02的概述以及D6T-1A-02用OSS-ECAL的提供情况。D6T-1A-02是OMRON公司生产的 EMS非接触式温度传感器集成电路(-40°C至+80°C)。
MCU interface : I2C
注意: 本资源的原始语言为英语。 翻译仅为方便起见提供概要,可能使用了机器翻译,我们对翻译的准确性和合理性不作任何保证。 此外,在进行实际设计等操作前,请务必参考最新版本的Datasheet。
CAT24C512
概述
MEMS非接触式温度传感器用于测量被测物体的表面温度。D6T-44L-06 配备4×4的16个通道,D6T-8L-09 配备1列8个通道,D6T-1A-01/-02 配备1个通道, D6T-32L-06 搭载了纵横32×32、共1024通道的传感器芯片。通过在传感器芯片旁设置专用后端处理电路的优化设计,实现了低噪声温度测量。
我公司的MEMS非接触式温度传感器作为人体感应传感器使用时,可以解决传统焦电传感器在人体检测方面的不足。焦电传感器基于检测红外线变化成分的原理,虽然能够检测到人体的运动,但在静止时会失去测量信号。相比之下,非接触式温度传感器即使在静止时也不会失去测量信号。
MEMS非接触式温度传感器通过光学设计的硅透镜,具备预设的灵敏度特性。我司的非接触式温度传感器与普通传感器相同,将最大灵敏度的50%对应的视场角(FOV)作为视场范围进行标注。
具有感度的区域比FOV规格宽度更广。此外,当测量对象的尺寸小于具有感度的区域时,背景温度的影响将包含在测量结果中。
我公司的非接触式温度传感器采用标准热源(黑体炉)对温度测量值进行校正,但需注意以下几点:测量对象材料的发射率差异、表面形状以及敏感区域的占用率等因素均可能对测量结果产生影响。
随着距离的增加,观测的视场(FOV)会逐渐扩大。在FOV内,目标物体(人物)所占的面积比例会随着距离的增加而逐渐减小。因此,随着距离的增加,测量值中所占的比例(影响度)会逐渐由目标物体(人物)的温度转向背景温度。换句话说,为了正确测量温度,目标物体必须足够大,以确保其面积大于FOV的面积。
当MEMS非接触式温度传感器作为人体感应传感器使用时,仅凭温度值进行简单判断会使应用范围局限于近距离场景。为了延长检测距离,需要基于时间变化、热源位置、人体行为信息等数据,通过软件处理来提升判断精度。
用途
- 人体检测
- 食品检测
- 异常发热检测
OSS-ECAL规格
API 函数
OSS-ECAL API 函数基本上被假定为周期性Thread (TASK) 的函数调用。
etSTS oD6T_1A02_READ_TEMP( stD6T_1A02_O* rlt )
oD6T_1A02_READ_TEMP 函数是一个 API 函数,用于读取参考温度数据 PTAT 和像素温度数据 P0,并将其转换为温度值。
– Step1 Send Command 0x4C (Read Temperature)
– Step2 Check frame validity: CRC
– Step3 Temperature conversion of reference temperature data PTAT (Min=-40.0°C, Max=+80.0°C)
– Step4 Temperature conversion of pixel temperature data P0 (Min=-40.0°C, Max=+80.0°C)
返回值 | etSTS | OSS-ECAL status code | |
eSTS_FIN | 成功完成 | ||
eSTS_ERR_MIN | 最低温度error(当rlt.pn[0]或rlt.ptat为最低温度时) | ||
eSTS_ERR_MAX | 最高温度error(当rlt.pn[0]或rlt.ptat为最高温度时) | ||
eSTS_ERR_DIAG | PEC CRC error | ||
eSTS_ERR_I2C_OBJECT | I2C 对象选择错误 | ||
eSTS_ERR_HAL_OTHERS_RUN | 其他应用程序正在运行 HAL | ||
eSTS_ERR_HAL_I2C | HAL I2C 错误 | ||
参数 OUT | stD6T_1A02_O* rlt | 来自D6T-1A-02的接收数据 | |
float32 pn[0] | 像素温度数据P0的温度转换值 [°C] | ||
float32 ptat | 参考温度数据PTAT的温度转换值 [°C] |
HAL 支持列表
OSS-ECAL 的 HAL 支持如下。 请注意,即使使用相同的 HAL,不同的版本、MCU 和开发环境也可能无法协同工作。 该列表正在按顺序扩展。
Manufacturer | SDK/IDE Tool | HAL Name | Ver | HALNAME | Support |
---|---|---|---|---|---|
Arduino | Arduino IDE | Arduino | 1.8.6 | ARDUINO | – |
Arm | Keil MDK v6 | Mbed OS | 6.17.0 | MBED | – |
Debian | – | GNU/Linux | 10.3 | Linux | X |
Infineon | ModusToolbox | mtb-hal-cat1 | 2.4.3 | ModusToolbox | X |
NXP | MCUXpresso SDK | SDK_2.x_EVKB-IMXRT1050 | 2.16 | iMXRT1051B1052B | X |
Renesas | Synergy Software Package | HAL | 2.6.0 | SSP | X |
STMicroelectronics | STM32Cube | STM32CubeF4 | V1.28.1 | STM32F4 | X |
开发环境
OSS-ECAL 开发过程中的 MCU 和开发环境如下。
HALNAME | Manufacturer | Board | MCU | IDE |
---|---|---|---|---|
ARDUINO | Arduino | 1.Mega 2560 Rev3 2.Arduino Pro Mini 3.3V | ATmega2560 ATmega328P | Arduino IDE 2.3.3 |
MBED | STMicroelectronics | STM32 Nucleo-64 boards | STM32F401RETx | Arm Keil Studio Cloud |
Linux | BeagleBoard | BeagleBone Black | TI AM335x | – |
ModusToolbox | Infineon | CY8CPROTO-063-BLE PSoC 6 BLE Prototyping Kit | CYBLE-416045-02 | ModusToolbox |
iMXRT1051B1052B | NXP | IMXRT1050-EVKB | i.MX RT1050 | MCUXpresso IDE |
SSP | Renesas | S7G2 SK | R7FS7G27H3A01CFC | e² studio for Renesas Synergy |
STM32F4 | STMicroelectronics | STM32 Nucleo-64 boards | STM32F401RETx | STM32CubeIDE |
文件结构
Folder* | File | Summary |
---|---|---|
D6T_1A02_HALNAME_010000/sample | sample.c (.cpp) | Sample application program |
sample.h | Sample application header | |
D6T_1A02_HALNAME_010000 | oD6T_1A02.c (.cpp) | OSS-ECAL program for D6T-1A-02 |
oD6T_1A02.h | OSS-ECAL header for D6T-1A-02 | |
oss_ecal.h | OSS-ECAL common header | |
D6T_1A02_ARDUINO.ino | Sample application programs for Arduino | |
user_setting.c (.cpp) | User configured constants and tables | |
user_setting.h | User configuration Header | |
readme.md | Readme | |
OSS-ECAL Terms of Use.txt | OSS-ECAL Terms of Use |
* 有关 HALNAME,请参阅 HAL 支持。
OSS-ECAL 下载
请从 OSS-ECAL 英文网站下载 OSS-ECAL。下载时,请先登录 OSS-ECAL 英文网站,然后再进行操作。
内置方法
如何在用户程序中整合多个 OSS-ECAL(相同的 MCU 功能)
如何在用户程序中整合多个 OSS-ECAL(不同 MCU 功能)
注意
OSS-ECAL 示例版本不适用于线程(任务)或不同优先级的中断。 请不要像下面的示例那样使用它。
例如 如果每个传感器被分配到相同的 ADC 组,而 OSS-ECAL API 在具有不同优先级的进程中执行,则可能无法获得正确的值。
ADC Gr0 Ch0 Temperature sensor AD22100A 每隔 100 毫秒采集一次温度(低优先级)
ADC Gr0 Ch1 Pressure sensor MPX5999D 事件中断时采集压力(高优先级)