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

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

3天内不再提示

ROS系统是什么?ROS系统主要特点有哪些?创龙RK3568J+Debian的ROS2系统案例

A面面观 来源:Tronlong创龙科技 作者:Tronlong创龙科技 2023-11-30 14:41 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Tronlong创龙科技ROS机器人开发更便捷;我们来看看具体的。

ROS系统是什么

ROS(Robot Operating System)是一个适用于机器人的开源的元操作系统。它提供了操作系统应有的服务,包括硬件抽象,底层设备控制,常用函数的实现,进程间消息传递,以及包管理。它也提供用于获取、编译、编写、和跨计算机运行代码所需的工具和库函数。

随着工业智能化的快速发展,智能机器人设备已成为工业自动化体系的佼佼者,而智能机器人设备核心—ROS系统,是机器人领域的集大成者,主要应用于机器人控制领域,如AGV工业机器人控制器、智能机械臂控制器、机器人导航系统等。

ROS系统主要特点有哪些

(1) 提供丰富的机器人算法

机器人的各种控制以及通信离不开算法库的支持,ROS系统提供丰富且功能强大的机器人算法库,如坐标变换、运动控制等。机器人开发者可根据开发需要,简单快捷地调用合适的算法库,以提高开发效率,加快开发进程。

(2) 开源免费,架构精简

ROS系统是一个开源免费,架构精简的机器人操作系统。ROS被设计为尽可能精简,以便为ROS编写的代码可与其他机器人软件框架一起使用,如ROS已与OpenRAVE、Orocos和Player集成。正是由于这一特点,探索开发ROS系统的人员众多,遍布世界各地,形成一种“百花齐放,家争鸣”局面,促使ROS功能日益强大。“开源免费、架构精简”这也更是意味着可大大降低产品开发成本,缩短产品开发周期,提高产品开发效率。

(3) 支持实时控制与通信,数据安全可靠

如今ROS系统支持实时控制与通信,并且数据安全可靠。“实时性”、“安全性”是如今工业自动化行业的普遍追求,特别是对于AGV开发,若AGV机器人的主控制器、雷达、摄像头、GPS等部件的控制、通信的实时性与安全性得不到保障,导致的后果将是核心数据泄露、路线控制偏离、系统通信异常等严重后果。而ROS系统凭借其优势,已成为AGV开发利器,广泛应用于各种机器人开发,并逐渐成为主流。

RK3568J + Debian的ROS2系统演示案例

创龙科技SOM-TL3568是一款基于瑞芯微RK3568J/RK3568B2处理器设计的四核ARM Cortex-A55全国产工业核心板,主频高达2.0GHz。核心板CPUROMRAM电源、晶振、连接器等所有器件均采用国产工业级方案,国产化率100%,并提供国产化率认证报告。

我司RK3568J平台提供的ROS系统启动镜像文件update.img位于产品资料“4-软件资料\Demo\platform-demos\ros2_foxy\bin\”目录下,请先参考《Linux系统启动卡制作及系统固化》文档,将镜像文件update.img通过“瑞芯微创建升级磁盘工具”制作SD启动卡(即ROS系统启动卡),然后将SD启动卡插至评估板Micro SD卡槽。亦可通过SD升级卡或USB固化方式将系统固化至eMMC。

基于Python语言的通信演示

案例功能:基于Python语言,启动ROS节点发布与订阅消息,实现订阅消息节点与发布消息节点之间的实时通信。

请将评估板上电启动,执行如下命令,配置评估板测试环境。

Target#export COLCON_CURRENT_PREFIX=/opt/ros

Target# source /opt/ros/local_setup.sh

图 2

执行如下命令,启动ROS节点订阅消息。

Target# ros2 run demo_nodes_py listener &

图 3

执行如下命令,启动ROS节点发布消息,实现订阅消息节点与发布消息节点之间的通信。此时评估板串口调试终端将会打印两节点间通信的信息,如下图所示。按“Ctrl + C”可退出测试程序,即让发布消息的节点退出。

Target# ros2 run demo_nodes_py talker

图 4

执行如下命令,查看并根据系统进程号关闭所有ROS节点。进程号请以实际情况为准。

Target# ps -a

Target# kill 1256

Target# kill 1257

图 5

基于C++语言的通信演示

案例功能:基于C++语言,启动ROS节点发布与订阅消息,实现订阅消息节点与发布消息节点之间的实时通信。

请将评估板上电启动,执行如下命令,配置评估板测试环境。

Target#export COLCON_CURRENT_PREFIX=/opt/ros

Target# source /opt/ros/local_setup.sh

图 6

执行如下命令,启动ROS节点订阅消息。

Target# ros2 run demo_nodes_cpp listener &

图 7

执行如下命令,启动ROS节点发布消息,实现订阅消息节点与发布消息节点之间的通信。此时评估板串口调试终端将会打印两节点间通信的信息,如下图所示。按“Ctrl + C”可退出测试程序,即让发布消息的节点退出。

Target# ros2 run demo_nodes_cpp talker

图 8

执行如下命令,根据系统进程号关闭所有ROS节点。进程号请以实际情况为准。

Target# ps -a

Target# kill 1332

Target# kill 1333

