首页> 中国专利> 面向编码器/播放器式数控系统的运动比特流变换方法

面向编码器/播放器式数控系统的运动比特流变换方法

摘要

本发明涉及一种面向编码器/播放器式数控系统的运动比特流变换方法,属于数控系统中的运动控制技术领域。本发明的目的在于利用单位弧长增量法插补曲线精度较高的优点,并借助了比特位快速运算的优势,使得单位弧长增量法可以应用于速度灵活可调的高速加工中,推广单位弧长增量法的应用范围。本发明包括两种编码格式和两种解码算法。在加工开始之前,编码器可对任意参数曲线使用单位弧长增量法进行插补,获取一系列坐标增量值、并将坐标增量值化为一种编码格式的运动比特流进行存储。在加工的过程中,根据所给的编码格式,选取相应的解码算法,从运动比特流中还原出一个插补周期内的各轴坐标增量值,使机床各轴沿所给参数曲线运动。

著录项

  • 公开/公告号CN105573254A

    专利类型发明专利

  • 公开/公告日2016-05-11

    原文格式PDF

  • 申请/专利权人 上海交通大学;

    申请/专利号CN201610021830.1

  • 申请日2016-01-13

  • 分类号G05B19/4103;

  • 代理机构上海旭诚知识产权代理有限公司;

  • 代理人郑立

  • 地址 200240 上海市闵行区东川路800号

  • 入库时间 2023-12-18 15:07:56

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-06-05

    授权

    授权

  • 2016-06-08

    实质审查的生效 IPC(主分类):G05B19/4103 申请日:20160113

    实质审查的生效

  • 2016-05-11

    公开

    公开

说明书

技术领域

本发明属于数控系统中的运动控制技术领域,涉及一种面向编码器/播放器式数 控系统的运动比特流变换方法。

背景技术

在机床的数控系统中,插补器的任务是读取由数控系统外部输入的加工运动轨迹 指令,并根据加工运动轨迹指令计算机床的各个运动轴每隔一段固定的时间(称为插补周 期)所应达到的位置(称为指令位置)。数控系统中的运动控制单元将指令位置转化为电机 运动量的指令信号,使机床运动机构依照加工运动轨迹指令完成相应的运动,实现对工件 的加工。作为数控系统中的关键模块,插补器所使用的插补方法对运动精度和运动速度的 平稳性起着至关重要的作用。现有的机床数控系统所使用的插补方法大致可分为数据采样 法和脉冲增量法两大类。

数据采样法是一种插补步长能够根据指定的速度进行调节的插补方法,在高速加 工机床中的应用较为广泛。申请号为201310717322.3、名称为《一种基于FPGA的三次B样条 曲线的硬件插补器》的专利,以及申请号为201310003017.8、名称为《一种基于ARM9嵌入式 系统和FPGA的NURBS曲线分段插补方法》的专利均利用B样条曲线的参数直接执行精插补。 然而,数据采样法当插补步长越大时插补精度往往越低,且其对参数曲线的粗插补存在精 度不稳定的问题,在曲线尖拐角处有时会造成较大的速度波动。

与数据采样法不同,脉冲增量法(例如逐点比较法、数字积分法、最小偏差法和单 位弧长增量法)具有插补步长十分微小、接近于机床的各轴脉冲当量(BLU)的特点,既可用 于数据采样法的精插补环节,也可以独立使用、实现对曲线的直接精插补。申请号为 200810229319.6、名称为《基于片上可编程系统的数控系统精插补器及其控制方法》的专利 采用了上位机存储粗插补结果、由FPGA以数字积分法执行精插补计算。然而,若要利用脉冲 增量法实现高速加工,有时需要在一个插补周期内执行几百步甚至数千步插补,造成计算 量大大增加,给数控系统的处理器带来极大负担。申请号为201310202145.5,名称为《复合 插补法及其系统软件》的专利使用改进的脉冲增量法插补参数曲线,并将若干步插补结果 合并,对每一根轴的多步插补合并结果利用四个二进制位进行存储,在加工过程中可以直 接取出预先存储的各轴插补结果作为各轴坐标增量,但该发明未考虑速度规划的需求,插 补的速度调节精度受合并步数的限制。

