はじめに
この記事は次のスマートファニチャープラットフォーム「カチャカ」APIマニュアルの「サンプルコードをJupyterLabで実行する」までを自分のPCで実行して、いくつかの面白いサンプルプログラムを説明した記事です。
カチャカをプログラムで動かす3つの方法
カチャカを自分のプログラムで動かす方法は次の3つです。ロボカップなどのロボット競技会で使う場合は、2番目、3番目の方法になります。
- カチャカ本体に自分のプログラムを入れる方法:カチャカにはPlaygroundというカチャカ本体で動くコンテナ環境があり、そこから自作のプログラムを動かすことができる。ただし、リソースがストレージ3GB、メモリが512MBと限られる。
- PCからカチャカAPIを使って動かす方法:カチャカはgRPC(Googleが開発した高性能なリモートプロシージャコール(RPC)フレームワーク)準拠のAPIを提供しているので、ローカルネットワーク(WiFI)からカチャカを動かすことができる。
- PCからROS2を使って動かす方法:ROS2ブリッジを使用し、ROS2からgRPCで提供されるサービスを実行できる。
利用するための準備
- カチャカAPIの有効化
- スマートフォンアプリを起動し、「設定」 →カチャカ設定「カチャカ」 → 「カチャカAPI 」→ 「カチャカAPIを有効化する」のスライドバーを右に移動しONにする。
JupyterLabで動かす
- カチャカのIPアドレスを調べる。
- スマホアプリの「設定」→「アプリ情報」→「IPアドレス」
- ブラウザを起動して、アドレスバーに以下のURLを入力する。
- http://<カチャカのIPアドレス>:26501/
- ログイン画面が表示されるので、以下のパスワードを入力する。
- パスワード:kachaka
パスワードの変更
- セキュリティを強化するためにパスワードを変更しましょう。Launcherから「Terminal」をクリックして起動する。
- Terminalで次のコマンドを入力すると”Enter password”と表示さえるので新しいパスワードを入力する。Terminalには何も表示されないが、Enterキーを押すと”Verify password”と表示されるので、同じパスワードを入力する。うカチャカを再起動すると新しいパスワードが反映される。
- jupyter lab password
サンプルコードのダウンロード
- 左枠のファイル一覧から README.ipynb をダブルクリックして、上部メニューバーの「▶▶」をクリックする。
- 以下のダイアログが表示された場合は「Restart」ボタンを押す。
- サンプルコードのダウンロードが完了すると、以下のようなメッセージが表示され、左側のファイル一覧に kachaka-apiフォルダが作成される。
依存ライブラリのインストール
- ダウンロード後、最初の一回だけ次の手順を実行します。左コラムのファイル一覧からkachaka-api → python → demosフォルダを選択する。
- install_libraries.ipynbをダブルクリックすると、右のコラムにソースコードが表示される。
- 上部メニューバーの「▶▶」ボタンをクリックして依存ライブラリをインストールする。
サンプルコードの実行方法
- 左コラムのファイル一覧からkachaka-api → python → demosフォルダを選択する。いろいろ面白いサンプルコードがあるので試してみると面白いと思う。
- 左コラムのファイルをダブルクリックすると、右側にソースコードが表示されるので、どういうAPIでカチャカを動かせるかわかる。
- 実行方法は、メニューバーの「▶▶」ボタンをクリックするとサンプルコードが実行される。次にいくつかのサンプルコードの実行結果を紹介する。
サンプルコードの例
- speak.ipynb:音声合成のデモ。「カチャカです、よろしくね」と喋る。
- teleop.ipynb:ROSなどでお馴染みの遠隔操作のデモ。十字キーが表示されるので、それを使いカチャカを好きな方向に移動できる。
- get_front_camera.ipynb:フロントカメラの生画像と圧縮画像を取得し表示する。
- get_laser_scan.ipynb:LiDARのデータ取得と表示
- get_object_detection.ipynb:画像による物体検出。人とカチャカシェルフは検出できた。
今回はここまで。続く。。。
コメント