打造一个具有蒸汽朋克风格的移动机器人
我正在打造一个具有蒸汽朋克风格的移动机器人。过去我曾制作过许多机器人,但这次我希望赋予它独特的风格和个性。这个机器人将采用模块化设计,通过组合各个模块来完成整体结构。模块包括大脑模块、电源模块、电机/驱动模块、面部模块等。我喜欢创造看似有生命、具备个性并能以某种方式表现出认知能力的机器人,让观察者能够赋予其一定的智能。因此,我在设计中加入了面部特征,并赋予机器人基本的人机交互功能。同时,我也选用了传感器,希望能让机器人能够以半智能化的方式自主移动。
第一个任务是将DRV8833电机驱动器连接到ESP32和电机上。接着,我需要为驱动器供电,以提供合适的电压来驱动电机。借此机会,我将一块7.4V锂离子电池连接到驱动器,并接入一个稳压器,以便后续为整个机器人供电。我还加装了一个分压电路,以便在项目后期让ESP32监测电池电压。之后,便可以使用PWM控制电机的旋转方向和转速。
在我的许多移动机器人项目中,我都避免使用编码器。尽管它们对于精确的运动控制通常必不可少,但我一直觉得将它们集成到设计中非常困难,且管理起来更加复杂。我一直希望找到一种更好的方式来控制电机并测量机器人的位置,比如利用视觉或其他传感器。结果发现,编码器确实有其存在的必要性,因为它们是实现精确电机控制和测量行驶距离最简单的方法。因此,我需要为本项目找到一种整合编码器的解决方案。我最终选择了AS5600磁性编码器,并找到了一种巧妙的方式将其连接到我所使用的廉价TT齿轮箱上:一个3D打印的支架用于固定编码器模块,以及一个连接磁铁的耦合件,两者配合即可完成任务。
这些编码器在成本方面具有很高的分辨率,尤其与简单的带槽盘式编码器或其他低成本解决方案相比。使用它们,我能够实现直流电机的闭环速度控制,并确保可以将这一功能与其他已连接到ESP32的组件集成在一起。
我制作的第一个模块是拟人化的“大脑”。这是一个用于ESP32板的3D打印外壳,连接线路布置在壳体外部,以便连接传感器和其他模块。我力求让这个模块不仅功能实用,同时也能符合我所追求的设计风格。在面包板上测试了大部分电子元件,并连接到了ESP32。这一步的目的是确保所有部件能够协同工作,同时了解需要为ESP32连接多少接口。这让我得以为我的新机器人设计“大脑”模块。我称之为“大脑”的是一个仿蒸汽朋克风格的外壳,用于容纳ESP32主板。设计中,ESP32电路板被安置在壳体内,电线从一个简单的接口板延伸至外壳外部。这些电线再通过插头连接到其他模块,使它们能与ESP32“大脑”相连接。
为了遮盖从ESP32主板到各插头之间的单根电线,我首先使用了一些电缆扎带将电线分组成类似线缆的结构。这种做法看起来很酷,但我还尝试过用编织线(wiring loom tape)作为替代方案,我觉得它效果更好,外观也一样炫酷。我选择以这种方式连接ESP32,主要是出于美观考虑,因为我希望看到电线从外壳中伸出的样子,就像管道从锅炉里流出,或像神秘装置伸出奇怪触手一般。希望至少能捕捉到其中一种视觉上的相似感。我还用螺母和螺栓在模块顶部加了一点触控输入,以呼应蒸汽朋克的氛围,因为在我看来,这就像一个蒸汽压力调节器的顶部。
接下来我将进入机械设计部分。我希望这个机器人采用模块化设计。我会设计一个“大脑”模块,用于容纳ESP32,并提供连接其他模块的接口。同时,我会制作一个“电源”模块,包含电池和供电组件。还有一个“执行器”模块,作为齿轮电机和编码器的独立外壳,根据需要连接齿轮和轮子。这样,各个模块可以连接到底盘上,最终组装成完整的机器人。目前我还不清楚这些模块如何组合在一起,但有意以这种方式进行构思。我选择蒸汽朋克风格来支持这种设计理念——通过一系列模块的组合,形成一个整体,而无需预先设定固定的设计结构。与现代简洁设计中所有部件隐藏在单一外壳内的做法不同,我希望每个模块都能清晰地呈现其自身特征。至少目前这就是我的计划……
本文编译自hackster.io