尽管现有的数控系统的两大类插补方法仍各自有其不足之处,然而,这些不足之 处可以通过借鉴其他领域的一些先进方法来改进。随着影视行业以及互联网行业的不断繁 荣,视频的编码与解码技术得到了快速的发展。与此同时,计算机科学领域也开发了相当成 熟的二进制位处理算法,微处理器架构也正逐渐提供越来越丰富的二进制位处理指令集。 此外,申请号为201210328234.X、名称为《单位弧长增量插补法》的专利所提供了一种沿曲 线进行弧长间距为1BLU的直接精插补的脉冲增量法,使得插补结果中保留了原始曲线的弧 长信息,有助于使用精插补结果进行速度可调的曲线运动。鉴于上述技术的优点,本领域的 技术人员在名称为《一种基于编码器/播放器体系架构的工业控制系统》的专利所提供的一 种工业控制系统架构的基础之上,致力于开发一种面向编码器/播放器式数控系统的运动 比特流变换方法,使得单位弧长增量法可以被应用于速度可调的高速加工中,实现对任意 参数曲线的快速高精度稳定插补。

发明内容

有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种面向编码 器/播放器式数控系统的运动比特流变换方法,在编码器中将单位弧长增量法的插补结果 转换为运动比特流的形式进行预先存储,并在加工的过程中利用播放器从运动比特流中快 速提取各轴坐标增量值,使得单位弧长增量法可以被应用于速度可调的高速加工中,实现 对任意参数曲线的快速高精度稳定插补。

本发明提供了一种面向编码器/播放器式数控系统的运动比特流变换方法,所述 运动比特流变换方法为串行编码方法,包括使用数组存放单位弧长增量法生成的共计Mk步 插补结果,所述数组一共有Mk个元素,第k个元素ξk存放了所述单位弧长增量法第k步插补的 坐标增量ΔQk所对应的脉冲位σk,j和方向位δk,j,其中Mj为机床轴数,k=1,2,…,Mk,j=1, 2,…,Mj

本发明提供了一种面向编码器/播放器式数控系统的运动比特流变换方法,所述 运动比特流变换方法为并行编码方法,包括机床的每根轴使用两个一维数组,分别存储脉 冲位和方向位;称存储所述脉冲位的所述一维数组为脉冲流,第j轴的所述脉冲流的第K个 元素GK,j存储了所述单位弧长增量法从第NK-N+1步到第NK步插补生成的脉冲位σNK-N+1,j, σNK-N+2,j,…,σNK,j;称存储所述方向位的所述一维数组为方向流,第j轴的所述方向流的第K 个元素DK,j存储了所述单位弧长增量法从第NK-N+1步到第NK步插补生成的方向位δNK-N+1,j, δNK-N+2,j,…,δNK,j;其中为向上取整符号。

本发明提供了一种面向编码器/播放器式数控系统的运动比特流变换方法,所述 运动比特流变换方法为串行解码方法,包括设在t-T时刻解码至第kp(t-T)步,在t时刻的进 给速度决定在t时刻需要解码Δkp(t)步,其中第k步解码通过如下转换方法获取所述坐标 增量ΔQk:若σk,j=0,则Δqk,j=0;若σk,j=1且δk,j=0,则Δqk,j=1;若σk,j=1且δk,j=1,则 Δqk,j=-1;其中k=kp(t-T),kp(t-T)+1,…kp(t),计算 在t时刻的指令位置增量:ΔΦ(t)=ΔQkp(t-T)+1+ΔQkp(t-T)+2+...+ΔQkp(t).

本发明提供了一种面向编码器/播放器式数控系统的运动比特流变换方法,所述 运动比特流变换方法为并行解码方法,包括设在t-T时刻解码至第kp(t-T)步,在t时刻的进 给速度决定在t时刻需要解码Δkp(t)步;对于第j轴,使用种群计数法统计所述脉冲流中的 从第kp(t-T)+1位到第kp(t)位中的“1”的个数,记为以及所述方向流中的从第kp(t- T)+1位到第kp(t)位中的“1”的个数,记为由和计算在t时刻的第j轴指令 位置增量j=1,2,…,Mj

