首页> 中国专利> 基于DSP+FPGA伺服实现工业机器人多轴控制的方法

基于DSP+FPGA伺服实现工业机器人多轴控制的方法

摘要

本发明公开了基于DSP+FPGA伺服实现工业机器人多轴控制的方法,包括FPGA、DSP和伺服驱动器电路,方法包括:FPGA采集编码器数据,通过EMIF接口发送编码器数据和电流数据给DSP;DSP计算位置控制PI环和速度控制PI环,得到设定电流,通过EMIF接口发送设定电流给FPGA;FPGA进行电流环控制,采用电机控制算法计算输出占空比,输出占空比驱动电机的功率开关管,控制电机转动。在不增加DSP数量的情况下,通过增加1片FPGA,并且将电流环放入到FPGA,节省了DSP资源,节省了成本;提高了控制性能,实现更快的电流控制响应;解决了DSP中PWM外设及ADC外设有限的问题。

著录项

  • 公开/公告号CN113037150A

    专利类型发明专利

  • 公开/公告日2021-06-25

    原文格式PDF

  • 申请/专利号CN202110274595.X

  • 申请日2021-03-15

  • 分类号H02P5/46(20060101);H02P21/00(20160101);H02P21/14(20160101);H02P21/22(20160101);H02P27/08(20060101);

  • 代理机构51213 四川省成都市天策商标专利事务所;

  • 代理人张秀敏

  • 地址 610000 四川省成都市成华区龙潭工业园华冠路199号

  • 入库时间 2023-06-19 11:35:49

说明书

技术领域

本发明涉及工业机器人控制技术领域,具体的说,是一种基于DSP+FPGA伺服实现工业机器人多轴控制的方法。

背景技术

现有技术中,工业机器人伺服驱动器常用的架构为纯DSP控制方案,DSP实现PWM外设功能、DSP实现电流采样、DSP实现编码器位置采取以及DSP通过PWM直接去控制电机驱动电路,从而控制电机的转动。但是,DSP中PWM外设及ADC外设有限,如采用双CPU的DSP最多只控制4台电机,若需控制更多的电机则需增加DSP数量。当控制多台电机比如实现8-10台电机控制时,则需要24-30个PWM外设、16-20个ADC电流采样外设、需要8-10个485通信模块,这样往往需要使用3片甚至更多的DSP芯片来实现10台电机控制,而且各轴电机控制的同步性可能会受到影响。现有技术中最常见的做法是使用10片DSP控制10台电机,导致成本较高且各轴电机控制的同步性受到影响。

发明内容

本发明的目的在于提供一种基于DSP+FPGA伺服实现工业机器人多轴控制的方法,用于解决现有技术中DSP中PWM外设及ADC外设有限,需要多片DSP控制多台电机的问题。

本发明通过下述技术方案解决上述问题:

一种基于DSP+FPGA伺服实现工业机器人多轴控制的方法,包括FPGA、DSP和伺服驱动器电路,包括:

步骤S100:FPGA采集编码器数据,通过EMIF接口发送编码器数据和电流数据给DSP;

步骤S200:DSP计算位置控制PI环和速度控制PI环,得到设定电流,通过EMIF接口发送设定电流给FPGA;

步骤S300:FPGA进行电流环控制,采用电机控制算法计算输出占空比,输出占空比驱动电机的功率开关管,控制电机转动。

本发明在不增加DSP数量的情况下,通过增加1片FPGA,并且将电流环放入到FPGA,节省了DSP资源,节省了成本;将伺服控制的电流控制PI环及电机控制算法集成到了FPGA,FPGA实现了PWM外设、实现了∑-Δ电机电流采样,从而解决了DSP中PWM外设及ADC外设有限的问题;且由于FPGA在电机控制周期内能多次对电流信号进行滤波处理,可以得到更加准确的电流信号,相比DSP外设一个周期内往往只能采集一次,本发明提高了控制性能,实现更快的电流控制响应。

