当前位置: 首页 > news >正文

机器人制作开源方案 | 智能落叶清扫机器人

作者:李聪赛 马嘉骏 李佳豪 邵一鸣 池宏伟

单位:唐山学院

指导老师:袁娜

1. 引言

      近年来,随着人工智能科学和计算机技术人工智能科学的飞速发展,智能机器人技术已成为当代机器人研究领域的热门话题。其中服务机器人开辟了机器人应用的新领域,服务机器人的出现有三个主要原因:一是劳动力成本逐渐上升;其次人们希望摆脱繁琐的体力劳动,如清洁、家务、照顾患者和儿童等等;第三,人口老龄化和社会福利制度的改善也为一些服务机器人提供了广阔的市场应用前景。服务机器人将其与工业机器人区分开来的主要特征是服务机器人是适应特定方法,任务和环境的机器人系统。活动空间非常大,它可以在非结构化的环境中自由移动,因此服务机器人是一个移动机器人。作为智能移动机器人开发的先驱,早在20世纪80年代就开始研究地面清洁机器人,清洁机器人的发展带动了家用服务机器人产业的发展,并推动了移动机器人技术、图像与语音识别、传感器、电子等相关技术的发展。清扫机器人将移动机器人技术与清扫技术相结合,实现地面的半自动或全自动清洁,而不是传统的大型手动清洁。随着现代传感器与机器人技术领域的关键技术的融合,本项目的目标是开发一种廉价、全覆盖的智能落叶清扫机器人,主要针对校园需求,方便实用。落叶清洁机器人,可以及时清扫落下来的落叶,使校容环境保持整洁良好。它可以取代传统的落叶清洁方法,使生活更加电气化,智能化,更好地为人类服务。

智能落叶清扫机器人实物图

2. 场景调研

      由于目前我国正在逐步的发展进入一个现代化的工业社会,陈旧、落后的生活垃圾处理操作方法和生产设备已经远远不能满足这个现代社会的发展进步,对于一些完全自动化的城市扫地处理机械和清扫器具,人们常见的扫地机器也就是公路上的燃油式大型清扫车,它不仅能够轻松实现大规模范围的城市街道地面打扫,操作简便,效率高,并且这样有利于节约扫地人力,增加安全。然而在一些小面积区域,例如公园、小巷、校园等区域卫生打扫、落叶清理主要还是依靠人们用扫帚等原始卫生工具打扫,而那些工作效率高又十分有力的大型清扫车,在诸多区域,比如大型工业园区厂区、居民小区,学校,医院,小街上的小巷,走廊等重要地点,却是英雄无用武之地。

      落叶堆积影响校容环境,满地的落叶,不但影响市容,对于出行也不方便。落叶清扫的问题如下:

      ① 天气干燥,树叶就很“脆”,清理不及时,会被来往的车辆和行人碾碎、踩碎。

      ② 遇上大风天,落叶就到处飞,环卫工人得追着扫,归堆以后还得用重物压着防止飞走。

      ③ 遇上风雨雪的天气,落叶数量猛增,打湿之后清扫更加困难,如果碰到雨、雪、浮尘天气,不仅会妨碍行人和司机的视线,还容易造成下水         道堵塞,阻碍积水排除,使环卫工人工作难上加难。

      在实现自动化的清扫的机械化设备上,能够实现和解决人工清扫上的很多问题,所以在对智能落叶清扫机器人的设计上是很有意义的,主要的优势有以下几点:

      ① 智能落叶清扫机器人的工作效率比人工清扫高得多,在同样的作业面积上采用智能落叶清扫机器人,可以在短时间内完成对路面的清扫,使道路更快的投入使用。

      ② 在清扫的成本上,采用机械清扫的成本比人工清扫的成本更低,虽然机械的购买成本是比较高的,但是在长期的使用上,人工的工资和劳力成本比机械清扫高。

      ③ 在清洁的效果上,人工清洁的方式比较笨重,而且清扫的干净程度不一,有些细小的落叶清洁不到,但是采用机械清扫可以解决这个问题。

3. 方案设计

3.1 整体设计

      智能落叶清扫机器人的设计旨在研发一种结构简单、控制灵活、路径规划、操作简单、自主行走、自动避障、便于实现等一系列任务的落叶清扫机器人。落叶清扫机器人总体由控制系统与机械部分组成。整体设计方案如下图所示:

