Jetsonnano的环境配置
1. 准备SD卡
在Jetsonnano中配置Ubuntu在启动NVIDIAJetsonnano前,准备工作:准备一张SD卡,Jetsonnano要求最低配置16G的SD卡,但是整个系统刷完SD卡就被用了大概13G。后期还需要安装一些其他的机器学习框架,所以最低需要32G的SD卡。我们使用的是64G的SD卡。
2.Jetsonnano镜像下载
在使用开发套件之前,SD卡要烧写好操作系统,以及JetPack工程所需的其他组件。首先下载官方提供的Jetsonnano镜像文件,下载地址: Jetson Download Center | NVIDIA Developer
3.SD卡资料--镜像与备份--空卡可以不操作
3.1 在本地新建一个空白的.img后缀的空白文件新建一个空白的txt文件,然后重命名时将txt后缀修改成img后缀,文件名可以自定义(最好是英文)。
文件备份成功的一个前提条件:假设该树莓派上使用的内存卡是64G的,那么备份出来的镜像文件也是64G的,因此空白的img文件需要建在一个有64G的磁盘上,否则会备份失败。
3.2 内存卡连接到电脑这时候弹出格式化提醒的弹窗点击 取消。这一步很重要,点击格式化磁盘的就是将你要备份的文件删除了!!!
3.3镜像拷贝打开win32Disk软件,选中刚刚新建的空白img文件,然后点击“read”。
这时会弹出一个覆盖写入的警告弹窗,点击“yes”。
耐心的等待(64G的镜像时间大概需要30分钟),完成后会弹出successful的弹窗,点击ok即可。
下一步退出win32Disk软件,点击exit。拔出内存卡,镜像备份成功。
这里查看一下备份好的镜像文件大小,是和内存卡大小一致的。
4.Jetsonnano镜像的烧录
4.1 格式化内存卡
将内存卡通过读卡器连接电脑,打开SDFormatter软件。
点击“更新”会自动选中内存卡,默认是快速格式化模式,点击“格式化”按键。
这时候会弹出一个快速格式化提醒,点击“确定”
如果再次失败可能是内存卡的名称太长导致的,修改内存卡名称后(改一个简单数字,比如1),重新点击格式化就可以了。
在格式化完成后,建议最好重新插拔一下内存卡,确认是否真的格式化成功了。这里可以看到,内存卡是空白的,格式化成功。
4.2打开win32Disk软件,导入镜像
选中写入的镜像文件和内存卡,点击“write”。 注意关闭杀毒软件。
覆盖写入警告弹窗,点击“yes”
耐心的等待(64G的镜像时间大概需要40分钟),写入成功后,会弹出一个格式化提醒的弹窗,这时候千万别点击格式化,点击 取消即可。
写入成功弹窗,点击“确定”
到这里镜像写入内存卡就完成了,拔出内存卡,插入到树莓派中,就可以使用了
5.在Jetsonnano供电
(1) 准备一根电源线,Jetsonnano不包括电源,需要自己准备1根5V⎓2A的MicroUSB电源线;
(2) 也可以准备一个5V⎓4A的电源适配器,为后续陆续增加的外设提供功率保障。
        使用DC电源时需要将J48两个触点短接(插上跳线帽),否则默认为USB口供电。
