问题
在大多数自然灾害中,例如飓风、地震、火灾,都会有人被困,无法自行逃生。这时,搜救队就派上用场了。如今,大多数搜救行动都由人工进行,需要大量专业人员和大量时间来寻找可能的幸存者。
在世贸中心遗址工作后,南佛罗里达大学计算机科学教授、从事搜救机器人研究的罗宾·墨菲博士说:
“机器人被证明是有帮助的”;“使用机器人可以最大限度地减少现场人员数量,并减少疲劳和错误”;她将移动机器人视为能够导航、适应和感知的侦察兵。;“机器人将是便携式的”;“非常小,它们可以适应人类无法企及的狭小空间,能够在废墟中的空地上蜿蜒前行时辨别方向”;“……去人类不应该去的地方”
来源:(http://www.aaai.org/Pressroom/Releases/release-02-0910.php)



## 主要材料:
22 x 3D打印部件
1 x Arduino Nano v3.0
1 x HC-05蓝牙模块
1 x NRF24L01+无线收发器
24 块钕铁硼圆盘磁铁(4x3 毫米)
2 TowerPro MG92B 伺服电机
3 x TowerPro SG90 伺服电机
2 块锂聚合物电池 3.7V 600mAh 25C
1 x LM317电压调节器
1 个迷你开关
1 个 WS2812 RGB LED
40 xM1.7x4mm自攻螺钉
1 x330 欧姆电阻
1 x1200 欧姆电阻
4 x520欧姆电阻
3 x小橡皮筋(牙齿矫正器)

## 步骤1:
本教程将演示如何组装一个功能齐全的 Dtto 模块化机器人模块。我们强烈建议您准备一把锉刀(指甲锉、金刚砂板、砂纸)和一套精密刀片。
首先,我们需要打印机器人的所有部件。对于这类项目,我们认为 ABS 塑料更合适,因为它比其他材料更易于加工。.stl 文件可在第一页的链接中找到。您还可以找到一个 PDF 文件链接,其中详细说明了我们需要的部件数量、每个部件的编号以及一些详细信息(3D 打印部件列表)。我们将使用部件编号来识别部件。我们还需要原理图文件来检查连接。
一旦我们打印了所有零件,移除了所有支撑物并仔细打磨,我们就可以开始组装模块了。
注意:本教程中我们不会组装红外检测系统。此功能将尽快上线。
我们不承担任何责任,对于组装和使用该模块化机器人时发生的任何事情我们概不负责。:)

## 第 2 步:
我们需要:
- 2 x 零件 004-1
- 1 x 零件 011-1
首先,我们必须确保这三个部件完美契合。004-1部件必须能够绕中心自由旋转,这一点至关重要。它们旋转得越顺畅,摩擦损失的能量就越少,机器人的运动性能就越好。

## 步骤3:
我们需要:
- 2 x MG92B 伺服电机
- 4 x 520 欧姆电阻
第二件事是调整 MG92B 伺服电机,使其能够旋转 180 度。我们使用的方法是在每个伺服控制电路中添加几个电阻:
- 拆开伺服电机的后盖(4 个螺丝)。
- 小心地将控制电路从内部分离。电位器位于电路下方(可能被黑色薄膜覆盖)。接触到电位器的三个引脚后,需要拆焊第一根和第三根排线(不是中间那根)。然后,需要将一个 520 欧姆的电阻分别焊接到这两个引脚上,再将排线焊接到电阻上。您可以找到关于如何改装伺服电机的教程(搜索:改装伺服电机 180 度),但务必使用 520 欧姆的电阻(图中我们并联了一个 680 欧姆和一个 2200 欧姆的电阻,以获得 520 欧姆的电阻)。
- 控制电路不再适合外壳,所以我们要把它粘在金属外壳的侧面(见图)。用胶带在电路两侧粘贴,防止电路短路。
- 对另一个伺服电机重复该过程



## 步骤4:
我们需要:
- 2 x 零件 004-1
- 2 x MG92B 伺服电机(第 3 步)
这一步我们要把电机固定到打印好的部件上。电机必须安装到位。我们可以使用电机自带的螺丝,但需要先把螺丝剪到合适的长度。

