ZHCABI8 March   2022 AM2631 , AM2631-Q1 , AM2632 , AM2632-Q1 , AM2634 , AM2634-Q1

 

  1.   摘要
  2.   商标
  3. 1引言
  4. 2运行牵引逆变器的分步指南
    1. 2.1 创建实时调试接口
      1. 2.1.1 确认 CCS 特性
      2. 2.1.2 创建目标配置文件
      3. 2.1.3 添加串行命令监视器软件
      4. 2.1.4 启动实时调试
    2. 2.2 使用 Sysconfig 配置控制外设和 ADC 中断
      1. 2.2.1 为时间基准生成 PWM
      2. 2.2.2 同步 ADC 采样和中断服务例程
      3. 2.2.3 通过 DAC 为旋转变压器激励配置 DMA
    3. 2.3 使用 MSPI 配置栅极驱动器接口
      1. 2.3.1 确认栅极驱动器的控制卡硬件配置
      2. 2.3.2 为 UCC5870 栅极驱动器配置 MCSPI
      3. 2.3.3 初始化 UCC5870 栅极驱动器
    4. 2.4 从 ADC 采样并通过 CCS 读取样本
      1. 2.4.1 寄存和启用中断
      2. 2.4.2 添加日志代码,以固定速率读取图中样本
      3. 2.4.3 在表达式和图形窗口中读取 ADC 样本
    5. 2.5 生成空间矢量 PWM 和在开环中驱动电机
      1. 2.5.1 设置 SVPWM 发生器输入
      2. 2.5.2 在图形窗口中读取 SVPWM 占空比
      3. 2.5.3 逆变器上电并在开环中旋转电机
    6. 2.6 以模拟速度闭合电流环路
      1. 2.6.1 添加变换和读取开环中的 Id-Iq
      2. 2.6.2 添加控制器,以闭合电流环路
      3. 2.6.3 读取 Id-Iq,以闭合电流环路
    7. 2.7 添加软件旋转变压器数字转换器
      1. 2.7.1 为旋转变压器硬件生成激励
      2. 2.7.2 添加旋转变压器软件
      3. 2.7.3 读取旋转变压器软件输出
    8. 2.8 以转子速度闭合速度环路
      1. 2.8.1 添加速度环路控制器
      2. 2.8.2 添加速度环路演示程序
      3. 2.8.3 从图形窗口读取电机速度
  5. 3代码迁移的简要指南
    1. 3.1 SoC 架构概览
    2. 3.2 SDK 资源概览
    3. 3.3 从 AM24 迁移代码
    4. 3.4 从 C28 迁移代码
  6. 4总结
  7. 5参考文献

引言

AM263x 是一个片上系统 (SoC),具有 Arm® Cortex®-R5F 集群和专用于实时控制的加速器。集群可以配置为双核模式或锁步模式。加速器命名为控制子系统,包括 ADC、DAC 和 PWM 等接口模块。本文以内核 0-0 为例,演示了一个 R5F 内核的特性和一个牵引逆变器的一组接口模块。此部分简要介绍 R5F 集群和控制子系统。有关 SoC 的更多详情,可参见 AM263x Sitara™ 微控制器数据表AM263x Sitara 处理器技术参考手册。有关逆变器硬件的详情,可参见经过 ASIL D 等级功能安全认证的高速牵引和双向直流/直流转换参考设计

