|
|
@@ -2,8 +2,43 @@ package client
|
|
|
|
|
|
import (
|
|
|
"fmt"
|
|
|
+ "time"
|
|
|
+
|
|
|
+ "github.com/simonvetter/modbus"
|
|
|
)
|
|
|
|
|
|
+func InitClient(port string, speed int) {
|
|
|
+ var client *modbus.ModbusClient
|
|
|
+ var err error
|
|
|
+
|
|
|
+ client, err = modbus.NewClient(&modbus.ClientConfiguration{
|
|
|
+ URL: "rtu:///dev/ttyUSB0",
|
|
|
+ Speed: 115200,
|
|
|
+ DataBits: 8,
|
|
|
+ Parity: modbus.PARITY_NONE,
|
|
|
+ StopBits: 1,
|
|
|
+ Timeout: 300 * time.Millisecond,
|
|
|
+ })
|
|
|
+
|
|
|
+ client.SetUnitId(1)
|
|
|
+
|
|
|
+ // modbus.
|
|
|
+
|
|
|
+ // fmt.Println(client.)
|
|
|
+
|
|
|
+ if err != nil {
|
|
|
+ fmt.Errorf("Something went wrong!")
|
|
|
+ }
|
|
|
+
|
|
|
+ err = client.Open()
|
|
|
+ defer client.Close()
|
|
|
+
|
|
|
+ var reg16 uint16
|
|
|
+ reg16, err = client.ReadRegister(50, modbus.HOLDING_REGISTER)
|
|
|
+
|
|
|
+ fmt.Printf("value: %v", reg16)
|
|
|
+}
|
|
|
+
|
|
|
func Hello() {
|
|
|
fmt.Println("Hello from glient.go")
|
|
|
}
|