Open shunsugar opened 1 day ago
解決したため、以下に解決までに行ったことを示します。 ・ros2 launch orange_bringup with_ros2bag.launch.xml のnodeすべてにuse_sim_time=trueを設定 ・rosbagのplay時にオプションとして--clockを設定 この二つを行うことで解決しました。
プログラム内でuse_sim_timeの設定がない場合でもlaunchに追記することで解決できます。 以下に記述例を示します。
<include file="$(find-pkg-share your_package)/launch/your_launch.launch.xml">
<arg name="use_sim_time" value="true"/>
<node pkg="your_package" exec="your_node">
<param name="use_sim_time" value="true"/>
まだ確認できていませんが、おそらくparametersを使用します。
parameters=[{
'use_sim_time': True
}],
今後rosbagを使用してmapを作成する際のコマンドを示しておきます。
・ros2 launch orange_bringup with_ros2bag.launch.xml use_sim_time:=true
・ros2 launch orange_slam slam_toolbox.launch.xml use_sim_time:=true with_ros2bag:=true
・ros2 bag play {BAG_FILE_NAME} --clock
ついに見つけちゃいましたね。ありがとうございます。
参考として過去のissueとpull requestを上げておきます。
概要
bagファイルに必要なトピックが揃っているにも関わらず、
ros2 launch orange_bringup with_ros2bag.launch.xml
ros2 launch orange_slam slam_toolbox.launch.xml with_ros2bag:=true
ros2 bag play {BAG_FILE_NAME}
の3つを起動しても地図が作成できません。
frameやuse_sim_timeの問題だと思っています。おそらくodomとlivox_frameのフレームが繋がっていないのが原因です。 今、作業しているブランチはfix/with_ros2bagです。これは最優先に解決したいです。お願いします。
odom
Odometry形式のトピックである
/odom
や/odom_fast
、/odom_CLAS_movingbase
、/fusion/odom
の確認はできています。livox_frame
/livox/lidarをpointcloud2形式に変換したトピックもそれぞれ確認できています。