基于fpga的多轴伺服电机电流环控制系统及控制方法

文档序号:7266466阅读:416来源:国知局
专利名称:基于fpga的多轴伺服电机电流环控制系统及控制方法
技术领域
本发明属于工业自动化控制领域,尤其涉及一种基于FPGA的多轴伺服电机电流环控制系统及控制方法。
背景技术
目前广泛使用的伺服驱动器大多采用基于MCU或DSP等微处理器采用纯软件的方式实现,受软件所固有的代码串行执行的特点以及微处理器频率的限制,很难从总体实现的角度减小完成一次采样控制所需要的时间,而常见的基于软件的方案产生的滞后,也大大降低了电机控制的实时性,尤其降低了伺服系统电流环的控制性能。因此,此类驱动器在面对一些绕组电感较小的电机时,由于相对较长的控制滞后,不易得到理想的控制效果。而且,受限于微处理器的处理速度和非常有限的外设资源,当需要构建更加庞大的控制系统 (比如完成多电机协同控制)时,有时不得不采用多处理器或者多个驱动器的方案,这使得 系统的成本和体积增加,而性能很难得到大幅度提高。采用专用的电机控制ASIC芯片虽然具有高速的运算处理能力,但是ASIC芯片内部的电机控制算法以及芯片引脚配置已经固化,用户无法改变,灵活性不足,单片结构也限制了其在高速、多轴同步联动时的应用。而对于目前普遍采用的现场总线网络如工业以太网实现多轴同步伺服控制的方案,为了实现对分立的伺服控制轴的同步控制,在网络接口协议中需要处理复杂的分布时钟同步运算,不易实现简单的多轴同步控制。

