全 3D 打印坦克:构建多功能履带式机器人平台
在教程中,我将向您展示如何构建超酷的无线电控制履带式车辆、机器人平台或坦克,凡是您能想到的。我从头开始设计了这个完全可 3D 打印的东西,这样您就可以轻松打印所有内容并自己构建一个。
您可以观看以下视频或阅读下面的书面教程。
概述
我这个项目的目标是制作一个多功能平台,可以穿越多种类型的地形并可用于各种应用。最好的选择是使用连续轨道系统。履带将车辆的重量分布在更大的表面积上,从而提供出色的抓地力并降低陷入松软地面、泥土或雪中的可能性。
机器人平台在泥地里行驶得很好,遗憾的是我没有机会在雪地里测试它。我希望我会在未来的一些视频中计划安装机械臂或炮塔。通过平台顶部的机械臂,我们可以执行各种任务,例如抓取和移动某些东西,或者我们可以在其上安装摄像头并用它进行目视检查等。或者举个例子,我们可以制作一个可以发射NERF飞镖的炮塔,结合我已经在这个平台上安装的简单但很酷的LED照明,我们可以玩得很开心。
至于悬架,我采用了在坦克上使用多年的科视悬架系统。通过这种设置,每个负重轮都有一个单独的悬架或弹簧和减震器。
这使得车辆能够在不平坦的地形上平稳行驶并攀爬障碍物,同时保持履带与地形之间良好的接触面。
为了控制 3D 打印坦克,我使用了一个廉价的商用 RC 发射器,它将命令发送到平台。
在平台上,我有一个合适的 RC 接收器,它接收命令并将其发送到微控制器。这个平台的大脑是一个基于 Atmega2560 微控制器的板,为了轻松地将所有东西连接在一起,我制作了一个定制 PCB,可以简单地连接到板的顶部。
不过,现在请系好安全带,我将引导您完成构建这个机器人平台的整个过程,从设计、3D 打印、组装、连接电子元件和对微控制器编程。
设计机器人平台
我使用 SOLIDWORKS 设计了这个机器人平台,SOLIDWORKS 也是该视频的赞助商。
—赞助部分 —
“值得注意的是,这些行业领先的专业级设计工具现在可供所有创客以每年仅 99 美元或每月 9.99 美元的超低价格使用。没错,3D 体验面向创客的 SOLIDWORKS 对于学习该行业、制作 DIY 项目等的任何人来说都是非常有用的。
此优惠包括3D 体验 SOLIDWORKS Professional,它是产品中最受欢迎的 CAD 工具,可在您的 PC 上本地运行。您可以使用3D在本地或云端存储文件 体验平台。
“xDesign”,基于浏览器的 CAD,您可以将其与 3D 一起使用 体验 SOLIDWORKS,或单独体验。它非常适合随时随地在任何设备上进行建模。
“xShape”是基于浏览器的自由形式 CAD,可轻松用于在任何设备上进行表面建模。
“可视化连接”,轻松创建照片质量的图像、动画、交互式网络内容等,以给您的观众留下深刻印象。
“NC 车间编程器”,CAM,用于在易于使用的软件包中实现 3 轴铣削和线切割 EDM 的智能加工策略。
单击下面的链接,您将获得 20% 的特别折扣 - 这样您今天就可以开始使用最好的制作!非常感谢 SOLIDWORKS 赞助和支持此类教育内容。 ”
立即购买:http://www.solidworks.com/makers20
了解更多信息:https://discover.solidworks.com/3dexperience-solidworks-makers
—回到主题—
让我解释一下我是如何想到机器人平台设计的。设计的第一个输入参数是我拥有的这些 RC 减震器及其尺寸。
我有 8 个,这意味着每侧有 4 个负重轮,当行程为 11 毫米时,它们的长度为 41 毫米。根据这些尺寸,我希望负重轮的垂直行程更大一些,所以我想出了这个机构,使负重轮的垂直行程达到了 16mm。
我的意思是,如果我将减震器和负重轮连杆的接头移近负重轮连杆的枢转点,我可以获得更大的行驶距离,但这样我就会失去弹簧的力,或者我需要更强的弹簧来正确固定平台。
我使用 SOLIDWORKS 进行了一些简单的模拟,以检查不同机构对弹簧的反作用力,因此我选择了这种机构,它也提供了良好的整体紧凑性。
如果我们仔细观察前负重轮,我们可以看到它是如何与提供履带动态张力的惰轮连接的。当负重轮上升时,履带周长变小,因此张力松弛。
通过这里的连接,当发生这种情况时,惰轮被向前推动以张紧履带。通过这种连接,我们还可以通过调节螺栓和距离螺母来静态张紧履带。
在背面,我们有由三部分组成的链轮。联轴器与左右段链轮均通过三个M3螺栓连接在一起。
链轮上的关键尺寸是节距,因为它必须与轨道的节距相匹配。这里的节距为 11 毫米,我选择的链轮有 12 个齿,这使我的链轮节圆直径约为 42 毫米。
11毫米的节距实际上是由履带链节的设计定义的。我对轨道连杆的目标是尽可能紧凑,并且只需一个额外的零件或销即可与下一个连杆连接,同时足够坚固,可以用 3D 打印机制造。
最重要的是,在 3D 打印时,我想避免在零件上使用任何支撑材料,而我实际上通过此设计成功实现了这一点。
为了将履带链节相互连接,我计划使用直径为2mm的销钉,因此我将一侧的尺寸定为2mm,以实现紧配合,另一侧为2.3mm,以实现松配合,以便履带链节可以自由旋转。
链轮齿进入此开口,履带链节的销钉直径为 8.8 毫米,而链轮直径为 9.1 毫米,以便松配合正常工作。
定义完所有这些零件后,我在装配环境中绘制了草图,即链轮、惰轮和负重轮周围的闭合轮廓。
然后,我将此草图与 SOLIDWORKS Chain Component Pattern 功能结合使用,生成沿该轮廓的所有轨道链接。
我设计了机器人平台的其余部分,即连接所有部件的底座、容纳一些 LED 的侧面以及顶盖,我认为这是一种现代而酷炫的风格。由于平台的整体尺寸比大多数3D打印机都要大,约为400mm x 300mm,因此我将所有部件分成两部分,因此我们几乎可以在任何3D打印机上打印它们。它们通过一些支架和M3螺栓连接在一起。
为了组装整个机器人平台,我们需要各种M3和M4螺栓和螺母,以及一些螺纹嵌件和轴承。您可以在下面的装配部分找到该项目所需的所有组件的完整列表。
3D模型和STL下载文件
您可以从 Cults3D 获取该遥控坦克/机器人平台的 3D 模型,以及用于 3D 打印的 STL 文件。
3D打印
在3D打印时,为了获得尺寸精确的3D打印零件,我们应该使用切片软件中的水平扩展和孔水平扩展设置。如果我们保留这些设置为默认,打印件的外部尺寸以及孔通常会比原始模型小。
我将水平扩展设置为 0.02 毫米,将孔水平扩展设置为 0.04 毫米。当然,您应该进行一些测试打印,看看哪些值可以在 3D 打印机上提供最佳结果。我们需要精确的零件尺寸,以便轻松地将它们彼此组装以及与轴承和螺栓等其他部件组装。
在 3D 打印轨道链接时,我使用筏作为构建板粘附力,因为它们与底板的接触面有点小,如果打印机上的底板粘附力不好,可能无法很好地粘附。特别是在打印较大批量时,使用筏更安全。
组装 3D 打印坦克 - 履带式机器人平台
好的,我这里有机器人平台的所有 3D 打印零件。说实话,打印所有内容花了相当长的时间。
例如,每个基础部分的打印时间约为 22 小时,所有 156 个轨道链接的打印时间约为 96 小时。我们大约需要 200 小时来打印所有内容。幸运的是,我有两台 3D 打印机,所以我花了大约 100 个小时。
零件清单
以下是组装这个 3D 打印坦克 - 机器人平台项目所需的组件列表。电子元件列表可以在本文的电路图部分找到。
- 8x RC 减震器……………………………………..亚马逊 /速卖通
- 8x 弹簧…………………………………………………………。 亚马逊 / 速卖通
- 40x 滚珠轴承 624 – 4x13x5mm ………………… 亚马逊 /速卖通
- M3螺纹嵌件………………………………………….. 亚马逊 / 速卖通
- M3 和 M4 螺栓和螺母…………………………。 亚马逊 / 速卖通
螺栓:
M4x40mm – 8 件; M4x35mm – 2 件; M4x30mm – 8 件; M4x25mm – 2 件; M3x25mm – 16 个; M3x20mm – 8 个; M3x16mm – 10 个; M3x12/14mm – 32 个; M3x10mm – 8 件; M3x8mm – 14 件
坚果:
M4 – 25个; M3 – 30个
垫圈:
M4 – 30个
披露:这些是附属链接。作为亚马逊合作伙伴,我通过符合条件的购买赚取收入。
我从组装底座开始。就像我说的,它由两个部分组成,这两个部分将使用一些支架以及 M3 螺栓和螺母相互连接。
为了固定侧支架,我使用 M3、5 毫米长的螺纹嵌件插入底座侧壁。这样,墙的外面就干净了,没有螺栓和螺母,以便轨道可以就近运行。
然后,我使用一些 M3 螺栓将用于安装减震器的支架固定到位。
接下来,我将在负重轮臂将枢转的位置安装轴承。轴承的外径为 13mm,内径为 4mm,每个负重轮需要两个。
我使用长度为 30 毫米的 M4 螺栓作为销钉。我们需要在轴承和臂之间放置一个垫圈,并用自锁螺母从内部将它们固定到位。我们应该注意这个关节的紧固程度,不能太紧,但也不能太松。
接下来我们就可以安装减震器了。我们使用包装中附带的 M1.4 螺栓将其固定到位。
我没有那个小螺丝刀,所以我用钳子来紧固螺栓。到目前为止,该机制似乎运行得很完美。
接下来,我们可以将负重轮安装在手臂的底端。负重轮由两部分组成,以避免用支撑材料进行打印。也许它可以作为一个单独的部分打印出来,但我没有尝试它会如何打印出来。
通过这种方式,我们必须连接两个部分,我决定使用 2 毫米钢棒来实现这一目的,我将使用同样的钢棒将履带链节连接在一起。这实际上是一根用于焊接的黄铜棒,它有些软,只需用钳子就可以轻松切割成合适的尺寸。
我为每个轮子插入了三个长度约为 23mm 的杆,然后还在轮子的两侧安装了两个与之前使用的相同的轴承。与之前一样,我再次使用 M4 螺栓、垫圈和自锁螺母将负重轮固定到位。
轮子应该能够自由旋转,同时轴上没有任何游隙。
现在我们只需对其他负重轮重复此过程即可。至于前负重轮,我们有一个稍微不同的臂,它有一个杠杆,可以为履带提供动态张力,但安装是相同的。
接下来,我们可以组装惰轮的机构。它由三个 3D 打印零件、一些螺栓和一个定距螺母组成。
在将第一个连杆固定到位之前,我们应该在背面添加一个 M4 自锁螺母,稍后我们将在其上安装惰轮。
我使用相同的 2mm 铜棒作为这些接头的销钉。现在在惰轮侧的第二个连杆处,我们可以借助M3螺栓固定一个15mm长的M3距离螺母。
在另一侧,我们放置一个 20 毫米长的 M3 螺栓和一个螺母,将其插入距离螺母。通过这种设置,现在我们可以调整惰轮和行走轮臂之间的距离,这样我们就可以静态和动态地张紧履带。然后我们可以简单地用M4螺栓将惰轮固定到位,这样我们就完成了这个张紧系统以及整个悬架系统。
好吧,接下来我们可以组装链轮,为此我们首先需要安装电机。我设计的基础平台可以容纳直径为 37mm 的带有中心轴或偏置轴的电机。
我们可以安装任何转速范围为 20 到 1000 RPM 的 12V 直流电机,当然这取决于机器人平台的应用,但我们稍后会在视频中讨论这一点。电机使用六个 M3 螺栓固定到位。
为了将链轮连接到电机轴上,首先我们需要准备联轴器,或者在其中安装一些螺纹嵌件。
然后我们可以将耦合器插入到位并用M3平头螺钉将其固定。
然后插入链轮的两部分并使用三个 M3 螺栓固定。
现在我们已经完成了平台传动系统,现在是时候享受组装轨道的乐趣了。是的,我发现组装轨道非常有趣。
下面是对轨道链接的仔细观察,从中我们可以看到它们是多么简单和干净。
它们在 3D 打印机上即可立即使用,因为我们在 3D 打印时不使用任何支撑。我们只需要 2mm 的引脚来连接它们。正如我已经说过的,我们可以轻松地从 2mm 黄铜焊条中获得它们。
链节上的外孔是紧密配合的,因此我们需要用一些力才能将它们插入,但这将确保它们不会脱落。链节上的内孔为松配合,确保履带链节之间自由旋转。
现在,我们只需泡一杯茶或一杯咖啡,然后花几个小时享受组装它们的乐趣。一旦你将其中的几个连接起来并看到轨道有多酷,你就会意识到其中的乐趣。组装一条履带总共需要 78 个履带链节。就杆长而言,每个轨道需要3.5m左右,因为每个销钉的长度约为43mm。
一旦我们准备好履带,我们就可以简单地将其缠绕在链轮、负重轮和惰轮上,并在现场用另一个 2 毫米销钉闭合环路。这里我们可以注意到,对于 78 个履带链节,履带的张力恰到好处,尽管最后一个负重轮稍微向上移动了一点。
其实是因为弹簧的强度不够。我们可以通过调整减震器上的螺母来稍微调整弹簧张力,但这还不够。因此,我决定更换原来减震器附带的弹簧,换一个更强的。
更换弹簧非常容易,因为我们只需拧下减震器的一端,插入更强的弹簧,然后再次拧紧杆即可。我的弹簧比原来的要宽一点,所以我必须在底部使用 M4 垫圈。现在,在安装具有 78 个链节的履带时,该弹簧有足够的力将负重轮固定到位。
我最终更换了所有减震器上的弹簧,因为我意识到它们的强度不足以承受整个平台的重量。这样就完成了整个平台的驱动系统,我认为效果还是不错的。
如果需要,我们现在可以使用惰轮上的距离螺母调节履带张力。当然,轨道稍微松一点是可以的,这样才能正常工作。松开的履带顶部部分支撑在减震器支架上。
我将电机连接到电源以检查其工作原理。对我来说这似乎很完美。看到自己用这么多 3D 打印零件创建的东西正在运行,真是一种很棒的感觉。
显然,我们必须重复相同的过程来组装另一侧。完成此操作后,机器人平台就完成了 80%。接下来,我将安装侧面板,这些侧面板主要是为了视觉外观。
我们借助一些支架和 M3 螺栓将它们固定到位。在顶部,找到将平台围起来的盖子。对于这个视频,我这样设计只是为了视觉外观。
就像我之前提到的,在我未来的一些视频中,我计划在这个平台上添加机械臂或炮塔,这意味着我必须适当地设计顶部。
电子 - 机器人平台电路图
现在我们可以继续该项目的电子部分。正如我所说,我将使用基于 ATmega2560 微控制器的板。
您可以从以下链接获取该项目所需的组件:
- 2x 12V 直流电机 – 50 至 500 RPM ………。 亚马逊 / 速卖通
- DRV8871 直流电机驱动器……………….……。 亚马逊/速卖通
- Arduino MEGA…………………………….….….... 亚马逊/速卖通
- 3S 锂电池…………………………..…….. 亚马逊/全球速卖通
- XT60 连接器…………………………..……亚马逊/速卖通
- FLYSKY 遥控发射器…………………………。 亚马逊/速卖通
披露:这些是附属链接。作为亚马逊合作伙伴,我通过符合条件的购买赚取收入。
为了驱动两个电机,我将使用两个 DRV8871 直流电机驱动器,它支持 PWM 控制和高达 3.6A 的峰值电流。直流电机的工作电压为 12V,我们将使用 3S 锂聚合物电池为所有设备供电,电压约为 12V。我还添加了一个 5V 稳压器 LM350 IC,以便为将来的其他用途提供专用的 5V 电源,例如用于将伺服电机连接到它。在本视频中,我们将使用此 5V 为 RC 接收器和一些 LED 供电。
我在这个项目中使用的 LED 是简单的白色和红色 5 毫米 LED。我整理如下:
后面每侧有两个红色 LED 作为尾灯,前面每侧有三个白色 LED 作为前灯。此外,顶盖上还有六个 LED 作为远光灯。为了使这些 LED 正常点亮,我们需要一个合适的电路,其中包括用于限制电流的电阻器。我将它们并联和串联组合起来。
例如,对于前大灯,我使用两条 12V 平行线为 6 个 LED 供电,左右各 3 个,串联连接。根据LED的正向电压和电流,我计算出了每条线路所需的电阻值,本例为150欧姆。为了激活 LED,我使用了一些额定电流为 200mA 的通用 NPN 晶体管。
最后,我制作了一个简单的分压器,用于监控电池电压。简而言之,电池的 12V 电压会降至 5V 以下,这样它们就可以进入微控制器的模拟输入。在程序中,我们可以将值转换回实际电压值,并将其从 RC 接收器发送到 RC 发射器,我们可以在显示屏上看到该值。
定制 PCB 设计
实际上,我最终得到了相当多的连接,因此为了避免混乱,我必须为这个项目设计一个定制 PCB。
PCB 将与基于 ATmega2560 微控制器的板兼容,可直接安装在其顶部。
我包括一个 3.3V 稳压器和一个用于 NRF24L01 收发器模块的连接,以防我们想使用该模块控制平台。此外,我还包括一个 12V 电源轨、5V 和 6V 电源轨,以及用于将伺服电机连接到它们的数字引脚连接。 6V 电源轨可由外部降压转换器供电。
我从 PCBWay 订购了 PCB。在这里我们可以简单地上传Gerber文件,选择我们的PCB的属性,并以合理的价格订购。
除了 PCB 颜色我选择为白色之外,我没有更改任何默认属性。您可以在PCBWay项目共享社区找到并下载Gerber,也可以直接订购PCB。
另外,您可以在这里下载 Gerber 文件:
然而,几天后 PCB 就到了。 PCB 的质量非常好,一切都与设计中的一模一样。
组装 PCB 非常简单,因为所有东西都贴有标签。我首先焊接 PCB 底部的排针,用于 ATmega2560 连接,然后继续焊接顶部。为了方便起见,我们应该首先焊接较小的元件,如电阻器和晶体管,然后焊接较大的元件,如 LED 和电源连接器。
我对所有连接都使用了排针,因为如果出现问题,它可以灵活地进行更改。我没有焊接外部降压转换器及其电源轨以及 3.3V 稳压器的连接器,因为我现在不打算使用它们。我真的很喜欢这个白色 PCB 的美观和干净。
完成 3D 打印储罐组件
好的,首先,我们用一些 M3 螺栓将微控制器板固定到位,然后在其顶部放置定制 PCB。
现在是时候安装 LED 了。它们将借助可容纳 5mm LED 的支架安装在侧面板中。正如原理图所示,我们应该将每行 LED 串联焊接。
阴极走黑线,阳极走红线。我们将这些电线穿过侧板上的一个小开口,通向 PCB。
LED 支架部分的设计与侧面板紧密贴合,因此一旦插入到位,我们就会获得漂亮干净的外观。
远光灯 LED 直接放置在顶部前盖上。
为了连接 LED,我将 XH2.54mm 杜邦公连接器焊接在 PCB 上,因此我必须在电线上安装合适的杜邦母连接器。我们需要用于那个钱包的压接钳,但在制作这个项目时我没有随身携带。
我用普通的小钳子来做这项工作,连接效果很好。每条 LED 线都应插入 PCB 上标记的相应连接器。
至于电机,我没有合适的连接器,所以我将电线直接焊接到它们上。电机连接进入 DRV8871 驱动板,然后进入 PCB。
对于无线电通信,我使用 FLYSKY RC 发射器和接收器,它们确实价格实惠,而且效果很好。
为了将接收器连接到微控制器,我们可以使用跳线。接收器通过I-BUS和串口与微控制器通信,因此我们只需要三根线,VCC、GND和信号引脚。
如果我们想将数据从接收器发送回发射器,在我们的监控电池电压的情况下,我们还需要将接收器的传感器 I-BUS 连接到另一个串行端口。
最后,我们可以连接锂电池。根据电池的不同,我们需要有合适的连接器。它连接到 12V 连接器,在它旁边有一个开/关连接器,用于连接一个开关,用于打开和关闭平台的电源。
这里请注意,在给开发板供电之前,我们应该首先断开RC接收器的电源,并使用微调器将LM350 IC的可变电压调整为5V。
现在我们只需将顶部后盖安装到位,我们就完成了这个项目。
对机器人平台进行编程
现在我们必须对 3D 打印坦克/机器人平台进行编程。这是该机器人平台的 Arduino 代码。
<前>00前>代码概述
因此,我们使用 IBusBM 库读取来自 RC 发送器的传入数据。
<前>19前>右摇杆,通道0和1用于控制平台的运动,两个摇杆开关,通道6和8用于控制LED。
我们将传入的数据转换为适合直流电机 PWM 控制的值,即从 0 到 255。
<前>27前>我们适当地使用analogWrite()函数将PWM值发送到驱动器和电机。
<前>31前>总体来说,代码并不复杂,因为机器人平台本身并没有复杂的功能。
测试 3D 打印机器人 - 履带式机器人平台
上传代码后,我们可以启动机器人平台和遥控发射器进行测试。在发射器显示屏上我们可以注意到锂电池电压,以及接收器和发射器电压。
现在我们就有了。使用正确的操纵杆,我们可以控制平台的运动。通过左侧摇杆开关,我们可以控制前照灯和尾灯 LED,通过右侧 3 向摇杆开关可以控制远光灯 LED。远光灯 LED 有两种模式:常亮模式和闪烁模式。
我们可以在这里注意到,我安装的电机对于这个平台来说实际上有点动力不足。
我们可以看到,操纵杆几乎处于顶部时,轨道才会开始移动。另外,我可以用手轻松地停止轨道。悬架系统和履带本身会给电机带来很大的张力和阻力。这些电机的转速为 888RPM,就速度而言还不错,但它们是较小的电机,额定电流略低于 500mA。
因此,我用我拥有的其他更大的电机替换了它们,但实际上我得到了几乎相同的结果。虽然这些是更强大的电机,但它们的减速更小,或者它们的转速更高,达到 1280,所以我得到了相同的结果。
事实上,他们并没有那么糟糕。机器人平台与它们运行得很好。
说实话,驾驶这个东西真的很有趣,尤其是当 LED 闪烁并造成烧毁或甜甜圈时。
然而,这种乐趣并没有持续多久,当我把它带到外面时,它很快就停止工作了。问题在于电机动力不足,没错,但也在于履带连杆的设计。污垢很容易堆积在链轮齿所在的位置。
因此,我重新设计了它们,在另一侧有一个开口,以便污垢可以通过它们。我还使链轮变小了一点,偏移了 0.2 毫米,以便链轮和履带之间的配合更宽松。
我用这些更新重新组装了所有东西,平台现在能够在外面行驶了。尽管动力不足的电机再次成为一个问题。平台时不时地堆积起来,无法上坡。因此,我的建议是购买转速不超过 500 RPM 的电机,并且功率更大,额定电流至少为 1A 或 2A。
我实际上尝试了具有更强电机的平台。它们的转速只有 20 RPM,对于享受乐趣和做甜甜圈来说显然太慢了,但现在的平台就像一个真正的坦克。它实际上可以去任何地方。
20 RPM 电机的动力足以攀爬任何障碍。它们确实很慢,但也许它们适合某些特定的应用程序。我的建议是,如果我们需要较慢的速度,电机的转速约为 50 RPM,而如果电机的速度较快,则转速约为 500 RPM。
我希望您喜欢这个视频并学到一些新东西。请随时在下面的评论部分提出任何问题,不要忘记订阅未来的更新并查看我的 Arduino 项目集。
制造工艺