Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Excerpt

本页提供了基于Android操作系统开发SLAMWARE SDK的API参考。

...

本页内容

Table of Contents
maxLevel2
exclude本页内容
stylecircle

...

Note
iconfalse
title开发环境要求

基于Android 操作系统对Slamware SDK进行应用开发,您的开发环境需满足如下条件:

  • 您的计算机应当安装Android 4.3或以上版本。本文档将基于Android 4.3进行介绍。


SDK内容

  • Slamware Android SDk主要包括slamtec_agent.jar文件和armeabi文件夹。使用该SDK可以开发Android应用程序。

创建项目工程

新建工程

  1. 打开Android Studio并点击点击File>New>New Project来新建一个项目(未曾建立过其他项目或者Android Studio 刚下载安装请点击Start a new Android Studio Project来新建项目);
  2. 为新建项目命名,选择域名,选择存放位置,然后点击下一步;
  3. 选择所编译的应用程序将要运行的目标设备,然后点击Next
  4. 为该设备的应用程序选择一个Activity,此处选择Empty Activity,然后点击Next;
  5. 进一步设置该Activity并点击完成。

Hello World

  1. 在上述步骤完成后,将下载的SDk文件夹中的文件slamtec_agent.jar和文件夹armeabi复制到下图所示文件加中,并在右侧添加两行代码。
  2. 让测试手机连接上开发的SDP,运行该程序出现界面无崩溃,则代表成功。

    Note
    iconfalse
    title注意

    1. 测试的手机需是ARM处理器的,×86的将无法运行

    2. 不支持模拟器运行


概览

包名

描述

com.slamtec.slamware

 包含有主要与slamware相关的类。

com.slamtec.slamware.action

 包含有与运动方式相关的类。

com.slamtec.slamware.discovery

 包含有与发现设备相关的类。

com.slamtec.slamware.FirmwareUpdate

 包含有与固件更新相关的类。

com.slamtec.slamware.geometry

 包含有与geometry相关的类。

com.slamtec.slamware.robot

 包含有与robot相关的类。

com.slamtec.slamware.exceptions
包含有与异常有关的类。
com.slamtec.slamware.message
包含有与message有关的类。
com.slamtec.slamware.sdp
包含有与SDP有关的类。

类列表

类名

描述

AbstractDiscover

类, 表示abstract discover interface。

AbstractDiscover.BleConfigureListener

类, 表示BleConfigureListener。

AbstractDiscover.DiscoverStatus

类,表示DiscoverStatus。

AbstractDiscover.DiscoveryListener

类,表示DiscoveryListener。

AbstractSlamwarePlatform

类,定义统一的接口用于和SLAMWARE设备通讯。

ActionStatus

枚举,列举动作状态。

BleDevice

类,表示BleDevice。

CompositeMapHelper
类,表示地图工具。
Device

类,表示设备。

DeviceManager

类,表示管理设备的管理程序。

DepthCameraFrame
类,表示深度摄像头。
DiscoveryMode

枚举,列举发现机器人的模式。

FirmwareUpdateInfo

类,表示固件更新信息。

FirmwareUpdateProgress

类,表示固件更新进程。

HealthInfo

类,表示健康状况。

HealthInfo.BaseError

类,表示底盘健康状况和错误信息。

IAction

接口,表示机器人动作。

IMoveAction

接口,表示移动动作。

ImpactSensorInfo 
类,碰撞传感器信息
ImpactSensorType
枚举,表示碰撞传感器类型。
ImpactSensorValue 
类,表示碰撞传感器数据值。
ISweepMoveAction

接口,表示清扫动作。

LaserPoint

类,表示激光扫描点。

LaserScan

类,表示一次激光扫描。

Line

类,表示线。

Location

类,表示机器人在3D空间中的位置。

Map(Robot)

类,表示机器人所在的位置地图。

Map(SDP)

类,表示SDP所在的位置地图。

MapKind

枚举,列举地图种类。

MapLayer
类,表示地图层。
MapType

枚举,列举地图数据类型。

MdnsDevice

类,MdnsDevice。

MoveDirection

类,列举人工控制机器人时的方向指令。

NetworkMode

类,表示网络模式。

Path

类,表示路径。

PointF

类,表示2D浮点小数数据类型。

PointMap 
类,表示点地图。
Pose