Arm® Cortex®-R5F 集群包括两个 R5F 内核,附带 L1 缓存和紧耦合存储器 (TCM) 之类的存储器、标准 Arm CoreSight™ 调试和布线架构、集成式矢量中断管理器 (VIM)、ECC 聚合器以及支持协议转换和地址转换的各种其他模块,以便于集成到 SoC。更详细的方框图可参见 AM263x 技术参考手册。解决实时控制问题的关键在于了解缓存和 TCM 的影响。在编写程序时,可以通过链接命令文件将指令和数据分配给片上 RAM 或 TCM。在执行过程中,片上 RAM 中经常使用的指令和数据会自动进入缓存。因此,执行时间显著改善。但是,片上 RAM 中的数据直到从缓存写回后才更新。当数据在缓存中时,只能通过内核中运行的指令访问它,Code Composer Studio™ (CCS) 等集成开发环境 (IDE) 的存储器视图无法读取缓存。然而,通过在内核内部运行通用异步接收器/发送器 (UART) 的一段程序,也可以使用 CSS 读取缓存。UART 方法的详情将在下一部分中介绍。另一方面,分配给 TCM 的指令和数据保存在地址中,可随时提供给存储器视图。通常情况下,程序在缓存和 TCM 中的执行时间非常接近,而片上 RAM 中的程序执行则要慢得多。从片上 RAM 向缓存转移程序的操作需要一些时间,并导致不可预测的延迟。如果延迟对于应用要求很重要,强烈建议将应用程序存储在 TCM 中。有关 TCM 地址的详情可参见 AM263x 技术参考手册。本文中,场定向控制的中断程序和软件旋转变压器数字转换器位于 TCM 中。链接命令文件作为示例放在 CCS 项目文件夹中。

实时控制加速器继承了全球广泛使用的德州仪器 (TI) 经典 C2000 控制模块。它包括模数转换器 (ADC)、模拟比较器、缓冲数模转换器、增强型脉宽调制器 (EPWM)、增强型捕捉、增强型正交编码器脉冲、快速串行接口、Σ-Δ 滤波器模块和纵横制。有关模块的详情可参见 AM263x 技术参考手册。在直观的系统配置工具 SYSCONFIG 的帮助下,还可以通过在配置这些模块时减少对实施细节的暴露。有关 SYSCONFIG 的详情可参见 AM263x 软件开发套件 (SDK)。模块同步的关键是在 EPWM 时基部分中配置 PWM 同步输入/输出,在 EPWM 事件触发器部分中配置 ADC 转换开始 (SOC) 触发器。时基用于对齐多个 PWM 通道,而事件触发器用于同步 ADC、DMA 和中断等特性。牵引逆变器演示的 CCS 项目文件夹中有一个牵引逆变器示例。本例中设置了一个 PWM 通道,通过 DMA 和 DAC 以更高的频率触发旋转变压器激励信号更新,还使用三个 PWM 通道生成逆变器信号和 ADC SOC。这样,来自 DAC 的旋转变压器激励信号将对齐到所需的 ADC 采样相位。多个 ADC 器件可以共享同一个 SOC。也就是说,可以在多个 ADC 器件中同时采集多个样本。在一个 ADC 器件中,可以在 SOC 配置部分中配置采样序列。ADC 中断可在 INT 配置中设置。中断可以在一个 ADC 转换开始或结束时触发。有关 PWM 和 ADC 的部分简单示例可在 AM263x SDK 的“\examples\drivers\epwm”和“\examples\drivers\adc”下找到。有关 API 的更多详情,可在 AM263x SDK 的“\source\drivers”下找到。头文件的很多细节都在注释中。

前面提到,在开发过程中需要考虑一些主题,例如 SoC 架构和 SDK API。有关它们的更多详情,可参见 AM263x 技术参考手册和 SDK 软件包。在后面部分中,本文将重点介绍如何使用示例项目为框架,以加快开发牵引逆变器,以及如何将现有项目代码迁移到 AM263x

框架包括图 1-1 中突出显示的资源,并内置到图 1-2 中的牵引系统。TIDM-02009 是牵引逆变器参考设计硬件。它包括电源模型、栅极驱动器、电流和电压采样、旋转变压器模拟前端以及一些连接接口。电机包括接受正弦波激励并发送调制反馈、以检测位置的旋转变压器。场定向控制使用集群 0 内核 0 实现。ADC INT1 的实时控制部分将分配给 TCM,以精准确定执行时间。

图 1-1 牵引框架资源
图 1-2 牵引系统图