签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
CAM曲线用五次多项式生成,有什么优点呢?
除了可以使用单项式获得水平段外,还有哪些用途?
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1426725&b_id=46&s_id=0&num=19
CAM曲线?这是说的什么地方的事?我怎么不知道呢?这个5次方的曲线在哪?是现成的块?能再说说吗?看不懂耶。
不过,工程上,我们是做过实验的,一般要模拟一个现场的运动轨迹,比如说一个物体的运动轨迹,它主要是受运行速度产生的风阻和道路摩擦阻力,简单的模拟,就是用2次方程来描述。而实际采集到的阻力曲线,用数学多项式来拟合,5次方才能算是基本接近了实际。
在控制领域,模拟一个实际的运行轨迹,基本都是多项式方程,而多项式的方程,次数越高就越接近实际。谁说没有用呢?特别有用!过去受计算机水平限制,高次方程很少被用于工程,现在,能用多高就用多高。只要满足响应速度的需求,越高次方程计算,越接近实际。
楼上的回答好莫名其妙啊,人家问的是凸轮的描点曲线类型
是呀,我只看到说多项式的方程,没看懂其他。凸轮的曲线就说凸轮多好呢?一看就懂了。嘻嘻。
不过更说明了多项式描述曲线的用途了。
不明白多项式,什么规律,怎么设置相关参数。
测试中,多一级参数变化,会带来更大的曲线跨越。不知道怎么跟实际需要曲线关联的。。。
我是这么理解:
任何一个负载特性,它的运动轨迹,可以通过一个平面曲线来描述。作为控制或仿真,首先是要能知道或取得这个负载特性的平面曲线,然后把它拿到控制系统里,通过高次方程运动形式去实时控制。实现与真实负载特性一致的效果。
通过实践发现,对于一个真实的负载特性曲线(运动轨迹),采用高次方程来拟合,是完全可能的。拟合的精度越高,要求的多项式方程次数也越高。这是正比关系。
五次方程一般能满足这个需求。仅此而已。
至于凸轮的仿真模拟,我就不知道了,因为没做过。但我们行业用这个模拟发动机在装车以后的路谱采集。五次方程能获得相当高的曲线拟合精度了。
至于如何使用方程在控制系统里的应用?如何设置参数?这就是很简单的事情了。首先,你要已知这个控制方程,他是你的控制对象,如果不知道,无从谈起其它。控制对象的运动轨迹可以是已知的需求,可以实测一个曲线,然后通过计算机变换成高次方程。然后在控制系统里讲这个方程的自变量参数关联,并对方城中的所有系数参数化设置。就OK了。这些内容属于工艺控制范畴。
假如凸轮曲线位置关系如下:
1、X=0;Y=0;
2、X=60;Y=80;
3、X=120;Y=100;
4、X=180;Y=220;
5、X=240;Y=300;
6、X=300;Y=300;
7、X=360;Y=360。
这样的曲线,直观的点关系,用多项式如何表达?
ok,把这7个点放在一个y = f(x)坐标系里,描绘出一条曲线,然后把这套曲线用多项式方程来表示。这样的处理方法有很多,而且有专门的软件去做变换。或者自己写程序来实现。现在的计算机高级语言做这个都不是难事。
windows里的excel也能把曲线变换成多项式方程。一般我们都是通过VB.NET程序来实现这个转换的。这是软体工程师的事。
回复5楼的评论:
在自动化与驱动控制工艺里,利用数学模型仿真和模拟被控对象的运动轨迹,经常会遇到。这种方法应该了解和掌握。
过去上学时,总是很不解,为什么自动化专业学的数学要比其他专业更多,更难?特别是工程数学,矩阵,概率等等呢,搞得云山雾罩。现在通过工作才理解,搞控制数学是基础,是门槛。
五次多项式能保证位置轨迹在拐角处的速度,加速度连续平滑,没有冲击,减小震动。
这个议题,觉得有必要把它理理清,否则用不好这个数学定论功能。
1:你提到的方法是很经典,很成熟的处理方法,计算上全化成无量纲的0.0-1.0的实数参与运算(类似电力系统的标幺值计算)。
2:位置-时间的函数关系化成主位置(Y)-从位置(X)的关系。
3:解5次多项式的系数时缺少一个方程,加上跃度连续且可微这个约束刚好解出所有的系数,间接证明5次多 项式可以使跟随运动更平滑。
4:一般需要曲线非对称以达到加速范围小减速范围大,所以选择3,5,7而非2,4,6多项式。
5:也有用7次的或者Fourier多项式的(Fourier理论上优于Taylor的)。
这么个由浅入深的理解。
y=kx+b这条直线只能经过两个点。你给出的这数组可以用这个方程拟合这些点成为一条曲线。直接就是直线连接相邻的两个点可以了。这曲线显然只是一条折线。
y=ax^2+bx+c这条线抛物线一定可以经过你给出的三个点。同样可以用这条曲线拟合你的数组。
y=ax^3+bx^2+cx+d可以经过四个点。
y=ax^4+bx^3+cx^2+dx+e可以经过五个点。这条式是不是有五个不能再合并的项?五项式的来历。
用这条式的曲线去拟合你给出的任意五个点,这意味着图形虽然仅仅显示两个点之间的曲线,但是它可以一直延伸到以后的三个点。也就是它的趋势;趋势的趋势;趋势的趋势的趋势已经延伸到很远。
你连接AB两点用这条曲线,AB点之间已经有这条曲线了,它的极限是到达E点,但是此时仅仅画出AB两点之间的这部分曲线。
连接BC两点的时候,又用另外的一条五项式,它又可以在与前面那条曲线一部分基本重合的情况下可以延伸到F点。这样的话,两道曲线之间的相交处的变化率就趋于相等了。也就是平滑。
一直用这个规律,用现成的两个点加上未来的3个点做一条五项式,拟合当前两个点之间的曲线,就可以把你数组里的点连成一条曲线。
这只是一个很入门很入门的原理。绝对不代表实际。
这个好处是由于运算简单,运算速度快,生成曲线容易。
例子这样的方程曲线是有限制的,你别弄个迂回曲线就可以了。就是说一个Y值有两个X的可能,或者一个X值有两个Y的可能。(不过凸轮是不存在这样的曲线的)
楼主提到的单项式可以生成水平段,其实就是y=k,这就是一条水平线。这就是只有一项,连X都没有。
谢谢芳季先生的引浅入深,大概知道多项式计算有什么优势了,类似前馈,在未到达的时候,已经规划好了到达后面2~3个点的路径,不会显得非常急加减速去走直线。
实际应用中,运用多项式,调试运行,花的时间会比直线段多很多吧。
但是能把系统最高的效率发挥出来,平滑顺畅。。。
至于多项式,还是需要工具计算参数的,如Excel。
@Tech.Wing 回复你对7楼发言的回复:
多项式模拟方程,有两种形式,适用于传动控制工艺。一种是,已知曲线坐标的几个点,把它变换成多项式的方程,然后再把方程系数置于控制系统的相应多项式参数里;一次性的曲线设置植入;另外一种是,上位机(工控计算机)自己通过编程软件把已知的几个点,换算成多项式方程,由通讯形式输入控制器的相关参数里。这样的做法,更多的是用于实时更新曲线参数。自动化的多项式方程通讯控制。
此类帖子只有看的份,努力学习吧---致自己。
引用详细内容:
因为位置,速度,加速度的要求,所以用5次多项式拟合。11楼也说了方程能解出多项式的系数。
龙格现象
在计算方法中,有利用多项式对某一函数的近似逼近,这样,利用多项式就可以计算相应的函数值。例如,在事先不知道某一函数的具体形式的情况下,只能测量得知某一些分散的函数值。例如我们不知道气温随日期变化的具体函数关系,但是我们可以测量一些孤立的日期的气温值,并假定此气温随日期变化的函数满足某一多项式。这样,利用已经测的数据,应用待定系数法便可以求得一个多项式函数f(x)。应用此函数就可以计算或者说预测其他日期的气温值。一般情况下,多项式的次数越多,需要的数据就越多,而预测也就越准确。
中文名
外文名
Runge phenomenon
发现者
龙格
定义
利用多项式对某一函数的近似逼近
简介
例外发生了:龙格在研究多项式插值的时候,发现有的情况下,并非取节点(日期数)越多多项式就越精确。著名的例子是f(x)=1/(1+25x^2).它的插值函数在两个端点处发生剧烈的波动,造成较大的误差。究其原因,是舍入误差造成的。
具体的情况可参考下列Mathematica程序:
n = 10; x = Range[-1, 1, 2/n]; y = 1./(1 + 25 x^2); p =
Transpose[{x, y}];
Clear[t]; f = LagrangeInterpolation[x, y, t];
Show[
Plot[{1./(1 + 25 t^2), f}, {t, -1, 1}],
ListPlot[p, PlotStyle -> PointSize[0.02]]
]
程序演示
Matlab 程序演示 (一)
代码
>> f=inline('1/6-y/30','t','y');
[t,y]=ode45(f,[0,5],[0]);
plot(t,y)
>> hold on
plot(t,5-5*exp(-t/30),'r*')
下面是MATLAB中演示插值的M文件:
演示结果
%演示龙格函数的插值情况
for i=3:2:11
x=linspace(-1,1,i);
y=1./(1+25*x.^2);
p=polyfit(x,y,i-1);
xx=-1:0.01:1;
yy=polyval(p,xx);
plot(xx,yy,'b');
hold on;
grid on;
end;
plot(x,1./(1+25*x.^2),'r');
运行效果如右图
图中红色的才是真正的函数图形。一般把这种次数越高而插值结果越偏离原函数的现象称为龙格现象。所以在不熟悉曲线运动趋势的前提下,不要轻易使用高次插值。
为了避免上述情况,采用分段线性插值和分段三次Hermite插值。由于在分段插值结点处常有尖点出现,而分段三次Hermite插值结点处也只有一阶光滑度,不能满足科学工程实际应用。而早起飞机船体设计时要求二阶光滑度,即具有连续的二阶导数。这里采用三次样条曲线。(样条函数和Hermite插值可见百度。)
样条函数的原函数,一阶导数,二阶导数以及边界端点处的函数值,一阶导数值,二阶导数值。共计6个方程式,可以解出分段5次多项式的6个系数。然后在拼接成一个连续曲线函数。
也就是位置,速度,加速度的曲线能满足高速运动的要求,消除进给过程的冲击。
无论什么专业,搞到最后都得用数学。太复杂了,我也只是看懂了大概。希望能帮助楼主理解。楼主也去查一下这个样条函数,真的挺有意思。
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录