类,表示机器人姿态。

PoseMap
类,表示PoseMap。
RecoverLocalizationMovement
枚举,列举当前重新定位时发生的位置变化。
RecoverLocalizationOptions
类,表示重新定位需要的参数。
RestartMode

枚举,列举重启模式。

Rotation

类,表示旋转。

SensorType
枚举,列举机器人传感器类型。
Size

类,表示整数型的Size类别。

SlamwareCorePlatform

类,Abstract Slamware Platform类的子类。

SlamwareSdpPlatform

类,表示SDP扩展平台。

SlamcoreShutdownParam
类,表示底盘重启参数。
SleepMode
枚举,列举当前底盘的休眠模式。
SystemParameters

类,表示系统参数。


com.slamtec.slamware包

AbstractSlamwarePlatform 类

Abstract Slamware Platform 类,定义统一的接口用于和SLAMWARE设备通讯。

已知子类:SlamwareCorePlatform

构造器

AbstractSlamwarePlatform()

AbstractSlamwarePlatform是一个抽象类,不能直接构造该类的对象。请使用DeviceManager连接设备并获取AbstractSlamwarePlatform的对象。

方法

addWall(Line wall)

添加虚拟墙至SLAMWARE。

参数
参数名称描述
wall需要添加的虚拟墙
addWalls(java.util.List<Line> walls)

添加多个虚拟墙至SLAMWARE。

参数
参数名称描述
walls需要添加的多个虚拟墙。
clearMap()

...

移除指定的虚拟墙。(id 不是设定的id,是通过AbstractSlamwarePlatform.getLines(ArtifactUsage var1)返回的line id。)

参数
参数名称描述
id需要移除的虚拟墙的id
clearWalls()

...

配置Slamware Core的网络工作模式。数据返回类型布尔值boolean。

参数
参数名称描述
mode网络模式
options选项
说明

当前支持的工作模式主要有:

模式名称描述
AP模式Slamware Core本身作为一个WiFi热点,当用户设备通过Wifi或者有线网络连接该WiFi热点时,会通过DHCP获得一个IP地址,而后通过192.168.11.1来访问设备,这个模式也是Slamware Core出厂的预置模式。
Station模式Slamware Core本身最为一个WiFi设备,连接到其他的WiFi热点上。同时Slamware Core会自动成为无线网桥,为High Speed Bus上的设备分配IP地址并提供外网访问服务。
Disable模式Slamware Core关闭自身的无线访问功能,只能通过有限网络访问,其IP地址、网关和DNS服务器均由API调用的参数决定。
代码示例
  • 将Slamware Core配置成AP模式

    Platform.configureNetwork(NetworkMode.NetworkModeAp, new HashMap<String, String>());

...

获取已探索到的地图区域。返回值为已探索的地图区域。

参数
参数名称描述
type地图数据类型
kind地图种类
getLaserScan()

...

从SLAMWARE获取地图数据。返回值为局部地图对象。

参数
参数名称描述
type地图数据类型
kind地图种类
area地图区域

...

getSystemParameter(java.lang.String param)

获取系统参数。返回值为当前参数的值。

参数
参数名称描述
param获取的参数
getWalls()

...

(注意:在此状态下,机器人不会进行避障)。需要反复调用该函数来保持机器人的移动状态并调用MoveAction.cancel()函数来及时使机器人停止移动,否则机器人会在持续调用moveBy函数一段时期后停止移动。

参数
参数名称描述
direction期望机器人移动的方向

...

使机器人移动到一系列指定位置。返回值为执行该项操作的移动动作。

参数
参数名称描述
locations机器人前往指定位置经过的一系列节点。

...

使机器人移动到一系列的指定位置。返回值为执行该项操作的移动动作。

参数
参数名称描述
locations机器人前往指定位置经过的一系列节点。
appending布尔值,用于决定SLAMWARE是清除当前任务建立新的点还是将新的点添加到已有的节点列表中。

...

使机器人移动到一系列的指定位置。返回值为执行该项操作的移动动作。

参数
参数名称描述
locations机器人前往指定位置经过的一系列节点。
appending布尔值,用于决定SLAMWARE是清除当前任务建立新的点还是将新的点添加到已有的节点列表中。
isMilestone布尔值,用于决定SLAMWARE是规划路径到一系列节点还是直接前往。当这个参数为true时,机器人会将上述点视作关键点,通过路径搜索的方式前往目的地;当参数为false时,会被视作普通点,不会启用路径搜索功能。

