简易Arduino机器人的制作
步骤1:准备
步骤2:
通常,机器人是虚拟的人工或机械代理,能够对环境做出反应并自主决定要实现特定目标的行动。这些角色将机器人与汽车或烤面包机等东西区分开来,因为它们无法感知环境。
机器人通常由电子电路或计算机程序控制。在这里,我拍了一张图,表明Arduino机器人的基本组成。
机器人平台是决定它的外观和功能的机器人主体。轮式平台是目前最常见的平台。与其他产品相比,它具有一些优势,例如相对较低的成本,丰富的选择以及简单的设计和构造。强烈建议对机器人初学者使用。
微控制器是机器人的大脑,因为它能够执行程序,并负责所有决策,计算和通信。 Arduino UNO和Romeo是用于DIY Arduino机器人的两种流行的微控制器。
电动机是可以将电能转换为物理运动的设备,而电动机驱动器则充当微控制器,电池和电动机之间的中间设备。它以所需的电压提供电流,并与微控制器一起工作,以使电动机适当地移动。
由于各种机电传感器,机器人具有感知周围环境的能力。例如,红外传感器可以帮助Arduino机器人检测自身与物体之间的距离,然后将该信息反馈给微控制器。制造线跟踪机器人需要灰度传感器。
在开始制造机器人之前,最好先了解一些基本工具。
第3步:基本工具
螺丝起子
螺丝起子,一种用于拧紧螺丝(驱动或卸下螺丝)的工具)对于构建机器人必不可少。我们建议您带一把螺丝起子,这对于处理不同类型和大小的螺丝非常方便。
吸锡笔
锡焊笔是电子项目中经常用于在电路板上进行焊接和去焊的工具。在这个项目中我们需要用它来焊接电动机的电缆。
注意:加热后,焊接笔的笔尖会变得非常热。如果您以前从未使用过电焊笔,请花一些时间来熟悉如何使用电笔。使用电焊笔时要当心!
针鼻钳
针鼻钳通常用于切断电缆和电线的多余长度。在这个项目中,我们不会使用过多的钳子;但是,它们是电子项目中必不可少的工具。
剥线钳
剥线钳是用于剥去电气绝缘层的手持式工具断线。如果需要,剥线钳也可以用剪刀代替。使用此工具时,只需要剥去第一层绝缘层即可,使内部的导线暴露在外。这有助于简化焊接过程。
步骤4:装配说明-步骤1
下一步,系统将教您建立一个基本的Arduino机器人。为了使本教程易于理解,此处以Arduino机器人套件(海盗:带有蓝牙4.0的4WD Arduino移动机器人套件)为例。
STEP1:组装自己的电动机
在零件袋中寻找八个长螺丝。这些用于将电动机固定和固定到位。正确对齐电机,然后将它们拧紧到位,如下图所示。
请注意,零件包中还包括垫圈和垫圈。垫圈可用于增加摩擦力,这有助于将电动机固定到位。垫圈有助于防止由于机器人的运动和碰撞而导致螺母松动和脱落。
步骤5:组装说明-步骤2:焊接电缆
将黑色和红色电线从零件袋中取出。将一根黑色和一根红色电缆(长15厘米)连接到每个电动机(总共4台电动机)。然后,使用剥线钳剥去电线两端的绝缘层(确保不要剥去太多–请参见下图)。接下来,将电线焊接到固定在电机上的插针上。对所有四个电机重复焊接过程。
注意:焊接时,请注意红色和黑色导线的正确位置。有关详细信息,请查阅以下图片。
步骤6:组装说明-步骤3:组装Romeo BLE控制器
在零件袋中寻找三个铜支撑。那些1厘米长的支架用于固定Romeo控制器板。如下图所示,控制器板上有三个孔。将三个铜支架放入孔中,然后用适当的螺钉将其固定到位。
步骤7:组装说明-步骤4:组装Romeo BLE控制器
取出两个沉头螺钉(它们的头是平的)。然后按照下图所示的步骤将电池固定在汽车底座上。
步骤8:组装说明-步骤5:制作电源开关
电池是机器人必不可少的命脉。为了控制电源使用,我们需要使用电源开关:不使用时,该开关会关闭电源,从而节省电和电池寿命。组装和安装电源开关之前,请参考下图。
组装开关时,请注意垫片和螺母的顺序。
组装开关后,我们要开始焊接其导线。取一些以前剩余的电线。剥去电缆两端的电线,使电线的内部裸露(与之前的电机相同)。我们想将电线的裸露端焊接到开关的引脚上。焊接时,务必注意开关的插针位置。
让我们逐步进行此操作。
a)将开关连接到电池充电器。注意这两个项目的确切位置。
b)如下图所示,焊接连接交换机和电池充电器的红色电缆。
c)最后,取一根红色电缆和一根黑色电缆。将一根电缆的一端连接到电池充电器的负极,另一根电缆的一端连接到电池充电器的正极。然后将两条电缆的另一端连接到Romeo BLE控制器上。
观看放大的图片,可以更好地了解电线的连接方式。焊接后,请确保从头到尾检查电池和Romeo控制器之间的接线是否一致,并与上述图片匹配。
步骤9:组装说明-STEP6:制作电源开关
使用八个M3x6mm螺钉,将侧板固定到前后保险杠板上,如图所示注意:在此步骤中拧紧螺钉时,请确保首先不要完全拧紧螺钉-这样,我们可以在以后的步骤中轻松卸下顶板,如果需要的话。进行调整。
然后,将底板重新安装到汽车车身上。
**这是汽车底座组装后的样子-记住要安装
步骤10:组装说明-STEP7:将电动机与微控制器板连接
现在我们需要电动机用微控制器板。仔细遵循下图:左马达的红线和黑线应焊接到M2中;正确的电动机的红线和黑线应焊接到M1。请特别注意电池组:黑色电线应焊接到接线端口的GND上,而红色电线应焊接在标有VND的电线端口中。用螺丝刀松开并拧紧电线端口-插入电线后,请确保将这些端口固定好。
注意:确保将来自一台电动机(即左电动机)的电线焊接到其中马达端口。 (即下图的M2端口-请勿将一根电动机的导线焊接到两个单独的端口中。)
将电动机的导线焊接到微控制器板上之后,我们准备将顶板连接到汽车的底座。
在安装顶板之前,您可以选择安装传感器板(请参见下图)-如果您尚不打算使用传感器,则可以跳过此额外步骤。 p》
在安装平台的顶部之后,您的机器人平台应类似于下图。
步骤11:组装说明-STEP8:在您的机器人上附加一个水平仪
找到基座顶板上的四个孔。拧入四个M3x60mm铜支架,然后如下图所示安装附加的顶板-使用M3x6mm螺丝将该板固定到铜支架上。
在机器人平台上扔一些轮子,您将
第12步:编码
组装好之后,是时候将代码上传到微控制器并使Arduino机器人移动了。一旦组装好,机器人便具有用于移动的所有组件。浏览名为“ MotorTest.ino”的Arduino文件的示例代码。
示例代码MotorTest:
#include
DFMobile Robot (4,5,7,6); // initiate the Motor pin
void setup () {
Robot.Direction (LOW,HIGH); // initiate the positive direction
}
void loop () {
Robot.Speed (255,255); //Forward
delay (1000);
Robot.Speed (-255,-255); //Back
delay (2000);
}
下载代码,然后将其上传到您的微控制器。电动机和车轮应迅速运转。如果没有,请检查电池和电源开关是否正确安装。电动机正常工作后,恭喜!您已经迈出了一大步-差不多要把橡胶放到路上了。
然后观察您的机器人汽车,检查它是否可以在1秒钟内前进并在1秒钟内后退。如果是这样,祝您好运。您无需调整组件。对于那些需要对汽车底座或马达进行一些调整的人,请找到以下有关机器人运动方式的信息。
检查您的机器人平台是否遵循上面显示的代码:它应该向前移动保持1秒钟,然后反转1秒钟。如果是这种情况,只需浏览以下内容,然后就可以开始了!
但是,大多数人都需要调整他们的电动机。在此之前,我们先简要回顾一下机器人的电机功能和代码如何工作。
步骤13:如何使机器人前进?
为了理解这个问题,我们首先检查一下机器人的向前运动。
下图说明了这种向前运动。
上方的红色箭头表示车轮的方向。如上图所示,只有在左右车轮/电动机都向前行驶时,汽车才能向前行驶。如上所示,Arduino机器人仅在左右电机和车轮都向前移动时才向前移动。
代码简介
第一行代码是:
#include//调用库
我们无需对此行进行过多思考。我们要做的就是调用/使用Arduino基本框架之外的一组功能-DFMobile库。有关Arduino库的更多信息,请访问Arduino网站。
下一行代码是:
DFMobile Robot(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值,我们可以调整汽车转弯的方向。
步骤14:如何调整机器人汽车的直线方向?
要调整电动机和车轮的方向,我们需要以下代码行:
Robot.Direction(LOW,HIGH);
功能如下:
Robot.Direction(LeftDirection,RightDirection);
此功能用于使电动机向前移动。该函数分为两个参数:LeftDirection和RightDirection,在Arduino代码中以LOW或HIGH形式编写。
之前,我们简要介绍了如何使Arduino机器人向前移动。在这里,我们将使用“低/高”来纠正机器人的向后移动。例如,在示例代码中,LeftDirection被设置为LOW。但是,机器人汽车的左轮可能会向后旋转而不是向前旋转。现在,您要做的就是将LeftDirection从LOW更改为HIGH。相同的方法适用于右轮。例如:在此示例代码中,LeftDirection被配置为LOW。假设您的左轮没有向前移动,而是向后移动。在这种情况下,请将LeftDirection的配置从LOW更改为HIGH。将其更改为“高”后,再次上传代码-您应注意,左轮现在向前移动而不是向后移动。如果此调整有效,请对RightDirection(从低到高,反之亦然)进行相同的操作。
成功调整Arduino机器人的方向后,就可以设置了!恭喜!您现在可以使用机器人的所有基本功能。不过,在结束之前,有必要简要地讨论一下Robot.Speed()函数。
对以下函数有所帮助:
Robot.Speed(LeftSpeed,RightSpeed) ;
此功能包含两个元素(LeftSpeed和RightSpeed),用于设置电动机的速度。您可以输入-255到255之间的数字。255是最大数字,负号表示方向。
此功能用于配置电动机的速度。该功能分为两个参数:LeftSpeed和RightSpeed。这些参数以Arduino代码编写,取值范围-255至255。255是前进速度最快的值;默认值为255。 -255是最快的速度(即反向)。
我们已经在代码的void setup()部分中配置了机器人的速度。现在,我们可以使用speed()函数来控制汽车的速度,甚至向前/向后的方向。
看看是否可以理解以下两行:Robot.Speed(255,255);机械手速度(-255,-255);
第一行显示了汽车以全速前进-如果可以的话,以全速前进(船长,是的)。第二行显示汽车以全速向后移动(倒车)。
从这个意义上说,speed()是必不可少的函数。接下来,我们将回顾最后一部分:机器人如何运动和旋转的原理。
步骤15:机器人如何运动和旋转
下图显示了机器人汽车的一些常规运动方式。例如,如果“左方向”的速度为零,那么如果您向右轮提供一些力向前移动,机器人将向左转。
下图显示了Arduino的多种方式机器人可以移动和转动。例如,如果左轮的速度设置为0,则将导致右轮向前移动-因此,Arduino机器人将向左旋转。
要考虑的事情:我们怎么能
最后:如果需要,您可以运行更多代码来测试和校准自己的机器人运动。打开“ MotorTest2.ino”文件。除了左右转弯之外,此代码还应帮助您更好地理解和评估前进和后退运动的能力。考虑到这一点,将那些轮胎放到道路(或地毯)上,让我们撕裂吧!
恭喜,现在您已经建立了第一个机器人!它具有基本功能,可以向前,向后,左转和右转。