智能落叶清扫机器人整体设计方案

      机械部分采用前驱轮式移动方式,因为轮式的效率最高,行进速度快,转向灵活,造价较低,故障容易处理,而且前驱能在保证速度的前提下节省能源。另外在相对平坦的地面上,轮式移动控制也相对简单,运动噪声小。车体框架为探索者套件组成,重量轻,质量好,结实耐用,整体框架为长方体,内部为大容量垃圾收集器。智能落叶清扫机器人设计有一个中路主刷和两个边路侧刷,可以大范围的收集落叶垃圾和灰尘等,车前安装有三个灰度传感器来保证车辆按照预定路线行走,控制部分安装在车体顶部,来完成车体正常工作的控制工作。

      工作原理:前驱的两个直流电机带动清扫车整体的移动,后轮为两个从动轮,不提供动力。主轴电机控制中路主刷的运转,两侧盘型边刷由两个直流小电机控制其分别顺逆旋转,两侧盘型刷将路面的落叶垃圾和灰尘扫到落叶清理机器人的中间,再由中路主刷通过倾斜的导向板将其扫入垃圾收集器内,完成清扫工作。整体模型图如下图所示:

整体模型图

3.2 行走驱动系统

      智能落叶清扫机器人的行走驱动系统为前驱系统,共由两个TT电机组成,负责整体的驱动、转向,与蓄电池配套使用,TT电机操作简单,运行平稳,功率大,适合此项目的要求,所以选用此电机作为驱动电机。后轮为从动轮,不提供动力和转向。利用差动转向式的方式,机器人的两个驱动轮速度变化从而可以更好的控制机器人的速度和转向能力,从而可以更好的避障。两电机均由控制系统的Arduino开发板控制。

      TT电机实物图如下图所示:

TT电机实物图

      机器人对路径的选择是靠灰度传感器、超声波传感器和Arduino开发板共同完成的。其中灰度传感器可以利用光敏电阻对不同颜色的检测面对光的反射程序不同,其阻值变化在的原理进行颜色深浅检测。在有效的检测距离内,发光二极管发出白光,照射在检测面上,检测面反射部分光线,光敏电阻检测此光线的强度并将其转换为机器人可以识别的信号。与Arduino专用传感器扩展板结合使用,可以感知地面或桌面不同的颜色而产生相应的信号,智能落叶清扫机器人通过小黑线可实现指定路线的循迹功能。灰度传感器如下图所示:

灰度传感器

      超声波传感器用来实现避障功能,超声波避障,就是利用超声波测距原理(TOF)实现避障功能。通过测量超声波从发出到接收的时间差,根据声速(340m/s)计算出物体的距离,移动时通过算法绕开障碍物的过程。智能落叶清扫机器人在工作时如果遇见行人等会停止移动,来礼让行人。工作原理图如下图所示:

超声波工作原理图

3.3 工作系统

      智能落叶清扫机器人的工作系统由三部分组成,分别为中路滚筒主刷,两侧盘型边刷,垃圾收集器组成。机器人整体工作系统如下图所示:

机器人整体工作系统图

3.3.1 中路主刷

      中路主刷为滚筒式,滚刷外壳为PVC塑料管,具有很好的抗拉、抗压强度,耐腐蚀性,品性优良。刷丝选用PP刷丝具有耐磨,回弹性好,PVC-U管材具有优异的耐酸,耐碱,耐腐蚀,不受潮湿水份和土壤酸碱度的影响,管道铺设时不需任何防腐处理。具有良好的水密性:PVC-U管材的安装,不论采用粘接还是橡胶圈连接,均具有良好的水密性。PP的吸水率是众多刷丝中较低的,因此拥有较好的抗化学能力,除被浓硫酸及浓硝酸侵蚀外,对其他各种化学助剂都比较稳定,而且pp是目前所有塑料刷丝中最轻的品种之一,且硬度性能足够,可以让清洁灵活方便。这两种材料均可以保证机器人滚刷设备在雨后不受侵蚀。在滚刷两侧还设有直径为5cm的齿轮与主轴电机上的直径1cm的齿轮相连接。传动比为5,可以在保证转速的情况下,给滚轮更大的力矩,防止落叶堆积过多而卡槽。中路主刷模型图如下图所示:

标题

