com.slamtec.slamware.action包

IAction接口

方法

cancel()

取消本次操作。

Stability: 3 - Stable

Added in v2.5.0

返回值

无。

参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

接口抛出的异常类型有:
RequesFailException : 请求失败异常
ConnectionFailException : 连接失败异常
ConnectionTimeoutException : 连接超时异常
UnauthorizedRequestException : 请求未授权
UnsupportedCommandException : 不支持此命令

示例代码


AbstractSlamwarePlatform platform = DeviceManager.connect("192.168.11.1",1445);
IAction action = platform.getCurrentAction();
action.cancel();

   

getActionName()

获取动作名称。返回值为动作名称(string)。

Stability: 3 - Stable

Added in v2.5.0

返回值

返回类型为java.lang.String

参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

示例代码


AbstractSlamwarePlatform platform = DeviceManager.connect("192.168.11.1",1445);
IAction action = platform.getCurrentAction();
action.getActionName();

   

getProgress()

获取动作进程(0~1)。返回值为动作进程(double)。

Stability: 3 - Stable

Added in v2.5.0

返回值

返回类型为double

参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

示例代码


AbstractSlamwarePlatform platform = DeviceManager.connect("192.168.11.1",1445);
IAction action = platform.getCurrentAction();
action.getProgress();

   

getStatus()

获取动作状态。返回值为动作状态。

Stability: 3 - Stable

Added in v2.5.0

返回值

返回类型为ActionStatus

参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

接口抛出的异常类型有:
RequesFailException : 请求失败异常
ConnectionFailException : 连接失败异常
ConnectionTimeoutException : 连接超时异常
UnauthorizedRequestException : 请求未授权
UnsupportedCommandException : 不支持此命令
ParseInvalidException : 解析失败
InvalidArgumentException : 无效的参数

示例代码


AbstractSlamwarePlatform platform = DeviceManager.connect("192.168.11.1",1445);
IAction action = platform.getCurrentAction();
action.getStatus();

   

waitUntilDone()

等待动作完成。返回值为完成的动作结果。

Stability: 3 - Stable

Added in v2.5.0

返回值

返回类型为ActionStatus

参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

这是一个阻塞式方法。接口抛出的异常类型有:
RequesFailException : 请求失败异常
ConnectionFailException : 连接失败异常
ConnectionTimeoutException : 连接超时异常
UnauthorizedRequestException : 请求未授权
UnsupportedCommandException : 不支持此命令
ParseInvalidException : 解析失败
InvalidArgumentException : 无效的参数

示例代码


AbstractSlamwarePlatform platform = DeviceManager.connect("192.168.11.1",1445);
IAction action = platform.getCurrentAction();
action.waitUntilDone();

   

isEmpty()

检查当前动作是否为空。

Stability: 3 - Stable

Added in v2.5.0

返回值

返回类型为boolean

参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

示例代码


AbstractSlamwarePlatform platform = DeviceManager.connect("192.168.11.1",1445);
IAction action = platform.getCurrentAction();
action.isEmpty();

   

getActionId()

获取当前动作id。

Stability: 3 - Stable

Added in v2.5.0

返回值

返回类型为int表示当前的actionId。

参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

示例代码


AbstractSlamwarePlatform platform = DeviceManager.connect("192.168.11.1",1445);
IAction action = platform.getCurrentAction();
action.getActionId();

   

getReason()

获取当前action结束后返回的字符串,成功后会返回不为null且长度为0的字符串,失败后会返回说明失败原因的字符串。

Stability: 3 - Stable

Added in v2.5.0

返回值

返回类型为java.lang.String。成功后会返回不为null且长度为0的字符串,失败后会返回失败原因的字符串。获取到当前action的名字。 如:

  • "failed"表示action失败;
  • "aborted"表示action被打断(主动调用cancel或者在action没有结束得时候启动新的action);
  • “unreachable”,表示目标点不可达(搜索路径失败);
  • “unhealthy"表明当前机器人状态不是健康状态,可以通过getRobotHealth()去看具体的信息;
  • "lifted",表明当前机器人离开地面,"low_localization_quality"表明当前机器人定位质量很低;
  • 对于moveTo接口加上MoveOptionFlagKeyPoints这个flag,也就是虚拟轨道的moveto:getReason()返回的blocked[lidar;wall;contact;depth_camera;sonar;cliff],表示在虚拟轨道导航的时候前方有障碍物导致失败。“[]”内为具体原因,用“;”分隔,可以有一个或者多个(触发几个就返回几个)表示发现障碍物的传感器种类。lidar:激光雷达;wall:虚拟墙;contact:碰撞传感器;depth_camera:深度摄像头;sornar:超声波;cliff:跌落传感器。
参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

示例代码


AbstractSlamwarePlatform platform = DeviceManager.connect("192.168.11.1",1445);
IAction action = platform.getCurrentAction();
action.getReason();

   

IMoveAction IAction接口

方法

getRemainingMilestones()

获取剩余里程碑。返回值为剩余的里程碑。

Stability: 3 - Stable

Added in v2.5.0

返回值

返回剩余里程碑,类型为Path

参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

