変わりモノがいい!

変わりモノには価値がある・・・ハズ?

速報:AWRにROS2をインストールしました。

前言撤回

最初はROSから始めたいと過去の記事に書きましたが、舌の根も乾かぬうちにROSからROS2に切り替えることにしました。

f:id:ken2017:20201120072053p:plain
理由は、ROSはpython2系に対応しておりpython3系は対応していない、ということです。
python3系を使うには対応しているROS2を使わざるを得ない、ということになりました。
このことはROSインストール前に判ってはいましたが、python2系とpython3系の違いによる影響が判らなかったので、まずはROSを入れ、AWRのアプリを入れて影響を調べてから考えようと思っていました。
昨日、AWRの標準ソフトを入れ、影響を調べました。
その結果、影響は極めて大きい、ということが判りました。
まず、AWRの標準ソフトが正常にインストールできません。
AWRはpython3.7.2を前提にしておりインストールにおいてもpython3系のモジュール関係をインストールしようとしますが、これがことごとくエラーに(ダウンロードされない)なります。
これらのエラーをすべて無視して、AWRをパソコンから制御するためのソフトであるwebServer.pyを走らせようとするとpython2系とpython3系の文法の違いによってsyntax errorが発生します。
なんとかsyntax errorをなくすようにコードの変更をやってみましたが、変更しきれないようなところもあり、よし、ROS2へ切り替えだ、となった次第です。
さてどうなることやら。

Ubuntu MateへのROSインストールは本当に楽です。

ROSをアンインストールし、ROS2をインストールしました。
これも下の記事を参考にしてやりましたが、至って簡単でした。
まずは、ROSのアンインストール。
記事はROS2のアンインストールですが、dashingの記載をmelodicにすればOKです。

qiita.com

次にROS2のインストール。
この記事はMacへのROS2のインストールについて書いてありますが、Ubuntu Mate 18.04へのROS2 Dashingのインストールと見れば問題がなく、この記事に書いてある手順で無事にROS2のインストールを行うことができました。
この記事にある動作テストまでを行い、正常動作を確認することができました。

qiita.com

次は、Raspberry Pi3のpythonのバージョン設定です。

ROS2はpython3.5に対応しています。
AWRの標準ソフトはpython3.7.2を前提としています。
同じpython3系なので問題なく動いて欲しいというのが本音ですが、python3系は、python3.6から変わったようで3.5との違いの影響が判りません。
Ubuntu Mate 18.04には標準でpython3.6が入っています。
今回はpython3.7.2を追加でインストールし、python3.7.2が標準として動くように設定しました。
ここまでは順調です。

次は、AWRの標準ソフトのインストール

最後はAWRの標準ソフトのインストールです。
パッケージをダウンロードし、その中にあるsetupファイルを実行します。
インストールはpython2の時よりは順調に進みましたが、それでも幾つかのwarningAが発生していました。
一部のソフトが入らなかったようです。
気にしないでAWRをパソコンから動かすためのソフトであるwebServer.pyを起動しました。
結果は、ライブラリがない、というエラーで停止。
流石にsyntax errorはでませんがライブラリーがないとは、インストールの時のwarningに関係があるんだろうなと、調べてみると、UbuntuとOpenCVは相性が悪いようで、この関係のライブラリーが入っていない模様です。

qiita.com


これはちょっと時間がかかりそうです。
ROSで遊ぶためにはOpenCVは必要なので調べて対応したいと思います。
ということで、すっきり、とはいきませんが、前には進んでいます。

今日はここまで。

では、また。

 

プライバシーポリシー お問い合わせ