[LKS32 硬件] 【LKS32MC081评测】02.初次尝试凌鸥开发板驱动24V电机

[复制链接]
183|7
手机看帖
扫描二维码
随时随地手机跟帖
GrandLine|  楼主 | 2022-6-19 07:58 | 显示全部楼层 |阅读模式
搭建环境
手上正好有一个带霍尔传感器的BLDC-DC24V的电机,结合LKS_EVB_MCU081_V2.0核心板和LKS_EVB_MVPOWPRE_V4.0电机驱动板,我们来尝试让电机转动起来……除了准备电机和开发板之外,我们还准备了一个稳压输出电源,最大输可出30V直流电压和5A的电流,完全满足了当前的使用要求;此外还需要一个J-LINK工具,它除了用来下载/调试程序之外,我们在本章节还需要借住SEGGER的J-Scope软件搭配J-LINK工具用来监测系统运行的数据曲线。

LKS_EVB_MVPOWPRE_V4.0电机驱动板的输入电压范围为DC20V~60V,需要注意的是当输入电压达到DC60V时,功率需要控制在500W以下。根据板载MCU内的程序,可以实现无感方波、有感或无感FOC控制,支持按键启停、和模拟电位器调速功能。底板功能示意图如下所示:
底板.png

底板上有3个跳帽选择,它们是用来选择电流采样模式的,跳左端为MOS内阻采样方式,跳右端为三电阻采样方式;开发板默认是跳在右端采用的三电阻采样的方式来进行电流采样的,使用三电阻采样方式需要根据实际采样增益修改匹配电阻值哦。

接下来我们进行硬件连接:将J-LINK通过SWD接口连接到LKS_EVB_MCU081_V2.0核心板上,需要注意连接仿真器的正负极、CLK和DIO是否对应、将LKS_EVB_MCU081_V2.0核心板插入到LKS_EVB_MVPOWPRE_V4.0电机驱动板上,将电机的UVW三相线连接到LKS_EVB_MVPOWPRE_V4.0电机驱动板的UVW三个连接端子上,将电机的HALL接口连接到LKS_EVB_MVPOWPRE_V4.0电机驱动板的HALL端子上,将稳压电源的输出连接到LKS_EVB_MVPOWPRE_V4.0电机驱动板对应的VCC和GND端子上;硬件连接图如下所示:
硬件环境.jpg

在硬件连接完成后,我们就可以上电烧录程序,转动电机啦……


官方例程
官方提供了LKS08x_FOC_SensorLessV4.24示例程序,在我们打开软件工程将程序下载到开发板之前需要先确认一下下载工具等配置:点击KEIL MDK工具栏上的Options for Target...按钮,在弹出对话框窗口的Debug选项卡下,我们这边选择右侧栏的Use J-LINK/J-TRACE Cortex选项配置;接着点击Settings按键,在弹出窗口中的Debug选项卡中,将Port选择为SW模式,此时如果J-LINK正连接着开发板的话,在SW Device窗口中会显示检测到了芯片的信;在Flash Download选项卡中将Download Function中设置项修改为Erase Sectors,这样在下载程序时进行芯片擦除FLASH操作的时候会按照下载文件的大小进行按需擦除,相对于Erase Full Chip选项来说会节省些下载的整体时间,然后勾选上Reset and Run选项,这样在程序下载完成后,芯片就会自动复位然后运行,不必再手动的让芯片运行,再说了这个板子上也没找到RESET按键,所以这个勾选项还是有必要的;最后就是确认一下Programming Algorithm程序下载算法是否选择正确,在我解压后打开软件工程查看这个选项配置时可是空的哦,这样就会导致在我们下载程序的时候就提示错误,所以这边我们需要根据相应的芯片选择相符的下载算法;在这些配置检查完成后,我们就可以编译工程,下载程序到开发板啦……如下图所示:
调试器选择.png 下载算法2.png

对于KEIL工程中的程序,官方还是以LIB的形式提供的;在KEIL工程划分了5GROUP分组,分别是AppFunctionKernel_CodePeriph_DriverRTT_DebugInclude;其中在Kernel_Code中包含了LKS08x_FluxOBS_Hall_V4p2.lib封装库文件,包含了电机控制算法实现的核心代码;我们可以通过Include中的function_config.hhardware_config.hMC_Parameter.h3个文件来配置功能、硬件和电机运行参数……通过对参数的调节,来使电机平稳运行起来。


