热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【LDC1314】电感传感器中文手册与检测原理介绍

关键词:LDC1314,电感传感器,金属传感器,中文手册【声明:本博文参考TI官方手册翻译而成,

关键词:LDC1314,电感传感器,金属传感器,中文手册

【声明:本博文参考TI官方手册翻译而成,旨在帮助大家快速了解这款芯片,如翻译有误欢迎评论指出,转载需注明来源!】


以下是我对TI官方手册的人肉翻译,截取了其中的关键部分,有助于大家更好的撸底层驱动和排查硬件问题。

相关博客:【LDC1314】金属传感器(电感传感器)的调试技巧

首先,是引脚位的定义与说明:


引脚引脚类型描述
脚位名称
1SCL输入IIC时钟输入;开漏输出;需要电阻上拉到逻辑高电平
2SDA输入/输出IIC数据输入输出;开漏输出;需要电阻上拉到逻辑高电平
3CLKIN输入外部参考时钟输入,如果使用芯片内部振荡器则连接到GND
4ADDR输入IIC地址选择端;当输入低电平则IIC地址为0x2A;当输入高电平则IIC地址为0x2B;此输入端不可悬空
5INTB输出可配置中断输出引脚;推挽输出;无需上拉
6SD输入强休眠(Shutdown)输入脚;低电平时为一般工作状态,高电平时进入休眠状态;此输入端不可悬空
7VDD正电源正极电源(+3.3V)
8GND负电源地电位
9IN0A模拟外部LC传感器0
10IN0B模拟外部LC传感器0
11IN1A模拟外部LC传感器1
12IN1B模拟外部LC传感器1
13IN2A模拟外部LC传感器2
14IN2B模拟外部LC传感器2
15IN3A模拟外部LC传感器3
16IN3B模拟外部LC传感器3
17DAP固定连接到地电位

供电部分


  • 正常情况在+3.3V下工作;
  • 典型工作电流 2.1mA;
  • 休眠(SLEEP_MODE_EN=b1)模式最大 60uA;
  • 强休眠(SD = Vdd)最大 1uA

传感器部分


  • 传感器最大电流驱动 1.5mA(HIGH_CURRENT_DRV = 0)
  • 传感器电阻Rp = 1~100kΩ
  • 高电流驱动模式(仅限通道0)最大电流 6mA(HIGH_CURRENT_DRV = 1 )
  • 传感器谐振频率1KHz~10MHz
  • 最大振幅1.8V
  • 最高精度12bit
  • 最大采样率(单通道持续转换,IIC时钟频率@400kHz)为13.3ksps
  • 传感器引脚输入电容约为4pF

数字信号引脚部分


  • INTB引脚低电平≤0.4V
  • INTB引脚高电平≥2.4V

I2C通讯部分(节选)


  • 时钟频率10kHz~400kHz

综述

        LDC1314是一种电感-数字转换器(LDC),用于测量多个LC谐振器的谐振频率。该装置输出与频率成比例的数字值,有12位精度,测得的频率可以换算成等效电感值,或者用来测量可导电物体的运动,内部时钟可以减少系统功耗,外接时钟可以改善测量噪声,每个通道的测量转换时都可以设置,长转换时间可以提供更高的测量精度。对器件的配置通过 400 kbit/s 的 I2C总线配置,ADDR可选择I2C地址,唯一必要的外部元件是旁路电容和I2C的上拉电阻。

功能块示意图


  • 传感器的谐振频率为ƒSENSOR,芯片的参考时钟频率为ƒREF,测量得到的数字量 = K* (ƒSENSOR/ƒREF),K>0
  • SD拉高可使芯片进入强休眠模式以降低功耗
  • INTB可以被配置用来通知主机返回芯片的系统状态改变

多通道和单通道


  • LDC1314可以配置单通道持续采样或者多通道序列采样
  • 当工作在多通道模式下,芯片会持续序列采样被选中的多个通道;
  • 当工作在单通道模式下,芯片会连续采样被选中的通道。

可调节的转换时间


  • 转换时间长则测量精度高,转换时间可以设置为3.2us~26.2ms(一个16位寄存器)

数字信号增益


  • 输出只有12位精度,但是内部信号支持通过增益设置产生16位输出
  • 传感器启动与故障配置
  • 为了最小化噪声影响,传感器开始测量应该确保在传感器振幅稳定之后,芯片提供每个通道一个可调的的启动时间(1.2us~26.2ms)通过 SETTLECOUNTx 寄存器
  • 芯片提供一个内部滤波器,以减弱来自外部噪声源的干扰

