ZHCU108B June   2015  – March 2025

 

  1.   1
  2.   说明
  3.   资源
  4.   特性
  5.   应用
  6.   6
  7. 系统说明
    1. 1.1 设计概述
    2. 1.2 模拟正弦/余弦增量编码器
      1. 1.2.1 正弦/余弦编码器输出信号
      2. 1.2.2 正弦/余弦编码器电气参数示例
    3. 1.3 通过正弦/余弦编码器计算高分辨率位置的方法
      1. 1.3.1 理论方法
        1. 1.3.1.1 概述
        2. 1.3.1.2 粗略分辨率角度计算
        3. 1.3.1.3 精确分辨率角度计算
        4. 1.3.1.4 插值高分辨率角度计算
        5. 1.3.1.5 非理想同步条件下的实际实施情况
        6. 1.3.1.6 分辨率、精度和速度注意事项
    4. 1.4 正弦/余弦编码器参数对模拟电路规范的影响
      1. 1.4.1 相位插值的模拟信号链设计注意事项
      2. 1.4.2 增量计数的比较器功能系统设计
  8. 设计特性
    1. 2.1 正弦/余弦编码器接口
    2. 2.2 主机处理器接口
    3. 2.3 评估固件
    4. 2.4 电源管理
    5. 2.5 EMC 抗扰度
  9. 方框图
  10. 电路设计和元件选型
    1. 4.1 模拟信号链
      1. 4.1.1 带有 16 位双路采样 ADC 的高分辨率信号路径
        1. 4.1.1.1 元件选型
        2. 4.1.1.2 输入信号端接与保护
        3. 4.1.1.3 差分放大器 THS4531A 和 16 位 ADC ADS8354
      2. 4.1.2 面向嵌入式 ADC 的 MCU 的单端输出模拟信号路径
      3. 4.1.3 数字信号 A、B 和 R 的比较器子系统
        1. 4.1.3.1 具有迟滞功能的同相比较器
    2. 4.2 电源管理
      1. 4.2.1 24V 输入转换为 6V 中间电压轨
      2. 4.2.2 编码器电源
      3. 4.2.3 信号链电源 5V 和 3.3V
    3. 4.3 主机处理器接口
      1. 4.3.1 信号描述
      2. 4.3.2 采用具有串行输出的 16 位双路 ADC ADS8354 的高分辨率路径
        1. 4.3.2.1 ADS8354 输入满标量程输出数据格式
        2. 4.3.2.2 ADS8354 串行接口
        3. 4.3.2.3 ADS8354 转换数据读取
        4. 4.3.2.4 ADS8354 寄存器配置
    4. 4.4 编码器连接器
    5. 4.5 设计升级
  11. 软件设计
    1. 5.1 概述
    2. 5.2 C2000 Piccolo 固件
    3. 5.3 用户界面
  12. 入门
    1. 6.1 TIDA-00176 PCB 概览
    2. 6.2 连接器和跳线设置
      1. 6.2.1 连接器和跳线概述
      2. 6.2.2 默认跳线配置
    3. 6.3 设计评估
      1. 6.3.1 先决条件
      2. 6.3.2 硬件设置
      3. 6.3.3 软件设置
      4. 6.3.4 用户界面
  13. 测试结果
    1. 7.1 模拟性能测试
      1. 7.1.1 高分辨率信号路径
        1. 7.1.1.1 编码器连接器至 ADS8354 输入端的模拟路径波德图
        2. 7.1.1.2 整个高分辨率信号路径的性能曲线图 (DFT)
        3. 7.1.1.3 ADC 交流性能定义的背景信息
      2. 7.1.2 差分转单端模拟信号路径
      3. 7.1.3 带数字输出信号 ATTL、BTTL 和 RTTL 的比较器子系统
    2. 7.2 电源测试
      1. 7.2.1 24V DC/DC 输入电源
        1. 7.2.1.1 负载-线路调整
        2. 7.2.1.2 输出电压纹波
        3. 7.2.1.3 开关节点和开关频率
        4. 7.2.1.4 效率
        5. 7.2.1.5 波特图
        6. 7.2.1.6 热像图
      2. 7.2.2 编码器电源输出电压
      3. 7.2.3 5V 和 3.3V 负载点
    3. 7.3 系统性能
      1. 7.3.1 正弦/余弦编码器输出信号仿真
        1. 7.3.1.1 一个周期(增量相位)测试
        2. 7.3.1.2 最大速度时机械旋转一周的测试
    4. 7.4 正弦/余弦编码器系统测试
      1. 7.4.1 零索引标记 R
      2. 7.4.2 功能性系统测试
    5. 7.5 EMC 测试结果
      1. 7.5.1 测试设置
      2. 7.5.2 IEC-61000-4-2 ESD 测试结果
      3. 7.5.3 IEC-61000-4-4 EFT 测试结果
      4. 7.5.4 IEC-61000-4-5 浪涌测试结果
  14. 设计文件
    1. 8.1 原理图
    2. 8.2 物料清单
    3. 8.3 PCB 布局指南
      1. 8.3.1 PCB 层图
    4. 8.4 Altium 工程
    5. 8.5 Gerber 文件
    6. 8.6 软件文件
  15. 参考资料
  16. 10作者简介
    1.     致谢
  17. 11修订历史记录

