ubuntu16.04下ROS操作系统学习笔记(五)gazebo物理仿真环境搭建、加载服务端模型数据减少报错

简介: ubuntu16.04下ROS操作系统学习笔记(五)gazebo物理仿真环境搭建、加载服务端模型数据减少报错
  • ROS_Control
  • ROS为开发者提供的机器人控制中间件。
  • 包含一系列控制器接口、传动装置接口、硬件接口、控制器工具箱等等。
  • 可以帮助机器人应用功能包快速落地,提高开发效率。

ros_control的定位就是上层应用功能包和底层接口之间的连接的。

控制器有一些插件,通过硬件抽象层来对其进行控制。

上层应用计算出来的很多数据需要给下层硬件,通过一些接口传达给Controler插件,这些控制器的插件是负责机器人的各各部分的。再往下走的话就需要使用一些更具体的控制器,像PID这种,控制器的数据通过跟硬件资源的接口,发布到硬件抽象层,硬件抽象层通过一些逻辑上的约束完成逻辑上的处理,硬件抽象层同时也会反馈一些数据给上层所使用,跟实际的底层数据传送就是读和写。

控制器里面有力的控制,位置的控制,速度的控制,以及需要反馈状态。

  • joint_effort_controler
  • joint_state_controler
  • joint_position_controler
  • joint_velocity_controler

实际操作:

  1. 配置机器人模型
  2. 创建仿真环境
  3. 开始仿真

我i们之前创建的模型都是用来观看的,没有物理属性,所以我们需要给他们添加惯性参数和碰撞属性。具体的代码可以在视频的源文件中可以找到,视频的百度云链接在我的GitHub中可以找到。之后我们需要为每一个link加一个gazebo的标签。再为joint添加传动装置。添加完了物理属性和传动装置之后我们需要为其添加gazebo控制器插件。

通过以上方式,我们就能够在gazebo中加载这个模型。

roslaunch mbot_gazebo view_mbot_gazebo_empty_world.launch

在左侧的insert按钮里面我们也可以加入我们需要的模型。除此之外,我们可以自己来编辑模型,->Edit->Building Editor。

如果我们需要加载Gazebo中服务器端的模型文件,使得本机的gazebo加载更快,同时减少报错。的话可以按照如下操作进行:

1.登陆网址:https://bitbucket.org/osrf/gazebo_models/downloads/下载模型文件。

2.将下载好的文件放入./gazebo/model目录下面,ctrl+h可以查看隐含文件夹:

如果没有的话就创建一个好了。

我的微信公众号名称:深度学习与先进智能决策

微信公众号ID:MultiAgent1024

公众号介绍:主要研究强化学习、计算机视觉、深度学习、机器学习等相关内容,分享学习过程中的学习笔记和心得!期待您的关注,欢迎一起学习交流进步!

相关实践学习
Docker镜像管理快速入门
本教程将介绍如何使用Docker构建镜像,并通过阿里云镜像服务分发到ECS服务器,运行该镜像。
阿里云资源编排ROS使用教程
资源编排(Resource Orchestration)是一种简单易用的云计算资源管理和自动化运维服务。用户通过模板描述多个云计算资源的依赖关系、配置等,并自动完成所有资源的创建和配置,以达到自动化部署、运维等目的。编排模板同时也是一种标准化的资源和应用交付方式,并且可以随时编辑修改,使基础设施即代码(Infrastructure as Code)成为可能。 产品详情:https://www.aliyun.com/product/ros/
相关文章
|
7月前
|
Oracle 关系型数据库 Linux
大神教您如何安装windows操作系统,实现物理与虚拟机的无缝对接
大神教您如何安装windows操作系统,实现物理与虚拟机的无缝对接
158 0
|
7月前
|
弹性计算 数据安全/隐私保护 计算机视觉
|
4月前
|
Kubernetes Java Linux
Linux|操作系统|Error: Could not create the Java Virtual Machine 报错的解决思路
Linux|操作系统|Error: Could not create the Java Virtual Machine 报错的解决思路
467 0
|
4月前
|
iOS开发 MacOS
MAC OS更新系统后IDEA中的SVN报错无法使用
MAC OS更新系统后IDEA中的SVN报错无法使用
|
1月前
|
存储 算法 内存技术
深入理解操作系统内存管理:从虚拟内存到物理内存
【2月更文挑战第30天】 在现代计算机系统中,操作系统的内存管理是确保系统高效稳定运行的关键组成部分。本文将深入探讨操作系统内存管理的复杂世界,特别是虚拟内存和物理内存之间的关联与转换机制。通过分析分页系统的工作原理、虚拟地址空间的结构以及页面置换算法,文章旨在为读者提供一个清晰的框架,以理解内存管理在操作系统中的重要性和实现细节。
|
1月前
|
存储 缓存 Linux
|
7月前
|
弹性计算 数据安全/隐私保护 计算机视觉
|
8月前
|
测试技术 虚拟化
在同一物理服务器上同时运行多个独立的操作系统实例
在同一物理服务器上同时运行多个独立的操作系统实例
238 1
|
3月前
|
人工智能 供应链 安全
群擎并举,众芯共魂,龙蜥重磅首发下一代操作系统“1+3”能力模型
龙蜥重磅首发下一代操作系统“1+3”能力模型,打造三位一体拥抱智算的国产操作系统。
|
4月前
|
调度
【操作系统】—线程概念和多线程模型
【操作系统】—线程概念和多线程模型