最近拿到一块TX1的板子搭建ROS平台,对于从来没有玩过开发板的我表示很心累,过程中遇到许多坑,最后也是成功了,也是希望能够分享出来与大家交流交流。

TX1拿到手之后也是很懵逼的(因为没玩过),也是现在网上搜了一大堆资料,最后开始动手。其实在TX1上搭建ROS就两个步骤:刷机安装ROS,下面就给大家详细的操作流程。

一. 刷机

刷机网上也有很多教程,大家可以参考,我向大家推荐这一个https://blog.csdn.net/c406495762/article/details/70786700,他已经写的比较详细了,基本上都能看懂,我这边也只是大概讲一下流程以及避免一些坑,大家可以两篇文章一起看,会更加全面。

首先,提出一个说明,很多教程指出TX1不支持64位的Ubuntu系统上装ROS,最后证明是可以的,大家可以放心的下载Ubuntu16.04 64位。TX1本身是装有16.04的Ubuntu系统,我一开始是直接安装ROS没有刷机,但装的过程出现问题,最后也没有找到解决方案,按照终端给出的解决命令,直接把系统搞崩了,没办法,只有刷机之后再装,大家可以跳到下面的安装ROS步骤,尝试装一下,失败了刷机之后再装ROS也是没也问题。

在官网下载Jetpack包,但需要注册账号之后才能下载(https://developer.nvidia.com/embedded/jetpack

在这先指出本文中特别重要的一个名词->安全令

      安全令就是在终端执行以下三条命令

$ sudo apt-get update

$ sudo apt-get upgrade

$ sudo apt-get -f install

这是血淋淋的教训得出来的经验,不要不信邪,在需要使用安全令的时候一定要用。

下载完之后先不要安装,确保安全令输入之后不会出错,没有问题则继续安装。有问题就需要百度或者google了。

然后就是一路点击NEXT,选择TX1,在那篇文章里面有详细的介绍,我就不重复了。

给出大家TX1的一些比较重要的接口和开关示意图。

安装成功之后,按照步骤将电脑,开发板,路由器连接起来开始在开发板上安装,在开发板安装结束之后就可以在开发板上插入显示屏,键盘,鼠标开始装ROS了。

问题来了,由于TX1板子的功能包是arm架构,电脑基本上都是amd架构,这就会出现一个冲突,导致在电脑上输入sudo apt-get update 会出错,错误解决方案在我另一篇博客(https://blog.csdn.net/BOSHEN97/article/details/84254353)当中给出,大家可以参考。

二. 装ROS

我装的Jeppack包版本为3.3,Ubuntu会有两个用户nvida和ubuntu,密码和用户名都是一样的,默认进入nvida,由于国外源较慢,所以我们选择为数不多支持arm架构的中科大源。

$ cd /etc/apt

$ sudo gedit sources.list

将sources.list的内容全部注释,将以下内容复制粘贴进去

deb http://debian.ustc.edu.cn/ubuntu/ trusty main multiverse restricted universe

deb http://debian.ustc.edu.cn/ubuntu/ trusty-backports main multiverse restricted universe

deb http://debian.ustc.edu.cn/ubuntu/ trusty-proposed main multiverse restricted universe

deb http://debian.ustc.edu.cn/ubuntu/ trusty-security main multiverse restricted universe

deb http://debian.ustc.edu.cn/ubuntu/ trusty-updates main multiverse restricted universe

deb-src http://debian.ustc.edu.cn/ubuntu/ trusty main multiverse restricted universe

deb-src http://debian.ustc.edu.cn/ubuntu/ trusty-backports main multiverse restricted universe

deb-src http://debian.ustc.edu.cn/ubuntu/ trusty-proposed main multiverse restricted universe

deb-src http://debian.ustc.edu.cn/ubuntu/ trusty-security main multiverse restricted universe

deb-src http://debian.ustc.edu.cn/ubuntu/ trusty-updates main multiverse restricted universe

保存退出

接下来就开始安装ROS了

添加ROS的镜像源

$ 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://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116

输入安全令,确保无误方可继续。

安装ROS(无法安装桌面完全版,具体原因尚未清楚)

$ sudo apt-get install ros-kinetic-desktop

初始化rosdep

$ sudo rosdep init

$ rosdep update

设置环境变量

$ echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc

$ source ~/.bashrc

安装常用工具(可不安装,但建议安装)

$ sudo apt-get install python-rosinstall python-rosinstall-generator python-wstool build-essential

至此,ROS安装完毕,在终端输入roscore,如果没有问题则说明ROS安装成功。

如果要用于实体机器人需要注意,TX1上是没有默认安装USB转串口的驱动,所以需要安装cp210x.ko驱动,大家先执行以下命令查看内核是否有cp210x驱动。

$ cd /lib/modules/4.4.38-tegra/kernel/drivers/usb/serial

$ ls

如果出现了cp210x.ko的字样,就说明有驱动,直接加载就可以了,没有就可能要去下载。

因为我也是在下载了多次之后才发现这里面有这个驱动模块,所以我并不清楚是我自己下的还是系统自带的,如果大家发现不是系统自带的,大家可以私信我,我会再写一篇文章给大家一个安装cp210x.ko驱动的教程,这个坑也很多。

加载驱动命令如下

$ sudo insmod cp210x.ko

需要注意的是,每次开机都需要加载一次,我也尝试在开机的时候内核启动就把驱动加载,但一直没找到正确的方法,还在努力的尝试中,大家如果知道可以分享一下,我也有一个另类思路,但也没去尝试,大家可以试一试,将开机启动之后的用户权限设置为root权限,这样一开机就是root用户权限,然后再设置一个开机自动输入sudo insmod cp210x.ko命令。应该可以,但不知道会不会有问题。

在Nvida TX1上搭建ROS相关推荐

  1. 基于Jetson Tx1搭建ROS小车的过程①(20221116)

    SunnyG按:准备做课程项目了,ROS系统做智能小车,这里记录一下步骤,方便查阅. 基于Jetson Tx1搭建ROS小车的过程①(20221116) 达成:完成安装ROS ============ ...

  2. SLAM导航机器人零基础实战系列:(二)ROS入门——10.在实际机器人上运行ROS高级功能预览...

    SLAM导航机器人零基础实战系列:(二)ROS入门--10.在实际机器人上运行ROS高级功能预览 摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了 ...

  3. 从零搭建ROS机器人平台

    0.声明 本系列文章,仅介绍如何搭建ROS机器人平台,即机器人和ROS打通关系,通过ROS与机器人硬件STM32通信,并且在ROS层发布机器人tf和odom,并且做了简单的建图和导航测试. 之后的内容 ...

  4. ROS机器人应用(1)—— 搭建ROS虚拟机环境

    文章目录 搭建ROS虚拟机环境 1. 连接小车wifi 2. 下载vmware虚拟机 3. 下载ubuntu系统镜像 4. 远程登录 5. 常见问题 6. 简单操作演示 搭建ROS虚拟机环境 1. 连 ...

  5. 在Ubuntu 12.04 64bit上搭建Crtmpserver视频直播服务

    本篇博客继续在上篇<在Ubuntu 12.04 64bit上搭建Crtmpserver视频点播服务> http://blog.csdn.net/tao_627/article/detail ...

  6. Ubuntu 12.04 64bit或者CentOS 6.3 64bit上搭建OpenRTMFP/Cumulus服务器

    Ubuntu 12.04 64bit或者CentOS 6.3 64bit上搭建OpenRTMFP/Cumulus服务器 2013-12-25 1.从官网下载源码包 cd ~/progrom_devel ...

  7. 在CentOS 6.2上搭建vim开发环境

    在CentOS 6.2上搭建vim开发环境 最后更新日期:2013-07-05 1.首先使用Ubuntu(所在ip为192.168.16.230)翻墙登陆http://www.vim.org/,下载其 ...

  8. ubuntu14.04上搭建android开发环境

    这几天心血来潮,想在ubuntu上写写android软件.所以就上网找些资料在ubuntu上搭建android环境.结果要么时不完整的,要么就是过时的. 所以我把我搭建android环境的过程写下了, ...

  9. 在Windows上搭建Git Server

    Git在版本控制方面,相比与SVN有更多的灵活性,对于开源的项目,我们可以托管到Github上面,非常方便,但是闭源的项目就会收取昂贵的费用. 那么私有项目,如何用Git进行代码版本控制呢?我们可以自 ...

最新文章

  1. 个人开发者即时到账收款方案 BufPay.com
  2. 全球及中国电缆保护套管行业十四五规划及投资前瞻专题分析报告2021年版
  3. PHP区域联动后端接口与数据表设计
  4. 单页web应用是什么?它又会给传统网站带来哪些好处?
  5. (11)FPGA跨时钟域处理(第3天)
  6. java之关系运算符
  7. 为什么刚度阵对称?根本原因在于物理方程。知识点:矩阵微积分,物理方程
  8. 中兴交换机如何查看服务器设备,中兴交换机查看设备序列号
  9. RabbitVCS无法自动保存密码的BUG
  10. 市场上提供源码的商城系统有哪些?
  11. [cesium] 卫星雷达传感器,雷达探测效果
  12. 研华微型计算机biso,研华主板bios设置方法
  13. Installation silently blocked for package name fix
  14. Ubuntu 如何更换内核
  15. 6月世界自行车日 今天聊聊斯柯达
  16. MATLAB | 全网唯一! 又双叒叕一种弦图绘制
  17. Lemur的检索过程
  18. 源码管理工具VSN的安装与使用--eclipse
  19. Android最实用的工具类框架——AndroidUtilCode
  20. 入党申请书可以用计算机打印吗,入党申请书能用计算机打印吗?

热门文章

  1. MapReduce NativeTask优化详解
  2. 最全的NumPy教程
  3. [疯狂Java]JDBC:ResultSet的升级RowSet、离线的CachedRowSet、离线分页查询
  4. struct usb_hcd
  5. 【毕业设计之app系列】电影院订票app设计与实现
  6. 电影《我不是药神》中最让人印象深刻的一句话是:这世上最大的病,是穷病...
  7. 爱奇艺网络控制和抓包测试技术实践
  8. iPhone和iPad不能充电的解决办法(一定条件下)
  9. 乖离性暗机器人_乖离性百万亚瑟王超弩暗机器人强化版打法攻略
  10. Linux命令之修改文件权限chmod