teruノート

ROSでロボットとか。Ubuntuで困ったこととか。

Raspberry Pi 3でROS Indigoを動かしたいが…

RPi3でROSは動きます。

が、いろいろと問題があります。


RaspbianでROSをビルドすれば、roscoreの起動確認まですんなりいきました。

日本語の情報もぐぐればいくつか出てきます。


ただ、パッケージの追加がapt-getでできず、こちらもソースからビルドになるようで面倒です。

しかも、チュートリアルにあったjoystick_driversのインストールは途中でRPi3が固まってしまいました。
こんな感じで、ビルド時に-j2オプションをつけて2コアでコンパイルするように指定するとうまくいきます。

sudo ./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --install-space /opt/ros/indigo -j2

ROSberryPi/Installing ROS Kinetic on the Raspberry Pi - ROS Wiki



パソコンと同じようにUbuntu 14.04がインストールできれば、同じ環境を構築出来て一番いいのですが、RPi3でUbuntu 14.04を使うには一筋縄ではいかないようです。(2016/11現在)

Ubuntu 16.04はRPi3を公式サポートしているのですが、今後14.04もそうなるのかはわかりません。


RPi3のハードウエアとの親和性ではRaspbianのほうが上だと思うので、あきらめずにRaspbianで頑張ってみようと思います。

Raspberry Pi3導入編

Raspberry Pi3買いました。

OSはRASPBIAN JESSIE WITH PIXEL(September 2016)をインストールします。

www.raspberrypi.org

imgファイルをDD for windowsというソフトを使ってmicroSDに書き込みました。

このLCDHDMI接続なので、起動時そのまま映りました。

https://www.amazon.co.jp/gp/product/B00WGVL4R4/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1

しかし、640x480で認識され右側一部映らなかったので、waveshareのwikiに沿ってドライバをインストールします。

5inch HDMI LCD - Waveshare Wiki

これでタッチパネルも動作するようになりました。

あとはいろいろ

sudo raspi-config

で、適当に設定しておきます。

ターミナルのフォントをUbuntuと同じフォントにしたかったので、フォントをダウンロード。

Ubuntu Font Family

/usr/share/fontsに置けば読み込んでくれます。

日本語入力のためibusとmozcを入れて、ラズパイ導入は一段落しました。

Qwtのインストールでコケて諦め

GUIクロスプラットフォーム開発環境のQtでグラフなどを簡単に扱えるようになるQwtというファームウエアがあります。

公式サイトはこちらです。
http://qwt.sourceforge.net/

ソースコード形式で配布されているので、自前の環境でビルドする必要があります。

公式には、展開したqwt-6.1.3フォルダ内で

qmake qwt.pro
nmake
nmake install

と叩けばC:\qwt-6.1.3にインストールされるとあります。


が、nmakeでエラーが出ました。

Qt5OpenGLd.lib(Qt5OpenGLd.dll) : fatal error LNK1112: モジュールのコンピューターの種類 'x64' は対象コンピューターの種類 'X86' と競合しています。

とのことでした。言わんとしていることはなんとなくわかりますが、どのように対処すればよいかわかりませんでした。

なお当方の環境はVisual studio 2015 64bitコンパイラ、Qt v5.7.0 64bitです。



試しに、qwt-6.1.3フォルダ内のqwt.proをQt Creatorで開き、ビルドしました。

すると、qwt-6.1.3フォルダがあるフォルダに自動生成されるbuild-qwt-Desktop_Qt_5_7_0_MSVC2015_64bit-Debugフォルダに、バイナリが生成されていました。

Makefileもあったので、そこでnmake installしたところ、C:\qwt-6.1.3にインストールされました!




こちらにあるように、designerプラグインを使おうとしたのですが、「有効なWin32アプリケーションではありません」とエラー表示があり、「失敗したプラグイン」となってしましました。

月の杜工房 - Qwt概要


これは、Qt Creatorが32bitであることに起因するようです。

ならqwtを32bitコンパイラでビルドすればいいと思ってやってみたのですが、今度は「指定されたプロシージャが見つかりません」とエラー表示があり、designerプラグインはもうあきらめました…