云深处绝影四足机器人协议学习解析

这篇具有很好参考价值的文章主要介绍了云深处绝影四足机器人协议学习解析。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

绝影四足机器人通信协议学习解析

本学习文档介绍了云深处 绝影X20 四足机器人的通信协议,并对相关的通信机制和命令格式进行了简单的解析。该协议在机器人系统和上位机(例如外部板卡或系统)之间进行TCP通信时使用。

1. 协议端口号

在此协议中,机器人本体作为TCP服务端上位机作为TCP客户端。协议的TCP服务端端口号为30000

2. 基于Service:Request/Response机制通讯

通信协议基于请求/响应模式进行交互,具体的通信帧结构如下:

云深处绝影四足机器人协议学习解析,机器人,学习

  • 通信帧协议帧头:

云深处绝影四足机器人协议学习解析,机器人,学习

  • 通信帧数据部分:

数据部分采用XML格式进行交互。

<?xml version="1.0" encoding="UTF-8" ?>
<PatrolDevice>
<Type>1002</Type>  # 消息类型
<Command>1</Command>  # 命令码
<Time>2023-01-01 00:00:00</Time>  # 时间戳
<Items/>  # 参数项
</PatrolDevice>

消息类型对应表如下:

云深处绝影四足机器人协议学习解析,机器人,学习

3. 常见的通信

下面列出了一些常见的通信示例,其他的可以查看上述消息类型对应表进行理解。

3.1 获取状态(Get State)

请求(Request):

<?xml version="1.0" encoding="UTF-8"?>
<PatrolDevice>
<Type>1002</Type>  # Get state
<Command>1</Command>  # default
<Time>2023-01-01 00:00:00</Time> 
<Items/>  # None
</PatrolDevice>

响应(Response):

<?xml version="1.0" encoding="UTF-8"?>
<PatrolDevice>
<Type>1002</Type>
<Command>1</Command>
<Time>2023-01-01 00:00:01</Time>
<Items>
<MotionState>0</MotionState>  # 运动状态
<PosX>0.0</PosX>  # 地图坐标系下的坐标x
<PosY>0.0</PosY>  # 地图坐标系下的坐标y
<PosZ>0.0</PosZ>  # 地图坐标系下的坐标z
<Yaw>0.0</Yaw>  # 地图坐标系下的偏航角
<Res>0.0</Res>  # 地图像素到真实地图长度比例
<X0>0.0</X0>  # 地图坐标系基准点
<Y0>0.0</Y0>  # 地图坐标系基准点

云深处绝影四足机器人协议学习解析,机器人,学习
状态解释如下图:

云深处绝影四足机器人协议学习解析,机器人,学习

运动状态对应表如下:

云深处绝影四足机器人协议学习解析,机器人,学习

疑惑

为何此处不反馈机器人自身姿态的pitch和roll?

3.2 导航请求(Navigation)

导航请求是一个异步请求,适用于ROS Action模型。

请求(Request):

<?xml version="1.0" encoding="UTF-8"?>
<PatrolDevice>
<Type>1003</Type>  # 下发导航消息类型
<Command>1</Command>
<Time>2023-01-01 00:00:00</Time>
<Items>
<Value>100</Value>  # 该地图中的目标点编号
<MapID>1</MapID>  # 地图编号
<PosX>0.0</PosX>  # 目标点在地图坐标系的坐标x
<PosY>0.0</PosY>  # 目标点在地图坐标系的坐标y
<PosZ>0.0</PosZ>  # 目标点在地图坐标系的坐标z
<AngleYaw>0.0</AngleYaw>  # 目标点与地图基准点偏航角度值
<PointInfo>0</PointInfo>  # 目标点类型过渡/任务/充电(0,1,3)
<Gait>0</Gait>  # 步态(行走/楼梯/斜坡)
<Speed>0</Speed>  # 速度(0~2,low~high)
<Manner>0</Manner>  # 前进或后退(0/1)
<ObsMode>0</ObsMode>  # 障碍物检测开关(0/1)
<NavMode>0</NavMode>  # 导航方式直线或规划(0/1)
</Items>
</PatrolDevice>
目标点及障碍物检测

过渡点仅用于克服地形和约束路径;任务点可执行巡检任务,如识别表计;充电点是在充电桩前用于识别定位充电桩二维码的目标点。
障碍物检测分为避障和停障两种方式:当导航方式选用自主导航时,机器人在遇到障碍物时会自动规划路径绕开障碍物;当导航方式选用直线导航时,机器人在遇到障碍物时将减速至原地踏步,直到障碍物消失。

疑惑

0 # 目标点类型过渡/任务/充电(0,1,3)
2呢? 预留位,间隔位或什么原因删除了?

3.3 导航任务执行状态查询

对应的导航任务执行状态查询如下:

云深处绝影四足机器人协议学习解析,机器人,学习

疑惑

似乎没有做过程反馈?只有执行状态,可能需要改进,ROS2中的Action机制可提供导航过程中的实时反馈
云深处绝影四足机器人协议学习解析,机器人,学习

3.3 运动控制(Motion Control)

常见的运动类型对应码表如下:

Command Description
1 W
2 S
3 Turn Left
4 Turn Right
5
6 walking in place
7
8
9
10
11 A
12 D
13 Soft Stop
14 Stop Walking
15 Get down on the ground

