# 传感器概述

Note

Qualcomm® sensing hub (QSH) 仅适用于 [QCS5430](https://www.qualcomm.com/products/internet-of-things/industrial/industrial-automation/qcs5430) 和 [QCS6490](https://www.qualcomm.com/products/internet-of-things/industrial/building-enterprise/qcs6490)。

Qualcomm® 片上系统 (SoC) 包括运行 Linux 操作系统的应用处理器、低功耗程序数字信号处理器 (aDSP) 和其他处理器。低功耗处理器运行实时操作系统 (RTOS)，用于处理 QSH 用例。aDSP 支持以下 QSH 操作：

- GPIO 可配置为串行总线：串行外设接口 (SPI)、内部集成电路 (I^2^C)、改进型 I^2^C (I^3^C) 和通用异步接收器/发送器 (UART)。
- 低功耗模式下的串行总线。
- 专用的本地内存，在 QSH 中也称为 Island。

## QSH 传感器

QSH 提供了一个框架来使用来自各种传感器的数据。传感器数据在物联网、游戏、健康和健身等领域非常实用。

一个设备可以有多个给定类型的传感器。例如，翻盖手机在两个平面上各放置一个加速度计。已发布的属性或功能可区分每个加速度传感器。您可以使用 QSH 客户端 API 访问平台上传感器的可用性、属性和功能。使用相同的 QSH 客户端 API 从 QSH 框架获取传感器数据。

QSH 框架 API 包括 QSH 客户端 API 和传感器 API，用于执行以下与传感器相关的任务：

- 识别可在开发套件上使用的传感器。
- 利用属性（例如支持的采样率、最大范围、制造商、电源要求和分辨率）定义传感器的功能。
- 根据配置收集并提供数据，从而使传感器具有指定的采样率。

QSH 框架可访问基于硬件和基于软件的传感器。

### 基于硬件的传感器

基于硬件的传感器是通过直接测量特定环境属性（如加速度、磁场、压力、湿度、光和角速度）来收集数据的物理传感器。

下表列出了 QSH 框架支持的基于硬件的传感器：

> 
> 
> 表：基于硬件的传感器
> 
> 
> | 传感器名称 | 传感器类型 | 说明 | Proto API |
> | --- | --- | --- | --- |
> | 加速度计 | `accel` | 测量施加在所有 3 个物理轴（x、y 和 z）上的设备的加速度，单位为米每平方秒 (m/s2)。 | `sns_accel.proto` |
> | 陀螺仪 | `gyro` | 测量设备围绕 3 个物理轴（x、y 和 z）中每个轴的旋转速率，单位为弧度每秒 (rad/s)。 | `sns_gyro.proto` |
> | 传感器温度 | `sensor_temperature` | 测量传感器温度，单位为摄氏度 (°C) | `sns_sensor_temperature.proto` |
> | 地磁传感器 | `mag` | 测量所有 3 个物理轴（x、y 和 z）的环境磁场，单位为微特斯拉 (μT) | `sns_mag.proto` |
> | 接近 | `proximity` | 测量目标的接近程度并提供*近/远*事件 | `sns_proximity.proto` |
> | 环境光 | `ambient_light` | 测量环境光照度，单位为勒克斯 (lx)。 | `sns_ambient_light.proto` |
> | 压力 | `pressure` | 测量环境气压，单位为百帕斯卡 (hPa) | `sns_pressure.proto` |
> | 湿度 | `humidity` | 测量相对环境湿度，单位为百分比 (%) | `sns_humidity.proto` |
> | 环境温度 | `ambient_temperature` | 提供环境室温，单位为摄氏度 (°C) | `sns_ambient_temperature.proto` |
> | 霍尔 | `hall` | 测量磁场并提供磁铁*近/远*指示 | `sns_hall.proto` |
> | 电容式接近 | `sar` | 利用电容变化检测人体的接近程度，并报告*近/远*事件 | `sns_sar.proto` |

### 基于软件的传感器

基于软件的传感器，也称为虚拟传感器，是从一个或多个物理传感器收集数据并生成预期输出的算法。常见的示例是重力、计步器和游戏旋转矢量。

下表列出了 QSH 框架支持的基于软件的传感器：

> 
> 
> 表：基于软件的传感器
> 
> 
> | 传感器名称 | 传感器类型 | Proto API | 说明 |
> | --- | --- | --- | --- |
> | 绝对运动检测器 | `amd` | `sns_amd.proto` | <ul class="simple"><br><li><p>当设备处于绝对静止状态时报告静止状态事件。例如，设备放置在固定物体上，例如书桌或桌子。</p></li><br><li><p>当设备从绝对静止状态转变为移动状态时，报告移动状态事件。例如，正在将设备从桌子上提起。</p></li><br><li><p>使用加速度计运动检测中断来降低功耗。</p></li><br></ul> |
> | 相对运动检测器 | `rmd` | `sns_rmd.proto` | 当设备相对于重力没有显著移动时，报告静止状态。 |
> | 显著运动检测器 | `sig_motion` | `sns_sig_motion.proto` | <ul class="simple"><br><li><p>当检测到显著运动 - 可能导致用户位置变化的运动时触发。例如，步行、骑自行车或坐在行驶中的汽车、长途汽车或火车上。</p></li><br><li><p>以下示例不会触发显著运动：</p><ul><br><li><p>设备在口袋里，人没有移动。</p></li><br><li><p>设备在桌子上，桌子有一点儿晃动。</p></li><br></ul><br></li><br><li><p>报告模式：通知传感器自动禁用后，单次响应。</p></li><br></ul> |
> | 计步器 | `pedometer` | `sns_pedometer.proto` | 向客户端报告步数。 |
> | 步数检测器 | `step_detect` | `sns_step_detect.proto` | 检测步数，并在每一步生成事件。 |
> | 倾斜检测器 | `tilt` | `sns_tilt.proto` | 每次倾斜时生成一个事件。2 秒窗口的方向（自激活或传感器生成的最后一个事件以来，平均重力至少变化了 35 度）定义倾斜事件。 |
> | 倾斜唤醒 | `tilt_to_wake` | `sns_tilt_to_wake.proto` | 当设备处于特定的俯仰角和滚转角范围内时，检测显著的手机旋转手势事件。 |
> | 陀螺仪校准 | `gyro_cal` | `sns_gyro_cal.proto` | <ul class="simple"><br><li><p>一种用于陀螺仪的低功耗动态校准算法。</p></li><br><li><p>已在不同供应商的多个陀螺仪部件上进行验证。</p></li><br></ul> |
> | 地磁传感器校准 | `mag_cal` | `sns_mag_cal.proto` | <ul class="simple"><br><li><p>地磁传感器的低功耗动态校准算法。</p></li><br><li><p>已在来自不同供应商的多个地磁传感器部件上进行验证。</p></li><br></ul> |
> | 游戏旋转矢量 | `game_rv` | `sns_game_rv.proto` | <ul class="simple"><br><li><p>报告设备相对于未指定坐标系的方向。</p></li><br><li><p>它通过集成加速度计和陀螺仪读数来获得方向。因此，Y 轴不指向北方；相反，它指向任意参考方向。</p></li><br></ul> |
> | 重力/线性加速度 | `gravity` | `sns_gravity.proto` | <ul class="simple"><br><li><p>提供指示重力方向和大小的三维矢量。</p></li><br><li><p>确定设备在空间中的相对方向。</p></li><br></ul> |
> | 持续静止/运动检测器 | `persist_stationary_detect` | `sns_persist_stationary_detect.proto` | 当设备静止至少 5 秒时报告事件。 |
> | 持久运动检测器 | `persist_motion_detect` | `sns_persist_motion_detect.proto` | 当设备处于运动状态至少 5 秒报告事件。 |
> | 设备方向 | `device_orient` | `sns_device_orient.proto` | 报告设备处于纵向模式还是横向模式。 |
> | 地磁旋转矢量 (RV) | `geomag_rv` | `sns_geomag_rv.proto` | 报告设备相对于东-北-天 (ENU) 坐标系的方向；通过整合加速度计和地磁传感器的读数获得。 |
> | 旋转矢量 | `rotv` | `sns_rotv.proto` | <ul class="simple"><br><li><p>报告设备相对于东-北-天 (ENU) 坐标系的方向。</p></li><br><li><p>通过集成加速度计、陀螺仪和地磁传感器读数来获取方向。</p></li><br></ul> |
> | 设备位置分类器 | `device_position_classi fier` | `sns_dpc.proto` | 提供设备位置信息。 |
> | 活动识别算法 | `activity_recognition` | `sns_activity_recognition.proto` | 测定相对静止、步行、跑步、自行车、汽车、非机动车、机动车状态和分类。 |
> | 距离界限 | `distance_bound` | `sns_distance_bound.proto` | <ul class="simple"><br><li><p>以米为单位跟踪距离，并在覆盖请求的距离时向客户端报告。</p></li><br><li><p>客户端可以在到达最终距离之前随时查询累积距离。</p></li><br></ul> |

- [功能](https://docs.qualcomm.com/doc/80-70018-7SC/topic/supported_features.html)
介绍 Qualcomm® 传感中枢 (QSH) 的功能及其对 IoT 用例的影响。
- [QSH 架构](https://docs.qualcomm.com/doc/80-70018-7SC/topic/architecture.html)
介绍 QSH 统一事件驱动框架。
- [QSH API](https://docs.qualcomm.com/doc/80-70018-7SC/topic/qsh_api_reference.html)
介绍 QSH 接口以及重要的 QSH 函数、类、方法和数据结构。
- [软件](https://docs.qualcomm.com/doc/80-70018-7SC/topic/software.html)
介绍应用处理器和低功耗处理器的目录结构。
- [平台](https://docs.qualcomm.com/doc/80-70018-7SC/topic/platform.html)
介绍 Qualcomm® RB3 Gen 2 开发套件支持的传感器。

Last Published: Apr 26, 2025

[Previous Topic
传感器文档](https://docs.qualcomm.com/bundle/publicresource/80-70018-7SC/topics/landing_page.md) [Next Topic
功能](https://docs.qualcomm.com/bundle/publicresource/80-70018-7SC/topics/supported_features.md)