扫地机 SDK

更新时间:2024-06-05 06:57:56下载pdf

智能扫地机 SDK 提供了扫地机器人相关接口,帮助您获取清扫地图、路径及历史地图等功能。智能扫地机 SDK 依托于 Cube App SDK,更多详情,请参考 Cube App SDK 集成

名词解释

专有名词 说明
陀螺仪扫地机 陀螺仪在扫地机器人的功能,主要是判断出机器人的行走方向,配合室内导航定位系统,行走电机的运行状况,可以准确定位出 XOY 坐标。在绕过障碍物行走时,记录绕行方向,避免机器人重复行走,免除重复清扫,提高清扫效率。通过软件计算出机器人行走路线,可做行程记录,通过清扫路径覆盖算法,完成扫地规划并且保存起来。
运动过程中,可检测机器人水平转动与水平位置,调整机身运行状态。在扫地机器人需要充电的时候,可以通过自身 XOY 坐标,快速回到充电站。
充电完成后,还可以通过行程记录,回到扫地处继续进行清扫,效率大为提高。对于凹型或者死角地形,在清扫过程中做行程记录,可顺利清扫。
视觉扫地机 采用视觉导航的扫地机拥有真正的“眼睛”,即摄像头,通过摄像头拍摄周围的环境和物体,通过复杂的算法让机器人能够通过感知由亮度不同的光点组成的光学图像来进行定位。这些光学影像从不同的角度看起来是各不相同的,通过不断收集这些图像信息,机器人可以在自身构建的地图上进行定位,从而知道哪些位置已经扫过、哪些地方需要清洁。
激光扫地机 激光型扫地机采用激光雷达进行导航。激光导航是怎么实现定位的呢?首先雷达利用激光扫描四周的环境,激光在遇到物体后会反射回来,而物体表面不同的点到雷达的距离是不一样的,计算激光发射到反射回来的时间就可以得到扫地机到不同物体的距离,同时也就描绘出了整个环境的轮廓,达到了定位和构建地图的目的。激光定位理论研究也相对成熟,所以是目前被采用最多的技术。
OSS 即对象存储(Object Storage Service),是一种将数据对待成一个个对象,进而存储起来的数据存储架构技术。

功能概述

目前扫地机 SDK 支持陀螺仪、视觉、激光三种类型扫地机器人。不同扫地机提供的功能如下:

  • 扫地机 SDK:提供实时数据的通道能力及全量数据获取能力。

  • 陀螺仪和视觉扫地机:提供实时数据采用数据流的方式获取,通过 MQTT 协议机器实时上报清扫的增量数据。

  • 激光扫地机:实时数据是全量数据,由于数据量大,不适用 MQTT 流服务传递数据。实际是激光扫地机把清扫的全量数据(地图和路线)上传到涂鸦开发者平台,以二进制文件存储,并通过 MQTT 通知 App 服务器上的文件存储路径。

准备工作

涂鸦智能 iOS 扫地机 SDK 依赖于涂鸦 Cube App SDK,基于此基础上进行拓展开发。在开始开发前,您需要在涂鸦开发者平台上注册开发者账号、创建产品等,并获取到激活 SDK 的密钥。具体的操作流程,请参考 涂鸦 Cube App SDK 集成准备

快速集成

  1. 在 Podfile 文件中,添加以下内容:

    platform :ios, '9.0'
    
    target 'your_target_name' do
    	pod "ThingSmartSweeperKit"
    end
    
  2. 在项目根目录下执行 pod update 命令,集成第三方库。有关 CocoaPods 的使用,请参考 CocoaPods 官方文档

头文件引入

  • 在项目的 PrefixHeader.pch 文件中,添加以下内容:

    #import <ThingSmartSweeperKit/ThingSmartSweeperKit.h>
    
  • 如果是 Swift 项目,可以添加在 xxx_Bridging-Header.h 桥接文件中,添加以下内容:

    #import <ThingSmartSweeperKit/ThingSmartSweeperKit.h>