激光扫地机

更新时间:2023-10-12 08:00:15下载pdf

本文为您介绍 [激光扫地机模板] 的具体功能及其使用方法,更多资源参考 GitHub 仓库

此项目依赖 TYSdk.mobile.mobileInfo.appRnVersion 5.28 以上,如果 App 版本过低,请前往 涂鸦面板-RN 重新下载。

简介

该模板工程为基于 React Native 0.59 的激光扫地机模板,支持以下功能:

  • 开启和关闭扫地机
  • 控制扫地机充电
  • 改变扫地机工作状态,例如定点清扫,选区清扫,区域清扫
  • 设置禁区和虚拟墙
  • 设置清扫区域
  • 设置和改变房间名称
  • 设置和改变房间属性
  • 分割房间
  • 重置房间
  • 查看清扫记录
  • 定时

界面示例

主页

激光扫地机

添加禁区

激光扫地机

分割房间

激光扫地机

修改房间名称

激光扫地机

设置

激光扫地机

目录

此处仅描述该脚手架相关的目录,如需了解通用目录结构信息参考 RN 0.59 脚手架文档

├── src
│   ├── api // 放置项目中用到的一系列云端  API
│   ├── components // 放置项目中用到的复用的功能组件
│   ├── composeLayout.tsx // 封装处理了面板内部所需要的一些`设备事件`和`设备信息`
│   ├── config // 放置面板内部一些常用的配置文件
│   ├── pages // 放置项目的各个页面级别的组件
│   ├── protocol // 放置数据解析协议(地图,路径,虚拟信息等)
│   ├── i18n // 放置多语言配置文件
│   ├── main.tsx // 项目入口文件, 继承自 `NavigatorLayout`,通过重写 `hookRoute` 方法将一些必要的配置传入,例如背景、topbar 等;重写 `renderScene` 方法控制路由跳转
│   ├── store // 放置 redux 相关的一些代码
│   ├── res // 放置本地资源,包括图片,svg path 等
│   └── utils // 放置面板内部会用到的一些常用工具方法等

业务流程及 UI 交互说明

  1. 进入面板下发’request’: 'get_both’获取地图数据路径数据虚拟信息数据,并解析展示在面板首页。

  2. 点击自动轻松按钮可操作扫地机开始/暂停清扫。

  3. 点击回充充电按钮可操作扫地机开始/暂停充电。

  4. 点击区域清扫按钮,并在地图上选择一个清扫点,点击确认可操作扫地机区域清扫。

  5. 点击选区清扫按钮,并选择地图上的分区,点击确认可操作扫地机选区清扫。

  6. 点击划区清扫按钮,并在地图上添加一个区域,点击确认可操作扫地机划区清扫。

  7. 点击禁区编辑,可在地图上添加禁区虚拟墙

  8. 点击地图编辑,可进入地图编辑页面。
    在地图编辑页面,可进行如下操作:

    1. 区域合并
    2. 区域分割
    3. 恢复分区
    4. 区域命名
    5. 定制模式
    6. 清扫顺序
  9. 点击更多,可进入设置页面。
    在设置页面,可进行如下操作:

    1. 遥控模式
    2. 地图管理
    3. 预约
    4. 语音及音量
    5. 勿扰模式

DP 协议介绍

此处只描述扫地机必需 DP,如需了解可选 DP 请查看对应产品详情。

清扫开关(必选)

参数 取值
id 1
code switch_go
type 布尔型
mode 可下发可上报
value true 或 false
description
  • true:清扫启动
  • false:清扫停止

暂停/继续(必选)

参数 取值
id 2
code pause
type 布尔型
mode 可下发可上报
value true 或 false
description
  • true:暂停当前工作状态
  • false:继续当前工作状态

回充开关(必选)

参数 取值
id 3
code switch_charge
type 布尔型
mode 可下发可上报
value true 或 false
description
  • true:回充启动
  • false:回充停止

工作模式(必选)

参数 取值
id 4
code mode
type 枚举型
mode 可下发可上报
value 枚举值:smart, chargego, zone, pose, part, select_room
description 默认值(不可修改删除,否则影响控制面板逻辑):
  • smart:自动清扫模式/全屋清扫模式
  • chargego:自动回充模式(需要兼容:goto_charge)
  • zone:划区清扫模式/矩形清扫模式
  • pose:指哪扫哪模式/定点清扫模式
  • part:局部清扫模式
  • select_room:选区清扫模式

当前状态(必选)

参数 取值
id 5
code status
type 枚举型
mode 只上报
value 枚举值:standby, smart, zone_clean, part_clean, cleaning, paused, goto_pos, pos_arrived, pos_unarrive, goto_charge, charging, charge_done, sleep, select_room
description 默认值(不可修改删除,否则影响控制面板逻辑):
  • standby:待机中
  • smart:自动清扫中
  • zone_clean:划区清扫中
  • part_clean:局部清扫中
  • cleaning:清扫中(备选)
  • paused:已暂停
  • goto_pos:前往目标点中
  • pos_arrived:目标点已到达
  • pos_unarrive:目标点不可达
  • goto_charge:寻找充电座中
  • charging:充电中
  • charge_done:充电完成
  • sleep:休眠
  • select_room:选区清扫中
说明: 可增加其他状态值,状态值尽量是状态的英文小写单词。如果需要设置故障中状态,则取值为 in_trouble。

路径传输(必选)

参数 取值
id 14
code path_data
type RAW 型
mode 可下发可上报
description 相关数据协议及逻辑可参看开发包中激光扫地机地图协议文件

指令传输(必选)

参数 取值
id 15
code command_trans
type RAW 型
mode 可下发可上报
description 相关数据协议及逻辑可参看开发包中激光扫地机地图协议文件

请求数据(必选)

参数 取值
id 16
code request
type 枚举型
mode 可下发可上报
value 枚举值:get_map, get_path, get_both
description 相关数据协议及逻辑可参看开发包中激光扫地机地图协议文件

故障上报(必选)

参数 取值
id 28
code fault
mode 可下发可上报
value 故障值:edge_sweep, middle_sweep, left_wheel, right_wheel, garbage_box, land_check, collision
description 默认值(不可修改删除,否则影响控制面板逻辑):
  • edge_sweep_fault:边刷故障
  • middle_sweep_fault:滚刷故障
  • left_wheel_fault:左轮故障
  • right_wheel_fault:右轮故障
  • garbage_box_fault:尘盒故障
  • land_check_fault:地检故障
  • collision_fault:碰撞传感器故障
说明: 可增加其他状态值,状态值尽量是状态的英文小写单词。如果需要设置故障中状态,则取值为 in_trouble。