SL
|
2dd2854ecd
|
修正Interlock可能过早触发的问题。
优化IIoBuffer接口和IoManager对象
- 增加DOMap、DIMap等属性,使私有的_doMap等字段可以被外部对象访问,准备好分离IoManager和InterlockManager。
- 移除初始化InterlockManager的代码。
- 移除OnTimer方法,以及调用OnTimer的后台县城。
优化IIoProvider接口、IoProvider对象
- 新增IsSynced属性,用于检查IoProvider对象是否已经和PLC进行了数据同步。
- 优化IoProvider对象的OnTimer方法中的代码,整理结构并删除多余的代码。
优化IoProviderManager对象
- 新增WaitFirstSync方法,用于检测是否所有的IoProvider均同步了PLC数据。
优化InterlockManagerBase和InterlockManager对象
- Initialize方法返回值由bool变更为void。
- Initialize方法参数表中的doMap、diMap等参数变更为IIoBuffer对象。
- 新增OnTimer方法以及PeriodicJob变量,用于背景线程中执行互锁检查。
优化代码格式
- IoDataCache对象中增加一些注释。
|
2024-03-24 12:09:11 +08:00 |
SL
|
6c727478a7
|
Merge branch 'feature/high-performance-data-collector' into DevelopBase
# Conflicts:
# MECF.Framework.Common/Aitex/Core/RT/IOCore/AIAccessor.cs
# MECF.Framework.Common/Aitex/Core/RT/IOCore/AOAccessor.cs
# MECF.Framework.Common/Aitex/Core/RT/IOCore/DIAccessor.cs
# MECF.Framework.Common/Aitex/Core/RT/IOCore/DOAccessor.cs
# MECF.Framework.Common/Aitex/Core/RT/IOCore/IOAccessor.cs
# MECF.Framework.Common/Aitex/Core/RT/IOCore/Interfaces/IIOAccessor.cs
# MECF.Framework.Common/MECF/Framework/Common/IOCore/IoManager.cs
# MECF.Framework.RT.EquipmentLibrary/Devices/IoLineHeater.cs
# MECF.Framework.RT.EquipmentLibrary/Devices/IoMFC.cs
# MECF.Framework.RT.EquipmentLibrary/Devices/IoTC.cs
# SimulatorCore/IoProviders/SimulatorIO.cs
|
2024-02-26 09:18:51 +08:00 |
SL
|
7a04f50236
|
[Common]
修正模拟器启动时TM PLC模拟器SimulatorIO的OnTimer()方法中写AO引发NullReferenceException异常的问题。
|
2024-01-12 18:11:24 +08:00 |
SL
|
92cd62b0a8
|
[Common]
IO定义中增加DisImmCache属性,用于禁止IOAccessor对象调佣ImmediateCache()方法,避免PLC心跳AO导致周期性调用DoCache()方法。
|
2024-01-11 15:19:20 +08:00 |
SL
|
151b293483
|
[Common]
优化IOAccessor及其子类的构造函数,传入IsSimulator参数以指示当前对象是否用于模拟器。
新增SimulatorIoManager对象,专用于模拟器中构造IoManager。
修正DataRecorderManager中没有正确分表的问题。
修改DataRecorderCache中的MAX_SIZE_SQL_EXPR常量,从5MB变更为50MB,以优化构造SQL语句超过200ms的问题。
|
2024-01-07 11:29:22 +08:00 |
auvkk
|
c8848e60c9
|
导入Commit 42b498f IO相关对象的优化。
|
2024-01-05 13:44:53 +08:00 |
auvkk
|
13674dc2c8
|
[UI.Client]
UI中的点表支持中文显示。
|
2023-12-18 17:29:57 +08:00 |
auvkk
|
42b498f6a8
|
[Common]
优化IoManager、IOAccssor相关代码。
|
2023-12-18 16:39:16 +08:00 |
auvkk
|
e4a31589da
|
[Common]
整理IoManager.cs格式
|
2023-12-15 10:10:23 +08:00 |
auvkk
|
094abb37c9
|
[Common]
IoManager启动Monitor线程的时机从构造函数移至Initialize()方法。
BoolDataPollProvider中增加断言,方便调试时发现数据注册问题。
[UI.Client]
优化RecipeData的GetXmlString()方法,修正当ComboBox类型参数的Option不存在于格式模板文件中是,输出错误信息,而不是直接抛异常导致难以定位错误的问题。
|
2023-10-25 16:40:36 +08:00 |
SL
|
9c451c6646
|
[RT.Equipment]
恢复IoInterLock对象的Monitor()方法。
恢复IoVavle中检测BypassEnableTable的系统配置。
PMModuleBase对象中新增属性IsBypassEnableTable。
[Common]
从IoManager中移除InterlockDaemonManager对象的初始化过程。
|
2023-08-31 11:40:28 +08:00 |
SL
|
74c2f66484
|
[Common]
将字段_dicLimitToActionMap、_dicLimitPerModule从InterlockManager对象移至InterlockManagerBase对象。
优化InterlockManager对象的Initialize方法,精简代码。
优化Interlock相关对象的目录结构和命名空间。
|
2023-08-17 09:43:24 +08:00 |
SL
|
fa0774046c
|
[Common]
修正IoManager中初始化InterlockManager和InterlockDaemonManager时未使用Singleton的问题。
|
2023-08-17 00:39:12 +08:00 |
SL
|
4ba62bfbbf
|
[UI.Core]
移除EngMode相关的Converters。
[UI.Client]
ModuleStatusIndicator对象增加Warning图标和Warning图标Tips。
[RT.Equipment]
PMModuleBase对象新增IsInterlockBypassed属性,用于指示PM模组是否旁路互锁。
|
2023-08-15 15:36:38 +08:00 |
SL
|
7ae695656b
|
优化Interlock系统,增加Interlock Daemon相关对象,用于在后台监测数据,并自动设置DO输出。
|
2023-08-10 16:44:46 +08:00 |
SL
|
3659369911
|
修正IoManager对象中重复创建OnTimer线程的问题。
|
2023-08-09 17:46:27 +08:00 |
DESKTOP-1N1NK8A\auvkk
|
21e94b96fd
|
[Common]
新增IInterlockLimit接口,并将InterlockLimit改为泛型对象,以支持模拟量判断。
移除CustomLimitBase对象。
优化Interlock相关对象的代码结构,增加注释,为docfx做好准备。
|
2023-04-21 17:56:29 +08:00 |
DESKTOP-GPE37UV\THINKAPD
|
1ace450916
|
Add project files.
|
2023-04-13 11:51:03 +08:00 |