جارٍ تحميل الدرس...
في نافذة الطباعة اختر «حفظ كملف PDF» كوجهة.
مراقبة الكاميرا والليدار (LiDAR) والقياس التقريبي (Odometry)
GazeboRViz لمراقبة حساسات الكاميرا والليدارsudo apt-get install gz-harmonic
sudo apt install ros-jazzy-cartographer ros-jazzy-cartographer-ros
sudo apt install ros-jazzy-navigation2 ros-jazzy-nav2-bringup
sudo apt install ros-jazzy-rviz2 ros-jazzy-rqt*
cd ros_ws/src
git clone -b jazzy https://github.com/ROBOTIS-GIT/DynamixelSDK.git
git clone -b jazzy https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
git clone -b jazzy https://github.com/ROBOTIS-GIT/turtlebot3.git
git clone -b jazzy https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
colcon build --symlink-installexport TURTLEBOT3_MODEL=waffle_pi مع ROS_DOMAIN_ID مشترك (30) في ~/.bashrcWheel Encoders)، وحدة القصور الذاتي (IMU)، القياس التقريبي البصريnav_msgs/msg/Odometry = الوضعية (Pose) (مع التباين المشترك Covariance) + السرعة (Twist) (مع التباين المشترك)geometry_msgs/PoseWithCovariance pose
geometry_msgs/Pose pose
Point position # x, y, z
Quaternion orientation # rotation
float64[36] covariance
geometry_msgs/TwistWithCovariance twist
Twist twist
Vector3 linear
Vector3 angular
float64[36] covariance360 درجة للعوائق ورسم الخرائطturtlebot3_lab05 أدوات المراقبةexport TURTLEBOT3_MODEL=waffle_pi
export ROS_DOMAIN_ID=30
ros2 launch turtlebot3_lab05 lab05_complete.launch.pyGazebo مع TurtleBot3، وعروض RViz معدة مسبقا، ومراقب قياس تقريبي لحظي (Real-time)، ومسجل لبيانات الحساسات، وجميع جسور ROS-GazeboTwistStamped (وليس Twist العادية) على /cmd_vel لتتبع الطابع الزمني (Timestamp)ros2 run turtlebot3_teleop teleop_keyboard# Manual publish alternative
ros2 topic pub --rate 10 /cmd_vel geometry_msgs/msg/TwistStamped \
'{header: {frame_id: ""},
twist: {linear: {x: 0.2, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.1}}}'| العرض | Topic | الإعداد |
|---|---|---|
| نموذج الروبوت (Robot Model) | - | نموذج TurtleBot3 ثلاثي الأبعاد من وصف الروبوت |
| مسح الليزر (LaserScan) | /scan | نقاط أو كرات، بحجم ~0.1 م |
| الصورة (Image) | /camera/image_raw | النقل المضغوط (Compressed Transport) لتحسين الأداء |
| القياس التقريبي (Odometry) | /odom | سهم مع أثر لآخر ~100 وضعية |
| TF | - | عرض الأطر base_link وodom وmap بصريا |
ros2 topic list
ros2 topic info /scan
ros2 topic hz /scan
ros2 topic hz /odom
ros2 interface show sensor_msgs/msg/LaserScan
ros2 interface show nav_msgs/msg/Odometrymap
odom
base_footprint
base_link
camera_link
base_scan
map = المرجع العام، odom = ينحرف مع الزمن، base_link = جسم الروبوت، وتتفرع أطر الحساسات من base_linkros2 run tf2_tools view_frames
ros2 run tf2_ros tf2_echo map base_linkturtlebot3_simulationsrobot_state_publisher يعمل وأن URDF ينشرGazebo واسم الموضوعGazebo ليست متوقفة مؤقتا، وتأكد من وجود ناشر ومشترك لـ /cmd_velros2 topic echo /cmd_vel --once
ros2 topic info /cmd_velTwistStamped على /cmd_vel، بخلاف Twist العادية المستخدمة في المعامل السابقةRViz (Robot Model وLaserScan وImage وOdometry وTF) مجموعة الأدوات القياسية لمراقبة الحساساتmap إلى odom إلى base_link إلى الحساسات) كيفية ارتباط كل قراءة حساس مكانياros2 topic hz وros2 topic info وtf2_echo الأوامر المرجعية لتشخيص حالة "لا يحدث شيء"Mahmoud Abas|معمل 05: محاكاة TurtleBot3 مع RViz - الكاميرا وLiDAR وOdometry