Grove - 红外温度传感器阵列(AMG8833)

Grove - 红外温度传感器阵列 (AMG8833) 是一款基于先进MEMS技术的高精度红外阵列传感器。它可以支持二维区域的温度检测:8 × 8 (64像素),最大检测距离为7米。
我们为这个传感器提供了Arduino和树莓派的演示程序。它将是制作您自己的热成像相机的完美模块。
特性
- 二维区域温度检测:8 × 8 (64像素)
- I2C输出(支持温度值输出)
- 高精度
- 长检测距离
规格参数
项目 | 数值 |
---|---|
工作电压 | 3.3V / 5V |
测量对象温度范围 | 0 °C 到 80 °C +32 °F 到 +176 °F |
工作温度范围 | 0 °C 到 80 °C +32 °F 到 +176 °F |
存储温度范围 | −20 °C 到 80 °C –4 °F 到 +176 °F |
温度精度 | 典型值 ±2.5 °C ±4.5 °F |
视角 | 典型值 60 ° |
光轴间隙 | 典型值 ±5.6 ° 以内 |
像素数量 | 64 (垂直 8 × 水平 8 矩阵) |
外部接口 | I2C |
I2C地址 | 0x68(默认) \ 0x69(可选) |
典型应用
- 高功能家用电器(微波炉和空调)
- 办公室节能(空调/照明控制)
- 数字标牌
- 自动门/电梯
硬件概述
引脚定义


原理图
电源

AMG8833的典型电压为3.3V,因此我们使用XC6206P33芯片来提供稳定的3.3V。XC6206P33的输入范围为1.8V到6.0V,因此您可以在3.3V和5V下与Arduino一起使用此模块。
双向电平转换电路

这是一个典型的双向电平转换电路,用于连接I2C总线的两个不同电压部分。该传感器的I2C总线使用3.3V,如果Arduino的I2C总线使用5V,则需要此电路。在上面的原理图中,Q6和Q5是N沟道MOSFET 2N7002A,充当双向开关。为了更好地理解这部分,您可以参考AN10441
支持的平台
Arduino | Raspberry Pi | |||
---|---|---|---|---|
![]() | ![]() | ![]() | ![]() | ![]() |
上面提到的支持平台是该模块软件或理论兼容性的指示。在大多数情况下,我们只为Arduino平台提供软件库或代码示例。不可能为所有可能的MCU平台提供软件库/演示代码。因此,用户必须编写自己的软件库。
入门指南
与Arduino一起使用
硬件
所需材料
Seeeduino V4.2 | Base Shield | 红外温度传感器阵列 | 2.8 TFT触摸屏扩展板V2.0 |
---|---|---|---|
![]() | ![]() | ![]() | ![]() |
立即购买 | 立即购买 | 立即购买 | 立即购买 |
-
步骤1. 将Grove - 红外温度传感器阵列(AMG8833)连接到Grove-Base Shield的I2C端口。
-
步骤2. 将Grove - Base Shield插入Seeeduino。
-
步骤3. 将2.8 TFT触摸屏扩展板V2.0插入Grove - Base Shield。
-
步骤4. 通过USB线将Seeeduino连接到PC。

如果我们没有Grove Base Shield,我们也可以直接将此模块连接到Seeeduino,如下所示。
Seeeduino | Grove线缆 | Grove - 红外温度传感器阵列(AMG8833) |
---|---|---|
GND | 黑色 | GND |
5V或3.3V | 红色 | VCC |
SDA | 白色 | SDA |
SCL | 黄色 | SCL |
软件
如果这是您第一次使用Arduino,我们强烈建议您在开始之前先查看Arduino入门指南。
-
步骤1. 从Github下载Seeed_AMG8833库。
-
步骤2. 参考如何安装库为Arduino安装库。
-
步骤3. 重启Arduino IDE。打开示例,您可以通过以下三种方式打开:
- 在Arduino IDE中通过路径直接打开:文件 --> 示例 --> Grove IR Matrix Temperature sensor AMG8833 --> TFT_screen_demo。
- 在您的计算机中点击TFT_screen_demo.ino打开,您可以在文件夹XXXXArduino\libraries\Seeed_AMG8833-master\examples\TFT_screen_demo中找到它,XXXX是您安装Arduino IDE的位置。
- 或者,您可以直接点击代码块右上角的图标
将以下代码复制到 Arduino IDE 的新草图中。
#include <stdint.h>
#include <TFTv2.h>
#include <SPI.h>
#include "Seeed_AMG8833_driver.h"
AMG8833 sensor;
#define TFT_PIXELS_NUM 30
void parse_int_status(u8* status)
{
u8 val=0;
for(u32 i=0;i<8;i++)
{
if(status[i])
{
for(u32 j=0;j<8;j++)
{
if(status[i]&((1<<j)))
{
Serial.print("pixel ");
Serial.print(8*i+j+1);
Serial.println("interrupt is generated!!!");
}
}
}
}
}
void print_status(u8* status)
{
for(u32 i=0;i<8;i++)
{
Serial.print(status[i],HEX);
Serial.print(" ");
}
Serial.println(" ");
}
void setup()
{
Serial.begin(115200);
sensor.init();
TFT_BL_ON;
/*2.8 TFT screen. url:https://www.seeedstudio.com/2.8-TFT-Touch-Shield-V2.0-p-1286.html*/
Tft.TFTinit();
}
void loop()
{
u8 val=0;
float pixels_temp[PIXEL_NUM]={0};
u16 color[PIXEL_NUM]={0};
/*Read temperature*/
sensor.read_pixel_temperature(pixels_temp);
/*Different temperature correspond to different color.*/
for(u32 i=0;i<PIXEL_NUM;i++)
{
if(pixels_temp[i]<29)
{
color[i]=BLUE;
}
else if((pixels_temp[i]>=29)&&(pixels_temp[i]<30))
{
color[i]=GREEN;
}
else if((pixels_temp[i]>=30)&&(pixels_temp[i]<31))
{
color[i]=YELLOW;
}
else if((pixels_temp[i]>=31)&&(pixels_temp[i]<33))
{
color[i]=0xfd00;
}
else
{
color[i]=RED;
}
}
/*Use a TFT screen to display.*/
for(u32 i=0;i<PIXEL_NUM;i++)
{
Tft.fillScreen(TFT_PIXELS_NUM*(i%8),TFT_PIXELS_NUM*(i%8+1),TFT_PIXELS_NUM*(8-i/8),TFT_PIXELS_NUM*(7-i/8),color[i]);
}
}
库文件可能会更新。此代码可能不适用于更新后的库文件,因此我们建议您使用前两种方法。
- 步骤 4. 上传演示程序。如果您不知道如何上传代码,请查看如何上传代码。
如果一切顺利,您将看到 TFT 屏幕显示温度图。

