Huihoo.org - Open Enterprise Foundation

 Last Modified: 2003.06.02

实时Java进展 - JavaNator(Sun公司演示机器人)介绍


(作者:Tim Rohaly,翻译:于淼([email protected]))

概述

原文:http://www.javaworld.com/javaworld/jw-03-2002/j1-02-robots.html

虽然实时Java在JavaOne里只占不起眼的位置,但是在James Gosling的演讲上,实时Java脱颖而出。更进一步,人工智能机器人演示程序是实时Java这项崭新规范的经典应用。(1,300 字)

2002年3月26日

如果你完整地参加了周一早上举行的JavaOne发布会的开幕式和博览会那么你就可以对Sun公司地JavaNator演示先睹为快了。为了使市场对Java新技术有个完整、统一的概念,James Gosling从JavaOne开幕式来到博览会现场,分阶段地演示了正在崛起的新技术。其中JavaNator的演示,显示了实时Java应用在嵌入式设备中的优势,该嵌入设备与无线Java电话整合,应用于点对点的网络服务体系中。

实时Java

实时Java是Gosling的一项涉足的领域。实时系统兴起于嵌入式应用程序和其他任何需要时间确定性的应用。

实时Java规范(RTSJ)是171个提交者中的第一个,向Java进程委员会(JCP)提出Java规范请求(JSR1)。虽然RTSJ在2001年11月才通过了JCP的考评,之前已经有很多其他规范已经通过,但是通过的并不就是完成的。Sun公司并不想执行参考规范,那么这项工作就落在了TimeSys的身上。

RTSJ包括了实时Java的以下特性:实时线程,异步事件,可中断无阻塞I/O,物理内存访问,时序调用,计时器。Sun公司其中一项战略就是嵌入式应用程序,RTSJ也加入到行列中来。其中有失败的嵌入式Java,个人Java,还有PicoJava;也有成功的J2ME(Java2平台简化版)。RTSJ是否可以继续下去,是否能继续从事Sun公司的其他项目,我们将拭目以待。以往在这个领域的经验告诉我们,Sun与RTJS都将面临挑战,任重而道远。

虽然很多公司提出Java的实时解决方案,比方说aJile system,esmertec,NewMonics,还有无线Zucotto,但这些供应商的产品都不支持RTSJ。事实上,大多数嵌入式VM和硬件提供商都把眼光放在了J2ME,没有意向跳到实时Java的队伍中来。虽然这些公司已经能支持一些实时性,但是我们并没有看到显而易见的直接支持RTJS的成果。一些人认为RTJS今后将被推广(在未来12-18个月内),但是大多数人在等待市场决定是否要进军这种新的API接口。

但是Ajile System是个例外-aJile与RTJS的专家组合作,正在致力于RTJS在aJ-80和aJ-100芯片上的实现。

机器人sumo

机器人JavaNator向世人们展示了掌控应用程序的应用,这样的应用程序可以捕捉实现人们想象中的事物,同时也突出了几个Sun公司整合在一起的关键技术,那就是网络服务,实时Java和无线服务。这显然是发布会的亮点,使这场发布会富有积极的意义。简而言之,JavaNator就是一个基于Java的机器人。

JavaNator的想法起源于日本的机器人sumo。机器人sumo在日本已经风靡很多年了,但就在近5年,它开始在美国崭露头角。Bill Harrison起先在美国普及sumo,同时他也附带着设计、制造了机器人推进系统并用在了JavaNator身上。

机器人sumo还可以是摔跤sumo。两个机器人面对面站在圆形竞技场上,努力迫使对方退出场外。和其他我们在电视上常看到的竞技不同,机器人sumo的竞技规则一点都不暴力,因为蓄意给对方致命的打击是绝对不允许的。同样,人们也不去控制他们,他们是依靠预定程序来活动的。这时,软件和硬件一样重要。

在日本的机器人有尺寸和重量上的限制。机器人必须包装在20×20cmm的箱子里,并且不能超过3Kg重。

JavaNator的竞争对手叫做JamesNator,因为James Gosling做的演示所以这样叫。JamesNator也是同类的机器人,但是没有自我操控能力,Gosling用一个无线电信号接收器来控制它。

观众可以将JavaNator配置成一部基于Java的无线电话,通过Sun公司的ONE(统一网络环境)网络服务和无线以太网来传输。观众可通过任何一种方式分配速度和敏感度的比例,就像大富翁游戏里如何将100点合理分配一样。

机器人还可以通过相机播放视频,虽然在发布会上没有演示,但是它的确可以通过无线以太网传输展示给观众。虽然JavaNator是可以自我操控的,但是所有动作设定是要靠预置程序来完成的。

