Получение данных из регистра RTU Modbus Holding с использованием Go - PullRequest
0 голосов
/ 12 марта 2020

Я хочу взять данные из регистра хранения Modbus. Я использую Go.

package main

import (
    "encoding/hex"
    "fmt"
    "time"

    "github.com/goburrow/modbus"
)

func main() {
    handler := modbus.NewRTUClientHandler("/dev/ttyUSB0")
    handler.BaudRate = 9600
    handler.DataBits = 8
    handler.Parity = "N"
    handler.StopBits = 1
    handler.SlaveId = 1
    handler.Timeout = 5 * time.Second
    err := handler.Connect()
    defer handler.Close()

    client := modbus.NewClient(handler)
    results, err := client.ReadHoldingRegisters(0, 8)
    fmt.Printf("%v", err)
    fmt.Println(results)

}

Это код, который при компиляции дает мне вывод в 1 байте [], например

[120 120 1 0 23 24 42 12 43 23 54 12 32 12 43 54 12] (просто пример)

Есть ли способ, которым я могу получить значение с плавающей запятой, которое хранится в регистре.

Библиотека, которую я использую:

github.com/goburrow 
...