本发明提供了一种面向编码器/播放器式数控系统的运动比特流变换方法,所述运 动比特流变换方法为串行编码和串行解码方法,其中所述串行编码方法包括使用数组存放单 位弧长增量法生成的共计Mk步插补结果,所述数组一共有Mk个元素,第k个元素ξk存放了所述 单位弧长增量法第k步插补的坐标增量ΔQk所对应的脉冲位σk,j和方向位δk,j,其中Mj为机床轴 数,k=1,2,…,Mk,j=1,2,…,Mj;所述串行解码方法包括设在t-T时刻解码至第kp(t-T)步,在 t时刻的进给速度决定在t时刻需要解码Δkp(t)步,其中第k步解码通过如下转换方法获取所 述坐标增量ΔQk:若σk,j=0,则Δqk,j=0;若σk,j=1且δk,j=0,则Δqk,j=1;若σk,j=1且δk,j=1,则Δqk,j=-1;其中k=kp(t-T),kp(t-T)+1,…kp(t),计算在t时刻的指令位置增量:ΔΦ(t)=ΔQkp(t-T)+1+ΔQkp(t-T)+2+...+ΔQkp(t).

本发明提供了一种面向编码器/播放器式数控系统的运动比特流变换方法,所述 运动比特流变换方法为并行编码和串行解码方法,其中所述并行编码方法包括机床的每根 轴使用两个一维数组,分别存储脉冲位和方向位;称存储所述脉冲位的所述一维数组为脉 冲流,第j轴的所述脉冲流的第K个元素GK,j存储了所述单位弧长增量法从第NK-N+1步到第 NK步插补生成的脉冲位σNK-N+1,jNK-N+2,j,…,σNK,j;称存储所述方向位的所述一维数组为方 向流,第j轴的所述方向流的第K个元素DK,j存储了所述单位弧长增量法从第NK-N+1步到第 NK步插补生成的方向位δNK-N+1,jNK-N+2,j,…,δNK,j;其中为 向上取整符号;所述串行解码方法包括设在t-T时刻解码至第kp(t-T)步,在t时刻的进给速 度决定在t时刻需要解码Δkp(t)步,其中第k步解码通过如下转换方法获取所述坐标增量 ΔQk:若σk,j=0,则Δqk,j=0;若σk,j=1且δk,j=0,则Δqk,j=1;若σk,j=1且δk,j=1,则Δqk,j=-1;其中k=kp(t-T),kp(t-T)+1,…kp(t),计算在t时刻 的指令位置增量:ΔΦ(t)=ΔQkp(t-T)+1+ΔQkp(t-T)+2+...+ΔQkp(t).

本发明提供了一种面向编码器/播放器式数控系统的运动比特流变换方法,所述 运动比特流变换方法为并行编码和并行解码方法,包括其中所述并行编码方法包括机床的 每根轴使用两个一维数组,分别存储脉冲位和方向位;称存储所述脉冲位的所述一维数组 为脉冲流,第j轴的所述脉冲流的第K个元素GK,j存储了所述单位弧长增量法从第NK-N+1步 到第NK步插补生成的脉冲位σNK-N+1,jNK-N+2,j,…,σNK,j;称存储所述方向位的所述一维数组 为方向流,第j轴的所述方向流的第K个元素DK,j存储了所述单位弧长增量法从第NK-N+1步 到第NK步插补生成的方向位δNK-N+1,jNK-N+2,j,…,δNK,j;其中为向上取整符号;所述并行解码方法包括设在t-T时刻解码至第kp(t-T)步,在t时刻的进给 速度决定在t时刻需要解码Δkp(t)步;对于第j轴,使用种群计数法统计所述脉冲流中的从 第kp(t-T)+1位到第kp(t)位中的“1”的个数,记为以及所述方向流中的从第kp(t-T)+ 1位到第kp(t)位中的“1”的个数,记为由和计算在t时刻的第j轴指令位 置增量j=1,2,…,Mj