发明内容
本发明的目的是提供一种基于FPGA的多轴伺服电机电流环控制系统及方法,本发明可以缩短电流环的调节时间,减小电流环控制滞后,保证较高的运算精度,同时接收多轴电流指令,实现多轴电流环同步控制并输出PWM信号驱动各电机轴功率逆变器模块。本发明提供了一种基于FPGA的多轴伺服电机电流环控制系统,包括设置在FPGA上的并行总线通讯模块、AD采样控制模块、矢量变换模块、复矢量调节器、编码器反馈信号处理模块、正余弦计算模块、SVPWM运算模块、PWM标准输出模块、时序规划模块和电流调理模块;所述并行总线通讯模块用于实现与外部微处理器之间的通讯,接收所述微处理器发送的配置信息、电流指令(I/、I;)以及电流环周期控制启动信号,并回传给微处理器相关的状态变量;所述编码器反馈信号处理模块用于接收外部的位置反馈元件的反馈信号,并将所述反馈信号进行处理后输出电角度信息(Θ e);所述AD采样控制模块用于控制外部多通道AD转换器的启动/停止,为所述AD转换器提供模数转换所必须的时钟信号,并从所述AD转换器获取各电机轴对应通道的电流采样值;所述电流调理模块接收所述AD采样控制模块输出的各电机轴的电流采样值,对所述电流采样值进行调理运算,并根据所述时序规划模块输出的当前控制电机轴号,输出对应轴号电机的电流调理值(Ia、Ib);所述正余弦计算模块接收所述编码器反馈信号处理模块输出的各电机轴的电角度信息(Θ e),对所述电角度信息进行正余弦计算后输出电角度的正余弦值;所述矢量变换模块包括CLARK变换单元、PARK变换单元、IPARK变换单元;所述CLARK变换单元将所述电流调理模块输出的电流调理值(Ia、Ib)进行CLARK变换后输出两相α-β静止坐标系下的电流值(Iα、Ie );所述PARK变换单元将所述电流值(Ια、Ι0)进行PARK变换后输出两相d_q同步旋转坐标系下电流反馈信号(Id、Iq);所述复矢量调节器将来自所述并行总线通讯模块的各电机轴电流给定信号(I/、I/)、调节器控制参数、交叉耦合项(ωεΤ)以及PARK变换单元输出的两相d_q同步旋转坐标系下电流反馈信号(IdUq)进行复矢量调节,输出两相d-q同步旋转坐标系下参考电压矢量(V/,V:);所述IPARK变换单元将所述复矢量调节器输出的两相d-q同步旋转坐标系下参考电压矢量(V/,V:)进行IPARK变换后输出两相α-β静止坐标系下参考电压矢量(Va、Ve );所述SVPWM运算模块接收IPARK变换单元输出的所述两相a - β静止坐标系下参考电压矢量(Va、Ve ),根据当前进行控制运算的电机轴号计算并输出对应轴号的三相PWM信号脉宽给定值;所述PWM标准输出模块根据所述SVPWM运算模块输出的三相PWM信号脉宽给定值输出相应的PWM信号并驱动功率逆变器的功率开关;所述时序规划模块根据所述并行总线通讯模块输出的电流环周期控制启动信号调度所述AD采样控制模块、所述矢量变换模块、所述复矢量调节器、所述编码器反馈信号处理模块、所述正余弦计算模块、 所述SVPWM运算模块以及所述电流调理模块的时序,按照一定的顺序完成多轴伺服电机电流环控制。更进一步地,所述并行总线通讯模块包括第一缓冲寄存器和第二缓冲寄存器;所述第一缓冲寄存器的使能端用于接收总线写使能信号,所述第一缓冲寄存器的输入端用于接收总线上的数据;所述第二缓冲寄存器的输入端连接至所述第一缓冲寄存器的输出端,所述第二缓冲寄存器的使能端用于接收FPGA内部刷新控制信号,所述第二缓冲寄存器的输出端用于输出FPGA内部使用的实时控制参数。
[/I I1 0 If/I更进一步地,所述CLARK变换单元采用变换矩阵;1 = ^ 2^3 /实现将三相
I 3 3 J
a-b-c静止坐标系下的电流调理值(Ia、Ib)变换为两相α-β静止坐标系下的电流值(Ια、
I β ) O
Id f cos6 ηθ] L更进一步地,所述PARK变换单元釆用变换矩阵/ = . ^ n /实现将两相
iq Sixx O cos O -I β
α_β静止坐标系下的电流值(Ια、Ie)变换为两相d-q同步旋转坐标系下电流反馈信号(Id、Iq)。
j/r cos Θ sin O V更进一步地,所述IPARK变换单元采用变换矩阵^ =flT丨实现将两
Va -SinO COS Θ Vd
相d-q同步旋转坐标系下的参考电压矢量(V/,V:)变换为两相α-β静止坐标系下参考电压矢量(Va、Ve )。更进一步地,所述正余弦计算模块采用平面坐标系CORDIC算法实现对所述电角度信息的正余弦计算;其中,数据位数为18位,迭代次数为16次。更进一步地,所述复矢量调节器进行复矢量调节的运算公式为
权利要求
1.一种基于FPGA的多轴伺服电机电流环控制系统,其特征在于,包括设置在FPGA上的并行总线通讯模块、AD采样控制模块、矢量变换模块、复矢量调节器、编码器反馈信号处理模块、正余弦计算模块、SVPWM运算模块、PWM标准输出模块、时序规划模块和电流调理模块; 所述并行总线通讯模块用于实现与外部微处理器之间的通讯,接收所述微处理器发送的配置信息、电流指令(I/、I;)以及电流环周期控制启动信号,并回传给微处理器相关的状态变量; 所述编码器反馈信号处理模块用于接收外部的位置反馈元件的反馈信号,并将所述反馈信号进行处理后输出电角度信息(e e); 所述AD采样控制模块用于控制外部多通道AD转换器的启动/停止,为所述AD转换器提供模数转换所必须的时钟信号,并从所述AD转换器获取各电机轴对应通道的电流采样值; 所述电流调理模块接收所述AD采样控制模块输出的各电机轴的电流采样值,对所述电流采样值进行调理运算,并根据所述时序规划模块输出的当前控制电机轴号,输出对应轴号电机的电流调理值(Ia、Ib); 所述正余弦计算模块接收所述编码器反馈信号处理模块输出的各电机轴的电角度信息(0 e),对所述电角度信息进行正余弦计算后输出电角度的正余弦值; 所述矢量变换模块包括CLARK变换单元、PARK变换单元、IPARK变换单元;所述CLARK变换单元将所述电流调理模块输出的电流调理值(Ia、Ib)进行CLARK变换后输出两相a静止坐标系下的电流值(I a、I e );所述PARK变换单元将所述电流值(I a、I e )进行PARK变换后输出两相d-q同步旋转坐标系下电流反馈信号(Id、Iq); 所述复矢量调节器将来自所述并行总线通讯模块的各电机轴电流给定信号(I/、1;)>调节器控制参数、交叉耦合项(《6T)以及PARK变换单元输出的两相d-q同步旋转坐标系下电流反馈信号(Id、Iq)进行复矢量调节,输出两相d-q同步旋转坐标系下参考电压矢量(V/,V;); 所述IPARK变换单元将所述复矢量调节器输出的两相d-q同步旋转坐标系下参考电压矢量(V/,V:)进行IPARK变换后输出两相a-0静止坐标系下参考电压矢量(Va、Ve); 所述SVPWM运算模块接收IPARK变换单元输出的所述两相静止坐标系下参考电压矢量(Va、Ve ),根据当前进行控制运算的电机轴号计算并输出对应轴号的三相PWM信号脉宽给定值; 所述PWM标准输出模块根据所述SVPWM运算模块输出的三相PWM信号脉宽给定值输出相应的PWM信号并驱动功率逆变器的功率开关; 所述时序规划模块根据所述并行总线通讯模块输出的电流环周期控制启动信号调度所述AD采样控制模块、所述矢量变换模块、所述复矢量调节器、所述编码器反馈信号处理模块、所述正余弦计算模块、所述SVPWM运算模块以及所述电流调理模块的时序,完成多轴伺服电机电流环控制。
2.如权利要求I所述的系统,其特征在于,所述并行总线通讯模块包括第一缓冲寄存器和第二缓冲寄存器;所述第一缓冲寄存器的使能端用于接收总线写使能信号,所述第一缓冲寄存器的输入端用于接收总线上的数据;所述第二缓冲寄存器的输入端连接至所述第一缓冲寄存器的输出端,所述第二缓冲寄存器的使能端用于接收FPGA内部刷新控制信号,所述第二缓冲寄存器的输出端用于输出FPGA内部使用的实时控制参数。
3.如权利要求I所述的系统,其特征在于,所述CLARK变换单元采用变换矩阵
4.如权利要求3所述的系统,其特征在于,所述PARK变换单元釆用变换矩阵
5.如权利要求4所述的系统,其特征在于,所述IPARK变换单元采用变换矩阵
6.如权利要求I所述的系统,其特征在于,所述正余弦计算模块采用平面坐标系CORDIC算法实现对所述电角度信息的正余弦计算;其中,数据位数为18位,迭代次数为16次。
7.如权利要求I所述的系统,其特征在于,所述复矢量调节器进行复矢量调节的运算公式为
8.如权利要求I所述的系统,其特征在于,所述复矢量调节器输出的参考电压矢量(V;, V;)采用下式进行限幅处理
9.如权利要求8所述的系统,其特征在于,所述=^Zimax2-F/2是采用双曲线坐标系CORDIC算法实现的。
10.一种基于FPGA的多轴伺服电机电流环的控制方法,其特征在于,包括下述步骤s1:将电流调理模块、CLARK变换单元、PARK变换单元、复矢量调节器、IPARK变换单元以及SVPWM运算模块依次构成一个六级流水线; s2:采用所述六级流水线对各个电机轴进行控制运算设j表示待控电机轴的序号,j=0、,流水线中的每一个功能模块对第j号电机轴的运算启动以前一个功能模块对第j号电机轴的运算结束且后一个功能模块对第j_l号电机轴的运算已经启动为条件;其中,当j=0时,每一个功能模块对第0号电机轴的运算结束之后立即启动后一个功能模块对第0号电机轴的运算;当j=N时,当流水线中的所述IPARK变换单元对第N号电机轴的运算结束且所述SVPWM运算模块对第N-I号电机轴的运算结束后启动所述SVPWM运算模块对第N号电机轴的运算; s3:根据步骤S2中的运算结果分别对多轴伺服电机电流环进行PWM输出控制。
全文摘要
本发明公开了一种基于FPGA的多轴伺服电机电流环控制系统及控制方法,该控制系统包括设置在FPGA上的并行总线通讯模块、AD采样控制模块、矢量变换模块、复矢量调节器、编码器反馈信号处理模块、正余弦计算模块、SVPWM运算模块、PWM标准输出模块、时序规划模块和电流调理模块,采用纯硬件逻辑实现,能够独立完成对多轴交流伺服电机电流环的同步控制;同时,本发明综合流水线和时分复用的思想,提出了一种多轴时序控制方法,能够提高FPGA资源利用率和运算速度;本发明在显著缩短电流环调节时间的同时,能满足高速高精度伺服驱动、多轴同步驱动、绕组电感较小的伺服电机控制等多种应用需求。
文档编号H02P21/00GK102811012SQ201210253149
公开日2012年12月5日 申请日期2012年7月20日 优先权日2012年7月20日
发明者李叶松, 伍庆, 赵云 申请人:华中科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1