разбор байтов в модбасовском ответе по нужным форматам
nn-номер байта с которого разбор начинается.
Код:
Select Case tFormat_SelectedIndex(x)
    Case 0  'INT
        Array.Reverse(inBuffer, nn, 2)
        dataStr(x) = BitConverter.ToInt16(inBuffer, nn)
        nn = nn + 2
    Case 1  'UINT
        Array.Reverse(inBuffer, nn, 2)
        dataStr(x) = BitConverter.ToUInt16(inBuffer, nn)
        nn = nn + 2
    Case 2  'DINT
        If nn >= bez_srs - 2 Then Exit For
        Array.Reverse(inBuffer, nn, 4)
        dataStr(x) = BitConverter.ToInt32(inBuffer, nn)
        nn = nn + 4
    Case 3  'UDINT
        If nn >= bez_srs - 2 Then Exit For
        Array.Reverse(inBuffer, nn, 4)
        dataStr(x) = BitConverter.ToUInt32(inBuffer, nn)
        nn = nn + 4
    Case 4  'REAL
        If nn >= bez_srs - 2 Then Exit For
        Array.Reverse(inBuffer, nn, 2)
        Array.Reverse(inBuffer, nn + 2, 2)
        dataStr(x) = BitConverter.ToSingle(inBuffer, nn)
        nn = nn + 4
End Select
Цитата Сообщение от Yegor Посмотреть сообщение
Есть NModbus (C#)
хорошая библиотека, и на VB без проблем, и не нужно с сокетами заморачиваться.