private IModbusMaster CreateUdpMaster(ModbusFactory factory) { _udpClient = new UdpClient(_configurationSettings.IpAddress, _configurationSettings.IpPort); IModbusMaster master = null; if (_configurationSettings.ConnectionType.CurrentType == ConnectionType.UdpIp) { master = factory.CreateMaster(_udpClient); } if (_configurationSettings.ConnectionType.CurrentType == ConnectionType.RtuAsciiOverUdpIp) { var adapter = new UdpClientAdapter(_udpClient); if (_configurationSettings.UseRtu) { master = factory.CreateRtuMaster(adapter); } if (_configurationSettings.UseAscii) { master = factory.CreateAsciiMaster(adapter); } } master.Transport.ReadTimeout = _configurationSettings.Timeout; return(master); }
public IModbusMaster CreateMaster(UdpClient client) { var adapter = new UdpClientAdapter(client); var transport = CreateIpTransport(adapter); return(new ModbusIpMaster(transport)); }
public override void DiscoverDeviceInstances(Action <string> addDevice) { _addCallback = addDevice; var searcher = new UdpClientAdapter("OAT", 4031); searcher.ClientFound += OnWifiClientFound; searcher.StartClientSearch(); }
public void Write_ArgumentValidation() { var adapter = new UdpClientAdapter(new UdpClient()); // buffer AssertUtility.Throws <ArgumentNullException>(() => adapter.Write(null, 1, 1)); // offset AssertUtility.Throws <ArgumentOutOfRangeException>(() => adapter.Write(new byte[2], -1, 2)); AssertUtility.Throws <ArgumentOutOfRangeException>(() => adapter.Write(new byte[2], 3, 3)); }
public static void DiscoverDevices() { _available.Clear(); //foreach (var port in SerialPort.GetPortNames()) //{ // _available.Add("Serial : " + port); //} var searcher = new UdpClientAdapter("OAT", 4031); searcher.ClientFound += OnWifiClientFound; searcher.StartClientSearch(); }
public static void DiscoverDevices() { Log.WriteLine("COMMFACTORY: Device Discovery initiated."); Log.WriteLine("COMMFACTORY: Checking Serial ports...."); _available.Clear(); foreach (var port in SerialPort.GetPortNames()) { Log.WriteLine("COMMFACTORY: Found Serial port [{0}]", port); _available.Add("Serial : " + port); } Log.WriteLine("COMMFACTORY: Starting Wifi search by Broadcastign OAT on port 4031"); var searcher = new UdpClientAdapter("OAT", 4031); searcher.ClientFound += OnWifiClientFound; searcher.StartClientSearch(); }
public IModbusMaster CreateMaster(UdpClient client) { var adapter = new UdpClientAdapter(client); return(CreateIpMaster(adapter)); }