CN105577057A - 一种高通用性的电机控制方法 - Google Patents
一种高通用性的电机控制方法 Download PDFInfo
- Publication number
- CN105577057A CN105577057A CN201510978838.2A CN201510978838A CN105577057A CN 105577057 A CN105577057 A CN 105577057A CN 201510978838 A CN201510978838 A CN 201510978838A CN 105577057 A CN105577057 A CN 105577057A
- Authority
- CN
- China
- Prior art keywords
- current
- intermediate layer
- motor control
- control method
- initialization
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P21/00—Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
- H02P21/0003—Control strategies in general, e.g. linear type, e.g. P, PI, PID, using robust control
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P21/00—Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
- H02P21/13—Observer control, e.g. using Luenberger observers or Kalman filters
Abstract
一种高通用性的电机控制方法,构建中间层,svpwm三电阻采样方式的电机控制,所述的中间层包含真实底层模块中所有电机驱动需要用到的模块,中间层的各个模块和底层的各个模块对应的。本发明具有以下有益效果:极易移植的电机控制程序,程序员不需要每次都要根据原理图重新配置各个寄存器和IO口这些底层操作,可以有效地缩短开发周期,提高研发效率。
Description
技术领域
本发明属于电机控制领域,具体涉及一种高通用性的电机控制方法。
背景技术
现在的永磁同步电机(PMSM)控制方案主要有两种,方波控制和弦波控制。方波控制的优点是控制简单,理解方便,易于上手,缺点是电机转动不是特别平滑,噪声略大,最关键的是对电能的利用率比较低,所以现在对能效比有要求的产品一般都不用方波控制了。
弦波控制的基础是pwm波控制,后来又在此基础上发展出了SPWM和SVPWM波控制方案,其中SVPWM波控制方案是目前最先进的控制算法,缺点是比较难以理解,需要较高的技术门槛,优点是电源利用率很高。
因为大部分芯片的底层写法方式不一样,所以每次换芯片编程的时候就需要耗费比较长的时间去修改以前程序中的底层驱动的命名,效率低,通用性差。
发明内容
针对现有技术中的不足,本发明提供一种高通用性的电机控制方法,来解决每次换芯片编程的时候就需要耗费较长时间去修改以前程序中的底层驱动的命名的问题。
本发明通过以下技术方案实现。
一种高通用性的电机控制方法,包括以下步骤:
a.构建中间层;
b.svpwm三电阻采样方式的电机控制;
其特征在于,所述步骤a中包括以下步骤:
a1所述的中间层包含真实底层模块中所有电机驱动需要用到的模块,中间层的各个模块和底层的各个模块对应的;
a2把中间层的各个模块映射到芯片上对应的硬件模块;
a3初始化三个电流偏差和三个电压偏差,把中间层的三个PWM模块映射到多个硬件PWM中的实际用到的三个模块;
a4把中间层的三个定时器模块映射到多个硬件定时器中的实际用到的三个模块,
所述步骤b中包括以下步骤:
b1根据采样得到的电流值估算出当前角度和速度以及磁通;
b2经过CLARKE变化,PARK变换,IPARK变换,SVGEN计算,得到当前UVW三相电流驱动的PWM波。
由于中间层的命名是自己定义的,所以可读性可以做到很好,因为大部分芯片的底层写法方式不一样,所以每次换芯片编程的时候就需要耗费比较长的时间去修改以前程序中的底层驱动的命名,但是有了中间层就可以不用修改,直接映射就可以通用,节约研发时间,减少修改时产生的错误,提高效率,通用性很强。
作为优选,所述步骤a1、a2、a3、a4后需要进行初始化中间层,包括以下步骤:设置芯片主时钟,中断PLL,GPIO,ADC,PWM,TIMER寄存器,使得后面的程序能正常运行,初始化采样偏置,禁止全局中断和CPU中断,设置时钟,设置倍频,设置中断,矫正ADC出厂偏差,初始化GPIO口配置,初始化ADC配置,初始化PWM配置,初始化定时器配置,设置初始化中断向量表。
作为优选,所述的步骤b1、b2的中的多种变换,包括以下步骤:对采样得到的电流值和电压值进行CLARKE变换,估算当前的转子位置,速度,磁通,转矩,得到当前转子的角度,求出对应角度的三角函数值,电流值进行PARK变换,速度环进行PID调节,调整Id的Kp值,设定估算时候的Id参考值,设定Vd和Vq的最大最小值,对Id进行PID调节,调整Iq的Kp值,设定Iq的参考值,对Iq进行PID调节,根据速度加上角度补偿,并求出对应的三角函数值,对Vd和Vq进行IPARK变换,根据Vd和Vq得出最终的PWM波占空比。SVPWM控制方案是目前最优秀的电机控制方案,再配合采用三电阻采样方式,与单电阻采样方式相比,可以提高采样精度且对采样时间控制不需要特别高的要求。
作为优选,根据给定的指令启动或者关闭PWM波,同时更新观察变量。
作为优选,从ADC结果寄存器中得到相应的采样值,并减去AD偏置值,得到准确的电流和电压值。
作为优选,在AD转化完毕之后触发中断,在获取到最新的电流值之后进行电机控制。
与现有技术相比:极易移植的电机控制程序,程序员不需要每次都要根据原理图重新配置各个寄存器和IO口这些底层操作,可以有效地缩短开发周期,提高研发效率。
附图说明
图1为本发明的程序整体流程图。
图2为本发明的中断控制的流程图。
图3为本发明的电机逻辑控制的流程图。
图4为本发明的电机底层驱动的流程图。
具体实施方式
下面结合附图与具体实施方式,对本发明做进一步描述。
一种高通用性的电机控制方法,包括以下步骤:
1.构建中间层,把中间层的ADC模块,CLOCK模块,FLASH模块,GPIO模块,OSC模块,PIE模块,PLL模块都映射到芯片上对应的硬件模块,初始化三个电流偏差和三个电压偏差,把中间层的三个PWM模块映射到多个硬件PWM中的实际用到的三个模块,把中间层的三个定时器模块映射到多个硬件定时器中的实际用到的三个模块。
2.获取用户给定的参数,把用户给定的传感器数目,最大电流,电机的电阻和电感量参数赋值给中间层。
3.初始化中间层,设置芯片主时钟,中断,PLL,GPIO,ADC,PWM,TIMER寄存器,使得后面的程序能正常运行,初始化采样偏置,禁止全局中断和CPU中断,设置时钟,设置倍频,设置中断,矫正ADC出厂偏差,初始化GPIO口配置,初始化ADC配置,初始化PWM配置,初始化定时器配置,设置初始化中断向量表,使能ADC中断,使能全局中断,禁止PWM输出,使能母线电压补偿。
4.主逻辑控制,根据给定的指令开始启动程序,开始启动电机,开始识别电机,启动或者关闭PWM波,同时更新观察变量,确定使用用户给定的参数,
确定每次启动之前需要的转子电阻,确定每次启动之前的AD采样偏置值,确定电机启动,获取电机当前的运转状态,更新采样偏置值,获取给定的电机转速,设置电机启动时候的爬坡速度,初次计算速度环电流环的PI调节参数,更新全局观察变量,更新速度环电流环的PI调节参数,确定开启弱磁功能,获取当前的电阻值,禁止输出PWM波并初始化参数。
5.获取电流和电压值,从ADC结果寄存器中得到相应的采样值,减去AD偏置值,得到电流和电压值。
6.中断程序,处理在AD转化完毕之后触发中断,在获取到最新的电流值之后进行电机控制,电流过调制处理和电流采样点的重新计算,弱磁处理,控制设置。
7.电机底层,驱动根据采样得到的电流值估算出当前角度和速度以及磁通,并经过CLARKE变化,PARK变换,IPARK变换,SVGEN计算,得到当前UVW三相电流驱动的PWM波,对采样得到的电流值和电压值进行CLARKE变换,估算当前的转子位置,速度,磁通,转矩,得到当前转子的角度,求出对应角度的三角函数值,电流值进行PARK变换,速度环进行PID调节,调整Id的Kp值,设定估算时候的Id参考值,设定Vd和Vq的最大最小值,对Id进行PID调节,调整Iq的Kp值,设定Iq的参考值,对Iq进行PID调节,根据速度加上角度补偿,并求出对应的三角函数值,对Vd和Vq进行IPARK变换,根据Vd和Vq得出最终的PWM波占空比。
独立的中间层用来连接底层模块的配置和上层的电机逻辑控制,在同系列芯片下,各个底层模块和寄存器的地址是固定的,可以先创造出一个结构体,该结构体必须包含所有电机控制必须的底层模块,每个底层模块也是一个包含对应所有寄存器的结构体,在初始化的时候只需要用指针把每个底层模块和芯片对应的真实模块地址相连接,这样只需要对中间层的寄存器进行操作就可以完成对底层模块的实际操作,在上层程序完善后,只需要修改几个芯片地址就可以完美移植程序,使得通用性有很大提高,在同系列芯片下甚至几乎不用修改地址。
svpwm控制则比一般的pwm控制提高了电压的利用率,且控制方法更加先进。先把三路相位差为120°的电流所在的坐标系转换为静止的直角坐标系(CLARKE变换),估算出转子的角度后,再转换为动态的直角坐标系(PARK变换),得到Id和Iq,然后对速度环和电流环进行PI调节,得到Vd和Vq,然后进行逆PARK变换,把Vd和Vq转变为Va和Vb,最后通过SVGEN计算得到最终输出的PWM波。
电机参数对电机控制非常重要,尤其是电机的电阻和电感值。在电机参数不明的情况下运行识别模式,可以大致得到电机的电阻和电感值,方便后期的调试,本程序用的是TITMS320F2802X系列的芯片,运行平台为CCS6.0。
本发明的保护范围包括但不限于以上实施方式,本发明的保护范围以权利要求书为准,任何对本技术做出的本领域的技术人员容易想到的替换、变形、改进均落入本发明的保护范围。
Claims (6)
1.一种高通用性的电机控制方法,包括以下步骤:
a.构建中间层;
b.svpwm三电阻采样方式的电机控制;
其特征在于,所述步骤a中包括以下步骤:
a1所述的中间层包含真实底层模块中所有电机驱动需要用到的模块,中间层的各个模块和底层的各个模块对应的;
a2把中间层的各个模块映射到芯片上对应的硬件模块;
a3初始化三个电流偏差和三个电压偏差,把中间层的三个PWM模块映射到多个硬件PWM中的实际用到的三个模块;
a4把中间层的三个定时器模块映射到多个硬件定时器中的实际用到的三个模块,
所述步骤b中包括以下步骤:
b1根据采样得到的电流值估算出当前角度和速度以及磁通;
b2经过CLARKE变化,PARK变换,IPARK变换,SVGEN计算,得到当前UVW三相电流驱动的PWM波。
2.根据权利要求1所述的一种高通用性的电机控制方法,其特征在于,所述步骤a1、a2、a3、a4后需要进行初始化中间层,包括以下步骤:设置芯片主时钟,中断PLL,GPIO,ADC,PWM,TIMER寄存器,使得后面的程序能正常运行,初始化采样偏置,禁止全局中断和CPU中断,设置时钟,设置倍频,设置中断,矫正ADC出厂偏差,初始化GPIO口配置,初始化ADC配置,初始化PWM配置,初始化定时器配置,设置初始化中断向量表。
3.根据权利要求2所述的一种高通用性的电机控制方法,其特征在于,所述的步骤b1、b2的中的多种变换,包括以下步骤:对采样得到的电流值和电压值进行CLARKE变换,估算当前的转子位置,速度,磁通,转矩,得到当前转子的角度,求出对应角度的三角函数值,电流值进行PARK变换,速度环进行PID调节,调整Id的Kp值,设定估算时候的Id参考值,设定Vd和Vq的最大最小值,对Id进行PID调节,调整Iq的Kp值,设定Iq的参考值,对Iq进行PID调节,根据速度加上角度补偿,并求出对应的三角函数值,对Vd和Vq进行IPARK变换,根据Vd和Vq得出最终的PWM波占空比。
4.根据权利要求3所述的一种高通用性的电机控制方法,其特征在于,根据给定的指令启动或者关闭PWM波,同时更新观察变量。
5.根据权利要求4所述的一种高通用性的电机控制方法,其特征在于,从ADC结果寄存器中得到相应的采样值,并减去AD偏置值,得到准确的电流和电压值。
6.根据权利要求5所述的一种高通用性的电机控制方法,其特征在于,在AD转化完毕之后触发中断,在获取到最新的电流值之后进行电机控制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510978838.2A CN105577057A (zh) | 2015-12-24 | 2015-12-24 | 一种高通用性的电机控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510978838.2A CN105577057A (zh) | 2015-12-24 | 2015-12-24 | 一种高通用性的电机控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105577057A true CN105577057A (zh) | 2016-05-11 |
Family
ID=55886838
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510978838.2A Pending CN105577057A (zh) | 2015-12-24 | 2015-12-24 | 一种高通用性的电机控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105577057A (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101515764A (zh) * | 2009-04-08 | 2009-08-26 | 宁波德斯科电子科技有限公司 | 一种用于变频器的电流采样电路及其采样方法 |
CN201383763Y (zh) * | 2009-04-08 | 2010-01-13 | 宁波德斯科电子科技有限公司 | 一种用于变频器的电流采样电路 |
US20100013421A1 (en) * | 2007-03-29 | 2010-01-21 | Toyota Jidosha Kabushiki Kaisha | Drive controller and drive control method for electric motor |
JP2012090490A (ja) * | 2010-10-22 | 2012-05-10 | Toyota Motor Corp | モータ駆動制御システムの制御装置およびそれを搭載する車両 |
CN102811012A (zh) * | 2012-07-20 | 2012-12-05 | 华中科技大学 | 基于fpga的多轴伺服电机电流环控制系统及控制方法 |
CN202594240U (zh) * | 2012-04-27 | 2012-12-12 | 苗可 | 一种自动化立体仓库控制系统 |
WO2014064836A1 (ja) * | 2012-10-26 | 2014-05-01 | ルネサスエレクトロニクス株式会社 | モータ制御装置及びモータ駆動装置 |
CN104601077A (zh) * | 2015-02-09 | 2015-05-06 | 北京航空航天大学 | 一种基于空间矢量调制的高速永磁电机谐波电流补偿系统 |
CN104852664A (zh) * | 2015-05-26 | 2015-08-19 | 国电南京自动化股份有限公司 | 一种无速度传感器的高压同步电机矢量控制方法 |
-
2015
- 2015-12-24 CN CN201510978838.2A patent/CN105577057A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100013421A1 (en) * | 2007-03-29 | 2010-01-21 | Toyota Jidosha Kabushiki Kaisha | Drive controller and drive control method for electric motor |
CN101515764A (zh) * | 2009-04-08 | 2009-08-26 | 宁波德斯科电子科技有限公司 | 一种用于变频器的电流采样电路及其采样方法 |
CN201383763Y (zh) * | 2009-04-08 | 2010-01-13 | 宁波德斯科电子科技有限公司 | 一种用于变频器的电流采样电路 |
JP2012090490A (ja) * | 2010-10-22 | 2012-05-10 | Toyota Motor Corp | モータ駆動制御システムの制御装置およびそれを搭載する車両 |
CN202594240U (zh) * | 2012-04-27 | 2012-12-12 | 苗可 | 一种自动化立体仓库控制系统 |
CN102811012A (zh) * | 2012-07-20 | 2012-12-05 | 华中科技大学 | 基于fpga的多轴伺服电机电流环控制系统及控制方法 |
WO2014064836A1 (ja) * | 2012-10-26 | 2014-05-01 | ルネサスエレクトロニクス株式会社 | モータ制御装置及びモータ駆動装置 |
CN104601077A (zh) * | 2015-02-09 | 2015-05-06 | 北京航空航天大学 | 一种基于空间矢量调制的高速永磁电机谐波电流补偿系统 |
CN104852664A (zh) * | 2015-05-26 | 2015-08-19 | 国电南京自动化股份有限公司 | 一种无速度传感器的高压同步电机矢量控制方法 |
Non-Patent Citations (2)
Title |
---|
"《永磁直线同步电机建模、特性分析及推力控制》" * |
《中国优秀硕士学位论文全文数据库(电子期刊)•工程科技Ⅱ辑》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103701382B (zh) | 一种基于fpga的永磁同步电机电流环带宽扩展装置 | |
CN103414427B (zh) | 无刷直流电机控制方法 | |
CN101729013B (zh) | 基于无位置传感器无刷直流电机ip核的电机控制系统 | |
CN101729002A (zh) | 基于sopc的无位置传感器无刷直流电机远程监控系统 | |
CN103516279B (zh) | 一种基于fpga的永磁同步电机控制芯片 | |
CN103607149B (zh) | 一种超声电机舵伺服系统及其控制方法 | |
CN101729005A (zh) | 基于fpga的无刷直流电机的控制方法 | |
CN107147343A (zh) | 无刷电机磁场定向控制驱动系统及控制方法 | |
KR101618722B1 (ko) | 모터 드라이브 시스템 | |
CN204696972U (zh) | 一种用于电机控制的微控制器 | |
CN113644856B (zh) | 一种高频变频器的驱动控制方法 | |
CN104898521A (zh) | 一种用于电机控制的微控制器 | |
CN105577057A (zh) | 一种高通用性的电机控制方法 | |
CN104898520A (zh) | 一种用于电机控制的微控制器 | |
CN111162705B (zh) | 一种永磁同步电机控制系统、方法、控制器及其应用 | |
CN110261806B (zh) | 驱动器、变频器以及驱动器的校准方法、控制方法 | |
CN204631519U (zh) | 一种用于电机控制的微控制器 | |
CN112865650B (zh) | 基于fpga的斩波周期可变的硬件电流环控制系统及方法 | |
O'Sullivan et al. | Model based design tools in closed loop motor control | |
CN113726248A (zh) | 一种电流补偿方法、装置、电机控制器及存储介质 | |
CN103715957A (zh) | 一种三相永磁同步电机驱动电路 | |
CN203691315U (zh) | 一种三相永磁同步电机驱动电路 | |
CN106877773A (zh) | 一种高效的速度反馈pid控制装置 | |
CN111983952A (zh) | 一种双核结构的电机控制mcu芯片的设计方法及电路 | |
O’Sullivan et al. | Model-based design streamlines embedded motor control system development |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160511 |