高通传感器用户指南(八)

校准

传感器校准是调整或微调传感器硬件以确保准确性并最大限度地减少误差的过程。对工作环境变化敏感的传感器会因温度变化、机械磨损或工作范围偏移等因素而产生不适当的输出值。校准涉及将基于理论模型或标准的预期输出与传感器的实际测量输出进行比较。通过精确调整,传感器校准可提高性能、准确性和可靠性,从而确保传感器提供可靠的数据。

每次成功完成校准和关联的注册表更新(如以下各节所述)之后,ver 注册表项的值将递增。例如,如果注册表项中的偏差偏移量的 ver 值为 0,则在成功完成一次校准和注册表更新后,注册表项将使用新的偏置偏移量进行更新,并且 ver 值将递增为 1。

工厂传感器校准

工厂传感器校准是在制造阶段调整或微调传感器的过程。

加速度计

下表列出了加速度计校准过程:

在这里插入图片描述

地磁传感器

下表列出了地磁传感器校准过程:
在这里插入图片描述

接近

下表列出了接近校准过程:
在这里插入图片描述

环境光

下表列出了环境光校准过程:
在这里插入图片描述

Run-time 工厂传感器校准

Run-time 传感器校准是在传感器运行阶段(而不是在制造阶段)调整或微调传感器的过程。它是动态发生的,而传感器在现实世界中主动收集数据。

陀螺仪

陀螺仪校准传感器 gyro_cal 用于陀螺仪的 run-time 校准。下表列出了陀螺仪校准过程:
在这里插入图片描述

地磁传感器

地磁校准传感器 mag_cal 用于地磁传感器的 run-time 校准。下表列出了地磁传感器校准过程:
在这里插入图片描述

验证

ssc_sensor_info 测试工具用于验证 QSH 功能,并列出所有支持的传感器及其功能。

ssc_sensor_info

以下 shell 输出列出了所有支持的传感器及其属性:

root@qcm6490:~# ssc_sensor_info
ssc_sensor_info v1.86

SUID           = 0xebd5604d09d379bca54dcf30ec041e0f
NAME           = ak0991x
VENDOR         = akm
TYPE           = mag
AVAILABLE      = true
VERSION        = 2.62.47
API            = sns_mag.proto
RATES          = [1.000000, 10.000000, 20.000000, 50.000000, 100.000000]
RESOLUTIONS    = 0.150000
RANGES         = [-4912.000000,4912.000000]
DRI            = false
FIFO_SIZE      = 0
STREAM_TYPE    = streaming
STREAM_SYNC    = false
DYNAMIC        = false
EVENT_SIZE     = 16
OP_MODES       = [LOW_POWER, LOW_NOISE]
ACTIVE_CURRENT = 900
SLEEP_CURRENT  = 3
HW_ID          = 0
RIGID_BODY     = display
PHYSICAL_SENSOR       = true
PHYSICAL_SENSOR_TESTS = [3, 1]
SELECTED_RESOLUTION   = 0.150000
SELECTED_RANGE        = [-4912.000000,4912.000000]

SUID           = 0xaddeaddeaddeaddeaddeaddeaddeadde
NAME           = da_test
VENDOR         = QTI
TYPE           = da_test
AVAILABLE      = true
VERSION        = 0.51.0
API            = sns_da_test.proto
STREAM_TYPE    = on_change

SUID           = 0x69def905fea2fbac6a43ca273221a2eb
NAME           = aont
VENDOR         = QTI
TYPE           = aont
AVAILABLE      = true
VERSION        = 0.0.1
API            = sns_aont.proto
STREAM_TYPE    = on_change

SUID           = 0xabababababababababababababababab
NAME           = suid
VENDOR         = QTI
TYPE           = suid
AVAILABLE      = true
VERSION        = 0.0.1
API            = sns_suid.proto
STREAM_TYPE    = single_output

SUID           = 0xe12754a7007f27595e2541b4701e2275
NAME           = registry
VENDOR         = QTI
TYPE           = registry
AVAILABLE      = true
VERSION        = 0.0.1
API            = sns_registry.proto
STREAM_TYPE    = single_output

SUID           = 0xadfeadfeadfeadfeadfeadfeadfeadfe
NAME           = da_test_big_image
VENDOR         = QTI
TYPE           = da_test
AVAILABLE      = true
VERSION        = 0.49.0
API            = sns_da_test.proto
STREAM_TYPE    = on_change

