Commit 29fc87a5 张东亮

测试可用

1 个父辈 757c5c07
...@@ -105,7 +105,6 @@ namespace LogisticsIntelligence ...@@ -105,7 +105,6 @@ namespace LogisticsIntelligence
this.Name = "FrmMain"; this.Name = "FrmMain";
this.Text = "LiftController"; this.Text = "LiftController";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmMain_FormClosing); this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FrmMain_FormClosing);
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.FrmMain_FormClosed);
this.Load += new System.EventHandler(this.FrmMain_Load); this.Load += new System.EventHandler(this.FrmMain_Load);
this.tableLayoutPanel1.ResumeLayout(false); this.tableLayoutPanel1.ResumeLayout(false);
this.groupBox1.ResumeLayout(false); this.groupBox1.ResumeLayout(false);
......
...@@ -29,11 +29,6 @@ namespace LogisticsIntelligence ...@@ -29,11 +29,6 @@ namespace LogisticsIntelligence
AddForm(" IO列表 ", frmi); AddForm(" IO列表 ", frmi);
timer1.Start(); timer1.Start();
} }
private void FrmMain_FormClosed(object sender, FormClosedEventArgs e)
{
//appContext.Close();
timer1.Enabled = false;
}
private void UpdateLift() private void UpdateLift()
{ {
this.Invoke(new Action(()=> { this.Invoke(new Action(()=> {
...@@ -52,6 +47,11 @@ namespace LogisticsIntelligence ...@@ -52,6 +47,11 @@ namespace LogisticsIntelligence
{ {
e.Cancel = true; e.Cancel = true;
} }
else
{
timer1.Enabled = false;
System.Environment.Exit(System.Environment.ExitCode);
}
} }
private void AddForm(string text, Form form) private void AddForm(string text, Form form)
{ {
......
类型,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义,SlaveID 类型,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义,SlaveID
PRO,IO模块对应的DI数量,IO_DILength,192.168.103.21#8;192.168.103.22#8,,,,,, PRO,IO模块对应的DI数量,IO_DILength,10.85.199.29#8;192.168.103.22#8,,,,,,
PRO,模块对应的DO数量,IO_DOLength,192.168.103.21#8;192.168.103.22#8,,,,,, PRO,模块对应的DO数量,IO_DOLength,10.85.199.29#8;192.168.103.22#8,,,,,,
PRO,IO模块IP,PRO_AOI_IP_1,192.168.103.21,,,,,, PRO,IO模块IP,PRO_AOI_IP_1,10.85.199.29,,,,,,
PRO,IO模块IP,PRO_AOI_IP_2,192.168.103.22,,,,,,
,,,,,,,,, ,,,,,,,,,
DI,D2-任务应答,LIFT_D2_Response,0,PRO_AOI_IP_1,0,D2-任务应答,X21,X21,0 DI,D2-任务应答,LIFT_D2_Response,0,PRO_AOI_IP_1,0,D2-任务应答,X21,X21,0
DI,D2-到达1F,LIFT_D2_AtFirst,1,PRO_AOI_IP_1,0,D2-到达1F,X22,X22,0 DI,D2-到达1F,LIFT_D2_AtFirst,1,PRO_AOI_IP_1,0,D2-到达1F,X22,X22,0
......
...@@ -6,11 +6,13 @@ namespace DeviceLibrary.Context ...@@ -6,11 +6,13 @@ namespace DeviceLibrary.Context
{ {
ServiceContext serviceContext = new ServiceContext(); ServiceContext serviceContext = new ServiceContext();
LineManager lineManager = new LineManager(); LineManager lineManager = new LineManager();
public void Init() public void Init()
{ {
LiftContext.Init(); LiftContext.Init();
lineManager.Init(); lineManager.Init();
IOManager.Init(); IOManager.Init();
IOManager.instance.ConnectionIOList(LineManager.Config.DIODeviceNameList);
} }
public void Open() public void Open()
{ {
......
...@@ -5,6 +5,7 @@ using System.Collections.Generic; ...@@ -5,6 +5,7 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading; using System.Threading;
using System.Threading.Tasks;
namespace DeviceLibrary namespace DeviceLibrary
{ {
...@@ -21,21 +22,18 @@ namespace DeviceLibrary ...@@ -21,21 +22,18 @@ namespace DeviceLibrary
if (LineManager.Config.DOList.ContainsKey(ioType)) if (LineManager.Config.DOList.ContainsKey(ioType))
{ {
int trytimes = 5; int trytimes = 5;
ConfigIO configIo = LineManager.Config.DOList[ioType]; ConfigIO configIo = LineManager.Config.DOList[ioType];
instance.WriteSingleDO(configIo.IO_IP, configIo.SlaveID, configIo.GetIOAddr(), ioValue);
instance.WriteSingleDO(configIo.IO_IP, configIo.SlaveID, configIo.GetIOAddr(), ioValue); instance.WriteSingleDO(configIo.IO_IP, configIo.SlaveID, configIo.GetIOAddr(), ioValue);
Thread.Sleep(60); Thread.Sleep(100);
while(trytimes>0 && !IOValue(ioType).Equals(ioValue))
{
instance.WriteSingleDO(configIo.IO_IP, configIo.SlaveID, configIo.GetIOAddr(), ioValue);
trytimes--;
}
} }
else else
{ {
LogUtil.error("没有DO=" + ioType); LogUtil.error("没有DO=" + ioType);
} }
} }
public static void CIOMove(string ioType,IO_VALUE ioValue) public static void CIOMove(string ioType, IO_VALUE ioValue)
{ {
if (!IOValue(ioType).Equals(ioValue)) if (!IOValue(ioType).Equals(ioValue))
{ {
...@@ -62,11 +60,11 @@ namespace DeviceLibrary ...@@ -62,11 +60,11 @@ namespace DeviceLibrary
} }
return ioValue; return ioValue;
} }
public static IO_VALUE DOValue(string ioType ) public static IO_VALUE DOValue(string ioType)
{ {
IO_VALUE ioValue = IO_VALUE.None; IO_VALUE ioValue = IO_VALUE.None;
ConfigIO configIo = GetDO(ioType ); ConfigIO configIo = GetDO(ioType);
if (configIo != null) if (configIo != null)
{ {
...@@ -78,10 +76,10 @@ namespace DeviceLibrary ...@@ -78,10 +76,10 @@ namespace DeviceLibrary
} }
return ioValue; return ioValue;
} }
public static IO_VALUE DIValue(string ioType ) public static IO_VALUE DIValue(string ioType)
{ {
IO_VALUE ioValue = IO_VALUE.None; IO_VALUE ioValue = IO_VALUE.None;
ConfigIO configIo = GetDI(ioType ); ConfigIO configIo = GetDI(ioType);
if (configIo != null) if (configIo != null)
{ {
ioValue = instance.GetDIValue(configIo.IO_IP, configIo.SlaveID, configIo.GetIOAddr()); ioValue = instance.GetDIValue(configIo.IO_IP, configIo.SlaveID, configIo.GetIOAddr());
...@@ -92,7 +90,7 @@ namespace DeviceLibrary ...@@ -92,7 +90,7 @@ namespace DeviceLibrary
} }
return ioValue; return ioValue;
} }
private static ConfigIO GetDI(string ioType ) private static ConfigIO GetDI(string ioType)
{ {
ConfigIO configIo = null; ConfigIO configIo = null;
if (LineManager.Config.DIList.ContainsKey(ioType)) if (LineManager.Config.DIList.ContainsKey(ioType))
...@@ -101,13 +99,13 @@ namespace DeviceLibrary ...@@ -101,13 +99,13 @@ namespace DeviceLibrary
} }
return configIo; return configIo;
} }
private static ConfigIO GetDO(string ioType ) private static ConfigIO GetDO(string ioType)
{ {
ConfigIO configIo = null; ConfigIO configIo = null;
if (LineManager.Config.DOList.ContainsKey(ioType)) if (LineManager.Config.DOList.ContainsKey(ioType))
{ {
return LineManager.Config.DOList[ioType]; return LineManager.Config.DOList[ioType];
} }
return configIo; return configIo;
} }
#endregion #endregion
...@@ -123,7 +121,7 @@ namespace DeviceLibrary ...@@ -123,7 +121,7 @@ namespace DeviceLibrary
instance = new KNDManager(); instance = new KNDManager();
} }
} }
public abstract void ReadAllDI(string deviceName, byte slaveId); public abstract void ReadAllDI(string deviceName, byte slaveId);
public abstract void ReadAllDO(string deviceName, byte slaveId); public abstract void ReadAllDO(string deviceName, byte slaveId);
...@@ -136,7 +134,7 @@ namespace DeviceLibrary ...@@ -136,7 +134,7 @@ namespace DeviceLibrary
public abstract IO_VALUE GetDOValue(string deviceName, byte slaveID, ushort v); public abstract IO_VALUE GetDOValue(string deviceName, byte slaveID, ushort v);
public abstract IO_VALUE GetIOValue(ConfigIO configIO); public abstract IO_VALUE GetIOValue(ConfigIO configIO);
......
...@@ -72,7 +72,7 @@ namespace DeviceLibrary.Models ...@@ -72,7 +72,7 @@ namespace DeviceLibrary.Models
/// <returns></returns> /// <returns></returns>
public bool IsIdle(out string msg) public bool IsIdle(out string msg)
{ {
msg = "ok"; msg = "";
if (Monitor.TryEnter(locObj, 500)) if (Monitor.TryEnter(locObj, 500))
{ {
...@@ -175,23 +175,36 @@ namespace DeviceLibrary.Models ...@@ -175,23 +175,36 @@ namespace DeviceLibrary.Models
} }
if (IOManager.IOValue($"{liftId}{SettingString._AGVRequest}").Equals(IO_VALUE.HIGH)) if (IOManager.IOValue($"{liftId}{SettingString._AGVRequest}").Equals(IO_VALUE.HIGH))
{ {
if (IOManager.IOValue($"{liftId}{SettingString._Response}").Equals(IO_VALUE.HIGH) &&
IOManager.IOValue($"{liftId}{SettingString._DoorOpen}").Equals(IO_VALUE.HIGH))
{
OpenAGVLeave(5);
LogUtil.info($"{lift} 上一次异常退出,发送AGV离开清除异常状态!");
return false;
}
if (IOManager.IOValue($"{liftId}{SettingString._Response}").Equals(IO_VALUE.HIGH)) if (IOManager.IOValue($"{liftId}{SettingString._Response}").Equals(IO_VALUE.HIGH))
{ {
SetState(LiftState.Busy); SetState(LiftState.Busy);
Status.Set(lift); Status.Set(lift);
LogUtil.info($"{lift} 成功!"); msg = "ok";
return true; return true;
} }
} }
else else
{ {
IOManager.IOMove($"{liftId}{SettingString._AGVRequest}", IO_VALUE.HIGH); OpenAGVRequest(true);
Thread.Sleep(2000); Thread.Sleep(2000);
if (IOManager.IOValue($"{liftId}{SettingString._Response}").Equals(IO_VALUE.HIGH)) if (IOManager.IOValue($"{liftId}{SettingString._Response}").Equals(IO_VALUE.HIGH))
{ {
if (IOManager.IOValue($"{liftId}{SettingString._DoorOpen}").Equals(IO_VALUE.HIGH))
{
OpenAGVLeave(5);
LogUtil.info($"{lift} 上一次异常退出,发送AGV离开清除异常状态!");
return false;
}
SetState(LiftState.Busy); SetState(LiftState.Busy);
Status.Set(lift); Status.Set(lift);
LogUtil.info($"{lift} 成功!"); msg = "ok";
return true; return true;
} }
msg = "电梯未任务应答"; msg = "电梯未任务应答";
...@@ -209,29 +222,29 @@ namespace DeviceLibrary.Models ...@@ -209,29 +222,29 @@ namespace DeviceLibrary.Models
{ {
if (CanControl(doorInfo)) if (CanControl(doorInfo))
{ {
IOManager.IOMove($"{liftId}{SettingString._AGVLeave}", IO_VALUE.HIGH);
Thread.Sleep(3000); if (IsDesClient(doorInfo))
bool rtn = IOManager.IOValue($"{liftId}{SettingString._AGVLeave}").Equals(IO_VALUE.HIGH);
if (rtn && IsDesClient(doorInfo))
{ {
//关闭送料信号
CloseSendFloor();
//AGV离开信号,使得门关
CloseDoor();
Status.Clear(); Status.Clear();
SetState(LiftState.Idle); SetState(LiftState.Idle);
//关闭所有IO //是否继续使用电梯
CloseAllDO(); OpenAGVRequest(doorInfo.continueUse);
LogUtil.info($"AGV离开,{doorInfo.sourceFloor}[{doorInfo.sourceFloor}]取出电梯[{liftId}]内的产品,清除电梯占用"); LogUtil.info($"AGV离开,{doorInfo.sourceFloor}[{doorInfo.sourceFloor}][{doorInfo.continueUse}]取出电梯[{liftId}]内的产品,清除电梯占用");
} }
if (rtn && IsSrcClient(doorInfo))
if (IsSrcClient(doorInfo))
{ {
//关闭呼叫信号 //关闭呼叫信号
CloseCallFloor(); CloseCallFloor();
if (!Status.destinationFloor.Equals(0)) //AGV离开信号,使得门关
CloseDoor();
if (!Status.destinationFloor.Equals(-1))
{ {
RunToFloor(Status.destinationFloor); RunToFloor(Status.destinationFloor);
while (!CheckIsInRun())
{
Thread.Sleep(3000);
RunToFloor(Status.destinationFloor);
}
LogUtil.info($"AGV离开,{doorInfo.sourceFloor}[{doorInfo.sourceFloor}]将产品送入电梯[{liftId}]"); LogUtil.info($"AGV离开,{doorInfo.sourceFloor}[{doorInfo.sourceFloor}]将产品送入电梯[{liftId}]");
} }
} }
...@@ -239,44 +252,49 @@ namespace DeviceLibrary.Models ...@@ -239,44 +252,49 @@ namespace DeviceLibrary.Models
} }
return false; return false;
} }
private bool CheckIsInRun()
{
return IOManager.IOValue($"{liftId}{SettingString._InRun}").Equals(IO_VALUE.HIGH);
}
private bool CheckIsFault()
{
return IOManager.IOValue($"{liftId}{SettingString._InFault}").Equals(IO_VALUE.HIGH);
}
/// <summary> /// <summary>
/// 运行到指定楼层(送料信号) /// 运行到指定楼层(送料信号)
/// </summary> /// </summary>
/// <param name="floor"></param> /// <param name="floor"></param>
private void RunToFloor(int floor) private void RunToFloor(int floor)
{ {
switch (floor) Task.Factory.StartNew(() => {
{ switch (floor)
//case -1: {
// IOManager.CIOMove($"{liftId}{SettingString._RunToNegativeFirst}", IO_VALUE.HIGH); //case -1:
// break; // IOManager.CIOMove($"{liftId}{SettingString._RunToNegativeFirst}", IO_VALUE.HIGH);
case 1: // break;
IOManager.CIOMove($"{liftId}{SettingString._RunToFirst}", IO_VALUE.HIGH); case 1:
break; IOManager.CIOMove($"{liftId}{SettingString._RunToFirst}", IO_VALUE.HIGH);
break;
//case 2: //case 2:
// IOManager.CIOMove($"{liftId}{SettingString._RunToSecond}", IO_VALUE.HIGH); // IOManager.CIOMove($"{liftId}{SettingString._RunToSecond}", IO_VALUE.HIGH);
// break; // break;
case 3: case 3:
IOManager.CIOMove($"{liftId}{SettingString._RunToThird}", IO_VALUE.HIGH); IOManager.CIOMove($"{liftId}{SettingString._RunToThird}", IO_VALUE.HIGH);
break; break;
case 4: case 4:
IOManager.CIOMove($"{liftId}{SettingString._RunToFourth}", IO_VALUE.HIGH); IOManager.CIOMove($"{liftId}{SettingString._RunToFourth}", IO_VALUE.HIGH);
break; break;
} }
DateTime dateTime1 = DateTime.Now;
//等待运行信号亮
while (!CheckIsInRun())
{
if ((DateTime.Now - dateTime1).TotalSeconds > 10)
{
LogUtil.error("检查AGV送料信号有效:等待电梯运行信号超时");
break;
}
Thread.Sleep(1000);
}
LogUtil.info($"送料信号:运行到{floor}层");
CloseSendFloor();
});
} }
/// <summary> /// <summary>
/// 运行到指定楼层(呼叫信号) /// 运行到指定楼层(呼叫信号)
/// </summary> /// </summary>
...@@ -326,7 +344,7 @@ namespace DeviceLibrary.Models ...@@ -326,7 +344,7 @@ namespace DeviceLibrary.Models
return; return;
if (!liftId.Equals(clientStatus.liftId)) if (!liftId.Equals(clientStatus.liftId))
return; return;
int floor = 0; int floor = -1;
if (IOManager.IOValue($"{liftId}{SettingString._AtFirst}").Equals(IO_VALUE.HIGH)) if (IOManager.IOValue($"{liftId}{SettingString._AtFirst}").Equals(IO_VALUE.HIGH))
{ {
floor = 1; floor = 1;
...@@ -345,6 +363,8 @@ namespace DeviceLibrary.Models ...@@ -345,6 +363,8 @@ namespace DeviceLibrary.Models
{ {
Status.door = "opened"; Status.door = "opened";
RunState = LiftRunState.DoorOpen; RunState = LiftRunState.DoorOpen;
//关闭呼叫信号
CloseCallFloor();
} }
else else
{ {
...@@ -370,19 +390,91 @@ namespace DeviceLibrary.Models ...@@ -370,19 +390,91 @@ namespace DeviceLibrary.Models
clientInfo.SetInfo(clientStatus.sourceClient, clientStatus.hasIdleAgv); clientInfo.SetInfo(clientStatus.sourceClient, clientStatus.hasIdleAgv);
} }
} }
private void CloseAllDO() private void CloseSendFloor()
{ {
IOManager.CIOMove($"{liftId}{SettingString._AGVRequest}", IO_VALUE.LOW);
IOManager.CIOMove($"{liftId}{SettingString._AGVLeave}", IO_VALUE.LOW);
IOManager.CIOMove($"{liftId}{SettingString._RunToFirst}", IO_VALUE.LOW); IOManager.CIOMove($"{liftId}{SettingString._RunToFirst}", IO_VALUE.LOW);
IOManager.CIOMove($"{liftId}{SettingString._RunToThird}", IO_VALUE.LOW); IOManager.CIOMove($"{liftId}{SettingString._RunToThird}", IO_VALUE.LOW);
IOManager.CIOMove($"{liftId}{SettingString._RunToFourth}", IO_VALUE.LOW); IOManager.CIOMove($"{liftId}{SettingString._RunToFourth}", IO_VALUE.LOW);
LogUtil.info("关闭所有送料信号");
}
/// <summary>
/// 等待运行信号亮或者关信号
/// </summary>
/// <returns></returns>
private bool CheckAGVLeaveOK()
{
return !CheckDoorOpen() || CheckIsInRun();
}
private bool CheckDoorOpen()
{
return IOManager.IOValue($"{liftId}{SettingString._DoorOpen}").Equals(IO_VALUE.HIGH);
}
private bool CheckIsInRun()
{
return IOManager.IOValue($"{liftId}{SettingString._InRun}").Equals(IO_VALUE.HIGH);
}
private bool CheckIsFault()
{
return IOManager.IOValue($"{liftId}{SettingString._InFault}").Equals(IO_VALUE.HIGH);
}
private void OpenAGVLeave(bool open)
{
if (open)
{
IOManager.CIOMove($"{liftId}{SettingString._AGVLeave}", IO_VALUE.HIGH);
LogUtil.info("打开AGV离开信号");
}
else
{
IOManager.CIOMove($"{liftId}{SettingString._AGVLeave}", IO_VALUE.LOW);
LogUtil.info("关闭AGV离开信号");
}
}
private void OpenAGVLeave(int second)
{
Task.Factory.StartNew(() => {
OpenAGVLeave(true);
Task.Delay(second*1000);
OpenAGVLeave(false);
});
}
private void CloseDoor()
{
Task.Factory.StartNew(()=>
{
OpenAGVLeave(true);
DateTime dateTime = DateTime.Now;
//门关信号
while (CheckDoorOpen() && (DateTime.Now - dateTime).TotalMinutes<1)
{
if ((DateTime.Now - dateTime).TotalSeconds > 5)
{
IOManager.CIOMove($"{liftId}{SettingString._AGVLeave}", IO_VALUE.HIGH);
}
Thread.Sleep(300);
}
OpenAGVLeave(false);
});
}
private void OpenAGVRequest(bool open)
{
if (open)
{
IOManager.CIOMove($"{liftId}{SettingString._AGVRequest}", IO_VALUE.HIGH);
LogUtil.info("打开AGV请求信号");
}
else
{
IOManager.CIOMove($"{liftId}{SettingString._AGVRequest}", IO_VALUE.LOW);
LogUtil.info("关闭AGV请求信号");
}
} }
private void CloseCallFloor() private void CloseCallFloor()
{ {
IOManager.CIOMove($"{liftId}{SettingString._FirstCall}", IO_VALUE.LOW); IOManager.CIOMove($"{liftId}{SettingString._FirstCall}", IO_VALUE.LOW);
IOManager.CIOMove($"{liftId}{SettingString._ThirdCall}", IO_VALUE.LOW); IOManager.CIOMove($"{liftId}{SettingString._ThirdCall}", IO_VALUE.LOW);
IOManager.CIOMove($"{liftId}{SettingString._FourthCall}", IO_VALUE.LOW); IOManager.CIOMove($"{liftId}{SettingString._FourthCall}", IO_VALUE.LOW);
LogUtil.info("关闭所有呼叫信号");
} }
} }
/// <summary> /// <summary>
......
...@@ -22,8 +22,11 @@ namespace DeviceLibrary.Models.Service.Request ...@@ -22,8 +22,11 @@ namespace DeviceLibrary.Models.Service.Request
/// <summary> /// <summary>
/// 架子来源层 /// 架子来源层
/// </summary> /// </summary>
public int sourceFloor { get; set; } = 0; public int sourceFloor { get; set; } = -1;
/// <summary>
/// 继续使用电梯
/// </summary>
public bool continueUse {get;set;}=false;
public override string ToString() public override string ToString()
{ {
return $"{sourceClient}[{sourceFloor}]:{liftId}"; return $"{sourceClient}[{sourceFloor}]:{liftId}";
......
...@@ -13,7 +13,7 @@ namespace DeviceLibrary.Models.Service.Response ...@@ -13,7 +13,7 @@ namespace DeviceLibrary.Models.Service.Response
/// <summary> /// <summary>
/// 当前电梯处于哪一层 /// 当前电梯处于哪一层
/// </summary> /// </summary>
public int floor { get; set; } = 0; public int floor { get; set; } = -1;
/// <summary> /// <summary>
/// 电梯门是否打开,打开=opened,关闭=closed /// 电梯门是否打开,打开=opened,关闭=closed
/// </summary> /// </summary>
...@@ -25,7 +25,7 @@ namespace DeviceLibrary.Models.Service.Response ...@@ -25,7 +25,7 @@ namespace DeviceLibrary.Models.Service.Response
/// <summary> /// <summary>
/// 架子来源楼层 /// 架子来源楼层
/// </summary> /// </summary>
public int sourceFloor { get; set; } = 0; public int sourceFloor { get; set; } = -1;
/// <summary> /// <summary>
/// 架子来源点位 /// 架子来源点位
/// </summary> /// </summary>
...@@ -37,7 +37,7 @@ namespace DeviceLibrary.Models.Service.Response ...@@ -37,7 +37,7 @@ namespace DeviceLibrary.Models.Service.Response
/// <summary> /// <summary>
/// 目的地楼层 /// 目的地楼层
/// </summary> /// </summary>
public int destinationFloor { get; set; } = 0; public int destinationFloor { get; set; } = -1;
/// <summary> /// <summary>
/// 目的地点位 /// 目的地点位
/// </summary> /// </summary>
...@@ -65,10 +65,10 @@ namespace DeviceLibrary.Models.Service.Response ...@@ -65,10 +65,10 @@ namespace DeviceLibrary.Models.Service.Response
public void Clear() public void Clear()
{ {
sourceClient = ""; sourceClient = "";
sourceFloor = 0; sourceFloor = -1;
sourcePoint = ""; sourcePoint = "";
destinationClient = ""; destinationClient = "";
destinationFloor = 0; destinationFloor = -1;
destinationPoint = ""; destinationPoint = "";
} }
} }
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
using System.Runtime.Serialization; using System.Runtime.Serialization;
using System.ServiceModel; using System.ServiceModel;
using System.ServiceModel.Web; using System.ServiceModel.Web;
using System.Threading.Tasks;
namespace DeviceLibrary.Service namespace DeviceLibrary.Service
{ {
......
...@@ -29,6 +29,7 @@ namespace DeviceLibrary.Service ...@@ -29,6 +29,7 @@ namespace DeviceLibrary.Service
} }
else else
{ {
Log.Info($"AGVLeave接口被调用:{doorInfo}");
Context.LiftContext.AGVLeave(doorInfo,out string msg); Context.LiftContext.AGVLeave(doorInfo,out string msg);
result.msg = msg; result.msg = msg;
} }
...@@ -49,6 +50,7 @@ namespace DeviceLibrary.Service ...@@ -49,6 +50,7 @@ namespace DeviceLibrary.Service
} }
else else
{ {
Log.Info($"AGVCall接口被调用:{doorInfo}");
Context.LiftContext.AGVCall(doorInfo, out string msg); Context.LiftContext.AGVCall(doorInfo, out string msg);
result.msg = msg; result.msg = msg;
} }
...@@ -69,7 +71,8 @@ namespace DeviceLibrary.Service ...@@ -69,7 +71,8 @@ namespace DeviceLibrary.Service
} }
else else
{ {
bool idle= Context.LiftContext.RequestSendIn(sendInInfo,out string msg); Log.Info($"请求接口被调用:{sendInInfo}");
bool idle= Context.LiftContext.RequestSendIn(sendInInfo,out string msg);
result.msg = msg; result.msg = msg;
} }
return result; return result;
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!