Difference between revisions of "Endless Axes/zh-hans"
(Created page with "{{Languages}} = 连续轴 = == 简介 == 在softMC系统中支持可理论上在任一方向上无限移动的轴。 这些轴的极限实际上是双浮点格式'''(-1.7976...") |
|||
Line 11: | Line 11: | ||
== softMC位置变量 == | == softMC位置变量 == | ||
− | 系统通过对32位范围的周期数进行计数,自动将范围位置变量(pcmd,pfb,pext)扩展为[mindouble,maxdouble]。每次位置反馈(或外部)通过31位限制内部 ''转数计数'' ('''count_rev''')增加(减少)。 So 所以位置属性值: [[MC-Basic:axis.POSITIONFEEDBACK|PFB]], [[MC-Basic:axis.POSITIONCOMMAND|PCMD]] | + | 系统通过对32位范围的周期数进行计数,自动将范围位置变量(pcmd,pfb,pext)扩展为[mindouble,maxdouble]。每次位置反馈(或外部)通过31位限制内部 ''转数计数'' ('''count_rev''')增加(减少)。 So 所以位置属性值: [[MC-Basic:axis.POSITIONFEEDBACK|PFB]], [[AXY:MC-Basic:axis.POSITIONCOMMAND|PCMD]] |
, [[MC-Basic:axis.POSITIONEXTERNAL|PEXT]]不显示任何不连续性。 | , [[MC-Basic:axis.POSITIONEXTERNAL|PEXT]]不显示任何不连续性。 | ||
Revision as of 07:03, 14 August 2017
语言: | [[::Endless Axes|English]] • [[::Endless Axes/zh-hans|中文(简体)]] |
---|
Contents
连续轴
简介
在softMC系统中支持可理论上在任一方向上无限移动的轴。 这些轴的极限实际上是双浮点格式(-1.79769e+308,1.79769e+308)实际上给出了连续轴操作。
驱动器限制
但是,驱动器控制器通信使用的位置数据要小得多,使用32位数据传输位置数据,因此内部驱动器位置单元的限制是:
[-2 31 ,+2 31 -1]。这在以下属性上可见: CCFB, CCMD和CEXT。它们都是整数类型,32位变量,因此具有有限的值。
softMC位置变量
系统通过对32位范围的周期数进行计数,自动将范围位置变量(pcmd,pfb,pext)扩展为[mindouble,maxdouble]。每次位置反馈(或外部)通过31位限制内部 转数计数 (count_rev)增加(减少)。 So 所以位置属性值: PFB, PCMD , PEXT不显示任何不连续性。
检测超过32位限制
通过检查从驱动器获取的反馈位置的当前值和先前值来检测32位限制。
- 如果对当前和先前反馈值的最高有效位的异或运算为1
- 我们增加(减少)转动计数1圈,然后计算PFB:
- pfb = pfac*(cfb + 2 32 *count_rev)
- 如果对当前和先前反馈值的最高有效位的异或运算为1
转动计数 (count_rev)可以由以下重置:
- 访问位置因子,例如“PFAC = PFAC”或任何其他分配
- 调用用户函数: MOT_RESET_ROLLOVER or MOT_RESET_EXROLLOVER