...

使机器人移动到指定地点。返回值为执行该项操作的移动动作。

参数
参数名称描述
location 机器人将要到达的点。

...

使机器人移动到指定地点。返回值为执行该项操作的移动动作。

参数
参数名称描述
location机器人将要到达的点。
appending布尔值,用于决定SLAMWARE是清除当前任务建立新的点还是将新的点添加到已有的节点列表中。

...

使机器人移动到指定地点。返回值为执行该项操作的移动动作。

参数
参数名称描述
location 机器人将要到达的点。
appending布尔值,用于决定SLAMWARE是清除当前任务建立新的点还是将新的点添加到已有的节点列表中。
isMilestone布尔值,用于决定SLAMWARE是规划路径到该节点还是直接前往。当这个参数为true时,机器人会将上述点视作关键点,通过路径搜索的方式前往目的地;当参数为false时,会被视作普通点,不会启用路径搜索功能。

...

restartModule(RestartMode mode)

重启SLAMWARE模块。

参数
参数名称描述
mode重启SLAMWARE模块的模式

...

使机器人旋转一个角度(不同的角度)。返回值为执行该项操作的移动动作。

参数
参数名称描述
rotation机器人被要求旋转的弧度。

...

使机器人旋转到特定的朝向。返回值为执行该项操作的移动动作。

参数
参数名称描述
orientation要求的姿态
searchPath(Location location)

在地图中寻找使机器人从当前位置移动到指定目标位置的路径。返回值为一条从机器人的当前位置到指定目标位置的路径。

参数
参数名称描述
location目标位置
setMap(Map map)

上传地图数据到SLAMWARE。(注意:应与setPose配套使用并确保地图未处于更新或定位状态。在设置地图时候,不可以调用操作机器人的方法比如moveto。)

参数
参数名称描述
map地图
setMap(Map map, MapType type)

上传地图数据到SLAMWARE。(注意:应与setPose配套使用并确保地图未处于更新或定位状态。)

参数
参数名称描述
map地图
type地图数据类型
setMap(Map map, MapType type, MapKind kind)

上传地图数据到SLAMWARE。(注意:应与setPose配套使用并确保地图未处于更新或定位状态。)

参数
参数名称描述
map地图
type地图数据类型
kind地图种类
setMapLocalization(boolean v)

获取是否启用定位功能。

参数
参数名称描述
v布尔值,表明SLAMWARE是否该进行定位。
setMapUpdate(boolean v)

获取是否更新地图。

参数
参数名称描述
v布尔值,表明SLAMWARE是否应该更新地图。
setPose(Pose pose)

设置机器人的姿态。

参数
参数名称描述
pose机器人的新姿态
setSystemParameter(java.lang.String param, java.lang.String value)

设置系统参数。

参数
参数名称描述

param

 将要进行设置的参数。
value将要设置的值。

...

使机器人开始定点清扫(注意:该方法仅适用于扫地机版本的SLAMWARE Core)。返回值为执行该项操作的清扫移动动作。

ArtifactUsage枚举

表示虚拟墙或者虚拟轨道。

枚举常量
ArtifactUsageVirutalWall

虚拟墙,用于限制设备的活动范围。

...

获取所有虚拟墙或虚拟轨道的信息。返回值为一个line的列表。

参数

参数名称

描述

usage

 虚拟墙或者虚拟轨道
boolean addLine(ArtifactUsage usage, Line line)

...

当机器人被抱起时,可以先调用getAuxLocation()获取机器人当前大致位置信息,然后调用recoverLocalization传入包含有大致位置信息的区域,使机器人尝试重定位。

代码示例

auto locationPdf = platform. getAuxLocation();

 Location location = locationPdf.location;

 float distant = locationPdf.circular_error_probability;

  area((location.x() - distant), (location.y() - distant), 2*distant, 2*distant);RectangleF

  auto act = platform. recoverLocalization(area);

  act.waitUntilDone();

...

将深度摄像头的数据传递给底盘,其中sensorId 是通过底盘配置的sensorId, depthCameraFrame是深度摄像头数据对象。

