V-REP用户手册(翻译)(一)

参考V-REP User Manual

阅读用户手册时的一些记录,实际上就是一些机翻,主要方便自己的阅读和使用,另一方面也可以给大家提供一些方便.从英文版的用户手册的第六部分的快捷键的部分开始,因为之前的多是一些软件介绍,没太大意义.后续会不断增加和修改.

V-REP用户手册(翻译)主要包括VREP中一些界面设置介绍和软件中的概念介绍.有关API的介绍专门放在API的博文中.

6.7快捷键

当焦点在场景层次结构或页面上时,支持以下快捷键:
CTRL + A:选择所有
esc:清除选择
CTRL+C:复制所选内容
CTRL+V:粘贴复制缓冲区
CTRL+X:剪切选区
delete:删除选择
backspace:删除选择
CTRL+O:打开一个场景
CTRL+N:新建一个场景
CTRL+S:保存场景
CTRL+W:关闭一个场景
CTRL+Q:退出应用程序
CTRL+space:启动/停止模拟
CTRL+E:切换1)正常,2)对象转换和3)对象旋转鼠标模式
CTRL+D:打开对象属性对话框
CTRL+G:打开计算模块对话框
CTRL+B:调整视图以适应所选对象,如果没有选中对象,则调整整个场景。重点需要放在视图上。

7.场景和模型

场景和模型是V-REP的主要仿真元素。模型是场景的子元素,清晰地标记为模型。一个场景可以包含任意数量的模型。下图展示了场景-模型关系:
在这里插入图片描述[场景和模型)场景和模型都可能包含以下一种或几种元素:
对象
集合
碰撞的对象
远程对象
逆运动学组
几何约束求解器对象
子脚本
自定义用户界面
除了上述元素外,场景还会包含以下元素环境主要的脚本页面和视图场景保存在中。和模型保存在“.ttm”文件中。这两种文件类型都可以通过从资源管理器窗口拖拽到V-REP应用程序中来打开。它们也可以通过双击打开。

7.1场景

与模型相比,场景可以包含完全相同类型的元素,但还可以包含以下特定于场景的元素:环境
主要的脚本
页面和视图

场景或场景图像内容可以通过与视图相关联的可视图对象看到,视图本身包含在页面中。创建新场景时([菜单栏—>文件—>新场景]),默认场景将包含以下元素:
几个相机对象:相机允许看到场景,如果它们与一个视图相关联。
几个发光的物体:没有光,这个场景几乎看不见。灯光是用来照亮景色的。
几个视图:视图与摄像机相关联,并显示摄像机所看到的内容。视图包含在页面中。
几个页面:一个页面包含一个或多个视图。环境:环境由环境光、雾、背景色等属性组成。地板:地板由模型中分组的对象组成。
默认的主脚本:默认的主脚本应该允许运行最小的模拟,而不需要子脚本。如果子脚本与场景对象相关联,则在稍后阶段复制到场景中的子脚本也将自动执行(由主脚本调用)。

