MCSDK5.4.8电机库:实现双电阻采样方法的改造教程

需积分: 5 4 下载量 134 浏览量 更新于2024-08-03 收藏 580KB PDF 举报
本文主要讨论了如何在基于ST MCSDK5.4.8的电机驱动库中添加对双电阻电流采样的支持,以扩展库的功能适应更多的电机控制应用场景。在传统的电机控制中,常见的电阻采样方式包括单电阻、双电阻和三电阻,其中MCSDK5.4.8库支持单电阻和三电阻。双电阻采样方式的独特之处在于,它通过测量两相(如Ia和Ib)电流,利用基尔霍夫定律推算出第三相的电流,这对于无刷电机的矢量控制(FOC)特别有用。 操作流程分为三个步骤: 1. 在MCSDKworkbench中创建工程,选择基础设置时应配置为双电阻采样,这将会影响到电流采样信号的配置。需要注意的是,原始工程是基于三电阻采样,所以在设置时需要调整相应的参数。 2. 复制必要的文件:针对STM32G43RBT6平台,需要复制r3_2_g4xx_pwm_curr_fdbk.c文件,并将其重命名为r2_2_g4xx_pwm_curr_fdbk.c。由于原始库中的这些函数定义为__weak,这意味着我们可以安全地对其进行覆盖,而不会影响到库的其他部分。 3. 修改关键函数:在新复制的文件中,重点修改两个函数:一个用于读取静态电流(如__weakvoidR3_2_CurrentReadingPolarization(PWMC_Handle_t*pHdl)),另一个用于获取运行过程中的三相电流(如__weakvoidR3_2_GetPhaseCurrents(PWMC_Handle_t*pHdl, ab_t*Iab))。这两个函数的修改将是实现双电阻采样的核心,它们需要被重新编写,以便正确处理两相电流的数据并根据基尔霍夫定律计算出缺失的那一相电流。 本文提供了一种技术性的指导,帮助开发人员在现有的MCSDK5.4.8库基础上,增加对双电阻电流采样的支持,这对于那些需要高精度电流控制或使用特定电流采样策略的电机驱动系统设计来说是一项重要的实用技巧。通过这些步骤,开发者能够灵活地定制电机驱动库以适应不同的应用场景需求。