com. slamtec slamware action包

IAction接口

接口,表示机器人的动作。提供接口来执行该动作。

已知子接口:IMoveAction, ISweepMoveAction

方法

cancel()

取消本次操作。

getActionName()

...

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

getStatus()

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

waitUntilDone()

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

boolean isEmpty()

...

获取当前action结束后返回的字符串,成功后会返回不为null且长度为0的字符串,失败后会返回说明失败原因的字符串,如“failed”表示action失败, “aborted”表示action被打断(主动调用cancel或在action未结束时启动新的action),
对于moveTo接口返回的action,“unreachable”表示目标点不可达(搜索路径失败)。

IMoveAction IAction接口

继承自 IAction

已知超接口:IAction

已知子接口:ISweepMoveAction

接口:表示移动动作。

方法

getRemainingMilestones()

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

...

cancel, getActionName, getProgress, getStatus, waitUntilDone

ISweepMoveAction类

 pause()

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

 resume()

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


ISweepMoveAction IAction接口

继承自 IMoveAction

已知超接口:IAction, IMoveAction

接口,表示清扫时的移动动作。

方法

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

...

cancel, getActionName, getProgress, getStatus, waitUntilDone

path类

类,表示一条路径。

构造器

Path()

创建对象Path。

Path(Path path)

...

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

创建参数为points的对象Path。

方法

getPoints() 

获取点。

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

设置点。

ActionStatus枚举

public enum ActionStatus, 继承自 java.lang.Enum<ActionStatus>, 表示动作的状态。

枚举常量

WAITING_FOR_START

动作已创建但未开始。

...

STOPPED

动作已停止。

ERROR

动作遇到错误。

MoveDirection 枚举

public enum MoveDirection, 继承自 java.lang.Enum<MoveDirection>, 人工控制机器人时要求机器人移动的方向。

枚举常量

FORWARD

当前移动动作为向前。

BACKWARD

...

当前移动动作为向右。

TURN_LEFT

当前移动动作为向左。

com.slamtec.slamware.discovery包

AbstractDiscover.BleConfigureListener 接口

封闭类:AbstractDiscover

方法

onConfigureSuccess()

配置成功。

onConfigureFailure(java.lang.String error)

配置失败。

String error枚举常量

BLE_CONFIG_ERROR_BLE_DISCONNECTED

...

BLE_CONFIG_ERROR_INVALID_PWD

密码错误

AbstractDiscover 类

public abstract class AbstractDiscover, abstract discover 接口。

已知子类:DeviceManager

嵌套类

AbstractDiscover.BleConfigureListener

AbstractDiscover.DiscoverStatus

AbstractDiscover.DiscoveryListener

构造器

AbstractDiscover()

创建对象AbstractDiscover。

方法

getMode()

获取模式。

setListener(AbstractDiscover.DiscoveryListener listener)

...

stop(DiscoveryMode mode)

结束。

AbstractDiscover.DiscoveryListener 类

封闭类:AbstractDiscover

构造器

DiscoveryListener()

创建对象DiscoveryListener。

方法

onStartDiscovery(AbstractDiscover discover)

...

onDeviceFound(AbstractDiscover discover, Device device)

发现设备的回调函数。

BleDevice 类

继承自 Device

构造器

BleDevice(BluetoothDevice device)

创建对象BleDevice。

方法

getDevice()

获取设备device。

canBeFoundWith(DiscoveryMode mode)

...

由Device  类中的canBeFoundWith指定

Device类

public abstract class Device, 表示一台设备。

已知子类:

BleDevice, MdnsDevice

构造器

Device()

创建对象Device。

方法

getManufactureId()

获取Manufacture id。

...

setDeviceName(java.lang.String deviceName)

设置device name。

DeviceManager 类

继承自 AbstractDiscover

The manager to manage devices。

...

AbstractDiscover.DiscoveryListener

构造器

DeviceManager(Context context)

创建对象DeivceManager。

方法

connect(java.lang.String host, int port)

直接连接到SLAMWARE Core(该方法常用于Android设备通过高速总线直接连接到SLAMWARE Core)。返回值为连接到的平台。

参数
参数名称描述
host设备主机(通常是192.168.11.1)
port端口

...

连接到指定的基于SLAMWARE的设备。返回值为连接到的设备。