## 步骤5:
我们需要:
- 1 x 零件 011-1
- 1 x 零件 012-1
- 2 x 伺服臂(交叉)
现在我们要把伺服臂固定到3D打印部件上。这一步非常重要,因为我们必须确保伺服电机居中。如果没有居中,组装完成后,模块电机就无法完全旋转。
下图展示了结果。当舵机设置为 90º(servo.write(90))时,零件的相对位置应该与中间图片所示一致。如果位置略有偏差,例如右图所示,则需要将零件居中。
如果我们将伺服器设置为 90º 并得到如右图所示的偏差位置,我们将必须将伺服臂移出中心,如第二张和第三张图所示。
这是关键部分,所以一定要确保获得一个居中良好的配置。一旦我们获得一个居中良好的部件,我们必须完全确保我们获得了正确的配置。我们可以连接这两个部件,并使用 Arduino IDE 中的“扫描”示例测试旋转。
一旦我们完成一个伺服电机,我们就可以继续修复另一个。
目前,模块尚未指定公头或母头。我们将选择其中一半,并将其命名为公头。另一半则为母头。然后,我们需要将母头电机的线缆穿过中心部分的孔,连接到公头。必须确保线缆能够自由旋转。







## 步骤6:
我们需要:
- 1 x 零件 003-1
现在我们将开始组装模块的公头部分。首先,我们必须确保部件 003-1 上的孔与之前组装的部件 012-1 相吻合。打磨完成后,我们可以使用 3 颗螺丝将部件 003-1 固定到部件 004-1 上。

## 步骤7:
我们需要:
- 1 x 零件 005-1
- 1 x 零件 007-1
- 1 x 零件 009-1
- 12 个钕磁铁
这一步我们将把磁铁放在公头部件上。务必将所有磁铁放入公头部件中,并且北极朝向模块内部。我们将磁铁放入孔中,然后滴一滴胶水将其粘在部件上。在这个过程中,我们通常使用热熔胶。


## 步骤8:
我们需要:
- 1 x 零件 006-1
- 1 x 零件 008-1
- 1 x 零件 010-1
- 12 个钕磁铁
和上一步一样,我们将磁铁放入母头部件中。现在,记住将所有磁铁的北极朝向模块外部。如果操作正确,公头部件不会粘在它们之间,但公头和母头部件之间会相互磁吸。

## 步骤9:
我们需要:
- 3 x SG90 伺服电机
- 3 x 零件 013-1
- 3 x 零件 014-1
- 3 x 小橡皮筋(牙套)
在此步骤中,我们将准备将机器人模块固定在一起的耦合机构。首先,我们将伺服臂(如图所示,已预先切割好)穿过两个打印部件。我们必须确保这些部件能够围绕伺服臂自由旋转。我们将伺服臂旋转 90 度 (servo.write(90)),然后像图中所示,使用伺服臂自带的螺钉将部件拧紧。最后,我们将橡皮筋放在两个部件之间。


## 步骤10:
我们需要:
- 1 x 部件 005-1(步骤 7)
- 1 x 部件 007-1(步骤 7)
- 1 x 部件 009-1(步骤 7)
这一步我们将把构成耦合机构的舵机固定到打印部件上。首先,我们将舵机插入到正确的位置。然后,使用舵机自带的两颗螺丝,将其固定到部件上。


## 步骤11:
我们需要:
1 x HC-05蓝牙模块
1个NRF24L01无线电模块
这一步我们将准备蓝牙和无线电模块。我们需要移除排针以便直接焊接导线,从而减少模块的总体积。我们将使用旧电脑上的扁平电缆,因为没有太多空间放置电缆。

## 第 12 步:
我们需要:
- 1 x NRF24L02 无线电模块(步骤 11)
现在我们要把无线电模块粘到最终位置。由于空间不足,而且需要减轻重量,我们决定用热熔胶简单地粘住模块。我们必须确保模块不会与中心的活动部件接触。电缆从模块的另一侧走线。

## 步骤13:
我们需要:
- 1 x 部件 009-1(步骤 10)
我们用3颗螺丝将带电机的部件009-1安装到模块主体上。确保伺服电缆不会接触到耦合机构。


## 步骤14:
我们需要:
- 1 x 部件 005-1(步骤 10)
在这一步中,我们将安装机器人的“底座”,即部件 005-1,以及之前安装好的电机。现在,我们意识到连接到无线电模块(步骤 11)的电缆尺寸非常重要,因为它们必须适合“底座”伺服电机和顶部部件之间。这一步我们需要 4 颗螺丝。

## 步骤15:
我们需要:
- 1 x LM317 电压调节器
- 1 x 1200 欧姆电阻
- 1 x 330 欧姆电阻
现在我们将配置电压调节器。由于我们主要需要调节器来为伺服电机供电,并且伺服电机可以在 5 到 6 伏之间工作,因此我们将调节器设置为尽可能接近 6 伏的电压。考虑到最低电流需求,我们可以使用任何其他合适的电压调节器。
LM317 稳压器允许我们使用一些电阻来调节输出电压。您可以在其数据手册中找到详细信息和计算公式,该手册很容易获得。请参考数据手册以确保连接正确。我们选择的电阻分别为 330 欧姆和 1200 欧姆,输出电压为 5.8 伏。我们也可以使用 100 欧姆和 390 欧姆,输出电压为 6.1 伏。请查看原理图。
我们需要使用调节器的输出电压为5个伺服电机供电,因此我们需要一块小电路板来焊接调节器、电阻器和电缆。电路板的尺寸不应超过1*2.2厘米,并且应能像下图所示那样装入模块中。
如果我们检查模块的原理图,我们可以看到我们可以使用该板来连接来自电池(开关)的电缆和连接到 Arduino 的电缆。