6.Jetsonnano开机
将烧录好镜像文件的SD卡插入Jetsonnano中。
Getting Started With Jetson Nano Developer Kit | NVIDIA Developer
Jetsonnano上电不自启,需要重新插拔下电源。
1.首次sudo ,需要先设置 sudo passwd 。输入两次密码。
2.Jetsonnano开机后进行系统设置,需要自己设置登录的账号与密码,设置完之后登录进系统就可以开始正常使用了。JetsonNano利用官方镜像进行安装后,系统已经安装好了JetPack,cuda,OpenCV等组件,需要修改下环境变量才可以使用。修改步骤为:
a)利用gedit打开.bashrc文件:sudo gedit ~/.bashrc
b)文件的最后添加以下三行:
export PATH=/usr/local/cuda-10.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-10.0
c) 重新执行.bashrc文件,source  ~/.bashrc
d) 输入nvcc -V命令进行测试,如果显示如下信息,证明修改正确。
7.Jetsonnano的网络连接
三种方法可以实现Jetsonnano上网:
1.网线
2.USB无线网卡
3.USB无线网卡
8.安装ros
CSDN 参考 Ubuntu18.04安装ROS Melodic(详细,亲测安装完成,有清晰的截图步骤)_mango-CSDN博客_ubuntu18.04安装melodic
rosdep update 失败: rosdep update 超时失败2021最新解决方法_wongHome的博客-CSDN博客_rosdep update 超时失败2021最新解决方法
9,放入小车源码进行编译
9.1.在Ubuntu系统  /home/xxx/目录下 mkdir  catkin_ws
进入catkin_ws 目录,复制源码src目录。
在src 目录下删除cmakelist.txt和realsense-ros- development 目录
然后catkin_init_workspace.
9.2 在catkin_ws目录下,输入指令catkin_make 编译
9.3出现相应的错误,表示缺少对应的库文件  或是冲突。参考: ROS编译基本错误_李德龙杰的博客-CSDN博客
(1):No package ‘orocos-bfl‘ found
sudo apt-get install ros-melodic-bfl
(2)解决Ubuntu环境下ROS Kinetic中的cv_bridge和自己安装OpenCV xx兼容性:
把对应文件opencv路径修改成所安装的路径  set(_include_dirs "include;/usr/include;/usr/include/boost/compute/interop/opencv") LINE:96
CMake Error at /opt/ros/melodic/share/cv_bridge/cmake/cv_bridgeConfig.cmake:113_kaikai_1019的博客-CSDN博客
(3)Could NOT find SDL (missing: SDL_LIBRARY SDL_INCLUDE_DIR):
sudo apt-get install libsdl1.2-dev
sudo apt-get install libsdl-image1.2-dev
sudo apt-get install libsuitesparse-dev
(4)【opencv4】——fatal error: opencv2/opencv.hpp: No such file or directory #include <opencv2/opencv.hpp>
sudo  ln  -s  /usr/include/opencv4/opencv2   /usr/include/
(5):不能找到 “serial”
sudo apt-get install ros-melodic-serial
(6):不能找到 “tf2-sensor-msgs”
sudo apt-get install ros-melodic-tf2-sensor-msgs
(7)很多类似的缺少,或是缺少头文件。需要安装sudo apt-get install ros-melodic-xxx.
直到编译100%通过。

sudo apt-get install   ros-melodic-bfl   libsdl1.2-dev  libsdl-image1.2-dev  libsuitesparse-dev ros-melodic-serial  ros-melodic-tf2-sensor-msgs  ros-melodic-uuid-msgs
ros-melodic-cv*   ros-melodic-opencv  ros-melodic-libuvc  ros-melodic-move-base-msgs  ros-melodic-costmap-con .....   ros-melodic-ackerman-msgs
(8).以后每次打开终端编译前需要: source devel/setup.bashrc 
可以把source /home/xxx/catkin_ws/devel/setup.bashrc  放入home目录下的.bashrc
然后source  .bashrc
10.Jetsonnano镜像的备份--在Ubuntu电脑上
1镜像备份把Jetsonnano的卡用读卡器插到硬盘空间大于32G的Ubuntu电脑上,注意这里不能使用虚拟机进行备份,
因为Windows无法读取装了Jetsonnano系统的内存卡。
备份过程为:
a)首先打开一个终端输入命令sudofdisk-u–l查看磁盘号;
b)使用命令sudo-s或者sudosu进入root模式准备备份;
c)在终端输入命令开始备份(要先确认sda/b/c):
d)sudo dd if=/dev/sda | gzip>/home/deskmeadia/CareRobot_nano.img.gz
e)打开一个新的终端输入命令:sudo pkill -USR1 -n -x dd可查看备份进程,当备份完成后在home目录下生成的镜像文件名为wheeltec_nano.img.gz,
直接打开home文件没有看到这个文件,需要从文件-Other Locations-Computer-home中查看,这时可以用U盘将镜像直接拷贝出来。
11.Jetsonnano镜像的恢复Jetsonnano镜像的恢复有两种方式。
分别是命令行恢复与使用镜像制作工具Etcher对镜像进行恢复。先对需要烧录镜像的SD卡进行格式化操作,格式化步骤与树莓派中的格式化SD卡步骤一致。
1使用命令行恢复
a)在已有备份镜像的Ubuntu电脑中,插入需要烧录镜像的SD卡,此时SD卡已经完成格式化。
b)进入SD卡的目录中打开终端输入命令sudofdisk-u–l查看磁盘号;
c)使用命令sudo-s或者sudosu进入root模式准备恢复镜像;在终端输入命令开始恢复镜像(要先确认sda/b/c):
d)输入指令:sudo gzip -dc /home/deskmeadia/CareRobot_nano.img.gz | sudo dd of=/dev/sda开始恢复,
这里的/home是镜像存放的目录,/dev/sda是第二步查到的结果。
e)在终端输入命令:sudopkill-USR1-n-xdd可查看恢复进程
2使用Etcher
恢复下载镜像制作工具Etcher,下载地址为: balenaEtcher - Flash OS images to SD cards & USB drives使用Etcher软件写入镜像。
打开Etcher软件,依次点击:[Selectimage]打开下载的镜像文件-->[Selectdrive]选择microSD卡-->[Flash!]进行烧录。
12 安装nfs  :
  1. 安装NFS服务端sudo apt-get install nfs-kernel-server
  2. 安装NFS客户端 sudo apt-get install nfs-common
  3. 添加NFS共享目录/home/wheeltec/wheeltec_rebot *(rw,sync,no_root_squash)
  4. 给挂载的目录设置权限以及修改文件用户sudo chmod-地方-hR777/home/wheeltec/wheeltec_robot
  5. 启动NFS sudo/etc/init.d/nfs-kernel-serve rstart
  6. 挂载NFS sudo mount -t nfs -o nolock 192.168.0.100:/home/wheeltec/wheeltec_robot /mnt
  7. 查看是否挂载成功:直接打开/mnt目录查看里面的内容是否有一个“src、devel、build”这三个目录,或者直接使用指令“df-h”查看所有挂载的目录
