123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- using Aitex.Core.RT.Device;
- using Aitex.Core.Util;
- using CyberX8_RT.Devices.AXIS;
- using MECF.Framework.Common.Equipment;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace CyberX8_RT.Devices.TransPorter
- {
- public class TransporterDeviceTimer : BaseDevice, IDevice
- {
- #region 常量
- private const string TRANSPORTER = "Transporter";
- #endregion
- #region 内部变量
- private PeriodicJob _periodicJob;
- private JetAxisBase _loaderTransporterGantryAxis;
- private JetAxisBase _loaderTransporterElevatorAxis;
- private JetAxisBase _processTransporterGantryAxis;
- private JetAxisBase _processTransporterElevatorAxis;
- private TransporterCommon _loaderTransporterCommon;
- private TransporterCommon _processTransporterCommon;
- #endregion
- /// <summary>
- /// 构造函数
- /// </summary>
- public TransporterDeviceTimer() : base(TRANSPORTER, TRANSPORTER, TRANSPORTER, TRANSPORTER)
- {
- _periodicJob = new PeriodicJob(20, OnTimer, $"{TRANSPORTER}.OnTimer", false);
- }
- /// <summary>
- /// 初始化
- /// </summary>
- /// <returns></returns>
- public bool Initialize()
- {
- _loaderTransporterGantryAxis = DEVICE.GetDevice<JetAxisBase>($"{ModuleName.Transporter2}.Gantry");
- _loaderTransporterElevatorAxis = DEVICE.GetDevice<JetAxisBase>($"{ModuleName.Transporter2}.Elevator");
- _loaderTransporterCommon = DEVICE.GetDevice<TransporterCommon>($"{ModuleName.Transporter2}.Common");
- _processTransporterGantryAxis = DEVICE.GetDevice<JetAxisBase>($"{ModuleName.Transporter1}.Gantry");
- _processTransporterElevatorAxis = DEVICE.GetDevice<JetAxisBase>($"{ModuleName.Transporter1}.Elevator");
- _processTransporterCommon = DEVICE.GetDevice<TransporterCommon>($"{ModuleName.Transporter1}.Common");
- _periodicJob.Start();
- return true;
- }
- public void Monitor()
- {
- }
- public void Reset()
- {
- }
- /// <summary>
- /// 中止
- /// </summary>
- public void Terminate()
- {
- _periodicJob.Stop();
- }
- /// <summary>
- /// 定时器执行
- /// </summary>
- /// <returns></returns>
- private bool OnTimer()
- {
- if (_loaderTransporterGantryAxis != null)
- {
- _loaderTransporterGantryAxis.OnTimer();
- }
- if (_loaderTransporterElevatorAxis != null)
- {
- _loaderTransporterElevatorAxis.OnTimer();
- }
- if (_processTransporterGantryAxis != null)
- {
- _processTransporterGantryAxis.OnTimer();
- }
- if (_processTransporterElevatorAxis != null)
- {
- _processTransporterElevatorAxis.OnTimer();
- }
- if (_loaderTransporterCommon != null)
- {
- _loaderTransporterCommon.OnTimer();
- }
- if(_processTransporterCommon!=null)
- {
- _processTransporterCommon.OnTimer();
- }
- return true;
- }
- }
- }
|