参数
参数名称描述
device准备连接的设备
pair(Device device,java.lang.String wifiSSID, java.lang.String wifiPassword, AbstractDiscover.BleConfigureListener listener)

通过SSID和密码匹配SLAMWARE 设备。

参数
参数名称描述
device准备配对的设备
wifiSSIDWiFi的SSID
sifiPasswordWiFi的密码
listener配置监听器

...

由AbstractDiscover类中的getMode指定

MdnsDevice 类

继承自 Device

构造器

MdnsDevice(java.lang.String addr, int port)

创建对象 MdnsDevice。

方法

getAddr()

获取地址。

getPort()

获取端口。

...

由Device类中的canBeFoundWith指定

AbstractDiscover.DiscoverStatus 枚举

封闭类

AbstractDiscover

枚举常量

STOPPED

停止。

WORKING

工作。

ERROR

错误。

DiscoveryMode 枚举

表明机器人如何被发现。

枚举常量

BLE

BLE 模式。

MDNS

mdns

com.slamtec.slamware.FirmwareUpdate包

FirmwareUpdateInfo类

public class FirmwareUpdateInfo表示固件更新信息。

构造器

FirmwareUpdateInfo(java.lang.String current, java.lang.String latest, java.lang.String releaseDate, java.lang.String brief)

创建对象FirmwareUpdateInfo且参数为current/latest/releasedDate/brief。

方法

getBrief()

获取简明信息, 数据类型为字符串string。

...

获取固件发布日期, 数据类型为字符串string。

FirmwareUpdateProgress类

public class FirmwareUpdateProgress表示固件更新进程。

构造器

FirmwareUpdateProgress(int currentStep, int totalStep, int currentStepProgress, java.lang.String currentStepName)

创建对象FirmwareUpdateProgress且参数为currentStep/totalStep/currentStepProgress/currentStepName。

方法

getCurrentStep()

获取当前步骤,数据类型为int。

...

getTotalStep()

获取所有步骤,数据类型为int。

com.slamtec.slamware.geometry包

Line类

public class Line,表示一条线。

构造器

Line(int segmentId, PointF startPoint, PointF endPoint)

...

创建对象Line 且startP和endP为指定值。

方法

getStartPoint()

获取起始点。

setStartPoint(PointF startPointF)

...

setSegmentId(int segmentId)

设置Segment id。

PointF 类

public class PointF,表示一个2d浮点数据类型。

构造器

PointF()

创建对象PointF。

PointF(float x, float y)

...

PointF(PointF rhs)

创建对象PointF且以PointF为参数。

方法

getX()

获取X。

setX(float x)

设置X。

getY()

获取Y。

setY(float y)

设置Y。

Size 类

public class Size, 表示整数型的size数据类型。

构造器

Size()

创建对象Size。

Size(int width, int height)

...

Size(Size rhs)

创建对象Size且以Size为参数。

方法

getWidth()

获取width。

setWidth(int width)

...

setHeight(int height)

设置height。

com.slamtec.slamware.robot包

HealthInfo类

public class HealthInfo,表示机器人的健康状况。

嵌套类  

HealthInfo.BaseError

构造器

HealthInfo()

创建对象HealthInfo()。

...

创建对象HealthInfo(),参数为warning/error/fatal/错误列表。

方法

getErrors()

获取错误信息。返回值为错误信息列表。

...

setError(boolean error)

是否设置错误信息。

参数
参数名称描述
error将要处理的错误信息
setErrors(java.util.ArrayList<HealthInfo.BaseError> errors)

设置为错误信息列表。

参数
参数名称描述
errors错误信息列表
setFatal(boolean fatal)

设置为致命错误信息。

参数
参数名称描述
fatal致命错误
setWarning(boolean warning)

设置为警告。

参数
参数名称描述
warning警告类错误信息

HealthInfo.BaseError类

封闭类: HealthInfo

Fields

BaseErrorLevelHealthy
机器人底盘健康错误等级

...

BaseComponentErrorTypeSensorMagSelfTestFailed 
底盘组建错误类型为磁传感器自检失败

构造器

BaseError()

创建对象BaseError()。

BaseError(int id, int errorCode, int errorLevel, int errorComponent, int componentErrorCode, java.lang.String errorMessage)

创建对象BaseError()。

