体系结构图

本节将全面介绍NAOqi的体系结构。

1. 安全体系结构

一个名为NAOqi的代理程序始终在机器人上运行。您也可以在所有的平台上运行NAOqi。如果这个代理程序崩溃,机器人就会摔倒,甚而会严重损坏。所有动态连接到主代理程序的库都可能让NAOqi崩溃。在一个较安全的体系结构中,应从另一个用户代理程序调用方法。如果用户代理程序崩溃,机器人摔倒的可能性较小。移除进程或代理程序的操作在100ms内不会予以交流。

Safe architecture

要应用这一体系结构时,必须在主代理程序(NAOqi)之后运行myBroker。

2. 不安全体系结构

unsafe architecture

在这一结构中,用户模块崩溃会导致NAOqi崩溃,从而可能会导致机器人摔倒。但是,调用比远程模式快。

3. NAO当前的体系结构

在这一结构中,用户的代理程序或模块可以从任何地方插入。

Aldebaran Robotics software architecture

Audioout

可执行档或本地模块

  • audioplayer:播放文件
  • ALTextToSpeech:声音合成(默认语言为英语)

Telepathe

图形用户接口(GUI),可用来查看变量,并提供在NAOqi上的GUI可视化界面。

  • camera viewer (摄像头查看器):在电脑上查看摄像头
  • memory viewer (内存查看器)

NAOqi主代理程序

NAOqi里的模块有的是必须的(在“autoload.ini”的[core]一节里),有的是可选的(在“autoload.ini”的[extra]一节里)。

  • ALLauncher: 自动加载。管理外部库。
  • ALNetwork: 自动加载。管理远程网络信息交流。
  • Framemanager:读取Choregraphe项目,使用嵌入式Python解释器。
  • PythonBridge: 嵌入式Python解释器。
  • ALPreferences: 管理.xml首选项文件。该模块在“albase.so”里。
  • ALMemory: 机器人的共享内存。该模块在“albase.so”里。
  • ALLogger: 管理日志。该模块在“albase.so”里。
  • ALBonjour: Apple协议,用来在网络上寻找机器人。
  • ALFileManager: 管理机器人的文件。

API的蓝色说明书中介绍所有必须及可选模块。





Copyright © 2010 Aldebaran-Robotics - 版权所有