基于NURBS曲线插补方法的运动控制系统.pdf

上传人:a2 文档编号:805211 上传时间:2018-03-13 格式:PDF 页数:9 大小:459.22KB
返回 下载 相关 举报
摘要
申请专利号:

CN201110003642.3

申请日:

2011.01.10

公开号:

CN102109834A

公开日:

2011.06.29

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G05B 19/19申请日:20110110|||公开

IPC分类号:

G05B19/19

主分类号:

G05B19/19

申请人:

浙江工业大学

发明人:

南余荣; 王强

地址:

310014 浙江省杭州市下城区朝晖六区

优先权:

专利代理机构:

杭州天正专利事务所有限公司 33201

代理人:

王兵;王利强

PDF下载: PDF下载
内容摘要

一种基于NURBS曲线插补方法的运动控制系统,包括依次连接的上位机、下位机、电机驱动器、电机和机械结构,所述上位机通过插补模块计算出插补点,把计算出的坐标值列表传给下位机,下位机把坐标值换转成相应脉冲数,并发出脉冲到电机驱动器,控制电机转动并驱动机械结构动作;所述插补模块为NURBS曲线插补模块,采用大密度离散法来求得整条曲线的长度;设定插补周期T和插补速度V,求得插补基步长Δs和弓高误差的大小Δδ:比较弓高误差Δs和要求的误差δ1的关系。本发明提供一种能够兼顾步长速度和精度、计算量小、容易实现NURBS插补的基于NURBS曲线插补方法的运动控制系统。

权利要求书

1: 一种基于 NURBS 曲线插补方法的运动控制系统, 包括依次连接的上位机、 下位机、 电 机驱动器、 电机和机械结构, 所述上位机通过插补模块计算出插补点, 把计算出的坐标值列 表传给下位机, 下位机把坐标值换转成相应脉冲数, 并发出脉冲到电机驱动器, 控制电机转 动并驱动机械结构动作 ; 其特征在于 : 所述插补模块为 NURBS 曲线插补模块, 采用大密度离 散法来求得整条曲线的长度 : 设定插补周期 T 和插补速度 V, 用以下公式求得插补基步长 Δs : M = round(s/(VT)) Δs = s/M (2) 弓高误差的大小 Δδ : 比较弓高误差 Δs 和要求的误差 δ1 的关系 : ①若 Δδ ≤ 0.134δ1, 下一个步长就取为 2Δs ; 步长继续加倍 ; ②若继续 Δδ ≤ 0.134δ1, ③若 0.134δ1 ≤ Δδ ≤ δ1, 步长取 Δs ; ④若弓高误差满足 δ1 ≤ Δδ ≤ 2δ1, 步长取为 0.866Δs ; 步长取为 ⑤若 Δδ > 2δ1,

说明书


