最新补充,在第二天的时候,我发现其实使用虚拟机也可以连接到leo机器人我是lj,所以如果只是想配置ros和rosstudio环境可以跳过第一步安装双系统,虽然可以使用虚拟机进入rosstudio(需要物理机连接到机器人wifi)并连接,但是仍然有个网络连接报错(我就是因为这个才以为无法连接,但是leo的IP是固定的,所以只需要输入leo机器人的IP就能连接上,最开始没搞明白给自己整糊涂了)。虽然花了一天时间配置各种环境,但也算是成功并且学到了不少东西,而且作为打工人的程序猿,在linux开发毕竟是必备技能,之前一直想装个linux,这次也终于弄了,在任务面前,拖延是最好治的!
写在前面
这几天开始准备计算机设计大赛国赛,所以开始重头开始弄这个ros机器人。初赛主要是在虚拟机上操作,一切都还顺利。不过决赛需要连接实物,首先是需要通过WIFI连接到小车。不过虚拟机里面遇到的问题是搜索不到WIFI,我一直以为是有什么问题,试了许多方法,下载驱动呀,更新内核呀,都是不行。
后面查了一些资料,想了想应该是虚拟机本身就无法单独使用WIFI,还是通过物理机进行联网的。这次仔细看了NAT模式和桥接模式,算有了更深的认识,昨天花了那么多时间搞,也主要是记得之前在虚拟机使用拨号连接校园网,主机的网会断开,以为可以单独连接其它WIFI,其实也不过是在同一局域网不同IP罢了。 其它废话不多说,直接还是上双系统,开整。

安装Ubuntu16.04(电脑是拯救者Y700P,电脑不同步骤也就多多少少有些不同,这里总结一下自己的问题)

安装过程基本顺利,我主要参考的这两个博客,写的很详细,基本也没出问题。
手把手教你安装win10+Ubuntu16.04的双系统
联想拯救者:Win10安装ubuntu 16.04 双系统

需要注意的点:
(1)我是联想,进入BIOS是按F2,然后主要设置这两个地方,(进入Security,将Security Boot 设置为 “disable”;进入 Boot,确该 Boot Mode 为“UEFI”,并且USB Boot为“Enable”);

(2)设置完以后按F10保存退出,这时候按照前面的教程,Ubuntu镜像已经使用软碟通烧录进去了,并且已经插上U盘了。在启动时一直点击F12,就会进入引导界面开始安装。过程和虚拟机安装基本一致,可以参考前两篇博文。 唯一需要注意的是分区设置,efi,boot,/三个分区按照推荐设置就可以,我一共分配了300G,efi分了4G,BOOT分了16G(电脑运存),/分了50G,剩下/home和/usr,剩下的分一下就行。具体分配看自己了。
(3)我等了4,5分钟就好了,会重启,重启直接会出现几个选项,进入Ubuntu或者Windows界面,还有两个两个好像是设置,可以不用管,那两个通过上下可以选择,Enter进入就可。也不用设置引导什么,进入也直接可以设置连接WIFI,都用,如果没有WIFI连接就可以参考教程进行设置。

工欲善其事必先利其器

装好Ubuntu以后,我并没有急着开始安装RosStdio环境,因为用的全新的镜像,啥也没有。虽然手上有配置好环境的文件,但是不是ISO文件,不知道装系统能不能用,应该只是适合虚拟机用,所以还是重头来。

1.首先就是输入法,我们知道在Linux中,现在也就搜狗支持,所以先下一个搜狗,毕竟自带的输入法真心不好用。参考这篇博客,清晰明了。

Linux下搜狗输入法安装
注意:安装好以后,需要进入设置——>语言设置一下输入法系统fcitx(我装好已经设置好的,如果没有还要下载fcitx,上述博客有讲到)
语言支持设置

然后搜索fcitx,会出现fcitx配置,进入选择+号,可以看到下载的搜狗输入法,再添加,然后上调优先级,顺利安装,现在我也是用这输入法写的这篇博文。
在这里插入图片描述

