前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ROS学习记录①:安装、起步和IDE工具

ROS学习记录①:安装、起步和IDE工具

作者头像
小黑鸭
发布2020-11-24 10:56:40
1.2K0
发布2020-11-24 10:56:40
举报

安装、起步和IDE工具

一、ROS安装

使用 Ubuntu18.04 安装 ROS Melodic

1.1 配置软件库

代码语言:javascript
复制
$ sudo nano /etc/apt/sources.list

修改该文件,将该文件中原来的内容全部注释,添加如下内容(此处以阿里源作为示例)

代码语言:javascript
复制
# 阿里源
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

然后更新一下

代码语言:javascript
复制
sudo apt update && sudo apt upgrade

1.2 安装ROS

参考官网教程安装即可

官网教程

1.3 遇到的坑

rosdep update 报错

输入

代码语言:javascript
复制
sudo gedit /etc/hosts

在最后一行加入

代码语言:javascript
复制
151.101.84.133  raw.githubusercontent.com

sudo rosdep init 报错

代码语言:javascript
复制
sudo: rosdep:找不到命令

原因:python-rosdep 这个包没有装。

解决办法:安装 python-rosdep

代码语言:javascript
复制
sudo apt-get install python-rosdep

其余坑待填

二、ROS起步

2.1 新建工作文件夹

代码语言:javascript
复制
mkdir ros_ws
cd ros_ws

2.2 Workspace创建

2.2.1 新建工作空间目录结构

代码语言:javascript
复制
mkdir -p first_ws/src

创建一个first_ws的工作空间,并且在其中创建了src目录 first_ws就是工作空间的名称

2.2.2 编译工作空间

代码语言:javascript
复制
cd ..
catkin_make

来到创建的工作空间目录下,调用ros的名命令catkin_make,将工作空间进行编译。 编译后,会得到工作空间的文件结构,builddevelCMakeLists.txt都会自动生成 catkin_make是ROS的编译工具,我们会经常用到。

2.3 Package创建

在workspace的src目录下

代码语言:javascript
复制
catkin_create_pkg hello_ros rospy roscpp rosmsg

catkin_create_pkg是创建package的命令。第一个参数hello_ros是指创建的package名称,后面的参数roscpprospyrosmsg是指当前创建的这个package需要提供哪些环境依赖。 roscpp是对c++的一种依赖,有了它就可以用c++开发ros程序 rospy是对python的一种依赖,有了它就可以用python开发ros程序 rosmsg是Node间通讯的消息协议依赖,有了它就可以让节点间进行消息通讯 注意:通常在开发过程中,这三个依赖都是必备的。

三、使用Clion开发package

3.1 安装和破解Clion

见另一篇文章:Ubuntu自用软件记录

3.2 启动Clion

3.2.1 在工作空间中设置开发环境

代码语言:javascript
复制
cd ros_ws/first_ws
source devel/setup.bash

此操作非常重要。 devel目录中的setup.bash是用于开发环境中,方便找到开发依赖的。

3.2.2 启动Clion

代码语言:javascript
复制
cd ~/devtools/clion-2019.3.2/bin/
./clion.sh

3.3 Clion配置(Pycharm适用)

3.3.1 配置默认代码和注释模板

依次打开 File -> Setting -> Editor -> File and Code Templates -> Python Script,添加

代码语言:javascript
复制
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : ${DATE} ${TIME}
# @Author :
# @File : ${NAME}.py
# @Software: ${PRODUCT_NAME} 

#!/usr/bin/env python让系统知道当前是可执行的python脚本,避免系统当作shell脚本执行。 # coding:utf-8解决编码问题

3.3.2 添加Python环境

依次打开 File -> Setting -> Build,Execution,Deployment -> Python Interprete -> Add

选择 Virtualenv Environment -> Existing environment ,选择以下路径:

需要注意的是,目前ROS Melodic版本还不支持python3,要等到ROS N版才会支持。 因此,我们选择环境的时候选择python2.x版本

3.3.3 创建scripts目录

hello_ros的目录中创建scripts目录,用于写python代码。

依次打开 File -> Setting -> Build,Execution,Deployment -> CMake -> Generation path,输入

代码语言:javascript
复制
/tmp/hello_ros/cmake-build-debug

3.4 编写Python代码

3.4.1 代码编写

scripts目录下新建hello_node.py文件,代码如下:

代码语言:javascript
复制
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 5/9/20 7:34 PM
# @Author : Chenan_Wang
# @File : hello_node.py
# @Software: CLion 

# ROS 的 Python 环境
import rospy

if __name__ == '__main__':
    # ros的节点,需要传入节点的名称 -- 在rosmaster中注册
    rospy.init_node('itcast_node')

    # 频率操作Rate,可以按照一定的频率操作循环执行。
    # (hz赫兹) 10 --1秒执行10次
    rate = rospy.Rate(1)

    while not rospy.is_shutdown():
        print 'hello ros python'
        rate.sleep()

    # 阻塞线程spin,可以阻塞当前的线程
    rospy.spin()

3.4.2 可执行权限修改

在文件夹中打开hello_node.py文件,右键 Properties -> Permissions -> Execute 后选中

3.4.3 启动python文件

启动命令行,来到工作空间目录下,编译项目

代码语言:javascript
复制
cd ros_ws/first_ws
catkin_make
source devel/setup.bash 
rosrun hello_ros hello_node.py

3.5 一些快捷键(Pycharm适用)

  • Ctrl + Alt + L 格式化
  • Ctrl + Alt + V 生成局部变量
  • Ctrl + /注释
  • Ctrl + Y 删除当前行
  • Ctrl + Shift + Enter 下一行
  • Ctrl + Shift + Up 上移一行
  • Ctrl + Shift + Down 下移一行
  • Home 光标到行首
  • End 光标到行末
  • Alter + Enter 万能提示
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装、起步和IDE工具
  • 一、ROS安装
    • 1.1 配置软件库
      • 1.2 安装ROS
        • 1.3 遇到的坑
        • 二、ROS起步
          • 2.1 新建工作文件夹
            • 2.2 Workspace创建
              • 2.2.1 新建工作空间目录结构
              • 2.2.2 编译工作空间
            • 2.3 Package创建
            • 三、使用Clion开发package
              • 3.1 安装和破解Clion
                • 3.2 启动Clion
                  • 3.2.1 在工作空间中设置开发环境
                  • 3.2.2 启动Clion
                • 3.3 Clion配置(Pycharm适用)
                  • 3.3.1 配置默认代码和注释模板
                  • 3.3.2 添加Python环境
                  • 3.3.3 创建scripts目录
                • 3.4 编写Python代码
                  • 3.4.1 代码编写
                  • 3.4.2 可执行权限修改
                  • 3.4.3 启动python文件
                • 3.5 一些快捷键(Pycharm适用)
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档