A-A+

老王说ROS(7)用ros做系统设计

2015年04月20日 ROS 暂无评论 阅读 4,987 次

今天扯三件事:

第一、机器人系统设计是个什么东西;

第二、分层是个好东西;

第三、ros做系统设计时真不是东西;

第四、推荐一些东西。

声明:第一、闲扯不是教程;第二、我的ros水平不高。

 

13283489586436744

1)机器人系统设计是个什么东西

这个问题上,想吐的槽太多,怕吐歪了楼,我要忍住。机器人系统设计的核心工作如下:

a、理解需求,形成功能列表;

b、确定系统规格、设计控制架构;

c、分解模块,定义接口;

d、关键模块的设计方案;

e、设计软件架构;

f、软件概要设计。

我是产品盲、机械盲、硬件电路板半盲,所以我在系统设计里就是不明说包含这些设计,不过已经有了,比如你可以在b的系统规格里把机械、电气、电子概要设计放进去,在c里把机械接口、电气接口放进去,也可以在d的关键模块设计里把详细设计放进去,在e的软件架构设计里把人机界面设计加进去。

为什么不明说?!
好吧,还是吐槽吧。机械、电气、电子、软件,这么分在工程实现做产品这个阶段比较合适,在技术研究阶段不易如此分,原因很简单,在技术研究阶段四者的重要程度相差太大,不过做工业机器人除外,因为工业机器人玩的就是机电,软件反而是配套。

怎么有控制架构?这是什么东西?
敬爱的李德毅院士在一个报告会上也问了我这个问题,我当时的回答是我不懂AI,用控制我心里踏实。纯属狡辩呀,其实那个时候我是没想清楚。现在有些许体会,分享给大家吧。

控制架构是什么呢?就是为了解决机器人系统的控制问题、实现其系统功能而做的一个概要设计方案。它是AI体系结构的具体实现,是软件架构中逻辑架构的设计依据。很晦涩吧,这就对了,土方法、偏方就这样。下面从分层的思路来谈一下如何开出自己的偏方。

2)分层是个好东西

课本上、论文里有机器人体系结构这个词汇,什么垂直了、平行了、慎思了、反应了、包容了、行为了、三层了、分层递阶了、混杂了,等等、等等。不做东西的时候你觉着没用,但是做东西的时候你会觉着更没用,没tm一个现成的!(吐槽一下,一听说机器人操作系统就激动的原因之一就是现成,但抱着这个思想用ros做系统,你早晚会骂街)。

前人栽树,后人乘凉。你非要在树旁不在树底下,还骂街说不凉快,那就是咱自己的问题了。上述任何一个东西都来之不易,都有用,就我自己总结,最大的作用就是分层,这也是它们的共同点。

分而治之的top down设计,逢山开山、遇水搭桥的bottom up设计,这些都离不开分层。

分层的作用有人说有利于模块化,有人说可以隔离变更,但我认为它最大的作用是为智力有限的人类在解决复杂问题时提供了一个慢慢爬楼以及休息休息接着爬的台阶。nillison、saradis、brooks、albus,他们在提各种体系结构的时候都要休息休息,何况我们真的要爬的时候呢?

抱着分层的思想,从下往上也好,从上往下也好,你都会找到一些基本的模块,如果再进行抽象,抱着组件化的思想,你会总结出一个叫做组件原型或者模块原型这样的一个东西。当然ros里没有现成的,它不提供node的原型或者说设计模板,但你可以多看几个功能包,看高手是怎么设计的,进而总
我:

3)ros做系统设计时真不是东西

机器人系统的特点是分布并发、实时控制。这必然要协调各个模块的问题,但
ros在这一点上做的很不好。今天写的废话太多,吐槽太狠,累了。所以,为什么说他不是东西就慢慢体会吧。下面,老规矩,上干货。

4)一些推荐

a、分层并发状态机是实现AI系统的利器,ros里有个smach包可以用来做这个。如果你打算用ros做系统,请赶快看它,真的,等你用偏方把自己快喝挂了的时候再去医院不如早点去一趟。用它是必然的,因为这个包是ros的开发者们在用ros做pr2做不下去的时候开发出来的。

b、有个4d/rcs的参考架构,可以用来参考,去做做分层并发实时控制系统,这个我很熟。这个架构nist搞得,nasa火星车、军方无人车都有应用,还配备了开源库,数控机床的开源控制软件linuxcnc也脱胎于此。

c、组件模型上可以参考日本在omg倡导的rtc,有个开源库叫openrtm。md,日文注解!呵呵,学日文太有用了,上大学时我就这么认为。此外还有一坨韩国人搞了一个opros,这个看起来很美,可以一看。

d、类人机器人就看看yarp,当然不是类人机器人也可以去看。yarp来头很大,欧盟,icub,机器人平台。有ros接口,直接伪装ros节点,还有ocoros接口。

e、玩互操作,想进军国外军用市场,就先去看美国的jaus、北约的stanag 4586。对了,jaus我很熟,里面的亮点很多,有机会我好好扯它。

f、我这里可以提供stanag 4586 2.0版本的复印件。当然,请自取复印,不包邮。

标签:

给我留言

Copyright © ExBot易科机器人实验室 保留所有权利.   Theme   Robin modified by poyoten

用户登录

分享到: