diff --git a/Modbus.Net/Modbus.Net.Siemens/SiemensPpiProtocal.cs b/Modbus.Net/Modbus.Net.Siemens/SiemensPpiProtocal.cs index 4c0126a..5079a53 100644 --- a/Modbus.Net/Modbus.Net.Siemens/SiemensPpiProtocal.cs +++ b/Modbus.Net/Modbus.Net.Siemens/SiemensPpiProtocal.cs @@ -24,6 +24,15 @@ namespace Modbus.Net.Siemens return AsyncHelper.RunSync(() => SendReceiveAsync(isLittleEndian, content)); } + public override async Task SendReceiveAsync(bool isLittleEndian, params object[] content) + { + if (ProtocalLinker == null || !ProtocalLinker.IsConnected) + { + await ConnectAsync(); + } + return await base.SendReceiveAsync(isLittleEndian, content); + } + private async Task ForceSendReceiveAsync(ProtocalUnit unit, InputStruct content) { return await base.SendReceiveAsync(unit, content);