乐高机器人搭建技巧



模块最大化

     设计机器人时,最好使机器人结构便于拆卸,确切地说,将你的机器人的结构模块化。将机器人模块化的好处还有,你可以在需要的时候将一些组件用在其他项目上,而无需重新搭建这些结构。但如果设计中需要结构更紧凑,就要舍弃机器人模块化地想法,而专注于系统集成。尽管如此,这仍不失为设计乐高机器人的经验之谈,尤其是组建大的机器人时。

     该原理涉及一些重要组件:马达、传感器,当然少不了RCX。如果你已经迷上了LEGO机器人,那建议你去买一些组件来拓展你的机器人。可能你的器材很多,可以同时开展不止一个项目,或者说,当需要搭建新的机器人时,无须拆掉以前搭建好的模型。不过,RCX、马达及传感器并不便宜,建议你最好在设计机器人时能考虑到将来拆卸某些重要组件时无需将它整个拆散。

      注意:设计机器人结构时,起码应该考虑到需要时可以很方便地为RCX换电池。最常用的解决方式是将RCX安装在机器人的最上端,这样,也便于按机器人按钮或读取RCX的显示。

5.4结构的载重

    一个可运动的机器人需承负的最小负载为300克:即1个RCX(及电池)和2个马达的重量。如果加上电缆、传感器及其他结构组件,机器人的重量很容易达到500克。你是否关心它的质量及其相关的因素?

在制作机器人时,首先要考虑的因素就是摩擦力,要尽量减小。尤其是与轮子相连的这部份结构。这是因为轮子所承受的所有的重量都是由轴传递的。轮子就象杠杆,距离它越远,作用在轴上的力就越大,这个力可能会使轴弯曲,使梁变形,在梁与轴间产生很大的摩擦力。因此,在搭建时,应尽可能使办法靠进它要支持的梁。图5.5所示的三种情况:a最不可取,b次之,c为最好。

乐高机器人---搭建技巧之二

图5.5 使马轮子尽可能靠进它所要支持的梁。

建议在条件允许时,尽可能不要用一根梁支持承重轴。图5.6所示三种结构比图5.5所示更可取,而所有6种结构中,图5.6c所示结构为最佳结构,该结构中在轮子的两侧各有一支持梁,就象自行车,避免所有可能由轴与支持物上起的杠杆效应,将摩擦力降至最小。

乐高机器人---搭建技巧之二

图5.6  采用两个支持梁效果要比用一个好。

RCX的安放位置对移动机器人的行为影响很大。虽然整个机器人的重量决定机器人的行动,但由于RCX(及电池)是整个机器人中最重的组件,对平衡负载至关重要。任何物体都有保持原有运动状态的趋势。有时,是阻止加速。质量越大,需要改变速度的力越大。MINDSTORMS Constructopedia所示的Acrobot模型就运用了该原理原理。如果你已经搭建过该模型,是否奇怪它为什么会翻转而不是前进?这是因为机器人的惯性使它保持在原有的状态—即稳定性。一旦为马达提供动力,轮子即试图将动力转换为运动,为机器人加速。但是,由于其惯性很大,而路面阻力很小,这样,作用力使机器人的身体翻转过来而不是使轮子转动。一旦机器人翻过来,由于机器人的前面为非驱动轮,使得它不能再转动,就只好加速了。

通常,人们希望自己的机器人稳稳地停在地上。可以利用重力加速度来实现:使驱动轴远离负载远些。不需要复杂的运算,只要用机器人实践几次就行了–运行一个简单的程序:启动机器人、停止、转向,看看机器人怎么做。试着将RCX放在不同位置,直到你满意为止。

主装:底盘、模块与负载

使用MINDSTORMS中的部分组件,搭建图5.7所示的底盘。由于高度降低,它看起来很简单,我们一起来看一下:

乐高机器人---搭建技巧之二

图5.7 完整的平台

