一、E3D介绍
Demo3D细分为四个版本Demo3D、Sim3D、Emulate3D与Emulate3D Ultimate。
Demo3D • 侧重物流仓储系统设计、仿真、展示,并扩展到制造、加工等行业的设计、仿真展示通用平台。
Sim3D • 基于Demo3D功能,添加了数据分析功能。
Emulate3D •结合PLC,在Demo3D基础上增加了控制与测试功能,用于物流设备的逻辑验证与控制。
Emulate3D Ultimate •具备Demo3D,Sim3D与Emulate3D的所有功能的最高版本。
二、E3D界面
对我来说常用的几个位置如下图所示:
帮助文档:Welcome (sim3d.com)
2.1选择模式和浏览模式
选择模式可以选择并修改模型实体,浏览模式只可以查看模型,不能对模型进行修改。实体的鼠标右键弹窗、地面渲染等都不一样
选择模式:
浏览模式
2.2编辑定制属性
点击该按钮会弹出以下弹窗:
每个实体都可以创建独有的属性,该属性可以用以关联PLC变量,同时该属性的变化也可以引起Updated事件的发生。
界面常用的是Name和Type列,Type列定义该属性的类型。
Type里面可选的类型非常多,除了常见的Int/Float/String等,还有E3D内部的一些数据类型,比如Visual/VisualList/Script等等,在 案例1:自创组件,可以一键自动连接场景中的其他相关组件 中可以看到能够实现较为复杂的应用。
也可以通过代码进行属性的添加
2.2.1代码添加方法一
function AddCustomProperty( name : String, type : Type, value : Object, description :String )
Parameters
name 属性名称
type 属性的类型
value 属性的初始值
Description 对此属性的描述
function 气动开关DN40阀1_OnReset( sender : Demo3D.Visuals.Visual )
{
if(!sender.HasProperty(“kState”)) //判断是否存在State属性
{
sender.AddCustomProperty(“kState”,Int32,0,”阀门开启状态”);//定义State属性 默认值为0//系统自动识别为int类型
}
sender.kState = 0; // 重置后计数为0
}
2.2.2代码添加方法二
function AddSimpleProperty( name : String, value : Object, description : String )
Parameters
name 属性名称
value 属性的初始值
Description 对此属性的描述
function 气动开关DN40阀1_OnReset( sender : Demo3D.Visuals.Visual )
{
if(!sender.HasProperty(“kState”)) //判断是否存在State属性
{
sender.AddsimpleProperty(“kState”,0,”阀门开启状态”);//定义State属性 默认值为0//系统自动识别为int类型
}
sender.kState = 0; // 重置后计数为0
}
2.3动画运行以及重置功能
重置为回复初始状态,为开始运行,为停止运行,为运行速度调整。
重置按钮会引发实体的OnReset事件的发生。
2.4IO Brower
点击IO Brower会打开以下界面:
在此界面上点击Add按钮,弹出添加驱动界面,可选的驱动有常用的Modbus/EtherNetIP/S7/TCP/UDP/OPC DA/OPC UA等等。
这里我们可以选OPC DA的方式,在OPC选项卡选择响应的OPC服务。
点击OK后,在左侧的树状栏内就会刷新出该OPC服务下所有的标签。
在上侧的工具栏中将Monitor按钮选中,如下图所示
在右侧进行标签的关联,此处先填写Name,再填写其他信息。另外Property中的属性名称即为[2.2编辑定制属性]中创建的属性。
这样PLC中的变量就与该属性进行了绑定。
2.5层级窗口
2.5.1快速区分每个模型实体的归属和组合信息
如下图所示”气动开关DN40阀1″为父级parent,”阀体””螺栓”等为该父级的子级children,了解实体的组合状态能更方便后续编程。
也可以将实体从一个父级拖到另一个父级中。
2.5.2快速选择
可以在每个单独的实体上进行选择,以便查看该实体的属性窗口;右键单击,弹出该实体的操作菜单等。
2.5.3.区分实体类型
每种实体类型对应的属性、事件、方法都不太一样,需要注意区分。比如导入的模型Visual类型就不能通过编程进行颜色变化。
2.6组件库
若无Robots组件库,在组件库的任一位置右击弹出菜单选择”Open Catalog “,在Demo3D的安装目录下,Catalogs文件夹里打开Robots。
用户自定义组件库采用同样方法加载(自定义组件的保存目录)。
2.7属性窗口
工具栏-排序,简单属性,搜索,编辑定制属性,加入属性复制,添加/删除简单属性,脚本名称等
- 排列顺序:属性按照字母顺序排列。默认为按照分组排列
- 简单属性: 切换简单属性。默认为被选中状态(命 令被选中时,该命令有背景颜色),属性窗口显示简易属性 (常用属性)。
- 搜索 :搜索属性的名称快速查找属性。
- 编辑定制属性:用户添加自定义属性,与[2.2编辑定制属性]功能一致
- 加入复制属性:把属性添加至”批量复制属性”窗口中,此命令不常用,修改属性在属性窗口中修改即可
- 添加/删除简单属性:添加/移除简单属性窗口的某个属性
- 脚本名称:切换至编程代码属性名称,方便编写程序事更准 确的调用某个属性的名称
- 添加实验属性:在数据分析选择属性加入实验分析
- 自定义功能:点击后弹出该对象的自定义功能。运用时鼠标 点击某个功能即可。
2.8连接点窗口
端口或触点是指对象两端的Start与End或 两侧Left,Right等,用于定位比如输送机自动连接下一 个输送机是两个端口相连接。
端口具有方向性,如果定义完成后,看不到端口,查看端口窗口是否该端口方向为反方向。属性Normal 为端口的方向,由于在Z轴的负方向定义的端口,Normal的Z轴为-1,X,Y为0,Normal的数值仅表示方向,不是大小。一般连接点的方向都是从实体内部指向外部。
同时需要注意属性Start和End的位置,两者之间的距离定义了连接点的宽度,如无特殊需求可以设置成相同的内容。
2.8.1鼠标右键创建
右击实体弹出菜单选择Add New Connector,在New ConnectorName 中输入端口名称,如输入IN
2.8.2代码创建
定义端口的函数为Visual.FindCreateConnector(“ConnectorName”);
与定义属性一样,端口程序代码可写于OnRest事件中。创建好连接点后,建议将连接点的属性Auto Connect手动改为True。
function 气动开关DN40阀1_OnReset( sender : Demo3D.Visuals.Visual )
{
var conn : Connector = sender.FindCreateConnector(“IN”);
conn.Start = conn.End = vector(0.195/2,0,-0.07);//端口定位conn.Normal = vector(1,0,0); // 端口方向,X轴正向
var conn1 : Connector = sender.FindCreateConnector(“OUT”);
conn1.Start = conn1.End = vector(-0.195/2,0,-0.07);//端口定位conn1.Normal = vector(-1,0,0): // 端口方向,X轴负向
}
2.8.3CAD IS THE MODLE创建
在CAD IS THE MODLE的连接触点窗口编辑,如下图所示,新建连接点需要在搜索栏内输入Connector,选中后添加。
2.9事件窗口
如下图所示,OnkStateUpdated事件就是前面创建的kState属性的变化事件。
如果没创建过响应方法,需要New Jscript…。
选择JScript并点击Create&Edit按钮,进入JS编辑器[2.10]。API帮助文档:Demo3D Namespaces (sim3d.com)
版权声明:本文内容来源于网络搜集无法获知原创作者,仅供个人学习用途,若侵犯到您的权益请联系我们及时删除。邮箱:1370723259@qq.com
您好,我想和你交流一下关于e3d的问题