2.安装QQ,主要为了传输文件和交流。下面这一篇文章写的最简单明了,唯一需要注意的是新安装的系统还没有装Git,直接使用apt-get下一个就行。

QQ安装教程

QQ顺利安装

开始步入正题,安装RosStdio

首先安装ROS环境(这里可以参考ros的WIKI,当然也可以直接参考我这里)

(1)换源,这个在PC上方便很多,之前在树莓派和Jetson上面需要更改配置文件,这里只需要进入设置——>软件与更新,可以自行选择可用源,然后勾选好这几个地方,关闭会自动进行更新设置。
在这里插入图片描述

在这里插入图片描述
(2)配置 ROS 的 apt 源(直接使用国内源)

$ 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'
$ sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
$ sudo apt-get update

(3)安装 ROS 软件包(这里要花比较长的时间,一切顺利)

$ sudo apt-get install ros-kinetic-desktop-full
$ sudo apt-get install python-rosinstall

(4)配置环境变量

注意这里我遇到一点问题,提示网站无法访问,直接参考这篇博文,添加两条网址IP即可解决。

sudo gedit /etc/hosts

199.232.28.133 raw.githubusercontent.com
151.101.228.133 raw.github.com

解决sudo rosdep init错误

$ sudo rosdep init
$ rosdep update
$ echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
$ source ~/.bashrc

(5)测试ROS是否安装成功(出现如下图所示即成功)

ROS测试

移动抓取和自动驾驶环境

(1)安装 apriltag 算法包(git太慢的话可以直接下载zip包安装)

$ git clone https://github.com/AprilRobotics/apriltag
$ mv apriltag ~/apriltag_ws/src
$ cd apriltag_ws
$ catkin_make_isolated
$ sudo vim ~/.bashrc
打开~/.bashrc 文件在末尾添加以下
$ source ~/apriltag_ws/devel_isolated/setup.bash

(2)安装 moveit 算法包

$ sudo apt install ros-kinetic-moveit
$ sudo apt install ros-kinetic-moveit-visual-tools

(3)其它环境

#设置用户的串口读取权限
$ sudo usermod -a -G dialout your_user_name(your_user_name 替换为实际用户名。)
#安装依赖包
$ sudo apt-get install git python-serial ros-kinetic-serial g++
$ sudo apt-get ros-kinetic-turtlebot-rviz-launchers ros-kinetic-teleop-twist-keyboard
$ sudo apt-get ros-kinetic-move-base-msgs libghc-sdl-image-dev libsdl-imagK2.2-dev
$ sudo apt-get ros-kinetic-navigation ros-kinetic-slam-gmapping ros-kinetic-teb-local-planner
#除了第一个依赖,其它几个装不上,先放着吧

安装RosStudio

(1)安装依赖包

$ sudo apt-get install expect ctags libgl1-mesa-dev libffi-dev autoconf automake libtool curl make g++ unzip openssl libssh2-1-dev libssl-dev

(2)有些系统需要安装 openssl,下载 openssl-1.1.0g 下载地址:
https://www.openssl.org

#进入解压后的目录,执行以下命令:
$ ./config
$ make
$ sudo make install
#安装完依赖库后执行命令:sudo ldconfig
#刷新系统环境。

(3)安装 RosStudio
准备 RosStudio 安装(RosStudio.run),将文件放在用户目录下(如:/home/eaibot)。赋予安装包执行权限并安装:

$ cd eaibot
$ sudo chmod 777 RosStudio.run
$ ./RosStudio.run 
安装完成后,将在用户目录生成 RosStudio 文件夹,即程序主目录。
$ cd ~/RosStudio 
#进入程序主目录,再使用命令 ls 查看程序主文件夹的文件。
#其中RosStudio.sh 为程序启动脚本,此时安装过程结束。

成功安装

成功打开rosstudio
终于配好各种环境了,明天直接上手测试!