Lanqiao クラウド クラス ROS ロボット旧バージョン実験レポート-03 視覚化およびデバッグ ツール

プロジェクト名

実験 3 視覚化およびデバッグ ツール 

スコア

内容: ROS[Kinetic/Melodic/Noetic] ノードのデバッグ、ログ メッセージ、システム ステータスの検出、動的パラメータの設定、roswtf、ビジュアル ノード診断、スカラー データ グラフの描画、画像視覚化、3D 視覚化、データの保存と再生、プラグイン

実験記録(70点)

まずソースコードをダウンロードします。

git clone https://gitcode.net/ZhangRelay/cocubesim.git

次に、圧縮パッケージの場合は必ず解凍してください。

解凍コマンドのリファレンスは以下のとおりです。

tar -xf cocubesim/cocubesim.tar

パスが異なる場合は、独自の対応するパスに変更するだけです。

ポイントケースコードをダウンロード:

 

図 1 cocubesim 圧縮パッケージ

グラフィカル デバッグ インターフェイス rqt を開き、ターミナルに「rqt」と入力します。

 

図2 rqtインターフェース

特定のさまざまなタイプのデバッグ ツールが [プラグイン] タブにあります。

例: rqt_console

2 つの方法、1 つの rqt 対応ラベル コンソールのロギング下のプラグイン

 

図 3 コンソール コンソールを開く

別の方法: ターミナルにコマンド rosrun rqt_console rqt_console を入力します。

制御タートルシム ロボットが衝突すると、対応するウィンドウにプロンプ​​トがポップアップ表示されます。

 

図 4 時間情報付きのアラーム メッセージの表示

フィギュアロボットが左側に衝突し、対応するコンソールに警告メッセージがポップアップ表示されます

ダブルクリックして最新の警告メッセージ #145 を開きます

 

図 5 個別の警告メッセージの詳細

時差、ターミナルとグラフィカル デバッグの時刻形式が一致しません。

[ 警告 ] [ 1678850209.594996724 ]: ああ、だめです!壁にぶつかった!([x=-0.003200, y=9.855555]からクランプ)

上のメッセージ内の時間は、1970 年 1 月 1 日からの累積秒数とナノ秒数です。

サービスのグラフィカルなデバッグ:

 

図 6 サービス コール Clear を使用して rqt のトラックをクリアする

Set_pen はトラックの色を緑色に設定します。効果は次のとおりです。

 

 

図7 2種類の軌跡線の描画

教科書の要件に従って自習および実験する方法:

ソースコードと教材をダウンロードする

git clone https://gitcode.net/ZhangRelay/ros_book.git

解压缩已下载目录中如下:

unzip effective_robotics_programming_with_ros-master.zip

选取第三章:

 

图8 选取第三章案例

在code文件夹下,新建robot/src:

 

图9 将案例拷贝到对应文件夹

例如,练习:

用rqt_plot画出时间趋势曲线

可以使用ROS中现有的一些通用工具轻松地绘制标量数据图。当然,非标量数据图也可以绘制,但是要分别在不同的标量域里进行。之所以在此仅讨论标量数据,是因为对于大多数非标量数据,有专门的可视化工具能够更好地对其进行表示,我们会在后面进行部分介绍,例如图形、位姿、方向和角度等。

如下指令在不同窗口执行

第一步:roscore

第二步:rosrun chapter3_tutorials example4

第三步:rosrun rqt_plot rqt_plot /temp/data

 

图 /temp/data数据曲线-斜坡信号

注意:如果没有曲线出现,调整坐标轴参数,还要注意左上角是否添加了对应数据:

 

图 x+y轴详细的参数配置

如果需要添加其他数据,在如下窗口进行选取:

 

图 添加新的信号

选中莫一项点击加“+”号

 

图 添加加速度x,y,z后图表

如果删除某一条线点击减“—”号

 

图 删除某一个信号的具体操作

图如下所示:

 

图 删除特定信号后的图示

继续书中学习完成:

 

图 将线形由实线变为虚线

 

图 将三条曲线合并到一个窗口显示

配置相关的文件路径后,运行roscore和rviz,并且执行如下操作:

 

图 rviz界面

到对应文件夹下,运行:

roslaunch chapter3_tutorials example9.launch

 

图 终端运行第三章第九个案例

修改三维可视化工具中,坐标:

 

图 修改fixed frame坐标

按书中内容进行修改,并没有出现方块!

审查书中和代码并没有发现明显问题,那么回到rviz中,添加对应的marker如下:

 

图 添加Marker

添加后,效果如下:

 

图 红色方块显示

 

图 调整其他参数查看效果

修改固定坐标为:frame_pc

 

图 添加点云

出现下图:

 

图 rviz中显示彩色点云-彩虹色-横向x

 

图 rviz中显示彩色点云-彩虹色-纵向y

思考题(30分):

1 2D图标绘制,能否绘制正弦曲线?

Example4.cpp

msg_temp.data = sin(i/100.0);

 

由于数据类型不匹配,导致输出全部为零。

Int-Float

 

 

2 3D可视化中红色方块,可否变为黄色圆球体?

这时候需要修改代码example9.cpp:

//形状

  msg_marker.type = visualization_msgs::Marker::CUBE;

//颜色

  msg_marker.color.r = 1.;

  msg_marker.color.g = 0.;

  msg_marker.color.b = 0.;

  msg_marker.color.a = 1.;

