案例要求

在这里插入图片描述

在这里插入图片描述

创建地图

./1-gmapping.sh在这里插入图片描述
把多个launch文件融合在sh文件里面

rviz仿真

rviz是rose集成的可视化界面,查看机器人的各项数据,
在这里插入图片描述

保存地图

roslaunch robot_slam save_map.launch

在这里插入图片描述

坐标点定位

要让机器人移动到对应位置,给予坐标信息(X,Y,偏转角度),信息保存于multi_goal.launch
在这里插入图片描述

建图位置和起点位置要重合

小车的坐标系:X轴朝左,单位m;Y轴朝上,单位m;偏转角度逆时针为正,单位°

在这里插入图片描述
调用坐标点的命令

navi.goto(goals[第几个坐标])

识别训练

分别打开两个终端启动两个launch文件
启动摄像头

roslaunch usb_cam usb_cam-test.launch

启动识别文件

rolaunch find_object_2d find_object_2d.launch

在这里插入图片描述


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
手动给图像做分类,z表示是命名名称

主逻辑理解

代码是
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

语音播报

使用os.system('mplayer %s' % music1_path)这行代码,通过系统调用来执行mplayer命令并播放指定的音乐文件。music_path指定了要播放的音乐文件路径
在这里插入图片描述
查看当前路径:pwd
在这里插入图片描述
语音播放识别成功:
在这里插入图片描述

没有听到声音:查看扬声器信道
没有运行成功:查看代码格式

可以用TTS文本转语音

在这里插入图片描述

模块匹配

在这里插入图片描述self.find_sub = rospy.Subscriber('/object_position',Point,self.find_cb);
创建了一个订阅者(Subscriber),用于接受名为/object.position的话题发布的geometry_msgs.msg.Point类型的消息,并将其传递给self.find_cb方法进行处理。

rospy.Subscriber:创建一个订阅者对象
'/object_position:指令要订阅的话题名称
Point:指令要订阅的消息类型,即geometry_msgs.msg.Point
'self.find_cb’是回调函数,当从/object_position话题接受到消息是,该函数将调用来处理接收到的消息

通过这行代码,节点将订阅/object_position话题,一旦有新的geometry_msgs.msg.Point类型的消息发布到该话题上,self.find_cb将会被调用来处理接收到的消息数据

列出当前系统中所有已发布和已订阅的话题:

rostopic list

查看名为 /object_position的话题上的消息:

rostopic echo /object_position

在这里插入图片描述
启动摄像头和识别软件

roslaunch usb_cam-test.launch
roslaunch find_object_2d find_object_2d.launch

在这里插入图片描述
代码具体含义:
在这里插入图片描述
在这里插入图片描述

二维码识别

在这里插入图片描述

代码具体含义:
在这里插入图片描述
在这里插入图片描述

多点导航

在这里插入图片描述
在这里插入图片描述

讲解视频

1.万创鑫诚.自主巡航方案分析
2.万创鑫诚.自主巡航实践

其余篇章

1.【机器人和人工智能——自主巡航赛项】基础篇
2.【机器人和人工智能——自主巡航赛项】动手实践篇

Logo

更多推荐