电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>Arduino清洁机器人和房间映射

Arduino清洁机器人和房间映射

2022-10-31 | zip | 0.27 MB | 次下载 | 免费

资料介绍

描述

这个项目将指导你从头到尾构建这个机器人,如果不够详细,请给我留言,我有空时会更新项目。

制造这辆车后你将学到什么:

- 步进电机的工作原理以及如何在没有库的情况下手动向步进电机发送信号。

- 如何同时旋转多个步进电机。

- 将 arduino 数字引脚分配扩展到无限制的引脚数 :)

- 在 c++ 中使用类和指针的一些技术。

第 1 部分:组装车身

这辆车的设计很简单,如果你有一台 3d 打印机,那么你可以分开打印部件(这是在 220x220 3d 打印上打印的设计),如果你没有,你可以用丙烯酸树脂和手工工具制造它.

组装车轮:

poYBAGNY3vOABT6jAACKusAZHCc111.png
 

车轮尺寸为 40 毫米,您应该购买一些具有橡胶的相同直径的车轮,取出橡胶并组装到该车轮上,或者您可以使用该车轮进行一些修改以适应汽车。

组装垃圾箱:

垃圾箱到地面的距离约为 5 毫米,我建议你购买硅胶来连接底部垃圾,比如这个:

组装清洁棒:

只需在杆上钻孔并使用 502 胶水,如果您有 3D 打印机,则更容易。

pYYBAGNY3vmAK0vJAAD8HvnmvBQ183.png
 

可选:这辆车被设计为使用传感器,但如果你想使用物理切换图片中红色的工艺添加项目,

pYYBAGNY3vyAIqm5AACNyY9dw3o028.png
 

第 2 部分:电气接线

这是电气设计:https://oshwlab.com/tungbuivn/home-cleaner-bot

印刷电路板:

pYYBAGNY3v6AE0-7AAE463SqCvE400.png
 

组件和说明

工作原理:电源通过二极管和 uln2003 为步进电机提供电源,所有其他电源将通过 lm2596 为其余电气元件提供 5v。

成分及原因

为什么要使用步进电机?是的,使用步进电机将使您能够以您想要的准确角度控制汽车旋转轮,距离相同,您可以准确地移动汽车。但正如您在上面的短视频中看到的那样,速度很慢,28byj-48 的最大转速为 15rpm,视频中的速度为 7rpm。

lm2596:我用这个代替lm7805,因为如果你将传感器连接到endstop,电路会消耗更多的电量,lm7805会很快变热,无论它以500ma运行,但lm7805比lm2596更稳定,使用lm7805或lm2596取决于你的决定:)

原理图中的每个uln2003都有空闲的3pin,为什么不使用呢?是的,你可以试着给它接线,但我的,似乎 uln 2003 不能提供足够的功率来驱动电机。

传感器终点站设计为使用 IR-LED 和光电二极管,但您可以将 LDR 与激光灯一起使用,或者您认为它应该工作的任何东西。您可以搜索 hackster 以查找有关使用 IR-LED 和光电二极管的更多信息

Arduino 引脚连接

D2-D7:这将连接到 SRF05 传感器,这是汽车的眼睛。

D9 (PE1) : 送高电平信号给传感器供电,送低电平切断

A0-A3 (E1,E2,E3,E4):end-stop 的信号将发送到此引脚以通知 end-stop 状态。

D11-D13:此引脚用于控制 74HC795

头针连接

CN9:这是电源12V

CN10,CN11,CN12 用于连接 SRF05 或 SRF04 传感器

CNE1,CNE2,CNE3,CNE4 用于连接步进电机的末端停止

CN13 用于连接直流 5v 电机进行清洁工作

CN1、CN2、CN3、CN4、CN5、CN6、CN7、CN8 用于连接步进电机。

铣削PCB

pcb 设计为 2 层,但您可以用 1 层铣削它并将连接线焊接到另一侧。

如果您选择在孔 PCB 上焊接,它会更大更复杂:)

第 3 部分:编写代码来控制汽车

应用结构:

我们的主要汽车对象将包含几个子类,包括:

Driver Engine:将包含驱动汽车的代码,driver 将包含所有的车轮和眼睛,它将处理旋转和移动,例如:如果您想像现实世界的汽车一样移动汽车,那么您将实现 driver 来控制车轮。该对象还包含车轮归位位置的代码。在我的源代码中,我实现了全轮驱动引擎,如果你想控制真车,你需要实现其他类的前轮或后轮,但它更难,你需要一些知识汽车转向计算用于驱动汽车的每个车轮的旋转角度。

眼部经理:这辆车有三只眼睛,所以我们需要控制我们当时想用哪只眼睛,需要决定下一步要去哪里。

A:清洁机器人

我们的机器人会从 zizac 线开始打扫房间,在线结束后它会找到向左移动的路,如果找不到路则清洁完成。如果它可以左转,那么它将设置下一个目标方向为右并重新启动循环清洁。这很简单,对吧?:D

B:映射机器人

这还没有实现,但如果你想做一个,这里有一些建议。

我们知道的第一件事是:

在您打开汽车时,它的位置将是 (x,y)=(0,0) 并且无论汽车移动或左转或右转,您总是有它移动的距离和旋转角度,即意味着您始终拥有汽车的坐标,因此,我们拥有我们称之为 FreePoints 的积分集合

任何汽车改变它的方向,这意味着我们将计算前方的坐标,阻止汽车移动,所以我们有第二组点,我们称之为 WallPoints。

从上面的两组数据中,您将使用 delaunay 算法从 FreePoints 和 WallPoints 构建房间的平面,因此理论上,您可以随时将汽车从任何点移动到任何目的地点。

如果您已经拥有房间地图,您将需要参考一些寻路算法(例如 NPC 可以在游戏中从 A 移动到 B :))来控制汽车。

这是一些参考代码,它很小

https://github.com/mapbox/delaunator

 


下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费