基于FPGA的电机控制系统及方法技术方案

技术编号:15441100 阅读:108 留言:0更新日期:2017-05-26 06:21
本发明专利技术涉及一种基于FPGA的电机控制系统,属于电机控制领域,其包括上位机、CPU和用于驱动外部电机的电机驱动器,上位机和CPU通过串行通信总线连接,其特征在于:所述的电机控制系统还包括FPGA控制器,FPGA控制器包括参数寄存器组、与参数寄存器组连接的运动控制模块,参数寄存器组通过通信总线与CPU连接,运动控制模块通过通信总线与电机控制器连接,所述的基于FPGA的电机控制系统具有更高的响应速度和更高的控制精度。

Motor control system and method based on FPGA

The invention relates to a FPGA based motor control system, belonging to the field of motor control, including PC, CPU and motor driver for driving an external motor, PC and CPU are connected by serial communication bus, which is characterized in that the motor control system including FPGA controller, FPGA controller parameters including the register group in connection with the parameters of the register set, motion control module, the parameter registers via a communication link with the CPU bus, motion control module through the communication bus connected with the motor controller, FPGA motor control system has higher response speed and higher control precision based on the.

【技术实现步骤摘要】
基于FPGA的电机控制系统及方法
本专利技术属于电机控制领域,尤其涉及基于FPGA的电机控制系统及控制方法。
技术介绍
电动机是电能转化为机械能的必要装置,广泛应用于各种工业民用设备中。近些年来,随着电力电子技术、控制技术和计算机技术的发展,电机的应用得到进一步发展,电机控制器经历了从模拟控制器到数字控制器的发展,数字控制器与模拟控制器相比,性能更可靠、参数调节更方便、控制精度更高、控制策略更灵活并且对环境因素不敏感。数字控制器一般采用CPU控制电机,虽然比模拟控制器减小了系统体积、简化了电路,传统的以单片机为CPU的运动控制卡已经不能满足现代工业和社会发展的要求。归纳起来,主要表现在:其并行能力差,单片机指令执行以精简指令系统来完成,即指令与指令间为顺序执行方式,遇到突发状况只能采取中断系统进行处理,意味着必须一定时间的等待,完全无法进行并行处理,从而在应对高速度,复杂系统时无法胜任。另外,现今市场上已有用于工业中的直流电机控制系统,驱动电路采用人工搭建H桥,而且控制的电机数量有限,基本上以一个控制系统控制一台电机,控制范围有限,而且成本高昂,灵活性查。综上所述,速度的运算需要CPU的频繁参与,导致了运算时间增加,影响系统的整体效率,在驱动多个电机的情况下,CPU的运行速度成了提高性能的瓶颈。
技术实现思路
针对现有技术的缺陷,本专利技术提供一种基于FPGA的电机控制系统,实现电机控制系统具有更高的响应速度和更高的控制精度。为了达到目的,本专利技术提供的技术方案为:本专利技术涉及的一种基于FPGA的电机控制系统,其包括上位机、CPU、至少一个电机、以及与电机对应的电机驱动器,上位机和CPU通过串行通信总线连接,其特征在于:其还包括FPGA控制器,所述的FPGA控制器包括参数寄存器组和运动控制模块,参数寄存器组包括启动寄存器、方向寄存器、转速寄存器、加速度寄存器、模式寄存器、减速位置寄存器、停止位置寄存器、当前位置状态寄存器和当前速度状态寄存器,启动寄存器、方向寄存器、转速寄存器、加速度寄存器、模式寄存器、减速位置寄存器、停止位置寄存器、当前位置状态寄存器和当前速度状态寄存器的输入端均与CPU通信连接,输出端均与运动控制模块的输入端通信连接,运动控制模块的输出端与电机驱动器通信连接,一个电机驱动器对应驱动一个电机。优选地,所述的运动控制模块包括FPGA可编程逻辑器件和脉冲生成器,所述的FPGA可编程逻辑器件的输入端和输出端分别与参数寄存器组和脉冲生成器通讯连接,脉冲生成器的输出端与电机驱动器通信连接。优选地,所述的电机数量至少为两个,所述的参数寄存器组的个数与电机数量相同,所述的运动控制模块为一个,所述的FPGA控制器还包括电机选择寄存器、第一选择器、选定参数寄存器组和第二选择器,所述的第一选择器和第二选择器依次设在参数寄存器组和运动控制模块之间,分别与参数寄存器组和运动控制模块通信连接,第二选择器设在运动控制模块和电机驱动机之间,输入端和输出端分别与运动控制模块和电机驱动器通信连接,所述的电机选择寄存器的输入端与CPU通信连接,两个输出端分别与第一选择器和第二选择器通信连接。本专利技术还涉及上诉基于FPGA的电机控制系统的控制方法,其特征在于:其包括速度模式和位置模式两种运行模式,在速度模式下,上位机向CPU发起电机运动命令,CPU向方向寄存器、转速寄存器、加速度寄存器和模式寄存器中写入参数,向启动寄存器写入信号1,电机以设定的加速度值每隔一定时间增加速度值,当速度达到设定速度时保持匀速,上位机向CPU发起电机停止命令,CPU启动寄存器写入0,FPGA电机控制模块以加速度值减速,速度减到零时电机停止;在位置模式下,上位机向CPU发起电机运动命令,CPU向方向寄存器、转速寄存器、加速度寄存器、模式寄存器、减速位置寄存器、停止位置寄存器写入参数,向启动寄存器写入信号1,FPGA电机控制模块以设定的加速度值每隔一定时间增加速度值,当速度达到设定速度时保持匀速,当电机位置到达减速位置时开始以加速度值减速,当电机位置到达停止位置时电机停止。采用本专利技术提供的技术方案,与现有技术相比,具有如下有益效果:本专利技术涉及的电机控制系统降低了CPU的运算负担,CPU只需向FPGA控制器写入方向寄存器、转速寄存器、加速度寄存器、模式寄存器、减速位置寄存器、停止位置寄存器和启动寄存器,加减速区间的速度由FPGA控制器运算,提高了运算速度和控制精度。附图说明图1是本专利技术基于FPGA的电机控制系统的结构示意图;图2是本专利技术控制单个电机的控制系统的结构示意图;图3是本专利技术控制多个电机的控制系统的结构示意图。具体实施方式为进一步了解本专利技术的内容,结合实施例对本专利技术作详细描述,以下实施例用于说明本专利技术,但不用来限制本专利技术的范围。实施例一:结合附图1所示,本实施例涉及电机控制系统包括上位机1、CPU2、用于驱动外部电机的电机驱动器6和FPGA控制器3,上位机1和CPU2通过串行通信总线连接,所述的FPGA控制器包括参数寄存器组4、运动控制模块5。结合附图2所示,参数寄存器组又包括用于启动电机运转的启动寄存器41、用于设置电机运行方向的方向寄存器42、用于设置电机运行速度的转速寄存器43、用于设置电机运行加速度的加速度寄存器44、用于设置电机按照速度模式或位置模式运行的模式寄存器45、用于设置电机开始减速位置的减速位置寄存器46、用于设置电机到达目标位置的停止位置寄存器47、用于反馈电机当前位置的当前位置状态寄存器48、用于反馈电机当前速度的当前速度状态寄存器49,所述CPU与FPGA控制器通过数据、地址及控制总线实现数据交互,CPU只需向FPGA控制器写入方向寄存器、转速寄存器、加速度寄存器、模式寄存器、减速位置寄存器、停止位置寄存器和启动寄存器的值。所述的运动控制模块通过通信总线与电机控制器连接,其包括FPGA可编程逻辑器件51和用于产生脉冲的脉冲生成器52,脉冲生成器由FPGA可编程逻辑器件51根据所述启动寄存器、方向寄存器、转速寄存器、加速度寄存器、模式寄存器、减速位置寄存器和停止位置寄存器的值来产生并输出脉冲信号、方向信号、使能信号,并返回电机的当前位置和当前速度信号,电机控制器驱动外部电机。上述控制系统控制单个电机时,可使电机按照两种模式运行。在速度模式下,电机8发起运转并的步骤包括:上位机1向CPU2发起电机运动命令,CPU2向FPGA控制器4写入方向寄存器、转速寄存器、加速度寄存器、模式寄存器的参数,CPU2向FPGA控制器的启动寄存器写入1,脉冲生成器52根据输入FPGA可编程逻辑器件51的参数,发出相应的脉冲信号驱动电机驱动器6,电机8以设定的加速度值每隔一定时间增加速度值,当速度达到设定速度时保持匀速;在速度模式下,电机8停止运转的步骤包括:上位机向CPU发起电机停止命令;CPU向FPGA控制器的启动寄存器写入0;FPGA电机控制模块以加速度值减速,速度减到零时电机停止。在位置模式下,电机8发起运转并停止的步骤包括:上位机向CPU发起电机运动命令,CPU向FPGA控制器写入方向寄存器、转速寄存器、加速度寄存器、模式寄存器、减速位置寄存器、停止位置寄存器,CPU向FPGA控制器的启动寄存器写入1,FPGA电机控制模块以设定的加速度本文档来自技高网...
基于FPGA的电机控制系统及方法

