基于单片机的智能扫地机器人

1 电路设计

1.1 电源电路

本电源采用两块LM7805作为稳压电源,一块为控制电路和传感器电路供电,另一块单独为电机供电。分开供电这样做的好处,有利于减小干扰,提高系统稳定性。
LM7805是常用的三端稳压器件,顾名思义05就是输出电压为5v,还可以微调,7805输出波纹很小。使用方便,用很简单的电路即可以输入一个直流稳压电源。它的输出电压恰好为5v,刚好是51系列单片机运行所需的电压,他有很多的系列如ka7805,ads7805,cw7805等,性能有微小的差别,用的最多的还是LM7805。外形如图2-1所示。1管 脚为输入端,2管脚为地,3管脚为输出.
在这里插入图片描述

图2-1 外形图及引脚排列

1.1.1 电路原理

由于后级电路需要1A左右的大电流用于驱动各类电机,查找后发现E13003完全满足这要求集电极最大允许电流ICM可以到达1.5A。由于13003开关管需要较大的驱动电流,因此增加了一个Q1三极管与其构成达林顿驱动管,Q3为控制管,当DY引脚为低电平同时总开关K1闭合时电源部分才能正常供电。DY为高电平时电机供电部分停止工作。
U4单独为两个减速电机和边刷提供5V电源,由于需要输出较大的电流,输入压降又比较大,因此在输入端加了一个分压电阻,降低U4上的电压,从而降低管耗。
U5为MCU和传感器电路提供稳定的5V工作电压。在正常开机后连续保持输出。电源电路如图2-2所示。
在这里插入图片描述

图2-2 电源电路

2 防撞电路

防撞电路作为扫地机器人的眼睛,用于检测前方是否有障碍物,当前方有障碍物时, 相应的探头所连接的电路会发出一个低电平信号给CPU, CPU做出相应的动作来控制两 个轮子的电机,使机身始终不撞向障碍物。
当红外线对管前方无障碍时,红外线接收管上的阻值加大,此时R27上的电压低于 基准电压,电压比较器反向输入端电压高于同向输入端,因此输出高电平。
当红外线对管处于有障碍时,红外线接收管上的阻值降低,此时R28上的电压高于
基准电压,电压比较器反向输入端电压低于同向输入端,因此输出低电平。
调节电位器R33、R35、R36、R7、R8、R9改变参考电压,可探测距离。防撞电路如图2-5。

在这里插入图片描述

图2-5 防撞电路

2.1 电源充电电路

电池充电电路用于检测充电座的位置和充电提示。
当扫地机器人上的红外线接收头接收到充电座发出的红外信号后,向CPU发出信号, CPU控制电机,调节机身位置,进入充电区。
当扫地机器人与充电座连接后,会产生一个信号提示CPU以开始充电。

2.2 驱动电路

电机驱动电路用于驱动两路减速电机的正反转、两路边刷和一个吸尘器风机。

2.2.1 电机驱动电路设计

L9110 是为控制和驱动电机设计的两通道推挽式功率放大专用集成电路器件,将分立电路集成在单片 IC 之中,使外围器件成本降低,整机可靠性提高。该芯片有两个 TTL/CMOS 兼容电平的输入,具有良好的抗干扰性;两个输出端能直接驱动电机的正反向运动,它具有较大的电流驱动能力,每通道能通过 750~800mA 的持续电流,峰值电流能力可达 1.5~ 2.0A; 同时它具有较低的输出饱和压降; 内置的钳位二极管能释放感性负载的反向冲击电流,使它在驱动继电器、直流电机、步进电机或开关功率管的使用上安全可靠。L9110 被广泛应用于玩具汽车电机驱动、步进电机驱动和开关功率管等电路上。

在这里插入图片描述
在这里插入图片描述
当Q3、Q4、Q5的基级接收到CPU的发出的高电平后,Q3、Q4、Q5饱和导通,边刷 和吸尘器电机开始工作。给低电平时,三极管所控制的电机就停止工作。J4、J5接边刷 电机,J6接吸尘器电机。
当1A与1B输入引脚为10时,电机正转,当输入为01时电机反转。当输入为11 或00时电机停止运行。
C5、C6为高频滤波电容,过滤掉电机工作时对芯片的干扰,提高系统稳定性。J3 接左轮电机,J7接右轮电机。

