fix
zhangqian
2023-10-19 cab6eea89a0d82710369604ecb51f1cdb122e433
pkg/plc/modbusx/connection_manager.go
@@ -1,14 +1,18 @@
package modbusx
import (
   "apsClient/conf"
   "github.com/goburrow/modbus"
   "sync"
   "time"
)
type ConnectionManager struct {
   connections map[string]modbus.Client
   mu          sync.Mutex
}
var handler *modbus.TCPClientHandler
func newPlcConnectionManager() *ConnectionManager {
   return &ConnectionManager{
@@ -56,8 +60,14 @@
      return
   }
   connectionManager.RemoveConnection(ipAddr)
   if handler != nil {
      handler.Close()
   }
}
func newGetModbusConnection(ipAddr string) modbus.Client {
   return modbus.TCPClient(ipAddr)
   handler = modbus.NewTCPClientHandler(ipAddr)
   handler.Timeout = 10 * time.Second
   handler.SlaveId = byte(conf.Conf.PLC.SlaveId)
   return modbus.NewClient(handler)
}