Pythonと COZMO SDKのインストール、サンプルプログラムの展開の後は、COZMO SDK のサンプルプログラムのチュートリアルを順にみていきます。
最初に、SDKのアップデートがあるかもしれないので、念のためアップデートを実行
pip3 install --user --upgrade cozmo
今回確認するプログラムは、 “examples/tutorials/01_basics/01_hello_world.py” です。
「Hello World」としゃべるプログラム。
サンプルプログラムを展開したフォルダの examples/tutorials/01_basics/ に移動して
01_hello_world.py
こちらを実行。
シャベッタアアアアアア!
プログラムはこれだけです。
import cozmo def cozmo_program(robot: cozmo.robot.Robot): robot.say_text("Hello World").wait_for_completed() cozmo.run_program(cozmo_program)
「Hello World」の部分を変えることで好きな言葉をしゃべらせることができます。
APIはこちら。
http://cozmosdk.anki.com/docs/generated/cozmo.robot.html#cozmo.robot.Robot.say_text
say_text(text, play_excited_animation=False, use_cozmo_voice=True, duration_scalar=1.0, voice_pitch=0.0, in_parallel=False, num_retries=0)
COZMOアプリの「おしゃべり」では、「英数字」「ひらがな」「かたかな」で入力する必要があったのですが、SDKを使ってしゃべらせる時には「漢字」入力可能でした!!(スクリプトファイルは UTF-8で保存しておいてください。)
robot.say_text("僕は、ラッキービースト だよ").wait_for_completed()
ゆっくりすぎますね…。duration_scalarを指定すると、話す速度を変更することができます。
robot.say_text("僕は、ラッキービースト だよ",duration_scalar=0.1).wait_for_completed()
duration_scalarの値は、日本語の場合にはあまりうまく動かないみたい。
ホントなら0.5にすれば、指定なしの半分の時間でしゃべる(倍速でしゃべる)と思うのだけど。このへんは、試行錯誤でいい感じの値をみつけるしかないですね。
それと、一度duration_scalarを指定したら、その後その値をデフォルトとして使用するみたいです。
結構、長文もいけます。1命令で100字ぐらいまでですね。
robot.say_text("さぁ、 COZMOとの生活のはじまり。 アプリを立ち上げて、今日一緒にやることを確認しよう!",duration_scalar=0.1).wait_for_completed() robot.say_text("様々なミッションをクリアするたびに、COZMOはエネルギーを得て成長します。 日々の行動によって成長する、あなただけのCOZMOに育てましょう。",duration_scalar=0.1).wait_for_completed()
こちらは、COZMOサイトの説明文章でした。
少々読み間違いがありますが、かなり優秀。ニュースヘッドライン取得して読んでもらう、とかできそうですね。