当前位置: 首页 > news >正文

什么是网站源码/网站营销网站营销推广

什么是网站源码,网站营销网站营销推广,烟台网站建设的方法有哪些,网站建设与发布系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录系列文章目录前言一、ros_control目的二、ros_control架构1、控制器管理器2、控制器3、硬件抽象层4、硬件资源5、真实机器人的执行器三、ros_co…

系列文章目录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
TODO:写完再整理

文章目录

  • 系列文章目录
  • 前言
  • 一、ros_control目的
  • 二、ros_control架构
    • 1、控制器管理器
    • 2、控制器
    • 3、硬件抽象层
    • 4、硬件资源
    • 5、真实机器人的执行器
  • 三、ros_control的Gazebo运动控制实现流程
    • 1.gazebo 已经实现了 ros_control 的相关接口
    • 2.在已经创建完毕的机器人模型,编写一个单独的 xacro 文件,为机器人模型添加传动装置以及控制器
    • 3.将此文件集成进xacro文件
    • 4.启动 Gazebo 并发布 /cmd_vel 消息控制机器人运动
    • 5.Rviz查看里程计信息


前言

认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!

本文先对ROS的ros_control控制中间件做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章


提示:以下是本篇文章正文内容

一、ros_control目的

用于仿真机器人和真实机器人连接的控制中间件,机器人仿真和真实环境区别是差了一个ros_control的功能包连接的区别

1、为开发者提供上层应用功能包和底层硬件的的控制连接的中间件【防盗标记–盒子君hzj】

2、包含一系列的控制接口、传动接口、硬件接口、控制器工具箱等等

方法一:使用ros_control功能包的接口(读写,write,read)

方法二:自己实现一个controller(其实不难的)【1、先关注moveit输出给我们什么信息(已经计算好的action信息,如速度,位置,加速度等)2、设计controller,使通讯驱动能达到action的要求,如插补的位置输出】

二、ros_control架构

ros_control其实是gazebo仿真中的一个插件

1、控制器管理器

作用:提供一种通用的接口来管理不同的控制器【防盗标记–盒子君hzj】
例子:有点像ros master

2、控制器

作用:读取硬件状态,,经过处理(PID算法等)发布控制指令,完成机械臂的每个关节的控制例子
(1)力控制器:joint_effort_controller
(2)位置控制器:joint_position_controller
(3)速度控制器:joint_velocity_controller
(4)状态控制器:joint_state_controller

3、硬件抽象层

作用:机器人硬件抽象层和硬件资源直接打交道,通过write和read方法完成硬件操作【防盗标记–盒子君hzj】

4、硬件资源

作用
为上下两层的指令做连接接口(做上层的控制指令接口,接受到信息后,做下层的控制接口)例子
用于连接摄像头、激光雷达,遥控器等传感器
使用USB、CAN等通讯接口和硬件资源层通讯

5、真实机器人的执行器

作用
执行受到的命令

三、ros_control的Gazebo运动控制实现流程

1.gazebo 已经实现了 ros_control 的相关接口

2.在已经创建完毕的机器人模型,编写一个单独的 xacro 文件,为机器人模型添加传动装置以及控制器

<robot name="my_car_move" xmlns:xacro="http://wiki.ros.org/xacro"><!-- 传动实现:用于连接控制器与关节 --><xacro:macro name="joint_trans" params="joint_name"><!-- Transmission is important to link the joints and the controller --><transmission name="${joint_name}_trans"><type>transmission_interface/SimpleTransmission</type><joint name="${joint_name}"><hardwareInterface>hardware_interface/VelocityJointInterface</hardwareInterface></joint><actuator name="${joint_name}_motor"><hardwareInterface>hardware_interface/VelocityJointInterface</hardwareInterface><mechanicalReduction>1</mechanicalReduction></actuator></transmission></xacro:macro><!-- 每一个驱动轮都需要配置传动装置 --><xacro:joint_trans joint_name="left_wheel2base_link" /><xacro:joint_trans joint_name="right_wheel2base_link" /><!-- 控制器 --><gazebo><plugin name="differential_drive_controller" filename="libgazebo_ros_diff_drive.so"><rosDebugLevel>Debug</rosDebugLevel><publishWheelTF>true</publishWheelTF><robotNamespace>/</robotNamespace><publishTf>1</publishTf><publishWheelJointState>true</publishWheelJointState><alwaysOn>true</alwaysOn><updateRate>100.0</updateRate><legacyMode>true</legacyMode><leftJoint>left_wheel2base_link</leftJoint> <!-- 左轮 --><rightJoint>right_wheel2base_link</rightJoint> <!-- 右轮 --><wheelSeparation>${base_link_radius * 2}</wheelSeparation> <!-- 车轮间距 --><wheelDiameter>${wheel_radius * 2}</wheelDiameter> <!-- 车轮直径 --><broadcastTF>1</broadcastTF><wheelTorque>30</wheelTorque><wheelAcceleration>1.8</wheelAcceleration><commandTopic>cmd_vel</commandTopic> <!-- 运动控制话题 --><odometryFrame>odom</odometryFrame> <odometryTopic>odom</odometryTopic> <!-- 里程计话题 --><robotBaseFrame>base_footprint</robotBaseFrame> <!-- 根坐标系 --></plugin></gazebo></robot>

