Acs运动控制器实时暂停的实现方法

文档序号:6327519阅读:721来源:国知局
专利名称:Acs运动控制器实时暂停的实现方法
技术领域
本发明涉及 一种ACS运动控制器的控制方法,尤其是一种ACS运动控制器实时暂停的实现方法。
背景技术
ACS运动控制器拥有强大的运动控制指令,能实现点对点、点动、区间运动、主从运动、随意指定路径等多种形式的运动;具有丰富的数学函数,能实现复杂的数学表达式,具有64位浮点运算精度;支持一维和二维数组,数组最大容量为10万;具有类似C语言的高级编程语言,拥有丰富的指令集;具有10个程序区,可以10个程序同时运行。在专用机械设备控制领域,ACS的灵活性、开放性和高性能高可靠性使之能胜任各类专机数控系统的工作。但ACS的数控功能相较于专业的数控系统还有很多的不足,将ACS 控制器用于通用的数控机床上不大现实。ACS运动控制系统采用主从结构,主处理器(MPU)执行高等级任务,负责轮廓轨迹生成,与主机和从处理器通信,给定值计算,安全控制,接口信号采集与处理,硬件位置触发处理,主机即时命令执行,程序运行与管理,系统诊断等,从处理器(SPii)以20KHZ的伺服更新率执行实时的位置环速度环运动控制算法,接受并处理编码器反馈信号,发送驱动命令,每个从处理器控制两个轴。ACS运动控制器可以同时装载10个程序,并能多任务并行执行。程序启动后,主处理器(MPU)负责解释管理和执行程序,如果程序中没有需要等待的条件判断语句,程序执行的速度非常快,而不是执行一条运动命令,等待其执行完毕之后再执行下一条。有关各轴运动控制的命令行瞬间就被MPU送入SPii从处理器的运动命令队列中,各轴的运动命令队列最大可容纳50条命令行,这样在SPii从处理器处理伺服运动命令时,MPU有足够的响应时间处理更高等级的任务。在用ACS运动控制器开发的卷簧机数控系统中,运动程序必须具备实时暂停功能。卷簧机数控系统有一项功能是要求用手轮控制卷簧加工程序的运行,弹簧加工试制之前,需要调机检验,对弹簧的加工程序进行修正。系统进入检验工作模式时,程序的运行可通过摇手轮控制,手轮快则运转速度快,手轮停则运动立即暂停,手轮起运动继续,这样在调机时就可以通过摇手轮缓缓的将一个弹簧卷出来,中途可以根据卷的情况实时暂停下来,情况观察清楚后程序可在断点处继续运行。在ACS控制器提供的几种运动停止命令中,halt,kill,disable,break虽然都可以停止各轴的运动,但停止后运动程序不可继续,在程序管理命令中Stop,pause命令可以停止程序,但都不能立即停止当前的运动,要等到已进入运动指令队列的所有命令执行完毕才能停止。Pause命令生效后指定缓冲区中的程序可以挂起,但运动可能会继续,因为运动指令已下载到从处理器的指令队列中,等到Pause命令前从处理器中运动指令队列里的命令行完全执行完毕,队列空间彻底清空时才能停止所有运动。因此Pause命令只能挂起缓冲区中运行的程序,却并不能让已加载到从处理器队列中的命令行暂停执行。如何实现运动程序立即暂停,且暂停后程序可继续运行,是困扰ACS运动控制器用户的一个关键问题。

