一种脉冲型数控装置及方法
技术领域
本发明涉及一种数控机床领域的一种对伺服电机采用位置型控制的方法,具体地说是一种采用脉冲型输出量对伺服电机进行控制的方法。
背景技术
随着高速DSP器件的技术进步,成本的不断降低,数字式伺服已经成为行业的主流。传统的数控装置对伺服驱动器的控制方法采用模拟量输出的速度值控制。位置环控制由数控装置完成,但这种控制方法对小线段高速木工加工的效果不是很理想。所以现在主流的做法是利用伺服驱动器的DSP上完成位置环控制。
现在的伺服驱动器普遍提供模拟量控制和脉冲量控制两种控制方法,采用脉冲型控制的技术难点在于,由于采用脉冲量的数控装置不参与位置环控制,底层硬件无法对周期抖动现象有一定的纠正功能,脉冲输出无法满足占空比为1:1的条件,无法保证电机运行的平稳性,。
发明内容
针对现有技术的不足,本发明提供一种具有自适应功能,脉冲量输出占空比为1:1的脉冲型数控装置及方法。
本发明为实现上述目的所采用的技术方案是:
一种脉冲型数控装置,包括操作站通过操作站接口电路连接到CPU单元,键盘通过键盘接口电路连接CPU单元,液晶显示屏连接CPU单元,FPGA模块一端所述CPU单元,另一端连接分别通过脉冲接口电路和编码器接口电路连接到伺服驱动器,I/O接口电路连接到所述FPGA模块,所述FPGA模块包括GPMC接口模块、I/O模块、脉冲发生模块和编码器信号处理模块;所述GPMC接口模块连接CPU模块,接收CPU模块的指令信息;
脉冲发生模块一端连接GPMC接口模块,通过GPMC接口模块接收CPU 模块发出的位置指令,并将指令信息转化为方波信号;另一端连接脉冲接口电路,输出方波信号;
所述编码器信号处理模块一端连接编码器接口电路,接收外部编码器输入信号;另一端连接所述GPMC接口模块,用于将伺服驱动器发出的速度信号转换为CPU模块识别的数字量信号,且通过GPMC接口模块将数字量信号传送给CPU模块;
所述I/O模块一端连接GPMC接口模块,通过GPMC接口模块与CPU模块通信,另一端连接I/O接口电路,接收输入和输出信号。
所述脉冲发生模块包括数字信号处理模块,脉冲变频处理模块,脉冲反馈量处理模块;
所述数字信号处理模块一端连接GPMC接口模块,接收CPU模块的数据,另一端连接脉冲变频处理模块和脉冲反馈量处理模块
所述脉冲变频处理模块连接数字信号处理模块,接收数字信号处理模块发出的脉冲数量值,并将脉冲数量值转换成占空比为1:1的方波信号;
所述脉冲反馈量处理模块一端连接所述脉冲变频处理模块,接收脉冲变频处理模块发出的方波信号,另一端连接数字信号处理模块,接收来自数字信号处理模块的脉冲数量值并将脉冲差值反馈给数字信号处理模块。
一种脉冲型数控方法,FPGA模块中的编码器信号处理模块通过编码器接口电路接收外部编码器输入信号后发送到GPMC接口模块,将伺服驱动器发出的速度信号转换为CPU模块识别的数字量信号,且通过GPMC接口模块将数字量信号传送给CPU模块;
CPU模块接收GPMC接口发送的位置信息,并在液晶屏上显示轴运动信息;CPU模块根据加工文件计算出每个周期的插补位置,将处理后的位置信息发送到FPGA中的GPMC接口模块;
脉冲发生模块接收GPMC接口模块发送的位置信息,并将位置信息转化为 方波信号,通过脉冲输出接口电路发送到伺服驱动器,控制伺服电机的运动。
I/O模块通过GPMC接口模块与CPU模块交互I/O信息,且通过I/O接口电路与外部电器信号实现数据交互。
键盘通过键盘接口电路向CPU模块发出控制指令信号。
操作站通过操作站接口电路向CPU模块发出操作指令信号。
所述位置命令信息转化为脉冲输出量包括以下步骤:
数字信号处理模块接收CPU模块传来的位置信息,同时接收脉冲反馈量处理模块发送的位置差值信号,计算出脉冲数量值,将脉冲数量值发送给脉冲变频处理模块和脉冲反馈量处理模块;
脉冲变频处理模块接收数字信号处理模块发送的脉冲数量值,将脉冲数量值转换成占空比1:1的方波信号发送到脉冲接口电路;
脉冲反馈量处理模块接收脉冲变频处理模块输出的方波信号,并将方波信号与数字信号处理模块中发送的脉冲数量值进行比较,若当前周期发出的脉冲数量值小于计算值,则算出位置差值信号,将位置差值信号反馈给数字信号处理模块,则数字信号处理模块在下一周期根据位置差值和CPU模块发送的位置信息重新计算当前周期的脉冲数量值。
所述脉冲数量值的计算方法为:
其中P为脉冲数量值,Fclk为基础时钟,Fc为插补周期频率,e为位置差值信号,Pm为位置命令信息。
若当前周期发出的脉冲数量值等于计算值,则脉冲变频处理模块停止产生方波信号。
本发明具有以下有益效果及优点:
1.采用脉冲型输出接口的数控装置与模拟量输出信号的数控装置相比节省了数模转换芯片,节省了系统成本。
2.采用了可调节的自适应结构使得数控装置在周期有抖动的情况下仍然能够精确的工作。
3.采用方向和增量信号相结合的信号输出方式,能够兼容目前所有的伺服驱动。
附图说明
图1是本发明的整体结构图;
图2是本发明的FPGA内部结构框图;
图3是本发明的脉冲发生模块工作示意图。
具体实施方式
下面结合附图及实施例对本发明做进一步的详细说明。
如图1所示为本发明的整体结构图。
操作站通过操作站接口电路连接到CPU单元,键盘通过键盘接口电路连接CPU单元,液晶显示屏连接CPU单元,FPGA模块一端所述CPU单元,另一端连接分别通过脉冲接口电路和编码器接口电路连接到伺服驱动器,I/O接口电路连接到所述FPGA模块。
FPGA通过GPMC接口连接嵌入式CPU单元,接收嵌入式CPU单元的位置命令信息,并将位置指令转化为脉冲输出量,通过脉冲输出接口电路控制伺服电机的运动;FPGA通过编码器处理模块及接口模块处理增量式编码器传来的位置信息,并将位置信息数据传送给嵌入式CPU单元;运动控制卡还包括IO接口电路,操作站接口电路,键盘接口电路。
CPU模块,采用TI公司的AM3358高性能处理器,其运行频率高达720MHZ,在嵌入式处理器上运行数控软件,实现对驱动轴的插补控制。
8寸液晶显示屏,与CPU模块连接,用于显示轴运动信息,配置信息和PLC 组态显示信息等。
脉冲输出接口电路,编码器输入接口电路一端与伺服驱动器连接,另一端与FPGA模块连接,FPGA模块又与GPMC接口电路连接,液晶显示屏和键盘在运动控制板上通过相应的接口电路与嵌入式CPU板卡连接。
键盘接口的核心芯片是CSC0101A,该电路实现键盘PS2协议与USB接口协议的转换,通过该电路将外部键盘连接到嵌入式CPU的USB接口。
LVDS接口电路的核心芯片是DS90C385,在控制接口卡外部与液晶屏连接,在控制接口卡内部与嵌入式CPU的LCD单元连接,通过该电路可实现将需要的数据信息显示在液晶屏上。
如图2所示为本发明的FPGA内部结构框图。
FPGA模块包括GPMC接口模块、I/O模块、脉冲发生模块和编码器信号处理模块;GPMC接口模块连接CPU模块,接收CPU模块的指令信息。
脉冲发生模块一端连接GPMC接口模块,通过GPMC接口模块接收CPU模块发出的位置指令,并将指令信息转化为方波信号;另一端连接脉冲接口电路,输出方波信号。
编码器信号处理模块一端连接编码器接口电路,接收外部编码器输入信号;另一端连接所述GPMC接口模块,用于将伺服驱动器发出的速度信号转换为CPU模块识别的数字量信号,且通过GPMC接口模块将数字量信号传送给CPU模块。
I/O模块一端连接GPMC接口模块,通过GPMC接口模块与CPU模块通信,另一端连接I/O接口电路,接收输入和输出信号。
FPGA电路内部包括GPMC接口模块,脉冲量信号发生模块,编码器信号处理模块,IO处理模块等。其中GPMC接口模块用于CPU同底层逻辑处理模块间数据交互读写的时序处理和总线地址译码;脉冲量信号发生模块受GPMC接口模块控制,接收来至嵌入式CPU的位置指令,并将指令信息转化为脉冲输出量;编码器信号处理模块用于将增量式编码器的速度信号转换为CPU能识别 的数字量,经过GPMC接口模块传送给嵌入式CPU;IO处理模块用于控制和采样机床的开关量输入和输出,该模块通过GPMC接口模块同嵌入式CPU相连。
如图3所示为本发明的脉冲发生模块工作示意图。
脉冲发生模块包括数字信号处理模块,脉冲变频处理模块,脉冲反馈量处理模块。
数字信号处理模块一端连接GPMC接口模块,接收CPU模块的数据,另一端连接脉冲变频处理模块和脉冲反馈量处理模块。
脉冲变频处理模块连接数字信号处理模块,接收数字信号处理模块发出的脉冲数量值,并将脉冲数量值转换成占空比为1:1的方波信号。
脉冲反馈量处理模块一端连接所述脉冲变频处理模块,接收脉冲变频处理模块发出的方波信号,另一端连接数字信号处理模块,接收来自数字信号处理模块的脉冲数量值并将脉冲差值反馈给数字信号处理模块。
应用于本发明的脉冲型数控装置的一种脉冲型数控方法为:
FPGA模块中的编码器信号处理模块通过编码器接口电路接收外部编码器输入信号后发送到GPMC接口模块,将伺服驱动器发出的速度信号转换为CPU模块识别的数字量信号,且通过GPMC接口模块将数字量信号传送给CPU模块。
CPU模块接收GPMC接口发送的位置信息,并在液晶屏上显示轴运动信息;CPU模块根据加工文件计算出每个周期的插补位置,将处理后的位置信息发送到FPGA中的GPMC接口模块。
脉冲发生模块接收GPMC接口模块发送的位置信息,并将位置信息转化为方波信号,通过脉冲输出接口电路发送到伺服驱动器,控制伺服电机的运动。
I/O模块通过GPMC接口模块与CPU模块交互I/O信息,且通过I/O接口电路与外部电器信号实现数据交互。
键盘通过键盘接口电路向CPU模块发出控制指令信号。
操作站通过操作站接口电路向CPU模块发出操作指令信号。
所述位置命令信息转化为脉冲输出量包括以下步骤:
数字信号处理模块接收CPU模块传来的位置信息,同时接收脉冲反馈量处理模块发送的位置差值信号,计算出脉冲数量值,脉冲数量值的计算方法为:
其中P为脉冲数量值,Fclk为基础时钟,Fc为插补周期频率,e为位置差值信号,Pm为位置命令信息。将脉冲数量值发送给脉冲变频处理模块和脉冲反馈量处理模块。
脉冲变频处理模块接收数字信号处理模块发送的脉冲数量值,将脉冲数量值转换成占空比1:1的方波信号发送到脉冲接口电路。
脉冲反馈量处理模块接收脉冲变频处理模块输出的方波信号,并将方波信号与数字信号处理模块中发送的脉冲数量值进行比较,若当前周期发出的脉冲数量值小于计算值,则算出位置差值信号,将位置差值信号反馈给数字信号处理模块,则数字信号处理模块在下一周期根据位置差值和CPU模块发送的位置信息重新计算当前周期的脉冲数量值;若当前周期发出的脉冲数量值等于计算值,则脉冲变频处理模块停止产生方波信号。