这个平台看起来就象一块三明治,用了两层梁,中间夹了一层板子。因为使用了垂直梁将各层锁在一起,使结构非常结实。注意机器人的内部,我们用1×3连接板代替1×4梁,这样,底盘的上面就很平整,很容易安放RCX或其他组件。

承重轴为两根#8轴(#8号轴的意思是指其长度为8个乐高单位),用于支持内侧与外侧的梁,并使轮子尽可能靠近支持梁。

采用第三章中介绍的方法,用带有导轨的1×2板固定马达(见图3.4),上面用两个2×4乐高板固定(图5.8),这个结构中,只需取下这两片乐高板,无需破坏整体结构,就可取下马达(图5.9)。

当然,也可以很方便地取下导向轮和两个主轮,用于其他项目(图5.10)。这里需要提出注意的是,导向轮非常特殊,它可以使两轮的机器人稳定、平滑转弯。设计好的导向轮需要很多技巧。

一般情况下,如果你只有一套机器人发明家系统套装,为了制作另外一个机器人,可能不得不拆掉整个模型。但是,如果你有更多的LEGO技术组件,你就可以保持你的机器人平台基本完整,只需取下马达和轮子就可以开始一个新项目了。

乐高机器人---搭建技巧之二

图5.9 取下马达


乐高机器人---搭建技巧之二

图5.10  ……和轮子

现在,让我们来考虑负载和惯性,如果有LEGO遥控器,不需要任何程序即可检验。如果没有遥控器,建议你编写一个简单的,能使机器人运动、转弯的程序,不需要很复杂,如下面所示的伪代码就可以了,该程序使机器人前进、后退,然后原地转圈。

start left & right motors forward

wait 2 seconds

stop left & right motors

wait 2 seconds

start left &right motors reverse

wait 2 seconds

stop left &right motors

wait 2 seconds

start left motors forward

start right motors reverse

wait 2 seconds

stop left &right motors

将RCX安放在不同的位置,看看会发生什么情况。如果它只是简单转动主轮轴(图5.11),就象Acrobot一样,很容易翻车。

乐高机器人---搭建技巧之二

图5.11 RCX安放位置不合适,会造成器人的不稳定。

将RCX向导向轮方向移动,会发现机器人越来越稳定(图5.12),虽然在机器人启动或停止时有些弹跳,却不会再翻车了。

乐高机器人---搭建技巧之二

图5.12 RCX位置合适,可以改进机器人的稳定性。

小结  概括为三个词:分层、模块化及平衡。这机器人结构三要素。

分层:可以使你的机器人结实,结构合理。回顾一下第一章中讲的,用梁和板子分层叠放,再用垂直的梁加固,可以得到轻巧、稳固的结构。结构的稳定不是就需要很多组件,而在于设计中的技巧。

模块化:可以节约您的时间,使您可以将一些组件重复用在其他项目上。这点对于一些贵重件,如传感器、马达,尤其是RCX,颇为重要,因为这些组件比较贵,且无法替代,要牢记这一点。不只是单个组件,甚至还可能是整个子系统(如导向轮),在需要时,都可以从一个机器人上取下来,安到另一个机器人上去。

平衡:是车辆稳定的关键。尽量降低你的机器人小车的重心,以减小惯性及其不稳定性。试着将负责放在不同位置,尤其是RCX,使机器人最好地适应加速、减速过程。在第十五章我们将深入讨论这个问题,我们在该章将学习如何搭建步行机器人(平衡问题将至关重要)。

我们并不是总能能够实现这些想法。有时,由于多种因素,我们可能要考虑一种折衷的方案,例如,要求紧凑,可能会与模块化意向冲突。强调外型,如第18章中引入的电影形象模型中使用的,可能使我们不得完全遵循这里谈到的一些规则,但并不是说它们是冲突的。把它作为指导思路,但不要受其束缚,去做你想做的。