1 Star 0 Fork 245

林海 / knowledge_demo_smart_home

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 7.87 KB
一键复制 编辑 原始数据 按行查看 历史
幕阳雨阳 提交于 2022-09-18 03:24 . update docs/smart_cleaner/README.md.

智能扫地机

样例简介

​ 此Demo采用润和的智能小车套件为硬件模型,通过修改代码具备了扫地机器人简易的避障功能及防跌落功能,并且能通过wifi接入数字管家应用场景。智能扫地机不仅能接收数字管家应用下发的指令启动或停止扫地机器人,而且还可以加入到数字管家的日程管理中。通过日程可以设定智能扫地机启动的时间段,使其在特定的时间段内,智能扫地机自动启动或者停止。

​ 避障功能原理:通过超声波传感器,传回正前方障碍与智能扫地机的距离信息,配合电机控制,避开障碍物;

​ 防跌落功能原理:如图左右各朝下安装了红外传感器,通过红外对管(发射管和接收管)收发特性:1 在地面上时发射管发出的红外信号充分经地面反射回接收管,即接收管能接收到足够强的红外光,代码判断为在地面;2 小车悬空时,发射管发出的红外信号不能被接收管接收,代码判断为在悬空状况;3 再配合两轮运动控制,避免小车跌落。

运行效果

当设备应用启动之后,操作效果如下:

 运行效果

样例原理

 原理示意图

如上图所示,智能扫地机整体方案原理图可以大致分成:智能扫地机、数字管家应用、云平台三部分。智能扫地机通过MQTT协议连接华为IoT物联网平台,从而实现命令的接收和属性上报。 关于智能设备接入华为云IoT平台的详细细节可以参考 连接IoT云平台指南;智能设备同数字管家应用之间的设备模型定义可以参考profile .

工程版本

  • 系统版本/API版本:OpenHarmony 1.0.1 release
  • IDE版本:DevEco Device Tool Release 3.0.0.401

快速上手

准备硬件环境

  • BearPi-HM Nano套件一套

  • 预装HarmonyOS手机一台

    注:HarmonyOS是华为基于开源项目OpenHarmony开发的面向多种全场景智能设备的商用版本

准备开发环境

开发环境安装配置参照文档:DevEco Device Tool 环境搭建

准备工程

本用例采DevEco Device Tool工具进行开发,当配置完开发环境后,我们可以在IDE上进行工程的配置下载。

  • 打开DevEco Device Tool,连接远程linux服务器:DevEco Device Tool 环境搭建

  • 点击左下角DevEco插件图标,然后点击左边框出现的主页,弹出主页界面,主页中选择新建项目,如下图:

 main_config

  • 配置下载工程

 config && download

如上图所示,填写对应样例工程的名称,选择对应的样例组件和样例工程存放路径后,点击创建即可进行样例工程的下载。下载界面如下:

 download

当右下角显示正在下载OpenHarmony镜像时,耐心等待下载完成即可。

 download

准备工具链

  • 在Projects中,点击Settings按钮,进入cleaner配置界面。

  • 在toolchain页签中,DevEco Device Tool会自动检测依赖的编译工具链是否完备,如果提示部分工具缺失,可点击SetUp按钮,自动安装所需工具链。

  • 如果出现安装pip组件失败,可参考修改Python源的方法进行修改,完成尝试重新安装。

  • 工具链自动安装完成后如下图所示。

     工具链配置成功

编译

样例代码下载完成后,DevEco Device Tool会重新要求连接远程服务器,输入密码连接后会进入对应的代码编辑界面,此时点击左下角DevEco插件图标,选择PROJECT TASKS可以查看到对应的样例工程,点击build选项进行编译,并可在终端查看对应的编译结果。

 build ok

固件生成在对应工程目录的out/hispark_pegasus/smart_cleaner/目录下。

烧录/安装

编译完成后可以通过DevEco Device Tool进行烧录,在烧录前需要做一些烧录的配置:

配置准备

在配置烧录前需要先查看DevEco Device Tool是否可以正常识别串口。

  • 点击左边栏"REMOTE DEVELOPMENT",找到 并点击” Local PC “ 选项。

  • 查看 Local PC右边图标

    如若图标为方型图标,则代表DevEco Device Tool已连接本地,可以正常识别串口。

    如若图标为箭头图标,则代表DevEco Device Tool未连接本地,不能识别串口,此时需要点击该绿色图标进行连接,连接成功后图标会变为方型图标

 check local pc

  • 点击主页,在主页选择对应工程,点击配置工程进入到配置页面

 config project

配置串口

配置页面选择的板级配置页面,在该页面查找到烧录选项,配置烧录选项中的upload_port和upload_protocol,upload_port选择开发板对应的串口号,upload_protocol默认选择hiburn-serial,最后点击右上角的保存按钮进行保存。

 config serail port

烧录

当配置完串口以及固件后,直接点击左边栏工程管理中的upload即可,此时下方终端会出现对应烧录的信息,当终端出现BootromDownloadBoot字样,按下开发板的 “RESET” 键复位开发板即可。

 burn

操作体验

设备配网
  • 在设备上电前需准备好安装了数字管家应用的HarmonyOS手机,详情见数字管家应用开发, 并在设置中开启手机的NFC功能;

  • 写设备NFC标签,详细操作见设备NFC标签指导文档;

  • 烧录完成后,上电。刚烧录完后设备处在配网模式下,OLED显示WIFI_CONNECT_ING,将手机上半部靠近开发板NFC标签处,wifi连接成功后会显示WIFI_CONNECT_OK,成功连入华为云端会显示IOT_CONNECT_OK;

  • 无需任何操作手机将自动拉起数字管家应用并进入配网状态,配网过程中无需输入热点账号密码。 具体无感配网相关流程参考 无感配网指南

无感配网操作如下图所示:

 无感配网

设备控制

配网完成后,数字管家应用会自动进入智能扫地机的控制页面,通过控制页面可以实现对智能扫地机启动、停止操作。

 控制设备

添加日程

使用者可以进入数字管家的日程管理页面中添加智能扫地机的相关日程,具体步骤如下:

  • 在输入日程名称后,选择相关通知成员和扫地机设备;

  • 选择期待执行的扫地机操作,例如:设置智能扫地机在特定时间段内启动或停止;

  • 设置日程的重复日期,例如:可以设置单次日程(仅在当天执行),或者重复日程(设置日程在设定的 星期几重复执行)

 create_shedule

参考资料

1
https://gitee.com/lin-hai777/knowledge_demo_smart_home.git
git@gitee.com:lin-hai777/knowledge_demo_smart_home.git
lin-hai777
knowledge_demo_smart_home
knowledge_demo_smart_home
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891