基于can总线的分布式清洁机器人控制系统及控制方法

文档序号:9631135阅读:281来源:国知局
基于can总线的分布式清洁机器人控制系统及控制方法
【技术领域】
[0001]本发明涉及机器人控制领域,尤其涉及一种针对分布式清洁机器人的控制系统。
【背景技术】
[0002]随着传感器、控制、驱动及材料等领域的技术进步,机器人逐步广泛应用于各个领域的工作中,其中,对室内地面的清洁也是机器人的一项重要应用。清洁机器人是能够在房间自动清洁地面的一种新型的服务机器人,它集机械、电子技术、传感技术、计算机技术、控制技术、机器人技术、人工智能等诸多学科为一体。清洁机器人作为智能移动机器人实用化发展的先行者,其带动了家庭服务机器人行业的发展,同时促进了移动机器人技术、传感器等相关技术的发展,其小巧轻便、操作简单、自主性强、具有很强的操作性。
[0003]目前市面上已有的一些清洁机器人,其控制系统一般来说都是建立在一块嵌入式控制板上,由一个主控芯片做整体调度,自动控制清扫机器人实现各种功能。但是,这种控制方式使得整个控制系统在运行的过程中各个部件之间会产生严重的耦合,这样,一旦某一功能发生异常很有可能会导致整个系统崩溃;且这种控制板维护难度较大,延展性较差,通常来说,一套系统仅能适应一到两个机型,各个机型的清洁机器人都需要设计相应的控制系统才能运行,耗费了大量的人力物力。

【发明内容】

