一种基于FPGA芯片的多轴步进电机控制器系统技术方案

技术编号:16131905 阅读:51 留言:0更新日期:2017-09-01 22:19
本发明专利技术涉及一种基于FPGA芯片的多轴步进电机控制器系统,包括FPGA控制模块和多路功率驱动及信号采集模块;所述FPGA控制模块包括Nios II微处理器、CAN控制器IP核、多路步进电机控制IP核等;所述步进电机控制IP核用于步进电机电流细分驱动和轨迹运动的控制;所述每路步进电机控制IP核与一路功率驱动及信号采集模块相连后,连接一路步进电机/编码器。本发明专利技术的控制架构发挥了FPGA丰富可编程硬件资源和并行处理的特点,实现单芯片对多路(最高达25路)步进电机的精确控制,具有小型化、低成本、灵活性高等优点。

【技术实现步骤摘要】
一种基于FPGA芯片的多轴步进电机控制器系统
本专利技术属于电机控制
,尤其涉及一种基于FPGA芯片的多轴步进电机控制器系统。
技术介绍
步进电机是一种将数字脉冲转换为相应位移增量的电磁机械。在正常工作状态下,电机位移输出与数字脉冲输入严格同步,具有较高的控制精度,且控制简单,启停迅速,性能稳定,广泛应用于数控系统、机器人等领域。随着工业自动化的深入发展,越来越多的设备上同时需要多个轴相互配合协同完成空间轨迹的运动控制,如多轴机械加工中心、多关节机械手等设备。各个轴上电机如何协同控制及其实现方法,这是多轴电机控制器需要研究解决的问题。传统的步进电机控制器通常采用专用数字芯片作为主控芯片,目前主流的控制芯片为DSP数字信号处理器,同时再辅以必要的外围分立芯片作为数据处理和通讯的接口。这类主控芯片通常能够实现较为复杂的电机控制算法,但由于专用数字芯片内部硬件资源的限制以及控制算法的串行运行特点,单芯片很难满足多轴步进电机的协同控制需要。在现有技术中,往往采用单轴电机控制器分别控制各轴,容易出现无法同步的问题,还存在结构复杂、系统成本高的问题。因此,需要一种单芯片同时对多个轴进行同步控制的多轴步进电机控制器系统。
技术实现思路
针对现有技术存在的问题,本专利技术提供了一种基于FPGA芯片的多轴步进电机控制器系统。本专利技术是这样实现的,一种基于FPGA芯片的多轴步进电机控制器系统,包括FPGA控制模块和多路功率驱动及信号采集模块;所述FPGA控制模块,其核心为Altera公司的CycloneV系列FPGA芯片5CEFA7F31,包括NiosII微处理器、CAN控制器IP核、多路步进电机控制IP核,根据实际项目的需求还包括定时器IP核、EPCSIP核、JTAGUART等,它们之间通过片内Avalon总线连通;所述步进电机控制IP核与一路功率驱动与信号采集模块相连后,连接一路步进电机/编码器;所述多路步进电机控制IP核并行工作,各路之间互不干扰,并行地控制多路步进电机的运行。进一步,所述CAN控制器IP核,一端通过CAN通信接口电路连接上位机,另一端通过片内Avalon总线连接NiosII微处理器,用于实现NiosII微处理器与上位机之间的串行通信。进一步,所述NiosII微处理器,用于与上位机的数据交互,将上位机的控制指令信息解析,根据解析结果对每路步进电机控制IP核的配置信息和运行信息进行设定,并将多轴步进电机控制器的状态信息反馈给上位机。进一步,所述步进电机控制IP核,包括Avalon总线接口模块、速度剖面产生模块、细分电流计算模块、电流调节器、PWM输出模块、AD接口控制模块、电流调理模块、位置反馈处理模块和时序规划模块,用于实现步进电机电流细分驱动和轨迹运动的控制;所述Avalon总线接口模块,用于与NiosII微处理器的数据交互,接收NiosII微处理器过来的配置信息和运行信息,并将状态信息反馈给NiosII微处理器;所述速度剖面产生模块用于根据配置信息和运行信息进行梯形速度剖面参数的运算,实时计算出每一个步进脉冲的控制周期,并生成步进脉冲信号CP和转向信号Dir;所述细分电流计算模块用于根据步进脉冲信号CP和转向信号Dir计算步进电机两相绕组电流的给定值(Ia*和Ib*);所述AD接口控制模块用于控制外部的双通道AD转换器完成模数转换,以读取外部AD转换器的电流采样结果;所述电流调理模块用于根据电流采样结果计算出步进电机两相绕组电流的反馈值(Ia和Ib);所述电流调节器用于根据两相绕组电流的给定值(Ia*和Ib*)和反馈值(Ia和Ib)分别进行电流PI闭环运算,以生成相应绕组电流控制所需的脉冲占空比信号Duty;所述PWM输出模块用于根据脉冲占空比信号Duty和转向信号Dir,以生成相应绕组电流控制所需的PWM信号;所述位置反馈处理模块用于获取当前电机转子位置信息;所述时序规划模块用于Avalon总线接口模块、速度剖面产生模块、细分电流计算模块、电流调节器、PWM输出模块、AD接口控制模块、电流调理模块、位置反馈处理模块的时序调度,使得它们按照一定的顺序执行以完成步进电机的控制。所述步进电机控制IP核采用Verilog硬件描述语言设计实现。进一步,所述功率驱动及信号采集模块,包括电平转换电路、驱动电路、功率H桥电路、电流传感器、电流调理电路、AD转换电路和位置调理电路;所述步进电机控制IP核输出的PWM信号经电平转换电路后接驱动电路的输入端;所述驱动电路的输出端接功率H桥电路的输入端;所述功率H桥电路的输出端接两相步进电机的一相绕组;所述电流传感器串联在步进电机绕组回路中,用于绕组电流的采集,依次通过电流调理电路、AD转换电路和电平转换电路后接步进电机控制IP核的电流信号输入;步进电机后端设置有光电编码器用于采集电机转子位置信号,依次通过位置调理电路、电平转换电路后接步进电机控制IP核的转子位置信号输入。进一步,所述驱动电路采用Avago公司的双通道光隔离型IGBT驱动器HCPL-315J;所述电流调理电路采用Avago公司的具有较高线性度和共模电压抑制能力的线性隔离采样光耦HCPL-7800A。其中光耦隔离型器件的使用,使得FPGA控制模块和功率驱动及信号采集模块之间实现了电气隔离。本专利技术的优点及积极效果为:本专利技术构建了一种基于FPGA芯片的多轴步进电机控制器技术方案,充分利用了FPGA丰富可编程硬件资源和并行处理能力,实现了单片FPGA同时控制多路步进电机,解决了传统控制器只能控制一路或两路的问题,同时也较好地解决多个电机之间的同步问题,实现了多轴步进电机控制系统的高度集成化,减小了控制系统体积,降低了成本,提高了系统稳定性。本专利技术采用模块化和IP设计思想,将各模块作为独立体系设计,不仅在FPGA内部嵌入NiosII微处理器使FPGA具备数字信号处理和事务性协调处理功能,同时在NiosII微处理器周围通过纯硬件逻辑单元的形式(步进电机控制IP核)构建多路步进电机控制功能模块,并配置与现场总线通信有关的功能模块,整个系统结构简洁清晰,便于系统扩展以及升级维护。本专利技术设计的步进电机控制IP核,不仅具有电流细分驱动功能,还具有运行速度剖面计算功能,可实现步进电机的精确控制,而且控制参数可根据用户需求由微处理器灵活设置,具有较广的适用性。附图说明图1是本专利技术实施例提供的基于FPGA芯片的多轴步进电机控制器系统示意图。图中:1、FPGA控制模块;2、多路功率驱动及信号采集模块;3、步进电机/编码器组。图2为本专利技术实施例提供的步进电机控制IP核架构图;图3为本专利技术实施例提供的双缓冲结构示意图;图4为本专利技术实施例提供的时序规划模块时序调度示意图;图5为本专利技术实施例提供的功率驱动及信号检测模块架构图;图6为本专利技术实施例提供的功率H桥电路示意图;图7为本专利技术实施例提供的光耦隔离型驱动电路示意图;图8为本专利技术实施例提供的光耦隔离型电流调理电路示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。在现有技术中,往往采用单轴电机控制器分别控制各轴,容易出现无法同步的问题,还存在结构复杂本文档来自技高网...
一种基于FPGA芯片的多轴步进电机控制器系统

