0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

博文 | 基于灵动微 MM32SPIN560C 电机调试的方法

大大通 2022-09-22 17:31 次阅读

简介

本博文基于世平集团的灵动微 MM32SPIN560C 无刷电机开发板在用户调试电机时,描述在用户拿到电机时从硬件至软件的调试过程。

1 硬件平台

0871caa4-39f3-11ed-b180-dac502259ad0.png

灵动微 MM32SPIN560C 无刷电机开发板方案链接:
https://www.wpgdadatong.com/solution/detail/37060

1.1 MM32SPIN560C 带有栅极驱动器的 MCU 简介

MM32SPIN560C 使用高性能的 Arm Cortex-M0 为内核的 32 位微控制器,最高工作频率可达 96 MHz。
128KB Flash,8KB SRAM
2 个12 位的 ADC,采样速度高达 3 Msps。
5 个通用定时器、2 个针对电机控制的 PWM 高级定时器。
1 个 I2C 接口、2 个 SPI 接口和 3 个 UART 接口。
针对电机应用内置 3 个运放,3 个比较器
预驱工作电压高达 60 V。

2 电机调试方法及流程

2.1 矢量控制框图
08c06880-39f3-11ed-b180-dac502259ad0.png

当我们拿到 MM32SPIN560C 开发板与电机时,我们的应对框图中的模块一一调试,以达到最佳效果 。

2.2 验证三相 PWM & ADC 触发采样时间

1、不外接电机,使用高级定时器输出 6 路互补的 PWM ,改变占空比,查看输出波形是否正确。
2、不外接电机,利用 ADC 中断使 LED 翻转 ,使用示波器查看 PWM 下管导通时,ADC 中断触发 LED 的翻转的跳变沿应在下管导通期间内的中点。

2.3 测试相电流采样

1、不接电机,ADC 采样相电流,ADC 的采样值应为硬件所设计偏移电压值,此时值应趋于稳定。
2、接上电机,将 U 相占空比设置为 5%,V、W 相设置为 0 ,用示波器或万用表测量采样电阻,此时应该有电压值,并用 ADC 读取 Ia、Ib、Ic 的电流值,此时 Ia 相电流应为正,Ib、Ic 相电流应为负,如若不对,采样相序有问题。


2.4 调试 SVPWM 模块

通过 SVPWM 模块可以把 FOC 的控制结果转换为定时器 6 个通道的占空比,从而驱动三相全桥控制定子绕组产生旋转磁场,拖动转子旋转。验证 SVPWM 模块的功能,需要使用反 park 变换和 SVPWM 模块,产生开环的旋转磁场。

1、将 MM32SPIN560C 代码中的 FOC 部分注释掉,只保留反 park 变换函数和 SVPWM 函数。
2、反 park 变换中输入的参数有三个,Angle、Ud、Uq。
① 首先我们设置 Angle,假设我们的电机为 2 对极,PWM 频率为 20 Khz,我们想使电机达到 500 Rmp,则 Angle = (2*500*360)/20000 = 0.3° 则每次中断角度自增 0.3°,在程序中我们用到的 Q15 格式的定标是 Π 为基准值,则我们在程序中设定 Angle = (0.3°/180°)*32767 = 54(标幺值)。
② Ud = 0。
③ Uq 我们在设定时不应超过 (Udc/√3) ,假设母线电压为 24V,程序中的标幺化计算则为 Uq = ((24V /√3) / 24V )*32767 = 18918(标幺值),那么我们可以根据电机的 KV 值去计算电机在 500 转时的给定电压。
④ 将电机接入,微调 Uq 的给定值,使电机稳定的旋转起来,再次去观察 Ia、Ib、Ic 的电流波形,应为连续的三相相差 120° 的正弦波形。


2.5整定电流环 PID 参数

1、将 MM32SPIN560C 代码中的 clark 变换、park 变换、PID 控制器加入。
2、将电机在 2.4 小结的状态中继续旋转,观察 Id、Iq 的波形,应该是两条直线(略带弯曲正常),如果为正玄,则 Ia、Ib、Ic 相电流顺序与与真实 U、V、W 相反了。
3、当前的系统输入参数有三个,Iq_Ref、Id_Ref、Angle ,我们可以先整定 Iq 的 PID 参数。
① 将 Id 的 PID 参数设置为 0。
② 在程序中的设定 Iq_Ref,假设 Iq_Ref 设定在 0.5A,相采样电阻阻值为 50 毫欧,运放的放大倍数为 5,运放的偏执电压为 2.5V,ADC 的满量程为 5V。则 Iq_Ref = (0.5A/ (5V/2/5/0.05R)) * 32767 = 1638。
③ 运行电机,观察反馈的 Iq 与 Iq_Ref 的误差,调节 Iq 的 PID 参数 Kp 、Ki ,使 Iq 收敛到 Iq_Ref 上。
④ 对于表贴电机 Iq 的 PID 参数可以一一带入 Id。


