如何能快速或者自动 使大量iofield等组件与变量关联

变量与iofield等组件多了 工作量很大 如何能快速或者自动 使大量iofield等组件与变量关联

最佳答案

我一般用以下两种方法:

1、新建一个对象,组态好变量连接、脚本等,复制大量相同对象,使用对象的 Linking -> Tag Connections -> Find and Replace 来替换掉对象变量连接、脚本中的变量。
该方法比较简单,当变量名有规律时组态时间短,具体可参考:
《WINCC中的C动作可以复制吗?》
http://www.ad.siemens.com.cn/service/answer/solution.asp?Q_id=66056&cid=1032

2、对于编程工程师提给的变量 Excel 文件,变量较多时使用上一种方法组态费时,可以使用 Graphics Designer 的 VBA 即 Macro 功能。
在 Graphics Designer 中选择 Tools -> Macros -> Visual Basic Editor,或者 Alt+F11 打开宏编辑环境,该环境与 Excel 的宏环境类似。需要有一定的 VBA 基础,下面贴出一个简单的例程。在 D:\test1.xls 工作簿的 sheet2 工作表中,第一列为 I/O 区域含义文本,第二列为 I/O 区域直连变量。
Sub CreateIOField()
Dim objStaticText As HMIStaticText
Dim objIOField As HMIIOField
Dim objVariableTrigger As HMIVariableTrigger
Set Excel_1 = CreateObject("excel.application")
Excel_1.Workbooks.Open "D:\test1.xls"
Set wksheet = Excel_1.Sheets("sheet2")
j = 30
K = 5
For i = 1 To 41
If wksheet.cells(i, 2).value <> "" Then
    Set objStaticText = ActiveDocument.HMIObjects.AddHMIObject("0_MyText" & i, "HMIStaticText")
    With objStaticText
    .Text = wksheet.cells(i, 1).value
    .Left = j
    .Top = K
    .Layer = 19
    .AdaptBorder = True
    End With
    Set objIOField = ActiveDocument.HMIObjects.AddHMIObject("0_MyIOField" & i, "HMIIOField")
    With objIOField
    .Left = j + 200
    .Top = K
    .Width = 45
    .Height = 21
    .OutputFormat = 999.9
    End With
Set objVariableTrigger = objIOField.OutputValue.CreateDynamic(hmiDynamicCreationTypeVariableDirect, wksheet.cells(i, 2))
    With objVariableTrigger
    .CycleType = hmiVariableCycleTypeOnChange
    End With
K = K + 22
End If
Next
Excel_1.Workbooks.Close
Excel_1.Quit
Set wksheet = Nothing
Set Excel_1 = Nothing
End Sub

3、WinCC Add-On 也提供类似工具。
《在何处能够找到 WinCC 的附加软件和其他有用工具的信息?》
http://support.automation.siemens.com/CN/view/zh/17544346

提问者对于答案的评价:
谢谢 我试试

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc265940.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日
下一篇 2019年6月11日

相关推荐

  • WinCC6.0 sp3中建立了一个内部变量看不见

    建立一个结构类型,建立了相应的几个实例,但是有的实例能在内部变量列表中看见,但是有的看不见。如果查找,看不见的变量前有个眼睛打叉的图标,不知道这是怎么回事? 最佳答案 关于winc…

    SIMATIC WinCC 2019年6月11日
  • WinCC V7.3 使用SQL的导出向导导出变量归档问题?

    根据官方提供的技术文档,但在实际操作过程中,出现如图问题,有没有大神指点下?(手动输入数据库名,但是在导出时没有数据),一直连接不上,sql2008我没有设置密码,用的是windo…

    2021年7月5日
  • 怎样打开winccflexibleruntime软件制作的画面

    手里面有个电脑画面是winccflexibleruntime制作的,我的电脑安装有winccflexible2008sp4标准版的,还需安装个什么补丁就可以打开它吗?补丁在那下载?…

    2021年7月5日
  • Wincc通过c动作切换画面窗口

    在基本画面中有画面窗口1和画面窗口2,如何通过画面窗口中按钮,互相切换画面窗口 钻石用户推荐最佳答案 C脚本的方法很多SetPictureName,设置画面SetPropChar,…

    2021年7月5日
  • 画面插入计时器

    问题1,WINCC中是否有计时器插件2,若没有,那只有VB编程解决了那需要什么呢?静态文本?输入输出域?变量等于一开始计时,变量为零则停止计时,计时的时间值保持,另加一按钮清零功能…

    SIMATIC WinCC 2019年6月11日
  • Wincc6.2安装后上不了网

    我用的笔记本是联想的Y430,内置无线网卡是Broadcom 802.11g。   6.2装好后就上不了网了,虽然显示连接是好的,但是PIN…

    SIMATIC WinCC 2019年6月11日
  • Wincc中如何制矩形对象纵向移动

    通过在Wincc中建立内部变量,如何制作上升,下降,停止3个按钮,控制一个矩形对象的上升,下降,停止动作? 最佳答案 读取矩形的顶点坐标y,然后增加y坐标。我这个是控制矩形y坐标在…

    2021年7月5日
  • 报警不显示??

    我现在做了 报警画面 组态好后,系统产生报警,报警画面不显示故障? 变量归档没有问题,用内部变量模拟报警也没有问题。就是过程变量报警时他就不显示。是不…

    SIMATIC WinCC 2019年6月11日
  • 想让wincc运行一定时间自动弹出对话框

    没办法啊,现在咱们买软件硬件都是现钱交易,卖到用户手就不好好按合同回款,想让wincc 6.0在运行一个定时间,出现弹出对话框,折磨用户,通过授权什么都行,只是时间可由自…

    SIMATIC WinCC 2017年11月26日
  • WINCC里怎样组态常闭信号的报警

    WINCC里怎样组态常闭信号的报警?就是正常是信号是常闭(1)的,有报警时信号时触点打开(0)。 最佳答案 打开报警记录,右击某报警消息\属性\参数\打勾选中:该消息“是在下降沿创…

    SIMATIC WinCC 2019年6月11日