13 开机执行脚本
1.新建需要运行的脚本文件:进入/etc/init.d的路径下,sudo vim mount_test.sh
2.编辑脚本写入:
#!/bin/bash
###BEGININITINFO
#Provides:svnd.sh
#Required-start:$local_fs$remote_fs$network$syslog
#Required-Stop:$lcoal_fs$remote_fs$network$syslog
#Default-Start:2345#Default-Stop:016
#Short-Description:startsthesvnd.shdaemon
#Description:startssvnd.shusingstarts-stop-deamon
###ENDINITINFO
sudo mount -t nfs -o nolock 192.168.0.100:/home/wheeltec/wheeltec_robot /mnt
3.修改执行脚本的权限:sudo chmod 777 mount_test.sh
4.将该脚本添加到开机执行的队列中:sudo update-rc.d mount_test.sh defaults 90
5.取消开机自动运行:sudo update-rc.d -f mount_test.sh remove

14  SSH远程登录

1.安装openssh-service

命令: sudo apt install openssh-server

2、启动ssh服务

命令: sudo service ssh start
3.ssh登录
ssh wheeltec@192.168.0.100

15.ROS多机通信设置
1.在/home目录编辑 sudo vim .bashrc 在末尾加入:
source /opt/ros/melodic/setup.bash    -----安装ROS时设置的环境变量
source /home/xjh/catkin_ws/devel/setup.bash------虚拟机(主机)上的ROS工作空间的环境变量
exportROS_MASTER_URI= http://192.168.0.100:11311---------从机的IP地址,冒号后面的11311不需要修改
export ROS_HOSTNAME=192.168.0.142-------------主机(本地)的IP地址;
export SVGA_VGPU10=0
export PATH=/usr/local/cuda-10.2/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-10.2
source /opt/ros/melodic/setup.bash
source /home/ximei/robot/devel/setup.bash
export ROS_MASTER_URI= http://192.168.11.221:11311
export ROS_HOSTNAME=192.168.11.221
export SVGA_VGPU10=0
  1. source .bashrc
16.samba 服务器: 在Windows上访问linux的共享文件夹_huayangshiboqi的博客-CSDN博客_windows访问linux共享文件夹

