ZHCU481E october   2022  – july 2023

 

  1.   1
  2.   说明
  3.   资源
  4.   特性
  5.   应用
  6.   6
  7. 1系统说明
    1. 1.1 关键系统规格
  8. 2系统概述
    1. 2.1 方框图
    2. 2.2 重点产品
      1. 2.2.1 C2000 实时 MCU LaunchPad
      2. 2.2.2 SN65HVD78
      3. 2.2.3 TLV702
      4. 2.2.4 TPS22918-Q1
    3. 2.3 设计注意事项
      1. 2.3.1 Tamagawa T-Format 协议
      2. 2.3.2 C2000 T-Format 编码器接口概述
      3. 2.3.3 TIDM-1011 板实现
      4. 2.3.4 MCU 资源要求
      5. 2.3.5 特定于器件的资源使用情况
        1. 2.3.5.1 CRC 计算
        2. 2.3.5.2 输入、输出信号和 CLB 逻辑块
      6. 2.3.6 CLB T-Format 实现详细信息
        1. 2.3.6.1 事务波形
          1. 2.3.6.1.1 IDLE 状态
          2. 2.3.6.1.2 TRANSMIT_DATA 状态
          3. 2.3.6.1.3 WAIT_FOR_START 状态
          4. 2.3.6.1.4 RECEIVE_DATA 状态
        2. 2.3.6.2 通信逻辑块设计
        3. 2.3.6.3 逻辑视图
      7. 2.3.7 CLB 接收数据 CRC 实现
      8. 2.3.8 PM T-Format 编码器接口库
        1. 2.3.8.1 PM T-Format 参考设计命令
        2. 2.3.8.2 PM T-Format 参考设计中支持的函数
  9. 3硬件、软件、测试要求和测试结果
    1. 3.1 硬件
      1. 3.1.1 TIDM-1011 跳线配置
    2. 3.2 软件
      1. 3.2.1 C2000 驱动程序库 (DriverLib)
      2. 3.2.2 C2000 SysConfig
      3. 3.2.3 C2000 可配置逻辑块工具
      4. 3.2.4 安装 Code Composer Studio™ 和 C2000WARE-MOTORCONTROL-SDK
      5. 3.2.5 查找参考软件
    3. 3.3 测试和结果
      1. 3.3.1 硬件配置
      2. 3.3.2 构建和加载项目
      3. 3.3.3 运行代码
      4. 3.3.4 电缆长度验证
      5. 3.3.5 基准测试
      6. 3.3.6 疑难解答
  10. 4设计文件
  11. 5相关文档
    1. 5.1 商标
  12. 6术语
  13. 7关于作者
  14. 8修订历史记录

Tamagawa T-Format 协议

Tamagawa 是一家编码器技术制造商,该项技术在机床、机器人、电机驱动等领域用于获取高精度位置信息。Tamagawa 旋转编码器主要分为两种类型:增量编码器或绝对编码器。增量编码器提供脉冲序列,而绝对编码器提供绝对数字值。绝对编码器包括单圈和多圈两种类型。

TIDM-1011 参考设计主要针对通过 RS-485 线路驱动器提供数字输出的绝对编码器。TIDM-1011 支持的事务协议格式称为 T-Format。

注: 本节概述了 T-Format 协议。有关具体信息,请参阅 Tamagawa 提供的 T-Format 规范。
注: 并非 Tamagawa 生产的所有编码器都使用 T-Format 协议。请检查编码器的规格。

C2000 T-Format 编码器接口提供了控制器与编码器通信所需的物理层。此编码器接口提供 RS-485 驱动控制,以便通过编码器发送和接收数字信息。在这种情况下,T-Format 事务是从控制器发送的请求以及来自编码器的响应。从编码器接口的角度来看,一个事务可以分为 FRAME_STATES,如图 2-2 所示:

  1. 空闲:无 RS-485 活动
  2. TRANSMIT_DATA:控制器向编码器发送请求
  3. WAIT_FOR_START:等待编码器的响应
  4. RECEIVE_DATA:控制器收到编码器的响应
  5. 返回到 IDLE。

与编码器的每个事务都会重复此模式。

GUID-20221011-SS0I-GBLK-DPTC-MHLKHV03BGDM-low.svg图 2-2 T-Format 帧
注: 图 2-2 包括与 C2000 编码器接口实现相关的信息。例如,CLB 驱动 SPI CLOCK 和 TxEN 信号。

T-Format 通信协议大致分为三种类型的事务:数据读取、复位和 EEPROM 访问。每个事务都有一个由协议定义的唯一数据 ID。数据 ID 用于标识控制器通过编码器接口发出的特定请求。

表 2-2 T-Format 事务
事务类型 数据 ID 传输
读取 ID 0 旋转一圈的绝对数据
ID 1 多圈数据
ID 2 编码器 ID
ID 3 以上所有内容加上编码器错误状态
复位 ID 7 复位旋转一圈的绝对数据
ID 8 复位多圈数据
ID C 复位错误
EEPROM ID D 读取编码器的 EEPROM
ID 6 写入编码器 EEPROM

