跳到主要内容

非接触式红外测温(近距离/远距离)

一、本例程实现功能

通过SB-S34(近距离)或SB-S35(远距离)红外测温模块(IIc通讯接口)实现非接触式测量物体温度、人体温度、以及环境温度。

二、 传感器介绍

(1)SB-S34(近距离)

product3

参数如下:

product1

(2)SB-S35(远距离)

product4

参数如下:

product2

三、接线图

layout

四、材料清单

名称推荐购买链接(或者您可以自己制作)模块/芯片硬件资料下载
SB-S34(近距离)或SB-S35(远距离)官方微信联系:ShineBlink666
声明:这里推荐的购买链接仅供参考,您完全可以去其他商家或渠道购买,只要功能相似即可,如果需要更低的成本建议自己开发硬件模块或定制。

五、完整代码

--配置USB以虚拟串口模式工作,这样调用print()函数就会在电脑串口终端打印输出
LIB_UsbConfig("CDC")
--设红外测温传感器占用SCL0和SDA0引脚,并启动传感器以每秒输出5组数据的频率工作
LIB_IfrTempConfig("IIC0")
--进入大循环
while(GC(1) == true)
do
--查询传感器是否出数,大概每0.2秒会自动输出一次温度数据
flag,AmbTemp,Vol,ObjTemp,BodyTemp = LIB_IfrTempGetResult()
if flag == 1 then
--打印环境温度,传感器输出电压,物体温度,人体温度
print(string.format("Amb:%f,Vol:%f,Obj:%f,Body:%f", AmbTemp,Vol,ObjTemp,BodyTemp))
end
end

如果感兴趣,上面代码中出现的LIB开头的库函数可以在 API文档 中通过Ctrl+F查询。

六、代码运行结果

电脑串口调试终端上显示的环境温度,传感器电压,物体温度,人体温度内容如下图:

result