化工应用
生产监控画面
第一:点击提示信息后,信息文本框消失。实现方式:Private Sub Group50_Click()
user.boolShowInforMessage.CurrentValue = False
End Sub
第二:液位的自动升降。
第二:点击1号罐的“关”按钮时,弹出“按钮输入”控件,上面有三个按钮“关闭”、
“打开”、“确定”。实现方式:Private Sub MixerGroup2_Click()
'The Comments below have been added automatically.
'Any changes could cause adverse effects to the functionality
'of the Script Authoring Experts.
'WizardName=DataEntry
On Error GoTo ErrorHandler ???
If blnDataEntryFrmFlag = True Then
Exit Sub
End If
GetFormPushbutton ???(调出“按钮输入”控件)
Dim strOpenButton As String
Dim strCloseButton As String
Dim dblLow As Double
Dim dblHigh As Double
dblLow = 0
dblHigh = 1
strOpenButton = "关闭"
strCloseButton = "打开"
Pushbutton.GetTheVars a:=1, b:="Fix32.THISNODE.IFIX1_BATCH_TANK1AGITATE.F_CV"
Pushbutton.cmdOpen.Caption = strOpenButton
Pushbutton.cmdClose.Caption = strCloseButton
Pushbutton.Show
Exit Sub
ErrorHandler:
HandleError
End Sub(不懂啊)【问题:弹出的控件又是哪里来的】
第三:点击1号罐弹出“滑动器输入”控件。实现方式:
Private Sub TankBatchC1_Click()
'The Comments below have been added automatically.
'Any changes could cause adverse effects to the functionality
'of the Script Authoring Experts.
'WizardName=DataEntry
On Error GoTo ErrorHandler
If blnDataEntryFrmFlag <> True Then
GetFormSlider (调出“滑动器输入”控件)
Dim dblLow As Double
Dim dblHigh As Double
Dim blnFetch As Boolean
dblLow = ReadValue("Fix32.THISNODE.IFIX1_BATCH_TANK1LEVEL.a_elo")
dblHigh = ReadValue("Fix32.THISNODE.IFIX1_BATCH_TANK1LEVEL.a_ehi")
If (dblHigh > 32767) Then
MsgBox " The high limit cannot be greater than 32,767 for this type of Data Entry, Please choose another."
Exit Sub
End If
blnFetch = True
Slider.Slider1.min = CInt(dblLow)
Slider.Slider1.max = CInt(dblHigh)
Slider.GetTheVars a:=1, b:="Fix32.THISNODE.IFIX1_BATCH_TANK1LEVEL.F_CV"
Slider.lblLow.Caption = dblLow
Slider.lblHigh.Caption = dblHigh
Slider.Show
End If
Exit Sub
ErrorHandler:
HandleError
End Sub
Private Sub TankBatchC1_Edit()
frmTankAnim.InitializeDynamo TankBatchC1
frmTankAnim.Show
End Sub
第四:点击液位或温度值,都可以实现手动修改。(似乎自然而然)
第五:点击“上一页”、“下一页”,可以实现画面的切换。实现方式:Private Sub bmpNextPicture_Click()
' gstrCurrentButton is updated every time a menu button is clicked (using the SetButtons _
sub routine. gstrCurrentButton holds the caption of the last pressed button. _
The Case Else is needed because gstrCurrentButton won't hold the correct value the first _
time this sub is executed, but we know the first picture displayed is the production screen. _
(Set by the main menu)
Select Case gstrCurrentButton
Case "生产监控"
cmdTrend_Click
Case "趋势曲线"
cmdAlarms_Click
Case "报警显示"
cmdBatchData_Click
Case "批次数据"
cmdReports_Click
Case "报
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
"
cmdProduction_Click
Case Else
cmdTrend_Click
End Select
End Sub
第六:点击“批次状态”,实现手动和自动的切换且按钮颜色改变。实现方式:Private Sub cmdBatchAutomatically_Click()
'Function: Start/stop the batch simulation
If ReadValue("Fix32.THISNODE.IFIX1_BATCH_PG_AUTOBATCH.A_AUTO") Like "MANL" Then
'Start the auto simulation
SetAuto "Fix32.THISNODE.IFIX1_BATCH_PG_AUTOBATCH"
SetAuto "Fix32.THISNODE.IFIX1_BATCH_PG_AUTOBATCH2"
SetAuto "Fix32.THISNODE.IFIX1_BATCH_PG_AUTOBATCH3"
Else
'Stop the auto simulation
SetManual "Fix32.THISNODE.IFIX1_BATCH_PG_AUTOBATCH"
SetManual "Fix32.THISNODE.IFIX1_BATCH_PG_AUTOBATCH2"
SetManual "Fix32.THISNODE.IFIX1_BATCH_PG_AUTOBATCH3"
End If
End Sub
第七:点击“选择显示图层”,弹出一个“选择显示图层”的控件,上面基本列出了画面
中的各个元件。实现方式:Private Sub cmdDisplayLayers_Click()
'Function: Display the display layers form
Dim Pic As Object
On Error GoTo ErrorHandler
Set Pic = Application.ActiveDocument.Page
'No documents open
If TypeName(Pic) = "Nothing" Then
Exit Sub
End If
'Show the Display Layers form
frmPickLayer.Show
Exit Sub
ErrorHandler:
' Exit here
End Sub
第八:鼠标放到各个对象上,都有对应的文字说明。实现方式:单击对象,“动画”中选择“启用工具提示。
第九:画面下面有实时报警信息。
水及污水处理
化学加料画面
第一:液位自动升降时旁边的动态显示效果。(双击对象,选择“位置”)
第二:点击泵时弹出的GRF“泵控制”画面。实现方式:Private Sub grpPump901_Click()
'The Comments below have been added automatically.
'Any changes could cause adverse effects to the functionality
'of the Script Authoring Experts.
'WizardName=OpenPicture
'Property1=iFix1_H2O_CMP.grf
'Property2=
'Property3=False
'Property4=
'Property5=
'Property6=True
'Property7=CMP901.TGD
'Property8=False
OpenTGDPicture "iFix1_H2O_CMP.grf", "", "", "", "iFix1_H2O_CMP901.TGD"
End Sub
第三:“泵控制”画面中的按钮与开关的实时动作对应。实现方式:选择对象的“动画”,
“高级动画”里进行配置。“可视”也很有用。
第四:点击“禁止报警”时弹出的“报警”控件。实现方式:Private Sub cmdInhibitAlarm_Click()
frmAInhibit.Show
End Sub
反冲池过滤器画面
第一:点击“反冲池过滤器”下面会弹出二级菜单。实现方式:Private Sub cmdBackWash_Click()
' Enable the other buttons/Disable this one
Call SetButtons(cmdBackWash, Me)
ReplaceTGDPicture "iFix1_H2O_BWFilter", "iFix1_H2O_BWFILTER1", user.strCURPIC.CurrentValue
' Re-open the alarm bar
OpenTGDPicture "iFix1_Alarm_Bar", , , , user.strCurrentAlarmAreaTGDFile.CurrentValue
End Sub
第二:立体动态升降画面。
第三:过滤器工序监视表。实现方式:TextBox,动画里面“高级动画”的“数据”。
第四:点击二级菜单“显示标签名”后画面显示了标签。实现方式:Private Sub cmdShowTag_Click()
'frmPickLayer.Show
If Me.DisplayLayer = 2 Then
Me.DisplayLayer = 1
cmdShowTag.Caption = "隐藏标签名"
Else
Me.DisplayLayer = 2
cmdShowTag.Caption = "显示标签名"
End If
End Sub
第五:点击二级菜单“启动”,画面才开始动作。实现方式:Private Sub cmdStart_Click()
'put all valves and Pumps in AUTO Mode _
usually the user would be prompted before any changes are made _
to the process but for the sake of simplicity we will forgoe this prompting step
WriteValue "0", "IFIX1_H2O_@EQUIPMENT_ID@_CV0303A"
WriteValue "0", "IFIX1_H2O_@EQUIPMENT_ID@_AWLS0302A"
WriteValue "0", "IFIX1_H2O_@EQUIPMENT_ID@_AWLS0301A"
WriteValue "0", "IFIX1_H2O_@EQUIPMENT_ID@_EFLS0301A"
WriteValue "0", "IFIX1_H2O_@EQUIPMENT_ID@_INLS0305A"
WriteValue "0", "IFIX1_H2O_@EQUIPMENT_ID@_DLS0307A"
WriteValue "0", "IFIX1_H2O_@EQUIPMENT_ID@_PMP0303A"
WriteValue "0", "IFIX1_H2O_BW_SP0301A"
WriteValue "0", "IFIX1_H2O_BW_SP0302A"
'now that the valves are in the proper state (closed) we can start the sequencer _
a 'Program Block' (PB) is placed 'On Scan'.
If cmdStart.Caption Like "启动" Then
OnScan "IFIX1_H2O_@EQUIPMENT_ID@_SEQ1"
Else
OffScan "IFIX1_H2O_@EQUIPMENT_ID@_SEQ1"
OffScan "IFIX1_H2O_@EQUIPMENT_ID@_SEQ2"
OffScan "IFIX1_H2O_@EQUIPMENT_ID@_SEQ3"
OffScan "IFIX1_H2O_@EQUIPMENT_ID@_SEQ4"
OffScan "IFIX1_H2O_@EQUIPMENT_ID@_SEQ5"
WriteValue "0", "IFIX1_H2O_@EQUIPMENT_ID@_STEP"
End If
End Sub
离散行业应用
离散控制-显像管退火流程画面
第一:“生产工艺指示”能动态显示工艺过程。(动画,“前景”)
第二:画面上对象的移动。
制药行业应用
制药系统
第一:1号2号高速搅拌器的切换。
第二:点击“百分比输入”,弹出的控件。
第三:点击“移动搅拌体”和“下装搅拌体”的动态效果。Private Sub cmdChangeMixingBowl_Click()
gintState = ReadValue("IFIX1_PHARM_@EQUIPMENT_ID@_BOWL_STATE")
If gintState = 1 Then
WriteValue "5", "IFIX1_PHARM_@EQUIPMENT_ID@_BOWL_STATE"
Else
WriteValue "8", "IFIX1_PHARM_@EQUIPMENT_ID@_BOWL_STATE"
End If
End Sub
四幅图共用的一些画面:
趋势曲线
报警显示
报表
深入探讨演示系统的一些问题:
标签组:
演示系统所用到的标签组文件有:
其中:IFIX1_BATCH_HISTORICALTAGS(化工应用18个标签,10个AI,8个CA)、IFIX1_DISC_HISTORICALTAGS(离散行业应用6个标签,全部AI)、IFIX1_WATER_HISTORICALTAGS(水及污水处理25个标签,全部AI,有两个找不到)是关键,其他标签组不知何意.
(注:整个数据库,106个AI,25个AO,5个AR,17个CA,98个DI,11个DO,2个DR,41个ETR,4个MDI,49个PG,5个RM,1个SD,14个TR,1个AA)