每个事务由 10 位字段组成。每个字段具有表 2-3 中所示的格式。第一个位是起始位(始终为 0),最后一个位是定界位(始终为 1)。起始位和定界位之间 8 位数据的内容取决于字段的具体类型。

表 2-3 T-Format 字段格式
位 1 位 2 位 3 位 4 位 5 位 6 位 7 位 8 位 9 位 10
内容 起始位
始终为 0
8 个数据位:最低有效位优先。
内容取决于特定字段。这 8 位数据包含在 CRC 计算中。
定界位
始终为 1

T-Format 协议定义的字段为:

    ControlField (CF) 每个请求和每个响应中的第一个字段。ControlField 包含事务的唯一数据 ID。
    StatusField (SF) 来自编码器的状态信息。
    DataFields (DFx) 来自编码器的信息。DataFields 的内容和数量取决于事务。DataFields 的示例包括编码器的 ID、位置信息和错误代码。最多可以有 8 个 DataFields。
    CRCField 数据的 8 位循环冗余校验 (CRC)。CRCField 是 EEPROM 读取或写入请求的最后一个字段。CRCField 始终是编码器响应中的最后一个字段。
    EEPROM AddressField (ADF) 要在 EEPROM 事务中读取或写入的地址。
    EEPROM DataField (EDF) 包含在 EEPROM 事务中读取的数据或要写入的数据。
注: 有关每个字段的具体内容,请参阅 Tamagawa 中提供的 T-Format 规范。

请求中使用的字段如表 2-4 所示。控制器会通过编码器接口发送请求来开始事务。请求会以包含数据 ID 的 ControlField 开始。编码器使用数据 ID 来识别所请求的确切事务。对于读取或复位请求,只需要 ControlField。在 EEPROM 读取或写入的情况下,控制器还会发送一个 EEPROM AddressField 和 EEPROM DataField(用于写入),后跟一个 CRCField。

表 2-4 T-Format 请求字段
请求类型 传输的字段
读取 ControlField
复位 ControlField
EEPROM 写入 ControlField EEPROM AddressField EEPROM DataField CRCField(1)
EEPROM 读取 ControlField EEPROM AddressField CRCField
CRC 计算包括控制、EEPROM 地址和 EEPROM 数据字段中的 8 位数据。不包括起始位和定界位。

编码器响应中使用的字段取决于特定的请求。对于读数和复位事务(表 2-5),编码器会以 ControlField 的回波进行响应,之后是 StatusField 和一个或多个 DataFields。最后,编码器会始终发送一个 CRCField。CRCField 可用作已接收数据的完整性检查。

表 2-5 用于读取和复位的 T-Format 响应字段
数据 ID 类型 控制
字段(1)
状态
字段
DataField (DF0:DF1:….DF7) + CRC (2) (3)
ID 0 读取 CF SF ABS0(4) ABS1 ABS2 CRC
ID 1 读取 CF SF ABM0(5) ABM1 ABM2 CRC
ID 2 读取 CF SF ENID(6) CRC
ID 3 读取 CF SF ABS0 ABS1 ABS2 ENID ABM0 ABM1 ABM2 ALMC(7) CRC
ID 7 复位 CF SF ABS0 ABS1 ABS2 CRC
ID 8 复位 CF SF ABS0 ABS1 ABS2 CRC
ID C 复位 CF SF ABS0 ABS1 ABS2 CRC
CF:ControlField。与请求中发送的 ControlField 匹配。
DF:DataField。最多 8 个字段,具体取决于事务。
CRCField 始终在最后使用的 DataField 之后立即传输。CRC 包括所用 CF + SF + DataFields 中的 8 位数据。不包括每个字段的起始位和定界位。
ABS:旋转一圈的绝对数据。使用 3 个字段。
ABM:多圈数据。使用 3 个字段。
ENID:编码器 ID。一个字段。
ALMC:编码器错误。一个字段

在以下数据读取示例中,控制器请求多圈数据(数据 ID 1)。参考表 2-5,响应 DataFields 对应于多圈数据 (ABM0:ABM1:ABM2)。

表 2-6 数据读取示例
请求: 数据 ID 1 的
ControlField
响应: 数据 ID 1 的
ControlField
StatusField DataField0 DataField1 DataField2 CRC

对于 EEPROM 事务,编码器会以 ControlField + EEPROM AddressField + EEPROM DataField + CRCField 进行响应,如表 2-7 所示。

表 2-7 EEPROM 读取/写入响应字段
数据 ID 申请 字段 0 字段 1 字段 2 字段 3
ID 6 写入 ControlField EEPROM
AddressField
EEPROM
DataField (1)
CRCField(3)
ID D 读取 ControlField EEPROM
AddressField
EEPROM
DataField (2)
CRCField
从编码器 EEPROM 读取的数据。
写入 EEPROM 的数据。这是请求中 DataField 的回声。
CRC 计算包括控制、EEPROM 地址和 EEPROM 数据字段中的 8 位数据。不包括每个字段的起始位和定界位。