710 likes | 1.14k Views
GE Fanuc Automation. CIMPLICITY HMI Training Course. Presented by GE Fanuc Shanghai Office. 课程内容. CIMPLICITY 的 Workbentch 角色( Role) - 用户 ( User) - 资源 ( Resource) 通讯口 ( Port) - 设备( Device) - 点( Point) 作图与组态 OLE 与 MetaFile 文件格式的图片嵌入 对象的拷贝与连接的拷贝 Active X 控件的引用 趋势图 报警组态 数据登录与历史趋势图
E N D
GE Fanuc Automation CIMPLICITY HMI Training Course Presented by GE Fanuc Shanghai Office
课程内容 • CIMPLICITY 的 Workbentch • 角色(Role) - 用户(User) - 资源(Resource) • 通讯口(Port) - 设备(Device) - 点(Point) • 作图与组态 • OLE 与MetaFile文件格式的图片嵌入 • 对象的拷贝与连接的拷贝 • Active X 控件的引用 • 趋势图 • 报警组态 • 数据登录与历史趋势图 • DDE 通讯 • Server与Viewer的通讯 • WebView及远程访问技术 • CIMPLICITY 的开机启动设置
人机监控界面系统的构成 • 一般人机界面监控系统的构成如右 • 操作员(User)面对PC机 • PC机利用各种通讯手段与PLC建立通讯 • PC从PLC中获得数据,并利用PC的强大图形功能动态显示这些数据 • PLC完成对生产设备的控制 User PC PLC Pump
Workbentch • 按 Start - Program - CIMPLICITY - HMI - Workbentch 操作,即打开了 Workbentch • Workbentch 包含了某个工程的所有组态内容 • Screens:监控画面及动态组态 • Points:从PLC中读取的、或虚拟的变量 • Alarm:报警信息的组态 • Database Logger:组态将本工程中的点登录到数据库文件中 • Event Editor:编辑当工程运行时,由点值变化、报警触发产生的事件
创建新工程(Project) • 在 Workbentch 中,按File - New - Project 操作,可创建一个新工程(Project) • 输入工程名及工程所在的硬盘子目录 • 选中 Basic Control:在工程中要用到 VB 编程 • 选中 Database Logger:要用到数据存盘功能 • Protocols:本工程要用哪些通讯协议与PLC 通讯 • 选中 SNP通讯协议,表明本工程将与90系列PLC作串行通讯 • 按下 Create,再按下 OK 和 Close,关闭工程创建向导,一步步对本工程组态
角色-用户-资源 Role(Sysmgr) Role(Operator) (角色) (用户) User (端口) Port Resource (资源) Resource (设备) Device Point (点)
角色-用户-资源 • 角色(Role):一组使用监控计算机的人,这一组人具有相同的操作权限 • 用户(User):要使用监控计算机的每一个人,每个用户有自己的标识符(User ID)及登录密码,用户还可以有自己的名字(User Name) • 资源(Resource):由PLC控制的、被用户所监控的对象,这是一个抽象的概念,它可以是一条生产线、也可以是一台泵
定义角色(Role) • 在Workbentch 的Security 项中,点击Role,可看到本工程中默认的三个角色:SYSMGR、OPERATOR、USER • 双击某个角色,可以修改这个角色的权限 • Dynanmic Configuration:可以动态修改组态内容 • Process Control:可以切换流程图画面 • Delete Alarm:可删除报警
定义用户(Users) • 在Workbentch 中,点击Security 下的User项,可以看到本工程中的所有用户 • 双击某个用户,可以改变该用户的属性 • Role:将该用户定义成某个角色
创建新用户(Users) • 在Workbentch 中,点击Security 下的User 项,再单击鼠标右键,选择New,即可创建新用户 • User ID:用户的标识符,一个工程中的所有用户必须有唯一的标识符,用户登录时以标识符登录 • User Name:用户的姓名
定义资源(Resource) • 在Workbentch 的Security 项中,点击Resource,再单击鼠标右键,即可创建新的资源 • 创建资源时,须定义该资源隶属于哪几个用户
端口 - 设备 - 点 • 端口(Port):计算机用来与PLC 通讯的通讯端口,可以是串行口(COM1、COM2),也可以是计算机上的以太网卡、令牌环网卡、DDE通讯通道 • 设备(Device):与监控计算机通讯相连的PLC,这些设备挂在计算机的通讯端口下 • 点(Point):监控计算机从PLC 中读取的变量、或者是计算机内存中的虚拟变量(不对应于 PLC 中的某个变量) 端口 设备 点(Point)
定义端口(Port) • 在Workbentch 的Equipment 项中,点击Port,再单击鼠标右键,选New,即可创建新端口(Port) • 创建端口时,须定义该端口的通讯协议(Protocol),选 SNP协议与系列90 PLC通讯 • 选择端口的物理设备:COM1 • Scan Rate:端口的通讯刷新速率,即每隔多少时间,监控软件通过该通讯口去读取PLC中的数据 1 tick = 10ms
定义设备(Device) • 在Workbentch 的Equipment 项中,点击Device,再单击鼠标右键,选New,即可创建新设备(Device) • Device:给新设备起个名字 • 创建设备时,须定义该设备挂在哪个通讯端口下,选 MASTER_COM1,表明该设备挂在串行口 COM1 下 • Resource:选择该设备属于哪个资源,即:将该设备分配给某个资源 • Model Type:选择 PLC 的型号
定义点(Point) • 在Workbentch 的Equipment 项中,点击Point,再单击鼠标右键,选New,即可创建一个新点(Point) • Point ID:给新点起个名称,最多32个字符 • Type:定义点的类型,是来自于PLC,还是内存虚拟点 • 有两种点的来源:Device Point - 设备点,对应于PLC中变量的点,Virtual Point - 虚拟点,计算机内存中的点,不对应于PLC中的变量 • 如果是 Device Point,须定义点来自于哪个设备(Device) • Point Class:定义点的类别,Analog - 字或字节型变量,Boolean - 位型变量
定义设备点(Device Point) • 定义设备点时,点组态窗口中的 General 菜单如右 • Data Type:点的数据类型,INT - 16位整型数,REAL - 32位浮点数 • Element:必须大于等于1,如果大于1,则表明该点为数组型变量,可使数组点对应于 PLC中的一组连续地址 • Trend History:在计算机内存中为该点建立缓存区,保持该点在以前一段时间内的数值,为实时趋势图提供历史数据
定义设备点(Device Point) • 定义设备点时,点组态窗口中的 Device 菜单如右 • Address:点在 PLC 中的变量地址,%R1代表系列90 PLC的寄存器1,%Q1代表开关量1 • Update Criteria:定义点如何被刷新,On Scan - 按照端口的刷新频率更新点值,Onchange - 点值在PLC中变化时才被更新,On Demand OnScan - 点在当前画面上显示时才被周期性更新 • Diagnostic Data:定义该点为通讯故障诊断变量,此时,Address 处应填写固定格式的字符:$DEVICE_UP
定义虚拟点(Virtual Point) • 定义虚拟点时,点组态窗口中的 Virtual 菜单如右 • Initialize:定义该点在工程启动时是否获得初始值,None - 无初始值,Initialized - 获得初始值(初值在此窗口中定义),Saved - 上次工程运行结束时的点值被存盘作为下次工程启动时的初值,Saved orInitialized - 该点如果有上次存盘值,则取存盘值作初值;如无存盘值,则取窗口中定义的初始值作初值 • 在 General 菜单中定义虚拟点的数据类型及数组长度
不同的用户管辖不同的点 • 在Workbentch中,选Project--Properties操作 • 再选择Points--Settings操作 • 可设置两种修改点值的保护方法:Set Point Security 和 Set Point Password • 如果选择 Set Point Security,则只有当点属于某个Resource,而当前用户又管辖该Resource,该用户可以修改点值 • 如果选择 Set Point Password,则每次用户修改点值时,只需输入密码即可修改点值
组态内容更新(Configuration Update) • 每当你修改过Point、Device、Port、Role、User、Resource、Event、Database Logger 的组态内容之后,你必须作一次组态更新 • 按下组态更新键,再选择Yes 组态内容得到更新,你修改过的内容才会起作用 组态 更新键
启动工程并用Point Control Panel查看通讯及点值 • 在Workbentch中,按下“启动工程”键,整个工程被启动,与PLC的通讯驱动程序也开始工作 • 随后,选中点名、并按下鼠标右键,即进入Point Control Panel • 在Point Control Panel中,可以看到从PLC中取得的点值,如果点值显示为“ *** ”,则表明通讯没有建立 停止工程 启动工程 选中点名,按鼠标右键,选Point Control Panel
作图 (CimEdit) • 在Workbentch 中,点击Screens,再按鼠标右键,选 New 即可创建一个新的流程图画面(Screen) • 作图环境如右,菜单风格、作图工具与 Microsoft Office 一致 SPC OLE嵌入 XY画笔 多边形 文本 圆弧 趋势图 图库 按钮 报警窗口 直线 长方形 圆/椭圆
作图 (CimEdit) • 在CimEdit 中,利用作图工具,可创建文本、矩形、椭圆等对象 双击 • 双击画面上的某个对象,可得到该对象的属性设置窗口,如左 • 在属性窗口的 Color 菜单下 ,可设置对象的静态颜色,Line -- 对象的边框线色及粗细,Fill -- 对象的填充色及填充效果 • 在 Geometry 菜单下设置对象的旋转
数值显示组态(display value) • 在画面上双击文本对象,得到文本对象的属性设置窗口 • String:文本的静态显示字符 • Expression:输入一个点名或包含点的数学运算表达式 • 按下 Expression 旁的 键,可得到表达式编辑窗口,如左图 • 按下 Point Ids 键,可选择一个点
表达式编辑窗口(Edit Expression) • 在表达式编辑窗口中,你可以仅仅选择一个已定义过的点,如下图 • 也可在表达式编辑窗口中编辑一个包含某个点的数学运算式,如右图,运算式 V_INT_1 + 100 • 表达式编辑窗口中常用的运算符: +(加),-(减),*(乘),/(除),EQ(等于),GT(大于),SIN(正弦),AL(点值处于报警状态)
测试画面组态(Test Screen) • 点击画面上的测试画面按键(Test Screen),可启动整个工程,进入动态监控状态 • 工程启动的窗口如下 • 工程启动后,在登录窗口中输入 User ID 和Password (组态画面) 测试画面按键 ( Test Screen ) (动态监控画面)
填充/旋转组态(Fill/Rotation) • 双击画面上的对象,得到对象属性窗口 • 选择Rotation/Fill 菜单 • Fill -- Expression:输入点名或表达式,Expr min/max:点值变化的最小/最大值,Direction:色块填充的方向 • Rotation -- Expression:输入点名或表达式,Expr min/max:点值变化的最小/最大值,Center:旋转的中心
颜色变化组态(Colour Animation) • 双击画面上的对象,得到对象属性窗口 • 选择Color Animation,按下 键,进入表达式编辑窗口,如下 • 按下 键,进入表达式编辑窗口 • EQ 表示 “等于”
可见性组态(Visibility) • 在对象属性窗口的Color Animation菜单下,Visibility属性可定义该对象在画面上显示或消失的动态效果取决于一个表达式是否为真 • 点击 键,进入表达式编辑窗口
移动组态(Movement) • 移动组态定义对象在画面上的水平位置、垂直位置随着某个点值的大小而变化 • 在Movement菜单下,可定义对象的水平和垂直移动 • Expr.min/max:点值变化的范围(最大和最小值) • Move offset:点值变化到最大值时,对象的最大位移 • 可以按下Move offset右侧的 键来手动选择对象的最大位移
对象尺寸变化组态(Scaling) • 对象的尺寸变化组态定义对象在水平轴和垂直轴方向的尺寸随着某个点值的变化而发生变化 • Expr.min/max:点值变化的范围(最大和最小值) • Percent scale:点值变化到最大值时,对象的尺寸变化的百分比
MetaFile格式的图形拷贝 • 从Powerpoint 中拷贝一个狮子图象 • 在CimEdit 中,选Edit - Paster special 操作 • 选择按 MetaFile 文件格式粘贴对象 • 点击对象,按鼠标右键,选Convert Picture Object,即可将OLE对象转换成 CimEdit 中的目标对象 • 转换之后的图形对象可以被Ungroup • 利用这种方法,可以将Visio、AutoCAD和CoreDraw中的图片转换进来
使用图库中的对象及处理成组对象 • 从图库中用蜀标拖曳对象到画面上 • 用鼠标双击该对象,在Group菜单下可以找到这个成组对象的每个元素 • 双击单个元素的图标,可以编辑该元素的属性 双击后编辑单个 元素的属性
对象的拷贝(Copy & Links Copy) • Copy:简单地将源目标拷贝至其他位置或另一幅画面中。可利用Edit下的Copy/Paste操作,也可按住Ctrl键,用鼠标拖曳。源目标的组态内容和其他属性也被拷贝过去,拷贝后的目标是一个独立的图形对象,修改源目标的组态或其他属性不影响拷贝后的目标 • Links Copy:按住Ctrl+Shift键,用鼠标拖曳,将源目标“连接拷贝”至另一幅画面上。修改源目标的属性及组态内容,画面存盘后,拷贝后的目标也跟着改变 按住ctrl+shft
事件组态(Event) • 事件(Event):用户在动态监控时,用鼠标点击某个对象、或按下键盘上的某个键、或当某个表达式为真时,就触发产生事件 • Expression High:表达式为真时触发事件 • Mouse Up:鼠标按下后弹起时触发事件 • Key Down:键盘上某个键被按下时(瞬间)触发事件 • 触发产生的事件可以执行CIMPLICITY所提供的操作(Procedure),也可执行一段 VB 小程序
事件对应的操作(procedure) • 产生的事件可以执行CIMPLICITY所提供的操作(Procedure),如下 • 一个操作(Procedure)可以包含若干个具体动作(Action) • Toggle Setpoint:将位型的点值0变1,1变0 • Absolute Setpoint:赋数值给某个点 • Open Screen:打开新的画面 • Close Screen:关闭画面
事件对应的操作(Advanced) • 在Procedure的Advanced菜单下,可定义该操作的执行条件和确认信息 • Confirmation:执行该操作前需要用户确认 • Success: 该操作成功执行后的显示信息 • Failure: 该操作执行失败后的显示信息 • Execution condition:定义该操作的执行条件,只有当Expression的表达式成立时,该操作可以进行
事件对应的脚本程序(script) • 一个事件也可执行一段 Basic Control 的脚本程序(Script) • 脚本的编辑环境类似于 VB,并提供几乎所有的 VB 语句 • 在脚本程序中,用PointGet 和 PointSet 来读写点值 • 左边的这段脚本程序完成的功能:每次鼠标点击对象,点V_INT_1自加 1
编写隶属于对象的脚本程序(script) 与VB一样,CIMP允许 用户创建一段隶属于图 形对象的脚本程序,并 由其他图形对象的事件 触发调用这段程序。 • 如左图,为椭圆这个图形对象起个对象名称:obj1 • 在Script菜单下选择Edit操作 • 编辑一段脚本程序,如右图 • 脚本程序的名称为 tes • 对Button对象组态:Event--Mouse UP--New Procedure • 对Procedure的组态如上图,则动态监控时,每次按下Button键,tes脚本程序被调用
使用临时变量(Variable) • 所谓Variable,是指:在对图形对象组态时,还不明确该对象要与哪个“点”相连;这时,可用Variable参与组态 • 如右图,椭圆与text已被成组(Group) • 双击这个Group对象,在Variable菜单下创建临时变量:value 双击这个Group对象, 在Group菜单下,再双击text元素,在Text菜单下的Express:填入{value}。{value}代表value是临时变量。 拷贝这个Group对象, 在Variable菜单下,将“点”赋值给临时变量,如左图。
Active X控件 • 用OLE工具在画面上插入ActiveX控件,如右图 • 选择Microsoft Form 2.0 ComboBox,该控件出现在画面上,如下图 • 在该控件的属性窗口中,选General菜单,设置控件的目标名称为::Actx1 • 该控件可用来显示点值,其下拉按钮可选择数值赋给相应的“点”
利用Active X控件显示点值 • 在控件的属性窗口中,在Script菜单下编写脚本程序对控件赋值,如右图 按下鼠标右键,选ActiveX Properties--Value Of--Value • 对该控件创建如下事件:Event--Expression Update--New Procedure • 在Procedure的定义中,组态该事件调用已编好的脚本程序: Display
给Active X控件赋初值 • 右图中的程序将 0、2、4三个初值赋给该控件,即点击下拉按钮,会出现这三个可选值 按下鼠标右键,选ActiveX Methods--Call--AddItem • 对该控件创建如下事件:Event--Screen Open--New Procedure • 在Procedure的定义中,组态该事件调用已编好的脚本程序: init
利用Active X控件向点赋值 • 用户点击该控件的下拉按钮,并选择三个数值中的一个后,即产生了ActiveX Event -- Change事件 按下鼠标右键,选ActiveX Properties--Value Of--Value • 对该控件创建如下事件:ActiveX Event--Change--New Procedure • 在Procedure的定义中,组态该事件调用已编好的脚本程序: setp
趋势图组态(Trending) • 在画面上选择趋势图工具,用鼠标调整趋势图大小 • 双击趋势图,得到属性窗口,如下 • 在 Line菜单下, Line type:选择趋势曲线的类型 -Expression: 实时趋势图 -Logged: 历史趋势图 实时趋势图: 曲线上的数值来自于当前点 值或内存中的点缓存区 历史趋势图: 增加一条曲线 曲线上的数值来自于硬盘上 的数据库记录
趋势图组态(Trending) Expansion: 曲线插补方式 -Step: 阶梯插补 -Smooth: 直线插补 • 在一个坐标内,可以有多根趋势曲线,实时曲线和历史曲线可以共存在一个坐标内 • 点击曲线标识左边的色块,可以选择曲线的颜色 Expression:输入要作趋势图的点名 Display:设置趋势曲线的插补方式
趋势图组态(Trending) • 在Axis菜单下可设置坐标轴,也可添加新的坐标轴 Duration time: 时间(X)轴长度 增加一根坐标轴(X或Y轴), 可使得同一坐标内有多对X/Y 轴 Foreground color: 曲线边框颜色 Background color: 图框底色 Chart color: 趋势图底色 Auto refresh: 曲线被压缩、平移后恢复刷新的时间间隔 Runtime refresh: 曲线刷新时间间隔
报警组态(Alarm) • Alarm Class:报警级别,每个具体的报警隶属于某个级别。同一级别的报警具有相同的颜色和报警声音 • Alarm String:用于在报警信息条里显示报警四种状态(低低、低、高、高高)的文本 • Alarm Printer:报警打印机,定义报警信息即时打印到哪台打印机 • Alarm Blocking:定义报警的主次关系,高级别报警可抑制低级别报警
报警级别(Alarm) • Order:报警的级别号,从0-99,级别越低,报警级别越高 • Foreground/Background:定义报警信息条的字符颜色及文本行底色 • Audio support:该级别的报警是否触发声音文件 • 如果选中Audio support,需要启动Program--CIMPLICITY--HMI--Alarm Sound Manager来支持声音播放
报警组态(Alarm) • 在点组态窗口中,选择Alarm菜单即可组态报警 • Alarm Message:报警信息条,将显示在报警窗口中。报警信息条中可嵌入%VAL(报警点值)、%State(报警状态)。 • Alarm Class:定义该报警属于何种级别 • Alarm String:定义该报警的四中报警状态用哪组文本串显示 • Hi-2:报警高高限值,Hi-1:报警高限值,Lo-1:报警低限值,Lo-2:报警低低限值 • Alarm Type:报警产生的准则。Absolute:按点值的大小产生报警;Deviation:按点值与另一个数值的差值的大小产生报警;Rate of Change:按点值的变化率的大小产生报警