电路

如何构建机器人 - 第2课:构建基本的Arduino机器人:19个步骤

Я обалдел!!! Письмо от Китайского Деда Мороза ))))

Я обалдел!!! Письмо от Китайского Деда Мороза ))))

目录:

Anonim

在第一课(如何构建机器人 - 简介)之后,您现在已经了解了Arduino机器人的基本知识,构建机器人所需的内容以及如何使用这些工具。现在,是时候开始制作了!

在第二个教程中,您将学习如何构建一个基本的Arduino机器人。为了使本教程易于理解,此处使用Arduino机器人套件(Pirate:带蓝牙4.0的4WD Arduino移动机器人套件)作为示例。

课程菜单:

第1课:简介

第2课:构建一个基本的Arduino Robo

第3课:构建线跟踪Arduino机器人

第4课:构建一个可以避免障碍的Arduino机器人

第5课:构建具有光和声效果的Arduino机器人

第6课:构建一个可以监控环境的Arduino机器人

第7课:构建蓝牙控制的Arduino机器人

装配说明

第1步:组装自己的电机

在零件袋中查看八个长螺钉。这些用于将电机固定和固定到位。将电机正确对齐,然后将它们拧到位,如下图所示。

请注意,零件袋中还包括垫圈和垫圈。垫圈可用于增加摩擦力,这有助于将电机固定到位。垫圈有助于防止螺丝螺母因机器人的运动和碰撞而松动和脱落。

供应:

步骤1:

第2步:焊接电缆

将黑色和红色电线从零件袋中取出。将一根黑色和一根红色电缆(15厘米长)连接到每个电机(总共4个电机)。然后用剥线钳剥去电线两端的绝缘层(确保不要剥离太多 - 请参考下图)。接下来,将电线焊接到固定在电机上的引脚上。对所有四个电机重复焊接过程。

注意:焊接时请注意红色和黑色线的正确位置。有关详细信息,请参阅以下照片。

第2步:

第3步:组装Romeo BLE控制器

在零件袋中查看三个铜支架。这些1厘米长的支架用于固定罗密欧控制器板。如下图所示,控制器板上有三个孔。将三个铜支架放入孔中,然后用适当的螺钉将它们固定到位。

第3步:

第4步:组装电池盒

取出两个沉头螺钉(它们的头部是平的)。然后按照下图所示的步骤将电池固定在汽车底座上。

第4步:

第5步:制作电源开关

电池是机器人必不可少的生命线。为了控制电源使用,我们需要使用电源开关:开关在不使用时关闭电源,从而保持电力和电池寿命。在组装和安装电源开关之前,请参阅下图。

组装开关时,请注意垫圈和螺母的顺序。

第5步:

组装好开关后,我们要开始焊接它的电线。从之前的剩余电线剩余部分。剥去电缆两端的接线,使电线内部露出(与之前的电机相同)。我们希望将导线的裸露端焊接到开关上的引脚。焊接时,注意开关引脚的位置非常重要。

第6步:

让我们一步一步来做。

a)将开关连接到电池充电器。注意两个项目的确切位置。

第7步:

b)焊接连接开关和电池充电器的红色电缆,如下图所示。

第8步:

这是另一张让事情更清晰的图片。

c)最后,取一根红色电缆和一根黑色电缆。将一根电缆的一端连接到电池充电器的负极,将另一根电缆的一端连接到电池充电器的正极。然后将两根电缆的另一端连接到Romeo BLE控制器。

第9步:

c)最后,取一根红色电缆和一根黑色电缆。将一根电缆的一端连接到电池充电器的负极,将另一根电缆的一端连接到电池充电器的正极。然后将两根电缆的另一端连接到Romeo BLE控制器。

第10步:

查看这张放大的图片可以让您更好地了解如何连接电线。焊接后,请务必检查电池和Romeo控制器之间的接线是否始终如一,并与上述图片相符。

第6步:组装汽车基地

使用八个M3x6mm螺钉,将侧板安装到前后保险杠板上,如下图所示。

