はじめに
swim-loverです。前回、ROSをRasberryPi4でインストールしてみました。
今回、Raspi Camera の画像をROSに取り込んで表示してみます。
Raspi Camera 用Nodeインストール
Raspi Camera のnoetic向けパッケージが公開されていました。
インストラクションに従って、インストールを進めます。
Add the source to your apt lists:
Sudo sh –c ‘echo “deb https://packages.ubiquityrobotics.com/ubuntu/ubiquity focal main” > /etc/apt/sources.list.d/ubiquity-latest.list’
Add our signing key to your trusted list:
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key C3032ED8
しばらく間をおいてから、エラーとなります。
Executing: /tmp/apt-key-gpghome.YC9ojiQ6cn/gpg.1.sh –keyserver hkp://ha.pool.sks-keyservers.net:80 –recv-key C3032ED8
Gpg: 鍵サーバからの受信に失敗しました: サーバが失敗を示しています
Keyの受信に失敗しているようです。これでは先に進めません。
同じエラーが出ていることについて記載があるBlogもあり参考にさせていただきました。
ソースコードからBuild
ソースコードからのBuildは以下のgitサイトにある、Build Instructions に従って進めます。
自分のcatkin_ws へ移動して、
cd ~/catkin_ws/src
src 配下にCloneします。
git clone https://github.com/UbiquityRobotics/raspicam_node.git
依存関係ファイルを新規作成します。
/etc/ros/rosdep/sources.list.d/30-ubiquity.list
このファイルに以下のコマンドを記載します。
yaml https://raw.githubusercontent.com/UbiquityRobotics/rosdep/master/raspberry-pi.yaml
source.list.d 以下でupdate を実行します。
rosdep update
しかし、rosdep updateで https://raw.githubusercontent.com/UbiquityRobotics/rosdep/master/raspberry-pi.yamlがHitしないエラーが出てしましました。(エラーの画面のキャプチャーを忘れていました。)
原因は、proxy 環境配下での実行にあるのでは?と予想し、non-proxy環境でrosdep updateを実行しました。
non-proxy環境の場合、rosdep updateが無事終了しました。
次にrosdep をinstallします。
cd ~/catkin_ws
rosdep install --from-paths src --ignore-src --rosdistro=$ROS_DISTRO -y
catkin_make コマンドでビルドを行います。
また、/boot/firmware/config.txt に start_x=1, gpu_mem=128の追加を行った。(参考とさせていただいたBlogの内容のままです。)
raspicam_node実行
roscore コマンドを実行して、いよいよ、launch コマンドを実行します。
launchファイルは、6ファイル用意されていいます。
camerav2_120x960.launch を実行します。
画像の表示は、rqt_image_viewで行います。
カメラ画像が表示されました。
まとめ
今回は、ROSシステムにRaspi Camera 画像を取り込み、表示してみました。
組み込み系ソフトエンジニアをしています。これまでフロントエンド技術は避けてきましたが、食わず嫌いをやめて、勉強を始めました。
趣味は、水泳、ロードバイク、ランニング、登山です。
組み込み系技術ネタ、勉強したフロントエンド技術、たまに趣味の運動について発信していきます。
どうぞよろしくお願いします。
コメント