所述步骤S200中DSP根据接收的编码器数据计算位置控制PI环:

其中,u

DSP通过反馈的编码器数据计算出速度反馈量,实现速度控制PI环:

其中,u′

得到速度控制PI环的输出,即设定电流。

所述步骤S300中FPGA根据采集的电机电流和DSP发送的设定电流,计算电流环的输出:

其中,u″

FPGA根据电流环的输出及电机控制算法SVPWM计算占空比:

vα=v

v

其中,v

由v

其中,T

计算中间变量

得到:

T

FPGA按照占空比输出变量进行PWM脉宽调制,控制驱动芯片,实现开关功率器件脉宽调制,控制电机转动。

所述步骤S100中FPGA采用编码器协议采集编码器数据,编码器协议包括包含读取多圈命令、读取单圈命令、读取全数据命令、读取编码器故障命令和清除故障报警命令;编码器数据包括单圈数据、多圈数据、位置信号和故障报警。

本发明与现有技术相比,具有以下优点及有益效果:

(1)本发明将伺服控制的电流控制PI环及电机控制算法集成到了FPGA,FPGA实现了PWM外设、实现了∑-Δ电机电流采样,从而解决了DSP中PWM外设及ADC外设有限的问题,在不增加DSP数量的情况下,通过增加1片FPGA,即1片DSP+1片FPGA可以实现了10台电机的控制;将电流环放入到FPGA,节省了DSP资源,节省了成本,且FPGA在100us电机控制周期内能多次对电流信号进行滤波处理,可以得到更加准确的电流信号,对改善控制性能有积极影响。相比DSP外设一个周期内往往只能采集一次,本发明可以实现更快的电流控制响应。

(2)本发明中FPGA是可编程现场门整列,易于实现DSP的ADC外设功能及PWM外设功能。

附图说明

图1为本发明的流程图;

图2为本发明的DSP和FPGA实现的功能模块示意图。

具体实施方式

下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。

实施例1:

结合附图1和图2所示,一种基于DSP+FPGA伺服实现工业机器人多轴控制的方法,包括FPGA、DSP和伺服驱动器电路,包括:

步骤S100:首先,进行系统初始化和EMIF通信接口初始化;

设置DSP与FPGA进行通信采集电流和编码器位置的周期为100us;

FPGA采集编码器数据,通过EMIF接口发送编码器数据给DSP,FPGA产生时钟信号,典型的时钟周期为50ns,去采集电流采样芯片的电流,电流采样芯片返回的数据为16位数字信号电流数据给DSP;

FPGA采用编码器协议采集编码器数据,编码器协议包括包含读取多圈命令、读取单圈命令、读取全数据命令、读取编码器故障命令和清除故障报警命令;编码器数据包括单圈数据、多圈数据、位置信号和故障报警。

步骤S200:DSP计算速度和电流,实现位置控制PI环和速度控制PI环,并计算出设定电流,通过EMIF接口发送设定电流给FPGA,具体地:

DSP根据接收的编码器数据计算位置控制PI环:

其中,u

DSP通过反馈的编码器数据计算出速度反馈量,实现速度控制PI环:

其中,u′

得到速度控制PI环的输出,即设定电流;

步骤S300:FPGA进行电流环控制,采用电机控制算法(包括Clark变换、Park变换、Iclark变换、Ipark变换、SVPWAM)计算出最终输出的占空比,FPGA将计算出的占空比驱动电机的功率开关管,控制电机转动。具体地:

FPGA根据采集的电机电流和DSP发送的设定电流,计算电流环的输出:

其中,u″

FPGA根据电流环的输出及电机控制算法SVPWM计算占空比:

v

v

其中,v

由v

其中,T

计算中间变量

得到:

T

FPGA按照占空比输出变量进行PWM脉宽调制,控制驱动芯片,实现开关功率器件脉宽调制,控制电机转动。

尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号