制作自己的rosgo
首先,什么是rosgo?ROS2GO(ROS To Go)是一款随时可用的高速USB闪存驱动器,已安装Ubuntu、ROS和常用软件包,可以从外部USB驱动器启动(推荐USB3.0及以上)。无论是否已经安装有操作系统,都能完美兼容,畅快玩耍,只需满足Ubuntu和ROS最低要求的x86 PC即可。目标是为学习ros的初级用户提供一种在20秒(最快)内启动ROS的方法,无需繁琐的安装程序。
简单来说rosgo就是一个装有Ubuntu系统的U盘。里面的Ubuntu安装好了ros相关的组件和常用的依赖包。看起来是不是哼方便呢?
但是,rosgo对于我们学生来说太贵了!!所以,我们决定自己做一个。嗯,没错自己动手丰衣足食!
1.准备两个U盘
U盘的大小最好是16g或者更大的,因为接下来安装完系统后,还需要安装ros的相关组件和后续的依赖包。这个会占用比较大的空间。
2.制作启动盘
将其中一个较小的U盘格式化,并下载好U盘启动制作工具(rufus):
启动U盘制作软件:
下载地址:链接:http://pan.baidu.com/s/1qYKNiYo密码:t8u1
(1)、双击运行上面下载好的“rufus”,即启动U盘制作软件;
(2)、运行之后,会现如下界面:(其实第一次运行时,我的还出现了一个提示更新的界面,那个我选了“是”,就进入了下面的界面,应该是可以随便选的。之后运行软件,就直接进入了下面的界面):
(3)、在“iso镜像”旁边有个小光盘的图标,点击那个图标,会出来一个界面,让你选择Ubuntu 镜像文件,找到你的Ubuntu 16.04的镜像位置,选择即可:
(4)、上一步选择之后,会出现下面的界面:(点击开始)
(5)、点击了“开始”之后会出现一系列的警告或者提示,选择“是”,“ok”,“确定”就行(如果你是边看博客边操作的话,为了保险,请先看完图),下面是截图:
(6)、经过上面的步骤之后,就开始将镜像写入U盘了,如图:
(7)、经过一小会儿的等待之后,写入成功,如图:(点击关闭即可)
(8)、可以看一下自己的U盘(此步可省略,如果看了,不要对里面的文件进行任何更改):
这样我们就制作好了启动U盘。接下来就可以安装系统啦!
二、安装Ubuntu
(1) ------ 从U盘启动: 将U盘插在电脑上,选择启动方式为U盘启动。(如果你的电脑有两个USB...选项可供选择,可能一个带有“USB..UEFI”,另一个没有“UEFI”,请选择没有“UEFI”的,选带有“UEFI”的可能会出现问题,我有一个同学就是的,或者可以都试一下)(关于如何从U盘启动,快速U盘启动什么的,还请根据自己的电脑型号自行百度),下面是我的选择U盘启动的截图:
(2) ------ 欢迎界面: 选择了U盘启动后,等待一小会儿,会出现如下“欢迎”界面(通过左侧的语言栏选择中文),选择中文后,点击“安装Ubuntu”;
(3) ------ 准备安装: 接下来会进入“准备安装Ubuntu”界面:为图形或无线….”,然后点击“继续”。(这里会检测是否已经连网,没网的话,那个 "安装Ubuntu时下载更新" 的是不能选的,我的因为截图用的虚拟机,连网了所以可选,你安装的时候应该会是不可选的,点完继续后还需要等待一小会儿):
(4) ------ 选择安装类型: 上步之后进入“安装类型”界面,选择“其他选项”,之后继续,如图:(这里我的是虚拟机,实际安装那些可选项可能会有差异,但是请选择“其他选项”,其他的我没试过,不保证能成功,个人觉得选择"其他选择"也是最佳选项)
接下来就到了关键的一步了!为U盘建立分区。首先我们要知道我们的U盘大小然后在界面中找到对应大小的磁盘。比如这里我们看的是128g的移动硬盘。
可以看到灰色的代表空闲的空间也是我们接下来要进行分区的空间。我们在“安装启动引导器的设备”下的下拉条可以查看我们当前的磁盘设备。选择好我们要装的U盘设备。然后双击/dev/sda-------128g(131027MB)
下面的空闲(free)。会弹出上图所示的对话框。这里先给大家介绍一下分区的内容:我们要对U盘进行四个分区分别是/boot(引导),/,/home,swap(交换空间即虚拟内存)。首先,我们来建立一个引导分区。如上图所示,双击空闲空间,给他设置分区大小,一般550MB就够了,然后选择主分区(一个硬盘的主分区也就是包含操作系统启动所必需的文件和数据的硬盘分区,要在硬盘上安装操作系统,则该硬盘必须得有一个主分区。扩展分区也就是除主分区外的分区,但它不能直接使用,必须再将它划分为若干个逻辑分区才行。逻辑分区也就是我们平常在操作系统中所看到的D、E、F等盘。)因为我们这里不是装双系统,所以选用主分区。然后,再建立 / 分区
/ 分区 ------ 30GB
接着建立/home分区(这个分区可以大一点)
/home 分区 ------ 90GB (安装后感觉 /home 有点大了,觉得可以再分给上面的 / 5GB,即 /home 85GB,/ 35GB)
最后swap交换空间分区
swap(交换空间) : ------ 5GB多吧(最好留点空闲空间)
配置完后在“安装启动引导的设备”下选中/boot对应的分区
"安装启动引导器的设备"选择/boot对应的分区
点击安装
会弹出检查窗口,检查无误后点击继续
(7) ------ 选择地域(默认上海,直接"继续"就行,安装完之后可以设置精确的位置):
(8) ------ 选择键盘(汉语,或根据个人喜好^_^):
设置完之后,选择"继续"...
(10) ------ 正在安装,请等待:
(11) ------ 安装成功,请重启:
三,用U盘启动并安装ros
现在,我们拿着装好系统的U盘重新启动(注意要把引导盘拔掉)。进入界面后选择Ubuntu回车
输入用户密码:
接下来就开始折腾吧!
然后安装一下ros kinetic版本,这里提一下在安装前一定要换源,如果不换源的话下载特别慢或者下载失败。所以这里我们打开Ubuntu的更新设置找到更换更新的设置改为国内源.cn(如果不太明白的可以上网查看资料,网上资料很详细比如这里我们可以换成mirrors.ustc.edu.cn这个源)接下来就按照下面的教程一步步安装:
脚本安装ROS-kinetic:
wget https://raw.githubusercontent.com/oroca/oroca-ros-pkg/kinetic/ros_install.sh && chmod 755 ./ros_install.sh && bash ./ros_install.sh catkin_ws kinetic
- 如果不能顺利安装,可以参考源码安装方式
源码安装ROS-kinetic:
- 安装源
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
- 或来自中国的源:(推荐)
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'
- 增加key
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 0xB01FA116
- 更新
sudo apt-get update
- 安装,这里介绍Desktop-Full安装: (Recommended) : ROS, rqt, rviz, robot-generic libraries, 2D/3D simulators, navigation and 2D/3D perception
sudo apt-get install ros-kinetic-desktop-full
- 解决依赖
sudo rosdep init
rosdep update
- 环境设置
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
7.安装rosinstall,便利的工具
sudo apt-get install python-rosinstall
安装TurtleBot3及依赖包:
- 安装turtlebot3依赖包:
sudo apt-get install ros-kinetic-joy ros-kinetic-teleop-twist-joy ros-kinetic-teleop-twist-keyboard ros-kinetic-laser-proc ros-kinetic-rgbd-launch ros-kinetic-depthimage-to-laserscan ros-kinetic-rosserial-arduino ros-kinetic-rosserial-python ros-kinetic-rosserial-server ros-kinetic-rosserial-client ros-kinetic-rosserial-msgs ros-kinetic-amcl ros-kinetic-map-server ros-kinetic-move-base ros-kinetic-urdf ros-kinetic-xacro ros-kinetic-compressed-image-transport ros-kinetic-rqt-image-view ros-kinetic-gmapping ros-kinetic-navigation ros-kinetic-interactive-markers
- 安装turtlebot3源码
cd ~/catkin_ws/src/
git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
git clone https://github.com/ROBOTIS-GIT/turtlebot3.git
cd ~/catkin_ws && catkin_make
- 环境设置
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
- 如果catkin_make完成没有任何错误,使用TurtleBot3的准备将完成。
到这里我们的rosgo就制作完成啦!有了它我们随时随地都可以玩转我们的ros系统略!这里引用rosgo的官方发布者“古月居”的一句话:“带上ROS2GO,来一场说走就走的ROS旅行~”
-------------------------------(注:此教程仅供学习参考禁止用于商业用途)---------------------------------------------
参考: https://blog.csdn.net/flyyufenfei/article/details/79187656