【机器人和人工智能——自主巡航赛项】进阶篇

Cai junhao 2024-07-21 16:01:03 阅读 84

文章目录

案例要求创建地图rviz仿真

保存地图坐标点定位识别训练主逻辑理解语音播报模块匹配二维码识别多点导航讲解视频其余篇章

案例要求

在这里插入图片描述

在这里插入图片描述

创建地图

<code>./1-gmapping.sh

在这里插入图片描述

把多个launch文件融合在sh文件里面

rviz仿真

rviz是rose集成的可视化界面,查看机器人的各项数据,

在这里插入图片描述

保存地图

<code>roslaunch robot_slam save_map.launch

在这里插入图片描述

坐标点定位

要让机器人移动到对应位置,给予坐标信息(X,Y,偏转角度),信息保存于<code>multi_goal.launch

在这里插入图片描述

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

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

在这里插入图片描述

调用坐标点的命令

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

识别训练

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

启动摄像头

roslaunch usb_cam usb_cam-test.launch

启动识别文件

rolaunch find_object_2d find_object_2d.launch

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

手动给图像做分类,z表示是命名名称

主逻辑理解

代码是

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

语音播报

使用<code>os.system('mplayer %s' % music1_path)这行代码,通过系统调用来执行mplayer命令并播放指定的音乐文件。music_path指定了要播放的音乐文件路径

在这里插入图片描述

查看当前路径:<code>pwd

在这里插入图片描述

语音播放识别成功:

在这里插入图片描述

没有听到声音:查看扬声器信道

没有运行成功:查看代码格式

可以用TTS文本转语音

在这里插入图片描述

模块匹配

在这里插入图片描述

<code>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

在这里插入图片描述

启动摄像头和识别软件

<code>roslaunch usb_cam-test.launch

roslaunch find_object_2d find_object_2d.launch

在这里插入图片描述

代码具体含义:

在这里插入图片描述

在这里插入图片描述

二维码识别

在这里插入图片描述

代码具体含义:

在这里插入图片描述

在这里插入图片描述

多点导航

在这里插入图片描述

在这里插入图片描述

讲解视频

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

2.万创鑫诚.自主巡航实践

其余篇章

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

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



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。