@ -12,7 +12,6 @@ using HslCommunication.Core;
using HslCommunication ;
using HslCommunication.Profinet.Siemens ;
using HslCommunication.Reflection ;
using PVDEMCS.Common.Devices ;
using PVDEMCS.Common.Tools ;
namespace PVDEMCS.Common.Devices.Impl
@ -62,7 +61,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <param name="port"></param>
public PLC Result Connection ( string address , int port = 0 )
public Result Connection ( string address , int port = 0 )
{
siemensS7Net . IpAddress = address ;
if ( port > 0 )
@ -81,7 +80,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// <summary>
/// 关闭连接PLC( 长连接)
/// </summary>
public PLC Result ColseConnection ( )
public Result ColseConnection ( )
{
var operateResult = siemensS7Net . ConnectClose ( ) ;
var result = ConvertResult ( operateResult ) ;
@ -96,7 +95,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public PLC Result< byte [ ] > ReadBytes ( string address , ushort length )
public Result< byte [ ] > ReadBytes ( string address , ushort length )
{
var operateResult = siemensS7Net . Read ( address , length ) ;
var result = ConvertResult ( operateResult ) ;
@ -107,7 +106,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public PLC Result< bool > ReadBool ( string address )
public Result< bool > ReadBool ( string address )
{
var operateResult = siemensS7Net . ReadBool ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -119,7 +118,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public PLC Result< byte > ReadByte ( string address )
public Result< byte > ReadByte ( string address )
{
var operateResult = siemensS7Net . ReadByte ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -131,7 +130,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public PLC Result< short > ReadInt16 ( string address )
public Result< short > ReadInt16 ( string address )
{
var operateResult = siemensS7Net . ReadInt16 ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -143,7 +142,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public PLC Result< int > ReadInt32 ( string address )
public Result< int > ReadInt32 ( string address )
{
var operateResult = siemensS7Net . ReadInt32 ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -155,7 +154,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public PLC Result< long > ReadLong ( string address )
public Result< long > ReadLong ( string address )
{
var operateResult = siemensS7Net . ReadInt64 ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -166,7 +165,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// 读取指定地址的Float值
/// </summary>
/// <returns></returns>
public PLC Result< float > ReadFloat ( string address )
public Result< float > ReadFloat ( string address )
{
var operateResult = siemensS7Net . ReadFloat ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -177,7 +176,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// 读取指定地址的double值
/// </summary>
/// <returns></returns>
public PLC Result< double > ReadDouble ( string address )
public Result< double > ReadDouble ( string address )
{
var operateResult = siemensS7Net . ReadDouble ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -189,7 +188,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public PLC Result Write ( string address , bool value )
public Result Write ( string address , bool value )
{
var operateResult = siemensS7Net . Write ( address , value ) ;
var result = ConvertResult ( operateResult ) ;
@ -201,7 +200,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public PLC Result Write ( string address , byte value )
public Result Write ( string address , byte value )
{
var operateResult = siemensS7Net . Write ( address , value ) ;
var result = ConvertResult ( operateResult ) ;
@ -214,7 +213,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public PLC Result Write ( string address , Int16 value )
public Result Write ( string address , Int16 value )
{
var operateResult = siemensS7Net . Write ( address , value ) ;
var result = ConvertResult ( operateResult ) ;
@ -226,7 +225,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public PLC Result Write ( string address , Int32 value )
public Result Write ( string address , Int32 value )
{
var operateResult = siemensS7Net . Write ( address , value ) ;
var result = ConvertResult ( operateResult ) ;
@ -238,7 +237,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public PLC Result Write ( string address , float value )
public Result Write ( string address , float value )
{
var operateResult = siemensS7Net . Write ( address , value ) ;
var result = ConvertResult ( operateResult ) ;
@ -250,7 +249,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public PLC Result Write ( string address , double value )
public Result Write ( string address , double value )
{
var operateResult = siemensS7Net . Write ( address , value ) ;
var result = ConvertResult ( operateResult ) ;
@ -262,7 +261,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public PLC Result Write ( string address , long value )
public Result Write ( string address , long value )
{
var operateResult = siemensS7Net . Write ( address , value ) ;
var result = ConvertResult ( operateResult ) ;
@ -277,7 +276,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <param name="port"></param>
public async Task < PLC Result> ConnectionAsync ( string address , int port = 0 )
public async Task < Result> ConnectionAsync ( string address , int port = 0 )
{
siemensS7Net . IpAddress = address ;
if ( port > 0 )
@ -296,7 +295,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// <summary>
/// 关闭连接PLC( 长连接)
/// </summary>
public async Task < PLC Result> ColseConnectionAsyn ( )
public async Task < Result> ColseConnectionAsyn ( )
{
var operateResult = await siemensS7Net . ConnectCloseAsync ( ) ;
var result = ConvertResult ( operateResult ) ;
@ -311,7 +310,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public async Task < PLC Result< byte [ ] > > ReadBytesAsync ( string address , ushort length )
public async Task < Result< byte [ ] > > ReadBytesAsync ( string address , ushort length )
{
var operateResult = await siemensS7Net . ReadAsync ( address , length ) ;
var result = ConvertResult ( operateResult ) ;
@ -322,7 +321,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public async Task < PLC Result< bool > > ReadBoolAsync ( string address )
public async Task < Result< bool > > ReadBoolAsync ( string address )
{
var operateResult = await siemensS7Net . ReadBoolAsync ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -334,7 +333,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public async Task < PLC Result< byte > > ReadByteAsync ( string address )
public async Task < Result< byte > > ReadByteAsync ( string address )
{
var operateResult = await siemensS7Net . ReadByteAsync ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -346,7 +345,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public async Task < PLC Result< short > > ReadInt16Async ( string address )
public async Task < Result< short > > ReadInt16Async ( string address )
{
var operateResult = await siemensS7Net . ReadInt16Async ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -358,7 +357,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public async Task < PLC Result< int > > ReadInt32Async ( string address )
public async Task < Result< int > > ReadInt32Async ( string address )
{
var operateResult = await siemensS7Net . ReadInt32Async ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -370,7 +369,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public async Task < PLC Result< long > > ReadLongAsync ( string address )
public async Task < Result< long > > ReadLongAsync ( string address )
{
var operateResult = await siemensS7Net . ReadInt64Async ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -381,7 +380,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// 读取指定地址的Float值
/// </summary>
/// <returns></returns>
public async Task < PLC Result< float > > ReadFloatAsync ( string address )
public async Task < Result< float > > ReadFloatAsync ( string address )
{
var operateResult = await siemensS7Net . ReadFloatAsync ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -392,7 +391,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// 读取指定地址的double值
/// </summary>
/// <returns></returns>
public async Task < PLC Result< double > > ReadDoubleAsync ( string address )
public async Task < Result< double > > ReadDoubleAsync ( string address )
{
var operateResult = await siemensS7Net . ReadDoubleAsync ( address ) ;
var result = ConvertResult ( operateResult ) ;
@ -404,7 +403,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public async Task < PLC Result> WriteAsync ( string address , bool value )
public async Task < Result> WriteAsync ( string address , bool value )
{
var operateResult = await siemensS7Net . WriteAsync ( address , value ) ;
var result = ConvertResult ( operateResult ) ;
@ -416,7 +415,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public async Task < PLC Result> WriteAsync ( string address , byte value )
public async Task < Result> WriteAsync ( string address , byte value )
{
var operateResult = await siemensS7Net . WriteAsync ( address , value ) ;
@ -429,7 +428,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public async Task < PLC Result> WriteAsync ( string address , Int16 value )
public async Task < Result> WriteAsync ( string address , Int16 value )
{
var operateResult = await siemensS7Net . WriteAsync ( address , value ) ;
var result = ConvertResult ( operateResult ) ;
@ -441,7 +440,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public async Task < PLC Result> WriteAsync ( string address , Int32 value )
public async Task < Result> WriteAsync ( string address , Int32 value )
{
var operateResult = await siemensS7Net . WriteAsync ( address , value ) ;
var result = ConvertResult ( operateResult ) ;
@ -453,7 +452,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public async Task < PLC Result> WriteAsync ( string address , float value )
public async Task < Result> WriteAsync ( string address , float value )
{
var operateResult = await siemensS7Net . WriteAsync ( address , value ) ;
var result = ConvertResult ( operateResult ) ;
@ -465,7 +464,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public async Task < PLC Result> WriteAsync ( string address , double value )
public async Task < Result> WriteAsync ( string address , double value )
{
var operateResult = await siemensS7Net . WriteAsync ( address , value ) ;
var result = ConvertResult ( operateResult ) ;
@ -477,7 +476,7 @@ namespace PVDEMCS.Common.Devices.Impl
/// </summary>
/// <param name="address">写入地址</param>
/// <param name="value"></param>
public async Task < PLC Result> WriteAsync ( string address , long value )
public async Task < Result> WriteAsync ( string address , long value )
{
var operateResult = await siemensS7Net . WriteAsync ( address , value ) ;
var result = ConvertResult ( operateResult ) ;
@ -493,9 +492,9 @@ namespace PVDEMCS.Common.Devices.Impl
/// <param name="result"></param>
/// <returns></returns>
private PLC Result ConvertResult ( OperateResult result )
private Result ConvertResult ( OperateResult result )
{
var retResult = ModelTools . PubClone < OperateResult , PLC Result> . Trans ( result ) ;
var retResult = ModelTools . PubClone < OperateResult , Result> . Trans ( result ) ;
return retResult ;
}
@ -505,9 +504,9 @@ namespace PVDEMCS.Common.Devices.Impl
/// <param name="result"></param>
/// <returns></returns>
private PLC Result< T > ConvertResult < T > ( OperateResult < T > result )
private Result< T > ConvertResult < T > ( OperateResult < T > result )
{
var retResult = ModelTools . PubClone < OperateResult < T > , PLC Result< T > > . Trans ( result ) ;
var retResult = ModelTools . PubClone < OperateResult < T > , Result< T > > . Trans ( result ) ;
retResult . Content = result . Content ;
return retResult ;
}