旭日3SDB,安装原版ros

0、准备资料

硬件:SDB的开发板解相关附件(板卡、电源线、sd卡)
硬件:显示相关(屏、屏幕连接线和屏电源)
硬件:鼠标、键盘、网线、电脑、读卡器(如果电脑直接能读取sd卡则不需要)
软件可以参考下面1章节中的链接的网盘资料。(链接:https://pan.baidu.com/share/init?surl=e8UISrjka2rqns21uv7tQg 提取码:mfz5)
软件:emmc镜像:地平线的产品中心的资源中心的旭日X3 SDB资料X3SDB Ubuntu 系统镜像中存在emmc的镜像
软件:ubuntu系统镜像:地平线的产品中心的资源中心的旭日X3派资料:旭日X3派系统镜像(桌面版)
软件:升级工具hbupdateV1.3
软件:mobaxterm串口工具
软件:balenaEtcher镜像烧写工具
软件:ros中的rosdep包:链接:https://pan.baidu.com/s/1ff0bsxZqABpbyWv1JAZ76w 提取码:yyds

上面的所有资料上传到阿里云盘

「20220627_csdn_附件」等文件 https://www.aliyundrive.com/s/SB2SoTuvkHP 提取码: v7t7
点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。

1、烧写emmc镜像和ubuntu镜像

参考链接:https://developer.horizon.ai/forumDetail/89018995415500818

1.1烧写emmc镜像

刚到的板卡,参考文章说有些情况不用刷,不管了,再刷一遍应该也没事。
根据上面的链接的4章节进行如下操作
对开发板进行供电,
使用串口进行链接开发板和电脑。
打开hbupdateV1.3升级工具,
安装参考文档中或者下面的图进行配置烧写。
(这里我使用了网线进行连接和开发板和电脑,修改了电脑的ip与开发板在同一个网段,与参考文章一样。但我感觉没啥用,因为最后还是通过串口进行烧写的镜像,如果出现问题,还得安装参考文档的一步一步来)

1.2烧写ubuntu系统镜像

依旧参看上面文章进行如下操作。或者参考x3派的手册1.2章节
拔下开发板的内存卡,其采用弹式卡槽,按一下就可以取出来了。树莓派4B却没有这样设计。
将sd卡放入读卡器中插入电脑(使电脑可以对sd卡进行读写)。
对sd卡进行格式化。
打开balenaEtcher工具,将ubuntu镜像烧写到sd卡中
烧写完成后将sd卡插入到板卡中。
连接好显示屏。
再用参考文档的工具mobaxterm进行查看板卡启动过程(参考x3派手册1.3章节
进行板卡上电,显示屏就会出现ubuntu的桌面。(上电后稍微等一下,串口开机后还会打印东西。首次可能需要时间长一点)

2、安装ROS

2.1板卡进行上网

参考x3派的2.2章节无线网络配置,利用手机热点进行上网,利用其他wifi也可以。
下面使用的x3sdb的3.2章节进行指令扫描连接的wifi

nmcli device wifi rescan 
nmcli device wifi list 
nmcli device wifi connect 账号 password 密码
# nmcli device wifi connect AIOT password 12345678 请换成自己的WI-FI热点账号密码

之后就可以上网了,可以使用下面语句进行测试

ping www.baidu.com

2.2安装ros-xxx-desktop-full

2.2.1参考文档

  1. ROS-虚拟机Ubuntu中安装ros系统:https://blog.csdn.net/weixin_41332204/article/details/120978312
  2. 古月居的安装含义:https://www.guyuehome.com/34072

2.2.2修改系统的源

通过查看系统的源文件,其使用的是国内的清华的源,所以不用更改。

2.2.3添加ros的源和秘钥

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

2.2.4安装ros系统

必须联网,首先更新一下源,更新系统。执行下面命令。更新中间需要同意是否继续,输入y按回车

sudo apt update && sudo apt-get upgrade

安装ros-noetic-desktop-full

sudo apt install ros-noetic-desktop-full

2.2.5ros的配置

执行 rosdep init和update指令,但其这两条语句需要链接github,其网站在国外,linux上总是连接失败。需要采用其他的方法进行跳过这两部。
rosdep init指令需要安装python-rosdep。但查找资料发现其中没有python-rosdep的源,无法使用apt的指令进行安装。参考官网http://wiki.ros.org/rosdep
使用pip指令安装

sudo pip install -U rosdep

其中rosdep init和update的本质参考的文档
其中上文是修改的rosdep的引用文件,这几个文件都是在外网上的,其上文主要是将需要的文档进行下载,在修改其中的文档链接本地文档。
上面方法有一点不同,他们的路径是在/usr/lib/python2.7/dist-packages/rosdep2/,而此文章是在arm上安装的,使用的pip指令,所以路径应该是Usr/local/lib/python2.7/dist-packages/rosdep2/。按照上面的文档依次进行对应修改。切忌认真,不可进行弄错。
引用其中的段落:

链接:https://pan.baidu.com/s/1ff0bsxZqABpbyWv1JAZ76w
提取码:yyds
rosdep init:
本质上是从ssr中下载了一个包含几个链接的文档,并保存在特定路径下。因为长城或者别的缘故,很容易下载失败。

解决方法
将我提供的资源中的 _20-default.list_ 文件copy到 _/etc/ros/rosdep/sources.list.d/_路径下,如无路径,需要逐级创建。

新手教学,高手跳过
解压后的压缩包中右键打开终端,命令

sudo cp ./20-default.list /etc/ros/rosdep/sources.list.d
rosdep update
这一步本质上是从20-default.list文件中的几个链接里面下载文件,并进行相关的配置。同样由于长城的缘故,容易下载失败。

解决方法
将我提供的资源中的 _rosdistro-master/_文件夹 copy到_/etc/ros/rosdep/sources.list.d/_路径下

(sudo cp -r ./rosdistro-master/ /etc/ros/rosdep/sources.list.d)
然后分别修改以下三个文件
第一个文件

sudo gedit /usr/lib/python2.7/dist-packages/rosdep2/sources_list.py
将其中的资源路径改为离线路径
DEFAULT_SOURCES_LIST_URL = 'file:/etc/ros/rosdep/sources.list.d/20-default.list'
第二个文件同理

sudo gedit /usr/lib/python2.7/dist-packages/rosdep2/rep3.py

REP3_TARGETS_URL = 'file:/etc/ros/rosdep/sources.list.d/rosdistro-master/releases/targets.yaml'
第三个文件依然同理

sudo gedit /usr/lib/python2.7/dist-packages/rosdistro/__init__.py

DEFAULT_INDEX_URL = 'file:/etc/ros/rosdep/sources.list.d/rosdistro-master/index-v4.yaml'
最后在最开始的终端

rosdep update

2.2.6ROS的环境配置

将ros的环境路径添加到全局环境中,其中的noetic为ros的版本号,

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc && source ~/.bashrc

ROS的环境配置,使得你每次打开一个新的终端,ROS的环境变量都能够自动配置好,也就是添加到bash会话中,因为命令 source /opt/ros/kinetic/setup.bash 只在当前终端有作用,即具有单一时效性,要想每次新开一个终端都不用重新配置环境,就用echo语句将命令添加到bash会话中。

2.2.7ros的其他依赖

在非arm上是可以执行下面语句的

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

但其中 python-rosinstall python-rosinstall-generator python-wstool是不能使用apt安装的
同理使用pip进行安装

sudo pip install rosinstall 
sudo pip install rosinstall-generator
sudo pip install wstool 

弹出已经安装的话就不用管了。
最后的build-essential使用下面语句安装

sudo apt install build-essential 

2.2.7ros基础例子小海龟

分别打开终端执行下面语句

roscore
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key

将鼠标点一下turtle_teleop_key的终端区域,之后就可以使用上下左右控制小海龟了。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值