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

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

3天内不再提示

Arduino探索漫游车2—电子设备与布线

费加罗 来源:DevicePlus 作者:DevicePlus 2023-03-01 11:22 次阅读

这篇文章来源于DevicePlus.com英语网站的翻译稿。

pYYBAGPzFD2AFaHcAAIGdy2_3g0625.jpg

poYBAGPzFD-AKXWVAALHsohfjFk789.jpg

欢迎回到ArduRover系列的第二部分!在Arduino 探索漫游车1—底盘中我们构建了一个可以在崎岖地形行驶的六轮驱动大型越野机器人。在本文中,我们将把重点放在电子设备上——我们需要大量的传感器,巨型电池以及一些无线控制的工具。好,让我们开始吧!

硬件

• 第一部分制作的ArduRover底盘

• 12 V 铅酸电池(容量越大越好,我使用的是8.5Ah)

• Arduino Mega

• 带SPI接口SD卡模块

• 带串行接口的GPS模块

• 带串行接口的VC0706 JPEG相机

• 2x 9 g 微型伺服器

• 2x Pololu VNH5019 电机驱动器(驱动模块,非开发板)

• ROHM 传感器评估套件

• LoRenz 开发板 + SX1278模块

• 将所有设备连接在一起的电缆和跨接线

工具