参考时钟


  • 芯片内部时钟为43MHz,如需高精度测量,请使用外部晶振
  • 芯片提供数字分频器给参考时钟和传感器输入,确保频率可以被LDC核接受,每个通道都有一个分频器
  • 更高的参考频率提供更高的采样精度和采样率

传感器电流驱动控制


  • 传感器线圈工作有损耗,需要芯片的能量注入来维持传感器振幅恒定,芯片通过一个匹配LC振荡器频率的交变电流提供能量
  • 必须设置驱动电流大小以确保振幅在1.2V~1.8V
  • 每个通道通过 IDRIVEx 寄存器可以独立设置电流大小为16uA~1.6mA
  • 芯片也可以自主决定合适的电流等级,甚至动态的调节电流通过 RP_OVERRIDE_EN  功能

传感器状态监视器


  • 芯片支持将传感器状态通过I2C接口传出,传出条件:

  1. 传感器振幅超范围
  2. 传感器未起振
  3. 新转换数据就绪
  4. 转换出错

设备功能模式


  • 启动模式
    • 芯片上电,会进入休眠模式等待配置,一旦设备配置完成(设置CONFIG.SLEEP_MODE_EN = b0)将退出休眠开始转换
    • 推荐在休眠模式配置参数,配置完毕退出休眠模式
  • 休眠模式
    • 通过设置CONFIG.SLEEP_MODE_EN = b1 进入此模式
    • 在此模式设备配置会保存,但不会开始转换
    • 设置完成后,设置CONFIG.SLEEP_MODE_EN = b0 进入工作模式,注意,第一次转换在16384÷ƒINT(其实就是16384个转换周期) 后开始
    • 在休眠模式中读写寄存器均能生效,但在进入休眠模式时会清除所有转换结果,错误情况,以及重新配置INTB引脚
  • 一般模式
    • 在此模式,芯片会按照设置重复采样
  • 强休眠模式
    • SD = H 时,芯片进入强休眠模式,这是最低功耗状态
    • SD = H->L时,芯片退出强休眠模式,进入休眠模式,并将所有寄存器恢复默认值
    • 允许在此模式修改ADDR引脚
  • 复位 
    • RESET_DEV.RESET_DEV = b1 时设备复位,转换立即停止,所有寄存器恢复默认,这个寄存器比特位永远只会读到0
  • 编程
    • 芯片通过I2C接口访问和控制寄存器,推荐的配置过程是进入休眠模式,设置合适的寄存器值,再进入工作模式
    • 转换结果寄存器必须在工作模式读取

寄存器地址


ADDRESS

NAME

DEFAULT VALUE

DESCRIPTION 

0x00

DATA0

0x0000

Channel 0 Conversion Result and Error Status

0x02

DATA1 

0x0000

Channel 1 Conversion Result and Error Status

0x04

DATA2

0x0000

Channel 2 Conversion Result and Error Status (LDC1314 only)

0x06

DATA3 

0x0000

Channel 3 Conversion Result and Error Status (LDC1314 only)

0x08

RCOUNT0

0x0080

Reference Count setting for Channel 0

0x09

RCOUNT1

0x0080

Reference Count setting for Channel 1

0x0A

RCOUNT2

0x0080

Reference Count setting for Channel 2. (LDC1314 only)

0x0B

RCOUNT3

0x0080

Reference Count setting for Channel 3.(LDC1314 only)

0x0C

OFFSET0 

0x0000

Offset value for Channel 0

0x0D

OFFSET1 

0x0000

Offset value for Channel 1

0x0E

OFFSET2 

0x0000

Offset value for Channel 2 (LDC1314 only)

0x0F

OFFSET3 

0x0000

Offset value for Channel 3 (LDC1314 only)

0x10

SETTLECOUNT0 

0x0000

Channel 0 Settling Reference Count

0x11

SETTLECOUNT1

0x0000r_

Channel 1 Settling Reference Count

0x12

SETTLECOUNT2

0x0000

Channel 2 Settling Reference Count (LDC1314 only)

0x13

SETTLECOUNT3 

0x0000

Channel 3 Settling Reference Count (LDC1314 only)

0x14

CLOCK_DIVIDERS0

0x0000

Reference and Sensor Divider settings for Channel 0

0x15

CLOCK_DIVIDERS1

0x0000

Reference and Sensor Divider settings for Channel 1

0x16

CLOCK_DIVIDERS2

0x0000

Reference and Sensor Divider settings for Channel 2 (LDC1314 only)

0x17

CLOCK_DIVIDERS3

0x0000

Reference and Sensor Divider settings for Channel 3 (LDC1314 only)

0x18

STATUS 

0x0000

Device Status Report

0x19

ERROR_CONFIG

0x0000

Error Reporting Configuration

0x1A

CONFIG

0x2801

Conversion Configuration

0x1B

