|
@@ -95,7 +95,7 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// <param name="onSuccess"></param>
|
|
/// <param name="onSuccess"></param>
|
|
|
/// <param name="onTimeout"></param>
|
|
/// <param name="onTimeout"></param>
|
|
|
/// <param name="timeout">超时时间(毫秒)</param>
|
|
/// <param name="timeout">超时时间(毫秒)</param>
|
|
|
- void HomeAxis(string axisCode, bool waiting = true, Func<bool> safeCnd = null, Action onSuccess = null, Action onTimeout = null, int timeout = 60000);
|
|
|
|
|
|
|
+ void Home(string axisCode, bool waiting = true, Func<bool> safeCnd = null, Action onSuccess = null, Action onTimeout = null, int timeout = 60000);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 指定轴快速回零, 该轴必须是闭环电机, 如果是开环电机则降级为普通的HomeAxis回零
|
|
/// 指定轴快速回零, 该轴必须是闭环电机, 如果是开环电机则降级为普通的HomeAxis回零
|
|
@@ -110,7 +110,7 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// <param name="onSuccess"></param>
|
|
/// <param name="onSuccess"></param>
|
|
|
/// <param name="onTimeout"></param>
|
|
/// <param name="onTimeout"></param>
|
|
|
/// <param name="timeout">超时时间(毫秒)</param>
|
|
/// <param name="timeout">超时时间(毫秒)</param>
|
|
|
- void HomeAxisFast(string axisCode, string speedCode, bool stateCheck, bool waiting = true,
|
|
|
|
|
|
|
+ void HomeFast(string axisCode, string speedCode, bool stateCheck, bool waiting = true,
|
|
|
Func<bool> safeCnd = null, Action onSuccess = null, Action onTimeout = null, int timeout = 60000);
|
|
Func<bool> safeCnd = null, Action onSuccess = null, Action onTimeout = null, int timeout = 60000);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
@@ -125,7 +125,7 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// <param name="onSuccess"></param>
|
|
/// <param name="onSuccess"></param>
|
|
|
/// <param name="onTimeout"></param>
|
|
/// <param name="onTimeout"></param>
|
|
|
/// <param name="timeout">超时时间(毫秒)</param>
|
|
/// <param name="timeout">超时时间(毫秒)</param>
|
|
|
- void HomeAxisReverse(string axisCode, short homeMode, double maxPos, bool waiting = true,
|
|
|
|
|
|
|
+ void HomeReverse(string axisCode, short homeMode, double maxPos, bool waiting = true,
|
|
|
Func<bool> safeCnd = null, Action onSuccess = null, Action onTimeout = null, int timeout = 60000);
|
|
Func<bool> safeCnd = null, Action onSuccess = null, Action onTimeout = null, int timeout = 60000);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
@@ -139,10 +139,8 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// <param name="axisIndex">绑定点位的电机序号, 0开头, 默认-1表示该点位的所有电机</param>
|
|
/// <param name="axisIndex">绑定点位的电机序号, 0开头, 默认-1表示该点位的所有电机</param>
|
|
|
/// <param name="negativeOffset">大于该点位的负方向距离</param>
|
|
/// <param name="negativeOffset">大于该点位的负方向距离</param>
|
|
|
/// <param name="positiveOffset">小于该点位的正方向距离</param>
|
|
/// <param name="positiveOffset">小于该点位的正方向距离</param>
|
|
|
- /// <param name="onPassed">满足条件后的动作</param>
|
|
|
|
|
- /// <param name="onFailed">未满足条件后的动作</param>
|
|
|
|
|
/// <returns>是否满足位置条件</returns>
|
|
/// <returns>是否满足位置条件</returns>
|
|
|
- bool CheckAxisNearPoint(string pointCode, short axisIndex = -1, double negativeOffset = 0.1, double positiveOffset = 0.1);
|
|
|
|
|
|
|
+ bool CheckNear(string pointCode, short axisIndex = -1, double negativeOffset = 0.1, double positiveOffset = 0.1);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 通过点位码驱动对应的Axis运动, speedRadio表示每秒旋转圈数
|
|
/// 通过点位码驱动对应的Axis运动, speedRadio表示每秒旋转圈数
|
|
@@ -150,13 +148,10 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// <param name="pointCode">点位码</param>
|
|
/// <param name="pointCode">点位码</param>
|
|
|
/// <param name="speedRadio">每秒旋转圈数</param>
|
|
/// <param name="speedRadio">每秒旋转圈数</param>
|
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
|
- /// <param name="inRange">可偏移的范围, 单位毫米或者步距</param>
|
|
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
- /// <param name="checkCnd">检测的条件</param>
|
|
|
|
|
- /// <param name="onChecked">满足检测条件的动作</param>
|
|
|
|
|
- void MoveAxisRound(string pointCode, double speedRadio,
|
|
|
|
|
- bool waiting = true, double inRange = -1,
|
|
|
|
|
|
|
+ void MoveRound(string pointCode, double speedRadio, bool waiting = true, double inRange = -1,
|
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
@@ -165,28 +160,23 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// <param name="pointCode">点位码</param>
|
|
/// <param name="pointCode">点位码</param>
|
|
|
/// <param name="speedCode">速度码, null表示使用该点配置的默认速度码</param>
|
|
/// <param name="speedCode">速度码, null表示使用该点配置的默认速度码</param>
|
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
|
- /// <param name="inRange">可偏移的范围, 单位毫米或者步距</param>
|
|
|
|
|
- /// <param name="sync">如果2个轴同时移动,是否需要同时达到(直线轨迹)</param>
|
|
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
- void MoveAxisPoint(string pointCode, string speedCode = null,
|
|
|
|
|
- bool waiting = true, double inRange = -1,
|
|
|
|
|
- Action onSuccess = null, Action onTimeout = null, bool sync = false);
|
|
|
|
|
|
|
+ void MovePoint(string pointCode, string speedCode = null, bool waiting = true, double inRange = -1,
|
|
|
|
|
+ Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 让绑定点位码的(多个)电机以指定速度运动到点位码
|
|
/// 让绑定点位码的(多个)电机以指定速度运动到点位码
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
- /// <param name="processPoint">点位对象</param>
|
|
|
|
|
- /// <param name="speedCode">速度码, null表示使用该点配置的默认速度码</param>
|
|
|
|
|
|
|
+ /// <param name="recipePoint">点位对象</param>
|
|
|
|
|
+ /// <param name="recipeSpeed">速度对象, null表示使用该点配置的默认速度</param>
|
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
|
- /// <param name="inRange">可偏移的范围, 单位毫米或者步距</param>
|
|
|
|
|
- /// <param name="sync">如果2个轴同时移动,是否需要同时达到(直线轨迹)</param>
|
|
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
- void MoveAxisPoint(RecipePoint processPoint, string speedCode = null,
|
|
|
|
|
- bool waiting = true, double inRange = -1,
|
|
|
|
|
- Action onSuccess = null, Action onTimeout = null,
|
|
|
|
|
- bool sync = false);
|
|
|
|
|
|
|
+ void MovePoint(RecipePoint recipePoint, RecipeSpeed recipeSpeed = null, bool waiting = true, double inRange = -1,
|
|
|
|
|
+ Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 让绑定点位码的(多个)电机以指定速度运动到点位码并能叠加指定偏移量
|
|
/// 让绑定点位码的(多个)电机以指定速度运动到点位码并能叠加指定偏移量
|
|
@@ -195,95 +185,108 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// <param name="posOffsets">各个电机的偏移量数组, 需要按电机绑定顺序赋值</param>
|
|
/// <param name="posOffsets">各个电机的偏移量数组, 需要按电机绑定顺序赋值</param>
|
|
|
/// <param name="speedCode">速度码, null表示使用该点配置的默认速度码</param>
|
|
/// <param name="speedCode">速度码, null表示使用该点配置的默认速度码</param>
|
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
|
- /// <param name="distanceUnit">是否距离单位, true:毫米, false:电机步距</param>
|
|
|
|
|
- /// <param name="inRange">可偏移的范围, 单位毫米或者步距</param>
|
|
|
|
|
- /// <param name="sync">如果2个轴同时移动,是否需要同时达到(直线轨迹)</param>
|
|
|
|
|
- /// <param name="safeCnd">安全条件, 运动中如果不满足该安全条件立即停止并报警</param>
|
|
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
- /// <param name="checkCnd">检测的条件</param>
|
|
|
|
|
- /// <param name="onChecked">满足检测条件的动作</param>
|
|
|
|
|
- void MoveAxisPointFixset(string pointCode, double[] posOffsets, string speedCode = null,
|
|
|
|
|
- bool waiting = true, double inRange = -1,
|
|
|
|
|
- Action onSuccess = null, Action onTimeout = null,
|
|
|
|
|
- bool sync = false);
|
|
|
|
|
|
|
+ void MovePointFix(string pointCode, double[] posOffsets, string speedCode = null, bool waiting = true, double inRange = -1,
|
|
|
|
|
+ Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
- /// 让绑定点位码的(多个)电机以指定速度运动到点位码并能叠加指定偏移量
|
|
|
|
|
|
|
+ /// 让绑定点位码的(多个)电机以指定速度运动到点位码,并能叠加指定偏移量
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
- /// <param name="processPoint">点位对象</param>
|
|
|
|
|
|
|
+ /// <param name="recipePoint">点位对象</param>
|
|
|
/// <param name="posOffsets">各个电机的偏移量数组, 需要按电机绑定顺序赋值</param>
|
|
/// <param name="posOffsets">各个电机的偏移量数组, 需要按电机绑定顺序赋值</param>
|
|
|
- /// <param name="speedCode">速度码, null表示使用该点配置的默认速度码</param>
|
|
|
|
|
|
|
+ /// <param name="recipeSpeed">速度对象, null表示使用该点配置的默认速度</param>
|
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
|
- /// <param name="inRange">可偏移的范围, 单位毫米或者步距</param>
|
|
|
|
|
- /// <param name="sync">如果2个轴同时移动,是否需要同时达到(直线轨迹)</param>
|
|
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
- void MoveAxisPointFixset(RecipePoint processPoint, double[] posOffsets, string speedCode = null,
|
|
|
|
|
- bool waiting = true, double inRange = -1,
|
|
|
|
|
- Action onSuccess = null, Action onTimeout = null,
|
|
|
|
|
- bool sync = false);
|
|
|
|
|
|
|
+ void MovePointFix(RecipePoint recipePoint, double[] posOffsets, RecipeSpeed recipeSpeed = null, bool waiting = true, double inRange = -1,
|
|
|
|
|
+ Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 让绑定点位码的指定单个电机以指定速度运动到点位码
|
|
/// 让绑定点位码的指定单个电机以指定速度运动到点位码
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="pointCode">点位码</param>
|
|
/// <param name="pointCode">点位码</param>
|
|
|
- /// <param name="axisCode">电机码</param>
|
|
|
|
|
|
|
+ /// <param name="index">该点位绑定的轴序号, 例如绑定了x1,y1,需要x1移动时传0,需要y1移动时传1</param>
|
|
|
/// <param name="speedCode">速度码, null表示使用该点配置的默认速度码</param>
|
|
/// <param name="speedCode">速度码, null表示使用该点配置的默认速度码</param>
|
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
|
- /// <param name="inRange">可偏移的范围, 单位毫米或者步距</param>
|
|
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
- void MoveAxisPointOne(string pointCode, string axisCode, string speedCode = null,
|
|
|
|
|
|
|
+ void MovePointOne(string pointCode, short index = 0, string speedCode = null,
|
|
|
bool waiting = true, double inRange = -1,
|
|
bool waiting = true, double inRange = -1,
|
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
|
|
|
-
|
|
|
|
|
- void MoveAxisPointOneFixset(string pointCode, string axisCode, double fixset, string speedCode = null,
|
|
|
|
|
|
|
+ /// <summary>
|
|
|
|
|
+ /// 让绑定点位码的指定单个电机以指定速度运动到点位码
|
|
|
|
|
+ /// </summary>
|
|
|
|
|
+ /// <param name="recipePoint">点位对象</param>
|
|
|
|
|
+ /// <param name="index">该点位绑定的轴序号, 例如绑定了x1,y1,需要x1移动时传0,需要y1移动时传1</param>
|
|
|
|
|
+ /// <param name="recipeSpeed">速度对象, null表示使用该点配置的默认速度</param>
|
|
|
|
|
+ /// <param name="waiting">是否等待到位, 默认为true</param>
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
|
|
+ /// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
|
|
+ /// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
|
|
+ void MovePointOne(RecipePoint recipePoint, short index = 0, RecipeSpeed recipeSpeed = null,
|
|
|
bool waiting = true, double inRange = -1,
|
|
bool waiting = true, double inRange = -1,
|
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
- /// 让绑定点位码的指定单个电机以指定速度运动到点位码
|
|
|
|
|
|
|
+ /// 让绑定点位码的指定单个电机以指定速度运动到点位码,并能叠加指定偏移量
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
- /// <param name="processPoint">点位对象</param>
|
|
|
|
|
- /// <param name="axisCode">电机码</param>
|
|
|
|
|
|
|
+ /// <param name="pointCode">点位码</param>
|
|
|
|
|
+ /// <param name="fixset">基于点位的偏移量(mm)</param>
|
|
|
|
|
+ /// <param name="index">该点位绑定的轴序号, 例如绑定了x1,y1,需要x1移动时传0,需要y1移动时传1</param>
|
|
|
/// <param name="speedCode">速度码, null表示使用该点配置的默认速度码</param>
|
|
/// <param name="speedCode">速度码, null表示使用该点配置的默认速度码</param>
|
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
|
- /// <param name="inRange">可偏移的范围, 单位毫米或者步距</param>
|
|
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
- void MoveAxisPointOne(RecipePoint processPoint, string axisCode, string speedCode = null,
|
|
|
|
|
|
|
+ void MovePointOneFix(string pointCode, double fixset, short index = 0, string speedCode = null,
|
|
|
bool waiting = true, double inRange = -1,
|
|
bool waiting = true, double inRange = -1,
|
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
- /// 聚合多个点位码并同时运动, 注意: 每个点位的运动速度来自各自的点位(ProcessPoint)中的速度码
|
|
|
|
|
|
|
+ /// 让绑定点位码的指定单个电机以指定速度运动到点位码,并能叠加指定偏移量
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
- /// <param name="processPoints">需要聚合运动的点位对象集合</param>
|
|
|
|
|
|
|
+ /// <param name="recipePoint">点位对象</param>
|
|
|
|
|
+ /// <param name="fixset">基于点位的偏移量(mm)</param>
|
|
|
|
|
+ /// <param name="index">该点位绑定的轴序号, 例如绑定了x1,y1,需要x1移动时传0,需要y1移动时传1</param>
|
|
|
|
|
+ /// <param name="recipeSpeed">速度对象, null表示使用该点配置的默认速度</param>
|
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
|
- /// <param name="inRange">可偏移的范围, 单位毫米或者步距</param>
|
|
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
- void MoveAxisAssemblePoints(List<RecipePoint> processPoints,
|
|
|
|
|
|
|
+ void MovePointOneFix(RecipePoint recipePoint, double fixset, short index = 0, RecipeSpeed recipeSpeed = null,
|
|
|
bool waiting = true, double inRange = -1,
|
|
bool waiting = true, double inRange = -1,
|
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
- /// 聚合多个点位码并同时运动, 注意: 每个点位的运动速度优先使用speedCode, 如果speedCode为空则使用各自的点位中设置的速度码
|
|
|
|
|
|
|
+ /// 聚合多个点位码并同时运动
|
|
|
|
|
+ /// </summary>
|
|
|
|
|
+ /// <param name="recipePoints">需要聚合运动的点位对象集合</param>
|
|
|
|
|
+ /// <param name="waiting">是否等待到位, 默认为true</param>
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
|
|
+ /// <param name="sync">是否同步到达,false: 使用recipeSpeed的速度,true:以recipeSpeed为基准,调整各点位速度</param>
|
|
|
|
|
+ /// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
|
|
+ /// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
|
|
+ void MovePoints(List<RecipePoint> recipePoints, RecipeSpeed recipeSpeed,
|
|
|
|
|
+ bool waiting = true, double inRange = -1, bool sync = false,
|
|
|
|
|
+ Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
+
|
|
|
|
|
+ /// <summary>
|
|
|
|
|
+ /// 聚合多个点位码并同时运动
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="pointCodes">需要聚合运动的点位码集合</param>
|
|
/// <param name="pointCodes">需要聚合运动的点位码集合</param>
|
|
|
/// <param name="speedCode">速度码, null表示使用各点位的默认速度码</param>
|
|
/// <param name="speedCode">速度码, null表示使用各点位的默认速度码</param>
|
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
/// <param name="waiting">是否等待到位, 默认为true</param>
|
|
|
- /// <param name="distanceUnit">是否距离单位, true:毫米, false:电机步距</param>
|
|
|
|
|
- /// <param name="inRange">可偏移的范围, 单位毫米或者步距</param>
|
|
|
|
|
- /// <param name="safeCnd">安全条件, 运动中如果不满足该安全条件立即停止并报警</param>
|
|
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
|
|
+ /// <param name="sync">是否同步到达,false: 使用各自的点位中的速度,true:以speedCode为基准,调整各点位速度</param>
|
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
- /// <param name="checkCnd">检测的条件</param>
|
|
|
|
|
- /// <param name="onChecked">满足检测条件的动作</param>
|
|
|
|
|
- void MoveAxisAssemblePoints(string[] pointCodes, string speedCode = null,
|
|
|
|
|
- bool waiting = true, double inRange = -1,
|
|
|
|
|
|
|
+ void MovePoints(string[] pointCodes, string speedCode = null,
|
|
|
|
|
+ bool waiting = true, double inRange = -1, bool sync = false,
|
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
@@ -291,13 +294,10 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
/// <param name="timeout">超时时间</param>
|
|
/// <param name="timeout">超时时间</param>
|
|
|
- /// <param name="inRange">可偏移的范围, 单位毫米或者步距</param>
|
|
|
|
|
- /// <param name="safeCnd">安全条件, 运动中如果不满足该安全条件立即停止并报警</param>
|
|
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
- /// <param name="checkCnd">检测的条件</param>
|
|
|
|
|
- /// <param name="onChecked">满足检测条件的动作</param>
|
|
|
|
|
- void WaitAxisDone(string axisCode, int timeout = 10000, double inRange = -1,
|
|
|
|
|
|
|
+ void WaitAxis(string axisCode, int timeout = 10000, double inRange = -1,
|
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
@@ -305,10 +305,10 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="motionAxis">电机对象</param>
|
|
/// <param name="motionAxis">电机对象</param>
|
|
|
/// <param name="timeout">超时时间</param>
|
|
/// <param name="timeout">超时时间</param>
|
|
|
- /// <param name="inRange">可偏移的范围, 单位毫米或者步距</param>
|
|
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
- void WaitAxisDone(MotionAxis motionAxis, int timeout = 10000, double inRange = -1,
|
|
|
|
|
|
|
+ void WaitAxis(MotionAxis motionAxis, int timeout = 10000, double inRange = -1,
|
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
@@ -316,22 +316,22 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="pointCode">点位码</param>
|
|
/// <param name="pointCode">点位码</param>
|
|
|
/// <param name="timeout">超时时间</param>
|
|
/// <param name="timeout">超时时间</param>
|
|
|
- /// <param name="inRange">可偏移的范围, 单位毫米或者步距</param>
|
|
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
- void WaitAxisPointDone(string pointCode, int timeout = 10000, double inRange = -1,
|
|
|
|
|
|
|
+ void WaitPoint(string pointCode, int timeout = 10000, double inRange = -1,
|
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
Action onSuccess = null, Action onTimeout = null);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 等待点位上所有电机到位
|
|
/// 等待点位上所有电机到位
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
- /// <param name="processPoint">点位对象</param>
|
|
|
|
|
|
|
+ /// <param name="recipePoint">点位对象</param>
|
|
|
/// <param name="timeout">超时时间</param>
|
|
/// <param name="timeout">超时时间</param>
|
|
|
- /// <param name="inRange">可偏移的范围, 单位毫米或者步距</param>
|
|
|
|
|
|
|
+ /// <param name="inRange">整定范围, 单位毫米或者步距</param>
|
|
|
/// <param name="safeCnd">安全条件, 运动中如果不满足该安全条件立即停止并报警</param>
|
|
/// <param name="safeCnd">安全条件, 运动中如果不满足该安全条件立即停止并报警</param>
|
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
/// <param name="onSuccess">运动完成后的回调动作</param>
|
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
/// <param name="onTimeout">超时未完成的回调动作</param>
|
|
|
- void WaitAxisPointDone(RecipePoint processPoint, int timeout = 10000, double inRange = -1,
|
|
|
|
|
|
|
+ void WaitPoint(RecipePoint recipePoint, int timeout = 10000, double inRange = -1,
|
|
|
Func<bool> safeCnd = null, Action onSuccess = null, Action onTimeout = null,
|
|
Func<bool> safeCnd = null, Action onSuccess = null, Action onTimeout = null,
|
|
|
Func<bool> checkCnd = null, Action onChecked = null);
|
|
Func<bool> checkCnd = null, Action onChecked = null);
|
|
|
|
|
|
|
@@ -340,7 +340,7 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCodes">电机码集合</param>
|
|
/// <param name="axisCodes">电机码集合</param>
|
|
|
/// <param name="timeout">超时时间</param>
|
|
/// <param name="timeout">超时时间</param>
|
|
|
- void WaitAxisGroupDone(List<string> axisCodes, int timeout = 10000);
|
|
|
|
|
|
|
+ void WaitGroup(List<string> axisCodes, int timeout = 10000);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 等待并阻塞当前线程, 直到满足特定条件
|
|
/// 等待并阻塞当前线程, 直到满足特定条件
|
|
@@ -348,8 +348,7 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// <param name="cndDone">完成条件 (满足后释放阻塞)</param>
|
|
/// <param name="cndDone">完成条件 (满足后释放阻塞)</param>
|
|
|
/// <param name="onTimeout">超时动作</param>
|
|
/// <param name="onTimeout">超时动作</param>
|
|
|
/// <param name="timeout">超时时间(ms)</param>
|
|
/// <param name="timeout">超时时间(ms)</param>
|
|
|
- /// <param name="interval">监测条件的间隔时间(ms)</param>
|
|
|
|
|
- void WaitCndDone(Func<bool> cndDone, Action onTimeout, int timeout, int interval = 25);
|
|
|
|
|
|
|
+ void WaitCnd(Func<bool> cndDone, Action onTimeout, int timeout);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 电机按一定速度持续运动, 非阻塞
|
|
/// 电机按一定速度持续运动, 非阻塞
|
|
@@ -357,7 +356,7 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
/// <param name="speedCode">速度码</param>
|
|
/// <param name="speedCode">速度码</param>
|
|
|
/// <param name="direction">方向</param>
|
|
/// <param name="direction">方向</param>
|
|
|
- void MoveKeepAxis(string axisCode, string speedCode, ushort direction);
|
|
|
|
|
|
|
+ void MoveKeep(string axisCode, string speedCode, ushort direction);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 电机相对运动
|
|
/// 电机相对运动
|
|
@@ -366,7 +365,7 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// <param name="speedCode">速度码</param>
|
|
/// <param name="speedCode">速度码</param>
|
|
|
/// <param name="distance">距离</param>
|
|
/// <param name="distance">距离</param>
|
|
|
/// <param name="waiting">是否等待</param>
|
|
/// <param name="waiting">是否等待</param>
|
|
|
- void MoveAxisRel(string axisCode, string speedCode, double distance, bool waiting = true);
|
|
|
|
|
|
|
+ void MoveRel(string axisCode, string speedCode, double distance, bool waiting = true);
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
@@ -376,95 +375,83 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// <param name="speedCode">速度码</param>
|
|
/// <param name="speedCode">速度码</param>
|
|
|
/// <param name="position">坐标</param>
|
|
/// <param name="position">坐标</param>
|
|
|
/// <param name="waiting">是否等待</param>
|
|
/// <param name="waiting">是否等待</param>
|
|
|
- void MoveAxisAbs(string axisCode, string speedCode, double position, bool waiting = false);
|
|
|
|
|
|
|
+ void MoveAbs(string axisCode, string speedCode, double position, bool waiting = false);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 电机绝对运动,确保回零后调用
|
|
/// 电机绝对运动,确保回零后调用
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
- /// <param name="processSpeed">速度对象</param>
|
|
|
|
|
|
|
+ /// <param name="recipeSpeed">速度对象</param>
|
|
|
/// <param name="position">坐标</param>
|
|
/// <param name="position">坐标</param>
|
|
|
/// <param name="waiting">是否等待</param>
|
|
/// <param name="waiting">是否等待</param>
|
|
|
- void MoveAxisAbs(string axisCode, RecipeSpeed processSpeed, double position, bool waiting = false);
|
|
|
|
|
|
|
+ void MoveAbs(string axisCode, RecipeSpeed recipeSpeed, double position, bool waiting = false);
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 停止单个电机
|
|
/// 停止单个电机
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
- void StopAxis(string axisCode, bool waiting = false);
|
|
|
|
|
|
|
+ void Stop(string axisCode, bool waiting = false);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 停止多个电机
|
|
/// 停止多个电机
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCodes">电机码集合</param>
|
|
/// <param name="axisCodes">电机码集合</param>
|
|
|
- void StopAxises(List<string> axisCodes);
|
|
|
|
|
|
|
+ void Stop(List<string> axisCodes);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 点位上多个电机停止运动
|
|
/// 点位上多个电机停止运动
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="pointCode">点位码</param>
|
|
/// <param name="pointCode">点位码</param>
|
|
|
- void StopAxisPoint(string pointCode);
|
|
|
|
|
-
|
|
|
|
|
- /// <summary>
|
|
|
|
|
- /// 点位上多个电机急停
|
|
|
|
|
- /// </summary>
|
|
|
|
|
- /// <param name="pointCode">点位码</param>
|
|
|
|
|
- void StopAxisPointEmg(string pointCode);
|
|
|
|
|
-
|
|
|
|
|
- /// <summary>
|
|
|
|
|
- /// 多个电机急停
|
|
|
|
|
- /// </summary>
|
|
|
|
|
- /// <param name="axisCodes">电机码集合</param>
|
|
|
|
|
- void StopAxisesEmg(List<string> axisCodes);
|
|
|
|
|
|
|
+ void StopPoint(string pointCode);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 所有电机停止
|
|
/// 所有电机停止
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
- void StopAxisAll();
|
|
|
|
|
|
|
+ void StopAll();
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 暂停一个电机运动
|
|
/// 暂停一个电机运动
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
- void PauseAxis(string axisCode);
|
|
|
|
|
|
|
+ void Pause(string axisCode);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 暂停一个点位上多个电机运动
|
|
/// 暂停一个点位上多个电机运动
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="pointCode">点位码</param>
|
|
/// <param name="pointCode">点位码</param>
|
|
|
- void PauseAxisPoint(string pointCode);
|
|
|
|
|
|
|
+ void PausePoint(string pointCode);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 恢复一个电机运动
|
|
/// 恢复一个电机运动
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
- void ResumeAxis(string axisCode);
|
|
|
|
|
|
|
+ void Resume(string axisCode);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 暂停一个点位上多个电机运行
|
|
/// 暂停一个点位上多个电机运行
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="pointCode">点位码</param>
|
|
/// <param name="pointCode">点位码</param>
|
|
|
- void ResumeAxisPoint(string pointCode);
|
|
|
|
|
|
|
+ void ResumePoint(string pointCode);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 清除电机计数(反馈值与目标值)
|
|
/// 清除电机计数(反馈值与目标值)
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
- void ClearAxisCounter(string axisCode);
|
|
|
|
|
|
|
+ void ClearCounter(string axisCode);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 清除电机驱动器报警(部分驱动器可能无效)
|
|
/// 清除电机驱动器报警(部分驱动器可能无效)
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
- void ClearAxisError(string axisCode);
|
|
|
|
|
|
|
+ void ClearError(string axisCode);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 更新电机持续运行时的速度
|
|
/// 更新电机持续运行时的速度
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
/// <param name="speedCode">速度码</param>
|
|
/// <param name="speedCode">速度码</param>
|
|
|
- void UpdateAxisKeepSpeed(string axisCode, string speedCode);
|
|
|
|
|
|
|
+ void UpdateKeepSpeed(string axisCode, string speedCode);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 更新电机持续运行时的速度.
|
|
/// 更新电机持续运行时的速度.
|
|
@@ -472,14 +459,14 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
/// <param name="recipeSpeed">速度对象, 至少需要MaxVel、Acc、Dec 这3个属性</param>
|
|
/// <param name="recipeSpeed">速度对象, 至少需要MaxVel、Acc、Dec 这3个属性</param>
|
|
|
- void UpdateAxisKeepSpeed(string axisCode, RecipeSpeed recipeSpeed);
|
|
|
|
|
|
|
+ void UpdateKeepSpeed(string axisCode, RecipeSpeed recipeSpeed);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 更新电机点对点移动时的速度
|
|
/// 更新电机点对点移动时的速度
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
/// <param name="speedCode">速度码</param>
|
|
/// <param name="speedCode">速度码</param>
|
|
|
- void UpdateAxisMoveSpeed(string axisCode, string speedCode);
|
|
|
|
|
|
|
+ void UpdateMoveSpeed(string axisCode, string speedCode);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 更新电机点对点移动时的速度.
|
|
/// 更新电机点对点移动时的速度.
|
|
@@ -487,41 +474,41 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
/// <param name="recipeSpeed">速度对象, 至少需要MaxVel、Acc、Dec 这3个属性</param>
|
|
/// <param name="recipeSpeed">速度对象, 至少需要MaxVel、Acc、Dec 这3个属性</param>
|
|
|
- void UpdateAxisMoveSpeed(string axisCode, RecipeSpeed recipeSpeed);
|
|
|
|
|
|
|
+ void UpdateMoveSpeed(string axisCode, RecipeSpeed recipeSpeed);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 开始监测电机步距
|
|
/// 开始监测电机步距
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
/// <param name="ticks">时间周期, -1表示当前</param>
|
|
/// <param name="ticks">时间周期, -1表示当前</param>
|
|
|
- void StartAxisWatch(string axisCode, long ticks = -1);
|
|
|
|
|
|
|
+ void StartWatch(string axisCode, long ticks = -1);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 读取电机状态并获取对象
|
|
/// 读取电机状态并获取对象
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
/// <returns>电机对象</returns>
|
|
/// <returns>电机对象</returns>
|
|
|
- MotionAxis ReadAxisStatus(string axisCode);
|
|
|
|
|
|
|
+ MotionAxis ReadStatus(string axisCode);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 读取电机状态
|
|
/// 读取电机状态
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="motionAxis">电机对象</param>
|
|
/// <param name="motionAxis">电机对象</param>
|
|
|
- void ReadAxisStatus(MotionAxis motionAxis);
|
|
|
|
|
|
|
+ void ReadStatus(MotionAxis motionAxis);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 电机到位判断
|
|
/// 电机到位判断
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCode">电机码</param>
|
|
/// <param name="axisCode">电机码</param>
|
|
|
/// <returns>是否到位</returns>
|
|
/// <returns>是否到位</returns>
|
|
|
- bool AxisDoneCheck(string axisCode);
|
|
|
|
|
|
|
+ bool CheckDone(string axisCode);
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 多个电机到位判断, 如果其中一个电机未到位返回false
|
|
/// 多个电机到位判断, 如果其中一个电机未到位返回false
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="axisCodes">电机码</param>
|
|
/// <param name="axisCodes">电机码</param>
|
|
|
/// <returns>是否到位</returns>
|
|
/// <returns>是否到位</returns>
|
|
|
- bool AxisDoneCheck(List<string> axisCodes);
|
|
|
|
|
|
|
+ bool CheckDone(List<string> axisCodes);
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
@@ -618,7 +605,5 @@ namespace SKMC.Api.Motion.Control
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="adIndex">AD序号</param>
|
|
/// <param name="adIndex">AD序号</param>
|
|
|
void ReadAdValue(short adIndex);
|
|
void ReadAdValue(short adIndex);
|
|
|
-
|
|
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
}
|
|
}
|