图 9

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

    关注

    1

    文章

    290

    浏览量

    18469
  • 创龙科技
    +关注

    关注

    2

    文章

    136

    浏览量

    8355
  • RK3568
    +关注

    关注

    5

    文章

    628

    浏览量

    7578
  • Debian
    +关注

    关注

    0

    文章

    77

    浏览量

    2032
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Micro-ROS:把ROS2放在MCU上

    机器人的发展。   ROS便是为机器人在研发的过程中的代码复用提供支持的开源框架,大量的机器人开源项目,从感知到控制、从定位到构图、从导航到可视化,几乎都使用ROS作为基础。   Micro-ROS从何而来?   Micro-
    的头像 发表于 04-07 07:13 1w次阅读

    系统镜像Ubuntu_ROS2ROS2是什么意思,带有ROS2开发环境吗?

    请问一下,百度文库资料里面,下图所示的系统镜像Ubuntu_ROS2ROS2是什么意思,带有ROS2开发环境吗?与前面4GB版本的镜像
    发表于 03-01 23:06

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

    、路线控制偏离、系统通信异常等严重后果。而ROS系统凭借其优势,已成为AGV开发利器,广泛应用于各种机器人开发,并逐渐成为主流。 RK3568J +
    发表于 07-09 11:38

    ROS2的安装与使用 精选资料推荐

    ros2的乌龟仿真turtlesim,介绍topic,service,action等元素及其使用,介绍ros的基本操作
    发表于 08-30 08:24

    如何在ROS2中运行小乌龟呢

    ROS2中运行小乌龟,其实主要就是安装两个工具,turtlesim和rqt。A: 安装turtlesim。输入【sudo apt update】输入【sudo apt install
    发表于 11-05 06:08

    ROS简介

    目录一、ROS简介1、什么是ROS2ROS产生、发展和壮大的原因和意义二、在Ubuntu系统中,安装对应版本的ROS软件1、确定Ubunt
    发表于 12-17 08:24

    RT-Thread实时操作系统ROS2是怎样进行通信的

    的 API,主要区别就在于 rosserial 是针对 ROS1,而 micro_ros 是针对 ROS2 。第一代的 ROS 发展很多年
    发表于 04-01 11:38

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

    逐渐成为主流。 RK3568J + DebianROS2系统演示案例 龙科技SOM-TL3568
    发表于 11-30 16:01

    DDS在ROS2中的应用

    DDS在ROS2中的应用 DDS在ROS2系统中的位置至关重要,所有上层建设都建立在DDS之上。在这个ROS2的架构图中,蓝色和红色部分就是DDS。 刚才我们也提到,DDS是一种通信的
    的头像 发表于 11-24 17:54 1928次阅读
    DDS在<b class='flag-5'>ROS2</b>中的应用

    ROS2中自带例程测试

    如果你是一个ROS2的开发者,可能对刚才我们使用的ROS2命令比较熟悉,这时你可能也会产生一个问题:我们之前也安装了ROS2系统,那ROS2
    的头像 发表于 11-28 16:29 1888次阅读
    <b class='flag-5'>ROS2</b>中自带例程测试

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

    ,以及包管理。它也提供用于获取、编译、编写、和跨计算机运行代码所需的工具和库函数。 图1 随着工业智能化的快速发展,智能机器人设备已成为工业自动化体系的佼佼者,而智能机器人设备核心—ROS系统,是机器人领域的集大成者,主要应用于
    的头像 发表于 11-30 16:29 1038次阅读
    <b class='flag-5'>ROS</b>让机器人开发更便捷,基于<b class='flag-5'>RK3568J+Debian</b><b class='flag-5'>系统</b>发布!

    在TogetherROS中如何安装ROS2功能包

    ,这里我们就把ROS2必要的功能包都安装一下,让系统的功能模块更加完整。 熟悉ROS2的同学,应该对这些指令并不陌生,和ROS2官方手册中的安装步骤一致,不过还是建议大家跟着课程的步骤
    的头像 发表于 12-01 16:02 2402次阅读
    在TogetherROS中如何安装<b class='flag-5'>ROS2</b>功能包

    ros2教程

    电子发烧友网站提供《ros2教程.pdf》资料免费下载
    发表于 05-23 09:12 1次下载

    硬核上车!RK3576基于Ubuntu部署ROS机器人系统详细攻略(上)

    本文适用于瑞芯微RK3562、RK3566、RK3568RK3576、RK3588等Arm64位SoC,适配开发
    的头像 发表于 07-03 18:45 2084次阅读
    硬核上车!<b class='flag-5'>RK</b>3576基于Ubuntu部署<b class='flag-5'>ROS</b>机器人<b class='flag-5'>系统</b>详细攻略(上)

    瑞芯微 RK3588 国产2.4GHz八核 工业开发板—ROS2系统使用说明

    本文围绕龙科技研发的评估板,详解 ROS2 系统使用方法。涵盖 ROS2 环境搭建、核心概念讲解、节点通信测试、功能包创建与编译,以及可视化工具 RViz 的使用,还包括基于评估板的
    的头像 发表于 10-30 13:46 218次阅读
    <b class='flag-5'>创</b><b class='flag-5'>龙</b> 瑞芯微 <b class='flag-5'>RK</b>3588 国产2.4GHz八核 工业开发板—<b class='flag-5'>ROS2</b><b class='flag-5'>系统</b>使用说明