注意:在此步骤中拧紧螺钉时,请确保首先不要完全拧紧螺钉 - 这样,如果我们需要进行调整,我们可以在以后的步骤中轻松拆下顶板。

第11步:

然后,将底板重新安装到汽车车身上,如下图所示。

第12步:

**这是汽车基地组装后应该喜欢的 - 记得要安装电池组!

第7步:将电机与微控制器板连接

现在我们需要带微控制器板的电机。请仔细按照下图:左侧电机的红色和黑色电线应焊接到M2中;正确的电机的红色和黑色电线应焊接到M1。特别注意电池组:黑色电线应焊接到读取GND的电线端口,而红色电线应焊接在标有VND的电线端口。使用螺丝刀松开并拧紧电线端口 - 确保在插入电线后将这些端口固定好。

注意:确保来自一个电机(即左电机)的电线焊接到电机端口。 (即下图中的M2端口 - 不要将一个电机的电线焊接到两个独立的端口。)

第13步:

将电机线焊接到微控制器板后,我们准备将顶板连接到汽车底座上。

在我们连接顶板之前,您可以选择安装传感器板(参见下图) - 如果您还不打算使用传感器,则可以跳过此额外步骤。

第14步:

在连接平台顶部后,您的机器人平台应该类似于下图。

第15步:

第8步:为机器人附加一个额外的水平

找到底座顶板上的四个孔。拧入四个M3x60mm铜支架,然后如下图所示安装附加顶板 - 使用M3x6mm螺钉将板固定到铜支架上。

第16步:

在你的机器人平台上扔一些轮子,你准备好让它鞭打!

第17步:

编码

组装完成后,是时候将代码上传到微控制器上,让Arduino机器人移动。机器人具有组装后移动的所有组件。查看标题为“MotorTest.ino”的Arduino文件的示例代码。

示例代码MotorTest:

#包括

DFMobile机器人(4,5,7,6); //启动电机引脚

void setup(){

Robot.Direction(LOW,HIGH); //启动积极的方向

}

void loop(){

Robot.Speed(255,255); //向前

延迟(1000);

Robot.Speed(-255,-255); //背部

延迟(2000年);

}

下载代码,然后将其上传到您的微控制器。电机和车轮应该匆忙运转起来。如果没有,请检查您的电池和电源开关是否安装正确。一旦马达工作,恭喜!你已经完成了一大步 - 现在几乎是时候让我们的橡胶上路了。

然后观察你的机器人汽车并检查它是否可以在1秒内向前移动并在1秒内向后移动。如果是这样的话,好运。您无需调整组件。对于那些需要对汽车底座或电机进行一些调整的人,请找到有关机器人如何移动的以下信息。

检查您的机器人平台是否遵循上面显示的代码:它应该向前移动1秒,然后反向1秒。如果是这种情况,只需浏览下面的内容,然后就可以开始了!

然而,大多数人需要对其电机进行调整。在我们这样做之前,让我们简要回顾一下我们的机器人的运动功能和代码是如何工作的。

如何使机器人前进?为了理解这个问题,让我们首先检查一下机器人的前进动作。

下图说明了这种向前运动。

第18步:

上面的红色箭头表示车轮的方向。如上图所示,只有当左右轮子/马达都向前移动时,汽车才能向前移动。如上所示,当左右马达和车轮都向前移动时,Arduino机器人仅向前移动。

代码提要

第一行代码是:

#include //调用库

我们不需要过多考虑这条线。我们所做的只是调用/使用一组函数 - DFMobile库 - 存在于Arduino的基本框架之外。有关Arduino库的更多信息,请访问Arduino网站。

下一行代码是:

DFMobile机器人(4,5,7,6); //启动电机引脚

此功能取自DFMobile库(即,它不是通用的Arduino函数)。我们在这里使用它来初始化微控制器上的电机引脚(4,5,7,6) - 如果没有这个,电机将无法启动。

我们稍后也将使用此功能。

看看下面的功能:

DFMobile机器人

(EnLeftPin,LeftSpeedPin,EnRightPin,RightSpeedPin);

该功能用于初始化四个电机引脚(4,5,7,6),并分为四个独立的参数:

