Gazebo/ROS中添加力、力矩

Gazebo/ROS中添加力、力矩文章目录前言一、在gazebo图形界面中进行操作二、MATLABmathworks官网ROS与Matlab语言入门教程-在Gazebo中应用力和力矩三、ROSANSWERS[优]applyingaforcetoarigidbody[次]Applyingaforcetoalinkingazeboplugin.[closed]前言不一定全面,未来还需要继续梳理…

大家好,又见面了,我是你们的朋友全栈君。

前言

不一定全面,未来还需要继续梳理
检索关键词:apply force time ros

1 在gazebo图形界面中进行操作

http://gazebosim.org/tutorials?tut=apply_force_torque&cat=tools_utilities

在这里插入图片描述 在这里插入图片描述

2 MATLAB

2.1 mathworks官网

https://www.mathworks.com/help/ros/ug/apply-forces-and-torques-in-gazebo.html
在这里插入图片描述

2.2 ROS与Matlab语言入门教程-在Gazebo中应用力和力矩

https://www.ncnynl.com/archives/201909/3314.html
在这里插入图片描述

3 ROS ANSWERS

3.1 applying variable body wrench

https://answers.ros.org/question/350700/applying-variable-body-wrench/
在这里插入图片描述

3.2 gazebo simulation with payload

https://answers.gazebosim.org/question/23749/gazebo-simulation-with-payload/
在这里插入图片描述

3.3 applying a force to a rigid body

https://answers.ros.org/question/11047/applying-a-force-to-a-rigid-body/
在这里插入图片描述

4 举个栗子

以turtlebot3为例,程序调用好之后
在这里插入图片描述
重新打开一个终端,参考上面的“3.2”输入

rosservice call /gazebo/apply_body_wrench "body_name: 'turtlebot3_burger::base_footprint'
reference_frame: 'turtlebot3_burger::base_footprint'
reference_point: { 
   x: 0.0, y: 0.0, z: 0.0}
wrench:
  force: { 
   x: 0.0, y: 1.0, z: 0.0}
  torque: { 
   x: 0.0, y: 0.0, z: 0.0}
start_time: { 
   secs: 0, nsecs: 0}
duration: { 
   secs: 5, nsecs: 0}"
rosservice call /gazebo/apply_body_wrench "body_name: 'turtlebot3_burger::base_footprint'
reference_frame: 'world'
reference_point: { 
   x: 0.0, y: 0.0, z: 0.0}
wrench:
  force: { 
   x: 0.0, y: 0.0, z: 10.0}
  torque: { 
   x: 0.0, y: 0.0, z: 0.0}
start_time: { 
   secs: 0, nsecs: 0}
duration: { 
   secs: 10, nsecs: 0}"

似乎duration里面的nsecs值设为-1的话,就是持续施加力了。

5 会出现的小问题

https://answers.ros.org/question/65077/errors-while-applying-force-on-a-model/
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/146407.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • django常用命令_django怎么用

    django常用命令_django怎么用前言我们掌握了如何在命令提示符或PyCharm下创建Django项目和项目应用,无论是创建项目还是创建项目应用,都需要输入相关的指令才能得以实现,这些都是Django内置的操作指令。在PyChar

    2022年7月30日
    8
  • Java 递归、DFS、回溯

    Java 递归、DFS、回溯DFS/回溯算法如果某问题的解可以由多个步骤得到,而每个步骤都有若干种选择(这些候选方案集可能会依赖之前做出的选择),且可以用递归枚举法实现,则它的工作方式可以用解答树来描述。全排列问题输出数字1~N所能组成的所有全排列publicclassA{/***全排列**@paramargs*/staticVector<Integer>vector=newVector<>();s

    2022年7月8日
    18
  • Fragment onResume不执行「建议收藏」

    Fragment onResume不执行「建议收藏」本博客解决的主要问题:在多个fragment切换的时候刷新各自的fragment,一般我们会优先想到onResume(),但是有时不起作用。解决办法:我们可以重写setUserVisibleHint()@OverridepublicvoidsetUserVisibleHint(booleanisVisibleToUser){super.setUserVis

    2022年6月2日
    211
  • 利用tasklist和taskkill实现判断进程数按名称杀掉进程

    利用tasklist和taskkill实现判断进程数按名称杀掉进程@echooffsetexe=firefox.exeset/anum=5for/f%%iin(‘tasklist^|find/c/i”%exe%”‘)doif%%igtr%num%taskkill/f/im%exe%TASKKILL[/Ssystem[/Uusername[/P[password]]]]{[/FIfilter][/PIDprocessid|/IMimagename]}[/T][/F]描述:使用该工具按

    2022年6月1日
    33
  • 模电学习第一天–PN结梳理

    模电学习第一天–PN结梳理基本概念本征半导体:纯净的、具有晶体结构的半导体两种载流子:自由电子、空穴(两种载流子均参与导电)本征激发:半导体在热激发下产生自由电子和空穴对的现象复合:电子填补空穴动态平衡:一定温度下,本征激发与复合产生的自由电子和空穴相等温度影响:热运动加剧–挣脱共价键束缚自由电子增多–空穴增多–载流子浓度提高–导电能力增强N型半导体:自由电子浓度大于空穴浓度,前者为多子,后者为少子P型半导体:空穴浓度大于自由电子浓度对于杂质半导体的温度影响:可以认为多子浓度约等于所掺杂质原子的浓度,且受温度影响很

    2022年6月20日
    36
  • JVM内存结构详解

    JVM内存结构详解文章目录一、你了解JVM内存模型吗在这之前需要知道JVM内存模型图——JDK1.81.1、程序计数器1.2、Java虚拟机栈(Stack)1.1.1、java.lang.StackOverflowError问题1.3、本地方法栈1.4、元空间(MetaSpace)1.4.1、MetaSpace相比PermGen的优势1.5、Java堆(Heap)二、JVM三大性能调优参数-Xms-Xmx-X…

    2022年4月30日
    50

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号