はじめに
ROS の初心者が、とっても簡単なROSアプリを作ってみました。(連載記事です)
雑記(書き洩らしたことを思いつくまま)
- (ROS に限らないけど)一度聞けば「二度と聞く必要がない当たり前」のことを知る機会が重要であり必要である
- 正確には、そのようなこと(↑)が、どこにまとめられているかわからなく、たどり着けなかった
- 知っていて、相談できる人いないと今回の記事は存在しなかった
- ROS に関して、以下のような「パターン」を知れてよかった
- ROSアプリが稼働する k8s ノード上にて、[multimaster_fkie] (http://wiki.ros.org/multimaster_fkie) も稼働させる
- この結果、ROS アプリからは localhost で ROS MASTER が稼働しているかのように利用できる
- ほとんど設定することなく multimaster_fkie が ROS MASTER との通信を処理してくれる
- ROSアプリが稼働する k8s ノード上にて、[multimaster_fkie] (http://wiki.ros.org/multimaster_fkie) も稼働させる
- Dockerfile に処理を記述したら、処理の数だけ(?) Layer が追加された
- 処理を shell スクリプト化し、Dockerfile からスクリプトを実行するようにした
- 処理の数は2つ(COPYとRUN)に減ったが 、これが良いやり方なのかは不明
- docker build キャッシュ関連に影響するのは確実
- 処理を shell スクリプト化し、Dockerfile からスクリプトを実行するようにした
- Subscriber(ROSアプリ)を起動したままの状態で、画像撮影1回ごとに Publisher(ROS)を起動終了すると、メッセージが Subscriberに届かない(失われた?)
- 今回、詳細原因追及していない
- Publisher 生成の際、latch=True を指定したら改善した(ような気がする)
雑記の雑記(今回の記事とは直接関係のないこと)
- ディスプレイ接続なしで Raspberry Pi Zero W への固定 IP アドレス割り付け方法がわからなかった
- raspbian os をインストールするにあたり、SD カードに OS イメージを書き込むだけでセットアップを終了したい
- 1台ならキーボードやディスプレイを接続してセットアップできるけど、100台とか想像すると面倒じゃないですか?
- Pi Zero W を起動したあとは、無線ネットワーク経由で操作したくないですか?
- そのためにも、以下をクリアしたい
- WiFi の設定
- SSH 接続を許可
- ネットワーク経由で操作するなら必須
- 固定 IP アドレスの割り当て
- Zeroconf/Avahi/Bonjour 使っても良いかもしれないが、台数が多いと固定IPアドレスの方が管理しやすくないですか?
- そもそも、DHCP が使えない場合だってある
- MAC アドレスを知りたい
- ssh 接続してしまえばコマンド一発で判明するが、その前に知りたい
- そもそも、WiFi アクセスポイント側で MAC アドレスで制限を実施している場合だってある
- raspbian os をインストールするにあたり、SD カードに OS イメージを書き込むだけでセットアップを終了したい