📄 module_control.cls
字号:
' mvartlfKaiDu = mvartlfKaiDu + 15
' End If
' If (mvarfyfWenDu >= mvarfyfwdSheDingValue - 1) And _
' (mvarfyfWenDu <= mvarfyfwdSheDingValue - 0.5) Then
'' If mvarfyfWenDuXieLv <= 0 Then
'' mvartlfKaiDu = mvartlfKaiDu + 5
'' End If
' If mvarfyfWenDuXieLv < -0.003 Then
' mvartlfKaiDu = mvartlfKaiDu + 5
' End If
'' If mvarfyfWenDuXieLv < -0.01 Then
'' mvartlfKaiDu = mvartlfKaiDu + 5
'' End If
'' If mvarfyfWenDuXieLv < -0.015 Then
'' mvartlfKaiDu = mvartlfKaiDu + 5
'' End If
' If mvarfyfWenDuXieLv > 0.005 Then
' mvartlfKaiDu = mvartlfKaiDu - 5
' End If
' If mvarfyfWenDuXieLv > 0.008 Then
' mvartlfKaiDu = mvartlfKaiDu - 5
' End If
' If mvarfyfWenDuXieLv > 0.012 Then
' mvartlfKaiDu = 0
' End If
' End If
' If (mvarfyfWenDu > mvarfyfwdSheDingValue - 0.5) And _
' (mvarfyfWenDu <= mvarfyfwdSheDingValue) Then
' If mvarfyfWenDuXieLv < 0 Then
' mvartlfKaiDu = mvartlfKaiDu + 5
' End If
'' If mvarfyfWenDuXieLv < -0.003 Then
'' mvartlfKaiDu = mvartlfKaiDu + 5
'' End If
'' If mvarfyfWenDuXieLv < -0.005 Then
'' mvartlfKaiDu = mvartlfKaiDu + 5
'' End If
'' If mvarfyfWenDuXieLv < -0.008 Then
'' mvartlfKaiDu = mvartlfKaiDu + 5
'' End If
'' If mvarfyfWenDuXieLv < -0.01 Then
'' mvartlfKaiDu = mvartlfKaiDu + 5
'' End If
' If mvarfyfWenDuXieLv > 0.003 Then
' mvartlfKaiDu = mvartlfKaiDu - 10
' End If
' If mvarfyfWenDuXieLv > 0.005 Then
' mvartlfKaiDu = mvartlfKaiDu - 5
' End If
' If mvarfyfWenDuXieLv > 0.008 Then
' mvartlfKaiDu = mvartlfKaiDu - 5
' End If
' If mvarfyfWenDuXieLv > 0.01 Then
' mvartlfKaiDu = mvartlfKaiDu - 5
' End If
' If mvarfyfWenDuXieLv > 0.012 Then
' mvartlfKaiDu = 0
' End If
' End If
' If (mvarfyfWenDu > mvarfyfwdSheDingValue) Then
' mvartlfKaiDu = 0
' End If
' End If
'End If
'****************
'最终的开度输出
'****************
If mvartlfKaiDu < 0 Then mvartlfKaiDu = 0
If mvartlfKaiDu > 100 Then mvartlfKaiDu = 100
Call A_out(mvarBaseAddress, mvartlfChannel, mvartlfKaiDu, 0)
'//////////////////////////////////////////////////////
'以上为专家系统控制算法
'//////////////////////////////////////////////////////
End Sub
'********************
'反应釜号
'********************
Public Property Let fyfNum(ByVal vData As Integer)
mvarfyfNum = vData
End Property
Public Property Get fyfNum() As Integer
fyfNum = mvarfyfNum
End Property
'********************
'计量罐直径
'********************
Public Property Let jlgZhiJing(ByVal vData As Single)
mvarjlgZhiJing = vData
End Property
Public Property Get jlgZhiJing() As Single
jlgZhiJing = mvarjlgZhiJing
End Property
'********************
'一甲胺密度
'********************
Public Property Let yjaMiDu(ByVal vData As Single)
mvaryjaMiDu = vData
End Property
Public Property Get yjaMiDu() As Single
yjaMiDu = mvaryjaMiDu
End Property
'********************
'一甲胺投料量
'********************
Public Property Let yjatlLiang(ByVal vData As Single)
mvaryjatlLiang = vData
End Property
Public Property Get yjatlLiang() As Single
yjatlLiang = mvaryjatlLiang
End Property
'********************
'工作状态
'********************
Public Property Let WorkState(ByVal vData As Boolean)
mvarWorkState = vData
End Property
Public Property Get WorkState() As Boolean
WorkState = mvarWorkState
End Property
'*******************
'计量罐结束液位
'*******************
Public Property Let jlgjsYeWei(ByVal vData As Single)
mvarjlgjsYeWei = vData
If mvarjlgjsYeWei > mvarAlarmDown Then RaiseEvent yjaNotEnoughAlarm
End Property
Public Property Get jlgjsYeWei() As Single
jlgjsYeWei = mvarjlgjsYeWei
End Property
'*******************
'液位报警下限
'*******************
Public Property Let jlgAlarmDown(ByVal vData As Single)
mvarAlarmDown = vData
End Property
Public Property Get jlgAlarmDown() As Single
jlgcsYeWei = mvarAlarmDown
End Property
'*******************
'计量罐初始液位
'*******************
Public Property Let jlgcsYeWei(ByVal vData As Single)
mvarjlgcsYeWei = vData
End Property
Public Property Get jlgcsYeWei() As Single
jlgcsYeWei = mvarjlgcsYeWei
End Property
'*******************
'液位提前量
'*******************
Public Property Let jlgjsYeWei_TiQianLiang(ByVal vData As Single)
mvarjlgjsYeWei_TiQianLiang = vData
End Property
Public Property Get jlgjsYeWei_TiQianLiang() As Single
jlgjsYeWei_TiQianLiang = mvarjlgjsYeWei_TiQianLiang
End Property
'*******************
'冷却盐水温度
'*******************
Public Property Let lqysWenDu(ByVal vData As Single)
mvarlqysWenDu = vData
End Property
Public Property Get lqysWenDu() As Single
lqysWenDu = mvarlqysWenDu
End Property
'*******************
'一甲胺流量
'*******************
Public Property Let yjaLiuLiang(ByVal vData As Single)
mvaryjaLiuLiang = vData
End Property
Public Property Get yjaLiuLiang() As Single
yjaLiuLiang = mvaryjaLiuLiang
End Property
'*******************
'投料阀开度
'*******************
Public Property Let tlfaKaiDu(ByVal vData As Single)
mvartlfKaiDu = vData
End Property
Public Property Get tlfaKaiDu() As Single
tlfaKaiDu = mvartlfKaiDu
End Property
'*******************
'计量罐液位
'*******************
Public Property Let jlgYeWei(ByVal vData As Single)
mvarjlgYeWei = vData
mvaryjaYiYongLiang = mvarjlgYeWei - mvarjlgcsYeWei
mvaryjaShengYuLiang = mvarjlgjsYeWei - mvarjlgYeWei
End Property
Public Property Get jlgYeWei() As Single
jlgYeWei = mvarjlgYeWei
End Property
'*******************
'反应釜温度
'*******************
Public Property Let fyfWenDu(ByVal vData As Single)
mvarfyfWenDu = vData
End Property
Public Property Get fyfWenDu() As Single
fyfWenDu = mvarfyfWenDu
End Property
'*******************
'计数器
'*******************
Public Property Let Counter(ByVal vData As Single)
mvarCounter = vData
End Property
Public Property Get Counter() As Single
Counter = mvarCounter
End Property
'************************
'反应釜温度上升斜率
'************************
Public Property Let fyfWenDuXieLv(ByVal vData As Single)
mvarfyfWenDuXieLv = vData
End Property
Public Property Get fyfWenDuXieLv() As Single
fyfWenDuXieLv = mvarfyfWenDuXieLv
End Property
'*******************
'反应釜温度设定值
'*******************
Public Property Let fyfwdSheDingValue(ByVal vData As Single)
mvarfyfwdSheDingValue = vData
End Property
Public Property Get fyfwdSheDingValue() As Single
fyfwdSheDingValue = mvarfyfwdSheDingValue
End Property
'*******************
'反应釜温度曲线拐点
'*******************
Public Property Let fyfwdChartGuaiDian(ByVal vData As Single)
mvarwdChartGuaiDian = vData
End Property
Public Property Get fyfwdChartGuaiDian() As Single
fyfwdChartGuaiDian = mvarwdChartGuaiDian
End Property
'***********************
'投料阀开度(输出)基地址
'***********************
Public Property Let tlfBaseAddress(ByVal vData As Integer)
mvarBaseAddress = vData
End Property
Public Property Get tlfBaseAddress() As Integer
tlfBaseAddress = mvarBaseAddress
End Property
'***********************
'投料阀开度(输出)通道号
'***********************
Public Property Let tlfChannel(ByVal vData As Integer)
mvartlfChannel = vData
End Property
Public Property Get tlfChannel() As Integer
tlfChannel = mvartlfChannel
End Property
Private Sub Class_Initialize()
mvarWorkState = False
End Sub
'***********************
'一甲胺已用量(只读)
'***********************
'Public Property Let yjaYiYongLiang(ByVal vData As Single)
' mvaryjaYiYongLiang = vData
'End Property
Public Property Get yjaYiYongLiang() As Single
yjaYiYongLiang = mvaryjaYiYongLiang
If mvaryjaYiYongLiang0 <= 50 And mvaryjaYiYongLiang >= 50 Then
mvarfyf50KgWenDu = mvarfyfWenDu
mvartl50KgTime = mvarCounter
mvarIncreaseXieLv = (mvarfyfwdSheDingValue - 2 - mvarfyf50KgWenDu) / _
(mvarwdChartGuaiDian - mvartl50KgTime)
End If
mvaryjaYiYongLiang0 = mvaryjaYiYongLiang
End Property
'***********************
'一甲胺剩余量(只读)
'***********************
'Public Property Let yjaShengYuLiang(ByVal vData As Single)
' mvaryjaShengYuLiang = vData
'End Property
Public Property Get yjaShengYuLiang() As Single
yjaShengYuLiang = mvaryjaShengYuLiang
End Property
'***********************
'投料阀初始开度
'***********************
Public Property Let tlfStartKaiDu(ByVal vData As Single)
mvartlfStartKaiDu = vData
End Property
Public Property Get tlfStartKaiDu() As Single
tlfStartKaiDu = mvartlfStartKaiDu
End Property
'***********************
'投料70Kg左右投料阀开度
'***********************
Public Property Let tlf70KgKaiDu(ByVal vData As Single)
mvartlf70KgKaiDu = vData
End Property
Public Property Get tlf70KgKaiDu() As Single
tlf70KgKaiDu = mvartlf70KgKaiDu
End Property
'*************************
'温度走平第一段时投料阀开度
'*************************
Public Property Let tlfHorizon1KaiDu(ByVal vData As Single)
mvartlfHorizon1KaiDu = vData
End Property
Public Property Get tlfHorizon1KaiDu() As Single
tlfHorizon1KaiDu = mvartlfHorizon1KaiDu
End Property
'*************************
'温度走平第二段时投料阀开度
'*************************
Public Property Let tlfHorizon2KaiDu(ByVal vData As Single)
mvartlfHorizon2KaiDu = vData
End Property
Public Property Get tlfHorizon2KaiDu() As Single
tlfHorizon2KaiDu = mvartlfHorizon2KaiDu
End Property
'*****************************
'投料还剩少于60Kg左右投料阀开度
'*****************************
Public Property Let tlfLeft60KgKaiDu(ByVal vData As Single)
mvartlfLeft60KgKaiDu = vData
End Property
Public Property Get tlfLeft60KgKaiDu() As Single
tlfLeft60KgKaiDu = mvartlfLeft60KgKaiDu
End Property
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -