Jeffrey Cross
Jeffrey Cross

初学者机器人:了解简单传感器的工作原理

对于真正被认为是机器人的机器人,它必须能够感知并影响其环境。这就是为什么传感器对于机器人技术如此重要,并且了解如何使用它们来使机器人智能化对于任何崭露头角的机器人专家都至关重要。我最近推出了一个Kickstarter,我们实际上已经为我们销售的每个套件提供免费传感器,所以在它结束之前在这里查看!

在这个技能构建器中,我将引导您完成一个名为sense> think> act的机器人操作。这是一种广泛用于机器人的操作,是开始理解如何编程机器人的绝佳场所。让我们潜入......

选择一个传感器

有许多传感器可供感知,但我们使用HC-SR04超声波距离传感器,因为它便宜,简单,并广泛用于机器人(它也有一个非常方便的Arduino库)。

定义机器人模型

这个传感器可以检测距离,所以让我们从一个避免碰撞的简单机器人开始。这个机器人可以向前和向后移动并在任一方向上转动。机器人的正面是距离传感器。现在我们已经定义了我们的机器人,让我们开始研究如何让它表现出来。

什么是理智,思考,行动?

Sense,Think,Act是一个决策循环,可用于解决许多机器人问题,而​​且非常简单。在这种情况下,机器人必须检测前方是否有任何障碍物。然后必须考虑它是否可以向前推进,或者是否应该转向或反转,之后它将根据该决定采取行动。同样的逻辑可以应用于任何机器人,几乎任何行为都可以使用任何传感器。

要实际将其转换为我们可以编写以控制机器人的代码,我们需要更具体。让我们为机器人创建一个简单的行为,如下所示......

  1. 机器人会检测前方是否有任何障碍物小于3厘米。
  2. 如果没有障碍,它就向前移动。
  3. 如果有障碍物,它会向后移动。

这很容易转换成代码,但是你可能会意识到这会导致机器人在到达墙壁时“卡住”振荡。它会向前移动直到它检测到墙壁,然后向后移动直到它没有,然后再向前移动,依此类推。让我们以下面的方式修改行为。

  1. 机器人会检测前方是否有任何障碍物小于3厘米。
  2. 如果没有障碍,它就向前移动。
  3. 如果有障碍物,则向左转,然后返回步骤1。

这将持续到最终机器人找到一个在3厘米内没有墙的方向。

现在我们有一种感觉,思考,行动模式,可以帮助我们的机器人避开障碍。它不是一个特别复杂的模型,我们可以增加很多复杂性来改善避障。

即使有一个简单的机器人,非常复杂的感觉,思考,行为模型可以设计为创造非常聪明的行为。这是机器人技术的精髓 - 软件中的智能!

我们目前的行为效率有点低,因为机器人必须向左转三次,才向右转。让我们按照以下方式修改我们的行为,作为遵循上述三个步骤的第四步:

4.如果有障碍物,则向左转,然后返回步骤1。

  1. 机器人会检测前方是否有任何障碍物小于3厘米。
  2. 如果没有障碍,它就向前移动。
  3. 如果有障碍物,它会向左转并再次感觉到。
  4. 如果没有障碍物,它会向前移动并且循环重置。
  5. 如果有障碍物,它会向右转并再次感觉到。
  6. 如果没有障碍物,它会向前移动并且循环重置。
  7. 如果有障碍物,机器人会一直向右转,直到没有障碍物为止。

现在我们的机器人将检查两个方向以查看是否有墙,这意味着机器人将更有效地移动。请注意,即使简单的行为开始变得越来越复杂,但是如果我们将这种行为视为一系列Sense,Think,Act循环,那么它就会变得更容易理解!

你有它。我们采取了一个非常简单的Sense,Think,Act行为案例,并将其充实为一个有效的避障程序。将该行为转换为代码并开始使用机器人技术将是一项非常简单的任务!当然,您可以添加更多距离传感器,甚至不同类型的传感器,以使行为更加复杂。只记得把它分解为Sense,Think,Act,你就能够处理它。当然,如果您正在寻找包含数吨免费传感器的机器人套件,请查看我们的Kickstarter!

分享

发表评论