schangxiang@126.com
2025-08-13 a97a624c1fb269a059f97629076433c46b4e8b4c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
 
using iWareCommon.Utils;
using iWareModel;
using System;
 
namespace iWareSda
{
    public class PLCService
    {
        public LogType _LogType;
        public bool IsConnected { get; set; }
 
        /// <summary>
        /// 打开服务
        /// </summary>
        /// <returns></returns>
        public virtual MessageModel OpenService()
        {
            this.IsConnected = false;
            return new MessageModel()
            {
                result = true
            };
        }
        ///// <summary>
        ///// 写入
        ///// </summary>
        ///// <param name="address">地址</param>
        ///// <param name="value">值</param>
        ///// <returns></returns>
        //public virtual MessageModel WriteValuePoint(string dbNumber, string offset, object value)
        //{
        //    return new MessageModel()
        //    {
        //        result = true
        //    };
        //}
 
        /// <summary>
        /// 写入
        /// </summary>
        /// <param name="address">地址</param>
        /// <param name="value">值</param>
        ///  <param name="proObj">属性对象</param>
        /// <returns></returns>
        public virtual MessageModel WriteValuePoint(string dbNumber, string offset, object value, Object proObj)
        {
            return new MessageModel()
            {
                result = true
            };
        }
 
        /// <summary>
        /// 写入
        /// </summary>
        /// <param name="fullAddress">地址</param>
        /// <param name="value">值</param>
        ///  <param name="proObj">属性对象</param>
        /// <returns></returns>
        public virtual MessageModel WriteValuePoint(string fullAddress, object value, Object proObj)
        {
            return new MessageModel()
            {
                result = true
            };
        }
 
        /// <summary>
        /// 写入(需要验证是否真正写入了)
        /// </summary>
        /// <param name="fullAddress">地址</param>
        /// <param name="value">值</param>
        ///  <param name="proObj">属性对象</param>
        /// <returns></returns>
        public virtual MessageModel WriteValuePointForReValidateWriteSucess(string fullAddress, object value, Object proObj)
        {
            return new MessageModel()
            {
                result = false,
                resMsg = "没真正调用方法"
            };
        }
 
        /// <summary>
        /// 读取
        /// </summary>
        /// <param name="dbNumber">DB块名</param>
        /// <param name="offset">偏移量</param>
        /// <param name="type"></param>
        /// <returns></returns>
        public virtual object ReadValuePoint(string dbNumber, string offset, Type type = default(Type))
        {
            return null;
        }
 
        /// <summary>
        /// 读取
        /// </summary>
        /// <param name="fullAddress">地址</param>
        /// <param name="type"></param>
        /// <returns></returns>
        public virtual object ReadValuePoint(string fullAddress, Type type = default(Type))
        {
            return null;
        }
 
        /// <summary>
        /// 获取最终的DB块地址
        /// </summary>
        /// <param name="dbNumber"></param>
        /// <param name="offset"></param>
        /// <param name="type"></param>
        /// <returns></returns>
        public virtual string GetAddress(string dbNumber, string offset, Type type = default(Type))
        {
            return null;
        }
 
        /// <summary>
        /// 关闭连接
        /// </summary>
        public virtual void Close()
        {
 
        }
    }
}