与 Raspberry Pi 配合使用
如果这是您第一次使用树莓派,请参考树莓派入门指南。
硬件
所需材料
Raspberry Pi | Grove Base Hat for Raspberry Pi | 红外温度传感器阵列 | 5 英寸 800x480 电容触摸屏 |
---|---|---|---|
![]() | ![]() | ![]() | ![]() |
立即购买 | 立即购买 | 立即购买 | 立即购买 |
如果您没有 Pi 屏幕,可以使用 PC 显示器,或者可以使用 VNC Viewer 远程显示结果。
-
步骤 1. 将 Grove - 红外温度传感器阵列 (AMG8833) 连接到 Grove Base Hat for Raspberry Pi 的 I2C 端口。
-
步骤 2. 将 Grove Base Hat for Raspberry Pi 插入 Raspberry Pi。
-
步骤 3. 通过 HDMI 线缆将 5 英寸 800x480 电容触摸屏与 Raspberry Pi 连接。
-
步骤 4. 通过 micro-USB 线缆将 Raspberry Pi 连接到 PC,通过另一根 micro-USB 线缆为 5 英寸 800x480 电容触摸屏供电。

软件
- 步骤 1. 为您的树莓派打开 I2C 接口。您可以打开终端并输入以下命令。
sudo raspi-config

- 步骤 2. 当您看到上图时,选择 Interfacing Options,然后选择 I2C 来启用 I2C 接口。

- 步骤 3. 完成后,您可以使用以下命令进行检查。
sudo i2cdetect -y 1

您可以看到 I2C 地址,这意味着树莓派已经检测到传感器。如果没有,请重新执行步骤 1~3。好的,让我们继续。
- 步骤 4. 在终端中输入以下命令来安装相关依赖项。
sudo apt-get update
sudo apt-get install -y build-essential python-pip python-dev python-smbus git
sudo apt-get install -y python-scipy python-pygame
sudo pip install colour
- 步骤 5. 下载 Seeed AMG8833 Python 库。
git clone https://github.com/Seeed-Studio/Seeed_AMG8833_Raspberry_Python.git
- 步骤 6. 进入 AMG8833 文件夹,并运行演示程序。
pi@raspberrypi:~ $ cd Seeed_AMG8833_Raspberry_Python/
pi@raspberrypi:~/Seeed_AMG8833_Raspberry_Python $ ls
driver.py README.md Seeed_AMG8833.pyc
driver.pyc Seeed_AMG8833.py thermal_cam.py
pi@raspberrypi:~/Seeed_AMG8833_Raspberry_Python $ python thermal_cam.py
如果一切顺利,您将看到。

原理图在线查看器
资源
-
[Zip] Seeed AMG8833 Arduino 库
-
[Zip] Seeed AMG8833 Python 库
-
[PDF] AMG8833 数据手册
-
[PDF] XC6206 数据手册
项目
这是该产品的介绍视频,包含简单的演示,您可以尝试一下。
技术支持与产品讨论
可升级为工业传感器
通过 SenseCAP S2110 控制器和 S2100 数据记录器,您可以轻松将 Grove 转换为 LoRaWAN® 传感器。Seeed 不仅帮助您进行原型设计,还为您提供了使用 SenseCAP 系列坚固的工业传感器扩展项目的可能性。
IP66 外壳、蓝牙配置、与全球 LoRaWAN® 网络的兼容性、内置 19 Ah 电池以及来自 APP 的强大支持,使 SenseCAP S210x 成为工业应用的最佳选择。该系列包括土壤湿度、空气温湿度、光照强度、CO2、EC 传感器以及 8 合 1 气象站。为您下一个成功的工业项目尝试最新的 SenseCAP S210x。