以前有专门为ROS定制的软件库如PCL、Stage、Gazebo。H版本里这一部分做了较大的变动,将依赖于这些专用的软件库,修改成了依赖于其相应标准软件库。比如,一个软件包需要依赖ROS版的PCL,现在则改为依赖标准的PCL即可。这样就不需要单独更新ROS版本的PCL。Stage和Gazebo情形也类似。
Player项目由布莱恩·格基、理查德·沃恩(Richard Vaughan)和安德鲁·霍华德一起发起的。布莱恩·格基和安德鲁·霍华德都有提及。关于理查德·沃恩,如果大家关注今年在加拿大温哥华举办的IROS机器人大会,2017年程序委员会主席就是这位英国大人理查德·沃恩。理查德·沃恩毕业于英国剑桥大学,获博士学位,后来到美国宜人的洛杉矶,南加州大学做博士后研究。理查德·沃恩后来一直在加拿大西门菲莎大学(Simon Fraser University, SFU)做研究。
图:布莱恩·格基、理查德·沃恩和安德鲁·霍华德,Player项目的发起人。
最早可以追溯到1999年南加州大学机器人实验室。在南加州大学,这几位一起开发了Player项目[1],其中包括2个子项目:一个是Player,一个是Stage。
图:Stage仿真环境
Player是一个各种机器人设备的服务器,客户端可以利用计算机网络,通过Player控制机器人设备和传感器。
Stage是一个二维的机器人仿真环境。
2004年左右,Gazebo,这样一个三维的基于物理的机器人仿真环境,加入到了Player项目中。后来车库资助Gazebo的开发,Gazebo独立成一个单独的项目。
Player和Stage的名称来源于莎士比亚戏剧“皆大欢喜”舞台剧中的独白。Gazebo意思为舞台中带圆顶的露台。
图:Gazebo意思为舞台中带圆顶的露台
“All the world’s a stage, and all the men and women merely players. They have their exits and their entrances; and one man in his time plays many parts…” ——William Shakespeare, “As You Like It”
“世界是一个舞台,所有的男男女女不过是演员,他们都有下场的时候,也都有上场的时候。一个人的一生中扮演着好几个角色。” ——莎士比亚《皆大欢喜》
附:The Seven Ages of Man (from As You Like It, II, vii)
by William Shakespeare (朱生豪 译)
All the world’s a stage,
全世界是一个舞台,
And all the men and women merely players;
所有的男男女女不过是一些演员;
They have their exits and their entrances;
他们都有下场的时候,也都有上场的时候。
And one man in his time plays many parts,
一个人的一生中扮演着好几个角色,
His acts being seven ages. At first the infant,
他的表演可以分为七个时期。最初是婴孩,
Mewling and puking in the nurse’s arms;
在保姆的怀中啼哭呕吐。
Then the whining school-boy, with his satchel
然后是背着书包、满脸红光的学童,
And shining morning face, creeping like snail
像蜗牛一样慢腾腾地拖着脚步,
Unwillingly to school. And then the lover,
不情愿地呜咽着上学堂。然后是情人,
Sighing like furnace, with a woeful ballad
像炉灶一样叹着气,写了一首悲哀的诗歌咏着
Made to his mistress’ eyebrow. Then a soldier,
他恋人的眉毛。然后是一个军人,
Full of strange oaths, and bearded like the pard,
满口发着古怪的誓,胡须长得像豹子一样,
Jealous in honour, sudden and quick in quarrel,
爱惜着名誉,动不动就要打架,
Seeking the bubble reputation. Even in the cannon’s mouth. And then the justice,
在炮口上寻求着泡沫一样的荣名。然后是法官,
In fair round belly with good capon lin’d,
胖胖圆圆的肚子塞满了阉鸡,
With eyes severe and beard of formal cut,
凛然的眼光,整洁的胡须,
Full of wise saws and modern instances;
满嘴都是格言和老生常谈;
And so he plays his part.
他这样扮了他的一个角色。
The sixth age shifts. Into the lean and slipper’d pantaloon,
第六个时期变成了精瘦的趿着拖鞋的龙钟老叟,
With spectacles on nose and pouch on side;
鼻子上架着眼镜,腰边悬着钱袋;
His youthful hose, well sav’d, a world too wide
他那年轻时候节省下来的长袜子,
For his shrunk shank; and his big manly voice,
套在他皱瘪的小腿上显得宽大异常;他那朗朗的男子的口音
Turning again toward childish treble, pipes
又变成了孩子似的尖声,
And whistles in his sound. Last scene of all,
像是吹着风笛和哨子。
That ends this strange eventful history,
终结着这段古怪的多事的历史的最后一场,
Is second childishness and mere oblivion;
是孩提时代的再现,全然的遗忘,
Sans teeth, sans eyes, sans taste, sans everything.
没有牙齿,没有眼睛,没有口味,没有一切。
这首诗,非常准确的诠释了Player和Stage软件。
[1] Brian Gerkey, Richard Vaughan,Andrew Howard. The Player/Stage Project: Tools for Multi-Robot and Distributed Sensor Systems, ICRA 2013