CN102163045A - 基于arm9嵌入式系统及cpld的六轴联动控制的方法 - Google Patents
基于arm9嵌入式系统及cpld的六轴联动控制的方法 Download PDFInfo
- Publication number
- CN102163045A CN102163045A CN 201110008305 CN201110008305A CN102163045A CN 102163045 A CN102163045 A CN 102163045A CN 201110008305 CN201110008305 CN 201110008305 CN 201110008305 A CN201110008305 A CN 201110008305A CN 102163045 A CN102163045 A CN 102163045A
- Authority
- CN
- China
- Prior art keywords
- interpolation
- cpld
- embedded system
- axis linkage
- pulse
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
本发明提供一种基于ARM9嵌入式系统及CPLD的六轴联动控制的方法,包括提供一ARM9嵌入式系统以及经过总线与该系统连接的CPLD,采用基于ARM9的嵌入式系统,进行六轴联动插补运算,得出六轴运动坐标的控制脉冲和运动方向的插补值,写入CPLD的FIFO队列中,并根据插补周期,将FIFO队列中对应的六轴脉冲插补值输出到电动机的信号控制端口,实现实时、准确的电动机伺服控制。本发明提高了输出的插补脉冲值和运动方向信号实时性和平稳性,使六轴电动机均匀运动,合成的高精度的运动轨迹。
Description
【技术领域】
本发明涉及数控技术领域,尤其涉及一种基于ARM9(ARM9系列处理器是英国ARM公司设计的主流嵌入式处理器)嵌入式系统及CPLD(可编程逻辑器件)的六轴联动控制的方法。
【背景技术】
现有的多轴联动控制技术基于工控微机,经过插补运算得出六轴运动坐标的控制脉冲和运动方向的插补值,然后输出到伺服电动机的驱动控制系统,驱动六轴电动机,实现复杂轨迹控制。其中插补原理:在实际加工中,被加工工件的轮廓形状千差万别,严格说来,为了满足几何尺寸精度的要求,刀具中心轨迹应该准确地依照工件的轮廓形状来生成,对于简单的曲线数控系统可以比较容易实现,但对于较复杂的形状,若直接生成会使算法变得很复杂,计算机的工作量也相应地大大增加,因此,实际应用中,常采用一小段直线或圆弧去进行拟合就可满足精度要求(也有需要抛物线和高次曲线拟合的情况),这种拟合方法就是“插补”。
由于工控微机是多任务工作系统,采用时间片轮转控制的任务调度,可以执行多任务但实时性差,在进行插补运算和发出的六轴联动控制信号过程中,会被工控微机的其他工作任务中断,使得输出的插补脉冲值和运动方向信号被延时或中断,造成六轴电动机运动不平稳和六轴联动不实时,六轴伺服信号波动大,只能低速控制六轴伺服电动机联动,六轴联动控制轨迹的精度低,无法实现六轴伺服电动机的高速平稳控制。
【发明内容】
本发明要解决的技术问题,在于提供一种基于ARM9嵌入式系统及CPLD的六轴联动控制的方法,实现了六轴伺服电动机的平稳、实时及高速联动,实现复杂轨迹的六轴联动运动控制。
本发明是这样实现的:一种基于ARM9嵌入式系统及CPLD(可编程逻辑器件)的六轴联动控制的方法,包括提供一ARM9嵌入式系统以及经过总线与该系统连接的CPLD,采用基于ARM9的嵌入式系统,进行六轴联动插补运算,得出六轴运动坐标的控制脉冲和运动方向的插补值,写入CPLD的FIFO队列中,并根据插补周期,将FIFO队列中对应的六轴脉冲插补值输出到电动机的信号控制端口,实现实时、准确的电动机伺服控制。
本发明具有如下优点:采用实时性高的ARM9嵌入式系统和CPLD可编程逻辑器件控制技术,将六轴运动坐标的控制脉冲和运动方向的插补值,写入CPLD的FIFO队列中,并根据插补周期,将FIFO队列中对应的六轴脉冲插补值输出到电动机的信号控制端口。本发明提高了六轴伺服信号的实时控制,平稳了伺服电动机的控制信号,保证了复杂轨迹的六轴联动控制,并提高了控制精度。
【附图说明】
图1为基于ARM9嵌入式系统及CPLD的六轴联动控制框图。
图2为本发明X、Y、Z、A、B、C六轴联动插补运算框图。
图3X轴的插补时序示意图。
图4Y轴的插补时序示意图。
图5Z轴的插补时序示意图。
图6A轴的插补时序示意图。
图7B轴的插补时序示意图。
图8C轴的插补时序示意图。
【具体实施方式】
参照图1所示,一种基于ARM9嵌入式系统及CPLD的六轴联动控制的方法,包括提供一ARM9嵌入式系统以及经过总线与该系统连接的CPLD,采用基于ARM9的嵌入式系统,进行六轴联动插补运算,得出六轴运动坐标的控制脉冲和运动方向的插补值,写入CPLD的FIFO队列中,并根据插补周期,将FIFO队列中对应的六轴脉冲插补值输出到电动机的信号控制端口,实现实时、准确的电动机伺服控制。
如图2所示,为本发明X、Y、Z、A、B、C六轴联动插补运算框图,将所述的六轴的指令增量分别存放在各自的被积函数寄存器中,在每次的插补周期中分别与各自的积分累加器进行累加,每次累加后均与各轴的存储容量相比较,如超出,则该轴就溢出一脉冲当量,直到六轴均溢出各自的指令增量值为止。
假设X、Y、Z、A、B、C六轴的指令增量Δx、Δy、Δz、Δa、Δb、Δc分别为:Δx=9,Δy=-8,Δz=7,Δa=-6,Δb=5,Δc=-4,其单位均为脉冲当量,正值为正向运动,负值为反向运动;对于直线坐标X、Y、Z,其脉冲当量可以是每脉冲运行0.001mm(或0.0001mm等),对于回转坐标A、B、C,其脉冲当量可以是每脉冲运行0.001度(或0.01度等)。插补周期设定为Δt=40微秒,按照如图2所示的插补算法,设定各轴的积分累加器的容量为9,则X、Y、Z、A、B、C六轴各自的插补时序分别如图3~图8所示。从图3~图8的插补时序可以看出,经过10个插补周期,分别运行了Δx=9、Δy=-8、Δz=7、Δa=-6、Δb=5、Δc=-4步(脉冲当量),而且从各轴的插补时序图看出,各轴的溢出脉冲是均匀的。
再采用CPLD器件,在CPLD中创建FIFO队列,将上述的X、Y、Z、A、B、C六轴脉冲插补值Δx、Δy、Δz、Δa、Δb、Δc(包括其运动方向值),不是立即输出到电动机的信号控制端口,而是输出到该FIFO队列中,并记录其插补周期值。其中ARM9嵌入式系统通过控制总线信号判断FIFO队列中的空、满状态,如为空则写入,如为满则挂起,等待不满时再写入,并顺序排列到队列中。
一旦FIFO队列中有插补数值,该CPLD就立即启动其基准脉冲进行计数,当脉冲计数周期到达插补周期时刻,则输出FIFO中对应的六轴脉冲插补值到电动机的信号控制端口,实现实时、准确的电动机伺服控制。
由此可见,CPLD中的FIFO一方面起到了脉冲输出缓存的作用,另一方面通过计数运算及硬件电路控制起到了实时准确地输出脉冲的目的。
在本例中,经过重复测试,得出六轴输出脉冲的频率变化结果如表1所示,表1为输出脉冲频率变化测试表。
表1
由表1的测试结果可知,本技术特别适用于高频脉冲(高速)的插补输出,如对于输出脉冲频率在100~200kHz时,频率变动只有4~5Hz,变化率可稳定控制在0.005%之内,比目前通用的工控微机的脉冲输出频率的变化率值0.1%,提高了一个数量级以上。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (5)
1.一种基于ARM9嵌入式系统及CPLD的六轴联动控制的方法,包括提供一ARM9嵌入式系统以及经过总线与该系统连接的CPLD,其特征在于:采用基于ARM9的嵌入式系统,进行六轴联动插补运算,得出六轴运动坐标的控制脉冲和运动方向的插补值,写入CPLD的FIFO队列中,并根据插补周期,将FIFO队列中对应的六轴脉冲插补值输出到电动机的信号控制端口,实现实时、准确的电动机伺服控制。
2.根据权利要求1所述的基于ARM9嵌入式系统及CPLD的六轴联动控制的方法,其特征在于:所述FIFO队列中一旦有插补数值,该CPLD就立即启动其基准脉冲进行计数,当脉冲计数周期到达插补周期时刻,则输出FIFO中对应的六轴脉冲插补值到电动机的信号控制端口。
3.根据权利要求1所述的基于ARM9嵌入式系统及CPLD的六轴联动控制的方法,其特征在于:所述嵌入式系统通过控制总线信号判断FIFO队列中的空、满状态,如为空则写入;如为满则挂起,等待不满时再写入,并顺序排列到队列中。
4.根据权利要求1所述的基于ARM9嵌入式系统及CPLD的六轴联动控制的方法,其特征在于:所述的控制脉冲的频率为100~200kHz。
5.根据权利要求1所述的基于ARM9嵌入式系统及CPLD的六轴联动控制的方法,其特征在于:六轴联动插补运算是将所述的六轴的指令增量分别存放在各自的被积函数寄存器中,在每次的插补周期中分别与各自的积分累加器进行累加,每次累加后均与各轴的存储容量相比较,如超出,则该轴就溢出一脉冲当量,直到六轴均溢出各自的指令增量值为止。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110008305 CN102163045B (zh) | 2011-01-14 | 2011-01-14 | 基于arm9嵌入式系统及cpld的六轴联动控制的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110008305 CN102163045B (zh) | 2011-01-14 | 2011-01-14 | 基于arm9嵌入式系统及cpld的六轴联动控制的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102163045A true CN102163045A (zh) | 2011-08-24 |
CN102163045B CN102163045B (zh) | 2013-02-13 |
Family
ID=44464318
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110008305 Expired - Fee Related CN102163045B (zh) | 2011-01-14 | 2011-01-14 | 基于arm9嵌入式系统及cpld的六轴联动控制的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102163045B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103934528A (zh) * | 2014-04-14 | 2014-07-23 | 上海交通大学 | 一种用于电火花加工的六轴联动插补方法 |
CN104865900A (zh) * | 2015-05-12 | 2015-08-26 | 中国地质大学(武汉) | 一种nurbs插补器脉冲均匀输出装置以及设备 |
CN107219821A (zh) * | 2016-03-21 | 2017-09-29 | 芜湖微云机器人有限公司 | 六轴联动机器人曲线插补算法及纳米级运动控制系统 |
CN107498561A (zh) * | 2017-09-29 | 2017-12-22 | 深圳市山龙智控有限公司 | 基于arm的嵌入式机器臂的控制方法及终端 |
CN108490887A (zh) * | 2018-05-11 | 2018-09-04 | 西安交通大学苏州研究院 | 一种再制造机器人控制器及其控制方法 |
CN108628780A (zh) * | 2018-04-28 | 2018-10-09 | 上海与德科技有限公司 | 一种数据通信方法、系统及电动车 |
CN112783098A (zh) * | 2020-12-28 | 2021-05-11 | 杭州爱科科技股份有限公司 | 多轴联动机械运动控制方法、装置、系统及可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1254868A (zh) * | 1999-12-13 | 2000-05-31 | 刘小成 | 速度插补法 |
CN100480917C (zh) * | 2006-09-06 | 2009-04-22 | 北京数码大方科技有限公司 | 用于驱动数控机床进行空间圆弧插补加工的方法和装置 |
-
2011
- 2011-01-14 CN CN 201110008305 patent/CN102163045B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1254868A (zh) * | 1999-12-13 | 2000-05-31 | 刘小成 | 速度插补法 |
CN100480917C (zh) * | 2006-09-06 | 2009-04-22 | 北京数码大方科技有限公司 | 用于驱动数控机床进行空间圆弧插补加工的方法和装置 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103934528A (zh) * | 2014-04-14 | 2014-07-23 | 上海交通大学 | 一种用于电火花加工的六轴联动插补方法 |
CN103934528B (zh) * | 2014-04-14 | 2016-02-10 | 上海交通大学 | 一种用于电火花加工的六轴联动插补方法 |
CN104865900A (zh) * | 2015-05-12 | 2015-08-26 | 中国地质大学(武汉) | 一种nurbs插补器脉冲均匀输出装置以及设备 |
CN104865900B (zh) * | 2015-05-12 | 2018-01-23 | 中国地质大学(武汉) | 一种nurbs插补器脉冲均匀输出装置以及设备 |
CN107219821A (zh) * | 2016-03-21 | 2017-09-29 | 芜湖微云机器人有限公司 | 六轴联动机器人曲线插补算法及纳米级运动控制系统 |
CN107498561A (zh) * | 2017-09-29 | 2017-12-22 | 深圳市山龙智控有限公司 | 基于arm的嵌入式机器臂的控制方法及终端 |
CN108628780A (zh) * | 2018-04-28 | 2018-10-09 | 上海与德科技有限公司 | 一种数据通信方法、系统及电动车 |
CN108490887A (zh) * | 2018-05-11 | 2018-09-04 | 西安交通大学苏州研究院 | 一种再制造机器人控制器及其控制方法 |
CN112783098A (zh) * | 2020-12-28 | 2021-05-11 | 杭州爱科科技股份有限公司 | 多轴联动机械运动控制方法、装置、系统及可读存储介质 |
CN112783098B (zh) * | 2020-12-28 | 2022-03-25 | 杭州爱科科技股份有限公司 | 多轴联动机械运动控制方法、装置、系统及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN102163045B (zh) | 2013-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102163045B (zh) | 基于arm9嵌入式系统及cpld的六轴联动控制的方法 | |
CN103591961B (zh) | 一种基于dsp和fpga的捷联罗经导航计算机 | |
CN102298359B (zh) | 一种数控系统中加减速过渡平滑控制方法 | |
CN104135212A (zh) | 一种柔性化运动控制ip核及实现方法 | |
CN201426109Y (zh) | 一种pci总线型多轴脉冲式运动控制卡 | |
CN105892412A (zh) | 基于自定义总线的多轴运动控制系统硬件架构 | |
CN101526808A (zh) | 机床数控软硬件多轴插补方法 | |
CN203070045U (zh) | 一种多轴机床用嵌入式数控的运动控制平台 | |
CN101458511A (zh) | 基于可编程逻辑器件的硬件插补方法 | |
CN105824270A (zh) | 多轴运动控制器及其闭环pwm脉冲的控制方法 | |
CN110879568B (zh) | 多轴联动经济型数控系统的运动控制方法 | |
CN103744352A (zh) | 一种基于fpga的三次b样条曲线的硬件插补器 | |
CN204576209U (zh) | 一种基于可编程逻辑器件的直线加减速控制装置 | |
CN204374726U (zh) | 一种基于b样条曲线高速实时插补的数控系统 | |
Chen et al. | Development of an industrial robot controller with open architecture | |
CN104155909A (zh) | 基于pc+fpga的带速度观测器的有限时间稳定性控制系统 | |
CN112290856A (zh) | 一种基于BeagleBone-Black的电机运动控制器 | |
CN205594426U (zh) | 一种pci控制的数控插补系统 | |
CN108873790B (zh) | 基于fpga的sopc多轴联动运动控制器及控制系统 | |
CN205139682U (zh) | 一种基于arm+fpga双处理器的数控插补系统 | |
CN1752879A (zh) | 柔性数字式运动控制系统 | |
CN205485481U (zh) | 多轴运动控制器 | |
CN203133570U (zh) | 基于arm和fpga的数控机床用控制装置 | |
CN204650243U (zh) | 多轴插补装置 | |
CN206649337U (zh) | 一种复杂曲线的高速数控插补控制系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130213 Termination date: 20190114 |
|
CF01 | Termination of patent right due to non-payment of annual fee |