0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

实现ARM+ROS(机器人操作系统)之环境搭建!

武汉万象奥科 2022-09-28 11:21 次阅读

如何低成本搭建ARM+ROS硬件载体?上文为大家介绍了实现的思路及原理,本文将为读者实际操作,展示ROS部署前的筹备工作及步骤分解。

1.方案概述

本文重点介绍低成本搭建ARM+ROS的硬件及底层实现。开发板选用HDG2L-IoT评估套件,默认配置为2G内存、8G存储,搭载可玩性极高的Ubuntu系统。

搭建ARM+ROS

开发套件默认的Ubuntu系统大概占用3.1G空间,剩余3.2G空间,在构建docker+ROS环境时可能会报eMMC空间不足的错误,所以需要调整HDG2L-IoT的启动参数,将启动参数改为引导到TF空间中。市面上常见的树莓派部署ROS方案也是如此操作。

2.方案准备

首先,需要用到的硬件如下所示。

搭建ARM+ROS硬件准备硬件参数

3.TF卡挂载Ubuntu固件修改

本小节将介绍如何实现HDG2L-IoT挂载TF卡内的文件系统,步骤如下:

1)制作启动卡;

2)解压目标文件系统到TF卡内;

3)修改uboot启动参数;

3.1制作启动卡

首先制作启动卡,格式化TF卡的操作可通过瑞萨提供的shell脚本实现,在PC端的Ubuntu开发环境下,执行以下命令来下载操作脚本。

Ubuntu开发环境

将需要被用作启动卡的TF卡插入到PC机内,用虚拟机来操作,调整步骤如下。首先打开虚拟机的USB3.1功能,以免TF卡读取失败。

Ubuntu开发环境

然后将TF卡导入Ubuntu虚拟机中,如下所示。

TF卡导入Ubuntu虚拟机

系统能识别后,执行刚才下载的usb_sd_partition.sh脚本,如下所示。

7.jpg

脚本执行成功后,TF卡将分为两个分区,分区1为fat32,分区2为ext4。

8.jpg

(注:当前新版本的Windows系统比较少支持ext4格式的TF卡,所以在Windows环境下一般只看到分区1,分区2会提示需要格式才能识别,请忽略。)

3.2拷贝目标文件到TF中

将HDG2L-IoT配套的Ubuntu压缩包解压到ext4分区中,虚拟机内自动挂载到/media/${USER}/sdb2内。本机的解压命令如下所示。

9.jpg

将HDG2L-IoT配套的内核镜像拷贝到Windows下识别的TF分区中(FAT32系统允许被Windows系统识别,ext4系统不被识别),拷贝后如下所示。

10.jpg

3.3修改uboot启动参数

最后需要调整HDG2L-IoT的uboot启动启动参数,引导其使用TF卡内的内核与文件系统,首先上电,在倒计时前进入uboot菜单,如下所示。

11 (2).jpg

将上一步中制作好的TF卡插入HDG2L-IoT板卡的TF卡槽中,在U-Boot提示符下设定以下变量,bootargs变量用于指定文件系统的载体,在系统内,TF卡槽占用的设备名为/dev/mmcblk1p2。

12.jpg

然后设置从TF的分区1内获取内核镜像和内核设备树,命令如下所示。

13.jpg

设置完成后,通过以下命令保存uboot的环境变量,命令如下所示。

14.jpg

重新启动后,若TF卡正常,整体存储空间情况如下所示。

15.jpg

若TF卡没插入,uboot的启动会报错误信息,错误信息如下所示。

16.jpg

4.安装docker环境

正常启动之后,开始搭建docker环境。

4.1安装docker软件

首先,烧录后的第一次上电的板卡需要更新内部的软件版本,命令如下所示。update更新失败注意检测网络状态和date日期。部分软件可能体积过大,需要耐心等待。

17.jpg

然后清除旧版本的docker软件,再重新安装docker.io。

18.jpg

启动docker。

19.jpg

使能docker开机自启动。

20.jpg

检查docker运行状态。

21.jpg22.jpg

4.2获取镜像