Jetsonnano的环境配置--ros环境相关推荐

  1. ros创建工作空间_ROS 初级 - 安装和配置 ROS 环境

    这个 ROS 系列教程主要来自 ROS Wiki,加上自己学习过程中踩过的一些坑和个人理解. 1.安装 ROS 在配置 ROS 环境前要完全安装 ROS,参看之前的安装 ROS 的文章:Ubuntu ...

  2. ROS学习笔记一:安装配置ROS环境

    ROS学习笔记一:安装配置ROS环境 在安装完成ROS indigo之后,需要查看环境变量是否设置正确,并通过创建一个简单的实例来验证ROS能否正常运行. 1 查看环境变量 在ROS的安装过程中,我们 ...

  3. ubuntu16.04初安装,ROS kinetic,安装ros,配置ros环境

    建议使用阿里云提供的ubuntu16.04的镜像安装ubuntu系统,用其它镜像可能会安装不上ros 一.下载并安装Ubuntu16.04.6 阿里云下载ubuntu系统官方镜像:(阿里云的此镜像我已 ...

  4. 【ROS】学习笔记一 ubuntu16.04下vs code配置ros环境并编写helloworld程序

    [ROS]ubuntu16.04下vs code配置ros环境并编写helloworld程序 一.vs code下载 1.相关配置要求: (1)系统为ubuntu16.04 (2)已安装好kineti ...

  5. ROS教程1:安装和配置ROS环境

    安装和配置ROS环境 1 安装ROS 1.1 ROS Installation 1.2 是否安装成功 2 创建ROS工作空间并编译 2.1 Create catkin 2.2 catkin 是否配置正 ...

  6. 【学习ROS】linux安装并配置ROS环境

    http://wiki.ros.org/cn/ROS/Tutorials/InstallingandConfiguringROSEnvironment 安装并配置ROS环境 Description: ...

  7. Ubuntu16.04(GTX1660ti)cuda10.0和cudnn7.6环境配置 (环境乃一生之敌!!!)

    Ubuntu16.04(GTX1660ti)cuda10.0和cudnn7.6环境配置 (环境乃一生之敌!!!) 第一项:安装显卡驱动 1.下载显卡驱动,到https://www.nvidia.com ...

  8. Clion配置Ros环境

    在Linux中,Clion也算是一个不错的开发IDE工具了,优点就不再赘述了. 在使用过程中尤其是发现CLion的格式化代码功能和实时代码分析功能真是太方便了,不过却不是免费的,收费大概是个人版一月5 ...

  9. Qtcreator配置Ros环境

    在Linux中,Qtcreator也算是一个不错的免费开发IDE工具了,但是在开发Ros程序需要简单配置下 修改/usr/share/applications/DigiaQt-qtcreator-en ...

最新文章

  1. 蓝桥杯-本质上升序列-java
  2. GIT SSH连接遇到到的问题
  3. shell中通过sed替换文件中路径
  4. 滴滴出行2020数据分析面试题
  5. iOS 登录功能的实现
  6. 1_MVC+EF+Autofac(dbfirst)轻型项目框架_core层(以登陆为例)
  7. 使用Mutex进行线程处理
  8. matplotlib plt.plot
  9. 元组的创建、元组的特性(索引、切片、重复、连接、成员操作符、迭代)
  10. 局域网连接MYSQL8.0报错1251的解决记录
  11. tomcat下jaas配置实例
  12. 甲方爸爸素材给得少,怎么做出高大上的设计?
  13. 物联网带动传感器站上风口 华灿光电并购美新半导体
  14. 删除MacOS的升级文件
  15. [DUBBO] disconnected from 问题
  16. 第五人格服务器维护中怎么进游戏,第五人格游戏进不去黑屏怎么解决 第五人格游戏进不去黑屏解决攻略...
  17. 运营技巧|如何把产品运营好?
  18. OpenCV学习笔记(6)基于 VC+OpenCV+DirectShow 的多个摄像头同步工作
  19. LTE信令流程——位置更新
  20. 2017移动开发者大会汇总【收藏版】

热门文章

  1. DHCP和交换机的工作原理
  2. Android .mk文件语法规范及使用模板
  3. android 手动连接wifi,android手动连接wifi的过程
  4. layui table数据表格前端分页
  5. python网站开发教程,python在线编程网站
  6. 数据、信号、码元传输速率和信息传输速率等概念
  7. 零空间、点积与对偶性
  8. NOIP2012——文化之旅
  9. ntlm-auth java_JAVAMAIL:AUTH NTLM失败
  10. Post方式与参数详解