这是Jeston Nano的官网地址
Jetson Nano是Nvidia在TX2和Xavier获得成功后推出的低配版GPU运算平台。Nano最大的特色就是包含了一块128核Maxwell架构的GPU,虽然已经是几代前的架构,不过因为用于嵌入式设备,从功耗、体积、价格上也算一个平衡。Nano的计算能力不高,勉强可以使用一些小规模、并且优化过的网络进行推理,训练的话还是不够用的。4GB的内存并不能完全使用,因为其中有一部分(1GB左右)是和显存共享的。Jetson Nano的最大优势还是在体积上,它采用核心板可拆的设计,核心板的大小只有70 x 45 mm,可以很方便的集成在各种嵌入式应用中。同时它的功耗也非常低,有两种模式:
我这里使用的是4GB,并且没有使用官配的网卡,用的是一个usb无线网卡,再上网速度上并无明显差别,也比较方便
https://developer.nvidia.cn/embedded/learn/get-started-jetson-nano-devkit#write
官网给了镜像文件,中文的安装详细教程,要注意的是下载的系统要配套开发板,SD卡也需要32G及以上,而且下载速度也会比较慢,大家可以去找一些网盘文件进行下载
Jetson Nano Ubuntu烧录工具下载链接:https://www.balena.io/etcher/
烧录前可能需要对SD卡进行格式化SDFormatter
进行烧写
具体的操作都很简单,烧录完成后,将读卡器弹出即可(刚烧录完可能有点热)
将烧有系统的SD卡插入Jeston Nano的卡槽内,启动电源,电源灯绿色则表示系统启动正常。
这里说明一下电源连接的问题,如果你使用的是micro-USB口来供电的话,开发板上的电源跳线帽不需要连接,如果是直流桶式插座供电,需要使用跳线帽将上面的两个针脚连接起来
启动系统后,如果你选择外接屏幕,那么按照屏幕给出的提示完成操作即可。需要注意的是,Nano的屏幕需要HDMI输出,最好选择双口HDMI线,但如果你的屏幕接口是VGA输入的话,买一个HDMI-VGA转接头也是可以的,但购买的时候需要买好一点的,太过便宜的头在4GB的开发板上可能无法使用(别问,问就是经历过,崩溃了好久才找到原因)
首先讲一讲有屏幕和无屏幕的区别:没有屏幕的话,是PC与Nano连接在同一网络,通过ssh连接,并安装VNC或使用windows自带程序来进行远程桌面连接。这样的方式在桌面GUI操作上会有一些延迟,但对于命令行操作无明显影响,相比来说,有屏幕的操作会略显简单流畅。远程桌面的好处就是代码可以直接复制粘贴,且方便携带
我这里使用的是无屏幕操作,
1、因为没有屏幕,在首次启动不好连接wifi,所以我使用网线连接路由器与Nano
2、Jeston定制的Ubuntu系统有默认开启ssh,所以直接再PC端下载putty即可连接(或者使用xshell),连接需要同一网络下的NanoIP,
3、可以使用软件Wireless Network Watcher来查看IP;或者使用cmd中指令:arp -a来查看,IP指令的辨别
4、然后利用putty在Jeston上安装vino服务,这里的教程比较多,我主要说一一下我遇到的问题:第一次安装后成功运行,之后再次开机后就无法连接VNC了,
终端会这样显示,在网上找了好多办法也没能解决,VNC那里也一直显示拒绝连接,我就用Windows的远程连接(cmd:mstsc)上去了(这个只要putty连接成功,就没出现过问题,相比VNC会慢一点),发现是设置里拒接了屏幕分享
开启后就可以VNC连接了,这里应该我没有玩明白VNC;我是每次重新开机都无法连接VNC,连接了Windows远程屏幕连接后,VNC可以正常打开
5、远程连接完成后就可以和有屏幕一样操作了
ROS是用于编写机器人软件程序的一种具有高度灵活性的软件架构。它包含了大量工具软件、库代码和约定协议,旨在简化跨机器人平台创建复杂、鲁棒的机器人行为这一过程的难度与复杂度。
ROS简介
ROS简介
ROS设计者将ROS表述为“ROS = Plumbing + Tools + Capabilities + Ecosystem”,即ROS是通讯机制、工具软件包、机器人高层技能以及机器人生态系统的集合体
1、添加ROS源
sudo sh -c 'echo "deb http://mirrors.ustc.edu.cn/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
3、更换完源要更新一下包列表
sudo apt update
4、安装ROS
sudo apt install ros-melodic-desktop-full完整桌面版
sudo apt install ros-melodic-desktop
大家任选一个安装就可以,大概需要5分钟左右
5、配置一些环境
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
6、安装依赖包
sudo apt install python-rosdep python-rosinstall python-rosinstall-generator python-wstool build-essential
7、初始化
sudo rosdep init
rosdep update
这里的问题比较多,我详细讲一下
sudo rosdep init首先你需要这句命令来从GitHub上下载几个文件,但是需要,网上大概有这杨几种方法:
1)修改host文件:有的人成功了,有的人失败了,我反正是一直没有成功过
2)将直接下载到本地,跳过init的步骤:这里的操作比较复杂,需要有耐心
3):这个方法我既不推荐也不反对
4)使用rosdepc:树莓派的博客里我是用的第二种方法,Jeston这里我采用这种方式。rosdepc是一位大佬更新的rosdep国内版,据他本人所言,只是修改了地址,具体会出现什么问题,我先用着看,下面是安装方法,比较简单
https://zhuanlan.zhihu.com/p/398754989
安装完成后,即可初始化并更新完成
8、开启roedep
这里需要再一次配置环境,直接再次使用上面的环境配置命令即可
然后
roscore
即可
这里就表示开启成功
但是这里可能会出现如图的问题
应该是环境变量配置错误导致,具体的解决方法是:
gedit ~/.bashrc
对环境配置文件进行编辑
修改或添加:
export ROS_HOSTNAME=localhost
export ROS_MASTER_URI=http://localhost:11311
一般是需要添加的,直接添加在最后就可以了,保存退出后再此运行roscore即可成功
9、至此已经安装完成,接下来就是庆祝一下跑个大家都会跑的小乌龟
再打开依次两个终端,并分别执行
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key
运行成功后,共有三个终端窗口,一个显示窗口,通过上下左右即可控制小乌龟,需要注意必须选中rosrun turtlesim turtle_teleop_key打开的窗口才可以控制