无人机路径规划毕业设计(一) 环境和基础

基本信息

bg:真正0基础,还剩两周中期答辩,中间还有考试和分布式项目,外加日常算法和八股

资源:b站机器人工匠阿杰+鱼香ROS

环境

第一天跟着视频配了下环境,因为给的论文用cuda使用的windows电脑:

1.下载VMware

微信或者咸鱼pdd搜个破解版就行

2.下载ubuntu镜像,用VMware创建虚拟机

网上推荐20.04Ubuntu 20.04.6 LTS (Focal Fossa)

VMware选自定义然后一路点

3.用鱼香ROS的脚本命令

wget http://fishros.com/install -O fishros && . fishros
按照他给的提示安装和配置ROS,顺便把github桌面和vscode安了

基础知识

1.单个项目的结构

因为🐭🐭速成想先跑demo,先看ROS的项目结构

在ROS中每个功能分别用一个节点,这样可以实现解耦(怎么这里也有分布式啊)。一个节点是一个运行的进程,它可以执行特定的任务,并通过ROS通信机制与其他节点进行数据交换。每个节点可以独立地运行在计算机上,它们可以协同工作来实现复杂的机器人系统。

看完图明白了用别人写的轮子的时候就是在github上下对应的功能包package

看了下常用命令,就是ros加上linux里面的命令

rosls [功能包]

用来显示指定功能包的内容

roscd [功能包]

在终端打开指定工作包的工作目录

rospack find [功能包名]

可以帮助我们找到指定功能包路径

rospack profile

查询ROS功能包细节信息

2.多个项目连接

消息(Message)是用于在节点之间传递数据的基本单元。它们是结构化的数据类型,包含了一些字段,每个字段可以是基本类型(如整数、浮点数等)或其他消息类型。消息的定义通常以.msg文件的形式发布,并由ROS代码生成工具自动生成相应的源代码。

主题(Topic)用于标识消息的发布者和订阅者之间的通信通道。发布者将消息发布到特定的主题上,而订阅者则从该主题上接收消息。主题是一种异步通信机制,发布者和订阅者之间不需要建立直接连接,而是通过ROS系统进行中介。

看了眼代码,C++代码导入ros.h后,初始化ROS结点,实例化发布者和订阅者对象,调用相应的发布和订阅方法。新建的功能包下的/src文件中建立节点.cpp文件,然后在CMakeLists.txt里面增加文件和指定链接库。

3.配置文件

在ROS中,launch文件是一种XML格式的配置文件,用于启动和配置ROS节点。它可以同时启动多个节点,并为这些节点设置参数、命名空间、日志级别等属性。

一个typical的launch文件包含以下三个部分:

  1. ros节点启动规范(ROS Node Launch Specification):指定要启动的ROS节点、节点类型以及它们的命名空间、参数、运行条件等。

  2. 机器人(Robot)启动规范(Robot Launch Specification):指定与机器人相关的启动信息,如启动传感器驱动程序等。

  3. 其他配置(Other Configurations):指定与ROS系统和其他非ROS组件相关的其他配置,如环境变量、网络配置等。

通过使用launch文件,用户可以方便地启动和配置ROS节点,并且可以避免手动编写多个启动命令的繁琐过程。此外,launch文件还允许用户动态地修改节点参数和属性,从而实现节点的动态配置和调试。

  • name=“参数名称”
  • default=“默认值” (可选)
  • value=“数值” (可选)
    不可以与 default 并存
  • doc=“描述”
    参数说明

所以就当是个xml文件,到时候照着改就ok

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值