
机器人建模、地图构建、导航避障:提供word文档、视频、图片及代码资源
想让机器人在家里自由穿梭?先得给它造个身体。用URDF(机器人描述格式)就像搭乐高,把轮子、传
感器这些零件拼起来。看这段代码:
```xml
<link name="base_link">
<visual>
<geometry>
<cylinder length="0.1" radius="0.2"/>
</geometry>
</visual>
</link>
<joint name="left_wheel_joint" type="continuous">
<parent link="base_link"/>
<child link="left_wheel"/>
<origin xyz="0 0.15 0"/>
</joint>
```
这个底盘(base_link)像个圆桶,左右轮子用continuous关节连着,注意xyz坐标里的0.15就是轮子
间距的一半。加个激光雷达的话,得在顶部加个<box>几何体,Z轴坐标要高于底盘。
搞定建模之后,下一步是让机器人认识周围环境。ROS里的gmapping真香,实测用树莓派+激光雷达
扫办公室:
```python
roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping
```
这时候推着机器人满屋转,RVIZ里会实时生成类似雾状的地图。关键在scan话题的数据处理,激光
雷达每帧数据都会通过粒子滤波算法转化成概率栅格。记得在launch文件里调map_update_interval参数
,扫描速度快就设小点。
避障最刺激,move_base包就像自动驾驶系统。配置文件里这几个参数最要命:
```yaml
controller_frequency: 5.0