使用[菜单栏—>文件—>打开场景…[菜单栏—>文件—>保存场景]或[菜单栏—>文件—>保存场景为…]场景文件(“*.ttt”-files)也支持资源管理器窗口和应用程序窗口之间的拖放操作。场景文件也可以双击,在这种情况下,它们将启动V-REP应用程序并被打开。

打开的场景之间的切换可以通过点击场景层次结构的上部来实现(所有打开的场景都在场景层次结构的顶部进行分组),或者使用场景选择器的相关工具栏按钮:
在这里插入图片描述

7.2模型

模型是场景的子元素。模型本身不能存在,除非在一个文件中("* “)。(ttm”-file type),也不能自己模拟。一个模型必须包含在一个场景中才能运行。模型是由构建在同一层次结构树上的场景对象的选择定义的,其中树的基必须是一个被标记为object is model base的对象。可以用[菜单栏—>文件—>加载模型…]加载。然而,通过模型浏览器和场景视图之间的拖放操作加载模型要容易得多,也方便得多。可以用[菜单栏—>文件—>保存模型为…,只需要确保选中一个被标记为object is model base的对象,否则Save model as…-将不启用菜单项。还要确保遵循教程中关于如何构建一个干净的仿真模型。
模型的定义步骤如下:将逻辑上属于模型的所有对象附加到一个基对象,以便基对象是模型树的基。
检查对象公共属性中的对象是否是模型基项。
在上面的对话框中,检查对象/模型是否可以传输或接受dna项。如果您在稍后修改模型,这将简化模型重新瞬时化。
在与上面相同的对话框中,单击Edit model properties,您可以定义特殊的覆盖属性(例如,使整个模型不可见、不可冲突等)。这允许快速禁用模型中定义的所有对象的某些属性。
对于模型中的所有对象,除了基本对象外,请检查对象公共属性中model instead-item的select base。这将保护您的模型:您不能直接选择模型中的单个对象,而且您几乎可以将模型作为单个对象来操作。
对于所有通常不可见的对象,请检查“不要显示在模型选择项中”。这将使模型包围框以正确的大小出现在模型周围。
考虑模型的角色:您是否能够将它附加到其他对象上?(例如,您的模型是一个夹持器,您可以附加到机械手手腕)。或者你能给它加上别的模型吗?(例如,您的模型是一个可以接受夹持器模型的机械手)。一旦确定了角色,就定义模型的组装行为。还请参考此动力学设计考虑。

现在,在场景中不能再选择构建在模型基础上的单个对象(选择它们将选择模型的基础),但是仍然可以通过在选择过程中按住ctrl- and - shift键或在场景层次结构中选择它们来单独选择它们。此外,当选中基对象时,会显示一个点状包围整个模型的包围框,如下图所示:

在这里插入图片描述

7.2.1 模型对话框

模型的属性可以在模型对话框中单独调整。双击场景层次结构中的模型图标即可打开:
在这里插入图片描述
在这里插入图片描述
Select model thumbnail:保存模型时,将弹出一个对话框,询问模型缩略图(将显示在模型浏览器中)。如果你想保存缩略图模型在不同的配置(如您希望保存一条蛇机器人的模型直接配置,但你希望缩略图可视化蛇机器人在弯配置),然后你可以在这里指定缩略图。
Override properties:在这里,您可以为整个模型禁用(覆盖)特定的属性(即为模型层次树中的所有对象)。这对于快速禁用一个花费太多计算时间的模型是很方便的。还请参阅关于可冲突对象、可度量对象、可呈现对象、可裁剪对象和可检测对象以及simSetModelProperty API函数的部分。
Model content acknowledgments/Info:与模型相关的信息。确认模型或导入网格的原始作者始终是很好的实践。当包含确认信息的模型打开时,它将自动显示该信息。

8.环境

V-REP中的环境定义了场景的一部分,但不是场景对象的属性和参数。环境属性和参数不会在保存模型时保存,而只在保存场景时保存。
环境定义了以下属性和参数:
背景颜色。
雾参数。雾参数不直接与场景对象交互,除非选择了相应的选项,否则与摄像机或视觉传感器交互。
环境光场景创建信息附加的设置

8.1环境对话框

环境对话框可以使用[Menu bar—> Tools—> environment]或者双击场景层次结构中的如下图标:
在这里插入图片描述
在这里插入图片描述
Background (up / down):允许调整场景的背景颜色。向上的组件对应屏幕的上部(天空),向下的组件对应屏幕的下部。只有当fog功能被禁用时,背景颜色才可见。

Ambient light:允许调整场景的环境光。环境光可以被看作是场景中最小的光,它从各个方向以完全相同的方式照亮一个物体。有关场景照明的详细信息,请参阅有关灯光的部分。
Adjust fog parameters:允许调整各种雾的参数。
Visualize wireless emissions如果启用,则所有无线发射活动都将可视化。参见相关API函数。
Maximum triangle size此项目不会影响形状的视觉外观。然而,这将影响大多数V-REP计算模块的执行速度。例如,在执行两个实体之间的最小距离计算时,如果两个实体都由相似大小的三角形组成,那么执行速度通常会更快。最大三角形大小值指定如何处理形状的内部表示(即形状的计算结构有多复杂)。小尺寸会增加预处理时间,但一般会同时增加仿真执行速度。此值将整个三角形的最大大小设置为绝对值。请参见“下一项”和“三角形编辑模式下的“缩小三角形大小”项。

Shape textures disabled:如果选中,那么应用于形状的所有纹理都将被禁用。
Custom user interface textures disabled:如果选中,那么应用于基于opengl的自定义ui的所有纹理都将被禁用。
Lock scene after next scene save: 如果您想要从版本/修改、脚本内容查看和资源导出中锁定场景,请选择此项目。下一个场景保存操作后,场景将被锁定。如果你想在以后修改同一个场景,请确保你已经将它保存在解锁状态。
Custom collision/contact response:选中此项后,所有动态联系人处理都可以由用户定义,并通过联系人回调脚本执行。请记住,此设置与场景相关,并且模型在不同的场景中将有不同的行为。此设置仅建议那些确切知道自己在做什么的用户使用。
General callback script选中此项后,您将能够在常规回调脚本中处理特定的用户回调。当插件调用API函数simHandleGeneralCallbackScript时,将调用通用回调脚本。
Extension string:描述附加环境属性的字符串,主要由扩展插件使用(也请参阅simGetExtensionString API函数)。
Clean-up object names:允许使用散列标记将一些顺序放入对象名称中。这不是必需的,但是可以方便地减少散列标签后面的后缀号。
Clean-up ghosts:删除场景中可能包含的所有ghosts对象。还请参考ghost记录功能。
Scene content acknowledgements / Info: 与场景相关的信息。确认场景、模型或导入网格的原始作者始终是很好的实践。当包含确认信息的场景打开时,它将自动显示该信息。

8.2纹理对话框(Texture dialog)

纹理对话框允许您查看和修改与附加到形状或基于opengl的自定义UI的纹理相关的属性。通过在shape properties对话框中点击Set text -item或者在基于opengl的自定义UI对话框中点击Set UI background text -item或者Set button text -item来访问:
在这里插入图片描述

9.实体(Entities)

实体是指场景对象或集合的术语。下图说明了场景对象、集合和实体之间的关系:
在这里插入图片描述

9.1场景对象 (Scene objects)

V-REP中用于构建仿真场景的主要元素是场景对象(简称对象)。对象在场景层次结构和场景视图中可见。在场景视图中,对象具有如下图所示的三维表示:
在这里插入图片描述

下面的列表给出了每种对象类型的简单功能描述:
Shapes:形状是由三角形面组成的刚性网格。
Joints:关节对象是关节或执行器。四种类型的支持:转动关节,移动关节,螺钉和球形关节。
Graphs:用于记录和可视化仿真数据。
Dummies:Dummies是一个有方向的点。Dummies是多用途的对象,可以有许多不同的应用程序。
Proximity sensors(近距离传感器):近距离传感器以几何精确的方式在其检测范围内检测目标。V-REP支持金字塔式、圆筒式、圆盘式、锥形和射线式接近传感器。
Vision sensors(视觉传感器):视觉传感器是一种照相机式的传感器,对光线、颜色和图像做出反应。
力传感器(Force sensors):力传感器是一种能够测量施加于其上的力和力矩的物体。它也有能力打破,如果一个给定的持有超过。
Mills:Mills是一个凸体,可用于对形状对象进行切削操作。
cameras:cameras是一种可以从不同角度看到模拟场景的物体。
Lights:Lights是一种可以照亮模拟场景的物体。
Paths:路径是在空间中定义路径或轨迹的对象。它可以用于各种用途,也可以作为定制的关节或执行机构。
Mirrors:镜子可以反射图像/光线,但也可以作为辅助剪切平面。
Octrees(八叉树):八叉树是由体素组成的空间分区数据结构。
Point clouds(点云):点云是一个包含点的八叉树结构。
上面的一些对象可以具有特殊的属性,允许其他对象或计算模块与它们交互。
对象可以是:
Collidable可碰撞:可碰撞对象可以测试与其他可碰撞对象的碰撞。
Measurable可测对象:可测对象与其他可测对象之间可计算得到最小距离。
Detectable可检测的:可检测对象可以被Proximity sensors检测到。
Cuttable可切分的:可切分的物体可由Mills切割。
Renderable可渲染:可渲染对象可以被视觉传感器看到或检测到。
Viewable 可查看的:可查看的对象可以被浏览、查看,或者它们的图像内容可以在视图中可视化。
更多有关信息,请参阅 pages and views(页面和视图)部分

每个对象在仿真场景中都有一个位置和方向。我们将对象的位置和方向称为对象的配置。对象可以附加到其他对象上(或者构建在其他对象之上)。如果对象A构建在对象B之上,那么对象B是父对象,对象A是子对象。要在对象B和对象A之间创建父子关系,请选择对象A,然后选择对象B(选择顺序很重要)。然后选择[菜单栏—> Edit—> Make last selected object parent]。下图说明了该操作:
在这里插入图片描述

或者,您可以将一个对象拖放到场景层级中的另一个对象上,以获得类似的结果。注意,对象A的配置没有更改(两个对象都保留了各自的配置)。但是,查看场景层次结构,您可以看到对象A变成了对象B的子对象。如果您现在移动对象B,对象A将自动跟随,因为对象A附属于对象B。通过选择对象A,然后选择[菜单栏—> Edit—> Make selected Object (s) orphan],可以分离对象A。这样做将在不改变配置的情况下分离对象A。或者,您可以将对象拖放到world图标上以获得类似的结果。

每个对象都有一个相对于世界参考系的绝对配置(或累积配置)和一个相对于父对象参考系的局部配置(或相对配置)。在上面的例子中,当对象A成为对象B的子对象时,对象A的绝对配置没有改变,但是修改了它的相对配置。

最后选择对象的绝对配置显示在信息文本中。要修改或调整对象的绝对配置或相对配置,请参考坐标和转换对话框以及关于对象位置/方向操作的部分。

一些对象数据可以用图形对象来记录。有关如何记录对象数据的更多信息,请参阅图形和图形数据流。

9.1.1 Scene object properties (场景对象属性)

场景对象属性对话框(scene object properties dialog)位于[菜单栏 --> Tools --> Scene object properties].。你也可以双击scene hierarchy中的对象图标,或者点击它的工具栏按钮来打开对话框:
在这里插入图片描述
场景对象属性对话框显示与对象相关的属性(即场景对象,Scene object)。对话框是上下文敏感的,其内容主要取决于场景对象选择状态:只显示最后选中对象的属性。这些性质分为两部分:

对象类型特定属性(Object-type specific properties):特定于所选对象类型的属性。详见下文。
对象公共属性(Object common properties):所有对象类型的公共属性。
对话框上方的两个按钮允许选择要显示的属性类型。如果对象选择为空,则所有对话框项将不活动。
在这里插入图片描述
对话框的对象类型特定属性部分将根据最后选择对象的类型显示以下对话框之一:

The camera properties
The light properties
The shape properties
The joint properties
The dummy properties
The graph properties
The proximity sensor properties
The vision sensor properties
The force sensor properties
The mill properties
The path properties
The mirror properties

9.1.2 Collidable objects (可碰撞对象)

可碰撞对象是可以测试与其他可碰撞对象的碰撞的对象,即注册碰撞状态的对象。这并不意味着它们会对碰撞做出响应(即可响应),这是不同的。可碰撞对象包括:
Dummies
Shapes
Octrees
Point clouds
由于Dummies和Point clouds(点云)基于点所以只能与基于体积的八叉树碰撞。
集合也是可碰撞的,因为它们可能包含可碰撞的对象。可碰撞对象可以单独启用或禁用其可碰撞属性(默认情况下,对非纯形状、八叉树和点云启用)。这可以在对象公共属性中设置,也可以通过simSetObjectSpecialProperty API函数设置。此外,可碰撞对象可以根据它们的相关模型属性(如果它们是模型的一部分)覆盖它们的可碰撞属性。有关更多信息,请参考model对话框。

9.1.3 Measurable objects 可测量的对象

可测对象是可以与其他可测对象进行最小距离计算的对象。
它们包括:
Dummies
Shapes
Octrees
Point clouds
集合也是可测量的,因为它们可能包含可测量的对象。可测量对象可以单独启用或禁用它们的可测量属性(对于非纯形状、八叉树和点云,默认情况下启用)。这可以在对象公共属性中设置,也可以通过simSetObjectSpecialProperty API函数设置。此外,可度量对象可以根据它们的相关模型属性(如果它们是模型的一部分)覆盖它们的可测量属性。有关更多信息,请参考model对话框。

9.1.4 Detectable objects 可检测的对象

可检测对象是可以被近距离传感器检测到的对象。它们包括:
Dummies
Shapes
Octrees
Point clouds
由于基于点的Dummies和点云无法被光线型或随机型proximity sensors检测到。可检测的物体可由所有proximity sensors检测,或只可由特定类型的proximity sensors检测,或列出的proximity sensors的一个子类别检测:
超声波距离传感器
红外接近传感器
激光距离传感器
感应距离传感器
电容式接近传感器

集合也是可检测的,因为它们可能包含可检测的对象。可检测对象可以单独启用或禁用其可检测属性,这适用于所有类型的proximity sensors(默认情况下,对非纯形状启用)。这可以在对象公共属性中设置,也可以通过simSetObjectSpecialProperty API函数设置。此外,可检测对象可以根据其相关的模型属性(如果它们是模型的一部分)覆盖其可检测属性。有关更多信息,请参考model对话框。

9.1.5 Cuttable objects 可切割对象

可切割对象是可以被mills切割的对象。目前,只有简单的非纯形状是可裁剪的,但是未来的V-REP版本也将包括可裁剪的volumes。
集合也是可切割的,因为它们可能包含可切割对象。
可切割对象可以单独启用或禁用其可切割属性(默认情况下禁用)。这可以在对象公共属性中设置,也可以通过simSetObjectSpecialProperty API函数设置。此外,可切割对象可以根据它们的相关模型属性(如果它们是模型的一部分)覆盖它们的可切割属性。有关更多信息,请参考model对话框。

9.1.6 Renderable objects 可渲染的对象

可渲染对象是可以被视觉传感器看到或检测到的对象。它们包括:
Shapes
Paths (t但是必须启用路径整形功能)
Graphs (只渲染非静态3D曲线)
Mirrors
Octrees
Point clouds
集合也是可渲染的,因为它们可能包含可渲染的对象。您可以有一个只有特定视觉传感器才能看到的可渲染对象。可渲染对象还可以单独启用或禁用它们的可渲染属性(默认情况下启用,纯形状除外)。这可以在对象公共属性中设置,也可以通过simSetObjectSpecialProperty API函数设置。此外,可渲染对象可以根据它们的相关模型属性(如果它们是模型的一部分)重写它们的可渲染属性。有关更多信息,请参考model对话框。

9.1.7 可视对象

可视对象是可以浏览、查看或显示某些图像内容的对象。
它们包括:
Cameras
Graphs
Vision sensors

可视对象可以与显示其图像内容的视图相关联。

9.1.8 Convex hull 凸包

V-REP允许计算和添加指定对象的凸包。网格集合的凸包是包含所有网格的最小凸包。V-REP只允许提取可测量对象的凸包。计算出的凸包可能不是“水密的”(即可能包含重叠三角形或非共享边),因此形状不会被标记为凸包。不过,您可以在生成的形状上运行一个凸分解函数。

要添加凸包,请选择要包含在凸包中的对象,并选择[菜单栏—>add—> Convex hull of selection]

根据不同的情况,凸壳可以大大减少计算时间,例如在距离计算或接近传感器仿真。如果使用复杂形状的粗糙近似(即凸包),碰撞检测也可以执行得更快。我们也可以提取模型的凸包(例如机器人),然后使其不可见,但是使用不可见的凸包而不是复杂模型来执行所有的计算(碰撞检测、距离计算等)。
在这里插入图片描述

9.1.9Object selection dialog

对象选择对话框对象选择对话框是一种方便的方法,可以根据对象的类型选择对象,而不必浏览场景层次结构。当处于形状编辑模式或路径编辑模式时,对话框还可用于反转项目选择。可通过【Menu bar --> Tools --> Selection】或点击以下工具栏按钮:
在这里插入图片描述
在这里插入图片描述

Simple shapes:选择场景中的所有简单形状。
Compound shapes:选择场景中所有的复合形状。
Dummies:选择场景中的所有Dummies。
Mills:选择场景中所有的Mills。
Cameras:选择场景中的所有相机。
Lights:选择场景中的所有灯光。
Proximity sensors:选择场景中的所有近距离传感器。
Vision sensors:选择场景中的所有视觉传感器。
Force sensors:选择场景中所有的力传感器。
Joints:选择场景中的所有关节。
Graphs:选择场景中的所有图。
Paths:选择场景中的所有路径。
Octrees:选择场景中的所有八叉树。
Point clouds:选择场景中的所有点云。
Mirrors:选择场景中的所有镜像。
Clear Selection:清除当前选择(对象或项)
Invert Selection:反转当前选择(选中的对象或项未选中,未选中的对象或项被选中)

9.1.10 Layer selection dialog 层选择对话框图

层选择对话框是显示或隐藏场景特定部分的一种方便的方式。每个场景对象都可以分配给16个可用的可见层中的任何一个(参考对象公共属性)。使用此对话框,您可以单独激活/停用每一层。如果某些对象应该是不可见的,尝试将它们隐藏在非激活层中(例如current layer+8)。当保存一个场景时,始终保持默认的激活状态(全部启用了8个第一层,禁用了最后8层)。这样做的原因是,如果您将一个模型从您的场景复制并粘贴到另一个场景中,那么一些原本不可见的对象可能会突然变得可见。在模拟过程中,对话框提供了仅显示场景动态内容的可能性(仅可视化动态内容),这通常有助于调试目的。层选择对话框可使用[菜单栏—> Tools—>Layers]或点击以下工具栏按钮:

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

9.1.12 Cameras

相机是可以看到的物体,这意味着你可以通过它们看到它们所看到的东西。在你的场景中,你可以有任意数量的相机,每一个都提供了一个不同的场景视图。下面是一个包含多个摄像头的场景示例:
在这里插入图片描述
确保不要把相机和视觉传感器搞混。主要区别如下:
相机没有特定的分辨率(即根据视图大小自动调整)。视觉传感器具有固定的分辨率。
相机的图像内容不是通过API直接可用的(而是通过回调机制),也不直接支持图像处理.视觉传感器的图像内容可以通过API访问,并且图像处理过滤器是可用的。
相机通常比视觉传感器需要更少的CPU时间和更快的运行速度。
照相机可以显示所有的对象类型。视觉传感器只能显示可渲染的对象。

使用[Menu bar—> Add—> camera]可以将相机添加到场景中。但是,以这种方式添加相机会将对象添加到默认位置和方向。通过右键单击场景的特定视图并选择[弹出菜单—> add—> Camera]来添加相机是一个更好的做法。这将在当前视图前面添加对象。添加的相机是自动选择的,然后您可以查看它与[弹出菜单->视图->关联视图与选定的相机]。要实现这一点,您必须确保在视图上激活了弹出菜单。当一个视图被创建,但还没有与一个可视对象相关联时,[弹出菜单——> Add——> Camera]命令将添加一个相机,并直接将其与视图相关联(即查看它)。摄像机可以与任意数量的视图相关联。

或者,您也可以通过激活视图中的以下弹出窗口来将视图与相机关联:[弹出菜单—>View --> View selector…]。这将允许您从预览窗口中选择所需的相机视图。当相机与视图相关联时,可以用鼠标通过以下工具栏按钮进行操作:
在这里插入图片描述
Pan button:允许将相机垂直于视图方向移动。场景中单击的点将以与鼠标移动相同的速度移动。如果没有点击特定的点(即点击背景),则会对靠近相机的一个不可见点执行shift操作。
Rotate button:允许旋转相机的点击点在场景。如果没有特定的点被点击(即当背景被点击时),旋转操作将在靠近相机的一个不可见点上执行。
Shift button::允许相机沿视图方向移动。这对处于透视投影模式的相机视图有缩放效果,但是在正交投影模式下的相机视图可能看不到任何效果(但是相机将沿着它们的视图方向移动)。
Camera angle button允许调整相机视图的透视投影角度(在透视投影模式下),或允许调整相机视图的视图大小(在正交投影模式下)。
Fit-to-view button:调整具有焦点的视图的相机,以便很好地框住所有选中的对象,或者如果没有选中对象,则框住整个场景。
Fly button:允许“飞行”通过一个场景。鼠标x和y的运动被转换成偏航和俯仰运动。加速和减速分别用shift键和ctrl键实现。当同时按住shift和ctrl键时,鼠标x和y的移动会沿着相机的x和y轴进行平移。除此之外,光标键允许相机朝向与飞行方向不同的方向(在飞行期间)。

当鼠标左键允许上述操作时,鼠标滚轮允许相机沿视图方向移动(如果相机视图处于透视投影模式),或者允许调整相机视图的视图大小(如果相机视图处于正交投影模式)。右键,点击时不需要鼠标移动就会激活弹出菜单,但是如果鼠标移动时一直按右键,就可以实现相机围绕点击点旋转。

相机转变按钮被激活时,它很容易导航场景中的任意位置和姿态使用:(1)鼠标左键移动方向垂直于视图,(2)鼠标滚轮沿着视图方向转移,和(3)鼠标右键点击点的旋转:
在这里插入图片描述

9.1.12.1 Cameras properties 相机属性

相机属性是场景对象属性对话框的一部分,对话框位于[菜单栏—> Tools—> scene object properties]。你也可以双击场景层次结构中的对象图标,或者点击它的工具栏按钮来打开对话框:
在这里插入图片描述
在“场景对象属性”对话框中,单击相机按钮以显示相机对话框(只有最后一个选择是相机时才会出现相机按钮)。对话框显示最后选择的相机的设置和参数。如果选择多个相机,则可以将一些参数从最后一个选择的相机复制到其他选择的相机(适用于选择按钮):

在这里插入图片描述

Perspective angle 透视角:照相机的透视投影角(或开合角)。只有当关联视图处于透视投影模式时,才能看到该参数的效果。
Orthographic size 正投影尺寸:相机的正投影尺寸(或视图尺寸)。只有当相关视图处于正交投影模式时,才能看到该参数的效果。
Near / far clipping plane 近/远剪切面:距离相机开始/停止观察的相机原点的距离。如果不应该显示close / far对象,则增加/减少此值。这些参数与渲染精度直接相关,特别是当一个相关的观点是在透视投影模式,那么你应该小心不要有太大差距,切割面,否则你可能会经历一些视觉构件称为z-fighting(当表面或像素远似乎重叠表面/像素靠近相机)。
渲染模式:相机的渲染模式。注意,POV-Ray渲染要慢得多,渲染可能需要几秒钟,甚至几分钟。
Render mode 渲染模式:相机的渲染模式。注意,POV-Ray渲染要慢得多,渲染可能需要几秒钟,甚至几分钟。
Tracked object 被跟踪对象:被相机跟踪的对象。跟踪一个物体不会影响相机的位置,只会自动调整相机的方向来跟踪被跟踪的物体。
Show fog if enabled 显示雾如果启用:如果禁用,那么这个相机不会看到任何雾如果启用雾。也请参考环境对话框。
Keep head always up 保持头部始终向上:如果启用,相机将始终保持头部向上,即保持相机的y轴在垂直平面上。
Allow picking允许选择:允许您启用/禁用对象选择(即单击以选择对象)
Use parent as camera manipulation proxy:使用parent作为相机操作代理:如果启用,那么相机操作工具栏按钮不会直接影响相机的位置,而是会影响相机的父对象。这个选项是有用的,如果你想有几个相机相互连接(例如,在V-REP的默认场景有3个相机垂直排列到对方。如果其中一个移动了,其他两个也会跟着移动)
Along own X- / Y- / Z-axis 沿着自己的X / Y- / z轴:允许指定哪些相机平移运动是允许的。
Full rotation 充分旋转:如果选择,那么相机不受角度运动的限制。
Object size 对象大小:相机大小。该参数仅具有视觉效果,没有功能意义。
Adjust color A / B 调整颜色A / B:允许调整相机外壳的颜色。

9.1.13 Lights 灯光

灯光是让你照亮一个场景的物体。如果场景中没有任何光线,对象将以无阴影的颜色出现(在这种情况下,对象只能通过环境对话框中设置的环境光组件进行照明)。下图展示了场景中灯光的效果:
在这里插入图片描述

一个场景中最多可以有8个活动灯光。有三种不同类型的灯:
全向照明:一个全向照明将从一个点光源照亮场景。
聚光灯:聚光灯只能照亮一个特定的方向。你可以调整聚光灯的光锥。
方向灯:方向灯的位置并不重要。只有方向是重要的,场景中的所有物体都会以类似的方式被照亮。
在这里插入图片描述
使用[菜单栏—> Add—> light]可以向场景添加灯光。

9.1.13.1 Lights properties 灯光属性

灯光属性是场景对象属性对话框的一部分,对话框位于[菜单栏—> Tools—> scene object properties]。你也可以双击场景层次结构中的对象图标,或者点击它的工具栏按钮来打开对话框:
在这里插入图片描述
在“场景对象属性”对话框中,单击“灯光”按钮以显示“灯光”对话框(只有在最后一个选择为“灯光”时才会出现“灯光”按钮)。对话框显示最后选择的光的设置和参数。如果选择多个光,则可以将一些参数从最后一个选择的光复制到其他选择的光(适用于选择按钮):
在这里插入图片描述

Light is enabled 启用或禁用光 在一个场景中最多可以同时存在8个启用的灯光。
Light is local 光是局部的:当选中该项目时,该光将作为局部光,只有通过使用局部光的相机或视觉传感器才能工作(即需要启用相机或视觉传感器使用局部光的项目)。除此之外,光需要建立在相机或视觉传感器(光是直接或间接的孩子)之上。
Spot cutoff 点截止:如果灯是聚光灯,这个值指定灯的截止角度。小角度导致狭窄的聚光灯。
Spot exponent 点指数:在光线是聚光灯的情况下,这个值指定光线的强度分布。0导致聚光灯范围较广,128导致聚光灯范围较窄。
Constant attenuation factor 常数衰减系数:表示光的常数衰减系数的参数。
Linear attenuation factor 线性衰减系数:表示光的线性衰减系数的参数。
Quadratic attenuation factor 二次衰减系数:表示光的二次衰减系数的参数。
Object size 对象大小:光的大小。该参数仅具有视觉效果,没有功能意义。
Adjust light / casing color 调整光/外壳颜色:允许调整浅色,或外壳颜色。

9.1.12 Shapes 形状

形状是由三角形面组成的刚性网格对象。它们可以导入、导出和编辑。它们有四种不同的亚型:
Simple random shape 简单的随机形状:可以代表任何网格。它有一种颜色和一组视觉属性。不优化也不建议用于动态碰撞响应计算(因为非常缓慢和不稳定)。
Compound random shape 复合随机形状:可以表示任意网格。它有几种颜色和一组视觉属性。不优化也不建议用于动态碰撞响应计算(因为非常缓慢和不稳定)。
Simple convex shape 简单凸形:表示具有一种颜色和一组视觉属性的凸网格。优化动力学碰撞响应计算(但建议纯形状)。
Compound convex shape 复合凸形:表示一组具有多种颜色和视觉属性的凸网格。优化动力学碰撞响应计算(但推荐纯复合形状)。
Pure simple shape 纯简单形状:表示一个原始形状(长方体、圆柱体或球体(根据使用的物理引擎有额外的变化)。纯简单形状(或纯复合形状)最适合用于动态碰撞响应计算,因为它执行速度非常快,而且很稳定。有关更多信息,请参见dynamics模块部分。
Pure compound shape 纯复合形状:表示一组原始形状(长方体、圆柱体或球体)。纯复合形状(或纯简单形状)最适合用于动态碰撞响应计算,因为它执行非常快,而且是稳定的。有关更多信息,请参见dynamics模块部分。
Heightfield shape 高度场形状:可以将地形表示为规则网格,其中只有高度变化。海特菲尔德也可以考虑为纯简单形状,并优化为动力学碰撞响应计算。

默认情况下,所有导入的形状都是简单的形状。两个或多个简单形状或复合形状可以分组([菜单栏–> Edit --> Grouping/Merging --> Group selected shapes])或不分组([菜单栏–> Edit --> Grouping/Merging --> Group selected shapes])。还可以合并简单的形状([菜单栏 --> Edit --> Grouping/Merging --> Merge selected shapes]),在这种情况下,所有组合元素的可视属性都是相同的。形状也可以被分割([菜单栏 --> Edit --> Grouping/Merging --> Divide selected shapes]),这取决于它的配置:分割算法将提取形状的每个不同元素。如果两个元素没有任何共同的边,它们就是不同的。还请参考模型教程。说明了如何正确导入和准备仿真模型的形状。

纯形状主要是功能形状。大多数情况下,它们只被物理引擎使用,而物理引擎对它们的性能要比对非纯形状(例如随机或凸网格)好得多,速度也快得多。因此,纯形状通常隐藏在一个不可见的层中(比如第9层)。
在这里插入图片描述
纯简单形状也可以分组,但是只有当所有的组成元素都是纯的时候,得到的复合形状才会是纯的。合并纯简单形状将导致非纯简单形状。
形状是可碰撞的、可测量的、可检测的、可呈现的和可分割的对象。这意味着形状:
可用于其它可碰撞物体的碰撞检测。
可用于与其它可测对象的最小距离计算。
可以被近距离传感器检测到。可以被视觉传感器检测到。
可以被mills.切割。然而,只有简单的非纯形状才能被切割。
形状的可碰撞、可测量、可检测、可呈现和可裁剪属性可以在对象公共属性中更改。此外,如果形状是覆盖这些属性的型的一部分,则可以覆盖这些属性。有关更多信息,请参考model对话框。

9.1.12.1Shape reference frame and bounding box 形状参考框和边框

形状有一个参考系和一个边界框,每个对象都有。坐标系或坐标系总是位于形状的几何中心,表示形状的位置和方向是从哪里计算出来的。坐标系有三个轴:x轴、y轴和z轴,分别对应红色、绿色和蓝色箭头。形状的包围框以形状的参照系为中心,与参照系具有相同的方向(x轴、y轴和z轴与包围框的边缘具有相同的方向)。包围框完全包含形状。用户可以选择4种不同的方式来定义一个形状的参考框和边框方向(纯简单形状和高度字段形状不能重定向):

Align with reference frame of world(与世界参考系对齐):[菜单栏-> Edit --> reorient bounding box --> with reference frame of world]。当点击这个项目时(之前必须选择一个形状),坐标框将被计算出来,以产生一个边界与世界参考坐标系轴线对齐的边界框(即绝对坐标系)。
Align with main axes of random shape (随机形状主轴对齐):[菜单栏–> Edit --> Reorient bounding box --> with main axes of random shape]。当单击此项目时(必须预先选择一个形状),将计算参考帧,以便在随机形状周围生成最紧凑的包围框。这是默认的计算方法。
Align with main axis of cylinder shape (与圆柱体形状主轴对齐):[菜单栏–> Edit --> Reorient bounding box --> with main axis of cylinder shape]。当这个项目被点击(一个形状必须预先选择),一个精确的参考框架将计算一个圆柱体形状,其z轴与圆柱体的旋转轴重合。这比上面的项目更精确(与随机形状的主轴对齐),但需要精确定义的圆柱体形状。如果形状看起来离一个规则和精确的圆柱体太远,操作可能会失败。
Align with main axes of cuboid shape (与长方体形状主轴对齐):[菜单栏–> Edit --> Reorient bounding box --> with main axes of cuboid shape]。当单击此项目时(必须预先选择一个形状),将在一个长方体形状上计算一个精确的参考系,并与cubid的面对齐。这比上面的条目更精确(与随机形状的主轴对齐),但是需要精确定义的长方体形状。如果形状看起来离常规的和精确的长方体太远,操作可能会失败。

与形状相关的包围框方向也可以在几何对话框中或通过API修改。
在这里插入图片描述

9.1.12.2 Primitive shapes 基本形状

除了从外部文件导入形状外,还可以通过选择[菜单栏–> Add --> Primitive shape]在V-REP中直接创建形状。支持以下5种基本形状:
在这里插入图片描述

原始形状的几何参数可以在原始形状对话框中进行调整:
在这里插入图片描述

X- / Y- / Z-size (X- / Y- / z-尺寸):沿世界坐标系的X- / Y- / z轴的尺寸。
X- / Y- / Z-Subdivisions(X- / Y- / z细分):沿世界坐标系的X- / Y- / z轴的元素个数(*)
Sides(边):圆柱体、圆盘或球体的边数。
Faces(面):圆柱体或球体(*)的面数。
Disc subdivisions(圆盘细分):圆盘细分的数量(圆盘或圆柱)(*)
Smooth shaded(平滑阴影):形状应该是平滑的(高洛阴影)还是锐利的。
Open ends(开口端):圆柱是否有开口端。
Cone(圆锥):表示需要圆锥而不是圆柱体。
Create dynamic and respondable shape (创建动态和可响应的形状):如果选择,生成的形状将是动态和可响应的。它将不可碰撞,不可测量,不可渲染,不可检测,并具有轻微的蓝色,以便快速识别它。
Create pure shape(创建纯形状):如果选中,将生成一个纯形状,在动态计算期间执行得更好更快。
Material density(材料密度):材料的密度。
Shape has negative volume(形状有负的体积):当勾选时,创建的纯形状内部会有一个洞(即负的体积),该洞的形状大小由内部比例因子缩放。这是一个有用的特性,可以创建有效地动态模拟的管状结构。目前,只有 (Vortex Dynamics engine )涡旋动力学引擎支持这一功能。

(*)子分类和面属性不能直接看到,也没有直接影响。下图显示了两个具有不同细分参数的相似形状:
在这里插入图片描述
具有更高细分计数的形状反射光线的方式更加不同。有关详细信息,请参阅三角形编辑模式和细分最大三角形选项( triangle edit mode and the Subdivide largest triangles)。颜色和其他视觉属性应该在形状属性中进行调整。形状网格也可以在形状编辑模式或几何对话框中进行调整和编辑。

9.1.12.2 Importing and exporting shapes 导入和导出形状

导入形状
V-REP使用三角形网格来描述和显示形状。因此,V-REP将只导入将对象描述为三角形网格的格式。但是,如果您希望导入参数化表面的对象(例如IGES、STEP等),那么首先必须将文件转换为适当的三角形网格格式。有几个转换应用程序允许这种操作,大多数3D绘图应用程序也很好地支持这种操作。请确保您进一步阅读部分,以便能够获得最佳的三角形网格描述为您的三维绘图可能。

V-REP支持以下文件格式的形状导入([菜单栏–> File --> Import --> Mesh…]):
obj:这是目前唯一允许在V-REP中导入纹理网格的格式。
DXF: AutoCAD文件格式(Autodesk)。可能包含在文件中的非3d信息将被忽略。
3DS: 3DS Max文件格式(Autodesk)。忽略纹理信息。这种格式目前只支持Windows平台。
STL (ASCII或二进制):3D系统文件格式。支持ASCII和二进制文件。
COLLADA:详细信息请参考COLLADA插件。
URDF:详细信息请参考URDF插件。

在导入操作期间,可能会打开一个与纹理相关的缩放对话框。另一个与网格相关的对话框也将打开:
在这里插入图片描述
对话框允许你正确解释导入的文件的单位(有些应用程序使用米,用英尺,英寸,厘米或毫米),以及网格的方向(某些应用程序考虑Y轴指向上,有些认为Z轴指向上)。无论在任何情况下,都可以在对象公共属性中缩放导入的形状,或者在方向操作模式中纠正它们的方向。

导入的形状将具有默认的视觉参数和随机的颜色,以便能够区分单独的形状。纹理只能通过OBJ文件格式导入:在这种情况下,纹理将被加载并应用于导入的网格。如果纹理加载操作失败,则只导入网格和纹理坐标,您可以在稍后的阶段通过纹理对话框应用纹理。

在导入操作中,V-REP将确保网格对象是一致的,并删除未使用的顶点和合并彼此接近的顶点,等等。你可以在用户设置对话框中的顶点/三角形验证设置中设置确切的行为。如果在导入操作之后,您不能在场景中看到任何形状,但是场景层次结构显示了新添加的形状的存在,那么很可能您的形状要么太大要么太小,无法看到。可以在对象公共属性中进行缩放操作。此外,当从CAD应用程序导出网格时,试着将它们作为一个整体导出(最好是将它们作为单个对象导出,稍后在V-REP中,您可以使用[Menu Bar—> Edit—> groups / merge—> divide selected shapes]来分割导入的形状);这是为了避免CAD应用程序在导出操作中根据单个网格的参考框架重新定位/重新定向(V-REP的参考框架不同!),这可能会导致一个破碎的外观。

确保导入的网格中不包含太多三角形(对于机器人,通常总共包含10,000 - 20,000个三角形),否则V-REP的速度可能会大大降低(呈现、计算、加载/保存操作等)。有些应用程序允许减少网格中的多边形数量(例如MeshLab或polygon crunsher)。你也可以使用以下V-REP功能:

[菜单栏-> Edit --> Morph selection into convex shapes]:允许将选中的形状转换为凸面形状。
[菜单栏–> Edit --> Morph selection into its convex decomposition…]:允许将选定的形状转换为其凸分解表示形式。
[菜单栏–> Edit --> Decimate selected shape…]:允许减少所选形状中的三角形数量。
[菜单栏–> Edit --> Extract inside of selected shape…]:允许提取/分离形状的内部(即不可见部分)与相同形状的外部(即可见部分)。该功能基于视觉传感器,可能并不总是能得到令人满意的结果。

当从一个将形状处理为参数曲面的应用程序导出形状时(例如IGES、STEP等),当绘图由大对象和小对象组成时,可能需要分几个步骤导出对象;这是为了避免大对象定义得太精确(三角形太多)和小对象定义得太粗略(三角形太少):首先导出大对象(通过调整所需的精度设置),然后导出小对象(通过调整精度设置)。

还要确保遵循教程中关于如何构建一个干净的仿真模型。

导出形状
V-REP支持以下文件格式的形状导出菜单栏–> File --> Export -->Selected shapes…(注:只导出选定的对象):
DXF: AutoCAD文件格式(Autodesk)。
OBJ:波前技术文件格式。
STL(二进制):3D系统文件格式。只有二进制格式才支持导出。这是V-REP中最紧凑的导出选项。
COLLADA:详细信息请参考COLLADA插件。

导入高度场Heightfields
V-REP支持以下文件格式的Heightfields导入([Menu bar --> File --> Import --> Heightfield…]):
图像文件:一个图像文件(JPEG、PNG、TGA、BMP、TIFF或GIF文件),其中的各种高度值取自红色、绿色和蓝色组件:height=(红色+绿色+蓝色)/3。
CSV或TXT:逗号分隔值文件格式。文件应该包含y行,其中每一行都有x个值,用逗号分隔。
选择要导入的文件后,将打开一个对话框:
在这里插入图片描述
x -size / y -size:指定heightfield的x和y维度。单个的heightfield cells总是正方形的。
Z-scaling:指定要应用于高度值的缩放。

9.1.12.3 Convex decomposition 凸分解

V-REP允许计算和添加指定形状的凸分解。在动态碰撞响应计算方面,凸形比随机形状表现得更快、更稳定。然而,它们既没有纯形状那么快,也没有纯形状那么稳定!
在这里插入图片描述
您可以添加选定形状的凸分解,也可以将选定的形状变形为它们的凸分解等价:

加上凸分解:[菜单栏 --> Add --> Convex decomposition of selection…]
变形为凸分解:[–> Edit --> Morph selection into its convex decomposition…]

下面的对话框弹出,允许调整形状分解的方式:
在这里插入图片描述
每个形状都应用以下参数:
Handle compound shape components individually :检查时,分解时将单独处理复合形状的每个网格,否则将复合形状视为单个网格。
Max. iterations:凸分解算法以近似的方式工作,这意味着所创建的形状可能或多或少是凸的。V-REP使用它自己的凹凸度度量:一个形状只有当它的所有顶点都位于由所有三角形面定义的半体内时才被认为是凸的,这与形状的平均包围盒边长的1.5%的公差有关。马克斯。如果创建的网格没有足够凸到V-REP,那么iteration参数允许在创建的网格上迭代多次。
HACD convex decomposition:启用HACD算法。
Add extra points:指定计算凹度时是否应该添加额外的点。
Add extra face points:指定计算凹度时是否应该添加面点。
Min. nb of clusters:指定要生成的集群的最小数量Max。
Max. concavity:指定允许的最大凹性。
Max. connection distance:指定连接凸集群的最大允许距离。
Target nb of triangles of decimated mesh:指定抽取网格三角形的目标数量。
Max. nb of vertices / convex hull:为每个生成的凸包指定顶点的最大数量。
Small cluster detection threshold (%):指定检测小集群的阈值。阈值表示为总网格表面的百分比
V-HACD convex decomposition:启用V-HACD算法。
PCA enabled:在应用凸分解之前启用/禁用网格正态化。
Voxel-based:如果启用,则使用基于体素的近似凸分解,否则使用基于四面体的近似凸分解。
Resolution:体素化阶段生成的最大体素数。
Depth:最大剪切阶段数。在每个分割阶段,根据最佳裁剪平面裁剪所有模型部件(凹度高于用户定义的阈值)。
Concavity:最大凹度。
Plane downsampling:控制搜索最佳裁剪平面的粒度。
Convex hull downsampling:在裁剪平面选择阶段控制凸壳生成过程的精度。
Alpha:控制沿对称面剪切的偏置。
Beta:控制沿旋转轴剪切的偏置。
Gamma: 合并阶段允许的最大凹度。
Max. number of vertices / convex hull控制每个凸包的最大三角形数。
Min. volume / convex hull:控制生成的凸包的自适应采样。

9.1.12.4 Shape properties 形状属性

形状属性是场景对象属性对话框的一部分,对话框位于[菜单栏—> Tools—> scene object properties]。你也可以双击场景层次结构中的对象图标,或者点击它的工具栏按钮来打开对话框:
在这里插入图片描述

在“场景对象属性”对话框中,单击“Shape ”按钮以显示“Shape ”对话框(“Shape ”按钮仅在最后一个选择为形状时才出现)。对话框显示最后选择的形状的设置和参数。如果选择多个形状,则可以将一些参数从最后选择的形状复制到其他选择的形状(适用于选择按钮):
在这里插入图片描述

Adjust color 调整颜色:允许编辑形状的颜色。
Shading angle 阴影角:阴影角是区分面的角度。这只影响形状的视觉外观。小角度使形状显得尖锐,边缘多,大角度使形状显得光滑,边缘少。
Show edges 显示边缘:以黑色显示边缘。显示的边将取决于指定的角度。如果选中隐藏边框,则隐藏不共享多个三角形的边。
Backface culling 背面剔除:构成形状的每个三角形都有一个内表面和一个外表面。当启用内表面剔除功能时,将不会显示内表面。对于封闭形状和透明形状,这是一个有用的参数。
Invert faces 翻转面:翻转所有三角形。内面变成外面,反之亦然。除了纯形状外,凸形状将变为非凸形状。
Wireframe 线框:如果被选中,那么当通过摄像机看到形状时,它将始终显示为线框。
Adjust texture 调整纹理:打开选定形状的纹理对话框。当形状与纹理相关联时,它将以纹理的方式显示。
Quick textures (selection) 快速纹理(选择):应用一个立方体映射纹理到所有选定的形状。当用作为“dirt”,这是特别有用的无缝纹理,以使对象看起来更真实。
Clear textures (selection) 清除纹理(选择):从所有选定的形状中移除纹理。
Show dynamic properties dialog 查看/修改几何图形:打开所选形状的形状几何对话框。*它允许调整各种参数的网格。
显示动态属性对话框:切换形状动态属性对话框。形状动态对话框允许调整形状的动态属性。

上面的一些参数只适用于简单的形状。选择复合形状后,可以通过切换到复合形状的形状编辑模式来编辑其可视属性。当然,您也可以对其进行分组,以便单独编辑其组件。

9.1.12.4.1 Shape dynamics properties 形状动态属性

形状动态对话框是形状属性的一部分。对话框显示最后选择的形状的动态设置和参数。如果没有选择对象,则对话框处于非活动状态。如果选择多个形状,则可以将一些参数从最后选择的形状复制到其他选择的形状(适用于选择按钮):
在这里插入图片描述

Body is respondable:如果启用,则形状将与其他可响应的形状产生碰撞反应,但仅当相应的可响应掩模重叠时(参见下面的项目)。 有关更多详细信息,另请参见设计动态模拟部分。

Respondable mask:指示何时生成碰撞响应(然而,需要启用上述可响应项目)。 掩码由两个8位值组成,局部和全局。 如果两个碰撞形状共享它们的任何父项(直接或间接),则使用本地掩码,否则使用全局掩码。 如果两个形状的AND组合掩模(局部或全局)与零不同,则将生成碰撞响应。

Material:所选形状的选定材料。 材料属性将所有动态引擎特定属性(例如摩擦,恢复原状等)分组,并且可以与其他几种形状共享。 可以通过材料属性复制(复制),查看和修改(编辑)材料。

Body is dynamic:当启用时,形状的位置和方向将在动态仿真中受到影响。有关详细信息,请参阅设计动态仿真部分。

Start in sleep mode:动态模拟的可响应形状可以在睡眠模式下开始,在这种情况下,它不会对约束(例如重力)做出反应,直到它首次与另一个可响应的形状碰撞。

Set to dynamic if gets parent:如果启用并且形状附加到另一个对象,则形状将自动变为动态。 这对于自身时应该是静态的模型基础非常有用,但是当与另一个模型/对象结合时是动态的(例如,自行操作的机器人操纵器通常具有静态基础,但是当连接到车辆时,则基础 应该成为动态)。

Compute mass & inertia properties for the selected shapes:通过单击此按钮,您可以根据材料均匀密度自动计算所选凸形的质量和惯性属性。

Mass:形状的质量。 选定的形状的质量可以通过M = M * 2(用于选择)和M = M / 2(用于选择)按钮增加或减少2倍。 这样可以通过反复试验快速找到稳定的模拟参数。

Principal moments of inertia / mass:无质量(即除以形状的质量)的主惯性矩。 通过I = I * 2(用于选择)和I = I / 2(用于选择)按钮,所选择的形状可以使其质量较小的惯性值容易地增加或减少2倍。 这样可以通过反复试验快速找到稳定的模拟参数。

Pos./orient. of inertia frame & COM relative to shape frame:惯性框架和质心的配置相对于形状的参考系表示。

Set inertia matrix & COM relative to absolute frame:打开惯性矩阵对话框,允许指定相对于绝对参考系的惯性属性:
在这里插入图片描述
Inertia matrix divided by the mass:惯性矩阵或张量。 值无质量(即除以形状的质量)。 矩阵必须相对于形状的质心表示(即矩阵是对称的)。
Position of the center of mass:质心位置
Apply to selected shapes:当选中时,所有选定的形状将具有相对于绝对参考系相同的惯性属性(即,所有质量中心和惯性矩阵将重合)。

9.1.12.4.2 Material properties 材料特性

可以通过 shape dynamics properties dialog 访问材料属性(即与形状相关的动力学引擎属性)。 最后选定形状的材质属性显示在对话框中:
在这里插入图片描述
Material name:材料的名称。 只能针对用户定义的材料进行修改。

B u l l e t − p r o p e r t i e s Bullet -properties Bulletproperties
与Bullet物理库相关的属性。 有关详细信息,请务必参阅Bullet用户手册。

Friction (only Bullet V2.78): 仅在Bullet V2.78中使用的摩擦值。 两个碰撞对象的组合摩擦值为value1 * value2。 这不符合实际的摩擦系数。

Friction (after Bullet V2.78):在Bullet V2.78版本后中使用的摩擦值。 两个碰撞对象的组合摩擦值为value1 * value2。 这不符合实际的摩擦系数。

Restitution:一个回弹值。 较高的值往往会使碰撞看起来具有弹性。 这与真实的恢复系数不对应。

Linear damping: 线性运动阻尼值,增加线性阻力,可以增加稳定性。

Angular damping: 角度运动阻尼值,增加角度阻力,可以增加稳定性。

Sticky contact (only Bullet V2.78): 当这个项目被选中,接触点将非常强,但可能导致不稳定。 建议禁用此功能。 V2.78之后的Bullet版本不需要此功能

Auto-shrink convex mesh: 当选中此项时,凸网格将在内部收缩,以补偿碰撞边际系数。 建议禁用此功能.

Custom collision margin factor: 当custom collision margin (自定义碰撞边距)设置为true时,此因子将覆盖默认的碰撞边际系数。 碰撞余量有助于提高稳定性。 建议保留默认的碰撞边际系数。

O D E − p r o p e r t i e s ODE-properties ODEproperties
与Open Dynamics Engine相*\关的属性。 有关详细信息,请务必参阅ODE用户手册。

Friction:摩擦值。 两个碰撞对象的组合摩擦值为value1 * value2。 这不符合实际的摩擦系数。

Maximum contacts: 要生成的接触点的最大数目。 两个碰撞对象的最大接触值组合为(value1 + value2)/ 2。

Soft ERP:接触法线的误差减少参数,这对于使表面柔软是有用的。 两个碰撞对象将具有(value1 +value2)/ 2的组合soft ERP值。

Soft CFM: 接触法线的约束力混合参数,这有助于使表面柔软。 两个碰撞对象的组合soft CFM值为(value1 + value2)/ 2。

Linear damping: 线性运动阻尼值,增加线性阻力,可以增加稳定性。

Angular damping: 角运动阻尼值,增加角度阻力,可以增加稳定性。

V o r t e x − p r o p e r t i e s Vortex -properties Vortexproperties

与Vortex Dynamics引擎相关的属性。 有关详细信息,请务必参阅Vortex用户手册。

Restitution: 碰撞正常响应弹性从0(无弹性)到1表示纯弹性。
Restitution threshold:速度阈值,低于该阈值可以忽略恢复原状。
Compliance: 材料柔软度(1 /刚度)。
Damping: 正常响应阻尼,用于软接触(低刚度)。
Adhesive force: 在接触处产生粘合力。
Linear velocity damping:人工线速度阻尼。
Angular velocity damping:人工角速度阻尼。
Auto angular damping enabled:在大张力下对刚体进行自我管理的角度阻尼。不推荐用于车轮或滚动物体。
Auto angular damping tension ratio:自我管理角度阻尼算法的比例因子。
Skin thickness:使材料在外皮厚度内更加柔软(使抓取更加稳定)。
Auto-slip enabled:自动管理接触粘度。
Fast moving:在碰撞检测期间启用额外检查,以防止深度穿透或隧道效应。
Treat pure shape as VxConvexMesh:将纯形状处理为凸形。
Treat convex shape as VxTriangleMeshBVTree:将凸形处理为OBB树数据库(通常比凸形更精确和稳定)。
Treat random shape as VxTriangleMeshUVGrid:将随机形状处理为2D网格数据库(对于大型地形数据库更有效)。 2 VxTriangleMeshUVGrids永远不会相互碰撞。

Auto-sleep:允许禁用非移动对象以节省模拟时间的功能。当所有速度,加速度都在相应的阈值内时,一部分被认为是睡眠:
Threshold linear speed:线速度阈值。
Threshold linear acceleration:线性加速度阈值.
Threshold angular speed:角速度阈值。
Threshold angular acceleration:角加速度阈值。
Threshold steps:在再次进入睡眠状态之前,部件必须唤醒的最小步数。

Linear primary axis:摩擦平面中的轴。
Axis orientation:指示主轴方向的矢量(矢量将投影到摩擦平面中)。矢量相对于形状参考系。
Friction model:沿此轴的摩擦模型。
Friction coefficient:摩擦系数(used for scaled box and scaled box fast model)。
Static friction scale:静摩擦/动摩擦比。
Slip:摩擦粘度。
Slide:沿此轴摩擦所需的相对速度。

Linear secondary axis:定义摩擦平面的第二轴。
Angular primary axis:允许在主轴周围添加角摩擦(滚动阻力)。
Angular secondary axis:允许在辅助轴周围添加角摩擦(滚动阻力)。
Angular normal axis:允许在法线轴周围添加角摩擦(旋转阻力)。

N e w t o n − p r o p e r t i e s Newton -properties Newtonproperties
与Newton Dynamics Engine相关的属性。 有关详细信息,请务必参阅 Newton user manual。

Static friction:静摩擦系数。 两个碰撞对象的组合摩擦值为value1 * value2。
Kinetic friction:动摩擦系数。 两个碰撞对象的组合摩擦值为value1 * value2。
Restitution:恢复系数。 较高的值往往会使碰撞看起来具有弹性。 两个碰撞对象的组合恢复值为value1 + value2。
Linear drag:线性拖动值,可以提高稳定性。
Angular drag:角度阻力值,可以提高稳定性。
Fast moving:在碰撞检测期间进行额外检查,以防止深度穿透或隧道效应。

V o r t e x − a d d i t i o n a l − i n f o r m a t i o n Vortex- additional -information Vortexadditionalinformation
材质属性定义单个形状在与其他形状碰撞时的行为方式。碰撞涉及两种形状及其各自的材料特性。接触材料将这两种材料属性组合成一组合并的属性,用于在模拟执行期间生成两个碰撞形状之间的接触力。合并两种联系材料的规则如下:

Compliance:采取最合规和相关的阻尼和恢复。
Adhesive force:使用较大的值。
Skin thickness:使用较大的值。
Friction model:如果两个模型不同,优先级如下:none,boxProportional,scaledBox,scaledBoxFast,box,neutral。摩擦模型的定义是:
无:没有摩擦。
BoxProportional:不适用。
ScaledBox:摩擦边界=法向力*摩擦系数。
ScaledBoxFast:使用上一步中的接触匹配和接触力。 回到scaledBox寻找新的接触.
Box:不适用。
Neutral:最低优先级,因此使用其他模型。如果两者都是中性的,则它是无摩擦的。
如果两个型号相同,则使用最低摩擦系数。
如果摩擦不是各向同性的,则可以在限定摩擦平面(线性主轴和副轴)的2个方向上提供不同的摩擦特性。轴方向是对象本地框架中的向量。它在摩擦平面中的投影定义了线性主方向。轴方向仅用于各向异性材料。如果两个各向异性材料相互作用,将使用其中一个,用户当前不能优先考虑哪一个。

  • 15
    点赞
  • 71
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
V-REP用户手册是指V-REP仿真软件的用户指南,该软件是一款功能强大的机器人仿真平台。V-REP用户手册提供了关于如何使用V-REP软件的详细指导和说明。用户手册分为多个章节,涵盖了V-REP软件的各个方面。 首先,V-REP用户手册介绍了软件的安装和启动过程,包括了适用于不同操作系统的操作说明。然后,手册详细介绍了软件界面的各个组件和功能,如场景层次结构、物体和模型管理、相机设置等。对于初学者来说,这些内容对于了解软件的基本操作非常有帮助。 此外,V-REP用户手册还提供了关于物理引擎的说明,解释了如何设置和模拟不同类型的物理对象。手册还介绍了如何添加传感器、控制器和动作规划算法,以实现更复杂的仿真任务。手册还提供了关于远程API接口的说明,这使得用户可以通过编程来控制和监控仿真实验。 除了基本功能的介绍,V-REP用户手册还包含了一些高级功能的使用教程,如路径规划、机器人学习和视觉传感器。用户手册还提供了一些常见问题和故障排除的解决方案,以帮助用户解决在使用软件过程中遇到的问题。 总之,V-REP用户手册是一本全面指导用户如何使用V-REP软件的重要参考资料,可以帮助用户快速上手并实现各种机器人仿真任务。无论是对于学生、研究人员还是工程师来说,V-REP用户手册都是一本不可或缺的工具书。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值