机器人ROS操作系统入门-中科院软件所

ROS的官方网站

www.ros.org

http://wiki.ros.org/

二进制sudo apt-get(安装上了直接用主要是基础软件不用改动)
原代码(编译之后才能运行)

工程结构(文件系统级)

catkin 工作空间(ROS定制的编译系统,对CMake的扩展)

mkdir -p ~/caatkin_ws/src
cd ~/catkin_ws/
catkin_make
source ~/catkin_ws/devel/setup.bash
#编译完需要更新环境

src(package 源代码),build(cmake&catkin缓存和中间文件),devel(目标文件)

src

package(catkin编译的基本单元,递归的查找每一个package,可以把几个package放在同一个文件下)
概念
  1. ROS软件的基本组织形式
  2. catkin编译的基本单元
  3. 一个package可以包含多个可执行文件(节点)
  4. 包含CMakeLists.txt,package.xml(最精简结构)

CMakeLists.txt(规定catkin编译的规则)
例如:源文件,依赖项,目标文件
package.xml(定义package的属性)
例如:包名,版本名,作者,依赖等
<build_depend>
<run_depend>

代码文件

脚本(shell,python)
C++(头文件,源文件)

package

->CMakeLists.txt,package.xml

->include(.h),src(.cpp),
scipts(用来放可执行脚本*.py *.sh)

->(自定义通信格式)消息(msg(.msg))服务(srv(.srv自定义的))动作(action(*.action))

->config(.yaml)(参数,设置)launch(.launch)(用来一次性运行多个文件)launch以及配置文件(launch文件(launch),配置文件(yaml))
在这里插入图片描述

常用指令

  1. rospack(查找某个pkg的地址)
    rospack find package_name
  2. (列出本地所有的pkg)
    rospack list
  3. roscd(跳转到某个pkg的路径下)
    roscd package_name
  4. rosls(列举某个pkg下的文件信息)
    rosls package_name
  5. rosed(编辑pkg中的文件)
    rosed package_name file_name
  6. catkin_create_pkg(创建一个pkg)
    catkin_create_pkg <pkg_name> [deps]
  7. rosdep(安装某个pkg所需的依赖)
    rosdep install [pkg_name]

catkin_create_pkg test2 roscpp rospy std_msgs nav_msgs
std_msgs通信nav_msgs导航
~/catkin_ws/src $ git clone …

Metapackage(虚包自身没什么内容,依赖了很多软件包)

sudo apt-get install ros-noetic-desktop-full
stack软件包集
https://github.com/ros-planning/navigation
把一些相似功能的软件包组织起来
在这里插入图片描述

<think>好的,我现在需要帮助用户查找关于DroidAITech的ROS-Academy项目的资料。首先,根据用户提供的引用内容,特别是引用[1]和引用[2],里面提到了使用git clone命令克隆项目仓库,以及安装依赖和编译环境的步骤。这说明用户可能已经知道如何获取项目代码,但需要更多的文档、资源和教程。 接下来,我需要考虑用户可能的深层需求。用户提到的是项目文档、资源和教程,因此可能需要官方文档链接、教程指南、API参考、社区支持等信息。根据引用中的GitHub链接,首先应该查看该仓库的README文件,通常这里会有基本的使用说明和文档链接。此外,检查项目的Wiki页面(如果有的话)也是常见做法,很多开源项目会在Wiki中提供详细教程。 然后,根据引用[2],用户提到了机器人仿真环境由中科院软件所孵化的公司提供,可能需要相关的官方文档或支持论坛。可能需要搜索是否有该公司的官方网站,或者他们在GitHub上的其他仓库,可能有更详细的资料。另外,ROS(Robot Operating System)本身的官方文档和社区(如ROS Wiki)也是重要的资源,特别是针对ROS Kinetic版本的配置和使用,因为引用中提到了kinetic。 还要考虑用户可能遇到的常见问题,比如环境配置错误、依赖安装问题、仿真环境运行问题等,所以需要提供故障排除指南或社区讨论链接。此外,示例代码和Demo演示对于学习如何使用项目非常重要,用户可能需要这些来快速上手。 最后,生成的相关问题需要覆盖用户可能进一步询问的方向,比如环境配置问题、项目结构、学习路径、社区支持以及项目更新情况。这些问题应该帮助用户深入解决实际使用中可能遇到的障碍,并引导他们找到更多资源。</think>以下是关于DroidAITech的ROS-Academy-for-Beginners项目的资料整理: ### 一、核心资源获取 1. **项目仓库与基础配置** - 通过Git克隆完整代码库: ```bash git clone https://github.com/DroidAITech/ROS-Academy-for-Beginners.git ``` 该仓库包含Gazebo仿真环境、ROS功能包和教学案例[^1][^2] 2. **依赖安装命令** 在工作空间根目录执行: ```bash rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y catkin_make && source devel/setup.bash ``` 此命令将自动安装URDF模型、导航算法等依赖项[^2] ### 二、文档体系结构 $$ \begin{aligned} &\text{学习路径} \\ &1. \text{ROS基础} \rightarrow 2. \text{传感器仿真} \rightarrow 3. \text{SLAM建图} \rightarrow 4. \text{路径规划} \end{aligned} $$ ### 三、关键教学模块 1. **仿真环境配置** - 包含TurtleBot3、Husky等机器人模型 - 预置办公室、仓库等Gazebo场景 2. **代码案例解析** ```python # 典型ROS节点结构 rospy.init_node('navigation_demo') cmd_vel_pub = rospy.Publisher('/cmd_vel', Twist, queue_size=10) while not rospy.is_shutdown(): twist = Twist() twist.linear.x = 0.5 cmd_vel_pub.publish(twist) ``` ### 四、扩展学习通道 - **官方ROS教程**:http://wiki.ros.org/ROS/Tutorials - **Gazebo文档**:http://gazebosim.org/docs - **ROS问答社区**:https://answers.ros.org
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值