NAO机器人入门指南(二):在Choregraphe使用Python

在NAO机器人入门指南(一)中,我们安装并熟悉了choregraphe的基本界面,这次则介绍如何在在Choregraphe使用Python。

一、连接

NAO机器人入门指南(二):在Choregraphe使用Python_第1张图片

二、创建指令盒

右键双击中间区域,创建python的指令盒
NAO机器人入门指南(二):在Choregraphe使用Python_第2张图片

三、指令盒内部面目及代码示例

NAO机器人入门指南(二):在Choregraphe使用Python_第3张图片
随便写个,hallo

NAO机器人入门指南(二):在Choregraphe使用Python_第4张图片
在这后面添加代码

def __init__(self):
   GeneratedClass.__init__(self)

添加

self.tts = ALProxy('ALTextToSpeech')

以及这后面

   def onInput_onStart(self):
        #self.onStopped() #activate the output of the box

添加

self.tts.say("Hello young Padawan")

如图
NAO机器人入门指南(二):在Choregraphe使用Python_第5张图片

点击‘运行button运行
NAO机器人入门指南(二):在Choregraphe使用Python_第6张图片

四、运行结果

机器人说:“hello young Padawan.” 你也可以在机器人视图上看到显示

五、为什么这样写?原理?

此脚本使用ALTextToSpeech模块中的sayALTextToSpeechNAoqi模块专门用于speech的一组API(应用程序接口)。 say可以让机器人说出括号里的字符串。

加黑体是啥玩意??完全看不懂嘛!
我截取了官网的一张图,看完后你大概就能理解他们之间的关系NAO机器人入门指南(二):在Choregraphe使用Python_第7张图片
就是这个,大概就是一个归属关系
然后你可以把ALTextToSpeech看一下了解一下细节,但其他大的先不要看,我怕在学习路上又少一个队友(滑稽)

然后解释一下加进去的两行代码

self.tts = ALProxy('ALTextToSpeech')

在这一行中创建了一个名为tts的对象。

  • self是为了确保tts不仅可以在本地使用,而且可以在脚本的所有代码块中使用。
  • tts是我们给了对象实例的名称~~( could have been myspeechmodule或speakingmodule)~~
  • ALProxy()是一类对象,允许您访问模块的所有方法。
  • ALTextToSpeech是我们使用的NAOqi模块的名称。
self.tts.say("Hello young Padawan")

用我所学的一丢丢python知识通俗地说:

  • self.tts是我们使用的的对象(上面说了是我们创建的对象)
  • say()让机器人说话的方法(可以理解为函数)
  • “hello young Padawan”是参数(就是要他说的话)。

六、我们学到了什么?

机器人可以做点事了,就像我们上面做的那样:

  1. 创建一个对象来访问naoqi的模块
  2. 调用其中一个可用的方法。

七、渺小如我

可能这篇文章看完下来你会发现有许多知识是自己不知道的,大有"渺沧海之一粟"的感觉。
但胡适说的好:"怕什么真理无穷,进一寸有进一寸的欢喜。"保持自己无止境的好奇心,在探究路上找到那些隐藏的一片片的欢喜,在不知不觉中走到自己的“理想国”。

披清风,默默去冲。 ----陈百强《疾风》

八、额外兴趣学习

  • python官网教程
  • 学习更多关于在Choregraphe创建python 脚本盒的知识
  • 探索调用naoqi的模块和方法

九、参考

  • 官网教程
  • NAO使用手册互动人形机器人绪论

十、NAO机器人入门指南系列链接

NAO机器人入门指南(一):必备软件choregraphe的使用

你可能感兴趣的:(NAO)