static void Main(string[] args) { var logger = new ConsoleModbusLogger(); var channelProvider = new TcpServerModbusChannelProvider(502) //var channelProvider = new UdpServerModbusChannelProvider(502) { Logger = logger }; var modbusSlaveService = new ModbusSlaveService(channelProvider) { //Serializer = new ModbusRtuSerializer(), Serializer = new ModbusTcpSerializer(), //Serializer = new ModbusAsciiSerializer(), Logger = logger, [1] = new ModbusSlave() }; modbusSlaveService[1].InputRegisters.Allocate(100, 1.23f); channelProvider.Start(); Console.ReadKey(); }
static void Main(string[] args) { var logger = new ConsoleModbusLogger(); var modbusMaster = new ModbusMaster { Channel = new TcpClientModbusChannel("127.0.0.1", 502, 1000) //Channel = new UdpClientModbusChannel("127.0.0.1", 502) { Logger = logger }, //Serializer = new ModbusRtuSerializer(), Serializer = new ModbusTcpSerializer(), //Serializer = new ModbusAsciiSerializer(), Logger = logger, }; while (true) { Thread.Sleep(1000); try { var request = new ModbusReadRequest(1, ModbusObjectType.InputRegister, 100, 2); var resposne = modbusMaster.Request(request, 1000); Console.WriteLine((resposne as ModbusReadRegisterResponse).GetSingle(100)); } catch { } } }