学了好久,然后依然很混乱,于是决定整理一下笔记
安装 Raspbian 非常简单,只需要三步:
首先打开树莓派官网,点击 DOWNLOADS,然后选择 RASPBIAN,来到Raspbian下载页面,下载 RASPBIAN JESSIE WITH PIXEL 的种子。通过种子来下载会快一些,而且下载后不需要校验。
下载种子
官方推荐使用Etcher来写入,试用了一下,简单快捷,不过有的情况会出错,没有查出来原因。
写入时系统可能会提示驱动器未格式化,千万不要格式化
写入完成后,可以看到TF卡有两个分区(驱动器):一个是启动分区,可以打开;另一个是系统分区,Windows不能识别,显示未格式化。
单独为树莓派3准备一套键鼠和显示器是很奢侈的事情,所以开启SSH就变成了通常做法。
打开启动分区,在里面新建一个文件夹,命名为 SSH 。
上面大部分内容其实都是在解释说明,要做的其实很少,只有以下3步:
配置时需要说明的更多一些,但其实要做的东西也很少,熟悉之后几分钟就能搞定。
在这部分需要做的事情是:
注意,在这部分,你最好使用路由器来建立局域网。
一开始如果能用键鼠和显示器,就能很轻松的连接上无线网络。如果没有,也可以先通过网线将树莓派连接入局域网(需要有DHCP分配IP地址,所以校园网不行)。
接好网线后,装上刚才制作好的TF卡,然后连接电源。大约20秒后,就可以通过SSH访问树莓派了。
Windows下常用的SSH软件是PuTTY,但是这个官网是“不存在的”,所以从这里下载。绿色软件,解压即可使用。
运行putty.exe,填入主机名称 raspberrypi,点击 open 按钮,即可开启链接。
PuTTY的界面
首次连接会提示Host key未知(或不一致),因为是自己的树莓派,添加即可。
Paste_Image.png
提示 login as: 时,输入用户名 pi
提示 pi@raspberrypi's password: 时,输入密码,默认是raspberry
Paste_Image.png
登录成功是这样的:
Paste_Image.png
这时,树莓派的命令行界面(终端)就显示在putty中了,在putty中的操作和在树莓派上直接操作的效果是一样的。输入exit可以退出终端,如果putty界面关闭,终端内运行的命令也都会结束。
因为使用PuTTY登陆,所以此时最好使用PuTTY自带的生成器来生成密钥。打开puttygen.exe,并选择Generate,之后会提示在空白处随意移动鼠标以生成随机数。
Paste_Image.png
之后会显示生成的密钥信息,如下图:
Paste_Image.png
图中①是公钥(锁),私钥(钥匙)并不会显示出来。在②处设置使用此私钥时需要输入的密码(可以不设置密码),在③处保存私钥,一般不需要保存公钥(因为载入私钥后就会显示公钥)。
存储私钥后复制①处的公钥,然后在putty界面中依次输入以下命令:
$ mkdir ~/.ssh
$ echo ssh-rsa AAAAB3……把本行ssh到最后的部分替换成自己的公钥……8xyFzQ== rsa-key-20170521
$ chmod 600 ~/.ssh/authorized_keys
$ chmod 700 ~/.ssh
** 解释一下上面的命令:**
上述命令执行后,可以新打开一个putty,使用私钥登陆。
先填入主机名,
Paste_Image.png
先填入主机名,然后在putty的左侧选择 Connection 中 SSH 的 Auth,在右侧最下方 Private key file for authentication中选择刚才保存的私钥。点右下角Open,启动终端,在输入用户名后若显示 Authenticating with public key "……" 则说明私钥认证成功。若私钥没有密码,则直接登陆成功。若有密码,则提示输入:
Paste_Image.png
若使用私钥登陆成功,则可以关闭SSH的密码登陆,以提高安全性。
$ sudo nano /etc/ssh/sshd_config
找到:
PasswordAuthentication yes
修改为:
PasswordAuthentication no
按Ctrl+X退出,按y保存,回车确定保存名称。
nano 是 linux 中常用的文本编辑器,没有vim那么高大上,但是简单易用。
更改设置后重启ssh服务以使设置生效。
$ sudo systemctl restart ssh.service
在网络中,每个计算机都拥有自己唯一的名称(主机名 Hostname,常简称Host),树莓派系统默认的Host是raspberrypi,不具有唯一性,因此需要修改这个值。树莓派有更改设置的命令行程序raspi-config
$ sudo raspi-config
Paste_Image.png
选择第一项更改密码,确认后,输入密码回车,再次输入密码回车。成功会显示密码更改成功。确认后返回程序主界面。
Paste_Image.png
选择第二项更改 Hostname ,提示只能使用小写字母及0~9的数字及连字符 -,确认后输入,按回车确认。
选择第四项 Localisation Options
Paste_Image.png
其中第一项是更改语言设置,第二项是更改时区。
按空格取消或选中选项,选中zh_CN.UTF-8
Paste_Image.png
按 Tab键 移动光标至 Ok,回车。
按下键移动光标至zh_CN.UTF-8,回车。
稍等片刻后会返回设置界面。
选择第5项 Interfacing Options
其中第3项是开启VNCServer(远程桌面)
选择第3项,并移动到Yes,回车。确认后返回主界面。
选择第7项 Advanced Options
其中第5项是更改分辨率
选择第5项,选择1280x720,回车。确认后返回主界面。
按Tab键移动到Finish,回车,会提示重启,选择Yes,回车。
由于树莓派重启,终端连接断开,会提示网络连接意外断开,如下图:
Paste_Image.png
确认后PuTTY会进入非激活状态,关闭窗口,如下图:
Paste_Image.png
重新打开putty.exe,输入新的主机名,设置私钥。
在左侧 Connection 中选择 Data ,在右侧中第一项中输入自动登陆用户名 pi 。
Paste_Image.png
在左侧选择 Session,在 Save Sessions 中输入登录设置名称,点右侧Save保存设置。
Paste_Image.png
然后双击配置名启动终端。
我们常用VNC Viewer来连接树莓派,来使用桌面功能。
新建一个链接,并在VNC Server中输入主机名,点Ok开启链接
会提示认证失败,可能不安全,点继续。
然后输入登录的用户名和密码。
Paste_Image.png
在右上角设置无线连接,选择自己的网络,并输入密码。
执行下列命令以安装vsftpd FTP服务器
$ sudo apt update
$ sudo apt install vsftpd -y
$ sudo service vsftpd start
$ sudo nano /etc/vsftpd.conf
找到以下项,并更改。# 开头的行表示注释,常用#来关闭某项设置,可以删除设置前的 #,以使该项生效。
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
$ sudo service vsftpd restart
之后可以使用WinSCP等软件以FTP方式登录树莓派。
建议在配置完后备份TF卡。
增加页面文件大小是为了解决编译时内存不足的问题。
$ sudo nano /etc/dphys-swapfile
找到 CONF_SWAPSIZE ,并将值修改为2048,保存退出并重启树莓派。
$ sudo sh -c 'echo "deb https://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
$ sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
然后更新一下
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install -y python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential cmake
然后初始化一下
$ sudo rosdep init
$ rosdep update
首先建立工作空间
$ mkdir -p ~/ros_catkin_ws
$ cd ~/ros_catkin_ws
然后配置一下安装文件,初始化工作空间,并下载源码
$ rosinstall_generator desktop rosserial perception joystick_drivers --rosdistro kinetic --deps --wet-only --exclude perception_pcl --tar > kinetic-custom_ros.rosinstall
$ wstool init src kinetic-custom_ros.rosinstall
$ wstool update -t src
为源码添加依赖
$ rosdep install --from-paths src --ignore-src --rosdistro kinetic -y -r --os=debian:jessie
$ sudo cp /usr/share/cmake-2.8/Modules/FindEigen3.cmake /usr/share/cmake-3.6/Modules/
开始编译
$ sudo ./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --install-space /opt/ros/kinetic
编译之后添加ROS配置到bash启动项
$ echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
$ echo "export EDITOR='nano -w'" >> ~/.bashrc
安装可以按照x64下面的Ubuntu安装,会简单很多。
$ sudo sh -c 'echo "deb https://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
$ sudo apt-get update
$ sudo apt-get install ros-kinetic-desktop-full
$ sudo rosdep init
$ rosdep update
$ echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
$ source ~/.bashrc
$ sudo apt install python-rosinstall
作者:一般的路人丙
链接:https://www.jianshu.com/p/887e6b2902d1
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。