## 步骤16:
我们需要:
- 1 个迷你开关
现在我们要安装一个小开关来控制整个模块的电源开关。请查看原理图。现在我们先把开关放在一边,稍后再处理。

## 步骤17:
我们需要:
- 1 x Arduino Nano v3.0
Arduino Nano 是我们模块(也就是机器人)的大脑。在进行以下步骤之前,测试 Arduino 至关重要。有时我们会购买非官方的 Arduino 开发板,因此必须确保能够对其进行编程。
在此步骤中,我们将测试 Arduino 开发板及其与计算机的连接。我们将编写一个示例程序“Blink”。测试完成后,请注意,为了节省宝贵的空间,我们需要一块无引脚的开发板。
我们现在可以将 Arduino Nano 放入模块中。


## 步骤18:
我们需要:
- 1 x HC-05 蓝牙模块(步骤 11)
现在我们要把所有线缆直接焊接到Arduino上。我们会按照原理图来操作,并尽量缩短线缆长度。这部分比较棘手,所以你必须考虑如何布置线缆以缩短长度,确保所有组件都能安装到位,并确保耦合机制正常工作。请检查原理图。
正如您在图片中看到的,蓝牙模块是“悬浮”的。由于它位于Arduino的顶部,并且我们必须确保能够访问Arduino,所以我们会将线缆剪得足够长。我们还使用辅助板将一些线缆(例如地线)焊接在一起,以便更好地整理线缆。



## 步骤19:
我们需要:
1个WS2812 RGB LED
- 1 x 部件 007-1(步骤 10)
这一步我们将安装机器人的RGB LED灯。我们需要切割LED支架,使其与安装好的LED灯相适配。线缆的走线方式如图所示(注意,图中的伺服电机没有线缆,因为我们用完了所有可用的线缆)。
现在是时候用两颗螺丝将打印好的部件固定到模块主体上了。如图所示,迷你开关就在我们刚刚组装好的伺服电机下方。我们必须将迷你开关固定在合适的位置,确保按下时不会从模块中突出来。


## 步骤20:
我们需要:
- 1 x 零件 003-1
- 1 x 零件 006-1
- 1 x 零件 008-1
- 1 x 零件 010-1
- 2 块锂聚合物电池
就像我们在步骤6中所做的那样,我们将把部件003-1组装到模块的另一半。我们必须确保它能够轻松旋转。
现在模块几乎组装好了,我们得考虑把电池放在哪里。模块设计时,电池放在Arduino背面的公头部分,但由于母头部分的空余空间我们没法利用,所以我们打算把电池放在母头部分。这样重量分布更均匀。
首先,我们需要接通为系统供电的电缆。
然后,我们需要安装零件 006-1 和 008-1,就像另一半一样。安装完成后,我们就可以插入电池了。我们将像图中那样将它们粘好。
现在我们可以安装部件 010-1。



## 步骤21:
我们需要:
- 2 x 零件 001-1
- 2 x 零件 002-1
这是最后一步!我们要组装最后的部件了。首先,我们要测试它们是否安装到位。如果不对,我们需要打磨,直到它们完美贴合。
这就是最终结果!
现在我们只需使用可用的代码对 Arduino 进行编程,就可以尽情享受了!



附录
项目链接:https://hackaday.io/project/9976-dtto-explorer-modular-robot
项目作者:otrebla333
项目视频 :https://www.youtube.com/watch?v=1elP9JI4qFY&list=PLoFHruvLOzZ8lMCxhqWBXichj1xdftpll&index=2
https://www.youtube.com/watch?v=hlDzRjZkemM&list=PLoFHruvLOzZ8lMCxhqWBXichj1xdftpll&index=7
https://www.youtube.com/watch?v=zT3XlefSts0&list=PLoFHruvLOzZ8lMCxhqWBXichj1xdftpll&index=4
https://www.youtube.com/watch?v=IggfFP-3cz0&list=PLoFHruvLOzZ8lMCxhqWBXichj1xdftpll&index=5
https://www.youtube.com/watch?v=Z0rCfe9eDIo
项目代码与3D 文件:https://github.com/otrebla333/Dtto-Modular-Robot



评论