三菱Q系列PLC使用VB进行通讯时如何进行置位和读数据操作?

2025年03月13日 02:13
有2个网友回答
网友(1):

这个不是一句两句说的清楚,首先你要知道这个通信使用的是哪种协议,然后你要了解VB基础,具体型号是什么

网友(2):

用官方最新的.NET平台的解决方案,置位、复位操作用Bit_Set/Bit_Reset就可以了,复制一段我工程里面的代码:

    Dim PLC As New EntQsPlc_Asc.PlcClient'实例化通讯DLL
    Dim EntLink As Boolean '连接状态标志
    Dim PlcHand As Long '连接句柄
    
    Private Sub cmdBitTest_Click()
        If Not EntLink Then
            MsgBox ("还未与PLC建立联接!")
            Exit Sub
        End If
        Dim rd As Boolean
        Dim re As Integer
        Dim mry As EntQsPlc_Asc.PlcMemory
        mry = cmbBitMry.ListIndex + 1
        '判断一个Bit的ONOFF
        re = PLC.Bit_Test(PlcHand, mry, Val(txtBitAdd.Text), cmbBitNum.ListIndex, rd)

        txtBitTest.Text = rd
        txtReBit.Text = re
     End Sub

     Private Sub cmdBitSet_Click()
        If Not EntLink Then
            MsgBox ("还未与PLC建立联接!")
            Exit Sub
        End If
        Dim re As Integer
        Dim mry As EntQsPlc_Asc.PlcMemory
        mry = cmbBitMry.ListIndex + 1
        '置一个BIT为ON
        re = PLC.Bit_Set(PlcHand, mry, Val(txtBitAdd.Text), cmbBitNum.ListIndex)

        txtReBit.Text = re
     End Sub

     Private Sub cmdBitReset_Click()
        If Not EntLink Then
            MsgBox ("还未与PLC建立联接!")
            Exit Sub
        End If
        Dim re As Integer
        Dim mry As EntQsPlc_Asc.PlcMemory
        mry = cmbBitMry.ListIndex + 1
        '置一个BIT为OFF
        re = PLC.Bit_Reset(PlcHand, mry, Val(txtBitAdd.Text), cmbBitNum.ListIndex)
  
        txtReBit.Text = re
     End Sub