branch for docker env, without arm pkg(12.05時点)
以下、Dockerが導入されていることを前提とします。 Dockerを使用しない場合は、productionブランチを利用してください。
ローカル上で、マップデータが存在するディレクトリの絶対パスを予め取得します。
docker-compose.yaml
の以下の行の該当箇所を絶対パスに書き換え、コメントを外します。
volumes:
# - {ここに絶対パス}:/root/map
完成例:
volumes:
- /home/usr/map:/root/map
$DISPLAY
やpulseサーバのディレクトリなど、各自の環境に応じて適宜変更してください。
ただし、Linux環境であれば、多くの場合初期値のままでいけると思います。
docker-compose.yaml
が存在するディレクトリに移動します。
以下のコマンドを実行します。
docker compose up -d
# すでに作成済みのコンテナがある場合は、
docker compose start -d
これでDockerコンテナが起動します。
初回実行の場合は、Dockerイメージが先に作成されます。
イメージ作成には10~20分程度かかりますので、時間に余裕を持って実行してください。
起動を確認したい場合は、
docker container list
を実行してください。
以下のコマンドを実行してください。
cd /root/catkin_ws && \
catkin_make && \
source devel/setup.bash
MODEL_NAME
で、使用したいVOSKモデルを指定できます。(任意)
VOSKモデルを使用することで高精度の音声認識が可能になる一方、約1GBのディスク容量と最大16GBのメモリを必要とします。
VOSKモデルの一覧は、こちらを参照:VOSK Models
また、目標地点への座標を指定します。[X, Y, Z]
となるように数値を入力してください。
以下のコマンドを実行してください。
cd /root/catkin_ws/home_school_festival_2023/scripts && \
./generate_audio.py
test.launch
ファイル中の以下の記述を確認します。
<include file="$(find nav_lecture)/launch/navigation.launch" >
<arg name="map_file" value="/root/map/{マップのファイル名}.yaml" >
</include>
value=
の後に、使用するマップデータのファイル名を指定してください。
この際、パス(/root/map/
)は変更しないように注意してください。
launchファイルの起動には、次のコマンドを実行してください。
roslaunch home_school_festival_2023 test.launch
launchファイルは次のlaunchファイルをインクルードします:
- minimal.launch
- rplidar.launch
- navigation.launch
launchファイルは次のノードを起動します:
- main_node
- stt_node
- tts_node
- finger_node
- send_goal_node
終了したい場合は、
docker compose stop
破棄したい場合は、
docker compose down
を実行してください。
破棄した場合、再度実行する際にはenv.py
やtest.launch
を書き換える必要があります。
また、Dockerコンテナは破棄されますがDockerイメージは破棄されません。