ROS 1
1. 机器人体系复杂,为了方便模块复用,故而诞生了ROS(机器人通用软件框架,Robot Operating System)
2. ROS特点
1)开源
2)元操作系统:提供类似OS所提供的功能
3)分布式,即可在多台计算机上运行
如利用小机器人感知获取数据,传送至PC,PC处理数据后将运动信息返还,计算压力得以分散
3. ROS = Plumbing + Tools + Capabilities + Ecosystem
通信:数据交互
工具:仿真功能,脱离实体机器人
功能:复用已有功能,调参适配
生态
4. 创建工作空间
mkdir -p 自定义空间名称/src # 创建工作空间及一个src子目录 cd 自定义空间名称 catkin_make
5. 进入src创建ros包并添加依赖
cd src
catkin_create_pkg 自定义ROS包名 roscpp rospy std_msgs
# roscpp for C++, rospy for Python, std_msgs是标准消息库
6. HelloWorld实现
1)进入ros包添加scripts目录并编辑python文件
cd ros包
mkdir scripts
新建python文件#! /usr/bin/env python
# 指定解释器 """ Python 版 HelloWorld """
#1. 导包 import rospy
#2. 编写主入口 if __name__ == "__main__":
#3. 初始化ROS节点 rospy.init_node("Hello")
#4. 输出日志
rospy.loginfo("Hello World!!!")
2) 为python文件添加可执行权限
chmod +x 自定义文件名.py
3)编辑ros包下 的CamkeList.txt文件
catkin_install_python(PROGRAMS scripts/自定义文件名.py
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)
4)进入工作空间目录并编译
cd 自定义空间名称
catkin_make
5)进入工作空间目录并执行
roscore
再开启一个新的terminal
cd 工作空间 source ./devel/setup.bash rosrun 包名 自定义文件名.py
输出Hello World!!!