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

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

3天内不再提示

电机库使用入门(一)

先楫半导体HPMicro 2024-07-02 08:17 次阅读

HPM_MCL是先楫半导体开发的支持基于传感器电机控制应用和无传感器的电机控制应用的电机控制库。对于如何使用先楫电机库,各位可能会有一些疑问,所以开此专栏,介绍先楫电机库的使用方法。

开 篇

整个专题我们主要以使用为主,过程中穿插讲述一下基本的概念,方便新入门的同学阅读,对基础知识比较了解的同学可以跳过这一部分。我们会按照有感foc,无感foc,硬件电流环这样的顺序来进行。过程中大家对哪个部分有兴趣可以留言,我们可以详细展开聊聊。文章中如有疏漏部分,欢迎大家及时指正。

先楫电机库支持特性

FOC

6-step

电流环路

速度环路

位置环路

硬件电流环路

DQ轴解耦

死区补偿

角度补偿

无传感器滑模

无传感器过零

无传感器高频注入

步进电机矢量控制

FOC(Field Oriented Control,场定向控制)


FOC技术的优点:

FOC能够优化电机的运行,降低能耗,提高效率。

通过精确控制电流,可以实现平滑且快速的扭矩响应。

低噪音和振动。

主要由如下几个部分组成:

1.坐标变换

三相电流abc到dq变换:电机的三相定子电流(a、b、c)在静止坐标系下,通过Clark变换(从三相静止坐标系到两相静止坐标系αβ)和Park变换(从两相静止坐标系到两相旋转坐标系dq),被转换为两相旋转坐标系下的电流分量(d、q)。其中d轴电流对应于励磁电流,q轴电流对应于转矩电流。


2.dq坐标系的目的

在dq坐标系中,通过独立控制d轴和q轴电流,可以实现对电机磁通和转矩的独立调节。通常,d轴电流被设定为零或维持在一个恒定值,以减少铜损,而q轴电流则根据所需的转矩进行调整。


3.位置

为了准确地控制电机,需要知道转子的位置。可以通过编码器、霍尔效应传感器或其他传感器提供,或者在无传感器FOC中,通过估算算法来实现。


4.SVPWM

SVPWM是功率开关元件组成的特定开关模式产生的脉宽调制波,能够使输出电流波形尽可能接近于理想的正弦波形。他的电压波形是马鞍波的形式。

根据FOC算法计算出的参考电压矢量,并判断所在扇区。

计算矢量作用时间。

计算桥臂导通时间。

先楫电机库的FOC部分整体框架

如下图simulink模型所示:

7eafaf28-3808-11ef-a655-92fbcf53809c.png

使用的公式如下:

• Clark变换

7edb1d8e-3808-11ef-a655-92fbcf53809c.png

• Park变换

7ef70f58-3808-11ef-a655-92fbcf53809c.png

• invPark变换

7f11cffa-3808-11ef-a655-92fbcf53809c.png


我们在这一章节中只是抛出最终结果来使用,SVPWM部分后边会有专门的章节展开来讲。

使用官方提供的DEMO

作为先楫电机库使用入门的第一个章节,我们主要介绍如何快速使用官方提供的demo驱动一个永磁同步电机。这一节主要进行有感控制,使用bldc_foc例程来进行说明。该例程支持了上文提到的如下特性:

FOC

电流环路

速度环路

位置环路

硬件电流环路

死区补偿

角度补偿

DQ轴解耦

准 备

要运行一个电机demo需要准备一些外围设备,下面会列出具体的设备和要求,方便用户自行购买相关设备。同时建议本次入门内容最好使用官方推荐的设备。


开发板

大部分的先楫开发板都支持电机接口,下面列出具体型号

HPM6750evk

HPM6750evk2

