ChoregrapheのSpeech Reco.ボックスのソースを解析してます。

ソースを見ると

```

    class MyClass(GeneratedClass):
        def __init__(self):
            GeneratedClass.__init__(self, False)
            try:
                self.asr = ALProxy("ALSpeechRecognition")
    
```

とありますが、self.asrのasrという変数はどの様な意味合いの変数なのでしょうか？

selfはChoregrapheのSpeech
Reco.ボックス自身を指し示していると認識していますが、asrという変数に値を代入することにより、よりOS側に何か命令を送ってるのでしょうか？  
(Googleで検索したらASR moduleと言うキーワードを見つけましたが、より細かい説明は見つけられませんでした。)

以上よろしくお願いします。
CC BY-SA 3.0
2017-12-07T13:33:41.833
40116
2020-01-11T14:01:10.140
2018-01-23T02:46:36.933
19110
26550
question
python pepper choregraphe
変数　asrについて
ご質問の書き方だと、変数の名前の意味にこだわっているように見えます。  
名前自身はKenji Noguchiさんの言うように、使用するモジュールの頭文字でしょう。

答えとしては、「使用したいモジュールへのALProxy(のオブジェクト)」  
であって、TCP/IPのsocketやOSのCOMポートデバイスをCreate/Openして、  
そのハンドルを格納する変数と同様のものと言えます。

この場合はプログラムの個々のステップや変数の意味合いを検索するよりも、  
全体の基本から調べた方が良いでしょう。  
以下のサイトを参考にしてください。

Pepper NAO Choregraphe Naoqi wiki  
<http://naoqi.memo.wiki/d/Python%20SDK>

> Key Conceptsを理解しよう  
>  Key Conceptsを一読の上以下を読み進めてください。
>
> 基本的なアプローチは  
>  •ALProxyをImportする(引用元から修正)  
>  •使用したいモジュールへのALProxyを作成する(引用元から修正)  
>  •Methodを呼び出す
>
> 上記をプログラムにすると以下のようになる。
```

>     　from naoqi import ALProxy
>     　tts = ALProxy("ALTextToSpeech", "<IP of your robot>", 9559)
>     　tts.say("Hello, world!")
>  
```

NAO のプログラミング環境の基本（１） クロス・ランゲージ、クロス・プラットフォームな開発環境  
<http://tkawata.hatenablog.com/entry/2013/12/28/165950>

> ここで AL::ALProxy がプロキシ です。  
>  プロキシ のインスタンスは特定のモジュールと通信をし、  
>  モジュール内の機能を操作、また状態を確認したり、  
>  イベントを受け取ったりすることができます。
>
> モジュールは機能ごとに細分化されています。  
>  一つの プロキシ のインスタンスは一つのモジュールと通信をすることができます。

Pepperアプリ開発 ALProxyについて  
<https://utage.headwaters.co.jp/blog/?p=4430>

NAOqi / コレグラフ APIモジュール一覧（ver. 2.0.5）  
<https://qiita.com/robotstart/items/7814bb56d0b56b1ad5ae>
CC BY-SA 4.0
2017-12-08T00:32:44.750
40119
2019-11-22T07:05:47.027
2019-11-22T07:05:47.027
3060
26370
40116
answer