3D 打印机(推荐

3D打印部件

• 相机支架–可在Thingiverse上获取

• 传感器盒–可在Thingiverse上获取

在进行布线之前,我们需要一个地方安置所有的电子设备—最好是一些防水的盒子。为了把这些盒子安装到底盘上,我们需要一些辅助零件。那么,就让我们回到车库去来制作这些东西吧。完成后,我们还需要对底盘做一些最后的调整。

第六步:安装电子设备的支架

在上一篇文章中,我详细介绍了用铝型材制作部件的过程,所以在本文中,我就将这一部分做一下简短介绍。毕竟,这些支架本身也都比较简单:它们由与控制臂相同的U型材制成,并且有两个10mm的孔,可将其滑动到两个10mm的中央螺纹杆上。下图是支架的照片:

pYYBAGPzFEGAXCloAAFSWj92pnM790.jpg

图1:放置电子设备盒的支架

这是将支架安装到底盘后的样子,两侧均用一个M10螺母将其进行固定,为电子设备和电池提供了一个稳定而坚固的平台。

poYBAGPzFEOAbEbeAAE1d8qwKuM143.jpg

图2:安装在框架上的支架

您可能已经注意到了,我没有提供支架的设计图纸。那是因为您可能会使用不同的盒子来放置电子设备。比如,我使用的盒子尺寸是105 x 170 x 112 mm,所以我的支架长170mm,两端有两个4mm的孔。您需要在这里进行一些自定义的设计,并且对方案进行调整来满足自己的需求。尽管如此,我还是建议您使用具有较高IP编码的盒子。IP编码代表的是防尘等级(第一个数字)和防水等级(第二个数字)。例如,我的盒子防护等级是IP65,这就意味着6级固态颗粒防护(防尘外壳)以及5级液体侵入防护(外壳可防喷水)。除了机器人要浸没入大量水体中(或者驶入洗车间)的情况,我想这个等级就足够了。

poYBAGPzFESANcm1AAELWiX7isc257.jpg

图3:我用来装电子设备的IP65盒

第七步:底盘的最后调整

由于我们的机器人将在自然环境中进行移动,如果它安装有一些传感器来测量周边环境的所有特征,那就太酷了。为了达到这个目的,我将使用ROHM 传感器评估套件,可以帮助我们更加容易的实现对环境中物理特性的感知。用于各个传感器的Arduino库可以点击下面的链接下载。在本项目中,我将使用以下传感器:

• BM1422GMV– 磁力计

• RPR-0521RS – 环境光传感器

• KX022-1020 – 加速度计

• BM1383GLV – 压力传感器

• ML8511A – 紫外线传感器

• BD1020HFV – 温度传感器

但是有一个问题:所有传感器都被设计为在插入开发板上的接口后工作。因为在密封盒子内的开发板将会被封闭,这样一些传感器,比如紫外线传感器,将无法测量出任何有意义的物理量。另外,诸如加速度计和磁力计这样的传感器需要安装在一个很稳定的平台上,如果仅仅将其插入开发板中,它们往往会发生大幅度的前后移动,这将会严重影响这些传感器的测量性能。

解决这些问题的方法很简单。我们只需要一些用于这些传感器的外壳即可,某种可以轻松地安装在底盘任何部位,并且可以提供足够的覆盖力却又不阻碍感知我们想要测量的环境特征的东西。这就是为什么我为所使用的传感器设计了这些小外壳的原因。它们可以通过任何3D打印设备轻松的制造出来。关于这些小外壳的更多信息,请参加另一篇文章:ROHM传感器评估套件的3D打印案例。

pYYBAGPzFEeAZKULAACD6t1_Giw353.jpg

图4:传感器外壳

另一个需要这种外壳的部件是相机。我们也想把相机固定起来,这也是用9g伺服器的原因。起初,我想使用一种可以在网上找到的便宜的相机支架。事实证明这浪费了5美元,因为这个支架在我第一次不小心撞到它时就折成了两段。我没有打算再买一个碰碰运气,而是选择自己来完成设计然后用3D打印制作出来!这次制作出的产品比第一个坚固得多,我们可以在它的辅助下拍到一些不错的照片了。

poYBAGPzFEiAR_1BAAC0zBR4Zf4289.jpg

图5:相机支架

该模型的相关文件都可以在Thingiverse上获取,所以,如果您在任何项目中需要一个小尺寸、坚固的相机支架,就通过3D打印来制作一个吧!

当然,所有传感器和相机必须固定在某些地方。我决定将它们安装在一个3mm方形亚克力板上,它位于框架前方的顶部。然后,我们将传感器的电缆连接到放置在它们正后方的电子设备盒中。

pYYBAGPzFEqAB_v9AAEirq0ROhI487.jpg

图6:没有相机时传感器的安装细节这些标注分别显示的是特定情况下使用的传感器

pYYBAGPzFEyANd72AAEAy8gQ4Bc704.jpg

图7:传感器和相机的最终安装位置

您最后可能还要调整和更改抑制器的强度。因为我使用的是大型铅酸电池,所以大部分重量会集中在最后的一对悬架上。为了弥补这一点,我将最后一对抑制器设置为最高强度,第一对设置为最小强度,中间的设置为中等强度。

poYBAGPzFE6AMwFWAAF4I70R4E0849.jpg

图8:设置为最高强度的抑制器(上)和设置为最低强度的抑制器(下)

该步骤取决于您所使用的电池型号。如果您的电池足够轻,可能就没必要更改抑制器强度。但是,我的电池比较庞大:具有8.5Ah的容量,重量达2.7 kg (5.95 lbs)。这是一个反复试验并纠错的过程,所以您需要做的就是把电池放到底盘上,然后修改设置,反复几次后看看哪种设置的效果最好。理想情况下,底盘在一个平整的表面应该是水平状态,不应有向前或向后的倾斜。

第八步:连接逻辑端

现在要介绍的是本文中最具挑战性的部分:将逻辑端、传感器和Arduino连接在一起。即使我们使用两个开发板(LoRenz开发板和ROHM传感器评估套件扩展板),还是有许多模块需要连接。这里显示的是接线的Fritzing示意图。请注意,ROHM扩展板没有显示在示意图中,因为它会覆盖其他大部分的连线。

poYBAGPzFFCAT5CYAAKMOtEZheA672.jpg

图9:逻辑端连线的Fritzing示意图

有点混乱是吗?除了电机驱动器直接由电池供电,其他所有组件都是由Arduino的5V稳压器来供电的。Arduino本身也是由该稳压器供电。现在,我们来分别看一下那些重要的组件连接。我的建议是一次连接一个模块,然后每次建立一个新的连接都进行测试。

1. 伺服器。伺服器的信号与Arduino的引脚8和9连接,支持PWM(脉冲宽度调制)。

2. LoRenz 开发板。该开发板使用SPI总线。不好的一点是,在Arduino Mega上总线用的是50、51和52引脚,而这个开发板设计的是使用Arduino UNO,所以SPI总线应该用13、12和11引脚。我们可以通过直接连接开发板上U/M接头的引脚和Arduino Mega上的对应引脚来解决这个问题。同时,从机选择引脚将会保留在默认位置(引脚7)。

3. SD 卡模块。和LoRenz开发板一样,该模块使用SPI总线。所以我们应该直接将它连接到引脚50、51和52以及一些作为从机选择的通用数字引脚就可以了,是这样吗?好吧,其实没有那么简单。我们的Arduino具有5V逻辑电平—这意味着电压电平5V(有一定的容差)会被释义为逻辑1,而电压0V(有较大容差)被视为逻辑0。LoRenz使用的无线模块具有3.3V逻辑电平,但是已被适当的转为5V,来实现与Arduino之间的可靠通信。SD卡模块也具有3.3V逻辑电平,但是,它只能在一个方向进行转换(因为这样制造成本较低)。这意味着从模块发出的所有信号仍然是3.3V逻辑电平。这使总线上的通信变得非常不可靠,或者有可能会直接破坏通信。这些话的含义是,如果您要处理的总线上的逻辑电平不同,而该总线上可能有两个以上的设备,则正确的做法始终是对它们进行转换,确保避免在一个总线上混合使用不同的电压电平。
幸运的是,SPI通信非常简单,可以通过软件来进行。所以我们只需要把SD模块连接到任何3个数字引脚,然后通过代码进行处理即可。我选择的引脚是13、12和11。

4. VC0706 相机。相机使用RS-232(串行)总线进行连接。再强调一下,相机具有3.3V的逻辑电平。因为一次只能将两个设备连接到RS-232,所以只需要在Arduino RX线上使用一个简单的分压器就够了。相机使用的是Mega引脚16和17上的第三个硬件串行线(Arduino代码中的Serial2)。

5. GPS 模块。这是第二个使用串行线的模块,因此我们可以将其放置在第四个串行端口(Serial3)的引脚14和15上。我故意略去了第二个端口(Serial1),因为引脚18和19都可用于触发中断,我们之后会需要将其用到传感器上。

6. ROHM 传感器扩展板。该扩展板位于LoRenz开发板上方。这里,我们需要把传感器和中断引脚连接起来。我按照以下方式对传感器进行连接:

传感器名称 扩展板插槽
BM1422GMV I2C_1
KX022-1020 I2C_2
RPR-0521RS I2C_4
BM1383GLV I2C_5
BD1020HFV ANALOG_1
ML8511A ANALOG_2

因为LoRenz已经使用了中断引脚2和3,我们不能简单地通过将扩展板上的一些引脚短路来选择它们(有关ROHM传感器扩展板上中断工作方式的更多信息,请参阅RohmMultiSensor wiki)。BM1422GMV位于插槽I2C_1,该插槽连接到INT1。因此,我们将会把INT1连接到Arduino可以触发中断的引脚18。类似地,KX022-1020位于连接到INT3的插槽I2C_2,我们会将其连接到Arduino的引脚19上。

7. VNH5019 电机驱动器。这些驱动器不需要用专门的总线进行连接,只需要两个数字引脚控制方向、一个PWM引脚控制速度、一个模拟引脚(可选)来读取流经电机的电流即可。左侧驱动器连接到引脚41、43和45(PWM)以及A15(模拟),右侧驱动器连接到引脚40、42和44(PWM)以及A14(模拟)。

到目前为止您已经都完成了吗?太棒了,因为这是本文中最难的一部分!当您完成布线后,应该看到类似以下的内容:

pYYBAGPzFFKAc2QGAAGFeQ3cn_8310.jpg

图10:所有已完成连接的电子设备

第九步:电源端接线

下一步是连接电源:电池和电机。底盘上有六个电机,但是我们仅有两个VNH5019电机驱动器。这样一来,每个驱动器需要用于三个电机。我们现在有两种方式来连接这三个电机:串联或并联。

1. 串联连接
电机驱动器提供的电流直接流经三个电机。但是,每个电机上的电压仅为驱动器输出电压的三分之一(假设所有电机完全相同)。驱动器的输出电压为12V,那么每个电机上分配的电压为4V,这是不够的,因为每个电机的额定电压是12V。

2. 并联连接
驱动器的输出电压均等的施加到每个电机上,所以每个电机都有12V的电压。在这种情况下,电流被分成了三部分,所以每个电机仅能得到驱动器输出电流的三分之一。电机的额定堵转电流为5A。驱动器可以提供持续电流12A以及峰值电流30A。这并不是十分理想,因为这种情况下驱动器无法提供足够的电流使三个电机都转,但是对于这个项目来说,不会影响工作的正常进行。

因此,我们将进行并联连接。需要记住一点,当对负载进行并联连接时,总电阻值将会下降。在我们的项目中,因为我们连接的电机大致相同,所以并联之后的总电阻值恰好是一个电机电阻值的三分之一。这可能会导致一些有最小负载要求的电机驱动器出现问题。幸运的是,VNH5019没有最小负载要求,所以我们可以顺利地进行工作。

这里是一个电源连接的示意图。非常简单,在+12V线上有一个开关,我们可以将其关闭来停止机器人的工作。电池连接到了驱动器和LoRenz开发板上,后者上有螺旋式接线端子,可以直接连接到Arduino VIN和GND引脚。

pYYBAGPzFFSAWDqrAAEoDaM2elw247.jpg

图11:电源接线原理图

我认为,这一步中最困难的部分是选择将连接线放在底盘的什么位置。您需要将它们放置在不会干扰其他运动部件的位置。另外,应该对这些连接线进行一定程度的遮盖,因为当机器人在户外探索时我们不希望这些线被其他东西绊住。

当您把所有的电机连接好后,就可以将它们放回电机模块中了。然后将连接线固定在底盘上,并与调节器连接。

pYYBAGPzFFaAeOoWAAEl1iRH8rA350.jpg

图13:载有电子设备的ArduRover底盘成品

结论

现在,该进行最后的接线测试了。使用万用表仔细地对所有的连接进行测量,确保每一根线连接到正确的位置。这一步的重要性再怎么强调都不为过,因为只要一根连接错误而造成电源与一个引脚之间短路的电缆,您的Arduino器件就会在烟雾中化为乌有,或者可能会造成使机器人工作的某些部件遭到毁坏。请记住,我们使用的是铅酸电池,所有的电池都是为了—您知道的—启动机器!这意味着如果发生了短路,将会输出大量电流,关于这种情况的后果,您可以在YouTube上搜索一下“铅酸电池短路”就知道了。

当把所有的电子设备和电池安装好后,机器人的最终重量也确定了。由于使用了巨型电池,现在机器人的重量达到惊人的13公斤—接近29磅!实际上,我对悬架在这种负载下也可以正常工作而感到惊讶。但是既然这样没问题,那我们就终于可以把这台机器人带到户外去,看看我们辛苦工作之后的成果了。

poYBAGPzFFmAKk8zAAJQgc8trNU774.jpg

pYYBAGPzFFyAF1JsAALH2d5JH3M221.jpg

poYBAGPzFF6APeJAAAM3ag_b4Cg090.jpg

poYBAGPzFGCAQvwLAAL5thjHr0E252.jpg

pYYBAGPzFGWAFRuVAALzrQhOzDI485.jpg

pYYBAGPzFGeAPD47AAKT6fVQ1U4687.jpg

为了测试电机在自然环境中的运行情况,我写了一个简单的应用程序,可以由我直接设置所有电机的转速和转向!该应用程序在一台计算机上运行,通过一个串行端口向Arduino发送指令。然后Arduino通过LoRenz开发板将指令无线传输给机器人。坦率地说,用这种方式来控制机器人极具挑战性。在上文中,您可以看到我尝试控制漫游车的视频,大多数情况是失败的。非常感谢我的朋友Jan Karásek帮助我拍摄照片和录制视频。

下一个目标是对机器人进行编程,以收集所有传感器相关的数据。目前为止,在机器人上运行的程序仅能控制电机,我需要写出更好的控制程序。因为通过键盘这种控制装置来对机器人进行操控比较困难,尤其是在崎岖地形上,我可能需要用一些其他的输入设备,可能是一种可用于计算机的外接游戏机手柄风格的控制器,甚至可能是一个Android手机。有关这些内容以及更多的信息将会在下一部分中进行介绍,请继续关注!

poYBAGPzDYeADKbwAAAIfvIYPTY692.jpg

Jan Gromes

Jan 目前在布尔诺工业大学学习电气工程。他有多年使用Arduino和其他微控制器来构建项目的经验,对于机器人系统的机械设计十分感兴趣。

审核编辑黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    207

    文章

    27324

    浏览量

    202156
  • 布线
    +关注

    关注

    9

    文章

    735

    浏览量

    84097
  • Arduino
    +关注

    关注

    185

    文章

    6434

    浏览量

    185337
收藏 人收藏

    评论

    相关推荐

    深圳比创达EMC|EMI电磁干扰:电子设备性能的头号敌人.

    、EMI电磁干扰的产生原因1、设备内部因素:电路板的布局不合理、元器件选择不当、线路阻抗不匹配等都可能导致设备内部产生电磁干扰;2、外部环境因素:雷电、无线通信、电力线路等外部电磁场源可能对
    发表于 05-21 11:19

    排线磁环:电子设备中的电磁屏蔽卫士

    电子设备的密集环境中,电磁干扰(EMI)是一个不容忽视的问题。为了应对这一挑战,排线磁环作为一种高效的电磁屏蔽解决方案,被广泛应用于各种电子设备中。本文维爱普小编将介绍排线磁环的工作原理、特点以及其在电子设备中的应用。
    的头像 发表于 05-21 09:50 153次阅读

    深圳比创达电子EMC|EMC电磁兼容性:原理实践,电子设备稳定运行.

    辐射源会产生不同频率和强度的电磁波,对周围电子设备产生干扰;2、电磁敏感设备:指对电磁干扰敏感的电子设备,如通信设备、计算机、医疗
    发表于 05-20 11:14

    3芯M16接头在电子设备中的作用

      德索工程师说道在电子设备中,3芯M16接头扮演着举足轻重的角色,其独特的设计和功能使得电子设备之间的连接更为高效、稳定和可靠。以下将详细探讨3芯M16接头在电子设备中的作用,内容将围绕其信号传输、电源供应、数据通信和
    的头像 发表于 05-15 18:26 116次阅读
    3芯M16接头在<b class='flag-5'>电子设备</b>中的作用

    深圳比创达电子EMC|EMC电磁兼容性:电子设备稳定运行的保障.

    下降,如信号失真、数据传输错误等;2、故障频发:严重的电磁干扰甚至可能导致电子设备出现故障,影响设备的正常使用;3、安全隐患:在某些特殊领域,如航空航天、医疗等,电磁干扰可能引发严重的安全隐患。三、提升
    发表于 04-16 10:48

    电子设备里的陶瓷电容

    陶瓷电容作为电子设备中重要的电子元件,具有独特的性能和广泛的应用领域。其高介电常数、温度稳定性、高频特性和低损耗等特点使其在电源滤波、信号耦合、振荡电路等各个环节发挥重要作用。同时,陶瓷电容的品质和质量对电子设备的正常运行至关重
    的头像 发表于 04-11 09:30 158次阅读
    <b class='flag-5'>电子设备</b>里的陶瓷电容

    电子设备里的陶瓷电容

    陶瓷电容作为电子设备中重要的电子元件,具有独特的性能和广泛的应用领域。其高介电常数、温度稳定性、高频特性和低损耗等特点使其在电源滤波、信号耦合、振荡电路等各个环节发挥重要作用。同时,陶瓷电容的品质和质量对电子设备的正常运行至关重
    的头像 发表于 04-10 16:55 199次阅读
    <b class='flag-5'>电子设备</b>里的陶瓷电容

    探索EMC(电磁兼容):原理、测试与应用?|深圳比创达电子.

    向周围发射电磁波。而电磁受体则指各种电子设备、通信系统等,容易受到外界电磁波的影响;2、EMC设计原则良好的接地设计、合适的电磁屏蔽、电路布线合理等都是保证设备符合EMC要求的重要设计
    发表于 03-25 11:23

    防浪涌TVS:电子设备的保护盾?|深圳比创达电子a

    防浪涌TVS:电子设备的保护盾?相信不少人是有疑问的,今天深圳市比创达电子科技有限公司就跟大家解答一下!在电子设备日益普及的今天,我们经常会听到设备因电压波动或突发浪涌而损坏的情况。那
    发表于 01-05 10:19

    防浪涌TVS:电子设备的保护盾?

    防浪涌TVS:电子设备的保护盾?|深圳比创达电子
    的头像 发表于 01-05 10:16 248次阅读
    防浪涌TVS:<b class='flag-5'>电子设备</b>的保护盾?

    PCB是所有电子设备的核心

    pcb电子设备
    油泼辣子
    发布于 :2023年11月18日 12:08:06

    晶振电路如何提升电子设备的性能?

    晶振电路如何提升电子设备的性能? 晶振电路是现代电子设备中常见且重要的部件,其作用是提供稳定的时钟信号,从而驱动各个部件的工作。而一个稳定而精确的时钟信号对于电子设备的性能提升有着重要的影响。本文
    的头像 发表于 11-17 11:41 288次阅读

    电子设备的移动电源的使用方式

    电子发烧友网站提供《电子设备的移动电源的使用方式.doc》资料免费下载
    发表于 11-15 11:25 0次下载
    <b class='flag-5'>电子设备</b>的移动电源的使用方式

    电子设备为什么要进行热设计

    电子设备的有效输出功率比所需的输入功率小得多,而这部分多余的功率则转化为热而耗散掉。随着电子技术的发展,电子元器件和设备日趋小型化,使得设备
    的头像 发表于 10-31 11:48 658次阅读
    <b class='flag-5'>电子设备</b>为什么要进行热设计

    电子元件的保质期如何影响电子设备的性能

    电子元件是电子设备的组成部分。它们是电子设备的构建模块。就像所有其他产品一样,电子元件也有保质期。您可能想知道保质期的真正含义是什么。在设计电子设备
    的头像 发表于 07-28 11:02 1107次阅读