msg_marker.type = visualization_msgs::Marker::SPHERE;

  msg_marker.color.r = 1.;

  msg_marker.color.g = 1.;

  msg_marker.color.b = 0.;

  msg_marker.color.a = 1.;

 

如果需要改变代码。查阅资料如下:

  1. rviz/DisplayTypes/Marker - ROS Wiki
  2. visualization_msgs/Marker Documentation

AI:

蓝桥云课ROS机器人实验报告-03可视化和调试工具的大纲可能包括以下内容:

  1. ROS可视化工具介绍:介绍ROS提供的主要可视化工具,如rqt_plot、rqt_console、rqt_bag等。
  2. 可视化机器人模型:使用ROS的可视化工具将机器人模型进行可视化,可以直观地观察机器人的姿态、关节状态等。
  3. 可视化机器人传感器:将机器人的传感器数据(如激光雷达、摄像头、IMU等)进行可视化,可以直观地观察传感器数据的变化。
  4. 可视化机器人行为:将机器人的行为进行可视化,可以直观地观察机器人的运动、决策过程等。
  5. 调试工具介绍:介绍ROS提供的调试工具,如rosrun、roslaunch、rqt_console等。
  6. 调试机器人程序:通过调试工具对机器人程序进行调试,可以定位程序中的错误和问题。
  7. 日志记录和排错:介绍如何使用ROS的日志记录功能,以及如何通过日志记录来排错。

以上是蓝桥云课ROS机器人实验报告-03可视化和调试工具的大纲的一个大致框架,具体内容可能会根据实验的目的和实际情况进行调整。

蓝桥云课ROS机器人实验报告-03可视化和调试工具进阶实验内容可能包括以下内容:

  1. 自定义可视化工具:根据实际需求,自行开发ROS可视化工具,例如基于Qt的GUI程序,可以实现机器人模型的可视化、传感器数据的可视化、行为的可视化等。
  2. 可视化机器人路径规划:将机器人的路径规划进行可视化,可以直观地观察机器人的运动轨迹和规划算法的效果。
  3. 可视化机器人建图:将机器人的建图过程进行可视化,可以直观地观察机器人的地图构建情况和环境感知信息。
  4. 可视化机器人SLAM:将机器人的SLAM过程进行可视化,可以直观地观察机器人的位姿估计和地图构建过程。
  5. 可视化机器人运动学:将机器人的运动学模型进行可视化,可以直观地观察机器人的关节状态和运动学方程的求解结果。
  6. 调试工具的高级应用:掌握ROS调试工具的高级应用,如使用rosbag进行数据采集和回放、使用rqt_plot进行多数据可视化、使用rqt_console进行系统状态监控等。
  7. 异常处理和错误调试:学习如何处理ROS系统的异常和错误,通过日志记录和排错技巧,快速定位和解决故障。

以上是蓝桥云课ROS机器人实验报告-03可视化和调试工具进阶实验内容的一个大致框架,具体内容可能会根据实验的目的和实际情况进行调整。

蓝桥云课ROS机器人实验报告-03可视化和调试工具核心要点总结如下:

  1. ROS可视化工具:介绍ROS提供的主要可视化工具,如rqt_plot、rqt_console、rqt_bag等。
  2. 可视化机器人模型:使用ROS的可视化工具将机器人模型进行可视化,可以直观地观察机器人的姿态、关节状态等。
  3. 可视化机器人传感器:将机器人的传感器数据(如激光雷达、摄像头、IMU等)进行可视化,可以直观地观察传感器数据的变化。
  4. 可视化机器人行为:将机器人的行为进行可视化,可以直观地观察机器人的运动、决策过程等。
  5. 调试工具:介绍ROS提供的调试工具,如rosrun、roslaunch、rqt_console等。
  6. 调试机器人程序:通过调试工具对机器人程序进行调试,可以定位程序中的错误和问题。
  7. 日志记录和排错:介绍如何使用ROS的日志记录功能,以及如何通过日志记录来排错。

以上是蓝桥云课ROS机器人实验报告-03可视化和调试工具的核心要点的总结,通过掌握这些内容,可以更好地理解和应用ROS的可视化和调试工具,提高机器人开发效率和调试能力。

//形状   msg_marker.type = visualization_msgs::Marker::CUBE; //颜色   msg_marker.color.r = 1.;   msg_marker.color.g = 0.;   msg_marker.color.b = 0.;   msg_marker.color.a = 1.;

如上代码显示红色方块,参考此代码给出黄色球体的代码

以下是显示黄色球体的代码:

// 形状  
msg_marker.type = visualization_msgs::Marker::SPHERE;  
  
// 颜色  
msg_marker.color.r = 1.0;  
msg_marker.color.g = 1.0;  
msg_marker.color.b = 0.0;  
msg_marker.color.a = 1.0;
请注意,此代码中的msg_marker是一个视觉化标记消息,它包含了要在ROS中显示的标记的信息。type字段指定了要显示的形状类型,这里我们选择visualization_msgs::Marker::SPHERE来表示球体。color字段指定了标记的颜色,这里我们选择黄色,即红色和绿色都为1.0,蓝色为0.0,透明度为1.0。


 

 

おすすめ

転載: blog.csdn.net/ZhangRelay/article/details/132045273