最大速度时机械旋转一周的测试

为完成本测试,我们计算了 Piccolo F28069M LaunchPad 所连 TIDA-00176 中机械旋转一周的高分辨率插值角。在 CPU 时钟频率为
80-MHz 时,采样率设置为 32kHz。

此测试的目的在于,验证插值算法在最大输入信号频率
500kHz 下有效,例如,不会因模拟样本与 QEP 计数器锁存产生的不匹配而导致任何增量计数缺失,或插值相位(反切)与相应线数 (QEP) 不匹配。这将转化为比节 7.3.1.1中测量的量化噪声更大的误差。

为此,采用双路信号发生器模拟编码器 360 旋转。使用双路输出信号发生器以下述方式执行该测试:两个输出信号在振幅和频率上进行耦合,相移为 90 度。然后,两个信号作为输入施加到 TIDA-00176 编码器连接器的 J9 A+/A– 和 B+/B– 引脚。

总插值角存储在 F28069M RAM 中,通过 CCS 内存转储进行读取。

将计算得出的高分辨率角度与编码器线数为 2000 时的理想相位进行比较。因此,在 500K kHz 时,2000 个信号周期等于一周的仿真旋转。总角相位以 360 度× 500kHz/2000 = 90,000deg/s 的速率斜升。表 7-6提供了
1µs 和 100ns 的时序,它们等于 80MHz 处的一个 F28069M CPU 时钟。

表 7-6 线数为 2000 时的正弦/余弦编码器以 15000rpm 运行时的角速度
理想角速度1µs 中的角度变化12.5 (CPU 时钟)内的角度变化
90,000deg/s0.090.0011

信号发生器及处理器时钟的抖动,乃至主机处理器通过 SPI/CS 采样模拟信号时的 CPU 时钟抖动均无法避免。假设角度以理想状态斜升(由于缺少参照值),测得的角度将出现相应的相位滞后或相位超前,进而导致与速度相关的角度误差。

图 7-29所示为理想斜升(500kHz,每转 2000 个信号周期)情况下在 32kHz (每转产生128 个连续样本)时测得的插值角误差。

TIDA-00176 使用编码器仿真一周内插值角度的误差(1VPP,500kHz 输入@ 32kHz 采样)图 7-29 使用编码器仿真一周内插值角度的误差(1VPP,500kHz 输入@ 32kHz 采样)

如前所述,此测试的目的不是测试精度,而是验证增量是否丢失。在 2000 线数仿真中,一个增量线数相当于360/2000 = 0.18 度。理想直线的角度误差(差异)始终保持在 ±0.001 度内;因此,在 500kHz 时插值运算仍然有效,未丢失增量。

从图中可知,误差在 ±0.0015 度以内。其原因是 CPU 时钟抖动以及其他抖动,例如来自信号发生器源的抖动,CPU 时钟抖动决定了最小精度。

这样分布的原因在于 F28069 软件的抖动,抖动触发了一个或两个 CPU 时钟周期的 SPI 传输/CS。/CS 下降沿能锁存模拟输入。仅仅 12.5ns 的抖动就会转换为约 12.5ns/2000ns × 360/2000 度~ 0.0011 度的相位差。因此,角度差实际上是一项与速度相关的角度误差(速度)滞后。