发明内容
本发明的目的是为了解决上述技术的不足而设计的一种可实现运动程序立即暂停,且暂停后程序可继续运行的ACS运动控制器实时暂停的实现方法。本发明所设计的ACS运动控制器实时暂停的实现方法,包括将轨迹段指令载入到从处理器中的步骤,在前述步骤中包含如下措施将大的轨迹段指令细分成细小的轨迹指令,然后控制轨迹指令逐条载入到从处理器的队列中,同时使轨迹指令逐条执行,一条执行完再继续装入下一条。优选的,通过在轨迹指令之间设置条件控制指令的方式控制轨迹指令逐条载入到从处理器的队列中。优选的,将大的轨迹段指令细分成细小的轨迹指 令包括如下措施a、确定细分间隔时间;b、按照不超过各轴最大速度的原则计算出各轨迹段指令的最快运行时间,将最快运行时间除以细分间隔时间得到细分数量,余数即为细分后剩余时间;C、将细分间隔时间除以最快运行时间得到时长比例因子α,将α乘以该轨迹段指令中各轴相对坐标,得到细分间隔时间段对应的细小轨迹指令;将细分后剩余时间除以最快运行时间得到时长比例因子β,将β乘以该轨迹段指令中各轴相对坐标,得到剩余时间段对应的细小轨迹指令,前述两个时间段对应的细小轨迹指令共同构成最终的轨迹指令。优选的,当轨迹段指令最快运行时间大于细分间隔时间,则将轨迹段指令细分成轨迹指令;当轨迹段指令最快运行时间小于细分间隔时间,则直接执行该轨迹段指令。优选的,所述细分间隔时间为20ms。本发明所得的ACS运动控制器实时暂停的实现方法,通过将大的程序段按时间细分成小时间段的轨迹程序,然后在各细小段轨迹运动程序之间加入条件控制语句,使得各细小程序段逐条载入到运动命令队列中,从而有效地控制了整个程序的运行,实现了 ACS 运动控制器运行过程中的实时暂停功能,且暂停后程序可继续运行,解决了困扰ACS运动控制器用户的一个关键问题。本发明可在基于ACS运动控制器的卷簧机数控系统中得到了应用,将程序中各段轨迹细分后没有造成运动的不连续,运动实时暂停的效果非常理想,64位的浮点运算非常精确,设备在最高速连续加工几百个弹簧时也没有出现明显的累积误差。该方法可以应用于各种ACS控制器开发的各类运动控制系统中,弥补了 ACS控制器作为一款高性能运动控制器数控功能的不足。


图1实施例1运动指令处理方法示意图;图2是实施例1的控制流程图;图3是实施例1的轨迹段按时间细分示例;图中细小轨迹指令1、条件控制语句2。
具体实施例方式下面通过实施例结合附图对本发明作进一步的描述。实施例1 如图1、2所示,本实施例所描述的ACS运动控制器实时暂停的实现方法,包括将轨迹段指令载入到从处理器中的步骤,在前述步骤中包含如下措施将大的轨迹段指令细分成细小的轨迹指令,然后通过在轨迹指令之间设置条件控制指令的方式控制轨迹指令逐条载入到从处理器的队列中,同时使轨迹指令逐条执行,一条执行完再继续装入下一条。其中,将大的轨迹段指令细分成细小的轨迹指令包括如下措施a、确定细分间隔时间(本实施例中细分间隔时间为20ms);b、按照不超过各轴最大速度的原则计算出各轨迹段指令的最快运行时间,将最快运行时间除以细分间隔时间得到细分数量,余数即为细分后剩余时间;C、将细分间隔时间除以最快运行时间得到时长比例因子α,将α乘以该轨迹段指令中各轴相对坐标,得到细分间隔时间段对应的细小轨迹指令;将细分后剩余时间除以最快运行时间得到时长比例因子β,将β乘以该轨迹段指令中各轴相对坐标,得到剩余时间段对应的细小轨迹指令,前述两个时间段对应的细小轨迹指令共同构成最终的轨迹指令。当轨迹段指令最快运行时间大于细分间隔时间,则将轨迹段指令细分成轨迹指令;当轨迹段指令最快运行时间小于细分间隔时间,则直接执行该轨迹段指令。如在用ACS运动控制器开发的数控卷簧机弹簧加工程序中,选取三段轨迹,轨迹程序中X为变径切刀凸轮轴,Y为送丝轴,Z为推距轴。三段轨迹的运行时间都是按照不超过各轴最大速度计算出的最快运行时间,选取的第一段轨迹为X20Y30Z11. 5,按各轴的最快速度计算出段运行时间,按Z轴的最快速度134imits/s计算(T = 11. 5/134),算得的时间最长,为85. 82ms,取整数86ms,按此时间运行该段程序时,Z轴达到最高速,XY轴都不会超过各自最高速度。同样第二段轨迹按照X轴最高速度400imits/s计算出的时间最长,为 75ms,第三段按照Y轴最高速度600imitS/S计算出的时间最长,为183ms。三段轨迹按时间细分如图3所示。本例中各段轨迹按照本段运行时间细分成许多20ms的时间块,将各段时间除以 20,取商即得各段细分成20ms细小片段的段数,余数即是各段细分后的剩余时间,细分后计算各段细小轨迹相对于细分前该段轨迹的比例因子,将该比例因子乘以该段轨迹各轴的指令相对坐标,即可得出细分后的轨迹指令。以第一段“X20Y30Z11. 5”为例,细分后20ms时间段的细小轨迹指令为
20 20 20POINT ΧΥΖ, -χ20, -χ30, &χ11.5,20.其中XYZ后面的四个参数分别为各轴的