要使播放器实现从运动比特流中快速提取各轴坐标增量值的功能,首先需要编码 器根据单位弧长增量法插补结果的特点,以适当的方式对插补结果进行存储。单位弧长增 量法的示意图如图1所示,给定一条待插补曲线

C(u)=(c1(u),c2(u),...,cMj(u))T

其中Mj为机床所含的轴的个数;cj(u)为曲线在第j轴上的分量,j=1,2,…,Mj。对 曲线C(u)的第k步插补所得的各轴坐标增量记为

ΔQk=(Δqk,1,Δqk,2,...,Δqk,Mj)T,k=1,2,...,Mk

其中Δqk,j为曲线的第j轴在第k步插补时的坐标增量,单位为BLU,j=1,2,…,Mj。 单位弧长增量法是一种小步长插补算法,满足弧长增量Δs=1BLU和|Δqk,j|≤1BLU。由于 脉冲当量是机床轴的最小分辨单位,因此Δqk,j的取值实际上只有三种可能:-1,0和+1BLU。 因此,每个Δqk,j可以用一个整型变量存储。然而,因为计算机中一个整型变量一般要占据 16~64位,而以1BLU是一个非常小的步长,对一条曲线插补的总步数Mk往往很大,需要生成 大量的坐标增量数据。为了节约存储空间,将每个Δqk,j转换为两个运动比特位(一个脉冲 位和一个方向位)进行存储,其转换规则如图2所示。其中σk,j为脉冲位,其值等于|Δqk,j|; δk,j为方向位,当Δqk,j≥0时δk,j=0,否则δk,j=1。

在计算机程序中,一般使用数组来存储大量的比特位。编码器在执行单位弧长增 量法插补后所得的一系列运动比特位按照一定的格式和顺序排列于数组中,形成运动比特 流。各个脉冲位σk,j和方向位δk,j在数组中的分布(即对插补结果的编码格式),影响着对运 动比特流的解码(即从插补结果中提取各轴坐标增量)的速度。本发明提供两种对运动比特 流的编码格式和两种在播放器中使用的解码算法,下面将分别进行详细说明。

一、串行编码格式

图3所示的是运动比特流的串行编码格式。该格式仅需短整型变量、整型变量或长 整型变量的一维数组即可存储数据,称该数组为串行比特流数组。串行比特流数组一共有 Mk个元素,其第k个元素ξk(k=1,2,…,Mk)存放了单位弧长增量法第k步插补的坐标增量Δ Qk所对应的脉冲位σk,j和方向位δk,j,j=1,2,…,Mj,一共2Mj个运动比特位。设数组每个元素 所占的位数为N,若要使串行比特流数组下标与单位弧长增量法插补步数保持1:1的对应关 系(也就是要使数组的一个元素能够存放所有轴的一步插补结果),应使轴数Mj≤N/2。σk,j和δk,j在ξk中存放的位置可以任意排列,但要保证所有ξk对σk,j和δk,j的排列顺序都是相同 的,以便于采用统一的算法对任意的ξk进行解码。

二、并行编码格式

图4所示的是运动比特流的并行编码格式。与图3对比可见,运动比特流的串行编 码格式是对运动比特流进行横向分割,而运动比特流的并行编码格式则是对运动比特流进 行纵向分割。机床的每根轴使用两支比特流(称为运动比特支流)分别存储该轴的脉冲位和 方向位,每支运动比特支流可使用短整型变量、整型变量或长整型变量的一维数组进行存 储,其下标为K,(为向上取整符号)。脉冲流的第K个元素GK,j存 储了单位弧长增量法从第NK-N+1步到第NK步插补生成的脉冲位σNK-N+1,jNK-N+2,j,…,σNK,j。 方向流的第K个元素DK,j存储了单位弧长增量法从第NK-N+1步到第NK步插补生成的方向位 δNK-N+1,jNK-N+2,j,…,δNK,j。对于含有Mj个轴的机床,一共需要2Mj支运动比特支流来存储所 有的运动比特位,因此需要列数为2Mj的二维数组来存储数据,称该二维数组为并行比特流 数组。2Mj支运动比特支流在并行比特流数组中的列序号可以任意选择,只要保证它们所对 应的列序号两两不同即可。

三、串行解码算法

串行解码算法的思想是对运动比特流进行逐位判断,遍历单位弧长增量法一个插 补步所生成的所有运动比特位,由此获得该插补步所对应的各轴坐标增量。当需要获取第k 个插补步所对应的第j轴坐标增量时,只需要从比特流数组中提取脉冲位σk,j和方向位δk,j, 依照如如图2所示的规则做逆转换,即可获得Δqk,j。逆转换至多需要两步判断即可完成:若 σk,j=0,则Δqk,j=0;若σk,j=1且δk,j=0,则Δqk,j=1;若σk,j=1且δk,j=1,则Δqk,j=-1。串 行解码方法既可用于串行比特流数组的解码,也可用于并行比特流数组的解码。当数控系 统在一个插补周期T内需要运动多个BLU的距离时,可将多步解码所得的各轴坐标增量累 加。设机床在t时刻的指令位置为

其中为第j轴在t时刻的指令位置。设在t-T时刻解码至第kp(t-T)步,在t时 刻的进给速度决定在t时刻需要解码Δkp(t)步(即在t时刻需要解码至第kp(t)=kp(t-T)+ Δkp(t)步),则在t时刻的指令位置增量为

其中为第j轴在t时刻的指令位置增量。t时刻的指令位置为

Φ(t)=Φ(t-T)+ΔΦ(t)

四、并行解码算法

串行解码算法是一种较为简单的运动比特流解码算法。然而,当进给速度较快时, 一个插补周期内可能需要沿曲线运动数百甚至上千个BLU的距离。处理器当计算速度较慢 或计算负担沉重时,将有可能来不及完成进给速度所要求的插补步数。为了缩短解码计算 时间,更快地从运动比特流中获取各轴坐标增量,可使用并行解码算法。该方法只能用于并 行比特流数组的解码,其思想为:使用比特位统计方法——种群计数法,分别统计每支运动 比特支流中在当前插补周期内所需解码的所有运动比特位中的“1”的个数,再根据转换公 式转换成各轴坐标增量。一些操作系统(如Linux)提供了种群计数内建函数,一些微处理器 的指令集也提供了种群计数指令,这些种群计数内建函数或种群计数指令可直接统计一个 整型变量或一个长整型变量中的“1”的个数。如图5所示,设在t-T时刻解码至第kp(t-T)步, 在t时刻的进给速度决定在t时刻需要解码Δkp(t)步(即在t时刻需要解码至第kp(t)=kp(t-T)+Δkp(t)步),则对于第j轴,使用种群计数法统计其脉冲流中的从第kp(t-T)+1位到第 kp(t)位中的“1”的个数(记为),以及方向流中的从第kp(t-T)+1位到第kp(t)位中的 “1”的个数(记为)。由和可计算在t时刻的第j轴指令位置增量

由此可得t时刻的指令位置为

Φ(t)=Φ(t-T)+ΔΦ(t)

由于种群计数函数(或指令)只能作用于数组中的一个元素(即一个整型变量或一 个长整型变量),因此当kp(t-T)+1和kp(t)不在并行比特流数组的同一行时(即 时),需要对每支运动比特支流执行多次种群计数函数 (或指令),再将每支运动比特支流的多次种群计数的结果相加。具体来说,设 需要对每支运动比特支流中的第kp(t-T)+1 到第K1N位(属于支流中的第K1个元素,即第K1行),第K1+1个元素,第K1+2个元素,……,第 (K2-1)N+1位到第kp(t)位(属于支流中的第K2个元素,即第K2行)分别执行种群计数函数(或 指令),再将这K2-K1+1次种群计数结果相加,即可获得和(j=1,2,…,Mj)。

