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修订历史记录

C2000 Piccolo 固件

我们针对 Piccolo TMS320F28069M 开发和编译了示例固件,并将使用图 5-1中所述的外设模块。

该固件将使用 C2000 controlSUITETM™。固件主要由三个功能模块组成。F28069M 框架(如图 5-2中所述)、用于同步采样所需数据并计算插值角度的算法,以及基于 UART 终端的用户界面。

TIDA-00176 正弦/余弦编码器框架流程图图 5-2 正弦/余弦编码器框架流程图

TMS320F28069M 框架可初始化 TMS320F26069M CPU 时钟至 80Mhz,对 GPIO 多路复用器以及各种外设,例如 SPI-A、SCI-A (UART)、基于 ePWM1 的周期性计时器和中断,嵌入式 12 位双路 S/H ADC 进行初始化设置。它还通过 SPI-A 配置外部 16 位双路 ADC ADS8354,如节 4.3.2.4中所述。SPI-A 被配置为 SPI 主设备,串行时钟设置为 10MHz。对于 Piccolo F28069M,这是最大的 SPI 时钟。对于其他处理器(如 Sitara AM437x 或 Delfino F287x),SPI 时钟可高达 24 MHz。

初始化完成后,程序将调用基于 UART 的用户界面并运行周期中断服务例程 (ISR)。周期 ISR 将基于外部 16 位 ADC ADS8354 和内部 12 位 ADC,实施同步数据捕获、计算中间相位及总插值角。它遵循中节 1概述的算法。这些编码利用 TI IQmath 库,采用 32 位整数分数 Q28 格式编写。与
32 位 IEEE 浮点数相比,32 位小数的优势在于,无论数据范围如何,分辨率都能保持恒定。由于角度数据(按单位计)的取值范围被限定在 0 到 1.0 之间,ADC 的输入数据经缩放后最大值为 ±5 (V),而整数范围为 ±8.0 的 Q28 数据格式能够提供充足的余量,同时对于所有数据都能保持稳定的精度。

图 5-3 中所示为 ISR 的流程图。

TIDA-00176 带插值角度计算的正弦/余弦编码器主 ISR 流程图图 5-3 带插值角度计算的正弦/余弦编码器主 ISR 流程图