2.6 角度闭环

通过传感器或观测器将观测 Angle 值,与自增 Angle 值相同。

1、将 MM32SPIN560C 代码中的 SMO、PLL 模块加入,设定 Id_Ref 、Iq_Ref、自增 Angle、测量 Rs、Ls、极对数填入 SMO 参数中。
2、观察 Id、Iq、观测 Angle、自增 Angle 的波形。
① Id、Iq 接近于 Id_Ref、Iq_Ref 。
② 观测 Angle、自增 Angle 两个波形应该都是幅值相同的三角波,如果观测 Angle 的变化方向与自增 Angle 不同,那么观测 Angle 的输出角度值需要反向。如果他们两者的波形并不重合,在水平轴上存在偏差值,那么我们需要修改 SMO、PLL 的整定参数。


2.7 验证电流环闭环

给定的 Iq_Ref 的正负会使电机正反转。并且在 ±Iq_Ref 数值一致时,电机的正反转速度也应该相同,( Id 的作用是把转子固定在当前角度,不让转子动, Iq 的作用产生扭矩,吸引着转子旋转)。

1、将 Iq_Ref = 1638 ,Id_Ref = 0。由于滑膜观测器在低速时观测角度不佳,我们在启动时应开环带转到一定速度再切入角度闭环。
2、切入角度闭环后,观察 Ia、Ib、Ic、波形应为连续的三相相差 120° 的正弦波形,若 Ia、Ib、Ic 曲线发生畸变,不是正弦波形,则需要降低比例及积分作用。


2.8 速度闭环

在一般的应用场景中不考虑对电机进行弱磁控制,会将 Id_Ref 设置为0,则速度的 PID 整定后的输出参数为 Iq_Ref, 输入的参数为 Rmp。

1、首先将速度 PID 的输出 Iq_Ref 限幅在可控的安全电流内,启动电机,调节 Kp、Ki 比例使速度实际值与速度参考值接近。
2、观察速度 PID 的输出 Iq_Ref 与反馈的 Iq 波形,调节速度参考值,观察 Iq_Ref 变化后反馈的 Iq 波形的收敛速度,微调电流环 Kp、Ki 使其在合适的范围内。同方法再调节速度实际值与速度参考值的收敛速度。使电机在实际工作中可以得到快速响应。


3、总结

本文介绍了 MM32SPIN560C 开发板在调节不同的电机时,如何分析并整定电机参数,调节各个模块之间的耦合,使其电机达到最佳的工作状态。如遇到无法解决的调试问题可以联系我们邮箱:atu.sh@wpi-group.com ,我们将在收到后及时给予您回复。


4、参考文献

(1) MM32SPIN560C Datasheet

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 电机
    +关注

    关注

    139

    文章

    8315

    浏览量

    142121