EnLeftPin:控制左电机方向的引脚

LeftSpeedPin:控制左电机速度的引脚

EnRightPin:控制正确电机方向的引脚

RightSpeedPin:控制正确电机速度的引脚

请注意:如果没有此功能,机器人的电机将无法运行。此外,此函数必须放在Arduino草图的void setup()字段中。

在测试你的机器人的前进动作之前,我们可能遇到了一个问题:汽车将开始漂移,改变方向并且不完全遵循我们给出的代码。这是由于电动机电线没有以正确的方式焊接到电池上。

别担心 - 我们可以通过代码纠正这个问题。通过使用LOW / HIGH值,我们可以调整汽车转弯的方向。

如何调整机器人车的直线方向?

要调整电机和车轮的方向,我们需要以下代码:

Robot.Direction(LOW,HIGH);

功能如下:

Robot.Direction(LeftDirection,RightDirection);

该功能用于使电机向前移动。该函数分为两个参数:LeftDirection和RightDirection,它们在Arduino代码中写为LOW或HIGH。

之前,我们简要介绍了如何让Arduino机器人向前移动。在这里,我们将使用LOW / HIGH来校正机器人的任意移动。例如,在示例代码中将LeftDirection设置为LOW。但是机器人车的左轮可以向后旋转而不是向前旋转。现在,您所要做的就是将LeftDirection从LOW更改为HIGH。相同的方法适用于右轮。

例如:在此示例代码中,LeftDirection配置为LOW。假设你的左轮,而不是向前移动,而不是向后移动。在这种情况下,将LeftDirection的配置从LOW更改为HIGH。一旦你将它改为HIGH,再次上传你的代码 - 你应该注意到你的左轮现在向前移动而不是向后移动。如果此调整有效,请对RightDirection执行相同操作(从低到高,反之亦然)。

一旦你成功调整了Arduino机器人的方向,就可以了!恭喜 - 您现在可以使用所有机器人的基本功能。不过,在完成之前,简要讨论Robot.Speed()函数是值得的。

请看以下功能:

Robot.Speed(LeftSpeed,RightSpeed);

具有两个元素(LeftSpeed和RightSpeed)的此功能用于设置电机的速度。您可以写一个介于-255和255之间的数字.255是最大数字,减号代表方向。

该功能用于配置电机的速度。该功能分为两个参数:LeftSpeed和RightSpeed。这些参数以Arduino代码写入,范围为-255到255. 255是最快的前进速度; -255是向后移动的最快速度(即,反转)。

我们已经在代码的void setup()部分配置了机器人的速度。现在,我们可以使用speed()函数来控制汽车的速度甚至前进/后退方向。

看看你是否能理解以下两行:

Robot.Speed(255,255);

Robot.Speed(-255,-255);

第一行显示汽车以全速向前行驶 - 前进全速,如果你愿意的话(aye aye,船长)。第二行显示汽车以全速向后移动(倒车)。

从这个意义上说,speed()是不可或缺的功能。接下来,我们将回顾我们的最后一节:机器人如何移动和转动的原理。

机器人如何移动和转动

下图显示了机器人汽车的一些常规运动方式。例如,如果左方向的速度为零,如果向右侧车轮提供向前移动的力,机器人将向左转。

下图显示了Arduino机器人可以移动和转动的多种方式。例如,如果左轮的速度设置为0,那将导致右轮向前移动 - 因此,Arduino机器人将向左转。

第19步:

需要考虑的事项:我们如何让机器人在静止时旋转?

最后:如果您愿意,您可以运行更多代码来测试和校准您自己的机器人的运动。打开“MotorTest2.ino”文件。除了左转和右转之外,此代码还可以帮助您更好地理解和衡量前后移动的功能。考虑到这一点,将这些轮胎放在路上(或地毯)并让它们撕裂!

恭喜,现在你已经建立了你的第一个机器人!它具有可以向前,向后,向左转和向右转动的细菌功能。

感觉非常激动?在接下来的几个教程中,我们将教您如何构建一个更先进的机器人,例如可以避开障碍物和跟踪线。