3 PCB板的设计与制作

3.1 PCB板的设计

Protel99SE是应用于Windows9X/2000/NT操作系统下的EDA设计软件,采用设计库管理模式,可以进行联网设计,具有很强的数据交换能力和开放性及3D模拟功能,是一个32位的设计软件,可以完成电路原理图设计,印制电路板设计和可编程逻辑器件设计等工作,可以设计32个信号层,16个电源–地层和16个机加工层[3]。
主电路板包含电源电路、电源充电电路、电机驱动电路和防撞电路(如图3-1)
在这里插入图片描述

图3-1 主板电路

4 外壳制作

4.1 有机玻璃

有机玻璃特性:
①高度透明性。有机玻璃是目前最优良的高分子透明材料,透光率达到92%,比玻璃的透光度高。称为人造小太阳的太阳灯的灯管是石英做的,这是因为石英能完全透过紫外线。普通玻璃只能透过0.6%的紫外线,但有机玻璃却能透过73%。
②机械强度高。有机玻璃的相对分子质量大约为200万,是长链的高分子化合物,而且形成分子的链很柔软,因此,有机玻璃的强度比较高,抗拉伸和抗冲击的能力比普通玻璃高7~18倍。有一种经过加热和拉伸处理过的有机玻璃,其中的分子链段排列得非常有次序,使材料的韧性有显著提高。用钉子钉进这种有机玻璃,即使钉子穿透了,有机玻璃上也不产生裂纹。这种有机玻璃被子弹击穿后同样不会破成碎片。因此,拉伸处理的有机玻璃可用作防弹玻璃,也用作军用飞机上的座舱盖。
③重量轻。有机玻璃的密度为1.18kg/dm3,同样大小的材料,其重量只有普通玻璃的一半,金属铝(属于轻金属)的43%。
④易于加工。有机玻璃不但能用车床进行切削,钻床进行钻孔,而且能用丙酮、氯仿等粘结成各种形状的器具,也能用吹塑、注射、挤出等塑料成型的方法加工成大到飞机座舱盖,小到假牙和牙托等形形色色的制品。

4.2 底板

先在30x30cm的有机玻璃上画一个直径为30cm的圆圈,钢丝锯选用最细的锯条, 沿着圆圈边缘线慢慢切割,最终切割出一个圆盘。
用打磨机将圆盘的外圈打磨至圆润光滑。

4.3 边框

将有机玻璃板切成四条的长方形,并进行拼接,制成长条。
将热风枪温度调制200度左右,均匀给有机玻璃加热,使其变软,变软后,将其弯成一个圆环。
制作好圆环后用有机玻璃专用的胶水粘合到底板上。

4.4 置灰盒

储灰盒底层由三层构成,地面一层为有机玻璃,上面分布着3排的洞,每排6个。中间一层为过滤网,顶层为四条有机玻璃粘合在边缘,起固定作用。
进灰口设计为45度角,这样做的好处为,灰进去后不会随机器的震动而洒出来。外形为长方体。

5 整机调试

经过电路设计、PCB的制作、电路调试、软件编程、外壳制作、整机调试等步骤后最终完成的设计。

5.1 存在的问题与解决办法

由于我们使用的是红外线接收头,太阳光中的红外线对红外线探头有着非常大的影响。 在进行防撞测试时正好是中午,阳光充足,因此单片机无法做出正确的判断,拉下窗帘后问题解决。
当扫地机进入充电区域后,无法正确的执行程序所编写的要求,始终保持在前进的状态。出现这种问题有两种的可能,一种硬件电路出现问题另一种是有子程序没有执行。 经拆机后发现充电信号线没有接入到主板上,连接上后,开机测试,问题解决。

5.2 系统缺陷

5.2.1 传感器缺陷

由于缺少适合的传感器,所有探头都采用红外线探头,因此光线对其存在严重干扰。因此该机器人不能在阳光直射的地方运行。

5.2.2 吸尘器功率缺陷

由于吸尘器电机最大功率只有2.5W,因此在吸尘的时候存在较大的缺陷,对于比较大的污物来说,洗除干净比较困难。

第七章 整机调试
经过电路设计、PCB的制作、电路调试、软件编程、外壳制作、整机调试等步骤后最终完成的设计。
7.1 存在的问题与解决办法
由于我们使用的是红外线接收头,太阳光中的红外线对红外线探头有着非常大的影响。 在进行防撞测试时正好是中午,阳光充足,因此单片机无法做出正确的判断,拉下窗帘后问题解决。
当扫地机进入充电区域后,无法正确的执行程序所编写的要求,始终保持在前进的状态。出现这种问题有两种的可能,一种硬件电路出现问题另一种是有子程序没有执行。 经拆机后发现充电信号线没有接入到主板上,连接上后,开机测试,问题解决。
7.2 系统缺陷
7.2.1 传感器缺陷
由于缺少适合的传感器,所有探头都采用红外线探头,因此光线对其存在严重干扰。因此该机器人不能在阳光直射的地方运行。
7.2.2 吸尘器功率缺陷
由于吸尘器电机最大功率只有2.5W,因此在吸尘的时候存在较大的缺陷,对于比较大的污物来说,洗除干净比较困难。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/27164.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Redis学习】Redis Docker安装,自定义config文件(包括RDB\AOF setup)以及与Spring Boot项目集成

【本文内容】 第1章:通过Docker安装Redis,并自定义config文件以及mount data目录。第2章:介绍Redis持久化到磁盘,有4种方式:RDB / AOF / NONE / RDB AOF。第3章:使用Server自带的redis-cli工具连接。第4章…

【3天快速入门WPF】13-MVVM进阶

目录 1. 窗体设置2. 字体图标3. 控件模板4. 页面逻辑4.1. 不使用MVVM4.2. MVVM模式实现本篇我们开发一个基于MVVM的登录页面,用来回顾下之前学习的内容 登录页面如下: 窗体取消了默认的标题栏,调整为带阴影的圆角窗体,左侧放一张登录背景图,右边自绘了一个关闭按钮,文本框…

PHP实现登录和注册(附源码)

前言 本博客主要讲述利用php环境实现一个简单的前后端结合的用户登录和注册功能。phpstudy是PHP调试环境的集成包,该程序包集成了 ApachePHPMySQLphpMyAdmin 等多个工具,是很好用的调试环境的程序集成包。 目录 前言 1. 准备工作 1.1 工具 1.2 php…

Redis数据结构-List列表

1.List列表 列表类型适用于存储多个有序的字符串(这里的有序指的是强调数据排列顺序的重要,不是升序降序的意思),列表中的每个字符串称为元素(element),一个列表最多可以存储2^32-1个元素。在R…

Redis 实战篇 ——《黑马点评》(下)

《引言》 (下)篇将记录 Redis 实战篇 最后的一些学习内容,希望大家能够点赞、收藏支持一下 Thanks♪ (・ω・)ノ,谢谢大家。 传送门(上):Redis 实战篇 ——《黑马…

WordPress二次开发实现用户注册审核功能

WordPress默认直接注册登录了,不需要任何验证,如果被批量注册就麻烦了,所以添加一个审核功能比较好。 注册用户默认需要手动审核,审核以后才能登陆,开启审核,可以有效防止用户批量注册。 这儿讲解一下如何…

基于SpringBoot的“青少年心理健康教育网站”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“青少年心理健康教育网站”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:SpringBoot 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 系统总体结构图 实体属性图 系统首页界…

湖仓一体概述

湖仓一体之前,数据分析经历了数据库、数据仓库和数据湖分析三个时代。 首先是数据库,它是一个最基础的概念,主要负责联机事务处理,也提供基本的数据分析能力。 随着数据量的增长,出现了数据仓库,它存储的是…

React:B站评论demo,实现列表渲染、删除按钮显示和功能实现、导航栏渲染切换及高亮显示、评论区的排序

