下载ROS2
设置系统编码:
命令行输入:
$ sudo apt update && sudo apt install locales
$ sudo locale-gen en_US en_US.UTF-8
$ sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
$export LANG=en_US.UTF-8
添加源:
命令行输入:
echo "deb [arch=$(dpkg --print-architecture)] https://repo.huaweicloud.com/ros2/ubuntu/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
sudo apt install curl gnupg2 -y
curl -s https://gitee.com/ohhuo/rosdistro/raw/master/ros.asc | sudo apt-key add -
sudo apt update
sudo apt install ros-humble-desktop
sudo apt install python3-argcomplete -y
这段每次开机都需要输入,可以输入echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc将其设置为每次开机默认指令
$ sudo apt update
$ sudo apt install ros-humble-ros1-bridge
$ sudo apt install ros humble-****
以上ROS安装完成
命令行常用命令
Linux系统常用命令
参数跟在指令后面,#{指令} -#{参数}
Control+c结束当前命令
$ sudo #{正常指令} 提升至管理员权限
apt为应用
$ pwd 查看当前命令行位置
$ ls 当前文件路径的文件/文件夹(参数A可以看隐藏的文件)
$ mkdir #{} 在当前路径创建一个名为#{}的文件夹
$cd #{}/ 进入当前路径#{}文件夹
$ touch #{a}.#{b} 创建一个#{a}.#{b}文件
$ rm #{a}.#{b} 删除叫做#{a}.#{b}的文件(参数R递归删除,用于删除文件夹)
$ cd .. 跳转上一级目录
$ gedit #{a}.#{b} 进入#{a}.#{b}文件
$ nautilus 打开当前文件夹(图形化)
$ sudo dpkg -i #{} 安装名为#{}安装包
ROS2常用命令
ros2总命令,第一个参数为参数目的(node节点,topic话题等)
$ ros2 node为查询节点
$ ros2 node list为查询所有节点列表
$ ros2 node info /#{}为查询名为#{}的节点信息
Subscribers为订阅中的数据
Publishers为发布中的数据
Service Servers为正在提供的功能
ROS2 乌龟命令集
$ ros2 run turtlesim turtlesim_node 启动海龟程序
$ ros2 topic pub --rate 1 /turtle1/cmd_vel geometry_msgs/msg/Twist "{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 1.0}}" 让海龟转圈
$ ros2 service call /spawn turtlesim/srv/Spawn "{x: 2, y: 2, theta: 0.2, name: ''}" 诞生一只新海龟
bag副指令
record副指令将录制动作,后面要跟节点,录制文件保存至当前文件夹
play副指令执行录制的动作,后面要跟文件名
安装vscode,配置环境
安装git
$ sudo apt install git
$ git clone https://gitee.com/guyuehome/ros2_21_tutorials.git 此源码来源古月居:ROS2入门教程
安装vscode
在官网下载后缀名为.deb的安装包,在文件夹中找到,右键空白处命令行打开,执行$ sudo dpkg -i #{} 命令,进入vscode后把刚才下的放到工作区
下载插件:python,c/c++,CMake,vscode-icons,ROS,Msg Language Support,URDF,IntelliCode,Markdown All in One(文档编辑,没用过)
做一个workspace
建立一个文件夹(例如面向一个节点a),在其中建立文件夹src
$ sudo apt install python3-pip 此为方便下载python的包
$ sudo pip3 install rosdepc 这里出异常,没查出来原因,后来改成pip不知道怎么就好了
注:rosdepc是rosdep的国内版
$ sudo rosdepc init & rosdepc update 此处用的鱼香ROS,随后根据提示输入rosdepc update即可
此处看到小鱼恭喜:rosdepc已为您更新即代表成功
此时使用系统命令cd到之前创建的workspace文件夹中
$ rosdepc update --include-eol-distros 更新rosdepc
输入$ rosdepc install -i --from-path src --rosdistro humble -y 检索是否下载全部依赖项
得到All required rosdeps installed successfully即成功
!!!如果没有成功!
$ rosdepc update --include-eol-distros 更新rosdepc
$ sudo apt install python3-colcon-ros 安装编译器工具
将下载的源码剪切到src目录下
确认目前目录在工作区根目录,$colcon build进行完整编译。等加载到100%即可
Finished <<< learning_topic提示即为成功
$ source install/local_setup.sh生效环境变量
此处添加环境变量每次启动都需要,可以在Home目录control+H显示隐藏文件,.bashrc文件夹最末尾加入该语句source ~/#{工作区文件夹名}/install/local_setup.sh
功能包
类似于c++的类,降低代码耦合性
建立功能包:$ ros2 pkg create --build-type #{ament_代码类型}#{功能包名}
ament_cmake创建的包中,package.xml描述功能包的基础信息,其中depend标签记录功能包的依赖
CMakeLists设置编译规则
ament_python中,package.xml与c++一样,setup.py文件描述功能包基本信息、入口程序点、告知拷贝进install文件夹的程序。setup.cfg是做工作区配置,不需要操作
1481

被折叠的 条评论
为什么被折叠?