【技术保护点】
一种基于FPGA芯片的多轴步进电机控制器系统,其特征在于,所述基于FPGA芯片的多轴步进电机控制器系统包括:通过CAN通信接口与上位机连接,至少集成有一组步进电机控制IP核,用于与上位机的通信,将上位机的控制指令信息解析,根据解析结果对每路步进电机控制IP核的配置信息、运行信息进行设定,并将多轴步进电机控制器的状态信息反馈给上位机的FPGA控制模块;与FPGA控制模块互逆连接,至少集成一组功率驱动和位置及电流采集电路,用于步进电机的功率驱动,以及将电机位置及电流的实时信号采集并反馈给FPGA控制模块的多路功率驱动及信号采集模块;与多路功率驱动及信号采集模块互逆连接,至少设置一组步进电机/编码器,用于步进电机转子位置的实时检测的步进电机/编码器组。

【技术特征摘要】
1.一种基于FPGA芯片的多轴步进电机控制器系统,其特征在于,所述基于FPGA芯片的多轴步进电机控制器系统包括:通过CAN通信接口与上位机连接,至少集成有一组步进电机控制IP核,用于与上位机的通信,将上位机的控制指令信息解析,根据解析结果对每路步进电机控制IP核的配置信息、运行信息进行设定,并将多轴步进电机控制器的状态信息反馈给上位机的FPGA控制模块;与FPGA控制模块互逆连接,至少集成一组功率驱动和位置及电流采集电路,用于步进电机的功率驱动,以及将电机位置及电流的实时信号采集并反馈给FPGA控制模块的多路功率驱动及信号采集模块;与多路功率驱动及信号采集模块互逆连接,至少设置一组步进电机/编码器,用于步进电机转子位置的实时检测的步进电机/编码器组。2.如权利要求1所述的基于FPGA芯片的多轴步进电机控制器系统,其特征在于,所述FPGA控制模块,包括NiosII微处理器、CAN控制器IP核、多路步进电机控制IP核、定时器IP核、EPCSIP核、JTAGUART;所述多路步进电机控制IP核通过片内Avalon总线分别连通NiosII微处理器、CAN控制器IP核、定时器IP核、EPCSIP核、JTAGUART;所述多路步进电机控制IP核连接多路功率驱动和位置及电流采集电路。3.如权利要求2所述的基于FPGA芯片的多轴步进电机控制器系统,其特征在于,所述CAN控制器IP核,一端通过CAN通信接口电路连接上位机,另一端通过片内Avalon总线连接NiosII微处理器,用于实现NiosII微处理器与上位机之间的串行通讯。4.如权利要求2所述的基于FPGA芯片的多轴步进电机控制器系统,其特征在于,所述NiosII微处理器,用于与上位机的数据交互,将上位机的控制指令信息解析,根据解析结果对每路步进电机控制IP核的配置信息、运行信息进行设定,并将多轴步进电机控制器的状态信息反馈给上位机。5.如权利要求2所述的基于FPGA芯片的多轴步进电机控制器系统,其特征在于,所述步进电机控制IP核,包括Avalon总线接口模块、速度剖面产生模块、细分电流计算模块、电流调节器、PWM输出模块、AD接口控制模块、电流调理模块、位置反馈处理模块和时序规划模块;用于实现步进电机电流细分驱动和轨迹运动的控制;所述Avalon总线接口模块,用于与NiosII微处理器的数据交互,接收NiosII微处理器过来的配置信息和运行信息,并将状态信息反馈给NiosII微处理器;所述速度剖面产生模块用于根据配置信息和运行信息进行梯形速度剖面参数的运算,实时计算出每一个步进脉冲的控制周期,并生成步进脉冲信号CP和转向信号Dir;所述细分电流计算模块用于根据步进脉冲信号CP和转向信号Dir计算步进电机两相绕组电流的给定值Ia*和Ib*;所述AD接口控制模块用于控制外部的双通道AD转换器完成模数转换,以读取外部AD转换器的电流采样结果;所述电流调理模块用于根据电流采样结果计算出步进电机两相绕组电流的反馈值Ia和Ib;所述电流调节器用于根据两相绕组电流的给定值Ia*和Ib*和反馈值Ia和Ib分别进行电流PI闭环运算,以生成相应绕组电流控制所需的脉冲占空比信号Duty;所述PWM输出模块用于根据脉冲占空比信号Duty和转向信号Dir,以生成相应绕组电流控制所需的PWM信号;所述位置反馈处理模块用于获取当前电机转子位置信息;所述时序规划模块用于Avalon总线接口模块、速度剖面产生模块、细分电流计算模块、电流调节器、PWM输出模块、AD接口控制模块、电流调理模块、位置反馈处理模块的时序调度,使得它们按照一定的顺序执行以完成步进电机的控制。6.如权利要求1所述的基于FPGA芯片的多轴步进电机控制器系统,其特征在于,所述功率驱动及信号采集模块,包括电平转换电路、驱动电路、功率H桥电路、电流传感器、电流调理电路、AD转换电路和位置调理电路;所述步进电机控制IP核输出的PWM信号经电平转换电路后接驱动电路的输入端;所述驱...

【专利技术属性】
技术研发人员:王邦继刘庆想周磊李相强张健穹
申请(专利权)人:西南交通大学
类型:发明
国别省市:四川,51

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

1