...
clearWallById(int id)
移除指定的虚拟墙。(id 不是设定的id,是通过AbstractSlamwarePlatform.getLines(ArtifactUsage var1)返回的line id。)
参数
参数名称 | 描述 |
---|---|
id | 需要移除的虚拟墙的id |
clearWalls()
...
参数名称 | 描述 |
---|---|
location | 目标位置 |
setMap(Map map)
上传地图数据到SLAMWARE。(注意:应与setPose配套使用并确保地图未处于更新或定位状态。)上传地图数据到SLAMWARE。(注意:应与setPose配套使用并确保地图未处于更新或定位状态。在设置地图时候,不可以调用操作机器人的方法比如moveto。)
参数
参数名称 | 描述 |
---|---|
map | 地图 |
setMap(Map map, MapType type)
...
boolean addLines(ArtifactUsage usage, List<Line> lines)
添加多条虚拟墙或虚拟轨道。 id必须是Arraylist<Line> lines = AbstractSlamwarePlatform.getLines(ArtifactUsage usage);
boolean removeLineById(ArtifactUsage usage, int id)
...
获取充电座位置。如果找不到充电座则返回(0,0)。
List<ImpactSensorInfo>
...
getSensors()
获取到机器人所有的传感器信息,返回值是list集合获取到机器人所有的传感器信息,返回值是list集合。
HashMap<Integer,
...
ImpactSensorValue>
...
getSensorValues()
获取到机器人所有的传感器信息,返回值是hashMap集合获取到机器人所有的传感器信息,返回值是hashMap集合。
ImpactSensorValue
...
getSensorValue(Integer
...
var1)
根据key 获取到机器人对应的传感器信息获取到机器人对应的传感器信息。
IMoveAction moveTo(Location location, MoveOption option, float yaw)
使机器人移动到指定的位置。 location 指定的位置,moveOption 是移动时候的参数,可以为:
参数名称 | 数据类型 | 描述 |
---|---|---|
appending | boolean | 用于决定SLAMWARE是清除当前任务建立新的点还是将新的点添加到已有的节点列表中。 |
milestone | boolean | 用于决定SLAMWARE是规划路径到一系列节点还是直接前往。当这个参数为true时,机器人会将上述点视作关键点,通过路径搜索的方式前往目的地;当参数为false时,会被视作普通点,不会启用路径搜索功能。 |
noSmooth | boolean | 暂时没有开放。 |
keyPoints | boolean | 设置是否走虚拟轨道。 |
precise | boolean | 机器人移动的时候精确到点。 |
withYaw | boolean | 是否让机器人停下来的时候旋转。 |
yaw | float | 机器人人停下来的时候旋转到一定的角度。 |
...
机器人停下来的时候旋转到一定的角度。 | ||
returnUnreachableDirectly | boolean | 为true时,当机器人规划路径失败后,机器人不进行旋转重新规划。 |
trackWithOA | boolean | trackWithOA 为true时,机器人走虚拟轨道时候,也会进行避障,避障后继续优先走虚拟轨道.(如果不走虚拟轨道,trackWithOA 设置为true,没有作用)。 |
speedRatio | Double | 机器人行走的速度,范围是0到1,(只用于moveBy)。 |
IMoveAction moveTo(java.util.List
...
locations,
...
MoveOption
...
option,
...
float
...
yaw)
...
参考上面的注释,只是移动到很多点
参考上面的注释,只是移动到很多点。
publishDepthCamFrame(int
...
sensorId,DepthCameraFrame
...
depthCameraFrame)
将深度摄像头的数据传递给底盘,其中sensorId 是通过底盘配置的sensorId, depthCameraFrame是深度摄像头数据对象。
com. slamtec slamware action包
...
cancel, getActionName, getProgress, getStatus, waitUntilDone
ISweepMoveAction类
pause()
暂停机器人的当前动作。让当前机器人的动作暂停。
resume()
恢复机器人暂停之前进行的动作。重新恢复当前机器人的动作。
ISweepMoveAction IAction接口
...
HealthInfo.BaseError类
封闭类: HealthInfo
Fields
BaseErrorLevelHealthy
机器人底盘健康错误等级
BaseErrorComponentMotion
机器人底盘运动错误。
...
BaseErrorLevelWarn
底盘错误等级为警告错误。
BaseComponentErrorTypeUnknown
底盘组件错误类型未知
...
BaseComponentErrorTypeUser
...
底盘组建错误类型为用户系统错误
...
BaseComponentErrorTypeSystemNone
BaseError(int id, int errorCode, int errorLevel, int errorComponent, int componentErrorCode, java.lang.String errorMessage)
创建对象BaseError()。
参数
...
(未使用)
BaseComponentErrorTypeSystemEmergencyStop
底盘组建错误类型为系统急停按钮按下
BaseComponentErrorTypeSystemTemperatureHigh
底盘组建错误类型为系统温度过高
BaseComponentErrorTypeSystemTemperatureLow
底盘组建错误类型为系统温度过低
BaseComponentErrorTypeSystemWatchDogOverFlow
底盘组建错误类型为看门狗超时
BaseComponentErrorTypeSystemCtrlBusDisconnected
底盘组建错误类型为底盘连接断开
BaseComponentErrorTypeSystemSlamwareRebooted
底盘组建错误类型为slamware重新启动
BaseComponentErrorTypePowerNone
(未使用)
BaseComponentErrorTypePowerControllerDown
底盘组建错误类型为电源控制板连接断开
BaseComponentErrorTypePowerPowerLow
底盘组建错误类型为低电量
BaseComponentErrorTypePowerOverCurrent
底盘组建错误类型为电流过高
BaseComponentErrorTypeMotionNone
(未使用)
BaseComponentErrorTypeMotionControllerDown
底盘组建错误类型为电机控制器异常
BaseComponentErrorTypeMotionMotorAlarm
底盘组建错误类型为电机报警
BaseComponentErrorTypeMotionMotorDown
底盘组建错误类型为电机异常
BaseComponentErrorTypeMotionOdometryDown
底盘组建错误类型为里程计异常
BaseComponentErrorTypeMotionBrushStall
(未使用)
BaseComponentErrorTypeMotionBlowerStall
(未使用)
BaseComponentErrorTypeSensorNone
(未使用)
BaseComponentErrorTypeSensorControllerDown
底盘组建错误类型为传感器板断开
BaseComponentErrorTypeSensorBumperDown
底盘组建错误类型为碰撞传感器断开
BaseComponentErrorTypeSensorCliffDown
底盘组建错误类型为跌落传感器断开
BaseComponentErrorTypeSensorSonarDown
底盘组建错误类型为超声波传感器断开
BaseComponentErrorTypeSensorDustbinBlock
(未使用)
BaseComponentErrorTypeSensorDustbinGone
(未使用)
BaseComponentErrorTypeSensorWallIrDown
(未使用)
BaseComponentErrorTypeSensorMagTapeTriggered
底盘组建错误类型为磁传感器触发
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 | 错误信息 |
方法
getComponentErrorCode()
获取组件错误代码。返回数据类型为int。
getErrorCode()
获取错误代码。返回数据类型为int。
getErrorComponent()
获取错误组件。返回数据类型为int。
getErrorLevel()
获取错误等级。返回数据类型为int。
getErrorMessage()
获取错误信息。返回数据类型为string。
getId()
获取错误id。返回数据类型为int。
setComponentErrorCode(int componentErrorCode)
设置组件错误代码。返回值为组件错误代码。数据类型为int。
setErrorCode(int errorCode)
设置错误代码。返回值为错误代码。数据类型为int。
setErrorComponent(int errorComponent)
设置错误组件。返回值为错误组件。数据类型为int。
setErrorLevel(int errorLevel)
设置错误等级。返回值为错误等级。数据类型为int。
setErrorMessage(java.lang.String errorMessage)
设置错误信息。返回值为错误信息。数据类型string。
setId(int id)
设置Id。返回值为Id。数据类型为int。
LaserPoint 类
public class LaserPoint, 表示一个激光扫描点。
构造器
LaserPoint()
创建对象LaserPoint。
LaserPoint(float distance, float angle)
创建对象LaserPoint且距离和角度为指定值。
LaserPoint(float distance, float angle, boolean valid)
创建对象LaserPoint且距离,角度和有效性为指定值。
LaserPoint(LaserPoint rhs)
创建对象LaserPoint且以LaserPoint为参数。
方法
getDistance()
获取距离。
setDistance(float distance)
设置距离。
getAngle()
获取角度。
setAngle(float angle)
设置角度。
isValid()
测量是否有效。
setValid(boolean valid)
将值设为有效。
LaserScan 类
public class LaserScan,表示激光扫描。
构造器
LaserScan()
创建对象LaserScan。
LaserScan(java.util.Vector<LaserPoint> laserPoints)
创建对象LaserScan且以LaserPoints为参数。
LaserScan(java.util.Vector<LaserPoint> laserPointsPose pose)
创建对象LaserScan且以LaserPointPose为参数。
LaserScan(LaserScan rhs)
创建对象LaserScan且以LaserScan为参数。
方法
getLaserPoints()
获取激光点。
setLaserPoints(java.util.Vector<LaserPoint> laserPoints)
设置激光点。
getPose()
获取姿态。
setPose(Pose pose)
设置姿态。
Location 类
public class Location,表示3d空间中机器人的位置。
构造器
Location()
创建对象Location。
Location(float x, float y, float z)
创建对象Location且x,y,z为指定值。
Location(Location rhs)
创建对象Location且以Location为参数。
方法
distanceTo(Location that)
获取到Location的距离。
getX()
获取X值。
setX(float v)
设置X值。
getY()
获取Y值。
setY(float v)
设置Y值。
getZ()
获取Z值。
setZ(float v)
设置Z值。
Map 类
public class Map,表示地图。
构造器
Map(PointF origin, Size dimension, PointF resolution, long timestamp, byte[] data)
创建对象Map。
getOrigin()
获取origin。
setOrigin(PointF origin)
设置origin。
getDimension()
获取dimension。
setDimension(Size dimension)
设置dimensions。
getResolution()
获取resolution。
setResolution(PointF resolution)
设置resolution。
getTimestamp()
获取 time stamp。
setTimestamp(long timestamp)
设置time stamp。
getMapArea()
获取map area。
getData()
获取data。
setData(byte[] data)
设置data。
NetworkMode类
Fields
NetworkModeAP
网络模式为AP。
NetworkModeStation
网络模式为Station。
NetworkModeWifiDisabled
Wifi禁用的网络模式。
构造器
NetworkMode()
创建对象NetworkMode()。
Pose 类
public class Pose,表示机器人姿态。
构造器
Pose()
创建对象Pose。
Pose(Location loc, Rotation rot)
创建对象Pose且loc和ros为指定值。
Pose(float x, float y, float z, float yaw, float roll, float pitch)
创建对象Pose且x,y,z,yaw,roll,pitch为指定值。
Pose(Pose rhs)
创建对象Pose且以Pose为参数。
方法
Location getLocation()
获取Location。
setLocation(Location location)
设置Location。
getRotation()
获取rotation。
setRotation(Rotation rotation)
设置rotation。
getX()
获取X。
setX(float v)
设置X。
getY()
获取Y。
setY(float v)
设置Y。
getZ()
获取Z。
setZ(float v)
设置Z。
getYaw()
获取yaw。
setYaw(float v)
设置yaw。
getRoll()
获取roll。
setRoll(float v)
设置roll。
getPitch()
获取pitch。
setPitch(float v)
设置pitch。
Rotation 类
public class Rotation。
构造器
Rotation()
创建对象Rotation。
Rotation(float yaw)
创建对象 Rotation且yaw为指定值。
Rotation(float yaw, float pitch, float roll)
创建对象Rotation且yaw,pitch,roll为指定值。
Rotation(Rotation rhs)
创建对象Rotation且以Rotation为参数。
方法
getYaw()
获取yaw。
setYaw(float yaw)
设置Yaw。
getRoll()
获取roll。
setRoll(float roll)
设置roll。
getPitch()
获取pitch。
setPitch(float pitch)
设置pitch。
SystemParameters 类
构造器
SystemParameters()
创建对象SystemParameters。
Fields
SYSPARAM_ROBOT_SPEED
机器人速度。
SYSVAL_ROBOT_SPEED_HIGH
机器人高速度。
SYSVAL_ROBOT_SPEED_MEDIUM
机器人中速度。
SYSVAL_ROBOT_SPEED_LOW
机器人低速度。
SleepMode枚举
枚举常量。
Unknown
目标Slamware固件不支持该命令。
Awake
醒着的模式。(当前雷达处于工作状态,机器人可以立刻工作)。
WakingUp
正在唤醒模式。(当调用wakeup()方法后,就处于当前状态)。
Asleep
睡眠模式。(当前雷达处于休眠状态,机器人不会立刻工作,调用wakeup()方法可以将雷达处于WakingUp状态,然后处于Awake)。
DockingStatus枚举
枚举常量。
Unknown
Docking状态未知(目标Slamware固件不支持)。
OnDock
设备在充电座上。
NotOnDock
设备不在充电座上。
PowerStatus类
构造器
public PowerStatus(boolean isDCConnected, DockingStatus dockingStatus, boolean isCharging,int batteryPercentage, SleepMode sleepMode)
方法
public boolean isDCConnected()
直流电源连接。
public DockingStatus getDockingStatus()
Docking状态。
public boolean isCharging()
设备是否处于充电状态。
public int getBatteryPercentage()
电池电量(从0~100)。
public SleepMode getSleepMode()
设备休眠模式。
GridMap类
方法
public Location getOrigin()
获取原点位置。
public void setOrigin(Location origin)
设置原点位置。
public Size getDimension()
获取grid地图尺寸。
public void setDimension(Size dimension)
设置grid地图尺寸。
public PointF getResolution()
获取grid地图分辨率。
public void setResolution(PointF resolution)
设置grid地图分辨率。
public byte[] getMapData()
获取grid地图信息。
public void setMapData(byte[] mapData)
设置grid地图信息。
public void clear()
清除grid地图信息。
CompositeMap类
构造器
public CompositeMap()
默认构造器。
public CompositeMap(CompositeMap another)
赋值构造器。
方法
public MapMetaData getMetaData()
获取Composite map属性信息。
public void setMetaData(MapMetaData data)
设置Composite map属性信息。
public ArrayList<MapLayer> getMaps()
获取Composite map地图信息。
public void setMaps(ArrayList<MapLayer> maps)
设置Composite map地图信息。
MapKind枚举
枚举常量
EXPLORE_MAP
利用SLAM算法创建的地图。
SWEEP_MAP
清扫操作使用的地图(仅适用于扫地机版本机器人)。
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)
根据points集合和timeStamp 创建对象。
getMapArea()
获取到当前地图区域的rectF。
getPoints()
获取到所有的点,返回值类型是集合。
setPoints()
设置所有的点。
RecoverLocalizationMovement枚举
根据当前机器人行为,进行的重定位的枚举。
Unknown
未知当前机器人行为(一般不用)。
NoMove
当前机器人不移动。
RotateOnly
当前机器人仅仅进行旋转时。
Any
当前机器人进行任意行为。
RecoverLocalizationOptions类
重新定位选项。
构造器
RecoverLocalizationOptions()
创建RecoverLocalizationOptions对象。
方法
getMaxRecoverTimeInMilliSeconds()
获取从新定位的最大时间。
setMaxRecoverTimeInMilliSeconds(Integer maxRecoverMS)
设置从新定位的最大时间。
setRecoverMovementType(RecoverLocalizationMovement movementType)
设置从新定位需要传入的参数,该参数是当前发生的movement。
RecoverLocalizationMovement getRecoverMovementType()
获取从新定位时,当前机器人发生的movement。
SensorType枚举
机器人传感器类型。
Bumper
碰撞传感器。
Cliff
防跌落传感器。
Sonar
超声波传感器。
DepthCamera
深度摄像头传感器。
WallSensor
沿墙传感器。
SlamcoreShutdownParam类
底盘重启参数类。
构造器
SlamcoreShutdownParam()
创建SlamcoreShutdownParam对象。
方法
int getRestartTimeIntervalMinute()
获取到底盘多少分钟重启。
setRestartTimeIntervalMinute(int restartTimeIntervalMinute)
设置底盘重启时间参数。
SleepMode 枚举
当前底盘休眠模式。
Unknown
未知模式。
Awake
醒着的模式。(当前雷达处于工作状态,机器人可以立刻工作)。
WakingUp
正在唤醒模式。(当调用wakeup()方法后,就处于当前状态)。
Asleep
睡眠模式。(当前雷达处于休眠状态,机器人不会立刻工作,调用wakeup()方法可以将雷达处于WakingUp状态,然后处于Awake)。
RestartMode枚举
枚举常量
SOFT
软重启模块,仅重启模块中的核心部分。
HARD
硬重启模块,整个模块重新启动,可能会花费较长的时间。
LineMap类
方法
public HashMap<String, CompositeLine> getLines()
获取line map数据。
public void setLines(HashMap<String, CompositeLine> lines)
设置line map数据。
public void clear()
清除line map数据。
PointsMap类
public ArrayList<PointPDF> getPoints()
获取points map数据。
public void setPoints(ArrayList<PointPDF> points)
设置points map数据。
public void clear()
清除points map数据。
ImpactSensorInfo 类
构造器
ImpactSensorInfo(int sensorId, Pose pose, ImpactSensorType type, SensorType coreSensorType, float refreshFreq)
创建ImpactSensorInfo对象。
方法
getSensorId()
获取传感器的id。
getPose()
获取当前传感器的位置。
getKind()
获取到传感器种类。
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)
设置深度摄像头最小探测的距离,单位是米。
float getMinValidDistance()
获取深度摄像头最小探测的距离,单位是米。
setMaxValidDistance()
设置深度摄像头最大探测的距离,单位是米。
float getMaxValidDistance()
获取深度摄像头最大探测的距离,单位是米。
setMinFovPitch(float MinFovPitch)
设置深度摄像头垂直方向朝下最大探测仰度,单位是弧度。
float getMinFovPitch()
获取深度摄像头垂直方向朝下最大探测仰度,单位是弧度。
setMaxFovPitch(float MaxFovPitch)
设置深度摄像头垂直方向朝上最小探测的仰角,单位是弧度。
float getMaxFovPitch()
获取深度摄像头垂直方向朝上最小探测的仰角,单位是弧度。
setMinFovYaw(float MinFovYaw )
设置深度摄像头水平方向朝左最大探测的角度,单位是弧度。
float getMinFovYaw()
获取深度摄像头水平方向朝左最大探测的角度,单位是弧度。
setMaxFovYaw(float MaxFovYaw)
设置深度摄像头水平方向朝右最小探测的角度,单位是弧度。
float getMaxFovYaw()
获取深度摄像头水平方向朝右最小探测的角度,单位是弧度。
setCols(int cols)
设置深度摄像头数据多少列。
int getCols()
获取深度摄像头数据多少列。
setRows(int rows)
设置深度摄像头数据多少行。
int getRows()
获取深度摄像头数据多少行。
setData(ArrayList<Float> data)
设置深度摄像头采集到的数据,数据大小为行*列(cols*rows),数据的排列由左到右依次往下 ,float的单位是米。
ArrayList<float> getData()
获取深度摄像头采集到的数据,数据大小为行*列(cols*rows),数据的排列由左到右依次往下 ,float的单位是米。
com.slamtec.slamware.sdp包
Action类
继承自 IAction。
方法
cancel()
取消本次操作。
getActionName()
获取动作名称。返回值为动作名称(string)。
getProgress()
获取动作进程(0~1)。返回值为动作进程(double)。
getStatus()
获取动作状态。返回值为动作状态。
waitUntilDone()
等待动作完成。返回值为完成的动作结果。
isEmpty()
判断当前action是否为空。
igetActionId()
获取当前action的id。
String getActionName()
获取到当前action的名字。
String getReason()
获取当前action结束后返回的字符串,成功后会返回不为null且长度为0的字符串,失败后会返回失败原因的字符串。
如:
"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:跌落传感器。
方法
getComponentErrorCode()
获取组件错误代码。返回数据类型为int。
getErrorCode()
获取错误代码。返回数据类型为int。
getErrorComponent()
获取错误组件。返回数据类型为int。
getErrorLevel()
获取错误等级。返回数据类型为int。
getErrorMessage()
获取错误信息。返回数据类型为string。
getId()
获取错误id。返回数据类型为int。
setComponentErrorCode(int componentErrorCode)
设置组件错误代码。返回值为组件错误代码。数据类型为int。
setErrorCode(int errorCode)
设置错误代码。返回值为错误代码。数据类型为int。
setErrorComponent(int errorComponent)
设置错误组件。返回值为错误组件。数据类型为int。
setErrorLevel(int errorLevel)
设置错误等级。返回值为错误等级。数据类型为int。
setErrorMessage(java.lang.String errorMessage)
设置错误信息。返回值为错误信息。数据类型string。
setId(int id)
设置Id。返回值为Id。数据类型为int。
LaserPoint 类
public class LaserPoint, 表示一个激光扫描点。
构造器
LaserPoint()
创建对象LaserPoint。
LaserPoint(float distance, float angle)
创建对象LaserPoint且距离和角度为指定值。
LaserPoint(float distance, float angle, boolean valid)
创建对象LaserPoint且距离,角度和有效性为指定值。
LaserPoint(LaserPoint rhs)
创建对象LaserPoint且以LaserPoint为参数。
方法
getDistance()
获取距离。
setDistance(float distance)
设置距离。
getAngle()
获取角度。
setAngle(float angle)
设置角度。
isValid()
测量是否有效。
setValid(boolean valid)
将值设为有效。
LaserScan 类
public class LaserScan,表示激光扫描。
构造器
LaserScan()
创建对象LaserScan。
LaserScan(java.util.Vector<LaserPoint> laserPoints)
创建对象LaserScan且以LaserPoints为参数。
LaserScan(java.util.Vector<LaserPoint> laserPointsPose pose)
创建对象LaserScan且以LaserPointPose为参数。
LaserScan(LaserScan rhs)
创建对象LaserScan且以LaserScan为参数。
方法
getLaserPoints()
获取激光点。
setLaserPoints(java.util.Vector<LaserPoint> laserPoints)
设置激光点。
getPose()
获取姿态。
setPose(Pose pose)
设置姿态。
Location 类
public class Location,表示3d空间中机器人的位置。
构造器
Location()
创建对象Location。
Location(float x, float y, float z)
创建对象Location且x,y,z为指定值。
Location(Location rhs)
创建对象Location且以Location为参数。
方法
distanceTo(Location that)
获取到Location的距离。
getX()
获取X值。
setX(float v)
设置X值。
getY()
获取Y值。
setY(float v)
设置Y值。
getZ()
获取Z值。
setZ(float v)
设置Z值。
Map 类
public class Map,表示地图。
构造器
Map(PointF origin, Size dimension, PointF resolution, long timestamp, byte[] data)
创建对象Map。
getOrigin()
获取origin。
setOrigin(PointF origin)
设置origin。
getDimension()
获取dimension。
setDimension(Size dimension)
设置dimensions。
getResolution()
获取resolution。
setResolution(PointF resolution)
设置resolution。
getTimestamp()
获取 time stamp。
setTimestamp(long timestamp)
设置time stamp。
getMapArea()
获取map area。
getData()
获取data。
setData(byte[] data)
设置data。
NetworkMode类
Fields
NetworkModeAP
网络模式为AP。
NetworkModeStation
网络模式为Station。
NetworkModeWifiDisabled
Wifi禁用的网络模式。
构造器
NetworkMode()
创建对象NetworkMode()。
Pose 类
public class Pose,表示机器人姿态。
构造器
Pose()
创建对象Pose。
Pose(Location loc, Rotation rot)
创建对象Pose且loc和ros为指定值。
Pose(float x, float y, float z, float yaw, float roll, float pitch)
创建对象Pose且x,y,z,yaw,roll,pitch为指定值。
Pose(Pose rhs)
创建对象Pose且以Pose为参数。
方法
Location getLocation()
获取Location。
setLocation(Location location)
设置Location。
getRotation()
获取rotation。
setRotation(Rotation rotation)
设置rotation。
getX()
获取X。
setX(float v)
设置X。
getY()
获取Y。
setY(float v)
设置Y。
getZ()
获取Z。
setZ(float v)
设置Z。
getYaw()
获取yaw。
setYaw(float v)
设置yaw。
getRoll()
获取roll。
setRoll(float v)
设置roll。
getPitch()
获取pitch。
setPitch(float v)
设置pitch。
Rotation 类
public class Rotation。
构造器
Rotation()
创建对象Rotation。
Rotation(float yaw)
创建对象 Rotation且yaw为指定值。
Rotation(float yaw, float pitch, float roll)
创建对象Rotation且yaw,pitch,roll为指定值。
Rotation(Rotation rhs)
创建对象Rotation且以Rotation为参数。
方法
getYaw()
获取yaw。
setYaw(float yaw)
设置Yaw。
getRoll()
获取roll。
setRoll(float roll)
设置roll。
getPitch()
获取pitch。
setPitch(float pitch)
设置pitch。
SystemParameters 类
构造器
SystemParameters()
创建对象SystemParameters。
Fields
SYSPARAM_ROBOT_SPEED
机器人速度。
SYSVAL_ROBOT_SPEED_HIGH
机器人高速度。
SYSVAL_ROBOT_SPEED_MEDIUM
机器人中速度。
SYSVAL_ROBOT_SPEED_LOW
机器人低速度。
SleepMode枚举
枚举常量。
Unknown
目标Slamware固件不支持该命令。
Awake
设备处于已唤醒状态,可以立刻响应命令。
WakingUp
设备处于正在被唤醒中的状态,需要少许时间响应命令。
Asleep
设备处于已休眠状态,需要稍长时间响应命令。
DockingStatus枚举
枚举常量。
Unknown
Docking状态未知(目标Slamware固件不支持)。
OnDock
设备在充电座上。
NotOnDock
设备不在充电座上。
PowerStatus类
构造器
public PowerStatus(boolean isDCConnected, DockingStatus dockingStatus, boolean isCharging,int batteryPercentage, SleepMode sleepMode)
方法
public boolean isDCConnected()
直流电源连接。
public DockingStatus getDockingStatus()
Docking状态。
public boolean isCharging()
设备是否处于充电状态。
public int getBatteryPercentage()
电池电量(从0~100)。
public SleepMode getSleepMode()
设备休眠模式。
GridMap类
方法
public Location getOrigin()
获取原点位置。
public void setOrigin(Location origin)
设置原点位置。
public Size getDimension()
获取grid地图尺寸。
public void setDimension(Size dimension)
设置grid地图尺寸。
public PointF getResolution()
获取grid地图分辨率。
public void setResolution(PointF resolution)
设置grid地图分辨率。
public byte[] getMapData()
获取grid地图信息。
public void setMapData(byte[] mapData)
设置grid地图信息。
public void clear()
清除grid地图信息。
CompositeMap类
构造器
public CompositeMap()
默认构造器。
public CompositeMap(CompositeMap another)
赋值构造器。
方法
public MapMetaData getMetaData()
获取Composite map属性信息。
public void setMetaData(MapMetaData data)
设置Composite map属性信息。
public ArrayList<MapLayer> getMaps()
获取Composite map地图信息。
public void setMaps(ArrayList<MapLayer> maps)
设置Composite map地图信息。
MapKind枚举
枚举常量
EXPLORE_MAP
利用SLAM算法创建的地图。
SWEEP_MAP
清扫操作使用的地图(仅适用于扫地机版本机器人)。
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)
根据points集合和timeStamp 创建对象。
getMapArea()
获取到当前地图区域的rectF。
getPoints()
获取到所有的点,返回值类型是集合。
setPoints()
设置所有的点。
RecoverLocalizationMovement枚举
根据当前机器人行为,进行的重定位的枚举。
Unknown
未知当前机器人行为(一般不用)。
NoMove
不发生移动。
RotateOnly
当前机器人仅仅发送旋转时。
Any
当前机器人发生任意行为。
RecoverLocalizationOptions类
重新定位选项。
构造器
RecoverLocalizationOptions()
创建RecoverLocalizationOptions对象。
方法
getMaxRecoverTimeInMilliSeconds()
获取从新定位的最大时间。
setMaxRecoverTimeInMilliSeconds(Integer maxRecoverMS)
设置从新定位的最大时间。
setRecoverMovementType(RecoverLocalizationMovement movementType)
设置从新定位需要传入的参数,该参数是当前发生的movement。
RecoverLocalizationMovement getRecoverMovementType()
获取从新定位时,当前机器人发生的movement。
SensorType枚举
机器人传感器类型。
Bumper
碰撞传感器。
Cliff
防跌落传感器。
Sonar
超声波传感器。
DepthCamera
深度摄像头传感器。
WallSensor
沿墙传感器。
SlamcoreShutdownParam类
底盘重启参数类。
构造器
SlamcoreShutdownParam()
创建SlamcoreShutdownParam对象。
方法
int getRestartTimeIntervalMinute()
获取到底盘多少分钟重启。
setRestartTimeIntervalMinute(int restartTimeIntervalMinute)
设置底盘重启时间参数。
SleepMode 枚举
当前底盘休眠模式。
Unknown
未知模式。
Awake
醒着的模式。
WakingUp
正在唤醒模式。
Asleep
睡眠模式。
RestartMode枚举
枚举常量
SOFT
软重启模块,仅重启模块中的核心部分。
HARD
硬重启模块,整个模块重新启动,可能会花费较长的时间。
LineMap类
方法
public HashMap<String, CompositeLine> getLines()
获取line map数据。
public void setLines(HashMap<String, CompositeLine> lines)
设置line map数据。
public void clear()
清除line map数据。
PointsMap类
public ArrayList<PointPDF> getPoints()
获取points map数据。
public void setPoints(ArrayList<PointPDF> points)
设置points map数据。
public void clear()
清除points map数据。
ImpactSensorInfo 类
构造器
ImpactSensorInfo(int sensorId, Pose pose, ImpactSensorType type, SensorType coreSensorType, float refreshFreq)
创建ImpactSensorInfo对象。
方法
getSensorId()
获取传感器的id。
getPose()
获取当前传感器的位置。
getKind()
获取到传感器种类。
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)
设置深度摄像头最小探测的距离,单位是米。
float getMinValidDistance()
获取深度摄像头最小探测的距离,单位是米。
setMaxValidDistance()
设置深度摄像头最大探测的距离,单位是米。
float getMaxValidDistance()
获取深度摄像头最大探测的距离,单位是米。
setMinFovPitch(float MinFovPitch)
设置深度摄像头垂直方向朝下最大探测仰度,单位是弧度。
float getMinFovPitch()
获取深度摄像头垂直方向朝下最大探测仰度,单位是弧度。
setMaxFovPitch(float MaxFovPitch)
设置深度摄像头垂直方向朝上最小探测的仰角,单位是弧度。
float getMaxFovPitch()
获取深度摄像头垂直方向朝上最小探测的仰角,单位是弧度。
setMinFovYaw(float MinFovYaw )
设置深度摄像头水平方向朝左最大探测的角度,单位是弧度。
float getMinFovYaw()
获取深度摄像头水平方向朝左最大探测的角度,单位是弧度。
setMaxFovYaw(float MaxFovYaw)
设置深度摄像头水平方向朝右最小探测的角度,单位是弧度。
float getMaxFovYaw()
获取深度摄像头水平方向朝右最小探测的角度,单位是弧度。
setCols(int cols)
设置深度摄像头数据多少列。
int getCols()
获取深度摄像头数据多少列。
setRows(int rows)
设置深度摄像头数据多少行。
int getRows()
获取深度摄像头数据多少行。
setData(ArrayList<Float> data)
设置深度摄像头采集到的数据,数据大小为行*列(cols*rows),数据的排列由左到右依次往下 ,float的单位是米。
ArrayList<float> getData()
获取深度摄像头采集到的数据,数据大小为行*列(cols*rows),数据的排列由左到右依次往下 ,float的单位是米。
com.slamtec.slamware.sdp包
Action类
继承自 IAction。
方法
cancel()
取消本次操作。
getActionName()
获取动作名称。返回值为动作名称(string)。
getProgress()
获取动作进程(0~1)。返回值为动作进程(double)。
getStatus()
获取动作状态。返回值为动作状态。
waitUntilDone()
等待动作完成。返回值为完成的动作结果。
isEmpty()
判断当前action是否为空。
getActionId()
获取当前action的id。
String getActionName()
获取到当前action的名字。
String getReason()
获取当前action结束后返回的字符串,成功后会返回不为null且长度为0的字符串,失败后会返回失败原因的字符串,如“failed”表示action失败, “aborted”表示action被打断(主动调用cancel或者在action没有结束的时候启动新的action),对于通过moveTo接口返回的action,“unreachable”表示目标点不可达(搜索路径失败)。
releaseCPointer()
释放所有指针资源。
CompositeMapHelper
地图工具类。
构造器
CompositeMapHelper()
创建CompositeMapHelper对象。
方法
loadFile(String var1)
根据路径加载地图。
saveFile(String var1, CompositeMap var2)
根据路径保存地图。