3.3.2 两侧边刷

      两侧边刷为两个盘型刷,且可伸缩调整范围,为V型刷,高效聚拢垃圾,可以大范围的将路面的落叶汇聚到路中间,随后滚刷将落叶通过倾斜的导向刮板将落叶送入垃圾收集器内。盘型刷可以更方便的清理路牙和靠近障碍物的地方。横向清扫宽度得到提升。两侧边刷材质也为PP塑料,具有耐用,抗腐蚀,防水,硬度高,回弹性好的特点,可以更好的将落叶垃圾和灰尘等汇聚到路面中间。两侧盘型刷模型图如下图所示:

两侧边刷模型图

3.3.3 垃圾收集器

      垃圾收集器装在整个车体的内部,为18cm×20cm的PP塑料板制成。垃圾收集器整体类似抽屉,可以很方便的将收集的落叶等垃圾处理掉。且选用的PP塑料板加入了阻燃剂,可以防止烟头等火源将落叶点燃,更安全,具有很好的防腐性能。垃圾收集器的外壳还设计有倾斜的导向刮板,可以是落叶垃圾更方便的进入到垃圾收集器内。垃圾收集器模型图如下图所示:

垃圾收集器模型图

​3.4 控制系统

      控制系统为Arduino开发板及其扩展板,板子上有微控制器通过Arduino的编程语言来编写程序,编译成二进制文件,通过Arduino IDE烧录进微控制器。行走驱动系统的两个电机、灰度传感器和超声波传感器均由其控制。还设有报警系统,在面包板上设有一个红色LED小灯,当机器人行走偏离时会亮,还设置有一个蜂鸣器,当按下启动按钮时听见“滴”时,说明机器人已经正常启动,可以投入工作。

4. 示例程序

int pin[3] = {A2, A4, A3};byte value;byte value_his = 0; //记录上一次的传感器值void setup(){int Ecoh=A6;int Trig=A7;int Distance;pinMode( 5 , OUTPUT);pinMode( 6 , OUTPUT);pinMode( 9 , OUTPUT);pinMode( 10 , OUTPUT);analogWrite(9,1);   //analogWrite values from 0 to 255analogWrite(10,1);   //analogWrite values from 0 to 255analogWrite(5,1);   //analogWrite values from 0 to 255analogWrite(6,1);   //analogWrite values from 0 to 255  }void loop(){value = 0;for(int i=0; i<3; i++){value |= (digitalRead(pin[i]) << i);}if(value == 0x07){ //当传感器都没有触发时默认为上一次的值value = value_his;}switch (value){case 0x00: //全部触发Forwards();break;case 0x01: //触发右边两个while(digitalRead(pin[1])){ //通过while 循环使小车回到跑道中间Right();}break;case 0x03: //触发右边一个while(digitalRead(pin[1])){Right();}break;case 0x04: //触发左边两个while(digitalRead(pin[1])){Left();}break;case 0x05: //触发中间一个Forwards();break;case 0x06: //触发左边一个while(digitalRead(pin[1])){Left();}break;default:Stop();}value_his = value;digitalWrite(Trig,LOW);delayMicroseconds(2);digitalWrite(Trig,HIGH);delayMicroseconds(10);digitalWrite(Trig,LOW);float Fdistance=pulseIn(Ecoh,HIGH);Fdistance=Fdistance/58;Distance=Fdistance;if(Fdistance<20){Serial.print("Distance:");Serial.print(Fdistance);Serial.print("cm\n");stop();}elseSerial.print("out of range\n");}void Left(){digitalWrite( 5 , HIGH );digitalWrite( 6 , LOW );digitalWrite( 9 , LOW );digitalWrite( 10 , HIGH );}void Right(){digitalWrite( 5 , LOW );digitalWrite( 6 , HIGH );digitalWrite( 9 , HIGH );digitalWrite( 10 , LOW );}void Forwards(){digitalWrite( 5 , HIGH );digitalWrite( 6 , LOW );digitalWrite( 9 , HIGH );digitalWrite( 10 , LOW );}void Stop(){digitalWrite( 5 , LOW );digitalWrite( 6 , LOW );digitalWrite( 9 , LOW );digitalWrite( 10 , LOW );}

5. 作品的创新点

5.1 多功能清洁

      在本次智能落叶清扫机器人的设计上,实现多功能清洁的作用是本次设计的一个亮点,在本次设计上,针对落叶的清扫使用盘型刷搭配滚刷作业的设计,实现对落叶的多功能清扫,在技术上得到了更好的完善,且操作简便,成本低。