【技术保护点】
一种基于FPGA的电机控制系统,其包括上位机、CPU、至少一个电机、以及与电机对应的电机驱动器,上位机和CPU通过串行通信总线连接,其特征在于:其还包括FPGA控制器,所述的FPGA控制器包括参数寄存器组和运动控制模块,参数寄存器组包括启动寄存器、方向寄存器、转速寄存器、加速度寄存器、模式寄存器、减速位置寄存器、停止位置寄存器、当前位置状态寄存器和当前速度状态寄存器,启动寄存器、方向寄存器、转速寄存器、加速度寄存器、模式寄存器、减速位置寄存器、停止位置寄存器、当前位置状态寄存器和当前速度状态寄存器的输入端均与CPU通信连接,输出端均与运动控制模块的输入端通信连接,运动控制模块的输出端与电机驱动器通信连接,一个电机驱动器对应驱动一个电机。

【技术特征摘要】
1.一种基于FPGA的电机控制系统,其包括上位机、CPU、至少一个电机、以及与电机对应的电机驱动器,上位机和CPU通过串行通信总线连接,其特征在于:其还包括FPGA控制器,所述的FPGA控制器包括参数寄存器组和运动控制模块,参数寄存器组包括启动寄存器、方向寄存器、转速寄存器、加速度寄存器、模式寄存器、减速位置寄存器、停止位置寄存器、当前位置状态寄存器和当前速度状态寄存器,启动寄存器、方向寄存器、转速寄存器、加速度寄存器、模式寄存器、减速位置寄存器、停止位置寄存器、当前位置状态寄存器和当前速度状态寄存器的输入端均与CPU通信连接,输出端均与运动控制模块的输入端通信连接,运动控制模块的输出端与电机驱动器通信连接,一个电机驱动器对应驱动一个电机。2.根据权利要求1所述的基于FPGA的电机控制系统,其特征在于:所述的运动控制模块包括FPGA可编程逻辑器件和脉冲生成器,所述的FPGA可编程逻辑器件的输入端和输出端分别与参数寄存器组和脉冲生成器通讯连接,脉冲生成器的输出端与电机驱动器通信连接。3.根据权利要求1所述的基于FPGA的电机控制系统,其特征在于:所述的电机数量至少为两个,所述的参数寄存器组的个数与电机数量相同,所述的运动控制模块为一个,所述的FPGA控制器还包括电机选择寄存器、第一选择...

【专利技术属性】
技术研发人员:唐晖陆怀恩
申请(专利权)人:广州市爱司凯科技股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1