功能要求: 1、渲染评论列表 2、删除评论功能:只显示自己评论的删除按钮;点击删除按钮,删除当前评论,列表中不再显示。 3、渲染导航Tab(最新 | 最热)和其 高亮实现 4、评论排序功能实现&…

springboot系列教程(三十一):springboot整合Nacos组件,环境搭建和入门案例详解

一、Nacos基础简介 1、概念简介 Nacos 是构建以“服务”为中心的现代应用架构,如微服务范式、云原生范式等服务基础设施。聚焦于发现、配置和管理微服务。Nacos提供一组简单易用的特性集,帮助开发者快速实现动态服务发现、服务配置、服务元数据及流量管…

python爬虫报错信息解决方法

今天遇到了这样一条报错: opt/conda/envs/python35-paddle120-env/bin/python /home/aistudio/work/main.py aistudiojupyter-10415006-8838159:~$ /opt/conda/envs/python35-paddle120-env/bin/python /home/aistudio/work/main.py Traceback (most recent call la…

如何快速的解除oracle dataguard

有些时候,我们为了使oracle dg的standby库另做他用,需要解除oracle dataguard数据同步。我本地因为standby库存储出现故障,导致dg存在问题,故需要解除。今天,我们通过使用部分命令,实现dg的快速解除。 1&a…

【告别双日期面板!一招实现el-date-picker智能联动日期选择】

告别双日期面板!一招实现el-date-picker智能联动日期选择 1.需求背景2.DateTimePicker 现状图3.日期选择器实现代码4.日期选择器实现效果图5.日期时间选择器实现代码6.日期时间选择器实现效果图 1.需求背景 在用户使用时间查询时,我们经常需要按月份筛选…

Git GitHub基础

git是什么? Git是一个分布式版本控制系统,用于管理源代码的变更。它允许多个开发者在同一个项目上协作,同时跟踪每个修改的历史记录。 关键词: 分布式版本控制软件 软件 安装到我们电脑上的一个工具 版本控制 例如论文&…

汽车无人驾驶系统中的防撞设计

一、系统方案介绍 无人驾驶汽车的防撞系统是保障行车安全的核心模块,本文设计的系统以STM32F103C8T6单片机为主控制器,结合超声波测距、WiFi通信、人机交互等模块,实现障碍物实时检测、动态阈值设置、多级报警和数据可视化功能。系统通过软…

深度学习笔记——线性回归的从0开始实现

记录学习到的知识: 语义分割是将标签或类别与图片的每个像素关联的一种深度学习算法。 它用来识别构成可区分类别的像素集合。 图像分割是一个端到端图像分析过程,它将数字图像分成多个片段,并对每个区域中包含的信息进行分类。三种图像分割…

神经网络 - 激活函数(ReLU 函数)

一、ReLU函数: ReLU(Rectified Linear Unit,修正线性单元),也叫 Rectifier 函数 ,是目前深度神经网络中经常使用的激活函数,ReLU 实际上是一个斜坡(ramp)函数,其定义为: 也即: Re…

(十 一)趣学设计模式 之 组合模式!

目录 一、 啥是组合模式?二、 为什么要用组合模式?三、 组合模式的实现方式四、 组合模式的优缺点五、 组合模式的应用场景六、 总结 🌟我的其他文章也讲解的比较有趣😁,如果喜欢博主的讲解方式,可以多多支…

【MySQL】事务二

事务二 1.数据库并发的场景2.读-写 2.1 3个记录隐藏字段2.2 undo日志2.3 模拟 MVCC2.4 Read View2.5 RR 与 RC的本质区别 3.读-读4.写-写 点赞???收藏???关注??? 你的支持是对我最大的鼓励,我们一起努力吧??? 关于事务的所有知识上篇博客我们都说过了&…

面向AI 的前端发展及初识大模型

AI带来的开发范式迁移 随着AI的涌现,对前端的发展也有着非常大的影响,总结过去前端的发展路径,目前应该属于又一次的大规模的开发范式迁移阶段。上一个阶段是从jquery到React/Vue/Angular迁移(jquery之前的就不讨论了&#xff09…