我用VB Prodave与S7-300连接没有任何问题;但是有时候连接莫名其妙的中断;重新启动程序后正常;我在程序启动时连接CP5611卡。
Verb = 1
Adr_table = Chr(2) + Chr(0) + Chr(2) + Chr(0) + Chr(0)
res = load_tool(Verb, "S7ONLINE", Adr_table)
我想在连接中断后做一个自动初始化连接程序结果不成功。不知道各位有这样用过的没有。
Private Sub TimerPLC_Timer()
x = DBR(11, 0, 20, MyDBW())
‘DBR是我自己做的函数,X=0表示读数据成功,不为零表示读数据不成功-即连接中断。这个函数多次使用没有问题。
If x <> 0 And count1 >= 1 Then
If count1 = 1 Then
i1 = unload_tool()
If i1 = 0 Then
count1 = 2
Else
count1 = 1
End If
Else
count1 = count1 + 1
End If
’这里是想等待一段时间后连接
If count1 >= 7 Then
Verb = 1
Adr_table = Chr(2) + Chr(0) + Chr(2) + Chr(0) + Chr(0)
res = load_tool(Verb, "S7ONLINE", Adr_table)
If res = 0 Then
i1 = MessageBox(Me.hwnd, "计算机连接已经自动恢复", "连接恢复", 48)
count1 = 1
End If
End If
ElseIf x = 0 Then
count1 = 1
End If
end sub
Timer 时间间隔1500ms。