Commit e7b17b35 张东亮

自动模式切换逻辑更改

1 个父辈 4b7b6377
...@@ -37,31 +37,41 @@ namespace AGVControl ...@@ -37,31 +37,41 @@ namespace AGVControl
if (!isInit) return; if (!isInit) return;
this.Invoke(new Action(() => this.Invoke(new Action(() =>
{ {
btnReSendTask.Enabled = chkBxAuto.Checked; btnReSendTask.Enabled = chkBxAuto.Checked;
btnAssignTask.Enabled = !chkBxAuto.Checked; btnAssignTask.Enabled = !chkBxAuto.Checked;
if (!chkBxAuto.Checked) if (!chkBxAuto.Checked)//自动-》手动
{ {
Agv.CurJob = null; MiR_API.Del_Mission(Agv);
CommonVar.Standby.DelOccupyInfo(Agv.Name); CommonVar.Standby.DelOccupyInfo(Agv.Name);
CommonVar.Charge.DelOccupyInfo(Agv.Name); CommonVar.Charge.DelOccupyInfo(Agv.Name);
//添加Init任务 //添加Init任务
MiR_API.Add_Mission_Fleet(Agv, CommonVar.agvMission[SettingString.Init]); MiR_API.Add_Mission_Fleet(Agv, CommonVar.agvMission[SettingString.Init]);
MiR_API.State_Ready(Agv); MiR_API.State_Ready(Agv);
if (Agv.Place.Equals(SettingString.Standby) || Agv.Place.Equals(SettingString.AutoCharge))
Agv.Place = "";
} }
else else
{ {
if (!Agv.IsCon)
return;
if (Agv.IsExistShelf) if (Agv.IsExistShelf)
{ {
LogUtil.error(string.Format("{0} 车上有负载,无法开启自动模式,请先清空小车负载!", Agv.Name)); LogUtil.error(string.Format("{0} 车上有负载,无法开启自动模式,请先清空小车负载!", Agv.Name));
return; return;
} }
Agv.CurJob = null; if (MessageBox.Show("是否继续上一次的任务?\r\n" + Agv.Msg, "提示", MessageBoxButtons.YesNo).Equals(DialogResult.No))
MiR_API.Del_Mission_Fleet(Agv, Agv.CurTaskID.ToString()); {
MiR_API.Del_Mission(Agv); Agv.CurJob = null;
Agv.RFID = ""; if (Agv.Place.Equals(SettingString.Standby) || Agv.Place.Equals(SettingString.AutoCharge))
Agv.Place = "";
MiR_API.Del_Mission(Agv);
Agv.RFID = "";
}
else
{
Agv.Resend();
}
} }
Agv.IsUse = chkBxAuto.Checked; Agv.IsUse = chkBxAuto.Checked;
......
...@@ -83,7 +83,7 @@ namespace DeviceLibrary ...@@ -83,7 +83,7 @@ namespace DeviceLibrary
{ {
try try
{ {
CheckOnline(i); if (!CheckOnline(i)) continue;
bool change = false; bool change = false;
MiR_API.Get_Task_State(CommonVar.agvInfo[i].CurTaskID, out string stateStr); MiR_API.Get_Task_State(CommonVar.agvInfo[i].CurTaskID, out string stateStr);
Thread.Sleep(50); Thread.Sleep(50);
......
...@@ -311,18 +311,18 @@ namespace DeviceLibrary ...@@ -311,18 +311,18 @@ namespace DeviceLibrary
if (offlineTimeOut) if (offlineTimeOut)
{ {
isAlarm = true; isAlarm = true;
displayBoard.Add(Name, "Agv." + Name + ".OfflineTimeOut", "在" + PlaceAliceName + "离线" + (DateTime.Now - offlineStartTime).TotalSeconds.ToString("f2") + "秒"); displayBoard.Add(Name, "Agv." + Name + ".Msg", "在" + PlaceAliceName + "离线" + (DateTime.Now - offlineStartTime).TotalSeconds.ToString("f2") + "秒");
} }
if (standTimeOut) if (standTimeOut)
{ {
isAlarm = true; isAlarm = true;
displayBoard.Add(Name, "Agv." + Name + ".StandTimeOut", "在" + PlaceAliceName + "停留超时" + (DateTime.Now - standStartTime).TotalMinutes.ToString("f2") + "分钟"); displayBoard.Add(Name, "Agv." + Name + ".Msg", "在" + PlaceAliceName + "停留超时" + (DateTime.Now - standStartTime).TotalMinutes.ToString("f2") + "分钟");
} }
if (StateID.Equals(eAGVState.Error) || StateID.Equals(eAGVState.EmergencyStop) || StateID.Equals(eAGVState.Pause)) if (StateID.Equals(eAGVState.Error) || StateID.Equals(eAGVState.EmergencyStop) || StateID.Equals(eAGVState.Pause))
{ {
isAlarm = true; isAlarm = true;
displayBoard.Add(Name, "Agv." + Name + ".Error.EmergencyStop", "agv状态:" + StateID.ToString()); displayBoard.Add(Name, "Agv." + Name + ".Msg", "agv状态:" + StateID.ToString());
} }
if (!isAlarm) if (!isAlarm)
{ {
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!