修复了串口Modbus连接的问题

This commit is contained in:
王海东 2021-12-18 19:13:41 +08:00
parent ae75d6005c
commit 61f6e78834
6 changed files with 24 additions and 4 deletions

Binary file not shown.

View File

@ -20,6 +20,7 @@
<PackageReference Include="MQTTnet.AspNetCore" Version="3.1.1" />
<PackageReference Include="MQTTnet.Extensions.ManagedClient" Version="3.1.1" />
<PackageReference Include="MQTTnet.Extensions.Rpc" Version="3.1.1" />
<PackageReference Include="System.IO.Ports" Version="6.0.0" />
</ItemGroup>
<ItemGroup>

View File

@ -6,6 +6,10 @@
<OutputPath>../../../IoTGateway/bin/Debug/net5.0/drivers</OutputPath>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="System.IO.Ports" Version="6.0.0" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\PluginInterface\PluginInterface.csproj" />
</ItemGroup>

View File

@ -74,7 +74,22 @@ namespace DriverModbusMaster
{
get
{
switch (Master_TYPE)
{
case Master_TYPE.Tcp:
case Master_TYPE.RtuOnTcp:
case Master_TYPE.AsciiOnTcp:
return clientTcp != null && master != null && clientTcp.Connected;
case Master_TYPE.Udp:
case Master_TYPE.RtuOnUdp:
case Master_TYPE.AsciiOnUdp:
return clientUdp != null && master != null && clientUdp.Client.Connected ;
case Master_TYPE.Rtu:
case Master_TYPE.Ascii:
return port != null && master != null && port.IsOpen;
default:
return false;
}
}
}
@ -124,7 +139,7 @@ namespace DriverModbusMaster
break;
}
}
catch (Exception)
catch (Exception ex)
{
return false;
}
@ -225,7 +240,7 @@ namespace DriverModbusMaster
private DriverReturnValueModel ReadRegistersBuffers(byte FunCode, DriverAddressIoArgModel ioarg)
{
DriverReturnValueModel ret = new() { StatusType = VaribaleStatusTypeEnum.Good };
if (!clientTcp.Connected)
if (!IsConnected)
ret.StatusType = VaribaleStatusTypeEnum.Bad;
else
{