给定参数如下:

云深处绝影四足机器人协议学习解析,机器人,学习

疑惑

5呢?预留位,间隔位或历史遗留问题?

参考资料

绝影 X20-巡检机器人本体监控协议V1.1.1 2023.6. 27文章来源地址https://www.toymoban.com/news/detail-549919.html

到了这里,关于云深处绝影四足机器人协议学习解析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ESP32(MicroPython) 四足机器人(五)功能补充

    本次更新增加了前后倾斜(每次动作交换前部和后部高度)、蹲起与抬脚动作,均位于用于连续执行动作的function函数中,但实测抬脚动作需要先启动function函数的另一项功能才能正常开启,代码检查无误,应该是MicroPython固件的bug。另外,对于判断功能,增加了elif语句的使用

    2024年02月15日
    浏览(34)
  • 一款基于ESP32的迷你四足机器人

    增加自定义动作模式,可以在小程序中自定义一个最多10个步骤的动作。 附件中:带自定模式固件bin.zip esp32c3固件文件 烧录下图设置 无串口版本esp32c3开发板烧录前先按住BOOT键再插线进入烧录模式,LoadMode选择USB。 微信小程序蓝牙遥控app审核通过了,扫这个码就能用: 视频

    2024年02月04日
    浏览(41)
  • 【全网首发开源教程】【Labview机器人仿真与控制】Labview与Solidworks多路支配关系-四足爬行机器人仿真与控制

    🎉欢迎来到Labview专栏~四足爬行机器人仿真与控制 ☆* o(≧▽≦)o *☆ 嗨 ~我是 小夏与酒 🍹 ✨ 博客主页: 小夏与酒的博客 🎈该系列 文章专栏: Labview-3D虚拟平台 文章作者技术和水平有限,如果文中出现错误,希望大家能指正🙏 📜 欢迎大家关注! ❤️ 🔸 四足机器人整

    2024年02月03日
    浏览(42)
  • 基于STM32与PCA9685制作四足机器人(代码开源)

            前言: 本文为手把手教学 基于STM32的四足机器人项目 —— JDY-31蓝牙控制 ,特别地,本次项目 采用的是 STM32 作为 MCU 。 四足机器人的支架为 3D打印件 , SG90舵机 驱动机器人实现姿态运动。借助 PCA9685舵机驱动板 实现 12路PWM波 控制, 更多的舵机 可以实现机器人

    2024年02月03日
    浏览(62)
  • 关于四足行走机器人步态分析STM32+SG90舵机控制

    最近逛某站看了很多国赛大佬的赛车,下面评论区一堆大佬在感叹“老师看到赛车都摇头。”作为一个初入STM32坑的萌新,我在某些站上查阅了相关资料后,确定给我自己的机器人搞成四足行走(ps,其实是L298N烧了)。 目前手上的板子是C8T6,学习的视频是江科协,主要代码

    2024年01月21日
    浏览(43)
  • 【标准DH法和改进DH法介绍及三自由度四足或双足机器人腿建模——MATLAB机器人工具箱使用】

    DH参数是机器人学习过程中常用的一种建模方法,通常情况下每一次坐标变换需要6个独立参数来描述坐标系i相对坐标系i-1的关系,即3个用来描述位置另外3个用来描述姿态。而DH参数法只需要4个参数,列出DH参数表并带入变换矩阵中可以轻易的得到机械手末端和基

    2024年02月02日
    浏览(47)
  • 相对全面的四足机器人驱动规划MATLAB和Simulink实现方式(足端摆线规划,Hopf-CPG,Kimura-CPG)

            许久没更新四足机器人相关的博客文章,由于去年一整年都在干各种各样的~活,终于把硕士毕业论文给写好,才有点时间更新自己的所学和感悟。步态规划和足端规划只是为了在运动学层面获取四足机器人各关节的期望角位移和速度信号,再由底层的关节控制器输出

    2024年02月03日
    浏览(38)
  • ROS的机器人协议:实现机器人之间的有效通信

    作者:禅与计算机程序设计艺术 ROS(Robot Operating System)是一个开源的机器人操作系统,其功能主要包括以下几个方面: 消息传递:ROS通过消息传递的方式进行通信,各个节点之间可以通过发布、订阅等方式互相通讯。 资源管理:ROS可以对进程、线程、资源进行管理,使得不

    2024年02月06日
    浏览(36)
  • EtherNet/IP转profienrt协议网关连接EtherNet/IP协议的川崎机器人配置方法

    EthernetIP 协议一般用于采集机器人,控制器等设备的数据。 下面介绍通过远创智控YC-EIPM-PN网关把EtherNet/IP协议的川崎机器人通过西门子1500PLC的控制方法。有些 EIP 的从站设备提供了 EDS 文件,可以从EDS 文件中获取点位信息。这些信息是需要填写到网关中。 1,一般 EIP 设备上也

    2024年02月06日
    浏览(48)
  • ProEasy机器人:TCP无协议通讯(socket通讯)时打印log日志

    打印日志需要调用lua中的io相关文件函数与os相关时间函数,代码如下 --------TCP无协议视觉通讯------- function open_client_Vision()   --连接视觉服务器 打开以太网作为客户端     repeat         FreePort.ECM_CloseAll()                --关闭所有链接         FreePort.ECM_Clear(1)      

    2024年02月09日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包