基于SOA的微软机器人开发环境(1)

本文介绍了基于SOA架构的微软机器人开发环境RoboticsStudio,探讨了机器人产业的发展现状及面临的挑战,详细解析了RoboticsStudio1.0的设计理念与功能特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文地址:http://blog.youkuaiyun.com/thefirstwind/archive/2007/02/10/1507277.aspx 

说明:基于 SOA 的微软机器人开发环境 Robotics Studio (1)
机器人业界正期待Ford的出现
Ford system 是在汽车产业中采用的合理化生产方式。产品的单纯化,部件的规格化、生产手段和工厂的专门化。

原文作者介绍:
大川 善邦
工学博士
日本大学工学部非常勤講師
大阪大学名誉教授
2007/2/9
译者介绍:
  本连载针对, 2006 12 月微软发布的 「Robotics Studio 1.0( 英文版 )」 进行概要性的说明。连载的第一回题目为,机器人业界的现况和课题说明,针对 Robotics Studio 1.0 的技能简介
相关网站
Microsoft Robotics Studio
http://msdn.microsoft.com/robotics/
 
机器人 业界 的现状
 
  首先,简单介绍一下机器人业界的现状
  近年来,和机器人相关的新闻经常已经是耳熟能详了 工厂生产线上操作机器人来处理简单重复性的操作 宇宙探险中使用机器人作业 深海勘查中利用海下机器人等等 还有,2005年开始欧美开始使用胃肠诊断机器人获得许可 再有,家庭环境中使用护理,清洁,照顾幼儿等专用的机器人 如此说来,机器人的专门分工已经快速发展起来,在人类的日常生活中也逐步的广泛应用起来
  最近 兴趣两足行走机器人等种类的机器人非常方便的就可以买到 上面所说的高性能专用机器人,对于普通消费者购买来说还是比较困难的。经过笔者的调查,如今在日本家庭用机器人 http://www.banryu.jp/ 的价格是 200 日元(14万人民币) 由于考虑到机器人的开发费用相当昂贵,因此价格方面即使家用机器人对于普通消费者来说仍然是奢侈品
相关链接
日本 机器人学会
http://www.rsj.or.jp/
日本 机器人工业
http://www.jara.jp/
 
从汽车产业学起
 
  为什么,突然说起了汽车产业的发展历史 原因是 在这段历史中暗示着机器人普及的必然性
  汽车发明于 18 世纪中期 工业革命 」。 针对 詹姆斯瓦特 蒸汽发动机 」、 很多发明家对各种各样的汽车雏形进行研发 如果,没有试验阶段,普及就无从谈起 在此之后, 汽油机车的发明,进一步的推动了汽车的实用化 当时普通人是没有办法以当时的价钱轻松购买的。
  20 世纪初 美国 亨利福特 的汽车生产线的成立,大量生产汽车成为可能。 在此生产方式下爆发了汽车的普及
  如今,机器人产业正处于 正等待着亨利福特的出现 的状态
  时下的机器人业界正处于,厂商分别使用各自的方法研制机器人的 群雄割据的时代 为了实现机器人的普及 笔者认为出现亨利福特式的生产线是当务之急
  当然,汽车和机器人是不一样的 即使 说汽车和摩托的统一规模大生产 机器人的价格也下不来 花在机器人制造的大量精力 应该不是部件的 物质 资源 移动的 算法 」、 也就是说是软件的开发 就例如,行走过程中回避障碍物,和接受人的语言命令等等 ……。
  类似此类算法如果能被通用化且自由的使用,相信机器人的价格会大幅度的下调。 换句话说,即 机器人的动态软件通用化 」、 也就好比汽车产业的 组装生产线 的普及
相关链接
 
Robotics Studio 1.0 设计法
 
  为什么,本连载要说 Robotics Studio 1.0 笔者认为在机器人群雄割据的时代, Robotics Studio 1.0 算是一种新模式的设计方法
  要注意的是 这里介绍的是 Robotics Studio 1.0 作为一种设计法的有效性, 而并非主张 Robotics Studio 1.0 是机器人开发的组装生产线 」。
  以下连接是 Robotics Studio 1.0 英文版 。在用在非商用用途从 http://www.microsoft.com/downloads/details.aspx?FamilyId=3D706147-82E2-4B4A-AF12-DB7D3F8ACD8A&displaylang=en 可以免费下载
Third Parties 的应用实例
Robotics Studio http://msdn.microsoft.com/robotics/ 网站里面有个叫做 Featured Third Parties 的项目, 在这里有开发实例的介绍 还有 、「 Watch the video! 的连接以及实际能动机器人的录像
 
SOA 的机理
 
  现在,对 Robotics Studio 1.0 的思想和功能介绍一下
  Robotics Studio 1.0 是基于 SOA Service Oriented Architecture )」 架构
  针对网络连接的多台个人电脑 进行信息交换
  这便是 SOA 的基本机能
  Robotics Studio 1.0 来说 设置 节点 (Node)」 和被调用的基本单位是必要的 因此,组建针对单节点的多 服务 (Service)」 (注) 通过该服务,以达到信息的交换功能 具体来说就是 机器人针对 障害物 而做出的停止或绕过的反应服务 或者 对红外线或声音的反应服务 等等