基于 NURBS 曲线插补方法的运动控制系统

    【技术领域】
     本发明涉及机电数控技术领域, 尤其是一种运动控制系统。背景技术 NURBS( 非均匀有理 B 样条 ) 曲线不仅能精确统一的表示标准解析曲线和自由曲 线, 而且它的形状控制功能也特别强大灵活。1991 年国际标准化组织 (ISO) 正式颁布了工 业产品几何定义的 STEP(Stand for the Exchange of Productmodel daa 产品数据模型数 据交换的标准 ) 标准, 作为产品数据交换的国际标准。目前, NURBS 方法在 CAD/CAM 领域已 经成功应用, 而在运动控制系统领域目前只有 FUNUC、 SIEMENS、 三菱等少数高档数控系统支 持 NURBS 插补, 在大多数的运动控制器中很难得到应用, 导致现有运动控制系统存在不能 兼顾步长速度和精度的缺陷。
     发明内容
     为了克服已有运动控制系统的不能兼顾步长速度和精度、 计算量较大、 不容易 实现 NURBS 插补的不足, 本发明提供一种能够兼顾步长速度和精度、 计算量小、 容易实现 NURBS 插补的基于 NURBS 曲线插补方法的运动控制系统。
     本发明解决其技术问题所采用的技术方案是 :
     一种基于 NURBS 曲线插补方法的运动控制系统, 包括依次连接的上位机、 下位机、 电机驱动器、 电机和机械结构, 所述上位机通过插补模块计算出插补点, 把计算出的坐标值 列表传给下位机, 下位机把坐标值换转成相应脉冲数, 并发出脉冲到电机驱动器, 控制电机 转动并驱动机械结构动作 ; 所述插补模块为 NURBS 曲线插补模块, 采用大密度离散法来求 得整条曲线的长度 :
     设定插补周期 T 和插补速度 V, 用以下公式求得插补基步长 Δs : M = round(s/(VT)) Δs = s/M (2) 弓高误差的大小 Δδ :比较弓高误差 Δs 和要求的误差 δ1 的关系 : ①若 Δδ ≤ 0.134δ1, 下一个步长就取为 2Δs ; ②若继续 Δδ ≤ 0.134δ1, 步长继续加倍 ; ③若 0.134δ1 ≤ Δδ ≤ δ1, 步长取 Δs ; ④若弓高误差满足 δ1 ≤ Δδ ≤ 2δ1, 步长取为 0.866Δs ;⑤若 Δδ > 2δ1, 步长取为 本发明的技术构思为 : 三次 NURBS 曲线的首末节点重复数取为 4, 整条曲线的定义 j = 0, 1, 2, 3 确定, 其定义区间为 [u3, u4], 末段曲线由 和 可表示如下 :域就为 [u3, un+1], 第一段曲线由j = n-3, n-2, n-1, n, 其定义区间为 [un, un+1], 即在公式 (3) 中 i 的取值范围是 : 3 ≤ i ≤ n。 则第 i 段 NURBS 曲线的方程和控制点矢量
     Mi = round(li/(VT)) i = (3, 4,…, n)
     或 Mi = round(li/Δs) i = (3, 4,…, n)(5)
     上式中 : li 是第 i 段 NURBS 曲线 pi(u) 的弦长 ; Mi 为第 i 段曲线的离散数 ; T 是系 统插补周期 ; V 为插补过程中的最大进给速度 ; Δs 是插补基步长 ( 也可以直接给出插补步 长 )。
     可以得出参数基增量 Δui 为 :
     Δui = (ui+1-ui)/Mi (6)
     将 pi(u) 在 X-Y 面上的投影分成 Mi 等分, 再引垂线即可交原曲线 Mi 个离散点, 将 离散点连线, 就可逼近原曲线。设 mi 为第 i 段 NURBS 曲线 pi(u) 离散所取的第 m 个离散点, 则可知其取值范围是 1, 2, 3,…, Mi, 计算其坐标公式如下 :
     由此就可以计算出第 i 段曲线的弧长 si :由上述式子就可以算整条 NURBS 曲线的总弧长 s 为 :求得整条 NURBS 曲线的弧长 s, 据此计算整条的曲线的基步长 Δs :
     M = round(s/(VT))
     Δs = s/M (9)
     (1) 在曲率较小的情况下
     在曲率较小的情况下, 弓高误差比较小, 就可以选取较长的步长, 为计算简单期 间, 特选取 2 的次方倍步长, 设要求的弓高误差为 δ1, 在大多数情况下, 自由曲线的曲率一 股大于等弧长的圆, 现在以圆为样条曲线的近似曲线, 计算步长与弓高误差的关系, 如图 2 所示。
     设在圆 0 内, 弦长 AB 与弦长 CD 对应的弧分别是弧 AGB 和弧 CGD, 弓高误差分别是 FG 和 EG。如果 AB = 2CD, 则
     令x = BE 则
     计算得当 x = R 时, y 取最小值, 此时
     y = 0.134
     可以做这样的取值, 如果实际的弓高误差 Δδ ≤ 0.134δ1, 则下一个步长就取为 2Δs, 找下一个点的 u, 再计算弓高误差, 如果继续 Δδ ≤ 0.134δ1, 则步长继续加倍。如 果 0.134δ1 ≤ Δδ ≤ δ1, 则步长取 Δs。
     (2) 在曲率较大的情况下
     在曲率较大的情况下, 弓高误差比较大, 要保证误差满足要求, 就必须选取较小的 步长。同样在圆中计算 : 设弧 AGB 的弓高误差 GE, 弧 CGB 的弓高误差 GF, 设 GE = 2GF。
     令x = GE 则
     当 x = R 时, y 取最大值 y = 0.866 可以做这样的取值, 当弓高误差 δ1 ≤ Δδ ≤ 2δ1, 步长取为 0.866Δs, 如果 Δδ> 2δ1, 步长取为
     本发明的有益效果主要表现在 : 能够兼顾步长速度和精度、 计算量小、 容易实现 NU RBS 插补。附图说明
     图 1 是第 i 段曲线离散点的示意图。
     图 2 是曲率较小的情况下弓高误差和弦长的关系。
     图 3 是曲率较大的情况下弓高误差和弦长的关系。
     图 4 是运动控制系统的原理框图。 具体实施方式
     下面结合附图对本发明作进一步描述。
     参照图 1 ~图 4, 一种基于 NURBS 曲线插补方法的运动控制系统, 包括依次连接的 上位机、 下位机、 电机驱动器、 电机和机械结构, 所述上位机通过插补模块计算出插补点, 把 计算出的坐标值列表传给下位机, 下位机把坐标值换转成相应脉冲数, 并发出脉冲到电机 驱动器, 控制电机转动并驱动机械结构动作 ; 所述插补模块为 NURBS 曲线插补模块, 采用大 密度离散法来求得整条曲线的长度 :
     设定插补周期 T 和插补速度 V, 用以下公式求得插补基步长 Δs : M = round(s/(VT)) Δs = s/M (2) 弓高误差的大小 Δδ :比较弓高误差 Δs 和要求的误差 δ1 的关系 : ①若 Δδ ≤ 0.134δ1, 下一个步长就取为 2Δs ; ②若继续 Δδ ≤ 0.134δ1, 步长继续加倍 ; ③若 0.134δ1 ≤ Δδ ≤ δ1, 步长取 Δs ; ④若弓高误差满足 δ1 ≤ Δδ ≤ 2δ1, 步长取为 0.866Δs ; ⑤若 Δδ > 2δ1, 步长取为在实验室验证使用, 给定一条 NURNS 曲线, 用 PC 机编程计算曲线上的插补点, 以列 表形式传给下位机, omron PLC 40DT-D CPU 控制 2 个伺服电机在平面内运动,
     选用森创交流伺服电机 90ST-M02420
     表 1 电机参数表 ;
     NURBS 曲线参数信息如下 : 次数 k = 3, 权因子 ω = {1, 1, 1, 1, 1, 1}, 控制点信息 b = {(10, 10, 0)(50, 80, 0)(100, 100, 0)(180, 40, 0)(250, 50, 0)(300, 120, 0)}, 节点序列 u = {0, 0, 0, 0, 0.5, 0.75, 1, 1, 1, 1}, 进给速度 v = 50mm/s, 要求的弓高误差设为 0.02mm,
     计算的插补点数据庞大, 只给出部分开始和结尾曲线段域的点
     表 2 插补点列表。

