学习第一步:
先看完了 《视觉SLAM14讲》的内容,安装Ubuntu系统,学习Linux语法。按照14讲 的内容安装库,学习知识点,运行代码。(研一上学期寒假前结束的,研一上学期课程较多,看的慢一些)
一、Ubuntu系统安装:
1. 安装虚拟机
可以看古月居安装虚拟机的过程。
镜像下载地址:https://ubuntu.com/download/desktop
打开地址进入Ubuntu下载的界面,下载的是Ubuntu 18.04版本,LTS表示是一个长期支持版,一般是5年的时间。点击“Download” 按钮进行下载,下载 .iso 文件
2. 安装 Ubuntu系统
网上找操作教程
二、Ubuntu软件下载:
(1) 打开Ubuntu软件(图标带有一个A字母),类似于手机里面的软件商店。
(2) 点击左上角 “ Ubuntu 软件 ” ,来进行 配置系统的软件源,点击 "软件和更新 "
从右边的窗口 配置 软件源,从什么地方下载,自动选择下载的服务器(选择aliyun,,或者 .edu后缀的源),,下载源的选择会影响后面下载文件的速度,比如ROS安装
选定软件源之后,点击关闭,会出现下面的界面:
之后点击 --->重新载入 , 连接设置的 aliyun 服务器
加载成功之后点击关闭 退出即可。
三、Ubuntu 的一些操作
打开终端界面:Ctrl + Alt + T
命令行:
(1) 查看当前打开文件的路径:pwd
(2) 切换路径: cd (文件名) 进入下一级文件
cd .. 进入上一级文件目录
cd 回到主目录
(3) 当前路径下创建新的文件夹: mkdir 文件夹名字 例如: mkdir build
(4) 列表查看当前文件夹的文件目录: ls
(5) 创建文件: touch 文件名 (类似于windows中的txt文件,双击打开文件,就可以编辑内容)
(6) 文件移动: mv 原路径 新的路径 (从原路径将文件 剪切 到新的路径下)
(7) 文件复制: cp 源文件 拷贝目标路径
(8) 删除文件: rm 删除文件名
删除文件夹: rm -r 文件夹名 (-r 表示要递归的删除文件夹里面的内容)
(9) sudo 命令: (用来提升用户的一个权限)
sudo apt-get update 更新当前系统软件源列表
(10) Ctrl + c 暂停
(11) --help 查看一些命令参数
四、安装软件、库
(1) 安装 c++ 编译器: sudo apt-get install g++
(2) 安装python解析器: sudo apt-get install python
其他的库 软件,需要什么就安装什么,网上找找安装教程即可。
学习第二步:
看完14讲就开始着手做激光相关的东西,首先从ROS机器人开发系统开始。看的课程是“古月居”(推荐学习的一个人的博客、B站)的ROS入门21讲
一、安装ROS系统
Ros的一些版本,安装的版本要跟Ubuntu 系统对应。 Ubuntu 18.04 对应的版本图中框选的
1. ROS官网教程,安装步骤: http://wiki.ros.org/melodic/Installation/Ubuntu
2. 配置软件库
打开 “ 软件和更新 ”, 确认四个打对钩,然后关掉。
3. ROS 安装步骤
下面一步一步来进行安装:
(1) 添加ROS软件源。
打开 终端,输入下面的指令:
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" >/etc/apt/sources.list.d/ros-latest.list'
然后点击回车,输入密码,即可。
(2) 添加密钥。
在终端 窗口继续输入下面的指令,进行添加密钥。
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 essential
回车执行。密钥导入成功提示如下:
(3) 安装ROS。
- 开始安装ROS,安装之前输入下面第一条指令更新软件源。
注意更新过程中是否会出现一些错误: 尝试再次输入更新命令,进行一次更新。
这个错误是下载过程中失败了,可能跟网络有关,用手机热点,效果会好一些,可以尝试一下。
成功下载界面:
下面进行安装,耗费流量较大,不推荐用手机热点。(如果手机流量允许是可以继续使用的)
- 输入下面的第二条指令:
回车安装ROS。输入Y继续执行。(这个过程需要一段时间)
【 安装中.........
ROS安装完成。
(4)初始化rosdep。
rosdep 是ROS里面的一个工具,可以用来帮助完成一些功能包的依赖的设置 跟 安装。
- 使用下面的第一条指令进行初始化,回车运行
- 可能会有下面的提示。输入上面第二条指令 rosdep update 回车运行即可(网络问题,推荐使用手机热点)
参考博客:rosdep update一定能通过de简单方法_努力是明天快乐的源泉-CSDN博客_rosdep update
更新成功:
(5)设置环境变量。
- 输入下面的第一条指令,设置环境变量。
- 输入上面的第二条指令,用来运行某一个脚本,这里用来运行 .bashrc 这个脚本,这个脚本上一条指令用来设置了环境变量,用Source 运行,使其生效。
输入ros 查看一下,上面的环境变量设置成功,会看到下面的命令,否则看不到。
(6)安装rosinstall 。
最后一步,安装rosinstall, 输入下面的命令
ROS 安装完成。。。。。。 【\撒花 \撒花】
ROS的默认安装路径是在 系统 的 opt 文件夹下面。【打开文件夹 --> 点击其他位置 --> 点击计算机 (出来的界面就是Ubuntu的根目录) --> 找到opt文件夹,点击打开 -- > 文件夹里面有一个ros文件夹 ,打开 -- > 文件夹里面就是安装的ROS melodic 版本 --> 打开melodic文件夹,ros安装的东西全在这里面了】
(7) 验证ROS是否安装成功
终端输入指令: roscore
安装没有问题。
4. 运行小程序
小海龟的程序:
- 打开终端输入第一句指令:roscore
- 打开一个新的终端 输入:rosrun turtlesim turtlesim_node 运行可视化仿真的界面,界面显示如下:
- 再次打开一个新的终端,输入第三条指令:rosrun turtlesim turtle_teleop_key,让小海龟动起来。【界面提示用上下左右键 控制移动】
卸载ROS:sudo apt remove ros-*
安装过程中遇到的几个问题:
(1) 软件源的问题,原来用的aliyun, 在安装过程中改动了一些地方sources,list文件,没有备份以至于后面改不回来包很多错误【改动之前要备份!!!!!千万要注意】,后来换成了清华源,相应改动了sources.list文件中的内容。
sources.list中的内容 按'd'键全部删除,添加内容如下:
(打开sources.list文件: sudo vim /etc/apt/sources.list)
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
然后打开 : sudo vim /etc/apt/sources.list.d/ros-latest.list
把文件里面的网址改成: https://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/
最后安装教程第一步:软件源改成清华的:
sudo sh -c 'echo "deb https://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" >/etc/apt/sources.list.d/ros-latest.list'
(2) rosdep update 问题:
rosdep update一定能通过de简单方法_努力是明天快乐的源泉-CSDN博客_rosdep update
二、ROS命令行工具
常用的命令:
(1) rostopic、(2) rosservice、(3) rosnode:用来显示系统中所有节点信息、(4) rosparam、(5) rosmsg、(6) rossrv
以小海龟例子:
roscore: 是ROS首先要运行的一条命令,运行ROS master
rosrun: 运行节点,后跟两个参数,一个是功能包名,一个是功能包下面的文件(双击tab键可以查看文件)。。回车运行打开一个仿真器界面
再打开一个终端,输入:rosrun 运行第三个节点 (可以键盘控制海龟移动)
输入:rqt-graph 显示一个界面,用来显示系统计算图的工具,ROS中的核心通讯机制就是一张图。
三、ROS中的开发工具
(常用的可视化工具)
1. Qt工具箱
以海龟例程为例:
(1)先来启动海龟例程,启动roscore
(2) 再来启动turtlesim: rosrun turtlesim turtlesim_node
输入“ rqt_ ”摁tab键有提示
打开终端输入:
rqt_console : 显示系统里面的日志信息。
打开下面的界面
让海龟运动起来看看上面的图中会显示什么。
运行:rosrun turtlesim turtlesim_teleop_key
按动键盘,海龟动起来撞到墙壁会发出警告,那么日志输出的表格中就会有提示,显示警告信息
rqt_plot : 用来绘制数据曲线
打开之后的效果图
通过订阅具体的数据,显示曲线图。【比如现在想看海龟的位置信息】
在下面红框中输入左斜线,会自动匹配ros 里面的话题,直接选择自己想要展示的内容即可,
比如展示海龟的pose位置,选择 turtle/pose, 回车运行,曲线展示了,角速度,线速度,theta角等。
海龟动起来之后,曲线图在变化
rqt_image_view: 用来显示摄像头图像。
回车之后打开下面的默认界面 ,没有内容显示,需要插入摄像头,来驱动摄像头跑起来,摄像头驱动之后会不断的发布图像信息,在左上角框中选择图像信息的话题,来给渲染出来。
直接输入rqt打开下面的界面:这里面集合了所有的rqt 显示的内容,在上面一栏中选择打开即可
2. Rviz 机器人开发过程中可视化平台
Rviz是一款三维可视化工具,可以很好的兼容基于ROS软件框架的机器人平台。
Rviz 界面几个模块显示
3. Gazebo 是一款功能强大的三维物理仿真平台
是一个物理仿真,何为仿真? 不想Rviz 要有实际的图像才会显示,这个子集模拟创建一个虚拟的。
软件打开,几个功能区
学习资源: