You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

96 lines
3.0 KiB
C#

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using AUCMA.STORE.Entity.DAO;
using AUCMA.STORE.Entity.DTO;
using AUCMA.STORE.Entity.Enums;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace AUCMA.STORE.Business.Interface
{
public delegate void RecvIdentifyPilerDataSignal(object[] pLCAddressTypeDTO);
public delegate void RecvIdentifyRGVDataSignal(object[] pLCAddressTypeDTO);
public delegate void RecvIdentifyBarCodeSignal(string BarCode);
public delegate void RecvIdentifyPilerAlarmSignal(object[] pLCAlarmInfoDTOs,string PLCName);
public delegate void SignalReadRefresh(int state,int type);
public delegate void TaskInfoInvoke(int TaskNo, TaskType taskType, LocationArea locationArea, string locationCode);
public interface IPlcBusinessService
{
event TaskInfoInvoke TaskInfoRefreshEvent;
event SignalReadRefresh SignalReadRefreshEvent;
/// <summary>
/// 上传箱体条码
/// </summary>
event RecvIdentifyBarCodeSignal RecvIdentifyBarCodeEvent;
/// <summary>
/// 上传堆垛机PLC信号
/// </summary>
event RecvIdentifyPilerDataSignal RecvIdentifyPilerDataEvent;
/// <summary>
/// 上传RGV信号
/// </summary>
event RecvIdentifyRGVDataSignal RecvIdentifyRGVDataEvent;
/// <summary>
/// 上传PLC报警信息
/// </summary>
event RecvIdentifyPilerAlarmSignal RecvIdentifyPilerAlarmEvent;
/// <summary>
/// 堆垛机设备急停
/// </summary>
/// <param name="num"></param>
/// <returns></returns>
bool WritePilerStop(int num, string stopflag);
/// <summary>
/// 控制线体急停
/// </summary>
/// <param name="value">1停止0启动</param>
/// <returns></returns>
bool WriteRGVStop(string value);
/// <summary>
/// 程序启动时加载设备信息
/// </summary>
void LoadDeviceInfo();
/// <summary>
/// 读取输送线入库信号
/// </summary>
bool ReadPilerInStoreSignal(int num);
/// <summary>
/// 写入堆垛机入库信号
/// </summary>
bool WritePilerInStoreSinal(int num, PlcDirectiveDTO taskDTO);
/// <summary>
/// 读取入库完成信号
/// </summary>
bool ReadInStoreCompleteSignal(int num);
/// <summary>
/// 读取RGV入库信号
/// </summary>
/// <param name="num">设备编号</param>
/// <param name="locationArea">位置</param>
/// <returns></returns>
bool ReadRGVInStoreSignal(int num, LocationArea locationArea);
#region 出库业务接口
/// <summary>
/// 判断堆垛机当前状态
/// </summary>
/// <returns></returns>
List<PilerStatusDTO> GetPilerWorkState();
bool WritePilerOutStoreSinal(int num, PlcDirectiveDTO taskDTO);
void doWhileReadPlcPilerSignal(LocationArea locationArea);
#endregion
}
}