接口抛出的异常类型有:
RequesFailException : 请求失败异常
ConnectionFailException : 连接失败异常
ConnectionTimeoutException : 连接超时异常
UnauthorizedRequestException : 请求未授权
UnsupportedCommandException : 不支持此命令
ParseInvalidException : 解析失败
InvalidArgumentException : 无效的参数

示例代码


AbstractSlamwarePlatform platform = DeviceManager.connect("192.168.11.1",1445);
IMoveAction action = platform.getCurrentAction();
action.getRemainingMilestones();

   

getRemainingPath()

获取到下一里程碑的剩余路径。返回值为到下一里程碑的剩余路径。

Stability: 3 - Stable

Added in v2.5.0

返回值

返回下一里程碑剩余路径,类型为Path

参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

接口抛出的异常类型有:
RequesFailException : 请求失败异常
ConnectionFailException : 连接失败异常
ConnectionTimeoutException : 连接超时异常
UnauthorizedRequestException : 请求未授权
UnsupportedCommandException : 不支持此命令
ParseInvalidException : 解析失败
InvalidArgumentException : 无效的参数

示例代码


AbstractSlamwarePlatform platform = DeviceManager.connect("192.168.11.1",1445);
IMoveAction action = platform.getCurrentAction();
action.getRemainingPath();

继承自com.slamtec.slamware.action.IAction接口的方法如下: cancel, getActionName, getProgress, getStatus, waitUntilDone

   

ISweepMoveAction

方法

pause()

让当前机器人的动作暂停。

Stability: 3 - Stable

Added in v2.5.0

返回值

返回类型为void

参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

接口抛出的异常类型有:
RequesFailException : 请求失败异常
ConnectionFailException : 连接失败异常
ConnectionTimeoutException : 连接超时异常
UnauthorizedRequestException : 请求未授权
UnsupportedCommandException : 不支持此命令

示例代码


AbstractSlamwarePlatform platform = DeviceManager.connect("192.168.11.1",1445);
ISweepMoveAction action = platform.startSweep();
action.pause();

resume()

重新恢复当前机器人的动作。

Stability: 3 - Stable

Added in v2.5.0

返回值

返回类型为void

参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

接口抛出的异常类型有:
RequesFailException : 请求失败异常
ConnectionFailException : 连接失败异常
ConnectionTimeoutException : 连接超时异常
UnauthorizedRequestException : 请求未授权
UnsupportedCommandException : 不支持此命令

示例代码


AbstractSlamwarePlatform platform = DeviceManager.connect("192.168.11.1",1445);
ISweepMoveAction action = platform.startSweep();
action.pause();
action.resume();

ISweepMoveAction IAction接口

表示清扫时的移动动作。

方法

继承自com.slamtec.slamware.action.IMoveAction接口的方法如下: getRemainingMilestones, getRemainingPath

继承自com.slamtec.slamware.action.IAction接口的方法如下: cancel, getActionName, getProgress, getStatus, waitUntilDone

path

类,表示一条路径。

方法

Path()

创建对象Path。

Stability: 3 - Stable

Added in v2.5.0

返回值

参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

示例代码


Path path = new Path();

Path(Path path)

创建参数为path的对象Path。

Stability: 3 - Stable

Added in v2.5.0

返回值

参数说明

|参数名称|参数类型|描述|备注|
|path |Path |通过当前Path对象构造新的Path对象

注意事项

示例代码


Path oldPath = new Path();
Path newPath = new Path(oldPath);

Path(java.util.Vector<Location> points)

创建参数为points的对象Path。

Stability: 3 - Stable

Added in v2.5.0

返回值

参数说明
参数名称 参数类型 描述 备注
points java.util.Vector<\Location> 当前构造Path对象的位置集合 -
注意事项

示例代码


java.util.Vector points = new java.util.Vector();
points.add(new Location());
Path path = new Path(points);

getPoints()

获取当前Path对象的位置集合。

Stability: 3 - Stable

Added in v2.5.0

返回值

java.util.Vector

参数说明
参数名称 参数类型 描述 备注
- - -
注意事项

示例代码


AbstractSlamwarePlatform platform = DeviceManager.connect("192.168.11.1",1445);
IMoveAction action = platfrom.getCurrentAction();
Path path = action.getRemainingPath();
java.util.Vector locations = path.getPoints();

setPoints(java.util.Vector<Location> points)

为当前Path设置位置集合。

Stability: 3 - Stable

Added in v2.5.0

返回值

返回类型为void

参数说明
参数名称 参数类型 描述 备注
points java.util.Vector<Location 当前构造Path对象的位置集合 -
注意事项

示例代码


java.util.Vector locations = new java.util.Vector();
locations.add(new Location(1.0, 1.0, 0.0));
Path path = new Path();
path.setPoints(locations);

ActionStatus枚举

表示动作的状态。

枚举常量

WAITING_FOR_START

动作已创建但未开始。

RUNNING

动作正在进行。

FINISHED

动作成功完成。

PAUSED

动作已暂停。

STOPPED

动作已停止。

ERROR

动作遇到错误。

MoveDirection枚举

人工控制机器人时要求机器人移动的方向。

FORWARD

当前移动动作为向前。

BACKWARD

当前移动动作为向后。

TURN_RIGHT

当前移动动作为向右。

TURN_LEFT

当前移动动作为向左。