《仿人机器人原理与实战》一1.2 反射弧与仿人机器人设计-阿里云开发者社区

开发者社区> 华章出版社> 正文
登录阅读全文

《仿人机器人原理与实战》一1.2 反射弧与仿人机器人设计

简介: 本节书摘来华章计算机《仿人机器人原理与实战》一书中的第1章 ,第1.2节,作者布莱恩·伯杰伦(Bryan Bergeron) 托马斯B. 塔尔博特(Thomas B. Talbot) 王伟 魏洪兴 刘斐 译, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

本节书摘来华章计算机《仿人机器人原理与实战》一书中的第1章 ,第1.2节,作者布莱恩·伯杰伦(Bryan Bergeron) 托马斯B. 塔尔博特(Thomas B. Talbot) 王伟 魏洪兴 刘斐 译, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.2 反射弧与仿人机器人设计

鉴于人类反射机制的各种优势,显然仿人机器人可以从类似的功能中获益。例如,将传感器和末端执行器的处理从主控制器转移到外设微处理器中,不仅为更复杂的工作腾出运算资源,也降低了灾难式单点故障发生的可能性。但是在设计仿人机器人时,还需要仔细考虑如何将这些优势与你的设计相匹配。
在设计仿人机器人的反射功能时,主要问题是带自主反射仿人机器人与其所处环境的隔离程度。为给这个话题添加一个有实际意义的上下文,想象搜索和救援仿人机器人在一个部分坍塌的矿井中搜索失踪人员的情景。现在,我们假设仿人机器人的振动感受器检测到一段高强度、低振幅的震动,意味着这里将要被掩埋。我们的仿人机器人是应该继续搜救,还是选择逃出矿井寻求保护呢?当然,我们没有办法说哪个选择是正确的,因为这取决于以下几个因素:还有多少仿人机器人仍在执行任务;找到幸存者的可能性;幸存者的价值(是否值得救援);仿人机器人的相对成本。如果仿人机器人的成本只有100美元,那么应该继续搜救,但如果成本是10 000美元,那么应避免破坏仿人机器人—除非你刚好也陷在碎石里无法逃离。
另外一个核心问题是保证响应与反射能满足机器人的使用目的。例如,你的仿人机器人属于攻击型机器人,当侦查到潜在危险时,它会摆出进攻的架势,准备随时应对袭击。反之,如果这款仿人机器人的设计初衷只为家政服务,那么它的反应就应该是自卫型姿势。如果你要设计一个患抑郁症的机器人,就像Douglas Adams笔下的Marvin,那么它对任何事物的反应就显得既缓慢又慎重。
如何操控多个传感器共同完成一个反射动作,这个问题虽然低级但却关键。解决途径之一是利用包容体系结构(subsumption architecture)。在这种等级体系内,某些特定的传感器能否决或抑制其余的传感器。按照这个等级体系,你可以手动或自动地划分反射弧等级。例如,在设计仿人机器人时,假设你认为避免温度过高比避免机械过载的优先级高,那么温度传感器和相应的反射弧应优先于任何有关伺服载荷的传感器输入。
包容体系结构的限制之处在于,它不能很好地处理一些错综复杂的状况。设想,仿人机器人有50条反射弧,你应该怎样划分反射弧等级呢?以人体生理学为模型,假设一种荒唐的情景:一只蜜蜂蛰了你的腿,同时一只猴子跳到你背上。你会先拍死蜜蜂再处理猴子,还是反过来呢?即使你已经深思熟虑,确定了仿人机器人应有的反应,但正如无论哪种解决办法都不可能适用于任何状况一样,在微控制器中对反射弧等级使用固定编码也显得不太现实。
另外一种解决途径是传感器融合(sensor fusion),它也可以处理那些由不同传感器发出的可能冲突的信号,简单来说就是将传感器发出的信号混合。事实上,有数百种途径可以实现融合,简单的方式就是直接计算信号平均值,较为复杂的方法是将数字信号滤波器应用于多传感器输出的信号。在面对复杂状况,例如当仿人机器人踩到香蕉皮开始摇晃时,传感器融合可能比包容体系结构表现得更好。经适当调试的传感器融合程序将相关传感器传来的信号按特定方式综合,通过这种方式,对涉及触发还是抑制反射的复杂问题给出一个有意义且实时的响应。
在了解以上基础理论后,我们就可以着手构建一些反射模拟器。首先,我们利用一套标准舵机、几个传感器和Arduino Uno微控制器构建基本的生理反射弧模拟器。在连接完成后,组成的多个回路可以直接应用于仿人机器人的设计,这也是构成复杂反射的基础。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:

华章出版社

官方博客
官网链接