ROS
ROSで処理を書く際、ノード間でのデータのやり取りの効率化のため、殆どnodeletとしてクラスを作ることが多いんじゃないかと思います。ただそうすると、そのクラスのメンバ関数をテストをしようとすると他のノードも立ち上がったりして面倒ですよね。じゃあn…
Navigaitonパッケージのamclを使うと、odomフレームがちょろちょろ動くのが確認できると思います。どうしてフレームが動くんだろうと不思議に思っていたので、調べてみました。推測も入っていますが、下記に調べたことなどを纏めます。ROSの下記を見ると、 m…
例えばsensor_msgs::LaserScan::ConstPtrをsensor_msgs::LaserScanに変換したい時があるかと思います。sensor_msgs::LaserScan::ConstPtrの実体は、boost::shared_ptrになります。そのため、 boost::shared_ptr<sensor_msgs::LaserScan> laserscan_ptr = boost::const_pointer_cast<sensor_msgs::LaserScan>(l</sensor_msgs::laserscan></sensor_msgs::laserscan>…
結論から言うと、2種類の方法があります。 ros::names::remap : 返り値としてremapされたパラメータ名が取得できます。 resolveName : 返り値としてremapされたパラメータ名が取得できます。第二引数でremapが成功したかをboolで取得できます。 ros::names:…
逐次わかったこと、気づいたことを追記していきます。catkin_package( # ここには自ら(このCMakeLists.txtが含まれているROS Packageのことを書きます INCLUDE_DIRS # headerファイルを探しに行く時のルートディレクトリを記載します → 1)へ LIBRARIES # ad…
ロボット業界でよく使われるフレームワークとして、ROS[1]というものがあります。ROSでは、生成するプロセス(ROS的にはノード)毎にパラメータを設定することが出来ます。先日そのパラメータを使う機会がありましたので、パラメータの設定方法を書きます。な…