MUX_CONFIG 

0x020F

Channel Multiplexing Configuration

0x1C

RESET_DEV

0x0000

Reset Device

0x1E

DRIVE_CURRENT0 

0x0000

Channel 0 sensor current drive configuration

0x1F

DRIVE_CURRENT1 

0x0000

Channel 1 sensor current drive configuration

0x20

DRIVE_CURRENT2 

0x0000

Channel 2 sensor current drive configuration (LDC1314 only)

0x21

DRIVE_CURRENT3 

0x0000

Channel 3 sensor current drive configuration (LDC1314 only)

0x7E

MANUFACTURER_ID 

0x5449

Manufacturer ID

0x7F

DEVICE_ID

0x3054

Device ID

应用与实施

时变电磁场中的导体

        交变电流流过感应器(及线圈,之后都称之为线圈)将产生一个交变磁场,如果一个导体材料,例如一块金属物体,被放入线圈附近,磁场会在金属物体表面引发涡流(环形电流)。

        涡流的大小是导体距离、尺寸和材料成分的函数。涡流会产生自己的磁场,与传感器线圈形成的原磁场相反,这种效果相当于一组变压器(耦合电感器),其中传感器线圈是初级绕组,物体上的涡流形成次级绕组。电感器之间的耦合是线圈感值,以及金属物体的电阻率、距离、大小和形状的函数。

二次绕组的阻抗可建模为与距离相关的模型并等效到一次侧(线圈)上

振荡器可以看做一个频率选择电路和一个闭环增益模块的组合,只要满足:(1)增益>1;(2)闭环相移为2π

谐振频率

 

其中

Rp是工作频率下LC谐振器的交流并联电阻。

传感器激活过程


  • 芯片提供两种选择,减少等幅震荡建立时间或减少电流以降低功耗
  • SENSOR_ACTIVATE_SEL =b0 使用最大电流激发振荡,在已经配置最大电流时(IDRIVEx = b11111)没有变化

 

 

 


推荐阅读
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 实体映射最强工具类:MapStruct真香 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • 基因组浏览器中的Wig格式解析
    本文详细介绍了Wiggle(Wig)格式及其在基因组浏览器中的应用,涵盖variableStep和fixedStep两种主要格式的特点、适用场景及具体使用方法。同时,还提供了关于数据值和自定义参数的补充信息。 ... [详细]
  • 深入理解Redis的数据结构与对象系统
    本文详细探讨了Redis中的数据结构和对象系统的实现,包括字符串、列表、集合、哈希表和有序集合等五种核心对象类型,以及它们所使用的底层数据结构。通过分析源码和相关文献,帮助读者更好地理解Redis的设计原理。 ... [详细]
  • 本文详细解释了华为ENSP模拟器中常用的命令,涵盖用户模式、系统模式、接口模式和地址池视图模式下的操作。这些命令对于进行计算机网络实验至关重要,帮助用户更好地理解和配置路由器及PC机的通信。 ... [详细]
  • 华为USG基于源地址的多出口策略路由配置
    网络拓扑如下:组网情况:企业用户主要有技术部(VLAN10)和行政部(VLAN20),通过汇聚交换机连接到USG。企业分别通过两个不同运营商(ISP1和ISP2)连接到 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • Android 渐变圆环加载控件实现
    本文介绍了如何在 Android 中创建一个自定义的渐变圆环加载控件,该控件已在多个知名应用中使用。我们将详细探讨其工作原理和实现方法。 ... [详细]
  • 本文详细介绍了如何构建一个高效的UI管理系统,集中处理UI页面的打开、关闭、层级管理和页面跳转等问题。通过UIManager统一管理外部切换逻辑,实现功能逻辑分散化和代码复用,支持多人协作开发。 ... [详细]
  • 在维护公司项目时,发现按下手机的某个物理按键后会激活相应的服务,并在屏幕上模拟点击特定坐标点。本文详细介绍了如何使用ADB Shell Input命令来模拟各种输入事件,包括滑动、按键和点击等。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 深入解析TCP/IP五层协议
    本文详细介绍了TCP/IP五层协议模型,包括物理层、数据链路层、网络层、传输层和应用层。每层的功能及其相互关系将被逐一解释,帮助读者理解互联网通信的原理。此外,还特别讨论了UDP和TCP协议的特点以及三次握手、四次挥手的过程。 ... [详细]
  • 本题探讨了在一个有向图中,如何根据特定规则将城市划分为若干个区域,使得每个区域内的城市之间能够相互到达,并且划分的区域数量最少。题目提供了时间限制和内存限制,要求在给定的城市和道路信息下,计算出最少需要划分的区域数量。 ... [详细]
author-avatar
ruishao520
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有