本发明提供了一种面向编码器/播放器式数控系统的运动比特流变换方法,包括 两种编码格式和两种解码算法。在加工开始之前,编码器可对任意参数曲线使用单位弧长 增量法进行插补,获取一系列坐标增量值、并将坐标增量值化为一种编码格式的运动比特 流进行存储。在加工的过程中,播放器根据所给的编码格式选取相应的解码算法,从运动比 特流中还原出一个插补周期内的各轴坐标增量值。本发明所提供的解码算法主要包括比特 位的操作,既不涉及浮点数运算,也不存在传统的数据采样法的精度不稳定的问题,使得数 控系统的实时插补具有良好的稳定性和可靠性。本发明利用了单位弧长增量法高精度的优 点,并借助了比特位快速运算的优势,使得单位弧长增量法可以应用于速度灵活可调的高 速加工中,推广了单位弧长增量法的应用范围。

以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以 充分地了解本发明的目的、特征和效果。

附图说明

图1是本发明的一个较佳实施例的单位弧长增量法的示意图;

图2本发明的一个较佳实施例的是各轴坐标增量与运动比特位之间的转换规则示 意图;

图3本发明的一个较佳实施例的是串行编码格式的示意图;

图4本发明的一个较佳实施例的是并行编码格式的示意图;

图5本发明的一个较佳实施例的是并行解码算法的示意图。

具体实施方式

在本发明的一个具体实施例中,编码器对申请号为201210328234.X、名称为《单位 弧长增量插补法》的专利中的第一个实施例中使用单位弧长增量插补法插补平面第一象限 中半径为10BLU的圆弧的结果以运动比特流的形式进行编码存储,播放器根据t时刻需要解 码的步数Δkp(t)从运动比特流中提取所需的比特位并对其进行解码计算t时刻的指令位 置增量。机床轴数Mj=2,插补的总步数Mk=16。使用整型变量数组存储运动比特流,并设整 型变量的位数N=32,每步插补的各轴坐标增量为:

ΔQ1=(0,1)T,ΔQ2=(0,1)T,ΔQ3=(0,1)T,ΔQ4=(-1,1)T,ΔQ5=(0,1)T,

ΔQ6=(-1,1)T,ΔQ7=(0,0)T,ΔQ8=(-1,1)T,ΔQ9=(-1,1)T,ΔQ10=(-1,0)T,

ΔQ11=(0,1)T,ΔQ12=(-1,0)T,ΔQ13=(-1,1)T,ΔQ14=(-1,0)T,ΔQ15=(-1,0)T,

ΔQ16=(-1,0)T

下面提供两种编码格式和两种解码算法的实施例。

一、串行编码格式实施例

设串行比特流数组第k个元素的第0位至第3位分别表示σk,1,δk,1,σk,2和δk,2。根据 图2所示的转换规则,将ΔQ1,ΔQ2,…,ΔQ16依次转换为Δξ1,Δξ2,…,Δξ16,以二进制形式 表示如下(从右至左为从低位到高位):

Δξ1=0100B,Δξ2=0100B,Δξ3=0100B,Δξ4=0111B,Δξ5=0100B,

Δξ6=0111B,Δξ7=0000B,Δξ8=0111B,Δξ9=0111B,Δξ10=0011B,Δξ11= 0100B,

Δξ12=0011B,Δξ13=0111B,Δξ14=0011B,Δξ15=0011B,Δξ16=0011B。

二、并行编码格式实施例

并行比特流数组一共有2Mj=4支运动比特支流,即4列,设第1支至第4支分别表示 GK,1,DK,1,GK,2和DK,2。由于总插补步数Mk=16,因此并行比特流数组的行数为根据图2所示的转换规则,将ΔQ1,ΔQ2,…,ΔQ16转换为GK,1,DK,1,GK,2,DK,2,以二进制形式表 示如下(从右至左为从低位到高位):

GK,1=1111101110101000B,DK,1=1111101110101000B,

GK,2=0001010110111111B,DK,2=0000000000000000B。

三、串行解码算法实施例