5.2 可调节边刷

      两侧边刷为V型刷,更高效的聚拢垃圾,可以调节边刷的张角,可调节扫过的横向面积,灵活应对各种路面环境。

6. 设计难点和解决方法

      在设计中路主刷时,没有考虑落叶堆积对主刷的影响,将主刷和电机直接连在一起,转速快,但当落叶由两侧边刷汇聚到路面中间时所有的落叶堆积到一起,形成了一定的高度,而主刷直接由电机带动转动,力矩较小,出现主刷被卡住不转的问题,为解决这一问题想到要改变主刷和电机的传动比,通过实验发现,当传动比为5时,主刷的转速和力矩等各方面可以满足要求,所以将电机的齿轮换为直径为1cm的齿轮,在主刷上加上直径为5cm的齿轮,该问题得以解决。

参考文献

[1]孙富春.机器人学导论——分析、控制及应用(第二版).北京:电子工业出版社出版,2019

[2]柴剑.智能扫地机器人技术的研究与实现.陕西,西安电子科技大学,2014

[3]蔡自兴、谢斌.机器人学(第四版).北京:清华大学出版社,2021

[4]周有成.基于扩展功能模型的智能产品概念结构设计.河北,河北工业大学,2020

[5]陈吕洲. Arduino程序设计基础(第2版).北京:北京航空航天大学出版社,2015

更多详情请见:【S038】智能落叶清扫机器人

相关文章:

  • 【unity实战】一个通用的FPS枪支不同武器射击控制脚本
  • 如何保证架构的质量
  • Android Uri scheme协议file转content
  • [最后一个月征稿、ACM独立出版】第三届密码学、网络安全和通信技术国际会议(CNSCT 2024)
  • Crocoddyl: 多接触最优控制的高效多功能框架
  • STM32_启动流程详解
  • 【数据库设计和SQL基础语法】--连接与联接--多表查询与子查询基础(一)
  • k8s中ConfigMap、Secret创建使用演示、配置文件存储介绍
  • 面试算法61:和最小的k个数对
  • 保姆级 Keras 实现 YOLO v3 三
  • Linux学习(1)——初识Linux
  • Groovy基础学习2
  • 基于QTreeWidget实现带Checkbox的多级组织结构选择树
  • Redis-数据结构
  • 理解BeEF的架构
  • Angular 响应式表单 基础例子
  • Bytom交易说明(账户管理模式)
  • C++入门教程(10):for 语句
  • CSS居中完全指南——构建CSS居中决策树
  • ES6之路之模块详解
  • IP路由与转发
  • Java到底能干嘛?
  • js算法-归并排序(merge_sort)
  • LintCode 31. partitionArray 数组划分
  • Linux Process Manage
  • PHP 的 SAPI 是个什么东西
  • php的插入排序,通过双层for循环
  • vue+element后台管理系统,从后端获取路由表,并正常渲染
  • win10下安装mysql5.7
  • 前端临床手札——文件上传
  • 使用putty远程连接linux
  • 王永庆:技术创新改变教育未来
  • 网络应用优化——时延与带宽
  • 微信开源mars源码分析1—上层samples分析
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • 小程序开发之路(一)
  • 云大使推广中的常见热门问题
  • 在Unity中实现一个简单的消息管理器
  • ​决定德拉瓦州地区版图的关键历史事件
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • #include<初见C语言之指针(5)>
  • $forceUpdate()函数
  • (Matalb回归预测)PSO-BP粒子群算法优化BP神经网络的多维回归预测
  • (zt)基于Facebook和Flash平台的应用架构解析
  • (二)springcloud实战之config配置中心
  • (翻译)Quartz官方教程——第一课:Quartz入门
  • (力扣)循环队列的实现与详解(C语言)
  • (十) 初识 Docker file
  • (四)库存超卖案例实战——优化redis分布式锁
  • (一)基于IDEA的JAVA基础10
  • (转载)(官方)UE4--图像编程----着色器开发
  • (最简单,详细,直接上手)uniapp/vue中英文多语言切换
  • .360、.halo勒索病毒的最新威胁:如何恢复您的数据?
  • .cfg\.dat\.mak(持续补充)
  • .L0CK3D来袭:如何保护您的数据免受致命攻击