收藏 人收藏

    评论

    相关推荐

    STEVAL-SPIN3202如何使用SDK5.x控制电机

    我现在使用的板子是STEVAL-SPIN3202,电机使用的是BR2804-1700Kv,已经通过workbench生成的代码让电机转起来了,想请教一下,接下来该学习些什么去控制电机
    发表于 04-17 06:49

    如何恢复灵动单片机被占用后的下载口

    在自己另一个DapLink下载器下,配合灵动官网下载的MM32 Link Utility工具,擦出了芯片,恢复为出厂状态。之后就可以在Keil中继续下载程序了。
    发表于 01-12 09:24

    灵动MM32SPIN160C微控制器方案

    灵动MM32SPIN160C采用高性能为内核为M0的32位微控制器,5V输出的LDO稳压器、三组具备有自举二极管的N通道半桥栅极驱动器。
    的头像 发表于 01-09 10:41 424次阅读
    <b class='flag-5'>灵动</b>微<b class='flag-5'>MM32SPIN</b>160C微控制器方案

    电流探头在电机调试中的具体测试方法和操作步骤

    电流探头在电机调试中的重要性 电流探头在电机调试中的具体测试方法和操作步骤  电流探头在电机
    的头像 发表于 01-08 15:40 265次阅读

    电机控制调试助手怎么用

    电机控制调试助手是一种帮助用户进行电机控制调试的辅助工具。它可以提供实时监测、参数设置、故障诊断和历史数据分析等功能,为用户提供便捷、高效的电机
    的头像 发表于 12-28 13:57 353次阅读

    伺服电机调试和选型方法

    伺服电机的选型和调试是实现精准控制和提高工业自动化效率的关键步骤。正确的选型和调试可以显著提升机械系统的性能,减少维护成本,延长设备使用寿命。以下是伺服电机
    的头像 发表于 12-25 14:34 362次阅读

    基于灵动MM32 MCU的便携式血氧仪应用

    基于灵动MM32 MCU的便携式血氧仪应用
    的头像 发表于 10-24 15:31 272次阅读
    基于<b class='flag-5'>灵动</b><b class='flag-5'>MM</b>32 MCU的便携式血氧仪应用

    灵动MM32全系列产品选型手册

    电子发烧友网站提供《灵动MM32全系列产品选型手册.pdf》资料免费下载
    发表于 09-20 14:46 0次下载
    <b class='flag-5'>灵动</b>微<b class='flag-5'>MM</b>32全系列产品选型手册

    MM32SPIN0230无感方波硬件参考设计

    MM32SPIN0230无感方波硬件参考设计。       MM32SPIN0230系列是灵动MindSPIN旗下高性能的单电机控制产品,采用Cortex-M0内核,集成了运动控制所需
    的头像 发表于 09-15 16:41 395次阅读
    <b class='flag-5'>MM32SPIN</b>0230无感方波硬件参考设计

    低成本32位单片机电动工具无感方波控制方案

    KeilC 代码大小(完整方案)   MM32SPIN0230电动工具专用板 芯片介绍 MM32SPIN0230系列是灵动微MindSPIN旗下高性能的单电机控制产品,采用Corte
    的头像 发表于 08-30 15:20 507次阅读
    低成本32位单片机电动工具无感方波控制方案

    电机控制SOC产品MM32SPIN030C

    MM32SPIN030C是灵动微MindSPIN旗下高性能的单电机控制SOC产品,采用Cortex-M0内核,集成了电机控制所需的专用模拟外设,包括12位高精度ADC、2路模拟比较器C
    的头像 发表于 05-19 17:38 402次阅读

    冰箱压缩机主控方案MM32SPIN0230

    MM32SPIN0230内部集成了具有灵动微特色的电机控制功能:高阶4路互补PWM、注入功能的高精度ADC、轨到轨运放、轮询比较器、32位针对霍尔传感器的捕获时钟、以及硬件除法器和DMA等电机
    的头像 发表于 05-19 17:29 391次阅读

    灵动发布入门级MM32G0001系列MCU

    灵动股份推出全新超值型 MM32G0001 系列 MCU。2023 年初,灵动首次发布了其主打高性价比的 MM32G 系列,目前已陆续推出了 G0140,G0160 和 G5330 系
    的头像 发表于 05-14 10:30 1101次阅读
    <b class='flag-5'>灵动</b>发布入门级<b class='flag-5'>MM</b>32G0001系列MCU

    国产单电机控制32位电机MCU灵动MM32SPIN0230

    MM32SPIN0230内部集成了具有灵动特色的电机控制功能:高阶4路互补PWM、注入功能的高精度ADC、轨到轨运放、轮询比较器、32位针对霍尔传感器的捕获时钟、以及硬件除法器和DMA等电机
    的头像 发表于 05-12 16:22 790次阅读
    国产单<b class='flag-5'>电机</b>控制32位<b class='flag-5'>电机</b>MCU<b class='flag-5'>灵动</b>微<b class='flag-5'>MM32SPIN</b>0230

    灵动股份推出基于STAR-MC1的MM32G5330

    继今年2月灵动股份重磅发布了MM32G新系列MCU产品——基于Arm Cortex-M0内核的G0140和G0160后,灵动再次推出基于“星辰”STAR-MC1内核的高性能MM32G5
    的头像 发表于 05-08 14:44 862次阅读
    <b class='flag-5'>灵动</b>股份推出基于STAR-MC1的<b class='flag-5'>MM</b>32G5330