SEGGER J-Scope监测数据
在程序中我们看到使用了SEGGER_RTT功能进行监控调试,当前使用的是6.30b版本,而我电脑上安装的驱动程序是SEGGER-J-LINK V7.66b版本,所以为了可以正常使用/兼容这个功能,我们需要将C:\Program Files\SEGGER\JLink\Samples\RTT\SEGGER_RTT_V766b.zip文件解进行压来,将工程目录中RTT文件夹下的6.30b版本程序替换成7.66b版本的程序;在替换完成后,我们还需要将原先实现的功能或者定义的变量给移植过来:在SEGGER_RTT.c文件中定义bRttBuf数组变量、在SEGGER_RTT.h文件中做变量外部调用声明,这样就完成了,我们就可以通过JScope来监测运行时的变量值了……当然我们直接使用高版本的软件来打开低版本的工程也是兼容的,这边看个人习惯吧……

我们打开SEGGER J-Scope V7.66b软件,点击菜单栏File->Open Project...在弹出的窗口中,我们选择工程目录中RTT文件下的LKS08x_FOC_SensorLessV3.6.jscope工程文件,点击打开……有红绿蓝3个监控数值,通过程序中的注释得知,这3项目分别为开环角度、观察器角度和U相电流角度,如下图所示:
J-Scope.png


电机转动视频连接
https://www.bilibili.com/video/BV19a411s7mu/?vd_source=c2d3413b74687345dfc8205a8d735598


测试运行、问题反馈
我们使用官方提供的示例程序下载下载到开发板,使用默认的电机配置参数,在实际转动电机的过程中,并不顺利;存在电机无法启动就已经触发限流的情况、在通讯模拟电位器调节电机转速时,会出现失速的现象;还好多尝试几次后,也有能够正常运转起来的……但在启动的时候,通过波形也可以看出,会存在不小的振动/抖动的情况,所以接下来需要好好研究一下控制、配置参数,争取让电平运行得平稳些……现在是在电机运行过程中使用J-Scope软件抓取的数据曲线波形,看看哪位大神可以帮忙分析一下,电机启动不成功时问题现象缘由,感谢!!!

正常启动监测数据波形
正常启动.png

正常运行监测数据波形
正常运行.png

启动异常监测数据波形
启动异常0.png 启动异常1.png 启动异常2.png


附件
官方示例工程: LKS08x_FOC_SensorLessV4.24.zip (2.79 MB)

使用特权

评论回复
carpsnow| | 2022-6-22 20:35 | 显示全部楼层
这个波形是怎么采集的,
需要什么装备

使用特权

评论回复
xld0932| | 2022-6-23 08:31 | 显示全部楼层

使用特权

评论回复
GrandLine|  楼主 | 2022-6-23 08:33 | 显示全部楼层
carpsnow 发表于 2022-6-22 20:35
这个波形是怎么采集的,
需要什么装备

使用J-LINK调试时,肯定安装了J-LINK的驱动,随之安装的目录下面有一个J-Scope的软件;打开这个软件,在MCU运行的时候,保持SWD/JTAG下载线处于连接状态,打开官方提供的J-Scope工程,点击运行J-Scope就可以看到MCU传过来的数据了;

使用特权

评论回复
呐咯密密| | 2022-6-23 16:18 | 显示全部楼层
大佬给个 J-Scope软件呗,官网下载不到了,我的旧版连接会卡死

使用特权

评论回复
xld0932| | 2022-6-23 21:36 | 显示全部楼层
本帖最后由 xld0932 于 2022-6-23 21:38 编辑

使用特权

评论回复
GrandLine|  楼主 | 2022-6-23 21:39 | 显示全部楼层
呐咯密密 发表于 2022-6-23 16:18
大佬给个 J-Scope软件呗,官网下载不到了,我的旧版连接会卡死

这边有我常用的一些版本,你看看需要哪个
https://pan.baidu.com/s/1a1SZuBu6I6jrSy6_8HkqMA
提取码:cw65

使用特权

评论回复
呐咯密密| | 2022-6-24 09:24 | 显示全部楼层
GrandLine 发表于 2022-6-23 21:39
这边有我常用的一些版本,你看看需要哪个
https://pan.baidu.com/s/1a1SZuBu6I6jrSy6_8HkqMA
...

谢谢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则