CN111817623A - 基于fpga的电机多级细分控制系统、方法及存储介质 - Google Patents
基于fpga的电机多级细分控制系统、方法及存储介质 Download PDFInfo
- Publication number
- CN111817623A CN111817623A CN202010539572.2A CN202010539572A CN111817623A CN 111817623 A CN111817623 A CN 111817623A CN 202010539572 A CN202010539572 A CN 202010539572A CN 111817623 A CN111817623 A CN 111817623A
- Authority
- CN
- China
- Prior art keywords
- fpga
- motor
- subdivision
- control module
- current
- 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
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000004891 communication Methods 0.000 claims description 77
- 238000001514 detection method Methods 0.000 claims description 28
- 239000013598 vector Substances 0.000 claims description 23
- 230000008859 change Effects 0.000 claims description 16
- 230000005540 biological transmission Effects 0.000 claims description 12
- 238000004804 winding Methods 0.000 claims description 9
- 239000000126 substance Substances 0.000 claims description 6
- 230000008569 process Effects 0.000 abstract description 13
- 230000033001 locomotion Effects 0.000 abstract description 10
- 230000006870 function Effects 0.000 description 8
- 238000005070 sampling Methods 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000000819 phase cycle Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Images
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
- H02P8/00—Arrangements for controlling dynamo-electric motors rotating step by step
- H02P8/12—Control or stabilisation of current
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Control Of Electric Motors In General (AREA)
Abstract
本发明属于电机控制技术领域,公开了一种基于FPGA的电机多级细分控制系统、方法及存储介质。所述系统包括FPGA控制模块以及电机驱动控制器;FPGA控制模块,用于从上位机获取用户指令并根据用户指令获得期望转速;FPGA控制模块,还用于根据期望转速解算出细分数据,并将细分数据传输至所述电机驱动控制器;电机驱动控制器,用于根据细分数据实现对电机的多级细分控制。本发明中,通过上位机、FPGA控制模块以及电机驱动控制器实现对电机电流的开环细分,有效减小电机运动过程中产生的振动,同时避免不必要的硬件设计。相对于现有控制电机相电流实现电流闭环的方式解决了其在航天器中电路板设计复杂,可靠性低的问题。
Description
技术领域
本发明涉及电机控制技术领域,尤其涉及一种基于FPGA的电机多级细分控制系统、方法及存储介质。
背景技术
在航天领域中,步进电机由于其可靠的稳定性,被广泛应用于运动机构的控制驱动器。由于步进电机单步运动的方式,机械结构在运动过程中将不可避免的产生振动。通常减小这种振动问题的方法是加入电流闭环进行电机细分,使运动过程变得平缓。
例如,环绕器有效载荷分系统高分辨率相机是火星探测环绕器上安置的有效载荷之一,环绕器有效载荷分系统高分辨率相机的主要科学任务是获取火星表面重点区域的高分辨率影像,观测火星表面地质现象的形成和变化过程,为着陆探测优选合适区域提供基础数据和科学依据。该环绕器有效载荷分系统高分辨率相机的步进电机驱动机构驱动调焦镜沿光轴方向移动,达到焦面补偿的目的。驱动控制器是步进电机驱动机构的一部分,其控制对象为载荷调焦模块的镜片,驱动机构为步进电机和谐波机构的驱动模式。现有的驱动控制方法难以实现星载步进电机驱动电路的高稳定性和高可靠性的要求。
空间探测任务中,步进电机细分控制通常采用电流闭环进行电机细分,使运动过程变得平缓。电流闭环控制系统的FPGA内部由锁相环、三角波计数器、只读存储器地址计数器、存储着正弦波形电流值的ROM存储器、比较器和信号分配器等模块构成步进电机细分控制的控制模块。在硬件电路中加入的比较器用于实时计算比较值。FPGA的两个端口分别接收正弦波和三角波的值,当正弦波的值大于三角波的值时,输出高电平,否则输出低电平。从而通过控制占空比的方法控制电机相电流实现电流闭环。但这种闭环方式极大的复杂了航天器中电路板的设计,降低了可靠性。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种基于FPGA的电机多级细分控制系统、方法及存储介质,旨在解决现有控制电机相电流实现电流闭环的方式极大的复杂了航天器中电路板的设计,降低了可靠性的技术问题。
为实现上述目的,本发明提供了一种基于FPGA的电机多级细分控制系统,所述基于FPGA的电机多级细分控制系统包括:FPGA控制模块以及电机驱动控制器;所述FPGA控制模块通过通信总线与上位机连接,所述FPGA控制模块通过通信总线与所述电机驱动控制器连接;其中,
所述FPGA控制模块,用于从上位机获取用户指令,并根据所述用户指令获得期望转速;
所述FPGA控制模块,还用于根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器;
所述电机驱动控制器,用于根据所述细分数据实现对电机的多级细分控制。
优选地,所述基于FPGA的电机多级细分控制系统还包括位置信号检测模块,所述FPGA控制模块通过通信总线与所述位置信号检测模块连接;其中,
所述位置信号检测模块,用于采集位置信号,并将所述位置信号输入至所述FPGA控制模块;
所述FPGA控制模块,还用于根据所述位置信号解算出电机的当前位置值和当前速度值;
所述FPGA控制模块,还用于根据所述期望转速、所述当前位置值和所述当前速度值解算出细分数据,并将所述细分数据传输至所述电机驱动控制器。
优选地,所述FPGA控制模块包括通信接口模块以及FPGA可编程逻辑器件,其中,
所述通信接口模块与所述FPGA可编程逻辑器件连接;所述通信接口模块通过第一通信总线与上位机连接,所述通信接口模块通过第二通信总线与所述位置信号检测模块连接,所述FPGA可编程逻辑器件通过第一通信总线与电机驱动控制器连接。
优选地,所述位置信号检测模块包括编码器,所述编码器通过第二通信总线与所述通信接口模块连接。
优选地,所述第一通信总线采取RS-422通信传输格式,所述第二通信总线采取SSI通信传输格式。
此外,为实现上述目的,本发明还提出一种应用于如上文所述的基于FPGA的电机多级细分控制系统的基于FPGA的电机多级细分控制方法,所述基于FPGA的电机多级细分控制包括以下步骤:
FPGA控制模块从上位机获取用户指令,并根据所述用户指令获得期望转速;
所述FPGA控制模块根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器;
电机驱动控制器根据所述细分数据实现对电机的多级细分控制。
优选地,所述FPGA控制模块根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器的步骤之前,还包括:
位置信号检测模块采集位置信号,并将所述位置信号输入至所述FPGA控制模块;
所述FPGA控制模块根据所述位置信号解算出电机的当前位置值和当前速度值;
所述FPGA控制模块根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器的步骤,具体包括:
所述FPGA控制模块根据所述期望转速、所述当前位置值和所述当前速度值解算出细分数据,并将所述细分数据传输至所述电机驱动控制器。
优选地,所述电机驱动控制器根据所述细分数据实现对电机的多级细分控制的步骤,具体包括:
所述电机驱动控制器根据所述细分数据分别给电机两相绕组同时输出正弦变化电流和余弦变化电流,使合成电流矢量恒幅均匀旋转,从而实现步进电机步距的均匀细分。
优选地,所述余弦变化电流的计算公式如下:
IA=Im×cos(90°/n)
其中,IA为余弦变化电流,Im为合成电流矢量,n为细分数;
所述正弦变化电流的计算公式如下:
IB=Im×sin(90°/n)
其中,IB为正弦变化电流,Im为合成电流矢量,n为细分数。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有基于FPGA的电机多级细分控制程序,所述基于FPGA的电机多级细分控制程序被处理器执行时实现如上文所述的基于FPGA的电机多级细分控制方法的步骤。
本发明提出一种基于FPGA的电机多级细分控制系统,所述基于FPGA的电机多级细分控制系统包括:FPGA控制模块以及电机驱动控制器;所述FPGA控制模块通过通信总线与上位机连接,所述FPGA控制模块通过通信总线与所述电机驱动控制器连接;其中,所述FPGA控制模块,用于从上位机获取用户指令,并根据所述用户指令获得期望转速;所述FPGA控制模块,还用于根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器;所述电机驱动控制器,用于根据所述细分数据实现对电机的多级细分控制。通过上位机、FPGA控制模块以及电机驱动控制器实现对电机电流的开环细分,有效减小电机运动过程中产生的振动,同时避免不必要的硬件设计。相对于现有控制电机相电流实现电流闭环的方式解决了其在航天器中电路板设计复杂,可靠性低的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为本发明基于FPGA的电机多级细分控制系统第一实施例的功能模块示意图;
图2为本发明基于FPGA的电机多级细分控制系统第二实施例的功能模块示意图;
图3为本发明基于FPGA的电机多级细分控制方法第一实施例的流程示意图;
图4为本发明基于FPGA的电机多级细分控制方法第二实施例的流程示意图;
图5为本发明实施例中4细分的细分矢量图;
图6为本发明实施例中4细分的电压分配细分控制相序表;
图7为本发明实施例中4细分的电流流向细分控制相序表。
附图标号说明:
标号 | 名称 | 标号 | 名称 |
100 | FPGA控制模块 | I<sub>A</sub> | 余弦变化电流 |
200 | 电机驱动控制器 | I<sub>B</sub> | 正弦变化电流 |
300 | 位置信号检测模块 | I<sub>m</sub> | 合成电流矢量 |
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
另外,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
本发明提出一种基于FPGA的电机多级细分控制系统。
参照图1,在本发明实施例中,所述基于FPGA的电机多级细分控制系统包括:FPGA控制模块100以及电机驱动控制器200;所述FPGA控制模块100通过通信总线与上位机连接,所述FPGA控制模块100通过通信总线与所述电机驱动控制器200连接;其中,
所述FPGA控制模块100,用于从上位机获取用户指令,并根据所述用户指令获得期望转速。本实施例中,上位机界面将用户逻辑控制程序编译并传输到所述FPGA控制模块100,上位机界面可以基于Windows编程实现,主要完成人机交互、硬件组态、用户应用编程以及状态检测。具体地,基于LABview的参数配置界面以及采样界面设计,可以通过导入参数txt文件来配置电机类型(例如功率、额定电流、转速等相关参数)。
具体地,上位机界面可以包含有逻辑控制编程功能以及物理组态功能,其中,逻辑控制编程功能可用于客户开发应用程序;物理组态功能主要是指每个轴的电机参数、编码器参数、每个轴对应的保护参数(最大速度、最大加速度、最大转矩限制等);组态界面可以通过编程界面的主菜单下的一个子菜单打开;组态参数和应用程序可以传输到所述电机驱动控制器200的ROM存储区。
所述FPGA控制模块100,还用于根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器。本实施例中,通过所述FPGA控制模块100实现软件开环驱动步进电机,实现电机细分,同时去除电流环的外围芯片,节省硬件资源和提高可靠性。
所述电机驱动控制器200,用于根据所述细分数据实现对电机的多级细分控制。本实施例中,所述细分数据可以通过RS232数据通信传输给所述电机驱动控制器200,同时所述电机驱动控制器200可以周期性上传数据,便于用户进行波形采样。
本实施例提出一种基于FPGA的电机多级细分控制系统,所述基于FPGA的电机多级细分控制系统包括:FPGA控制模块以及电机驱动控制器;所述FPGA控制模块通过通信总线与上位机连接,所述FPGA控制模块通过通信总线与所述电机驱动控制器连接;其中,所述FPGA控制模块,用于从上位机获取用户指令,并根据所述用户指令获得期望转速;所述FPGA控制模块,还用于根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器;所述电机驱动控制器,用于根据所述细分数据实现对电机的多级细分控制。通过上位机、FPGA控制模块以及电机驱动控制器实现对电机电流的开环细分,有效减小电机运动过程中产生的振动,同时避免不必要的硬件设计。相对于现有控制电机相电流实现电流闭环的方式解决了其在航天器中电路板设计复杂,可靠性低的问题。
进一步地,参照图2,所述基于FPGA的电机多级细分控制系统还包括位置信号检测模块300,所述FPGA控制模块100通过通信总线与所述位置信号检测模块300连接;其中,
所述位置信号检测模块300,用于采集位置信号,并将所述位置信号输入至所述FPGA控制模块;
所述FPGA控制模块100,还用于根据所述位置信号解算出电机的当前位置值和当前速度值;
所述FPGA控制模块100,还用于根据所述期望转速、所述当前位置值和所述当前速度值解算出细分数据,并将所述细分数据传输至所述电机驱动控制器。
需要说明的是,所述位置信号检测模块300采集位置信号,并将所述位置信号输入至所述FPGA控制模块100;所述FPGA控制模块100根据所述位置信号解算出电机的当前位置值和当前速度值。
相应地,所述FPGA控制模块100根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器的过程可以为:所述FPGA控制模块根据所述期望转速、所述当前位置值和所述当前速度值解算出细分数据,并将所述细分数据传输至所述电机驱动控制器。
进一步地,所述FPGA控制模块100包括通信接口模块以及FPGA可编程逻辑器件,其中,
所述通信接口模块与所述FPGA可编程逻辑器件连接;所述通信接口模块通过第一通信总线与上位机连接,所述通信接口模块通过第二通信总线与所述位置信号检测模块连接,所述FPGA可编程逻辑器件通过第一通信总线与电机驱动控制器连接。
需要说明的是,所述第一通信总线采取RS-422通信传输格式,所述第二通信总线采取SSI通信传输格式。
进一步地,所述位置信号检测模块300包括编码器,所述编码器通过第二通信总线与所述通信接口模块连接。
易于理解的是,所述位置信号检测模块300采用SSI通信传输格式,通过编码器实现转动位置的闭环。
进一步地,所述第一通信总线采取RS-422通信传输格式,所述第二通信总线采取SSI通信传输格式。
具体地,上位机采用RS-422通信协议与所述FPGA控制模块100进行通信,所述FPGA控制模块100接收上位机的用户指令,同时实时反馈位置信号。所述FPGA控制模块100采用的通讯数据格式可以为串行收发,1位起始位、8位数据位、1位停止位。通讯波特率为62500bps,数据格式为16进制。本实施例中,在所述FPGA控制模块100接收上位机的用户指令时可以采用8次采样,选取每个数据位的第3、4、5次采样值(或中间位置的任意3次)进行3选2举手表决,以此方法确定该数据位的数据。
本发明实施例提供了应用于如上文所述的基于FPGA的电机多级细分控制系统的基于FPGA的电机多级细分控制方法,参照图3,图3为本发明一种基于FPGA的电机多级细分控制方法第一实施例的流程示意图。
本实施例中,所述基于FPGA的电机多级细分控制方法包括以下步骤:
步骤S10:FPGA控制模块从上位机获取用户指令,并根据所述用户指令获得期望转速。
需要说明的是,上位机界面将用户逻辑控制程序编译并传输到所述FPGA控制模块100,上位机界面可以基于Windows编程实现,主要完成人机交互、硬件组态、用户应用编程以及状态检测。具体地,基于LABview的参数配置界面以及采样界面设计,可以通过导入参数txt文件来配置电机类型(例如功率、额定电流、转速等相关参数)。
具体地,上位机界面可以包含有逻辑控制编程功能以及物理组态功能,其中,逻辑控制编程功能可用于客户开发应用程序;物理组态功能主要是指每个轴的电机参数、编码器参数、每个轴对应的保护参数(最大速度、最大加速度、最大转矩限制等);组态界面可以通过编程界面的主菜单下的一个子菜单打开;组态参数和应用程序可以传输到所述电机驱动控制器200的ROM存储区。
应当理解的是,所述FPGA控制模块100可以包括通信接口模块以及FPGA可编程逻辑器件,其中,所述通信接口模块与所述FPGA可编程逻辑器件连接;所述通信接口模块通过第一通信总线与上位机连接,所述通信接口模块通过第二通信总线与所述位置信号检测模块连接,所述FPGA可编程逻辑器件通过第一通信总线与电机驱动控制器连接。需要说明的是,所述第一通信总线采取RS-422通信传输格式,所述第二通信总线采取SSI通信传输格式。
具体地,上位机采用RS-422通信协议与所述FPGA控制模块100进行通信,所述FPGA控制模块100接收上位机的用户指令,同时实时反馈位置信号。所述FPGA控制模块100采用的通讯数据格式为串行收发,1位起始位、8位数据位、1位停止位。通讯波特率为62500bps,数据格式为16进制。本实施例中,在所述FPGA控制模块100接收上位机的用户指令时可以采用8次采样,选取每个数据位的第3、4、5次采样值(或中间位置的任意3次)进行3选2举手表决,以此方法确定该数据位的数据。
步骤S20:所述FPGA控制模块根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器。
应当理解的是,所述FPGA控制模块100通过通信总线与所述位置信号检测模块300连接;所述FPGA控制模块根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器的步骤之前,还包括:位置信号检测模块采集位置信号,并将所述位置信号输入至所述FPGA控制模块;所述FPGA控制模块根据所述位置信号解算出电机的当前位置值和当前速度值。
相应地,所述FPGA控制模块根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器的步骤,具体包括:所述FPGA控制模块根据所述期望转速、所述当前位置值和所述当前速度值解算出细分数据,并将所述细分数据传输至所述电机驱动控制器。
步骤S30:电机驱动控制器根据所述细分数据实现对电机的多级细分控制。
需要说明的是,所述细分数据可以通过RS232数据通信传输给所述电机驱动控制器200,同时所述电机驱动控制器200可以周期性上传数据,便于用户进行波形采样。
应当理解的是,所述电机驱动控制器根据所述细分数据实现对电机的多级细分控制的步骤,具体包括:所述电机驱动控制器根据所述细分数据分别给电机两相绕组同时输出正弦变化电流和余弦变化电流,使合成电流矢量恒幅均匀旋转,从而实现步进电机步距的均匀细分。
所述余弦变化电流的计算公式如下:
IA=Im×cos(90°/n)
其中,IA为余弦变化电流,Im为合成电流矢量,n为细分数;
所述正弦变化电流的计算公式如下:
IB=Im×sin(90°/n)
其中,IB为正弦变化电流,Im为合成电流矢量,n为细分数。
本实施例通过FPGA控制模块从上位机获取用户指令,并根据所述用户指令获得期望转速;所述FPGA控制模块根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器;电机驱动控制器根据所述细分数据实现对电机的多级细分控制。通过上位机、FPGA控制模块以及电机驱动控制器实现对电机电流的开环细分,有效减小电机运动过程中产生的振动,同时避免不必要的硬件设计。相对于现有控制电机相电流实现电流闭环的方式解决了其在航天器中电路板设计复杂,可靠性低的问题。
参照图4,图4为本发明一种基于FPGA的电机多级细分控制方法第二实施例的流程示意图。基于所述基于FPGA的电机多级细分控制方法第一实施例提出本实施例。
本实施例中,步骤S30具体包括:
步骤S301:所述电机驱动控制器根据所述细分数据分别给电机两相绕组同时输出正弦变化电流和余弦变化电流,使合成电流矢量恒幅均匀旋转,从而实现步进电机步距的均匀细分。
需要说明的是,步进电机的细分控制,从本质上讲是通过对步进电机励磁绕组中电流的控制,使步进电机内部的合成磁场为均匀的圆形旋转磁场。合成磁场矢量的幅值决定了步进电机旋转转矩的大小,相邻两合成磁场矢量之间的夹角大小决定了步距角的大小。为了得到尽量圆形的合成磁场,且使步距角变化均匀,绕组电流参考信号采用阶梯状正弦波形较为理想。
根据以上分析,为保证电机在旋转过程中力矩的平稳,采用电流矢量恒幅均匀旋转的细分方法,即分别给两相绕组同时通以正、余弦变化的电流,使合成的电流矢量恒幅均匀旋转,从而实现步进电机步距的均匀细分。经过电流矢量恒幅均匀旋转方法细分后,电机A、B相的电流为类似正、余弦波形,细分数越大,电流曲线越接近理想值,电机运转越平稳。
所述电机驱动控制器分别给电机两相绕组同时输出正弦变化电流和余弦变化电流,使合成电流矢量恒幅均匀旋转,从而实现步进电机步距的均匀细分。所述余弦变化电流的计算公式如下:
IA=Im×cos(90°/n)
其中,IA为余弦变化电流,Im为合成电流矢量,n为细分数;
所述正弦变化电流的计算公式如下:
IB=Im×sin(90°/n)
其中,IB为正弦变化电流,Im为合成电流矢量,n为细分数。
例如,实现电机4细分转动,参照图5,图5为本发明实施例中4细分的细分矢量图;参照图6,图6为本发明实施例中4细分的电压分配细分控制相序表,参照图7,图7为本发明实施例中4细分的电流流向细分控制相序表。
应当理解的是,通过余弦变化电流的计算公式和正弦变化电流的计算公式的相电流关系换算,实现IA与IB的矢量和为Im,位置信号检测模块采集位置信号,并将所述位置信号输入至所述FPGA控制模块;所述FPGA控制模块根据所述位置信号解算出电机的当前位置值和当前速度值,可以预测下一个IA与IB的适量关系,进而实现电机的细分转动。
本实施例通过所述电机驱动控制器根据所述细分数据分别给电机两相绕组同时输出正弦变化电流和余弦变化电流,使合成电流矢量恒幅均匀旋转,从而实现步进电机步距的均匀细分。通过上位机、FPGA控制模块以及电机驱动控制器实现对电机电流的开环细分,有效减小电机运动过程中产生的振动,同时避免不必要的硬件设计。相对于现有控制电机相电流实现电流闭环的方式解决了其在航天器中电路板设计复杂,可靠性低的问题。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有基于FPGA的电机多级细分控制程序,所述基于FPGA的电机多级细分控制程序被处理器执行如上文所述的基于FPGA的电机多级细分控制方法的步骤。
由于本存储介质采用了上述所有实施例的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再一一赘述。
应当理解的是,以上仅为举例说明,对本发明的技术方案并不构成任何限定,在具体应用中,本领域的技术人员可以根据需要进行设置,本发明对此不做限制。
需要说明的是,以上所描述的工作流程仅仅是示意性的,并不对本发明的保护范围构成限定,在实际应用中,本领域的技术人员可以根据实际的需要选择其中的部分或者全部来实现本实施例方案的目的,此处不做限制。
另外,未在本实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的基于FPGA的电机多级细分控制方法,此处不再赘述。
此外,需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read Only Memory,ROM)/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于FPGA的电机多级细分控制系统,其特征在于,所述基于FPGA的电机多级细分控制系统包括:FPGA控制模块以及电机驱动控制器;所述FPGA控制模块通过通信总线与上位机连接,所述FPGA控制模块通过通信总线与所述电机驱动控制器连接;其中,
所述FPGA控制模块,用于从上位机获取用户指令,并根据所述用户指令获得期望转速;
所述FPGA控制模块,还用于根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器;
所述电机驱动控制器,用于根据所述细分数据实现对电机的多级细分控制。
2.如权利要求1所述的基于FPGA的电机多级细分控制系统,其特征在于,所述基于FPGA的电机多级细分控制系统还包括位置信号检测模块,所述FPGA控制模块通过通信总线与所述位置信号检测模块连接;其中,
所述位置信号检测模块,用于采集位置信号,并将所述位置信号输入至所述FPGA控制模块;
所述FPGA控制模块,还用于根据所述位置信号解算出电机的当前位置值和当前速度值;
所述FPGA控制模块,还用于根据所述期望转速、所述当前位置值和所述当前速度值解算出细分数据,并将所述细分数据传输至所述电机驱动控制器。
3.如权利要求2所述的基于FPGA的电机多级细分控制系统,其特征在于,所述FPGA控制模块包括通信接口模块以及FPGA可编程逻辑器件,其中,
所述通信接口模块与所述FPGA可编程逻辑器件连接;所述通信接口模块通过第一通信总线与上位机连接,所述通信接口模块通过第二通信总线与所述位置信号检测模块连接,所述FPGA可编程逻辑器件通过第一通信总线与电机驱动控制器连接。
4.如权利要求3所述的基于FPGA的电机多级细分控制系统,其特征在于,所述位置信号检测模块包括编码器,所述编码器通过第二通信总线与所述通信接口模块连接。
5.如权利要求4所述的基于FPGA的电机多级细分控制系统,其特征在于,所述第一通信总线采取RS-422通信传输格式,所述第二通信总线采取SSI通信传输格式。
6.一种应用于如权利要求1~5任一项所述的基于FPGA的电机多级细分控制系统的基于FPGA的电机多级细分控制方法,其特征在于,所述基于FPGA的电机多级细分控制包括以下步骤:
FPGA控制模块从上位机获取用户指令,并根据所述用户指令获得期望转速;
所述FPGA控制模块根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器;
电机驱动控制器根据所述细分数据实现对电机的多级细分控制。
7.如权利要求6所述的基于FPGA的电机多级细分控制方法,其特征在于,所述FPGA控制模块根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器的步骤之前,还包括:
位置信号检测模块采集位置信号,并将所述位置信号输入至所述FPGA控制模块;
所述FPGA控制模块根据所述位置信号解算出电机的当前位置值和当前速度值;
所述FPGA控制模块根据所述期望转速解算出细分数据,并将所述细分数据传输至所述电机驱动控制器的步骤,具体包括:
所述FPGA控制模块根据所述期望转速、所述当前位置值和所述当前速度值解算出细分数据,并将所述细分数据传输至所述电机驱动控制器。
8.如权利要求7所述的基于FPGA的电机多级细分控制方法,其特征在于,所述电机驱动控制器根据所述细分数据实现对电机的多级细分控制的步骤,具体包括:
所述电机驱动控制器根据所述细分数据分别给电机两相绕组同时输出正弦变化电流和余弦变化电流,使合成电流矢量恒幅均匀旋转,从而实现步进电机步距的均匀细分。
9.如权利要求8所述的基于FPGA的电机多级细分控制方法,其特征在于,所述余弦变化电流的计算公式如下:
IA=Im×cos(90°/n)
其中,IA为余弦变化电流,Im为合成电流矢量,n为细分数;
所述正弦变化电流的计算公式如下:
IB=Im×sin(90°/n)
其中,IB为正弦变化电流,Im为合成电流矢量,n为细分数。
10.一种存储介质,其特征在于,所述存储介质上存储有基于FPGA的电机多级细分控制程序,所述基于FPGA的电机多级细分控制程序被处理器执行时实现如权利要求6至9任一项所述的基于FPGA的电机多级细分控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010539572.2A CN111817623A (zh) | 2020-06-12 | 2020-06-12 | 基于fpga的电机多级细分控制系统、方法及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010539572.2A CN111817623A (zh) | 2020-06-12 | 2020-06-12 | 基于fpga的电机多级细分控制系统、方法及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111817623A true CN111817623A (zh) | 2020-10-23 |
Family
ID=72846125
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010539572.2A Pending CN111817623A (zh) | 2020-06-12 | 2020-06-12 | 基于fpga的电机多级细分控制系统、方法及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111817623A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113258840A (zh) * | 2021-06-08 | 2021-08-13 | 江西有为生物技术有限公司 | 一种步进电机控制系统及方法 |
CN113567768A (zh) * | 2021-09-09 | 2021-10-29 | 深圳市诺科科技有限公司 | 一种步进电机缺相检测电路及其方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102122913A (zh) * | 2011-03-18 | 2011-07-13 | 上海理工大学 | 一种超精细步进电机的控制器 |
CN102843083A (zh) * | 2012-09-18 | 2012-12-26 | 天津市亚安科技股份有限公司 | 一种步进电机电流的控制方法 |
CN103699139A (zh) * | 2013-08-14 | 2014-04-02 | 上海海事大学 | 高分辨率扫描控制系统及其细分驱动控制方法 |
CN105577052A (zh) * | 2015-12-31 | 2016-05-11 | 哈尔滨工业大学 | 一种基于fpga的步进电机无抖动驱动控制系统及基于该系统的控制方法 |
CN107124125A (zh) * | 2017-06-08 | 2017-09-01 | 西南交通大学 | 一种基于fpga芯片的多轴步进电机控制器系统 |
CN111030526A (zh) * | 2019-12-13 | 2020-04-17 | 苏州智感电子科技有限公司 | 电机驱动方法及系统 |
-
2020
- 2020-06-12 CN CN202010539572.2A patent/CN111817623A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102122913A (zh) * | 2011-03-18 | 2011-07-13 | 上海理工大学 | 一种超精细步进电机的控制器 |
CN102843083A (zh) * | 2012-09-18 | 2012-12-26 | 天津市亚安科技股份有限公司 | 一种步进电机电流的控制方法 |
CN103699139A (zh) * | 2013-08-14 | 2014-04-02 | 上海海事大学 | 高分辨率扫描控制系统及其细分驱动控制方法 |
CN105577052A (zh) * | 2015-12-31 | 2016-05-11 | 哈尔滨工业大学 | 一种基于fpga的步进电机无抖动驱动控制系统及基于该系统的控制方法 |
CN107124125A (zh) * | 2017-06-08 | 2017-09-01 | 西南交通大学 | 一种基于fpga芯片的多轴步进电机控制器系统 |
CN111030526A (zh) * | 2019-12-13 | 2020-04-17 | 苏州智感电子科技有限公司 | 电机驱动方法及系统 |
Non-Patent Citations (2)
Title |
---|
于万海: "步进电机细分驱动及微步距角测量修正系统的研究", 《中国优秀硕士学位论文全文数据库工程科技II辑》 * |
李玲娟等: ""一种实用的步进电动机可变细分驱动控制器设计"", 《微特电机》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113258840A (zh) * | 2021-06-08 | 2021-08-13 | 江西有为生物技术有限公司 | 一种步进电机控制系统及方法 |
CN113567768A (zh) * | 2021-09-09 | 2021-10-29 | 深圳市诺科科技有限公司 | 一种步进电机缺相检测电路及其方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111817623A (zh) | 基于fpga的电机多级细分控制系统、方法及存储介质 | |
Hasanien | FPGA implementation of adaptive ANN controller for speed regulation of permanent magnet stepper motor drives | |
JPS6114759B2 (zh) | ||
CN108683365B (zh) | 一种多直流电机反向串联控制系统及方法 | |
US20220271693A1 (en) | Systems and methods for controlling stepping motor | |
Müller et al. | Using the Arduino Uno to teach digital control of power electronics | |
CN110843552A (zh) | 电动汽车扭矩控制方法、装置、设备及存储介质 | |
CN110086383B (zh) | 十二相驱动系统的模型预测控制方法及装置 | |
CN109672207B (zh) | 一种基于虚拟同步机的背靠背系统控制方法及系统 | |
CN113992098A (zh) | 一种永磁同步电机稳态性能的提升方法、系统 | |
CN111181460B (zh) | 单定子双转子盘式对转永磁同步电机的动态电流预测控制方法、系统及介质 | |
CN110165954B (zh) | 一种双馈风力发电系统机侧变流器模型预测控制方法 | |
WO2024051219A1 (zh) | 电机三相电流的不平衡补偿方法、装置及电子设备 | |
CN111130411B (zh) | 提高双轴直驱平台伺服系统同步控制精度的装置及方法 | |
CN109756143B (zh) | 一种三相四开关逆变器的容错控制方法及装置 | |
Rahman et al. | An application oriented test procedure for designing microstepping step motor controllers | |
CN115580184B (zh) | 驱控一体式步进电机的控制方法、点胶设备 | |
CN110336510A (zh) | 电机的控制方法、系统及家用电器 | |
CN116722772A (zh) | 一种基于改进粒子群的永磁同步电机控制方法及系统 | |
CN115833690A (zh) | 六相永磁同步电机无参数模型预测电流控制系统及方法 | |
CN114050862B (zh) | 量子通信跟踪仪的谐振频率控制方法、装置、系统与介质 | |
CN113472244B (zh) | 步进电机的控制方法、装置、设备及存储介质 | |
CN114938153A (zh) | 三相pwm变流器的固定时间命令滤波控制方法及系统 | |
CN115580176A (zh) | 用于可行运动命令的轨迹成形的系统和方法 | |
Ramirez et al. | Non‐linear vector current source for the control of permanent magnet synchronous generators in wave energy applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for 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: 20201023 |