HPM6750evkmini
(注意:此开发板应当搭配一个转接板才能使用,型号为HPM6750EVKMINI-TO-Motor Rev.A

HPM6300evk

HPM6200evk

HPM5300evk

HPM6e00evk


电机驱动板

先楫半导体提供了电机驱动板型号为 DRV-LV50A_MP1907,用户也可以根据引脚定义设计自己的驱动板,只要符合如下的引脚定义即可。

7f224d12-3808-11ef-a655-92fbcf53809c.png

如果使用官方提供的驱动板,需要关心如下几个插针的连接情况:

J10 需要使用跳冒连接

J6、J7、J12用来选择给到电机接口2、4、6引脚的信号是电压值还是hall传感器的值,我们进行有传感器操作时,需要把J6、J7、J12连接到HU、HV、HW。我们本次使用的demo不使用hall传感器,所以无论如何连接均可。

电 机

先楫半导体使用的电机型号为雷赛智能 BLM57070-1000,其他型号电机需要满足如下特性,如果不满足这些特性可能需要修改代码,但是如果电机缺少一些特性则可能导致某些依赖这些特性的demo无法使用。

永磁同步电机

极对数为2

输入电压24V

带有ABZ编码器,差分信号输出,1000线

带有HALL传感器,60度角度差

电机和电机驱动板之间使用DP-15接口,不是此接口的电机需要飞线连接,接口定义如下:

7f3bc1f2-3808-11ef-a655-92fbcf53809c.png

电 源

一个24V的稳压电源,提供的电流根据电机决定,先楫官方使用的电机需要可以提供3A电流的电源


操 作

以官方使用的开发板、驱动板和电机进行说明。

连接开发板到电机驱动板,连接电机到电机驱动板,连接电源到电机驱动板,不要给24V上电。下图是6750evkmini连接后的样子:

注意一些特殊的开发板,在开发板和电机demo的readme也会描述这种情况:

- hpm6750evk需要通过拨码开关选择pwm为输出模式。

- 如果开发板的参考电压是通过跳冒选择的,需要确认有一个参考电压被选择。

7f57c938-3808-11ef-a655-92fbcf53809c.png

对于和6E00EVK这种类似的引脚较多的开发板,应该确认好丝印和电机驱动板一致后插入:

8028bdc2-3808-11ef-a655-92fbcf53809c.png

按下图所示编译foc程序

8048fb28-3808-11ef-a655-92fbcf53809c.png

使用segger ide编译程序并烧录到MCU,注意Boot Pin的配置,此时程序会停在main函数入口

上电24V电源,电源电流不会超过 100ma,如果超过这个电流,请检查线路是否短路

此时运行程序,电机会先抖动一下,进行传感器的对中操作,因为采用拖动的方式进行,所以此时不要给电机施加过大负载,大约1s后完成操作,电机以20r/s的速度运行。

此时串口会有如下输出

8079cf1e-3808-11ef-a655-92fbcf53809c.png

Location mode 是位置模式,也就是会使能位置环路
Speed mode 是速度模式,仅使能速度环路


如果选择速度模式,可以在40r/s - -40r/s之间调整速度大小,支持小数输入。

如果选择位置模式, 输入为整数,最大支持32bit的数据,4000代表电机正转1圈,8000为正转两圈,-4000为电机反转1圈,-8000为反转2圈。

结 语

本文我们首先了解了一下foc控制的基本原理,然后介绍了如何使用先楫官方demo控制一个永磁同步电机。


下一篇文章我们会介绍

一个特性和官方电机不同的永磁同步电机在修改了哪些代码和配置信息后可以把这个电机运行起来。

展开阐述SVPWM是如何实现的,以及它和SPWM的区别。

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

    关注

    3495

    文章

    1760

    浏览量

    265876
  • 电机库
    +关注

    关注

    0

    文章

    6

    浏览量

    2273
  • 先楫半导体
    +关注

    关注

    9

    文章

    201

    浏览量

    1889
收藏 人收藏

    评论

    相关推荐

    电机库4.0怎样使用内部晶振?

    各位,请问电机库4.0怎样使用内部晶振的,请教下!
    发表于 05-06 07:50

    STM32的4.0版本的电机库是如何实现OOP编程的?

    STM32的4.0版本的电机库是如何实现OOP编程的 看4.0的电机库,看到使用的OOP编程思想,但是C语言本身好像是不支持继承、虚函数等技术的 那电机库里是怎么实现的,有好的相关学习资料吗?
    发表于 05-17 06:50

    STM32电机库讲解

    本帖最后由 eehome 于 2013-1-5 09:49 编辑 STM32电机库讲解。
    发表于 08-16 23:03

    怎么使用st电机库里的弱磁控制程序?

    st电机库里有弱磁控制吗,怎么调出来,看着好像有弱磁程序啊,接上电机速度怎么就上不去呢,求大神指导
    发表于 05-07 13:47

    ST电机库软件4.2

    ST电机库最新 4.2版本推荐课程:张飞软硬开源:基于STM32的BLDC直流无刷电机驱动器(视频+硬件)http://url.elecfans.com/u/73ad899cfd
    发表于 09-08 12:52

    STM32FOC2.0电机库程序

    STM32FOC2.0电机库程序推荐课程:张飞软硬开源,基于STM32 BLDC直流无刷电机驱动器视频套件http://t.elecfans.com/topic/42.html?elecfans_trackid=bbs_post
    发表于 10-17 21:56

    请问使用TI电机库如何处理PDPINTA外部报警中断?

    大家好,我使用TI的电机库做变频,在外部发生报警以后,PDPINTA中断,电机停止转动。请问如何利用这个中断置标志位?电机库有相应的标志位还是自己写中断函数?请问如何软件复位这个PWM锁定状态?谢谢大家。
    发表于 08-20 07:06

    无刷电机板子为什么不能直运行STM32 FOC 5.x电机库的程序?

    无刷电机板子为什么不能直运行STM32 FOC 5.x电机库的程序?是什么原因造成的呢?如何去解决?
    发表于 07-20 08:37

    ST电机库的PID控制器工作原理是什么?

    ST电机库的PID控制器工作原理是什么?
    发表于 10-08 07:18

    怎样去修改STM32 FOC 5.2电机库的电流采样

    怎样去使用STM32 FOC 5.2的电机库?怎样去修改STM32 FOC 5.2电机库的电流采样?
    发表于 10-11 09:31

    基于FOC电机库的无感驱动,反馈是什么?

    请教基于FOC电机库的无感驱动,系统获取的反馈是什么?是UVW三相电压还是三相电流?
    发表于 11-20 23:00

    STM32电机库讲解

    STM32电机库讲解。
    发表于 03-23 15:12 78次下载

    STM8S 电机库 电机控制盒相关资料下载

    STM8S 电机库 Motor Control Kit
    发表于 03-12 10:49 12次下载

    STM32电机库(ST-MC-Workbench)学习记录—无感FOC代码生成

    STM32电机库(ST-MC-Workbench)学习记录—无感FOC代码生成
    发表于 01-04 09:38 110次下载

    基于最新5.4电机库的STM32电机控制应用实战分享

    基于最新5.4电机库的STM32电机控制应用实战分享MC_SDK_5_4Training_201911
    发表于 07-27 15:23 63次下载