原文作者:朱飞翔 - 西门子工业技术支持中心 遇到客户问: 工厂里有几百个电机,每个电机都有成组的控制命令和状态数据,手动建千百个按钮和I/O域,再去连千百个变量,我要疯了 ![]()
总之,就是想要:简单!复用!省时! WINCC 的答案就是: 面板!直接拖拽“结构变量”到画面中,搞定 ![]() 本文以示例方式来介绍这个话题,包括:
WinCC 中直接拖拽“结构变量”到画面中,自动生成3个不同面板(Faceplate)实例,对应现场3个实际对象,显示各自的状态。 ![]() 注:最新版WinCC 7.5 SP2还可以一次性拖拽多个UDT变量,自动生成多个面板实例!
新建PLC项目,并创建用户数据类型“TankUnit” 新建数据块“MyDB”,然后创建三个数据类型为“TankUnit”的变量,Tank1、Tank2和Tank3。
鼠标右击 PLC 项目的名称 (需安装SIMATIC SCADA Export导出工具: https://support.industry.siemens.com/cs/de/en/view/109748955/zh) 导出Zip格式文件,完成博途Step7中的组态
在WinCC变量管理的PLC连接中导入变量。选择“从文件中加载”。选择前面导出的ZIP文件。 在打开的界面中,在“AS 结构”页,选择结构“TankUnit”,在鼠标右键弹出菜单中选择“创建结构”。WinCC 中就创建了和PLC相同的结构类型。 然后在左侧选中“ProgramBlocksFolder->MyDB”数据块,在画面中间的“AS 符号”标题栏点击鼠标右键,在弹出菜单中选择“全选”。 画面中的“访问”项将被激活。PLC 中的变量成功导入到WinCC项目 在变量管理中,选中新建的连接,并切换到“变量”页。就可以看到新创建的变量。 修改WinCC中的结构变量,在“TankUnit”中新建一个结构类型元素“Name”,并设置为内部变量。完成WinCC中结构变量的创建
在WinCC图形编辑器中选择“文件->新建面板类型”。在面板中添加对象。并设置静态参数。如面板的画面宽度为200,高度为280等。本例中添加:静态文本1、输入输出域1、条形图1、按钮1和2个SVG对象。其中一个是“SVG全局库-> 通过图形编辑器“编辑->组态面板类型”菜单,打开组态面板类型对话框。切换到“变量”页。通过拖拽方式把“变量/结构类型”中的“TankUnit”添加到左侧“所选变量”中,然后把相应对象的属性拖拽到变量下。 还可鼠标右键选择相应的对象设置更新周期。 ![]() 面板中各对象的功能 其中,静态文本1、输入输出域1和条形图1这三个控件已经通过拖拽方式和变量建立了关联。对于按钮1首先需要设置“属性->效果->全局颜色方案”为“否”。然后在“事件->鼠标->单击鼠标”中添加VBS动作并编写脚本。该脚本用于切换“TankUnit.State”的状态。 ![]() 用“TankUnit.State”的值控制按钮1的背景颜色来显示运行结果。“TankUnit.State”为1时显示绿色,为0时显示红色。在按钮1的“动画”页,双击“添加新动画”添加“动态化属性0”,在“过程”中激活“实例特定变量”,然后选择“TankUnit.State”作为变量。通过添加属性添加“背景颜色”属性。实现变量特定数值和对象属性颜色之间的关联。 对于SVG对象(Valve),用“TankUnit.Valve”的值控制对象的颜色。“TankUnit.Valve”为1时对象显 |
/1
|手机版|免责声明|本站介绍|工控课堂
( 沪ICP备20008691号-1 )
GMT+8, 2025-12-22 22:34 , Processed in 0.069517 second(s), 23 queries .
Powered by Discuz! X3.5
© 2001-2025 Discuz! Team.