CALCPOSI()函数可检查在工件坐标系(WCS)中几何轴从起点起按指定行程运行是否会 超出当前激活的各个限位。
如果因为限位几何轴不能完成指定行程,则系统会反馈一个状态值(十进制正值)和允许 的最大行程。
CALCPOSI:检查几何轴是否超限。预处理停止: 否;在单独程序段中 编程: 是;
函数值:
0 可完成整段行程;
-1 在<Limit>中至少有一个分量为负。
-2 坐标转换计算中出错。 示例:轴穿过奇点,以至于无法确定轴位置。
-3 指定的行程<Dist>和允许的最大行程<MaxDist>呈线性 关系。 提示 只能与 <TestLim>,位 4 == 1 同时出现。
-4 <Dist>包含的运行方向投影到限位面上为零矢量或运行 方向垂直于被超出的限位面。 提示 只能与 <TestLim>,位 5 == 1 同时出现。
-5 <TestLim>中,位 4 == 1 且位 5 == 1;
-6 至少有一个需要检测其是否超限的机床轴没有回参考 点。
-7 防撞功能:运动链或保护区定义无效。
-8 防撞功能:该功能可能因内存不足而无法执行。
个位 提示 如果同时出现多个超限错误,则个位上显示的是导致行程缩减幅度最大的 限位。
<Status>:值含义:
1 软件限位开关限制了行程;
2 工作区域限制了行程;
3 保护区限制了行程;
1x 起点超限;
十位:
2x 指定的直线超限。 当终点自身没有超限,但是在从起点到终点的行程中却 有可能超限时(例如穿过保护区,进行诸如 Transmit 非线性转换时 WCS 中的软件限位开关弯曲),也会返 回该值。
百位:
1xx 个位 == 1 或 2: 超出正限值。 个位 == 31): 侵犯了 NC 专用的保护区。
2xx 个位 == 1 或 2: 超出负限值。 个位 == 31): 侵犯了通道专用的保护区。
千位:
1xxx 个位 == 1 或 2:
与超限轴的编号相乘的系数。轴从 1 开始计数。
基准:
● 软件限位开关:机床轴
● 工作区域限制:几何轴
个位 == 31):
与受侵犯的保护区编号相乘的系数。
明日话题:<Limit>:函数;
互动一问:WCS含义;