VB应用程序来控制PLC

时间:2014-04-11 09:41:19

标签: vb.net compiler-errors plc

我正在尝试使用Allen Bradley的vHMIABE驱动程序从Vb应用程序控制Allen Bradley ControlLogix PLC,并且我一直收到此错误:

http://imageshack.com/a/img842/4560/lqy2.png

当我点击使用以下代码的“连接”按钮时会出现此错误:

    Private Sub PLC_Connect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PLC_Connect.Click

    'Connection to PLC
    Display.Items.Clear()

    With Read_Bit
        .Control_PLCType = vHMIABE.enuPLCType.ControlLogix 'PLC of ControlLogix
        .Control_PLCIPAddress = "192.168.1.112"
        .Control_SocketNumber = 44818
        .Control_ResponseTimeOut = 5000 'The communication will timeout after 5 secondes
        .Memory_Function = vHMIABE.enuPLCMemoryFunction.Connect ' Connection

        .Control_UseAdvancedErrorReporting = True 'Description of error messages

        .Control_Update() ' Make the connection

    End With

    With Write_Bit

        .Control_PLCType = vHMIABE.enuPLCType.ControlLogix 'PLC of ControlLogix
        .Control_PLCIPAddress = "192.168.1.112"
        .Control_SocketNumber = 44818
        .Control_ResponseTimeOut = 5000 'The communication will timeout after 5 secondes
        .Memory_Function = vHMIABE.enuPLCMemoryFunction.Connect ' Connection

        .Control_UseAdvancedErrorReporting = True 'Description of error messages

        .Control_Update() ' Make the connection

    End With

End Sub

我尽可能多地发表评论,以使我的代码更容易理解

有人有什么想法吗?

非常感谢。

2 个答案:

答案 0 :(得分:1)

我不知道这个驱动程序,但我可以给你一个更现代的基于.NET的选项,它更容易使用。实际上,单行代码将写入或读取变量

http://www.advancedhmi.com

要阅读的代码示例:

EthernetIPforCLXCom1.Read("MyTag")

答案 1 :(得分:0)

在第一个完成之前,您无法使用第二个.control_update。必须等待第一个.control_update语句的Done事件才能执行第二个。