エラー対処法①(自律走行用LaunchファイルでLidarの値を持ってこれないとき) (ROS,Python)

今回のメモは、自律走行機能を実行するLaunchファイルを実行する際、Lidarの値をとってこれなくなった時の対処法に関してメモします。

まず、Lidarには2種類あり、使用するIPアドレスなどを登録しないとそのまま実行権限を与えればできる2種類があります。
今回私が使用したLidarは、権限を与えれば、動くものです。ただこのPCを以前使用していた先輩は、IPアドレスを登録する必要のあるLidarを使用していました。

自律走行を実行するファイルを実行したところ、ethernetに接続云々カンヌンというLidarに関するエラーが出ました。
このファイルは、実行すると自己位置推定するamclやLidarの値をとってくるurg_nodeファイルなどを一斉に実行します。そうすることで、自律走行を実現します。
このエラー原因は、Lidarの値を読み取ってくるurg_nodeのlaunchファイルないでの今回使用するLidarの登録が出来ていなかったことです。

urg_node.launchの中身

上の画像がファイルの中身になります。node pkgの部分にIPアドレスなど記載があり、今回のLidarには関係ないので消去しています。そして、serialport のvalueの中身は接続するものによって変える必要があります。

これを直してうまく値をとれないときは、PCのコマンドプロンプト内の設定で、IPアドレスを使用するLidarを設定してしまっている可能性があります。

コマンドプロンプト内の設定の見方

コマンドプロンプト内の設定を見たい場合は、cat .bashrcで見ることが可能です。

今回のポイントは、launchファイルでのエラーが出たときの対処法です。
まず、launchファイル内で一部そのエラーが出たときは、その部分だけ実行してみましょう。
そして、今回研究室には、色々なロボットがあり、それぞれの自律走行パッケージがありました。もしそれが手元にあれば、試しに、それのLidarの値をとってくるファイルの実行をしてみて比較もしてみましょう。他のPCで試してみるのもありです。
そして、違いを見つつ、ソフトに原因があるのか、ハードに原因があるのかを判断しましょう。ubuntuの機嫌が悪く上手くいかないときもあるので、roscoreの起動しなおしも行うといいでょう。

テキストエディタでのコメントアウトの方法は、
<--! コードとか文字 -->
でできます。

ダブルコーテーション "
コロン:
セミコロン ;
カンマ ,
ハイフン -
ピリオド.
関係ないのですが、PCの記号の名前があいまいだったのでまとめました。

この記事が気に入ったらサポートをしてみませんか?