指令相对坐标,最后一个20是该段时间(毫秒单位)。细分剩余时间段的轨迹指令为POINT ΧΥΖ, ^χ 20, ^χ 30, ^x 11.5,6 .其中四个参数为剩余段各轴指令相对坐
标和剩余时间(毫秒)。 细分间隔时间的确定,也是需要讨论的问题。间隔时间过长会出现过冲现象,使
得运动暂停不及时,过短又会加大MPU负担,让MPU与上位机的人机交互反应迟钝。人的
反应时间一般在0. 15 0. 4S之间,最快反应时间为0. 03S,即在0. IS以内,人一般感觉
不到延迟。但当卷簧机按照上面三段程序的轨迹指令高速运行时,每一段轨迹在很短的
时间内(不到0. 1S),坐标值最大就走过了 40imits,虽然暂停的响应速度很快,基本感觉
不到延迟,但较大的过冲行程使得暂停的效果欠佳。经试验反复调试,最终确定间隔时间
为20ms,MPU每隔20ms取一条细分运动轨迹载入到SPii从处理器的命令队列中,20ms
内MPU还有充足的时间执行其他重要的任务,不至于负担过大造成系统反应迟钝。在上
述的三段轨迹中,暂停过冲最大的是送丝轴Y,因为该轴速度最快,最大的过冲坐标值为 20
110xT^" = 12022 在最高速运转时获得这样的暂停控制效果令人满意。 Units,
权利要求
1.一种ACS运动控制器实时暂停的实现方法,包括将轨迹段指令载入到从处理器中的步骤,其特征是在前述步骤中包含如下措施将大的轨迹段指令细分成细小的轨迹指令,然后控制轨迹指令逐条载入到从处理器的队列中,同时使轨迹指令逐条执行,一条执行完再继续装入下一条。
2.根据权利要求1所述的ACS运动控制器实时暂停的实现方法,其特征是通过在轨迹指令之间设置条件控制指令的方式控制轨迹指令逐条载入到从处理器的队列中。
3.根据权利要求1或2所述的ACS运动控制器实时暂停的实现方法,其特征是将大的轨迹段指令细分成细小的轨迹指令包括如下措施a、确定细分间隔时间;b、按照不超过各轴最大速度的原则计算出各轨迹段指令的最快运行时间,将最快运行时间除以细分间隔时间得到细分数量,余数即为细分后剩余时间;C、将细分间隔时间除以最快运行时间得到时长比例因子α,将α乘以该轨迹段指令中各轴相对坐标,得到细分间隔时间段对应的细小轨迹指令;将细分后剩余时间除以最快运行时间得到时长比例因子β,将β乘以该轨迹段指令中各轴相对坐标,得到剩余时间段对应的细小轨迹指令,前述两个时间段对应的细小轨迹指令共同构成最终的轨迹指令。
4.根据权利要求3所述的ACS运动控制器实时暂停的实现方法,其特征是当轨迹段指令最快运行时间大于细分间隔时间,则将轨迹段指令细分成轨迹指令;当轨迹段指令最快运行时间小于细分间隔时间,则直接执行该轨迹段指令。
5.根据权利要求4所述的ACS运动控制器实时暂停的实现方法,其特征是所述细分间隔时间为20ms。
全文摘要
本发明公开的ACS运动控制器实时暂停的实现方法,包括将轨迹段指令载入到从处理器中的步骤,在前述步骤中包含如下措施将大的轨迹段指令细分成细小的轨迹指令,然后控制轨迹指令逐条载入到从处理器的队列中,同时使轨迹指令逐条执行,一条执行完再继续装入下一条。本发明所得的ACS运动控制器实时暂停的实现方法,实现了ACS运动控制器运行过程中的实时暂停功能,且暂停后程序可继续运行,解决了困扰ACS运动控制器用户的一个关键问题。
文档编号G05B19/414GK102183922SQ20111006740
公开日2011年9月14日 申请日期2011年3月21日 优先权日2011年3月21日
发明者周贵子, 张耀, 王晓虎, 程文峰, 葛惠民, 黄文广 申请人:浙江机电职业技术学院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1