搜索
查看: 9766|回复: 22

[原创] No.7 使用STM studio和Jscope查看变量波形

[复制链接]

该用户从未签到

20

主题

1628

帖子

5

蝴蝶豆

论坛元老

最后登录
2022-6-7
发表于 2018-9-5 18:41:25 | 显示全部楼层 |阅读模式
调试电机不能看到某些变量的变化趋势让我觉得不是很舒坦,于是今天安装上了STM studio,在这之前我一直用的是Jscope。

工程是workbench5.1.3生成的,代码是用No.5 电机套件实验任务3&旋钮控制转速这篇文章的
首先是使用STM studio来查看一些内部变量,结果如下:

ST studio 查看波形.png
颜色挺鲜艳的,不过我觉得不是很好用,只能框选缩放,不能通过鼠标滚轮来操作。
解释一下图里面的内容吧,其实在图片底部都有图例
1.蓝色是我在代码里添加的实时速度变量realspeed,可以看到整个实验过程的速度变化趋势。
2.灰色是finalspeed,这个函数MC_ProgramSpeedRampMotor1的第一个参数对应的就是finalspeed,和真实速度相差6倍,所以在设置的时候我们的设置值要除以6.
3.橙色是Iqdref变量的第一个组件,q轴电流参考值,在启动阶段可以看到q轴电流参考值很大,这是因为启动方式是满转矩方式启动,运行中当速度超过某个值后电流参考值设置到最大,这时候处于电流环输出饱和状态了。
4.墨绿色是Iqdref变量的第二个组件,d轴参考值,从图中可以看到这个值一直是处于0状态,这是因为我们运行的FOC不需要对磁链进行调整,在某些运用中如果需要电机转速高于额定转速时,则需要调节d轴电流,进行弱磁升速。
5.紫色是Iqd变量的第一个组件,q轴电流实际值,从图中可以看出在启动和低速阶段q轴电流能很好的跟踪到参考值的变化,当转速较高时q轴电流开始出现震荡。
6.绿色是Iqd变量的第二个组件,d轴电流实际值,从图中可以看到d轴电流在零值附近震荡得更加厉害,几乎贯穿了整个实验过程,这个现象是不可避免的。

由于是初次使用STM studio,所以我只保留了一张图,下面是我调试过程中使用Jscope生成的截图:
Jscope查看实验速度与电流波形.png
查看dq轴电流波形与速度之间的关系,结论和使用STM studio时一致。
启动时q轴电流大很大,满转矩启动。
Jscope查看波形当转速超过12000rpm时.png
展开看可以发现,当速度超过12000转时电流q轴电流震荡非常厉害,而d轴电流一直处于震荡状态,需要通过调节PI参数来抑制这个现象,但是目前还不能完全消除。
jscope查看角度交直轴电流速度关系.png
这张图中是电机启动阶段dq轴电流波形,q轴电流从零上升到最大值需要的时间大约是1s,我在代码中还没找到在哪里修改这个参数,这个时间太长了,开环强拖环节时间已经减少到0.5s。从图中看得出来,满转矩启动后维持较低转速运行的电流其实是很小的。

Jscope查看角度电流速度波形.png
这张图查看的变量是alpha-beta轴电流与给定角度之间的关系。

Jscope查看切入闭环细节.png
满转矩启动切入观测器角度细节图。

今天的分享就到这里,大家有什么问题可以留言讨论。


回复

使用道具 举报

该用户从未签到

64

主题

909

帖子

76

蝴蝶豆

论坛元老

最后登录
2021-9-5
发表于 2018-9-5 20:25:02 | 显示全部楼层
非常详细,不错.
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2017-12-6 11:47
  • 签到天数: 1 天

    [LV.1]初来乍到

    49

    主题

    3724

    帖子

    429

    蝴蝶豆

    论坛元老

    最后登录
    2021-8-7
    发表于 2018-9-5 23:08:00 | 显示全部楼层
    很不错,没想到功能这么强大
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20

    主题

    1628

    帖子

    5

    蝴蝶豆

    论坛元老

    最后登录
    2022-6-7
     楼主| 发表于 2018-9-5 23:16:45 | 显示全部楼层
    toofree 发表于 2018-9-5 23:08
    很不错,没想到功能这么强大

    工欲善其事必先利其器
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5

    主题

    21

    帖子

    0

    蝴蝶豆

    初级会员

    最后登录
    2021-5-27
    发表于 2018-11-27 13:18:34 | 显示全部楼层
    我手头只有stlink,JSCOPE肯定是用不上了。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20

    主题

    1628

    帖子

    5

    蝴蝶豆

    论坛元老

    最后登录
    2022-6-7
     楼主| 发表于 2018-11-27 14:49:20 | 显示全部楼层
    bvtheworld 发表于 2018-11-27 13:18
    我手头只有stlink,JSCOPE肯定是用不上了。

    STlink是可以刷成Jlink的,过程是可逆的,参考这篇帖子【STM32电机培训】——9、Nucleo板上使用J-Scope工具例程
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5

    主题

    21

    帖子

    0

    蝴蝶豆

    初级会员

    最后登录
    2021-5-27
    发表于 2018-11-27 16:13:20 | 显示全部楼层
    是不是可以用MCDAC功能加示波器可以实现同样的作用?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20

    主题

    1628

    帖子

    5

    蝴蝶豆

    论坛元老

    最后登录
    2022-6-7
     楼主| 发表于 2018-11-27 19:20:00 | 显示全部楼层
    bvtheworld 发表于 2018-11-27 16:13
    是不是可以用MCDAC功能加示波器可以实现同样的作用?

    可以的,DAC调试对于调试还是很方便的,对于没有DAC的MCU这些工具就很重要了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    1

    主题

    7

    帖子

    0

    蝴蝶豆

    初级会员

    最后登录
    2020-7-16
    发表于 2019-4-9 08:22:31 | 显示全部楼层
    ST的这种无感启动,开环切闭环,要做什么处理?直接切吗?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20

    主题

    1628

    帖子

    5

    蝴蝶豆

    论坛元老

    最后登录
    2022-6-7
     楼主| 发表于 2019-4-9 09:53:04 | 显示全部楼层
    asnowgober 发表于 2019-4-9 08:22
    ST的这种无感启动,开环切闭环,要做什么处理?直接切吗?

    有判定条件的,达到一定转速,观测器能找到转子位置后才能切,某些电机转速低的时候反电动势太小,观测器无法收敛就不能低速切入闭环
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

    GMT+8, 2024-5-13 04:42 , Processed in 1.185243 second(s), 42 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表