1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- using System;
- using System.Collections.Generic;
- using System.Text;
- using System.Threading;
- using System.Threading.Tasks;
- using ProjectBase.Data.BaseDAL;
- using ProjectBase.Data.Logs;
- using SIMDP.BLL;
- using SIMDP.Device;
- using SIMDP.Model;
- using SIMDP.Util;
- using ACTMULTILib;
- namespace SIMDP.Project
- {
- class MXComponent_HCQ_XZ : MXComponent_HCQ
- {
- #region 重写父类函数
- public override void actionOpen()
- { }
- public override void actionStart()
- { }
- public override void actionStop()
- { }
- bool pcHeartBeat = false;
- public override void actionTimer()
- {
- try
- {
- // 心跳信号
- pcHeartBeat = !pcHeartBeat;
- bool res1 = Write("PC心跳信号", pcHeartBeat);
- // 轮询监控节点
- foreach (var p in monitorPoints)
- {
- short value;
- if (!Read(p, out value)) continue;
- if (value != Convert.ToInt16(p.value))
- {
- p.value = value;
- if (p.proc != null)
- p.proc.Invoke(this, new object[] { value });
- }
- }
- redis.Publish<string>(SysEnvironment.OpcDataChannel, "");
- }
- catch (Exception ex)
- {
- LogHelper.log.Error("读取PLC信号发生异常:" + ex.Message);
- actEasyIF.Close();
- SetRedisPlcDisConnect();
- }
- }
- #endregion
- #region 生产过程_缓冲器2
- public void 缓冲器2芯子压机压装完成(object value)
- {
- bool signal = Convert.ToBoolean(value);
- LogHelper.log.Debug("缓冲器2芯子压机压装完成: signal = " + signal.ToString());
- if (!signal)
- {
- Write("芯子读取完成", false);
- 芯子压机结果 = false;
- 芯子压机关联流水号 = 0;
- 芯子压机加工步骤号 = 0;
- return;
- }
- if (signal)
- {
- Read("芯子压机结果", out 芯子压机结果);//true
- Read("芯子压机关联流水号", out 芯子压机关联流水号);//工件流水号
- Read("芯子压机加工步骤号", out 芯子压机加工步骤号);//2
- }
- if (process_HCQ2[缓冲器2工序.芯子压机].Count == 0)
- {
- Tool.LogAndNotice("生产过程报警", 3, "缓冲器2工序.芯子压机: 生产序列无数据");
- Write("芯子读取完成", true);
- return;
- }
- ProductionData_HCQ2 data = process_HCQ2[缓冲器2工序.芯子压机][0];
- data.dict["芯子压机结果"] = 芯子压机结果 ? "OK" : "NG";
- LogHelper.log.Debug("更新芯子压机结果: " + 芯子压机结果.ToString());
- BLLFactory<BlProductData>.Instance.Update(data.toModel(), data.model.DataId);
- process_HCQ2[缓冲器2工序.芯子压机].RemoveAt(0);
- process_HCQ2[缓冲器2工序.壳体压机].Add(data);
- Write("芯子读取完成", true);
- }
- #endregion
- }
- }
|