基于Arduino的扫地机器人

简介: 基于Arduino的扫地机器人

如何制作由Arduino驱动的扫地机器人

引言

欢迎再次来到我的有趣教程!在这个项目中,我制作了一个由Arduino驱动的扫地机器人,它的噪音比市面上的扫地机器人要小得多。这是一个简单但完全工作的干式扫地机器人,可以捡起地板上的杂物,如纸屑、头发、泡沫碎片、派对剩下的薯片碎片等!

我使用了任何人都能轻松获得的组件来制作这个机器人。如果你计划构建这个项目,我在这篇教程中提供了所有信息的详细步骤,以便任何人都可以构建并享受乐趣。

实物图:

工作原理

这个机器人的工作原理很简单。当电路打开时,机器人向前移动,HC-SR04传感器扫描任何障碍物。如果检测到任何障碍物,机器人会停止移动,轮子开始反向运转,然后恢复向前移动到其他方向。再次移动,直到检测到路径上的其他障碍物。与此同时,大部分地板区域将被覆盖。在整个过程中,风扇会一直开启,意味着它将不断吸收留在地板上的所有颗粒。

要清理收集到的杂物,你只需要抬起机器人,将其放在垃圾桶下并关闭风扇,所有杂物将自动掉落。

所需材料

以下是制作这个项目所需的材料清单:

  • Arduino Uno
  • 超声波传感器(HC-SR04)
  • L298N电机驱动模块
  • DC风扇、开关和电源
  • 坚固的纸板
  • 两个BO电机,带轮子
  • 两个18650电池
  • 带独立开关的电池座
  • 跳线线
  • 纸胶
  • 塑料网眼
  • 备用轮子
  • 钢片或牙签
  • 超级胶水和热熔胶
  • 烙铁和电线
  • Arduino IDE和编程线

请注意,这些是亚马逊联盟链接,通过这些链接购买产品,我可以获得一小部分佣金,但对您没有任何额外费用。

步骤1:框架

这是我们项目的重要部分,因为它支撑着所有的电子设备和机械装置。你可能会想为什么我使用纸板而不是其他材料,如木头?答案很简单,纸板并不像你想象的那么脆弱。我使用的纸板是从包装容器中回收的,为了确保强度,我使用了两层纸板,用纸胶粘合在一起。即使一层就能提供很好的强度,但我不想冒险!

我制作了两个纸板圆盘,后来用纸剪刀剪切,然后将这些单独的部件用纸胶粘合并完全干燥。一旦这部分完成,我就标记了风扇将放置的区域,并为轮子腾出了空间。你可以按照我使用的尺寸进行操作,否则你将不得不花费额外的时间来一次性正确完成所有事情。

步骤2:电路图和代码

为了让每个人都能理解电路,我将为每个组件提供逐步解释。有四个主要部分:超声波传感器、Arduino、电机驱动器和风扇部分。

超声波传感器或HC-SR04

  • VCC连接到Arduino的5V
  • GND连接到Arduino的GND
  • Trig连接到Arduino的引脚8
  • Echo连接到Arduino的引针9

Arduino Uno连接到电机驱动器和电池

  • Vin引脚连接到驱动器的5V引脚
  • Gnd连接到驱动器的Gnd
  • 12V引脚连接到驱动器的正引脚

L298N电机驱动器连接到Uno

  • IN1(in21)连接到Arduino的D4
  • IN2(in22)连接到D5
  • IN3(in23)连接到D6
  • IN4(in24)连接到D7
  • ENA(enA)连接到D10,ENB连接到引脚D11
  • GND连接到Arduino的GND
  • VCC连接到电池正极
  • 电机1输出连接到电机1
  • 电机2输出连接到电机2

风扇

  • 我们使用的DC风扇需要12V才能以最大功率运行。由于我直接使用风扇而没有任何速度控制器,我将使用7.4V的电池源。要进行连接,你只需将电池连接到DC风扇,并添加一个简单的开关来控制开和关。

这完成了电路部分,现在将USB连接到Arduino并打开IDE,复制并粘贴以下代码,然后点击上传。代码上传完成后,从板上断开USB并进行下一步。

步骤3:吸尘风扇和前轮

在我们准备好框架后,我将从风扇部分开始。这个DC风扇使用无刷电机,非常快,所以它的路径上不应该有任何障碍物。为确保这一点,我在框架上打了一个略大于风扇大小的孔,用胶水将风扇主体固定在框架上,并密封风扇主体上的任何多余孔洞。

对于移动,我们有两台BO电机控制前后左右移动。这台机器人不可能只靠两个轮子保持稳定,所以我们需要一个额外的轮子。为了不使这个机器人变得越来越复杂,我决定使用一个简单的轮子,安装在前部。我有一个轮子,在中间加了一根牙签,以平滑移动。这根棍子的两端用超级胶水固定,然后用热熔胶固定。

步骤4:添加电路

当你处理电路时,需要记住的一件事是,要将电路牢固地固定在基座上。这是因为当我们处理更多的电路连接时,错过一个或多个连接的可能性更大,寻找那个缺失的连接将花费你一些时间。

在我的项目中,我将框架的大小做得恰到好处,以便一切都能适应。我将首先用双面胶粘合Arduino Uno。现在将BO电机添加到基座上,并用热熔胶粘合,确保胶水不要太热,这可能会使电机框架变形。将轮子添加到电机轴上,并对另一侧重复相同的操作。

在底部,我将为风扇添加电源。你可以看到我已经将两个电池串联起来,并通过开关连接到风扇,用拉链带固定。

步骤5:吸尘筒

这是从地面收集杂物的重要部分。你可能会想,为什么这个看起来这么简单,它如何收集杂物?正如我之前所说,DC风扇足够强大,可以从地板上吸入所有轻质材料,一旦它捡起物体,物体就会悬浮在空中。现在我们需要一些东西将物体留在某个地方。这将由一个带有多个孔的塑料网眼来处理,这些孔可以过滤杂物并允许正常空气流动,因此不会干扰DC风扇的功能。

我用纸板制作了一个圆柱体,并用网眼密封了一端,另一端用热熔胶粘合到框架上。

步骤6:完成和测试

在完成所有步骤后,确保所有部件都固定在框架上,没有松动的电线。这是因为机器人在工作时会经历大量的运动。将电池插入机箱,首先打开吸尘风扇开关,然后打开主电路开关。在工作室测试时,我将手放在传感器前,汽车向后移动,所以在它的路径上我放了一些纸屑。如果你像我一样制作了一切,纸屑将被风扇吞噬。

这个项目终于像它应该的那样工作了,你可以尝试掉落一些轻质物体,如泡沫碎片或头发,看看这个机器人的魔力。由于在电路和风扇中使用了大容量电池,它提供了很好的备份,所以你可以信任这个机器人来清理地板上的大部分杂物。

请注意,这个机器人只能捡起轻质物体,不能捡起液体或更大的物体!

希望你喜欢这个项目,并在构建过程中找到乐趣!如果你有任何问题或需要帮助,欢迎在评论区交流。

作者:Svan.


注意:本博文为不得在未经本人同意进行转载或者二次创作,违者必究!!!


目录
相关文章
|
6月前
|
机器学习/深度学习 机器人
马尔可夫决策过程与贝尔曼方程在扫地机器人中的应用(求解状态值和最优状态值函数和策略)
马尔可夫决策过程与贝尔曼方程在扫地机器人中的应用(求解状态值和最优状态值函数和策略)
84 0
|
6月前
|
算法 机器人 Python
动态规划法在扫地机器人中的实战应用(基于动作值函数的策略迭代 python 附源码)
动态规划法在扫地机器人中的实战应用(基于动作值函数的策略迭代 python 附源码)
82 0
|
6月前
|
机器学习/深度学习 算法 Python
动态规划法和策略迭代在扫地机器人中确定状态值和动作值函数的策略评估(python实现 附源码 超详细)
动态规划法和策略迭代在扫地机器人中确定状态值和动作值函数的策略评估(python实现 附源码 超详细)
75 0
|
1月前
|
传感器 人工智能 机器人
基于Arduino的泡茶机器人
基于Arduino的泡茶机器人
35 1
|
1月前
|
机器人
基于Arduino的自弹尤克里里机器人(下)
基于Arduino的自弹尤克里里机器人(下)
29 0
|
1月前
|
机器人
基于Arduino的自弹尤克里里机器人(上)
基于Arduino的自弹尤克里里机器人(上)
30 0
|
1月前
|
传感器 算法 机器人
基于Arduino的3D打印六足机器人
基于Arduino的3D打印六足机器人
34 0
|
1月前
|
机器人
lanqiao OJ 199 扫地机器人
lanqiao OJ 199 扫地机器人
14 0
|
6月前
|
传感器 监控 安全
【全3D打印坦克——基于Arduino履带式机器人】
【全3D打印坦克——基于Arduino履带式机器人】
261 1
|
6月前
|
人工智能 算法 机器人
【Python数据结构与算法】--- 递归算法的应用 ---[乌龟走迷宫] |人工智能|探索扫地机器人工作原理
【Python数据结构与算法】--- 递归算法的应用 ---[乌龟走迷宫] |人工智能|探索扫地机器人工作原理
70 0