以kp(t-T)=8、Δkp(t)=4为例。此时有kp(t)=12。使用串行解码算法,根据图2所 示的转换规则,对串行比特流数组中的4个元素Δξ9,Δξ10,Δξ11,Δξ12进行解码,或分别对 并行比特流数组的4个运动比特支流GK,1,DK,1,GK,2,DK,2的第9至第12位(最低位为第1位)进 行解码,均可获得相应的4组坐标增量:ΔQ9=(-1,1)T,ΔQ10=(-1,0)T,ΔQ11=(0,1)T,Δ Q12=(-1,0)T。在t时刻的指令位置增量为:

ΔΦ(t)=ΔQ9+ΔQ10+ΔQ11+ΔQ12=(-3,2)T

四、并行解码算法实施例

仍以kp(t-T)=8、Δkp(t)=4为例,kp(t)=12。使用并行解码算法,分别对并行比 特流数组的4个运动比特支流GK,1,DK,1,GK,2,DK,2的第9至第12位(最低位为第1位)进行种群 计数,可得σ^1(t)=3,δ^1(t)=3,σ^2(t)=2,δ^2(t)=0.在t时刻的指令位置增量为

需要注意的是,运动比特流存储了一台机床需要进行加工时各轴应分别执行的运 动。运动比特流的各个支流与机床运动轴相关。运动轴的配置和指令运动轨迹曲线的变化 都会导致运动比特流发生变化。因此在对运动比特流进行编码后,还需要添加包含了一些 辅助信息(如机床运动轴描述、程序段号、起点和终点坐标、终点弧长等)的文件头,与运动 比特流共同存储于运动比特流文件中。对于本具体实施方式中的存储圆弧轨迹运动比特流 的运动比特流文件,辅助信息如下:程序名称progName为“circularArc”,机床运动轴数 numAxes为2,两个运动轴axis1和axis2的名称分别为X和Y,程序段号progIndex为1,曲线起 点的X坐标startPointAxis1为10、Y坐标startPointAxis2为0,终点的X坐标endPointAxis1 为0、Y坐标endPointAxis2为10,轨迹总弧长arcLength为16(BLU)。若以JSON格式表示辅助 信息,则运动比特流文件的文件头的内容可表示如下:

本实施例中的圆弧的总弧长为16BLU,机床的运动轴数也仅为2,因此存储所有运 动比特流只需要消耗64位(即8个字节)的存储空间。若曲线的总弧长较大、机床的运动轴数 较多时,运动比特流可占用KB、MB甚至GB级的存储空间。因此在存储大量运动比特流时需要 考虑数据压缩的问题。由于运动比特流存储的是加工运动轨迹,对加工精度有着直接的影 响,因此须采用无损压缩格式对运动比特流进行存储。常用的无损压缩算法有霍夫曼 (Huffman)算法和LZW(Lenpel-Ziv&Welch)压缩算法,其原理已有诸多文献给出介绍,受篇 幅所限,本实施例不再对压缩算法予以赘述。

由于编码器和播放器可分布于不同硬件系统上(如将编码器置于云端服务器、将 播放器置于机床数控系统客户端中),因此。为了在压缩运动比特流数据的同时可进行运动 比特流数据的传输(而非在压缩全部完成后才开始传输)、节约时间,可将运动比特流数据 拆分成多块,分块进行压缩成运动比特流数据包,再将分块的运动比特流数据包传输至客 户端中。客户端对运动比特流数据包进行分块解压,将压缩的数据恢复为运动比特流。由于 通讯网络可能存在工作不稳定的情况,运动比特流数据包的传输可能存在差错,因此有必 要对运动比特流数据包附加上校验码(如循环冗余校验码或MD5值),然后在客户端利用与 校验码对应的校验算法对运动比特流数据进行数据完整性校验,使得客户端能在运动比特 流数据的传输发生差错(即数据完整性校验失败时)时及时提醒服务器重新传输运动比特 流数据、防止加工运动轨迹发生差错所导致的加工精度恶化和加工失败等问题。

以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术无需创 造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员 依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术 方案,皆应在由权利要求书所确定的保护范围内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号