一种任意平面圆弧插补运动控制器及其控制方法技术

技术编号:9312174 阅读:141 留言:0更新日期:2013-11-06 18:41
本发明专利技术公开了一种任意平面圆弧插补运动控制器及其方法,根据空间中任意平面圆弧上已知的三个点的坐标实现任意平面圆弧插补功能。该控制方法包括以下步骤:求取这三个点所在的平面;将平面通过两次欧拉变换旋转到XY平面;计算这三个点在XY平面下的坐标;计算出圆心及半径;将圆心平移到XY平面的原点;将该圆弧分成一系列等间隔插补点;计算每个插补点的圆心角;计算出相应插补点在该XY平面下的坐标;将每个插补点在该XY平面下的坐标进行两次欧拉变换,计算出每个插补点在该任意平面下的最终坐标。本发明专利技术的优点在于:工作可靠、实现简单,能实现高速高精度的任意平面圆弧插补功能。

【技术实现步骤摘要】

本专利技术涉及一种控制器及其控制方法,尤其是涉及一种任意平面圆弧插补运动控制器及其控制方法。
技术介绍
在运动控制领域中,任意平面圆弧插补一般采用PC计算出插补节点,然后下载到运动控制器。但该方法不能满足目前嵌入式应用的需求,为此需要开发一种简单实用的插补算法,以方便在嵌入式系统上能完成实时运算,并控制运动模块实现任意平面圆弧插补运动。
技术实现思路
有鉴于此,有必要提供一种实用的任意平面圆弧插补运动控制器及其控制方法。本专利技术是这样实现的,一种任意平面圆弧插补运动控制器,其根据空间中任意平面圆弧上已知的三个点的坐标实现任意平面圆弧插补功能,该控制器包括:平面方程计算单元,用于根据该已知的三个点的坐标,求取该已知的三个点所在的平面的平面方程;XY平面转换单元,用于将该平面通过两次欧拉变换旋转到XY平面,其中,X与Y分别为坐标轴;第一坐标换算单元,用于换算该已知的三个点在该XY平面下的坐标;圆心与半径计算单元,用于根据该已知的三个点在该XY平面下的坐标计算出该圆弧的圆心与半径;平移单元,用于将该圆心平移到该XY平面的原点;插补点获取单元,用于将该圆弧分成一系列等间隔插补点;圆心角计算单元,用于计算每个插补点的圆心角;XY平面坐标计算单元,用于根据圆心角计算出相应插补点在该XY平面下的坐标;以及第二坐标换算单元,用于将每个插补点在该XY平面下的坐标进行两次欧拉变换,计算出每个插补点在该任意平面下的最终坐标。作为上述方案的进一步改进,该圆心角满足以下公式:θ=2×sqrt(δ/R),其中,θ代表该圆心角;sqrt表示开平方根;δ表示为该圆弧的起始点到终点用直线代替存在的最大误差;R表示为该圆弧的半径。本专利技术还涉及一种任意平面圆弧插补运动控制方法,其根据空间中任意平面圆弧上已知的三个点的坐标实现任意平面圆弧插补功能,该控制方法包括以下步骤:根据该已知的三个点的坐标,求取该已知的三个点所在的平面的平面方程;将该平面通过两次欧拉变换旋转到XY平面,其中,X与Y分别为坐标轴;换算该已知的三个点在该XY平面下的坐标;根据该已知的三个点在该XY平面下的坐标计算出该圆弧的圆心与半径;将该圆心平移到该XY平面的原点;将该圆弧分成一系列等间隔插补点;计算每个插补点的圆心角;根据根据圆心角计算出相应插补点在该XY平面下的坐标;以及将每个插补点在该XY平面下的坐标进行两次欧拉变换,计算出每个插补点在该任意平面下的最终坐标。作为上述方案的进一步改进,该圆心角满足以下公式:θ=2×sqrt(δ/R),其中,θ代表该圆心角;sqrt表示开平方根;δ表示为该圆弧的起始点到终点用直线代替存在的最大误差;R表示为该半径。本专利技术提供的任意平面圆弧插补运动控制器及其控制方法具有以下优点:工作可靠、实现简单,能实现高速高精度的任意平面圆弧插补功能。附图说明图1为本专利技术较佳实施方式提供的任意平面圆弧插补运动控制器的模块结构示意图。图2为图1中任意平面圆弧插补运动控制器的每个插补点的获取原理图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。请一并参阅图1及图2,本专利技术的任意平面圆弧插补运动控制器根据空间中任意平面圆弧上已知的三个点的坐标,实现任意平面圆弧插补功能。该控制器包括平面方程计算单元1、XY平面转换单元2、第一坐标换算单元3、圆心与半径计算单元4、平移单元5、插补点获取单元9、圆心角计算单元6、XY平面坐标计算单元7、以及第二坐标换算单元8。平面方程计算单元1用于根据该已知的三个点的坐标,求取该已知的三个点所在的平面的平面方程;XY平面转换单元2用于将该平面通过两次欧拉变换旋转到XY平面,其中,X与Y分别为坐标轴;第一坐标换算单元3用于换算该已知的三个点在该XY平面下的坐标;圆心与半径计算单元4用于根据该已知的三个点在该XY平面下的坐标计算出该圆弧的圆心与半径R;平移单元5用于将该圆心平移到该XY平面的原点;插补点获取单元9用于将该圆弧分成一系列等间隔插补点;圆心角计算单元6用于计算每个插补点的圆心角;XY平面坐标计算单元用于根据圆心角计算出相应插补点在该XY平面下的坐标;第二坐标换算单元8用于将每个插补点在该XY平面下的坐标进行两次欧拉变换,计算出每个插补点在该任意平面下的最终坐标。下面,本专利技术的任意平面圆弧插补运动控制器的控制方法进行详细的举例说明。假设,已知空间(x,y,z三轴两两垂直空间)中任意平面圆弧上三个点a、b、c坐标a(x1,y1,z1),b(x2,y2,z2),c(x3,y3,z3),由此将先求取这三个点a、b、c所在的平面方程Ax+By+Cz+D=0,其中,A、B、C、D均为常数,A2+B2+C2≠0,然后将这一平面通过两次欧拉变换旋转到XY平面,计算这三个点a、b、c在XY平面下的坐标得到(x1’,y1’,0),(x2’,y2’,0),(x2’,y2’,0),然后根据这三点a、b、c计算出圆心及半径R,并将圆心平移到XY平面的原点O(0,0,0)。将该圆弧分成一系列等间隔插补点,由于为等间隔插补点,因此插补点具有规律性,如插补点d为点a、b的中分点。该圆弧的起始点a到终点b用直线代替存在最大误差δ,其最大误差δ为直线de的长度(如图2所示,点e为直线Od与直线ab的交点),由此可得:δ=|ad|*sin(θ/2)≈R*(θ/2)*sin(θ/2)≈R*(θ/2)*(θ/2)=Rθ2/4由上述公式可得:θ=2*sqrt(δ/R)。因此,根据θ计算出插补点d在XY平面下的坐标,然后再进行两次欧拉变换,即可计算出该插补点在任意平面下的坐标。这样,每次只需要在上一节点运动完成之前计算出下一节点坐标即可,然后调用三维直线连续插补功能,就可实现任意平面圆弧插补功能。以上所述仅为本专利技术的较佳实施例而已,并不用以限制本专利技术,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本专利技术的保护范围之内。本文档来自技高网...

【技术保护点】
一种任意平面圆弧插补运动控制器,其根据空间中任意平面圆弧上已知的三个点的坐标实现任意平面圆弧插补功能,其特征在于:该控制器包括:平面方程计算单元,用于根据该已知的三个点的坐标,求取该已知的三个点所在的平面的平面方程;XY平面转换单元,用于将该平面通过两次欧拉变换旋转到XY平面,其中,X与Y分别为坐标轴;第一坐标换算单元,用于换算该已知的三个点在该XY平面下的坐标;圆心与半径计算单元,用于根据该已知的三个点在该XY平面下的坐标计算出该圆弧的圆心与半径;平移单元,用于将该圆心平移到该XY平面的原点;插补点获取单元,用于将该圆弧分成一系列等间隔插补点;圆心角计算单元,用于计算每个插补点的圆心角;XY平面坐标计算单元,用于根据圆心角计算出相应插补点在该XY平面下的坐标;以及第二坐标换算单元,用于将每个插补点在该XY平面下的坐标进行两次欧拉变换,计算出每个插补点在该任意平面下的最终坐标。

【技术特征摘要】
1.一种任意平面圆弧插补运动控制器,其根据空间中任意平面圆弧上已知的三个点的坐标实现任意平面圆弧插补功能,其特征在于:该控制器包括:
平面方程计算单元,用于根据该已知的三个点的坐标,求取该已知的三个点所在的平面的平面方程;
XY平面转换单元,用于将该平面通过两次欧拉变换旋转到XY平面,其中,X与Y分别为坐标轴;
第一坐标换算单元,用于换算该已知的三个点在该XY平面下的坐标;
圆心与半径计算单元,用于根据该已知的三个点在该XY平面下的坐标计算出该圆弧的圆心与半径;
平移单元,用于将该圆心平移到该XY平面的原点;
插补点获取单元,用于将该圆弧分成一系列等间隔插补点;
圆心角计算单元,用于计算每个插补点的圆心角;
XY平面坐标计算单元,用于根据圆心角计算出相应插补点在该XY平面下的坐标;以及
第二坐标换算单元,用于将每个插补点在该XY平面下的坐标进行两次欧拉变换,计算出每个插补点在该任意平面下的最终坐标。
2.如权利要求1所述的任意平面圆弧插补运动控制器,其特征在于:该圆心角满足以下公式:
θ=2×sqrt(δ/R),其中,θ代表该圆心角;sqrt表示开...

【专利技术属性】
技术研发人员:周华
申请(专利权)人:深圳市智信精密仪器有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1