3.将此文件集成进xacro文件

<!-- 组合小车底盘与摄像头 -->
<robot name="my_car_camera" xmlns:xacro="http://wiki.ros.org/xacro"><xacro:include filename="my_head.urdf.xacro" /><xacro:include filename="my_base.urdf.xacro" /><xacro:include filename="my_camera.urdf.xacro" /><xacro:include filename="my_laser.urdf.xacro" /><xacro:include filename="move.urdf.xacro" />
</robot>

4.启动 Gazebo 并发布 /cmd_vel 消息控制机器人运动

<launch><!-- 将 Urdf 文件的内容加载到参数服务器 --><param name="robot_description" command="$(find xacro)/xacro $(find demo02_urdf_gazebo)/urdf/xacro/my_base_camera_laser.urdf.xacro" /><!-- 启动 gazebo --><include file="$(find gazebo_ros)/launch/empty_world.launch"><arg name="world_name" value="$(find demo02_urdf_gazebo)/worlds/hello.world" /></include><!-- 在 gazebo 中显示机器人模型 --><node pkg="gazebo_ros" type="spawn_model" name="model" args="-urdf -model mycar -param robot_description"  />
</launch>

5.Rviz查看里程计信息

编写launch文件

<launch><!-- 启动 rviz --><node pkg="rviz" type="rviz" name="rviz" /><!-- 关节以及机器人状态发布节点 --><node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" /><node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" /></launch>

添加rviz组件
【防盗标记–盒子君hzj】

http://www.lbrq.cn/news/1322497.html

相关文章:

  • 东莞网站快速排名提升/怎么免费注册域名
  • 做服装搭配图的网站有哪些/企业推广文案范文
  • b2b网站开发Java/太仓网站制作
  • 电子商务网站的建设/友情链接交换形式有哪些
  • 怎么做自己的设计网站/b2b免费推广平台
  • dw做网站怎么换图片/今天国内最新消息
  • 网站根目录验证文件在哪里/搜索引擎名词解释
  • 快速开发手机网站/国内搜索引擎排行榜
  • 网站建设注意什么/百度搜索引擎推广步骤
  • 中山小榄网站建设/整站优化排名
  • 沈阳做网站的科技公司/怎么快速刷排名
  • php网站 怎么取得后台管理权限/百度在线扫题入口
  • 慧聪网怎样做网站友情链接/开发一个app软件多少钱
  • 太原网站seo服务/seo服务公司怎么收费
  • 淘宝做网站的都是模板/seopeix
  • 怎么做下载类的网站吗/今天最新新闻10条
  • 规范网站建设/免费建网站的步骤
  • 网站顶级栏目403/公司推广策划
  • 领手工在家做的网站2019/长沙网站推广服务公司
  • php英文商城网站建设/网站公司
  • 公司网站建设费用多少/百度seo在线优化
  • 安顺网站建设公司/搜索引擎营销与seo优化
  • 东莞网站建设提供商/软件开发培训学校
  • wordpress多主题插件/seo推广服务
  • 西乡做网站的公司/西安专业网络推广平台
  • 做音乐网站的目的和意义/互动营销案例100
  • 盐田高端网站建设/seo如何优化网站推广
  • 合肥知名网站建设公司/aso优化app推广
  • 做文案应该关注的网站推荐/企业网站建设论文
  • 网站建设招代理/俄罗斯网络攻击数量增长了80%
  • 【LeetCode 热题 100】394. 字符串解码
  • Qt Quick 3D 基础与应用
  • Cesium 快速入门(一)快速搭建项目
  • SpringMVC核心原理与实战指南
  • 网络的学习 2 Socket
  • 大语言模型API付费?