注: 服务 (Service) 又被称为 子程序 或者 「API」
  另外,针对企业级的程序的构筑方法,或者说针对 高内聚 (Tightly Coupled)」、Robotics Studio 1.0 是以 低耦合 (Loosely Coupled)」 的方法构建的
  低耦合的程序开发中,各种各样的服务的强独立性,是必要的考虑内容 例如,服务 A 给服务 B 信息 」、 服务 B 要针对该信息进行什么样的处理 此时 服务 B 对服务 A 发出报错信息,即 「通知( Notification )」 (注) 是必须要考虑的
注: 通知 中断 (Interrupt)」 发生时的信息反馈
  SOA 消息 数据 )」 「通知」 种信号处理 而对信号的综合处理机构叫做 「CCR(Concurrency and Coordination Runtime)」。 1 所示,节点的最底层 CCR 的配置
图1   节点的构造
  所谓节点是 HTTP TCP/IP 的服务 该服务机能为 、「DSS(Decentralized Software Service)」 所提供 DSS 、Web 服务是最小限度的服务 比如 HTTP GET 方法等 )。 另外,用户自定义的必要服务也可以订制在节点上
  所谓的各节点 1 的构造 分时处理 CCR DSS 在此之上由默认的服务和用户自定义的服务 (注)
注: 如果没有用户自定义服务,也可以生成节点
 Robotics Studio 1.0 节点的状态在 Web 浏览器中可以被监视到
画面 1   节点的控制内核画面 使用 IE 表示
  对于低耦合的 (Robotics Studio 1.0)、 多程序并行执行调试相对困难些 针对高内聚设置了布莱克点数 在程序停止的状态下也是不能检查的 原因是 当程序停止的时候依存关系被破坏 因此 通常情况下分析log(日志)来分析程序的运行状态以及调试
  还有 网络连接是必要的 这个网络应用在互联网的时候其安全性被看作是重要的研究课题 。Robotics Studio 1.0、 在消息收发时要建立目标对象的友好关系 因此在友好关系之外的对象是无法收发信息的 (注)
注: 友好关系登陆的安全 是必须的 友好关系登陆也是安全的手段,但不是唯一
 
相关

和机器人的 “人机交互”
 
  去商场或旅游胜地等有机器人做向导的话将会是非常方便和便利的。机器人也可以作为看护或育儿或人们生活的助手 考虑到此类机器人,必须要能明白 人们的语言,并且有作答的能力 」。
2   导购机器人图
  遗憾的是, Robotics Studio 1.0 没有声音识别的机能设计 但是 使用 「Speech SDK」 可以进行语言识别 (注)
注: 对应英语发音 并且已经预先登陆了男女三人的发音 另外,使用 Speech SDK 登陆自己的声音,也可以用自己的声音进行识别
  如今 人类语言世界技术并未完善 另外 技术人员们赞成 无法完全识别语音 的看法 但是 笔者支持作为 补足手段 ,进行语言识别 原因是,我们人们日常生活中, 反问 等的确认过程经常是用来 完善 理解」 以加强对听到的话的理解 今后的研究 人类语言识别技术的有待提高
服务的开发
 
  Robotics Studio 1.0 中标准安装包括 「Visual Programming Language(以下、VPL)」 (注) 这样的话,可视化开发变成可能 使用 UML 技术进行程序设计,编码图形化 这样便可生成程序的骨架 、VPL 是纯粹的bottom-up语言
注: Visual C# 或者 Visual Basic 等也可以开发
 VPL 、画面左 侧工具栏是基础的 Basic Activities Services ,画面中央是工作区 在图之间用各种线表示不同处理 画面 2 是英语的 「Hello World」 发音程序示例
画面 2   Visual Programming Language
 
与机器人连接
 
 Robotics Studio 1.0 和机器人的连接
  首先,机器人的种类有如下两种
  1. 机器人控制设备对应.NET Framework 3.0大型机器人工厂用溶接机器人等
  2. 机器人控制设备使用小型CPU不用和.NET Framework 3.0对应(H8PIC等微机控制小型机器人
  上述 1 中机器人控制设备设置结点,该结点中用户配置自定义服务,可以对机器人进行控制
  上述 2 、PC 中设置结点 通过 Bluetooth 等借助结点和机器人通信
3 、PC 结点与机器人通信
 
3   结点与机器人通信
 PC 的结点通过向机器人发送指令信息进行通信 相反,机器人探查到障碍物,向节点发送结果通知报告
适合 物理 定律的虚拟机
 通常、 机器人控制程序为图像识别,声音识别,人工智能 神经网络等非常复杂的运算 。Robotics Studio 1.0 为提高程序开发效率,在实际测试之前,要使用 「Visual Simulation Environment」 来测试
 
画面 3   Visual Simulation Environment
  为了使虚拟机接近现实 、物体 的运动计算使用复杂 「物理 定律 」。 例如 、「 空气运动学轨道 」「 物体间突然碰撞 等进行计算时使用 牛顿运动方程 」。 还有 为了计算高速处理 使用美国 AGEIA Technologies 的物理演算处理过程 「PhysX」。
相关连接
 
  下一回介绍 、Robotics Studio 1.0 中实际机器人连接测试 VPL 和虚拟机的交叉说明来 理解 测试结果
 
 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值