参数
参数名称描述
error code错误代码
error level错误等级
error component错误组件
componentErrorCode组件错误代码
errorMessage错误信息

...

setId(int id)

设置Id。返回值为Id。数据类型为int。

LaserPoint 类

public class LaserPoint, 表示一个激光扫描点。

构造器

LaserPoint()

创建对象LaserPoint。

...

创建对象LaserPoint且以LaserPoint为参数。

方法

getDistance()

获取距离。

setDistance(float distance)

...

setValid(boolean valid)

将值设为有效。

LaserScan 类

public class LaserScan,表示激光扫描。

构造器

LaserScan()

创建对象LaserScan。

...

创建对象LaserScan且以LaserScan为参数。

方法

getLaserPoints()

获取激光点。

setLaserPoints(java.util.Vector<LaserPoint> laserPoints)

...

获取姿态。

setPose(Pose pose)

设置姿态。

Location 类

public class Location,表示3d空间中机器人的位置。

构造器

Location()

创建对象Location。

Location(float x, float y, float z)

...

创建对象Location且以Location为参数。

方法

distanceTo(Location that)

...

getZ()

获取Z值。

setZ(float v)

设置Z值。

Map 类

public class Map,表示地图。

构造器

Map(PointF origin, Size dimension, PointF resolution, long timestamp, byte[] data)

创建对象Map。

...

setData(byte[] data)

设置data。

NetworkMode类

Fields

NetworkModeAP

网络模式为AP。

NetworkModeStation

...

NetworkModeWifiDisabled

Wifi禁用的网络模式。

构造器

NetworkMode()

创建对象NetworkMode()。

Pose 类

public class Pose,表示机器人姿态。

构造器

Pose()

创建对象Pose。

Pose(Location loc, Rotation rot)

...

Pose(Pose rhs)

创建对象Pose且以Pose为参数。

方法

Location getLocation()

获取Location。

...

setPitch(float v)

设置pitch。

Rotation 类

public class Rotation。

构造器

Rotation()

创建对象Rotation。

Rotation(float yaw)

...

创建对象Rotation且以Rotation为参数。

方法

getYaw()

获取yaw。

setYaw(float yaw)

...

setPitch(float pitch)

设置pitch。

SystemParameters 类

构造器

SystemParameters()

创建对象SystemParameters。

Fields

SYSPARAM_ROBOT_SPEED

机器人速度。

...

SYSVAL_ROBOT_SPEED_LOW

机器人低速度。

SleepMode枚举

枚举常量。

Unknown

目标Slamware固件不支持该命令。

...

睡眠模式。(当前雷达处于休眠状态,机器人不会立刻工作,调用wakeup()方法可以将雷达处于WakingUp状态,然后处于Awake)。


DockingStatus枚举

枚举常量。

Unknown

Docking状态未知(目标Slamware固件不支持)。

...

设备在充电座上。

NotOnDock

设备不在充电座上。

PowerStatus类

构造器

public PowerStatus(boolean isDCConnected, DockingStatus dockingStatus, boolean isCharging,int batteryPercentage, SleepMode sleepMode)

方法

public boolean isDCConnected() 

...

public SleepMode getSleepMode()

设备休眠模式。

GridMap类

方法

public Location getOrigin() 

...

public void clear()

清除grid地图信息。

CompositeMap类

构造器

public CompositeMap()

默认构造器。

public CompositeMap(CompositeMap another) 

赋值构造器。

方法

public MapMetaData getMetaData() 

...

public void setMaps(ArrayList<MapLayer> maps) 

设置Composite map地图信息。

MapKind枚举

枚举常量

EXPLORE_MAP

利用SLAM算法创建的地图。

...

UWB_MAP

机器人根据UWB技术获取位置,形成的地图。

MapType枚举

枚举常量

BITMAP_8BIT

位图,每个像素是一个带符号的8bit integer。

MapLayer类

地图层。

构造器

MapLayer()

创建MapLayer对象。

方法

getMetaData()

获取到地图数据。

getName()

...

getUsage() 

获取到地图用法。

clear() 

清除所有数据。

PoseMap类

继承自MapLayer。

构造器

PoseMap() 

创造PoseMap对象。

方法

getPoses() 

获取到当前Poses map集合。

setPoses() 

设置当前Poses map集合数据。

PointMap类

