[学习笔记]CyberDog小米机器狗 开发学习

本文介绍了使用Ubuntu+ROS2系统的机器狗控制,重点讲解了lcm和Rostopic通讯在传感器数据广播和机器人状态输出中的作用,以及如何通过Topic进行初步控制。此外,还讨论了运动指令、运动ID、运控算法和简化模型在实际应用中的重要性,以及在Gazebo中添加传感器的方法。
摘要由CSDN通过智能技术生成

1、机器狗本身是Ubuntu+ROS2系统
2、控制机器人只需要了解lcm和Ros topic通讯
3、传感器数据(包括一些imu(/imu)、激光雷达(/scan))会进行topic的一个广播。
仿真环境通信接口:
-命令输入(见后续运控说明)
    运控lcm数据接口
    Motion manager的Ros topic接囗
-机器人数据输出:
    仿真器数据:通过lcm发送
    机器人状态数据:通过lcm或topic发送
    机器人传感器数据:通过topic发送
4、仿真环境比真狗多一个第三视角数据(simulator_state_lcmt)用于解到一个机器人的真实状态和我们抓取到的数据之间的一些区别
5、Topic的返回中,joint_states返回的是各个关节的信号,/scan是激光雷达信号,/tf是一个重要的数据,这个数据体现了 机器人的各个关节 或 传感器之间的一个坐标系的转换的位置转换 的一个规律。
6、初步的控制的话,可以尝试只用 topic。
(更加详细的修改一些或了解一些运控更加深层的数据的话,就可以对 LCM数据进行一个了解(有助于我们去获得一些运控层面的数据))。
7、仿真要加传感器需要使用Grazebo第三方传感器插件(如图)。

(学习到0:30:38)

00:55 Ros 运动指令

00:58 运动对应的Motion ID简表

01:08 LCM运控通讯的介绍

01:22 运控算法-步态

马克瑞博的经验公式:根据当前的速度,乘以一个着地项,或者支撑项的时间除以2,得到我们可以称之为中性点,就保持当前速度的一个位置。然后再加上我们期望,当前的速度和期望的速度之间的一个反馈量。反馈系数是我们可以调节的。

机器人的全动力学模型非线性太复杂,如果用它来做预算控制,就像前面说的太耗时了。在机载的平台上很难做到实时控制。因此在实际机载平台上实现简化模型。即把机器狗简化成一个一个带质量的长方体来控制。

### 回答1: rosbag是ROS(Robot Operating System)中用于记录和回放机器人数据的工具,而cyberbag是Apollo自动驾驶开发平台中的数据记录和回放工具。 要将rosbag转换为cyberbag,需要执行以下步骤: 1. 安装Apollo软件,并将ROS数据包放置在Apollo工作区。 2. 打开终端,切换到Apollo工作区目录。 3. 运行以下命令将rosbag文件转换为cyberbag文件: ``` cyber_recorder rosbag2cyber -i /path/to/rosbag/file -o /path/to/cyberbag/file ``` 其中,`/path/to/rosbag/file`是rosbag文件的路径,`/path/to/cyberbag/file`是cyberbag文件的路径。 4. 执行完命令后,cyberbag文件将被生成并保存到指定路径。 请注意,要将rosbag转换为cyberbag,您需要在安装Apollo软件后才能执行上述步骤。 ### 回答2: rosbag是ROS机器人操作系统)中的数据记录和回放工具,用于记录和回放ROS话题(topics)中的消息。而CyberRT是阿里巴巴开源的分布式计算框架,用于构建高性能实时系统。在ROS2中,引入了一种新的数据记录和回放格式,叫做cyberbag,以支持CyberRT框架。 将rosbag转换为cyberbag可以通过以下步骤进行: 1. 从ROS中收集rosbag文件。可以使用以下命令记录ROS话题的消息: ``` $ ros2 bag record -o <output_file> <topic> ``` 2. 安装ROS2的cyberbag转换工具包。可以使用以下命令进行安装: ``` $ sudo apt install ros-<distribution>-cyberdog_tools ``` 3. 使用cyberdog_tools中的rosbag2cyber命令将rosbag转换为cyberbag。命令格式如下: ``` $ rosbag2cyber <rosbag_file> <cyberbag_output_file> ``` 4. 执行以上命令后,rosbag文件将被转换为cyberbag文件。 转换完成后,cyberbag文件可以在CyberRT框架中使用,以实现高性能实时系统的构建。CyberRT框架提供了一系列API和工具,用于处理这些cyberbag文件,并实现实时数据发布、订阅和处理等功能。 总之,将rosbag转换为cyberbag可以方便地将ROS数据转换为CyberRT可用的数据格式,以支持在CyberRT框架下构建高性能实时系统。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值