Homing 使用初始值
来源:互联网 发布:图160和b1b数据对比 编辑:程序博客网 时间:2024/05/16 19:11
Using the Origin Variable
In servo control applications, the Command and Actual Positions for an Axis are generally used for position error calculations. On each sample, the controller reads the new Actual Positions from the feedback devices and calculates the new Command Positions.
To determine the relationship between Command and Actual Positions for an Axis and physical positions on the machine, you can use the Origin variable (which can be set by the host).为了确定命令和实际位置的关系,可以使用origin 变量。
If it is important to set the Command or Actual Position to an exact value, you should use thempiAxisOriginSet(...) function. Calling mpiAxisOriginSet(...) will modify both Command and Actual Positions by the same amount.
The Origin variable can be set in two different ways depending on the desired result. For example, assume the Command and Actual Positions are 10,000 and 10,024 counts respectively and that the axis is not moving.
Setting the Origin variable to 10,000 will result in Command Position = 0 and Actual Position = 24. Setting the Origin variable to 10,024 will result in Command Position = -24 and Actual Position = 0.
This second method is the most frequently used method for setting the new Origin after homing. Refer to the next table.
Cautions about motion in general:
- During motion, you should never call the mpiAxis[Actual|Command]PositionSet(...) ormpiAxisCommandOriginSet(...) functions.
- Setting a new Position using mpiAxisCommandPositionSet(...) ormpiAxisActualPositionSet(...) should be done with caution, because the controller will immediately try to servo to the new position. If the new and old command positions differ by a large amount the axis may fault (limit error) or jump to the new position at very high speed. Setting new positions with mpiAxisOriginSet(...) or mpiAxisCommandOriginSet(...) will not cause a jump.
使用mpiAxisOriginSet(...) or mpiAxisCommandOriginSet(...) 不会导致电机跳跃 - The effect of any origin or position set functions calls will not be seen by the host until the next controller sample following the call.
- Calling mpiAxisOriginSet() while an axis is in motion will change the final target position's value. This will not change the trajectory however. If the axis was to originally move 5000 counts, then the axis will still move a total of five thousand counts. 在运动过程中调用mpiAxisOriginSet(),不会导致最终目标位置的改变。Start
PositionActual
PositionEnd
PositionComment005000The beginning of a 5000 count move, origin currently 0.025005000Origin is about to be set to 2000.-20005003000Origin has been changed to 2000.终止位置相应改变-200030003000Motion is complete. Distance traveled still 5000 counts.
- Homing 使用初始值
- C# Tips: 使用集合初始值设定项初始化字典
- 使用序列作为插入值初始值不是 1
- 使用angularjs的ng-options时如何设置默认值(初始值)
- C++ 关于“不允许使用数据成员初始值设定”的问题
- 为什么c++ 中类内初始值不能使用圆括号初始化?
- 使用angularjs的ng-options时如何设置默认值(初始值)
- Homing pigeons share our ability to build knowledge across generations
- 关于初始值
- Lesson_for_java_day09--练习--继承、this、super的使用、使用构造方法赋初始值
- 使用水晶报表碰到“CrystalDecisions. CrystalReports.Engine.ReportDocument”的类型初始值设定项引发异常
- 数控振荡器NCO使用verilog实现时NCO初始值和上限值设定时的注意事项
- asp.net测试时 使用configurationmanager时报错:类型初始值设定项引发异常
- 使用EmguCV库时出现"Emgu.CV.CvInvoke的类型初始值设定项引发异常"
- 建议35:使用default为泛型类型变量指定初始值
- Oracle新表使用序列(sequence)作为插入值,初始值不是第一个
- Angular 设置input[number] 的初始值和双向绑定的使用
- Oracle新表使用序列(sequence)作为插入值,初始值不是第一个,oraclesequence
- JavaScript循环刷新页面
- 【bzoj3132】上帝造题的七分钟
- C++实现RSA加密解密
- css属性总结(一)
- Java代理模式简单整理
- Homing 使用初始值
- 新兴机器学习算法:从无监督降维到监督降维
- Android 优秀的第三方UI库集锦
- 对面向对象设计的理解—Java接口和Java抽象类
- c++ web framework
- 诤言只能对诤友《基层风云·1》·一
- Hibernate4中使用getCurrentSession报Could not obtain transaction-synchronized Session for current thread
- leetcode-624. Maximum Distance in Arrays
- 第五篇 调试和错误处理