[0004]针对上述问题,本发明旨在提供一种基于CAN总线的分布式清洁机器人控制系统及控制方法,其采用模块化结构搭建该控制系统,与现有技术相比,具有耦合度低、容错性强、可靠性高等优点,同时降低了清洁机器人维护难度等。
[0005]本发明提供的技术方案如下:
[0006]—种基于CAN总线的分布式清洁机器人控制系统,
[〇〇〇7] 所述分布式清洁机器人控制系统中包括:监控模块、人机交互模块、定位模块、导航模块、至少一个电机驱动模块、至少一个清洁模块以及电源管理模块;其中,
[0008]所述监控模块,与CAN总线连接,所述监控模块从所述CAN总线中接收所有的总线消息,以完成对所述人机交互模块、定位模块、导航模块、电机驱动模块、清洁模块以及电源管理模块的初始化和工作状态的监控;
[0009]人机交互模块,与CAN总线连接,所述人机交互模块获取用户的电源开启指令和目标清洁区域指令,并分别将电源开启消息和目标清洁区域消息发送至CAN总线;
[〇〇1〇] 定位模块,与CAN总线连接,所述定位模块用于定位分布式清洁机器人的位置,并将位置消息发送至CAN总线;再有,所述定位模块从CAN总线中获取所述目标清洁区域消息,当检测到分布式清洁机器人达到目标清洁区域时,所述定位模块发送开始清洁消息发送至CAN总线;
[〇〇11] 所述导航模块,与CAN总线连接,所述导航模块从CAN总线上获取所述目标清洁区域消息和位置消息进而计算出分布式清洁机器人的清洁路线,并将导航消息发送至CAN总线;另外,所述导航模块从CAN总线上获取开始清洁消息,进而根据所述清洁路线导航所述分布式清洁机器人;当所述导航模块根据所述目标清洁区域消息定位到分布式清洁机器人到达导航终点时,发送停止清洁消息至CAN总线;
[0012]所述电机驱动模块,与CAN总线连接,所述电机驱动模块从CAN总线中获取所述导航消息并计算出电机转速,进而根据所述电机转速控制电机运行;
[0013]所述清洁模块,与CAN总线连接,所述清洁模块从CAN总线中获取所述开始清洁消息进而开启清洁开关,控制分布式机器人开始清洁作业;所述清洁模块从CAN总线获取停止清洁消息进而关闭清洁开关,并发送电源关闭消息至CAN总线;
[0014]所述电源管理模块,与CAN总线连接,所述电源管理模块从CAN总线上获取所述电源开启消息和电源关闭消息,实现对分布式清洁机器人的供电控制;当分布式清洁机器人不工作时,自动调控各个模块的供电,使得分布式清洁机器人处于低功耗工作状态。
[0015]在本技术方案中,电源管理模块控制整个清洁机器人的供电,包括开启和关闭。另夕卜,当分布式清洁机器人不工作时,为了节约电量,电源管理模块会自动关闭一些部分模块的供电,如清洁模块、电机驱动模块、导航模块、定位模块、人机交互模块等。
[0016]优选地,所述分布式清洁机器人控制系统中还包括至少一个与CAN总线连接的速度检测模块,所述速度检测模块获取车轮转速,并将车轮转速消息发送至CAN总线;
[0017]电机驱动模块以第一预设频率从CAN总线获取所述车轮转速消息进而调控电机转速。
[0018]优选地,所述分布式清洁机器人控制系统中还包括:避障模块和/或防跌落模块,其中,
[0019]所述避障模块,与CAN总线连接,所述避障模块实现对分布式清洁机器人四周障碍物的监控,并发送障碍物消息至CAN总线;同时,所述避障模块从CAN总线中获取所述车轮转速消息,进而判定分布式清洁机器人是否会与四周障碍物发生碰撞;当避障模块判定存在近距离障碍物,则发送第一预警消息至CAN总线;
[0020]所述防跌落模块,与CAN总线连接,所述防跌落模块用于探测分布式清洁机器人底部至地面的距离,并将探测到的距离与预设阈值进行比对;当判定探测到的距离大于预设阈值,则计算出与该探测角度相反的危险速度消息并发送至CAN总线。
[0021]在本技术方案中,这里说的近距离障碍物即可能与清洁机器人发生碰撞的障碍物,这里的第一预警消息里面包括了该近距离障碍物的距离、方位等,进而电机驱动模块控制电机运转,避开该近距离障碍物。
[0022]优选地,所述分布式清洁机器人控制系统中还包括与CAN总线连接的用量检测模块,所述用量检测模块用于检测所述分布式清洁机器人自身的电量和/或水量和/或垃圾量;当所述用量检测模块检测到电量低于电量阈值和/或水量低于水量阈值和/或垃圾量高于预设垃圾量时,则发送第二预警消息至CAN总线;
[0023]导航模块从CAN总线中获取所述第二预警消息,并将分布式清洁机器人导航至充电站和/或蓄水处和/或垃圾回收处。
[0024]在本技术方案中,当分布式清洁机器人达到充电站时,则电源管理模块可以切断清洁模块、电机驱动模块等模块的供电;同样的,当分布式清洁机器人到达蓄水处或垃圾回收站时,电源管理模块也切断其他一些没有必要的模块的供电,以智能控制清洁机器人中各个模块的供电,节约电量。
[0025]优选地,所述监控模块中包括无线通信单元和/或通信接口单元,所述监控模块通过所述无线通信单元和/或通信接口单元实现与外界通信。
[0026]一种基于CAN总线的分布式清洁机器人控制方法,应用于上述分布式清洁机器人控制系统,所述分布式清洁机器人控制方法包括以下步骤:
[0027]人机交互模块分别获取用户的电源开启指令和目标清洁区域指令,并分别将电源开启消息和目标清洁区域消息发送至CAN总线;
[0028]电源管理模块从CAN总线上获取所述电源开启消息,进而开始为清洁机器人供电;
[0029]定位模块定位分布式清洁机器人的位置,并将位置消息发送至CAN总线;
[0030]导航模块从CAN总线上获取所述目标清洁区域消息和位置消息进而计算出分布式清洁机器人的清洁路线,并将导航消息发送至CAN总线;
[0031]电机驱动模块从CAN总线中获取所述导航消息并计算出电机转速,进而根据所述电机转速控制电机运行;
[0032]所述定位模块从CAN总线中获取所述目标清洁区域消息,并检测所述分布式清洁机器人是否达到目标清洁区域;若检测到到达目标清洁区域,则所述定位模块发送开始清洁消息发送至CAN总线;
[0033]清洁模块从CAN总线中获取所述开始清洁消息进而开启清洁开关,控制分布式机器人开始清洁作业;
[0034]所述导航模块从CAN总线上获取开始清洁消息,进而根据所述清洁路线导航所述分布式清洁机器人;当所述导航模块根据所述目标清洁区域消息定位到分布式清洁机器人到达导航终点时,发送停止清洁消息至CAN总线;
[0035]所述清洁模块从CAN总线获取停止清洁消息进而关闭清洁开关,并发送电源关闭消息至CAN总线;
[0036]所述电源管理模块从CAN总线上获取所述电源关闭消息,进而切断清洁机器人的供电。
[0037]优选地,所述分布式清洁机器人控制方法中还包括以下步骤:
[0038]速度检测模块获取车轮转速,并将车轮转速消息发送至CAN总线;
[0039]电机驱动模块以第一预设频率从CAN总线获取所述车轮转速消息进而调控电机转速。
[0040]优选地,所述分布式清洁机器人控制方法中还包括以下步骤:
[0041]避障模块监控分布式清洁机器人四周障碍物,并发送障碍物消息至CAN总线;
[0042]所述避障模块从CAN总线中获取所述车轮转速消息,进而判定分布式清洁机器人是否会与四周障碍物发生碰撞;
[0043]当避障模块判定存在近距离障碍物,则发送第一预警消息至CAN总线;
[0044]和 / 或,
[0045]防跌落模块探测分布式清洁机器人底部至地面的距离,并将探测到的距离与预设阈值进行比对;
[0046]当判定探测到的距离大于预设阈值,则计算出与该探测角度相反的危险速度消息并发送至CAN总线;
[0047]电机驱动模块从CAN总线中获取所述速度消息,进而控制电机运行。
[0048]优选地,所述分布式清洁机器人控制方法中还包括以下步骤:
[0049]用量检测模块检测检测分布式清洁机器人自身的电量和/或水量和/或垃圾量;
[0050]当所述用量检测模块检测到电量低于电量阈值和/或水量低于水量阈值和/或垃圾量高于预设垃圾量时,则发送第二预警消息至CAN总线;
[0051]导航模块从CAN总线中获取所述第二预警消息,进而将分布式清洁机
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1