运行此命令可以从DockerHub上下载现成镜像。

23.jpg

查看本地的镜像文件命令如下所示。

24.jpg25.jpg

4.3创建容器

容器就是加载模板后运行的沙盒环境,具有运行时所需的可写文件层、应用程序也处于运行状态。概念上可能会与PC端常用的虚拟机混淆,虚拟机是包括内核、应用运行环境和其他系统环境的,而Docker容器就是独立运行的一个或一组应用以及他们必须的运行环境。

创建容器时,需要指定使用的镜像文件,这里使用上面用pull指令下载下来的镜像文件,创建命令如下所示。

26.jpg

查看容器状态,命令如下所示,每个容器都有自己的CONTAINER_ID与NAMES,供后面的命令操作使用(可使用dockerrename命令修改容器名,便于简便使用)。

27.jpg

28.jpg

4.4启动容器

容器创建后,通过CONTAINER_ID与NAMES来操作容器,启动命令如下所示。

29.jpg

上文所说,容器是运行一个或一组进程,dockerps命令里的COMMAND即为容器运行的进程,当前显示bash,即进入命令交互进程。通过以下命令进入容器内部。

30.jpg

进入后,可以操作容器内的命令,如下所示。

31.jpg

通过exit命令,可退出容器,退出后容器就处于停止状态,如下所示。

32.jpg

通过以上操作,我们就完成了硬件与底层的搭建,为ROS运行在这套开发板上做好了准备,下一章节将为大家带来ROS的部署方法。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM
    ARM
    +关注

    关注

    134

    文章

    9091

    浏览量

    367507
  • 开发板
    +关注

    关注

    25

    文章

    5046

    浏览量

    97435
  • ROS
    ROS
    +关注

    关注

    1

    文章

    278

    浏览量

    17007
收藏 人收藏

    评论

    相关推荐

    【「具身智能机器人系统」阅读体验】+初品的体验

    《具身智能机器人系统》 一书由甘一鸣、俞波、万梓燊、刘少山老师共同编写,其封面如图1所示。 本书共由5部分组成,其结构和内容如图2所示。 该书可作为高校和科研机构的教材,为学生和研究人员提供系统
    发表于 12-20 19:17

    《具身智能机器人系统》第1-6章阅读心得具身智能机器人系统背景知识与基础模块

    ,互联网行业占成熟经济体的GDP增长的21%,世界经济正面向数字经济转型的大趋势。具身智能机器人集成人工智能、高端制造、新材料等威廉希尔官方网站 ,其核心在于通过智能体与环境的动态互动实现智能行为。 在第2章“具身
    发表于 12-19 22:26

    ROSCon China 2024 | RDK第一本教材来了!地瓜机器人与古月居发布新书《ROS 2智能机器人开发实践》

    12月7日-8日,为期两天的ROSCon China 2024在上海圆满落幕,来自全球的ROS专家学者、开发者、企业代表齐聚一堂,共享机器人前沿威廉希尔官方网站 成果。地瓜机器人携手众多RDK生态产品亮相,并联手古月居共同推出首本基于RDK
    的头像 发表于 12-10 18:48 367次阅读
    ROSCon China 2024 | RDK第一本教材来了!地瓜<b class='flag-5'>机器人</b>与古月居发布新书《<b class='flag-5'>ROS</b> 2智能<b class='flag-5'>机器人</b>开发实践》

    【书籍评测活动NO.51】具身智能机器人系统 | 了解AI的下一个浪潮!

    。 这些威廉希尔官方网站 的综合应用使具身智能系统能够进行复杂的环境感知、决策制定和物理操作。例如,通过多模态感知威廉希尔官方网站 ,智能体能够综合视觉、 听觉和触觉数据,更全面地理解和响应其所处的环境。 具身智
    发表于 11-11 10:20

    ROS机器人开发更便捷,基于RK3568J+Debian系统发布!

    本帖最后由 Tronlong创龙科技 于 2024-7-19 17:18 编辑 ROS系统是什么 ROS(Robot Operating System)是一个适用于机器人的开源的
    发表于 07-09 11:38

    干货!国产Cortex-A55工智能实验箱机械臂跳舞实验案例

    臂跳舞的效果。二、实验原理ROS机器人操作系统ROS机器人操作系统),是专为
    的头像 发表于 06-30 08:32 702次阅读
    干货!国产Cortex-A55<b class='flag-5'>人</b>工智能实验箱机械臂跳舞实验案例

    国产Cortex-A55工智能教学实验箱_基于Python机械臂跳舞实验案例分享

    一、实验目的 本实验通过TL3568-PlusTEB教学实验箱修改机械臂不同舵机的角度,增加延迟时间,从而做到机械臂跳舞的效果。 二、实验原理 ROS机器人操作系统ROS
    发表于 06-28 14:37

    基于飞凌嵌入式RK3568J核心板的工业机器人控制器应用方案

    的主要作用是完成多轴运动的计算与控制,因此机器人控制器的主控就需要拥有高性能的CPU、内置实时操作系统、支持EtherCAT工业总线以及丰富的功能接口。 机器人控制器 基于以上需求,飞凌嵌入式
    发表于 05-11 09:40

    基于鸿道(Intewell®)操作系统研发的农业机器人操作系统

    江苏大学与科东软件联合研发“农业机器人操作系统”,并成立“农业机器人操作系统”联合实验室,奋力推进农业智能化,推动农业科技创新。“农业机器人
    的头像 发表于 04-30 11:09 428次阅读

    威廉希尔官方网站 融合与创新大象机器人水星Mercury X1机器人案例研究!

    定位与映射(SLAM)、机器人操作系统ROS)、开源计算机视觉(OpenCV)和S-Tag标记码威廉希尔官方网站 来实现复杂环境中的精确物体抓取和移动。
    的头像 发表于 04-28 14:18 590次阅读
    威廉希尔官方网站
