首页 > 其他分享 >ROS让机器人开发更便捷,基于RK3568J+Debian系统发布!

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

时间:2023-11-29 16:55:53浏览次数:39  
标签:RK3568J Target 机器人 节点 消息 ROS Debian

ROS系统是什么

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

  图1

 

随着工业智能化的快速发展,智能机器人设备已成为工业自动化体系的佼佼者,而智能机器人设备核心—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。核心板CPU、ROM、RAM、电源、晶振、连接器等所有器件均采用国产工业级方案,国产化率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

如需完整源码与文档,可与我司技术服务人员联系。如需购买RK3568J工业评估板,请登录创龙科技天猫旗舰店:tronlong.tmall.com!

RK3568J技术QQ群:567208221,欢迎加入!

 

亦可添加如下客服人员微信进行咨询: 即刻添加,马上咨询! 更多全国产RK3568J平台产品资料 可长按二维码识别下载

 

标签:RK3568J,Target,机器人,节点,消息,ROS,Debian
From: https://www.cnblogs.com/Tronlong818/p/17865271.html

相关文章

  • Wpf 第三方Mvvm包(mvvmLight/Microsoft.Toolkit.Mvvm/CommunityToolkit.Mvvm)
    十年河东,十年河西,莫欺少年穷学无止境,精益求精 mvvmLight和 Microsoft.Toolkit.Mvvm已被Nuget弃用且不再更新,在此不作说明CommunityToolkit.Mvvm是NetCore版本引用包,详情参考:WPFMVVM框架:CommunityToolkit.Mvvm包使用介绍1、wpf项目中使用 CommunityToolkit.Mvvm(NetCo......
  • RK3568J“麒麟”+“翼辉”国产系统正式发布,“鸿蒙”也正在路上!
    RK3568J”麒麟“ + “翼辉”国产系统正式发布近期,创龙科技RK3568J全国产平台(国产化率100%,提供报告)已正式适配两大国产系统:银河麒麟嵌入式操作系统KylinOS(V10SP1)+ 翼辉嵌入式操作系统SylixOS(V2.3.12)!国产系统作为信创关键行业的关键基础软件,在工业领域发挥重大作用。创龙......
  • 哇塞,实测780MB/s!基于RK3568J与FPGA的PCIe通信案例详解
    ARM+FPGA架构有何种优势近年来,随着中国新基建、中国制造2025的持续推进,单ARM处理器越来越难满足工业现场的功能要求,特别是能源电力、工业控制、智慧医疗等行业通常需要ARM+FPGA架构的处理器平台来实现特定的功能,例如多路/高速AD采集、多路网口、多路串口、多路/高速并行DI/DO......
  • CrossOver 23.7 for Mac:在 macOS 上运行 Windows 应用
    CrossOver23.7forMac:在macOS上运行Windows应用请访问原文链接:https://sysin.org/blog/crossover-23/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgCrossOver:在macOS、Linux和ChromeOS上运行您的Windows®应用对比所有跨平台方案对比内容CrossOv......
  • 瑞芯微RK3568J如何“调节主频”,实现功耗降低?一文教会您!
    RK3568J主频模式说明为降低RK3568J功耗,提高运行系统健壮性,在产品现场对RK3568J实现主频调节则显得尤为重要。图1 RK3568J官方数据手册主频模式描述normal模式根据官方数据手册说明,在normal模式下芯片使用寿命更长。根据仿真结果,连续工作在[email protected]和105°C时,RK3568J芯片......
  • CrossEntropyLoss: RuntimeError: expected scalar type Float but found Long neural
    错误分析  这个错误通常指的是期望接受的参数类型是Float,但是程序员传入的是Int。通常会需要我们去检查传入的input和target的数据类型有没有匹配。在传入的数据中,通常input希望是Float类型,target是Int类型。  但是通常也许会发现传入的参数是符合要求的,但是......
  • Debian10 离线安装docker
    1、https://blog.csdn.net/u014454538/article/details/131919517 Debian9离线安装docker2、https://www.cnblogs.com/nihaorz/p/12123803.htmldebian10.x(buster)离线安装docker及卸载3、https://blog.csdn.net/weixin_52480810/article/details/132473624debian12的lin......
  • linux: debian的数字版本号与别名
    1、首先查看操作系统的版本cat /etc/debian_version2、然后可以查看Debian系统版本与codename之间的关系https://wiki.debian.org/DebianReleases ......
  • Django配置为连接到Microsoft SQL Server
    可以将Django配置为连接到MicrosoftSQLServer2019。为此,你需要更改数据库设置中的一些配置选项。首先,确保你已经安装了django和pyodbc这两个库: pipinstalldjangopyodbc 然后,你需要在settings.py文件中修改DATABASES部分。以下是连接到SQLServer的示例......
  • How Can South Asia Adapt Integrated River Basin Management to Its Soil Erosion
    Duetotheinstabilityofthemonsoon,floodsanddroughtsarefrequentinSouthAsia,resultinginseveresoilerosion.Everyyear,SouthAsiasuffershugelossesduetosoilerosion,includingpropertydamage,humancasualties,andenvironmentaldamage.......