CN102109834B - Motion control system based on non-uniform rational B-spline (NURBS) curve interpolation - Google Patents
Motion control system based on non-uniform rational B-spline (NURBS) curve interpolation Download PDFInfo
- Publication number
- CN102109834B CN102109834B CN2011100036423A CN201110003642A CN102109834B CN 102109834 B CN102109834 B CN 102109834B CN 2011100036423 A CN2011100036423 A CN 2011100036423A CN 201110003642 A CN201110003642 A CN 201110003642A CN 102109834 B CN102109834 B CN 102109834B
- Authority
- CN
- China
- Prior art keywords
- interpolation
- nurbs
- curve
- step size
- delta
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims abstract description 10
- 238000011438 discrete method Methods 0.000 claims description 3
- 230000000295 complement effect Effects 0.000 claims 1
- 108700041286 delta Proteins 0.000 abstract 1
- 238000004364 calculation method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Landscapes
- Numerical Control (AREA)
Abstract
Description
技术领域 technical field
本发明涉及机电数控技术领域,尤其是一种运动控制系统。The invention relates to the technical field of electromechanical numerical control, in particular to a motion control system.
背景技术 Background technique
NURBS(非均匀有理B样条)曲线不仅能精确统一的表示标准解析曲线和自由曲线,而且它的形状控制功能也特别强大灵活。1991年国际标准化组织(ISO)正式颁布了工业产品几何定义的STEP(Stand for the Exchange of Productmodel daa产品数据模型数据交换的标准)标准,作为产品数据交换的国际标准。目前,NURBS方法在CAD/CAM领域已经成功应用,而在运动控制系统领域目前只有FUNUC、SIEMENS、三菱等少数高档数控系统支持NURBS插补,在大多数的运动控制器中很难得到应用,导致现有运动控制系统存在不能兼顾步长速度和精度的缺陷。NURBS (Non-Uniform Rational B-Spline) curves can not only accurately and uniformly represent standard analytical curves and free curves, but also have powerful and flexible shape control functions. In 1991, the International Organization for Standardization (ISO) officially promulgated the STEP (Stand for the Exchange of Productmodel daa) standard for the geometric definition of industrial products as an international standard for product data exchange. At present, the NURBS method has been successfully applied in the field of CAD/CAM, but in the field of motion control systems, only a few high-end CNC systems such as FUNUC, SIEMENS, and Mitsubishi support NURBS interpolation, which is difficult to be applied in most motion controllers, resulting in The existing motion control system has the defect of not being able to take into account the step speed and precision.
发明内容 Contents of the invention
为了克服已有运动控制系统的不能兼顾步长速度和精度、计算量较大、不容易实现NURBS插补的不足,本发明提供一种能够兼顾步长速度和精度、计算量小、容易实现NURBS插补的基于NURBS曲线插补方法的运动控制系统。In order to overcome the deficiencies of the existing motion control system, which cannot take into account the step speed and accuracy, has a large amount of calculation, and is not easy to realize NURBS interpolation, the present invention provides a method that can take into account the step speed and accuracy, has a small amount of calculation, and is easy to implement NURBS interpolation. Interpolation motion control system based on NURBS curve interpolation method.
本发明解决其技术问题所采用的技术方案是:The technical solution adopted by the present invention to solve its technical problems is:
一种基于NURBS曲线插补方法的运动控制系统,包括依次连接的上位机、下位机、电机驱动器、电机和机械结构,所述上位机通过插补模块计算出插补点,把计算出的坐标值列表传给下位机,下位机把坐标值换转成相应脉冲数,并发出脉冲到电机驱动器,控制电机转动并驱动机械结构动作;所述插补模块为NURBS曲线插补模块,采用大密度离散法来求得整条曲线的长度:A motion control system based on the NURBS curve interpolation method, including a host computer, a lower computer, a motor driver, a motor and a mechanical structure connected in sequence, the host computer calculates interpolation points through an interpolation module, and the calculated coordinates The value list is transmitted to the lower computer, and the lower computer converts the coordinate value into the corresponding pulse number, and sends the pulse to the motor driver to control the rotation of the motor and drive the action of the mechanical structure; the interpolation module is a NURBS curve interpolation module, which adopts a large density Discrete method to find the length of the entire curve:
设定插补周期T和插补速度V,用以下公式求得插补基步长Δs:Set the interpolation cycle T and interpolation speed V, and use the following formula to obtain the interpolation base step size Δs:
M=round(s/(VT))M=round(s/(VT))
Δs=s/M (2)Δs=s/M (2)
弓高误差的大小Δδ:The size of bow height error Δδ:
比较弓高误差Δs和要求的误差δ1的关系:Compare the relationship between the bow height error Δs and the required error δ1 :
①若Δδ≤0.134δ1,下一个步长就取为2Δs;① If Δδ≤0.134δ 1 , the next step size is 2Δs;
②若继续Δδ≤0.134δ1,步长继续加倍;② If Δδ≤0.134δ 1 continues, the step size will continue to double;
③若0.134δ1≤Δδ≤δ1,步长取Δs;③If 0.134δ 1 ≤Δδ≤δ 1 , the step size is Δs;
④若弓高误差满足δ1≤Δδ≤2δ1,步长取为0.866Δs;④ If the bow height error satisfies δ 1 ≤ Δδ ≤ 2δ 1 , the step size is 0.866Δs;
⑤若Δδ>2δ1,步长取为 ⑤If Δδ>2δ 1 , the step size is taken as
本发明的技术构思为:三次NURBS曲线的首末节点重复数取为4,整条曲线的定义域就为[u3,un+1],第一段曲线由j=0,1,2,3确定,其定义区间为[u3,u4],末段曲线由j=n-3,n-2,n-1,n,其定义区间为[un,un+1],即在公式(3)中i的取值范围是:3≤i≤n。则第i段NURBS曲线的方程和控制点矢量和可表示如下:The technical idea of the present invention is: the repetition number of the first and last nodes of the cubic NURBS curve is set to 4, the definition domain of the whole curve is [u 3 , u n+1 ], and the first section of the curve consists of j = 0, 1, 2, 3 determined, its definition interval is [u 3 , u 4 ], the last curve is defined by j=n-3, n-2, n-1, n, and its defined interval is [u n , u n+1 ], that is, the value range of i in formula (3) is: 3≤i≤n. Then the equation and control point vector of the i-th NURBS curve and Can be expressed as follows:
Mi=round(li/(VT)) i=(3,4,…,n)M i = round(l i /(VT)) i = (3, 4, ..., n)
或Mi=round(li/Δs) i=(3,4,…,n)(5)Or M i = round(l i /Δs) i = (3, 4, ..., n) (5)
上式中:li是第i段NURBS曲线pi(u)的弦长;Mi为第i段曲线的离散数;T是系统插补周期;V为插补过程中的最大进给速度;Δs是插补基步长(也可以直接给出插补步长)。In the above formula: l i is the chord length of the i-th NURBS curve p i (u); M i is the discrete number of the i-th curve; T is the system interpolation period; V is the maximum feed speed during the interpolation process ; Δs is the interpolation base step size (the interpolation step size can also be given directly).
可以得出参数基增量Δui为:It can be obtained that the parameter base increment Δu i is:
Δui=(ui+1-ui)/Mi (6)Δu i =(u i+1 -u i )/M i (6)
将pi(u)在X-Y面上的投影分成Mi等分,再引垂线即可交原曲线Mi个离散点,将离散点连线,就可逼近原曲线。设mi为第i段NURBS曲线pi(u)离散所取的第m个离散点,则可知其取值范围是1,2,3,…,Mi,计算其坐标公式如下:Divide the projection of p i (u) on the XY plane into M i equal parts, and then draw a vertical line to intersect M i discrete points of the original curve, and connect the discrete points to approximate the original curve. Let m i be the mth discrete point of the i-th segment of the NURBS curve p i (u) discrete, then we know that its value range is 1, 2, 3, ..., M i , and the formula for calculating its coordinates is as follows:
由此就可以计算出第i段曲线的弧长si:From this, the arc length s i of the i-th curve can be calculated:
由上述式子就可以算整条NURBS曲线的总弧长s为:From the above formula, the total arc length s of the entire NURBS curve can be calculated as:
求得整条NURBS曲线的弧长s,据此计算整条的曲线的基步长Δs:Find the arc length s of the entire NURBS curve, and calculate the base step length Δs of the entire curve accordingly:
M=round(s/(VT))M=round(s/(VT))
Δs=s/M (9)Δs=s/M (9)
(1)在曲率较小的情况下(1) In the case of small curvature
在曲率较小的情况下,弓高误差比较小,就可以选取较长的步长,为计算简单期间,特选取2的次方倍步长,设要求的弓高误差为δ1,在大多数情况下,自由曲线的曲率一股大于等弧长的圆,现在以圆为样条曲线的近似曲线,计算步长与弓高误差的关系,如图2所示。In the case of small curvature, the error of the bow height is relatively small, so a longer step size can be selected. In order to simplify the calculation period, the step size times the power of 2 is selected, and the required bow height error is δ 1 . In most cases, the curvature of the free curve is generally larger than the circle with equal arc length. Now the circle is used as the approximate curve of the spline curve, and the relationship between the step length and the bow height error is calculated, as shown in Figure 2.
设在圆0内,弦长AB与弦长CD对应的弧分别是弧AGB和弧CGD,弓高误差分别是FG和EG。如果AB=2CD,则Assuming that in the
令
计算得当x=R时,y取最小值,此时Calculated when x=R, y takes the minimum value, at this time
y=0.134y=0.134
可以做这样的取值,如果实际的弓高误差Δδ≤0.134δ1,则下一个步长就取为2Δs,找下一个点的u,再计算弓高误差,如果继续Δδ≤0.134δ1,则步长继续加倍。如果0.134δ1≤Δδ≤δ1,则步长取Δs。You can do this value, if the actual bow height error Δδ≤0.134δ 1 , then the next step size is 2Δs, find the u of the next point, and then calculate the bow height error, if continue Δδ≤0.134δ 1 , Then the step size continues to double. If 0.134δ 1 ≤Δδ≤δ 1 , the step size is Δs.
(2)在曲率较大的情况下(2) In the case of large curvature
在曲率较大的情况下,弓高误差比较大,要保证误差满足要求,就必须选取较小的步长。同样在圆中计算:设弧AGB的弓高误差GE,弧CGB的弓高误差GF,设GE=2GF。In the case of large curvature, the error of bow height is relatively large. To ensure that the error meets the requirements, a smaller step size must be selected. Also calculate in the circle: set the bow height error GE of the arc AGB, and the bow height error GF of the arc CGB, let GE=2GF.
令
当x=R时,y取最大值When x=R, y takes the maximum value
y=0.866y=0.866
可以做这样的取值,当弓高误差δ1≤Δδ≤2δ1,步长取为0.866Δs,如果Δδ>2δ1,步长取为 Such a value can be taken, when the bow height error δ 1 ≤ Δδ ≤ 2δ 1 , the step size is 0.866Δs, if Δδ > 2δ 1 , the step size is
本发明的有益效果主要表现在:能够兼顾步长速度和精度、计算量小、容易实现NU RBS插补。The beneficial effects of the present invention are mainly manifested in: the step speed and precision can be taken into account, the amount of calculation is small, and NU RBS interpolation can be easily realized.
附图说明 Description of drawings
图1是第i段曲线离散点的示意图。Figure 1 is a schematic diagram of discrete points on the i-th curve.
图2是曲率较小的情况下弓高误差和弦长的关系。Figure 2 shows the relationship between bow height error and chord length when the curvature is small.
图3是曲率较大的情况下弓高误差和弦长的关系。Figure 3 shows the relationship between bow height error and chord length when the curvature is large.
图4是运动控制系统的原理框图。Figure 4 is a functional block diagram of the motion control system.
具体实施方式 Detailed ways
下面结合附图对本发明作进一步描述。The present invention will be further described below in conjunction with the accompanying drawings.
参照图1~图4,一种基于NURBS曲线插补方法的运动控制系统,包括依次连接的上位机、下位机、电机驱动器、电机和机械结构,所述上位机通过插补模块计算出插补点,把计算出的坐标值列表传给下位机,下位机把坐标值换转成相应脉冲数,并发出脉冲到电机驱动器,控制电机转动并驱动机械结构动作;所述插补模块为NURBS曲线插补模块,采用大密度离散法来求得整条曲线的长度:Referring to Figures 1 to 4, a motion control system based on the NURBS curve interpolation method includes an upper computer, a lower computer, a motor driver, a motor, and a mechanical structure connected in sequence, and the upper computer calculates the interpolation value through the interpolation module. point, the calculated list of coordinate values is passed to the lower computer, and the lower computer converts the coordinate values into corresponding pulse numbers, and sends pulses to the motor driver to control the rotation of the motor and drive the action of the mechanical structure; the interpolation module is a NURBS curve The interpolation module uses the large-density discrete method to obtain the length of the entire curve:
设定插补周期T和插补速度V,用以下公式求得插补基步长Δs:Set the interpolation period T and interpolation speed V, and use the following formula to obtain the interpolation base step size Δs:
M=round(s/(VT))M=round(s/(VT))
Δs=s/M (2)Δs=s/M (2)
弓高误差的大小Δδ:The size of bow height error Δδ:
比较弓高误差Δs和要求的误差δ1的关系:Compare the relationship between the bow height error Δs and the required error δ1 :
①若Δδ≤0.134δ1,下一个步长就取为2Δs;① If Δδ≤0.134δ 1 , the next step size is 2Δs;
②若继续Δδ≤0.134δ1,步长继续加倍;② If Δδ≤0.134δ 1 continues, the step size will continue to double;
③若0.134δ1≤Δδ≤δ1,步长取Δs;③If 0.134δ 1 ≤Δδ≤δ 1 , the step size is Δs;
④若弓高误差满足δ1≤Δδ≤2δ1,步长取为0.866Δs;④ If the bow height error satisfies δ 1 ≤ Δδ ≤ 2δ 1 , the step size is 0.866Δs;
⑤若Δδ>2δ1,步长取为 ⑤If Δδ>2δ 1 , the step size is taken as
在实验室验证使用,给定一条NURNS曲线,用PC机编程计算曲线上的插补点,以列表形式传给下位机,omron PLC 40DT-D CPU控制2个伺服电机在平面内运动,For laboratory verification, a NURNS curve is given, and the interpolation points on the curve are calculated by PC programming, and then transmitted to the lower computer in the form of a list. The omron PLC 40DT-D CPU controls two servo motors to move in the plane.
选用森创交流伺服电机90ST-M02420Select Senchuang AC servo motor 90ST-M02420
表1电机参数表;Table 1 motor parameter list;
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,NURBS curve parameter information is as follows: times k=3, weight factor ω={1,1,1,1,1,1}, control point information b={(10,10,0)(50,80,0)( 100,100,0)(180,40,0)(250,50,0)(300,120,0)}, node sequence u={0,0,0,0,0.5,0.75,1,1, 1, 1}, the feed speed v=50mm/s, the required bow height error is set to 0.02mm,
计算的插补点数据庞大,只给出部分开始和结尾曲线段域的点The calculated interpolation point data is huge, and only some points in the beginning and end curve segment domains are given
表2插补点列表。Table 2 List of interpolation points.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100036423A CN102109834B (en) | 2011-01-10 | 2011-01-10 | Motion control system based on non-uniform rational B-spline (NURBS) curve interpolation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100036423A CN102109834B (en) | 2011-01-10 | 2011-01-10 | Motion control system based on non-uniform rational B-spline (NURBS) curve interpolation |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102109834A CN102109834A (en) | 2011-06-29 |
CN102109834B true CN102109834B (en) | 2012-07-04 |
Family
ID=44174017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011100036423A Expired - Fee Related CN102109834B (en) | 2011-01-10 | 2011-01-10 | Motion control system based on non-uniform rational B-spline (NURBS) curve interpolation |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102109834B (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102608956A (en) * | 2012-03-05 | 2012-07-25 | 浙江工业大学 | NURBS (Non-Uniform Rational B-Spline) curve adaptive interpolation control method based on de Boor algorithm |
CN103345201A (en) * | 2013-07-01 | 2013-10-09 | 浙江工业大学 | NURBS curve order reduction and interpolation motion control system |
CN104035380B (en) * | 2014-05-12 | 2017-01-25 | 浙江理工大学 | Numerical control cutting bed movement control method based on offset amount NURBS (Non Uniform Rational B Spline) curve |
CN104865900B (en) * | 2015-05-12 | 2018-01-23 | 中国地质大学(武汉) | A kind of NURBS interpolators pulse uniform output device and equipment |
CN105388840A (en) * | 2015-12-24 | 2016-03-09 | 上海交通大学 | Real-time self-adaptive contour error estimation method |
CN108073138B (en) * | 2016-11-08 | 2020-08-11 | 沈阳高精数控智能技术股份有限公司 | Elliptical arc smooth compression interpolation algorithm suitable for high-speed high-precision machining |
KR101896845B1 (en) * | 2017-03-15 | 2018-09-10 | 경북대학교 산학협력단 | System for processing motion |
CN111610751B (en) * | 2020-05-21 | 2023-07-28 | 天津工业大学 | Interpolation error multi-subdivision iterative calculation method for cross point set NURBS interpolation curve |
CN114706349B (en) * | 2022-04-06 | 2022-11-25 | 南华大学 | Numerical control machining method, device and equipment for curved surface part and readable storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0836128B1 (en) * | 1996-10-11 | 1999-06-02 | Siemens Aktiengesellschaft | Control method for motion operation in a numerically controlled industrial machining apparatus |
CN101178594A (en) * | 2007-11-30 | 2008-05-14 | 上海奈凯电子科技有限公司 | Method for realizing interpolation control in numerically controlled machine system |
CN101615024A (en) * | 2009-07-23 | 2009-12-30 | 哈尔滨工业大学 | Motion controller of five-axis CNC machine tool with NURBS interpolation function |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7627428B2 (en) * | 2006-11-01 | 2009-12-01 | The University Of Akron | Method of evaluating surface deformation |
-
2011
- 2011-01-10 CN CN2011100036423A patent/CN102109834B/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0836128B1 (en) * | 1996-10-11 | 1999-06-02 | Siemens Aktiengesellschaft | Control method for motion operation in a numerically controlled industrial machining apparatus |
CN101178594A (en) * | 2007-11-30 | 2008-05-14 | 上海奈凯电子科技有限公司 | Method for realizing interpolation control in numerically controlled machine system |
CN101615024A (en) * | 2009-07-23 | 2009-12-30 | 哈尔滨工业大学 | Motion controller of five-axis CNC machine tool with NURBS interpolation function |
Non-Patent Citations (3)
Title |
---|
张志强等.参数曲面高精度加工中的弦高误差控制.《机械科学与技术》.2010,第29卷(第05期),661-665,670. * |
杜娟等.基于STEP-NC的CNC系统中插补技术研究.《制造业自动化》.2005,第27卷(第6期),24-27. * |
谢黎明等.基于NURBS曲线的扩径头模块插补算法.《组合机床与自动化加工技术》.2009,(第11期),25-27. * |
Also Published As
Publication number | Publication date |
---|---|
CN102109834A (en) | 2011-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102109834B (en) | Motion control system based on non-uniform rational B-spline (NURBS) curve interpolation | |
Liu et al. | Development and implementation of a NURBS interpolator with smooth feedrate scheduling for CNC machine tools | |
Zhao et al. | A parametric interpolator with minimal feed fluctuation for CNC machine tools using arc-length compensation and feedback correction | |
Wang et al. | A real-time look-ahead interpolation algorithm based on Akima curve fitting | |
CN103728923B (en) | A kind of efficient high digital control system Acceleration-deceleration Control Method stably | |
CN104339354B (en) | A kind of special motion controller hardware platform for 6DOF parallel robot | |
CN103934528B (en) | A kind of six-axis linkage interpolating method for spark machined | |
CN106647282A (en) | Six-freedom-degree robot track planning method giving consideration to tail end motion error | |
WO2020151406A1 (en) | Motion control method, apparatus and system, and storage medium | |
CN103676787B (en) | A kind of center of circle model space circular interpolation method for kinetic control system | |
CN101913149B (en) | Embedded light mechanical arm controller and control method thereof | |
CN104260093A (en) | Delta parallel-connection manipulator control system | |
CN103760827B (en) | The off-line planning method of the digital control processing feed rate of jerk constraint | |
CN102073301B (en) | Five-axis spline interpolation device with cutter length compensation function | |
CN104793568A (en) | Multi-axle interpolation method | |
CN104240263B (en) | A kind of motion subtree system for Delta parallel manipulators | |
CN100514002C (en) | Method for realizing numerical control rotating platform angular displacement forecast measurement using time gate displacement sensor | |
CN101109948A (en) | A Nonuniform Rational B-spline Curve Interpolation and Position Tracking Method | |
CN104020717B (en) | Five axle based on parameter synchronization the most double NURBS cutter path interpolating method | |
CN106292542A (en) | The universal post processing method of a kind of band C axle Vehicle Processing and device | |
CN204374726U (en) | A kind of digital control system based on B-spline curves high speed real-time interpolation | |
CN102880118B (en) | Method for interpolating curve with variable interpolation cycle on basis of interpolation precision and limitation of accelerations | |
CN104020718A (en) | Self-adaption real-time interpolation method for NURBS curve reference model | |
Wu et al. | Fast NURBS interpolation based on the biarc guide curve | |
CN201562394U (en) | Comprehensive experimental model of process control |
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: 20120704 |
|
CF01 | Termination of patent right due to non-payment of annual fee |