构造器

PointMap()

创建PointMap对象。

方法

PointMap(java.util.List points, long timestamp)

...

获取到所有的点,返回值类型是集合。

setPoints() 

设置所有的点。

RecoverLocalizationMovement枚举

根据当前机器人行为,进行的重定位的枚举。

Unknown

...

当前机器人仅仅进行旋转时。

Any

当前机器人进行任意行为。

RecoverLocalizationOptions类

重新定位选项。

构造器

RecoverLocalizationOptions()

创建RecoverLocalizationOptions对象。

方法

getMaxRecoverTimeInMilliSeconds() 

...

获取从新定位时,当前机器人发生的movement。

SensorType枚举

机器人传感器类型。

 Bumper

碰撞传感器。

 Cliff

...

深度摄像头传感器。

 WallSensor

沿墙传感器。

SlamcoreShutdownParam类

底盘重启参数类。

构造器

SlamcoreShutdownParam()

创建SlamcoreShutdownParam对象。

方法

int getRestartTimeIntervalMinute()

...

setRestartTimeIntervalMinute(int restartTimeIntervalMinute)

设置底盘重启时间参数。

SleepMode 枚举

当前底盘休眠模式。

 Unknown

未知模式。

Awake

...

睡眠模式。(当前雷达处于休眠状态,机器人不会立刻工作,调用wakeup()方法可以将雷达处于WakingUp状态,然后处于Awake)。

RestartMode枚举

枚举常量

SOFT

软重启模块,仅重启模块中的核心部分。

HARD

硬重启模块,整个模块重新启动,可能会花费较长的时间。

 LineMap类

方法

public HashMap<String, CompositeLine> getLines() 

...

public void clear()

清除line map数据。

PointsMap类

 public ArrayList<PointPDF> getPoints()

...

public void clear() 

清除points map数据。

 ImpactSensorInfo 类

 构造器

ImpactSensorInfo(int sensorId, Pose pose, ImpactSensorType type, SensorType coreSensorType, float refreshFreq)

创建ImpactSensorInfo对象。

方法

getSensorId()

获取传感器的id。

getPose()

...

获取到传感器种类。

getType()

获取到传感器类型。

ImpactSensorType枚举

Digital 

数字类传感器。

Analog 

模拟信号类传感器。

ImpactSensorValue类

构造器

ImpactSensorValue(long time, float value)

创建对象参数是 time,value。

方法

getTime() 

获取时间。

getValue()

获取值。

com.slamtec.slamware.exceptions包

AlreadyConnectedException类

已连接到机器,异常信息为“Already Connected to the device”。

ConnectionFailException类

连接机器人失败,异常信息为“Connection Failed”。 

ConnectionLostException类

连接丢失,异常信息为“Connection Lost” 。

ConnectionTimeOutException类

连接超时,异常信息为“Connection Time Out”。

InvalidArgumentException类

参数无效,异常信息为“Invalid Argument” 。

OperationFailException类

操作失败,异常信息为“Operation Failed”。 

OutOfResourceException类

资源不足,异常信息为“Out of Resource”。

ParseInvalidException类

参数解析无效,异常信息为“Failed to parse device data” 。

PathFindFailException类

未能找到路径,异常信息为“Failed to find path”。 

RequestFailException类

请求失败,异常信息为“Request Failed” 。

RequestTimeOutException类

请求时间超时,异常信息为“Request Time Out” 。

UnauthorizedRequestException类

请求未授权,异常信息为“Unauthorized request” 。

UnsupportedCommandException类

命令不支持,异常信息为“ Unsupported Command”。

com.slamtec.slamware.message包

DepthCameraFrame类

构造器

DepthCameraFrame() 

创建DepthCameraFrame 对象。

方法

setMinValidDistance(float minValidDistance) 

...

获取深度摄像头采集到的数据,数据大小为行*列(cols*rows),数据的排列由左到右依次往下 ,float的单位是米。

com.slamtec.slamware.sdp包

Action类

继承自 IAction。

方法

 cancel() 

取消本次操作。

 getActionName()

...

 releaseCPointer()

释放所有指针资源。

CompositeMapHelper 

地图工具类。

构造器

CompositeMapHelper() 
创建CompositeMapHelper对象。

方法

loadFile(String var1)

根据路径加载地图。

...