SUID           = 0x61ab5376b4a5c9aa58442ede47acd316
NAME           = icm4x6xx
VENDOR         = TDK-Invensense
TYPE           = accel
AVAILABLE      = true
VERSION        = 1.65.2
API            = sns_accel.proto
RATES          = [12.500000, 25.000000, 50.000000, 100.000000, 200.000000, 500.000000]
RESOLUTIONS    = [0.000019, 0.000037, 0.000075, 0.000150, 0.000299]
RANGES         = [[-9.806650,9.806650], [-19.613300,19.613300], [-39.226601,39.226601], [-78.453201,78.453201], [-156.906403,156.906403]]
DRI            = true
FIFO_SIZE      = 200
STREAM_TYPE    = streaming
STREAM_SYNC    = false
DYNAMIC        = false
EVENT_SIZE     = 16
OP_MODES       = [LPM, NORMAL, HIGH_PERF]
ACTIVE_CURRENT = [50, 240, 240]
SLEEP_CURRENT  = 6
HW_ID          = 0
RIGID_BODY     = display
PHYSICAL_SENSOR       = true
PHYSICAL_SENSOR_TESTS = [3, 2, 1]
SELECTED_RESOLUTION   = 0.000299

以下 QXDM 输出显示了低功耗处理器中所有支持的传感器及其属性的验证/确认日志:

[ 123/   2]   MSG    18:47:22.898750     SNS PLATFORM/High          [sns_registry_parser.c   2099] REG INIT DONE... ts=63248955
[ 122/   1]   MSG    18:47:22.925000     SNS FRAMEWORK/Medium       [  sns_diag_service.c   1072] Sensor registry Vendor:QTI SSID:53 registered with diag
[ 122/   1]   MSG    18:47:22.925000     SNS FRAMEWORK/Medium       [        sns_sensor.c    769] Populating sensor b2926130 in island: 2, with SUID e12754a7 007f2759 5e2541b4 701e2275
[ 122/   2]   MSG    18:47:22.925000     SNS FRAMEWORK/High         [sns_attribute_service.c    584] Sensor : registry, suid_populated : 1, available : 1
[ 122/   2]   MSG    18:47:22.925000     SNS FRAMEWORK/High         [sns_attribute_service.c    594] Avail:    B2926130  registry
[ 123/   2]   MSG    18:47:22.925000     SNS PLATFORM/High          [sns_registry_sensor.c    284] Successfully initialized registry
[ 122/   1]   MSG    18:47:22.925000     SNS FRAMEWORK/Medium       [sns_stream_service.c    150] Created data stream to Sensor 'registry' (b2926130) from Sensor 'suid' (b2922018): b296fd28
[ 122/   1]   MSG    18:47:22.925000     SNS FRAMEWORK/Medium       [sns_stream_service.c    686] Add request b296fdc0 on stream b296fd28 (length 20; ID 512)
[ 122/   0]   MSG    18:47:22.926250     SNS FRAMEWORK/Low          [sns_stream_service.c    548] Process request for Sensor b2926130 on b296fd28
[ 122/   0]   MSG    18:47:22.926250     SNS FRAMEWORK/Low          [   sns_suid_sensor.c   1050] send_suid_event dt=registry, default=1
[ 123/   2]   MSG    18:47:22.926250     SNS PLATFORM/High          [         sns_q6_pm.c    365] Deregister_client: B2927B30
[ 123/   2]   MSG    18:47:22.926250     SNS PLATFORM/High          [sns_registry_sensor.c    366] Processed : SSCRPCD UP Signal
[ 122/   0]   MSG    18:47:22.926250     SNS FRAMEWORK/Low          [   sns_suid_sensor.c   1050] send_suid_event dt=registry, default=1
[ 122/   1]   MSG    18:47:22.926250     SNS FRAMEWORK/Medium       [   sns_data_stream.c    551] sns_data_stream_deinit b29231d0 removing=0
[ 122/   1]   MSG    18:47:22.926250     SNS FRAMEWORK/Medium       [sns_stream_service.c    686] Add request b2927b30 on stream b29231d0 (length 0; ID 120)
[ 122/   0]   MSG    18:47:22.926250     SNS FRAMEWORK/Low          [   sns_suid_sensor.c   1050] send_suid_event dt=registry, default=1
[ 123/   2]   MSG    18:47:22.926250     SNS PLATFORM/High          [   sns_gdsc_island.c    109] gdsc_client_cnt(2), sns_gdsc_mode(1)
[ 122/   1]   MSG    18:47:22.926250     SNS FRAMEWORK/Medium       [sns_stream_service.c    150] Created data stream to Sensor 'timer' (b2118e08) from Sensor 'power_sensor' (b2922c78): b2931c48
[ 122/   0]   MSG    18:47:22.926250     SNS FRAMEWORK/Low          [   sns_suid_sensor.c   1050] send_suid_event dt=registry, default=1
[ 122/   1]   MSG    18:47:22.926250     SNS FRAMEWORK/Medium       [sns_stream_service.c    686] Add request b2123580 on stream b2931c48 (length 16; ID 512)
[ 122/   0]   MSG    18:47:22.926250     SNS FRAMEWORK/Low          [sns_stream_service.c    548] Process request for Sensor b2118e08 on b2931c48
[ 122/   0]   MSG    18:47:22.926250     SNS FRAMEWORK/Low          [   sns_suid_sensor.c   1050] send_suid_event dt=registry, default=1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值