基于NURBS曲线插补方法的运动控制系统.pdf_第1页
第1页 / 共9页
基于NURBS曲线插补方法的运动控制系统.pdf_第2页
第2页 / 共9页
基于NURBS曲线插补方法的运动控制系统.pdf_第3页
第3页 / 共9页
点击查看更多>>
资源描述

《基于NURBS曲线插补方法的运动控制系统.pdf》由会员分享,可在线阅读,更多相关《基于NURBS曲线插补方法的运动控制系统.pdf(9页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN102109834A43申请公布日20110629CN102109834ACN102109834A21申请号201110003642322申请日20110110G05B19/1920060171申请人浙江工业大学地址310014浙江省杭州市下城区朝晖六区72发明人南余荣王强74专利代理机构杭州天正专利事务所有限公司33201代理人王兵王利强54发明名称基于NURBS曲线插补方法的运动控制系统57摘要一种基于NURBS曲线插补方法的运动控制系统,包括依次连接的上位机、下位机、电机驱动器、电机和机械结构,所述上位机通过插补模块计算出插补点,把计算出的坐标值列表传给下位机,下位机把。

2、坐标值换转成相应脉冲数,并发出脉冲到电机驱动器,控制电机转动并驱动机械结构动作;所述插补模块为NURBS曲线插补模块,采用大密度离散法来求得整条曲线的长度;设定插补周期T和插补速度V,求得插补基步长S和弓高误差的大小比较弓高误差S和要求的误差1的关系。本发明提供一种能够兼顾步长速度和精度、计算量小、容易实现NURBS插补的基于NURBS曲线插补方法的运动控制系统。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书1页说明书5页附图2页CN102109837A1/1页21一种基于NURBS曲线插补方法的运动控制系统,包括依次连接的上位机、下位机、电机驱动器、电机和机械结构,。

3、所述上位机通过插补模块计算出插补点,把计算出的坐标值列表传给下位机,下位机把坐标值换转成相应脉冲数,并发出脉冲到电机驱动器,控制电机转动并驱动机械结构动作;其特征在于所述插补模块为NURBS曲线插补模块,采用大密度离散法来求得整条曲线的长度设定插补周期T和插补速度V,用以下公式求得插补基步长SMROUNDS/VTSS/M2弓高误差的大小比较弓高误差S和要求的误差1的关系若01341,下一个步长就取为2S;若继续01341,步长继续加倍;若013411,步长取S;若弓高误差满足121,步长取为0866S;若21,步长取为权利要求书CN102109834ACN102109837A1/5页3基于NU。

4、RBS曲线插补方法的运动控制系统技术领域0001本发明涉及机电数控技术领域,尤其是一种运动控制系统。背景技术0002NURBS非均匀有理B样条曲线不仅能精确统一的表示标准解析曲线和自由曲线,而且它的形状控制功能也特别强大灵活。1991年国际标准化组织ISO正式颁布了工业产品几何定义的STEPSTANDFORTHEEXCHANGEOFPRODUCTMODELDAA产品数据模型数据交换的标准标准,作为产品数据交换的国际标准。目前,NURBS方法在CAD/CAM领域已经成功应用,而在运动控制系统领域目前只有FUNUC、SIEMENS、三菱等少数高档数控系统支持NURBS插补,在大多数的运动控制器中很。

5、难得到应用,导致现有运动控制系统存在不能兼顾步长速度和精度的缺陷。发明内容0003为了克服已有运动控制系统的不能兼顾步长速度和精度、计算量较大、不容易实现NURBS插补的不足,本发明提供一种能够兼顾步长速度和精度、计算量小、容易实现NURBS插补的基于NURBS曲线插补方法的运动控制系统。0004本发明解决其技术问题所采用的技术方案是0005一种基于NURBS曲线插补方法的运动控制系统,包括依次连接的上位机、下位机、电机驱动器、电机和机械结构,所述上位机通过插补模块计算出插补点,把计算出的坐标值列表传给下位机,下位机把坐标值换转成相应脉冲数,并发出脉冲到电机驱动器,控制电机转动并驱动机械结构动。

6、作;所述插补模块为NURBS曲线插补模块,采用大密度离散法来求得整条曲线的长度00060007设定插补周期T和插补速度V,用以下公式求得插补基步长S0008MROUNDS/VT0009SS/M20010弓高误差的大小00110012比较弓高误差S和要求的误差1的关系0013若01341,下一个步长就取为2S;0014若继续01341,步长继续加倍;0015若013411,步长取S;0016若弓高误差满足121,步长取为0866S;说明书CN102109834ACN102109837A2/5页40017若21,步长取为0018本发明的技术构思为三次NURBS曲线的首末节点重复数取为4,整条曲线的。

7、定义域就为U3,UN1,第一段曲线由J0,1,2,3确定,其定义区间为U3,U4,末段曲线由JN3,N2,N1,N,其定义区间为UN,UN1,即在公式3中I的取值范围是3IN。则第I段NURBS曲线的方程和控制点矢量和可表示如下0019002000210022MIROUNDLI/VTI3,4,N0023或MIROUNDLI/SI3,4,N50024上式中LI是第I段NURBS曲线PIU的弦长;MI为第I段曲线的离散数;T是系统插补周期;V为插补过程中的最大进给速度;S是插补基步长也可以直接给出插补步长。0025可以得出参数基增量UI为0026UIUI1UI/MI60027将PIU在XY面上的投。

8、影分成MI等分,再引垂线即可交原曲线MI个离散点,将离散点连线,就可逼近原曲线。设MI为第I段NURBS曲线PIU离散所取的第M个离散点,则可知其取值范围是1,2,3,MI,计算其坐标公式如下00280029由此就可以计算出第I段曲线的弧长SI0030说明书CN102109834ACN102109837A3/5页50031由上述式子就可以算整条NURBS曲线的总弧长S为00320033求得整条NURBS曲线的弧长S,据此计算整条的曲线的基步长S0034MROUNDS/VT0035SS/M900361在曲率较小的情况下0037在曲率较小的情况下,弓高误差比较小,就可以选取较长的步长,为计算简单期。

9、间,特选取2的次方倍步长,设要求的弓高误差为1,在大多数情况下,自由曲线的曲率一股大于等弧长的圆,现在以圆为样条曲线的近似曲线,计算步长与弓高误差的关系,如图2所示。0038设在圆0内,弦长AB与弦长CD对应的弧分别是弧AGB和弧CGD,弓高误差分别是FG和EG。如果AB2CD,则00390040令XBE则00410042计算得当XR时,Y取最小值,此时0043Y01340044可以做这样的取值,如果实际的弓高误差01341,则下一个步长就取为2S,找下一个点的U,再计算弓高误差,如果继续01341,则步长继续加倍。如果013411,则步长取S。00452在曲率较大的情况下0046在曲率较大的。

10、情况下,弓高误差比较大,要保证误差满足要求,就必须选取较小的步长。同样在圆中计算设弧AGB的弓高误差GE,弧CGB的弓高误差GF,设GE2GF。00470048令XGE则00490050当XR时,Y取最大值0051Y08660052可以做这样的取值,当弓高误差121,步长取为0866S,如果说明书CN102109834ACN102109837A4/5页621,步长取为0053本发明的有益效果主要表现在能够兼顾步长速度和精度、计算量小、容易实现NURBS插补。附图说明0054图1是第I段曲线离散点的示意图。0055图2是曲率较小的情况下弓高误差和弦长的关系。0056图3是曲率较大的情况下弓高误差。

11、和弦长的关系。0057图4是运动控制系统的原理框图。具体实施方式0058下面结合附图对本发明作进一步描述。0059参照图1图4,一种基于NURBS曲线插补方法的运动控制系统,包括依次连接的上位机、下位机、电机驱动器、电机和机械结构,所述上位机通过插补模块计算出插补点,把计算出的坐标值列表传给下位机,下位机把坐标值换转成相应脉冲数,并发出脉冲到电机驱动器,控制电机转动并驱动机械结构动作;所述插补模块为NURBS曲线插补模块,采用大密度离散法来求得整条曲线的长度00600061设定插补周期T和插补速度V,用以下公式求得插补基步长S0062MROUNDS/VT0063SS/M20064弓高误差的大小。

12、00650066比较弓高误差S和要求的误差1的关系0067若01341,下一个步长就取为2S;0068若继续01341,步长继续加倍;0069若013411,步长取S;0070若弓高误差满足121,步长取为0866S;0071若21,步长取为0072在实验室验证使用,给定一条NURNS曲线,用PC机编程计算曲线上的插补点,以列表形式传给下位机,OMRONPLC40DTDCPU控制2个伺服电机在平面内运动,0073选用森创交流伺服电机90STM024200074说明书CN102109834ACN102109837A5/5页700750076表1电机参数表;0077NURBS曲线参数信息如下次数K3,权因子1,1,1,1,1,1,控制点信息B10,10,050,80,0100,100,0180,40,0250,50,0300,120,0,节点序列U0,0,0,0,05,075,1,1,1,1,进给速度V50MM/S,要求的弓高误差设为002MM,0078计算的插补点数据庞大,只给出部分开始和结尾曲线段域的点00790080表2插补点列表。说明书CN102109834ACN102109837A1/2页8图1图2说明书附图CN102109834ACN102109837A2/2页9图3图4说明书附图CN102109834A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 控制;调节


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1