第一部分:认识 NAO 机器人
NAO 是什么?
NAO 是由法国公司 Aldebaran Robotics(现为 SoftBank Robotics)开发的一款小型人形机器人,它拥有:

(图片来源网络,侵删)
- 类人外观: 两个手臂、两条腿、一个可以转动和眨巴的头部。
- 丰富的传感器: 摄像头、麦克风、超声波传感器、惯性传感器(陀螺仪、加速度计)、压力传感器等。
- 强大的交互能力: 可以说话、听懂语音、识别物体和人脸、进行简单的对话。
- 开放的平台: 提供了完整的软件开发工具包,支持多种编程语言,是学习和研究人工智能、机器人学的绝佳平台。
NAO 的核心能力
- 运动控制: 可以行走、转身、挥手、抓取物体、跳舞等,它的关节非常灵活,能实现复杂的动作。
- 语音交互: 内置语音合成(TTS)和语音识别功能,可以进行语音问答和命令执行。
- 视觉识别: 可以识别颜色、形状、二维码、人脸,甚至进行简单的物体追踪。
- 环境感知: 通过超声波传感器可以测量与障碍物的距离,避免碰撞。
- 自主编程: 用户可以通过编程,让 NAO 完成自定义的复杂任务。
第二部分:如何开始你的 NAO 之旅?
获取 NAO 机器人
对于个人入门者,直接购买一台全新的 NAO 机器人价格非常昂贵(通常数万美元),有以下几种更现实的途径:
- NAO Simulator (模拟器): 强烈推荐! 这是入门的最佳方式。
- 优点: 完全免费!无需购买实体机器人,就可以在你的电脑上运行 NOS(NAO 的操作系统),编写和测试代码,几乎所有在实体机上能做的操作,在模拟器上都能完成。
- 如何获取: 访问 SoftBank Robotics 官网,下载 NAOqi SDK,其中就包含了模拟器。
- 购买二手或旧型号 NAO: 一些早期的 NAO 型号(如 NAO V5/V6)可能会在二手市场或一些教育机构中以较低的价格出售,适合有一定动手能力的爱好者。
- 加入机器人社团或学校实验室: 很多大学、中小学的机器人社团或实验室都配备了 NAO 机器人,可以申请加入使用。
- 参加比赛或工作坊: 关注一些机器人比赛(如 RoboCup Standard Platform League)或技术公司举办的工作坊,有机会接触到 NAO。
核心软件:NAOqi 和 Choregraphe
- NAOqi (发音 "Now-kee"): 这是 NAO 机器人的操作系统,它负责管理机器人的所有硬件(电机、传感器)和软件模块(视觉、语音等),你编写的程序最终都是运行在 NAOqi 之上的。
- Choregraphe: 这是 NAO 的图形化编程软件。
- 是什么: 一个拖拽式的可视化编程环境,你可以通过拖拽“盒子”(Box,代表一个动作或一个功能)来创建一个流程图,让 NAO 执行一系列动作。
- 为什么重要: 对于初学者来说,Choregraphe 是最快、最直观的上手方式,你可以:
- 让 NAO 说一句话、做一个动作。
- 创建一个简单的对话流程。
- 将你的流程打包成一个“行为”(Behavior),方便重复使用。
- 关键功能: Choregraphe 内置了 NAO 的模拟器,你可以在电脑上直接调试你的程序,然后一键部署到实体机器人上。
第三部分:学习路径与资源推荐
熟悉环境 (1-2 周)
- 安装 Choregraphe 和模拟器: 从 SoftBank Robotics 官网 下载最新的 NAOqi SDK 并安装。
- 打开模拟器: 启动 Choregraphe,连接到模拟器,你会看到一个虚拟的 NAO 站在你的面前。
- 探索 Choregraphe 界面:
- 左边的“库”面板: 这里包含了所有可用的功能模块(盒子),如
Say(说话)、Move(移动)、ALVideoDevice(摄像头)等。 - 中间的“流程图”区域: 你在这里拖拽和连接盒子,构建你的程序。
- 右边的“面板”区域: 显示选中盒子的详细参数,以及机器人实时状态(电量、摄像头画面等)。
- 左边的“库”面板: 这里包含了所有可用的功能模块(盒子),如
- 完成第一个任务: 从库中拖一个
Say盒子到流程图,双击它,修改文本为 "Hello, World!",然后点击“播放”按钮,你应该能在模拟器的扬声器里听到声音。
图形化编程入门 (1-2 个月)
- 学习流程控制:
- 顺序执行: 把多个盒子(如 Say -> Wait 2秒 -> Say)连接起来。
- 条件判断: 使用
If/Else盒子。“如果 看到红色,就 说 'Red!',否则 说 'Not red.'”。 - 循环: 使用
Loop盒子,让 NAO 重复做某个动作,比如挥手10次。
- 使用关键传感器:
- 视觉: 尝试使用
ALFaceDetection(人脸检测)或ALColorBlobDetection(颜色检测)盒子,让 NAO 对特定颜色或人脸做出反应。 - 语音: 尝试使用
Listen盒子,让 NAO 听到特定关键词(如“跳舞”)后,执行一个跳舞的动作流程。 - 超声波: 使用
AL ultrasonic盒子,让 NAO 在距离障碍物太近时停下来。
- 视觉: 尝试使用
- 创建一个完整的小项目:
- 项目示例: 迎宾机器人,当 NAO 看到人时,说“欢迎光临”,然后挥手,并询问“请问有什么可以帮您?”。
进阶 - Python 编程 (长期学习)
当图形化编程无法满足复杂需求时,就需要学习更强大的编程方式,NAO 官方支持 Python,这是目前最主流和最推荐的编程语言。
- 理解 NAOqi 模块: Python 通过调用 NAOqi 提供的 API(应用程序编程接口)来控制机器人。
ALMotion模块控制运动,ALTextToSpeech模块控制语音。 - 从简单脚本开始:
- 在 Python 中导入模块:
from naoqi import ALProxy - 创建代理对象:
tts = ALProxy("ALTextToSpeech", "NAO_IP", 9559) - 调用方法:
tts.say("Hello from Python!")
- 在 Python 中导入模块:
- 结合 Choregraphe 和 Python:
- 你可以在 Choregraphe 的一个盒子中执行一个 Python 脚本,实现更复杂的逻辑。
- 也可以将整个复杂的逻辑用 Python 写成一个模块,然后在 Choregraphe 中调用。
- 学习资源:
- 官方文档: NAOqi API Documentation 是最权威的资料。
- 官方示例代码: SDK 中包含大量 Python 示例代码,是最好的学习材料。
- 社区和论坛: SoftBank Robotics 官方论坛、Stack Overflow 等社区可以帮你解决问题。
第四部分:核心概念和术语
- IP 地址: NAO 机器人在局域网内的唯一地址,就像你的电脑在家庭网络中的地址一样,连接机器人时需要用到。
- 端口: NAOqi 默认使用
9559端口进行通信。 - 模块: NAOqi 中的一个功能单元,如
ALMotion(运动模块)、ALAudioPlayer(音频播放模块),你的程序通过连接这些模块来控制机器人。 - 代理: 你的程序与远程模块之间的桥梁,通过创建代理,你的程序才能调用模块的功能。
第五部分:实践项目建议
- 初级:
- 模仿者: NAO 模仿你的几个简单动作。
- 问答机器人: 回答一些预设好的问题(如“你叫什么名字?”“你多高?”)。
- 颜色识别游戏: 你举起不同颜色的卡片,NAO 说出颜色名称。
- 中级:
- 避障小车: NAO 在一个简单的环境中自主行走,并绕开障碍物。
- 简单的舞蹈: 编排一段包含多个动作的舞蹈。
- 人脸跟随: NAO 的头部会自动转向并跟随视野中的人脸。
- 高级:
- 情感交互: 结合语音和表情,模拟简单的喜怒哀乐。
- 物体识别与抓取: 识别特定物体,并尝试用机械手抓取(需要硬件支持)。
- 与环境互动: 结合摄像头和语音,完成一个简单的寻物任务。
NAO 机器人是一个将硬件、软件和人工智能完美结合的平台,对于初学者,最友好的路径是:
下载安装 Choregraphe 和模拟器。 用图形化拖拽完成几个简单项目,熟悉机器人的基本能力。 当遇到图形化编程的瓶颈时,开始学习 Python,调用 NAOqi API。

(图片来源网络,侵删)
这个过程会充满挑战,但每当你成功让 NAO 完成一个新动作时,都会获得巨大的成就感,祝你学习愉快,早日成为 NAO 大师!

(图片来源网络,侵删)
标签: nao机器人新手入门教程 nao机器人零基础学习指南 nao机器人入门学习路径
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。