蕴涵在演示背后的是极其传统的和超前的Java两种科技混合体。传统一方面:其实是两个直流发动机驱动JavaNator。每个发动机负责机器人一边的两个轮,两边有不同的操作配置。JavaNator用超音速搜索探测器来发现对手,并保持自己呆在竞技场内。机器人前肢下有两个红外线镜像以探测竞技场边缘。操控台是人工定制的。

机器人同时具有显著的Java软硬件特性。CPU是Systronix's Jstamp的,基于aJlie的aJ-80芯片。基于传感输入的程序植入Jstamp硬件中,驱动机器人的发动机。普通以太网通过视频相机连接Jstamp,然后通过802.11b无线以太网Ubicom无线桥桥接到iPlanet程序服务器上。应用程序服务器提供基于网络的接口,用来给机器人配置JavaNator和控制实时视频输出。配置接口通过MIDlet通信,MIDlet运行在J2ME激活的程控电话环境中。



JavaNator和JamesNator


JavaNator和JamesNator的摔跤比赛进行了两场。Gosling操控着他的机器人在第一场胜出,很快就把JavaNator推出场外。然而,JavaNator在第二场胜出,使得比赛以1:1告终。

点对点

恐怕这次发布会得出的唯一让大家公认的结果就是Java可以点对点应用。从数据库开始,经过应用程序服务器,网络服务、无线连通,直到J2ME/实时Java接口,再到现实世界,善于适应环境变化的的客户机程序,经常又受到能力的限制。经过艰苦卓绝的努力,Java从桌面程序成长起来。如今Java的点对点能力要归功于Sun公司技术统一化的努力,如XML,SOAP,J2ME和无线技术。JavaNator的演示表现出了Java的点对点能力。

不久将出现在你身边

如果你像展厅里大多数人群一样,提早离开了开幕式,或者你想了解更多的技术,你将在Moscone中心的Hacker Lounge南展厅,得到更进一步的有关JavaNator的情况,就在入口出的西边。Sun公司还计划在下月将JavaNator推向应用,让我们期待着出现在我们身边的机器人竞技赛吧。

About the author

Tim Rohaly has worked as a Java technology consultant, trainer, and speaker since shortly after the introduction of Java in 1995. He is an active participant in the Portland Area Robotics Society (PARTS), and designer of the PARTS Mark III Mini Sumo Robot Kit.

Resources

· All Japan robot sumo Website:
http://www.fsi.co.jp/sumo-e/out/out00000.html

· David Cook has created an excellent illustrated introduction to the sport:
http://www.robotroom.com/SumoRules.html

· The starting point for real-time Java:
http://www.rtj.org/

· The Real-Time Specification for Java, Gregory Bollella (Editor) (Addison-Wesley Publishing Co., 2000; ISBN: 0201703238) is a little outdated -- it doesn't correspond to the final approved specification, but it is a good treatment of the problems and considerations for real-time computing in general, and Java-specific concepts in particular:
http://www.amazon.com/exec/obidos/ASIN/0201703238/javaworld

· Real-Time Java Platform Programming, Peter C. Dibble (Prentice Hall, 2002; ISBN: 0130282618) is a more current book:
http://vig.prenhall.com/catalog/academic/product/1,4096,0130282618,00.html

· TimeSys is providing the RTSJ reference implementation:
http://www.timesys.com/

· aJile makes the aJ-80 Java chip at the heart of JavaNator:
http://www.ajile.com/

· Systronix's JStamp:
http://jstamp.systronix.com/index.htm

· Robot sumo competitions are held in many places across the country. Upcoming competitions:
o Seattle Robothon:
http://www.seattlerobotics.org
o Portland's PDXBot:
http://www.portlandrobotics.org/PDXBOT/
o Roborama in Dallas:
http://dprg.org/dprg_contests.html
o The just-completed Robot Games in San Francisco
http://www.robots.org

· More information on JavaOne is available at:
http://servlet.java.sun.com/javaone/sf2002/home/index.jsp

· Browse JavaWorld's Industry News index page:
http://www.javaworld.com/news-reviews/jw-nr-industry.shtml

Browse JavaWorld's Product News index page:
http://www.javaworld.com/news-reviews/jw-nr-industry.shtml

· Sign up for JavaWorld's free weekly Java Industry News email newsletter:
http://www.javaworld.com/jw-subscribe

· Speak out in the JavaWorld Forum:
http://forums.devworld.com/webx?13@@.ee6b802
You'll find a wealth of IT-related articles from our sister publications at IDG.net