- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于EMAC200运动控制器的圆弧插补算法研究
基于EMAC200运动控制器的 圆弧插补算法研究 关键词:开放式运动控制器;圆弧插补算法; 一、简介 北京元茂兴控制设备技术有限责任公司的EMAC200 运动控制器是一款开放性很强的控制 器,它提供一种轨迹生成的方式——“External Profile Mode”。利用它,我们可以设定每一 个(或者每几个)伺服周期的电机位置,速度,加速度,加加速度参数,从而我们可以实现复 杂的轨迹曲线。 在这篇文章里,介绍了使用EMAC 的“External Profile Mode”如何实现圆弧插补,其中包 括,圆弧插补的一种数学计算方法,及EMAC 如何实现。 二、圆弧插补的数学计算方法 我们采用起点,终点及半径方法来实现圆弧插补。及已知圆弧的起点,终点,半径,及插补 方向(顺时针或逆时针)来实现圆弧插补。 我们先来讨论最简单的情况,即圆弧的圆心就在坐标(0,0)点,如图1所示。 图1 在圆上任意取一点A(x1,y1),由圆的极坐标公式可以得出: x1=Rcosa; y1=Rsina; R为圆的半径,a为A点与X轴的夹角。 因为R已知,角a是一个变化量。对于图1所示圆,相当于角a从0°旋转到360°,就形 成了圆。 上面我们提到,EMAC可以设置每一个伺服周期(或每几个)伺服周期的位置,因此只要得出 在某一个伺服周期的角a值,就可以得出该伺服周期X轴及Y轴两个电机的位置。 对于圆弧插补,我们一般给出圆弧插补的线速度V,因此我们可以计算出角速度 ω=V/R 下面我们可以自己设定一个固定的插补周期T,该插补周期要为控制卡伺服周期的整数倍。 有了角速度及插补周期T,我们可以计算出每一个插补周期角a的变化量θ。 θ=w﹡T。 这样,角a从0°开始,每到下一个插补周期,角a的当前值都增加一个θ值,直到旋转到 360°为止。从而可以计算出每一个插补周期的x和y的坐标值。 对于非整圆的弧,我们的计算方法完全相同,只是需要再计算出角a的起始角度及最终角度 即可。 三、使用EMAC控制器实现 EMAC 的“External Profile Mode”允许用户自己设定运动轨迹,包括运动位置,速度,加 速度,加加速度,及时间5个参数。我们通过数学方法生成这些参数后,可以将他们的值写 到EMAC 的双端口RAM 中。整个RAM 将类似于一个数据表,如图2所示。 图2 整个双端口RAM 可以写16K个32bit变量,如果我们的数据很多,无法一次全部放到双端 口RAM 中,那么我们可以让这个RAM 区以一种旋转缓冲区的方式工作。我们可以通过 EMAC的指令GetBufferWriteIndex及GetBufferReadIndex来获得当前RAM区中读指针及写 指针的位置。通过比较这两个指针的位置,我们可以命令什么时候可以写入新的数据,什么 时候可以安全的覆盖掉旧的数据。 在我们提供的demo程序中,就是采用这种旋转缓冲区的方式来实现圆弧插补的。 四、关于圆弧插补的进一步讨论 上面我们讨论的圆,圆心在(0,0)点,但是对于绝大部分圆弧,圆心不在坐标原点。对于这样 的圆弧,我们可以使用坐标平移的方法来解决问题。如图3所示。 图3 圆弧的计算方法是相同的,只是在计算每个插补周期的A 点位置时,都要加上圆心的坐标 值。即: x1=Rcosa+Xc; y1=Rsina+Yc; 那么,问题的重点就变为如何找到圆心。有了正确的圆心坐标后,我们的问题就能得到解决。 下面首先我们来看如何通过起点坐标,终点坐标及半径值,计算出圆心坐标。 图4 如图4所示:我们可以计算出起点及终点弦长AB。 AB= (X2− X1)2+(Y2−Y1)2 做直线段CM⊥AB。则M为线段AB的中点。 M点的坐标Xm及Ym及线段BM长度我们也可以计算出来。 有了这些,我们就可以计算出弦AB所对的圆心角。 图5 如图5所示: 过M 点及A点分别做线段MD//Y 轴,AD//X 轴。 过M 点及C点分别做线段ME//Y 轴,MC//X 轴。 首先我们可以计算出线段MD 及AD 的长度, MD=|Ym-Y1|, AD=|X
您可能关注的文档
- 土壤对中性离子界面活性剂吸附效能之探讨.PDF
- 土壤为崩积土.PPT
- 土壤有机质研究动态与前沿.PDF
- 土壤汚染整治.PDF
- 土库曼斯坦萨35‐1H水平井钻井技术-天然气工业.PDF
- 土壤长期监测的发展-中国生态系统研究网络.PDF
- 在2012年重庆西部计划项目办-西南大学计算机与信息科学学院.DOC
- 在P2P中-哈尔滨理工大学网络信息中心.PPT
- 在Paypal提现须注意事项.PPT
- 在中国的浑水中找寻方向-GEM.PDF
- 基于ES的时序数据库服务-Elastic中文社区.PDF
- 基于FLAC3D的非充分采动地表移动求参方法-矿业工程研究.PDF
- 基于GPRS的滑坡地质灾害远程监测[作者文艺迟永滨李吉春原健钟.DOC
- 基于JAVA的气象В均数据处理系统的设计与实现-安徽农业科学.PDF
- 基于MATLAB的非圆行星齿轮结构设计-重型机械.PDF
- 基于TM影像的克钦湖叶绿素a浓度反演-农业环境科学学报.PDF
- 基于X-CT技术的沁水盆地南部煤储层精细描述-煤炭科学技术.PDF
- 基于分区需求系数的电动汽车充电设施规划-电力建设.PDF
- 基于双作物系数法估算不同水分条件下温室番茄蒸发蒸腾量.PDF
- 基于声发射概率密度函数固废胶结充填体损伤分析-黄金科学技术.PDF
文档评论(0)