欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-07-14 22:03:38
...

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

一、连接

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

二、创建指令盒

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

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

NAO机器人入门指南(二):在Choregraphe使用Python
随便写个,hallo

NAO机器人入门指南(二):在Choregraphe使用Python
在这后面添加代码

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

点击‘运行button运行
NAO机器人入门指南(二):在Choregraphe使用Python

四、运行结果

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

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

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

加黑体是啥玩意??完全看不懂嘛!
我截取了官网的一张图,看完后你大概就能理解他们之间的关系NAO机器人入门指南(二):在Choregraphe使用Python
就是这个,大概就是一个归属关系
然后你可以把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. 调用其中一个可用的方法。

七、渺小如我

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

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

八、额外兴趣学习

九、参考

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

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