融合与创新大象<b class='flag-5'>机器人</b>水星Mercury X1<b class='flag-5'>人</b>形<b class='flag-5'>机器人</b>案例研究!

    实现机器人操作系统——ADI Trinamic电机控制器ROS1驱动程序简介

    摘要 机器人操作系统(ROS)驱动程序基于ADI产品而开发,因此可直接在ROS生态系统中使用这些产品。本文将概述如何在应用、产品和
    的头像 发表于 04-24 15:43 2203次阅读
    <b class='flag-5'>实现</b><b class='flag-5'>机器人</b><b class='flag-5'>操作系统</b>——ADI Trinamic电机控制器<b class='flag-5'>ROS</b>1驱动程序简介

    工业控制:鸿道(Intewell)操作系统工业机器人控制解决方案

    鸿道(Intewell)操作系统作为核心基础软件,构建机器人控制系统的底层威廉希尔官方网站 平台。系统支持Linux/Windows的实时扩展,设备上可同时运行单个非实时
    的头像 发表于 03-14 10:19 545次阅读
    工业控制:鸿道(Intewell)<b class='flag-5'>操作系统</b>工业<b class='flag-5'>机器人</b>控制解决方案

    具身智能移动操作机器人发展与研究

    多模态感知威廉希尔官方网站 能够使具身智能移动操作机器人实现更高的自主性、高效性、通用性,增强对周围环境的局部感知能力,并为机器人提供丰富、稳定、准确的
    发表于 03-12 11:38 689次阅读
    具身智能移动<b class='flag-5'>操作</b><b class='flag-5'>机器人</b>发展与研究

    移动机器人ROS操作系统原理与应用

    ROS1不同的是,ROS2诞生的目的就是为了让更多机器人使用,所以在设计上更加符合威廉希尔官方网站 的发展方向,也运用了很多最近的威廉希尔官方网站 框架。
    发表于 01-02 12:28 587次阅读
    移动<b class='flag-5'>机器人</b>与<b class='flag-5'>ROS</b><b class='flag-5'>操作系统</b>原理与应用

    ros怎么设置环境变量

    设置ROS环境变量是使用ROS的重要步骤之一。本文将详细介绍如何设置ROS环境变量,包括什么是环境
    的头像 发表于 12-28 13:52 2063次阅读