Commit 0e94e3ea 张东亮

0129

1 个父辈 afe4d84f
...@@ -11,6 +11,28 @@ ...@@ -11,6 +11,28 @@
<file value="logs/AgvServer.log"/> <file value="logs/AgvServer.log"/>
<param name="Encoding" value="UTF-8"/> <param name="Encoding" value="UTF-8"/>
<appendToFile value="true"/> <appendToFile value="true"/>
<param name="MaxSizeRollBackups" value="30"/>
<rollingStyle value="Date"/>
<datePattern value="yyyy-MM-dd"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date][%t][%c:%L]%-5p %m%n"/>
</layout>
</appender>
<appender name="HttpManager" type="log4net.Appender.RollingFileAppender">
<file value="logs/HttpManager.log"/>
<param name="Encoding" value="UTF-8"/>
<appendToFile value="true"/>
<param name="MaxSizeRollBackups" value="30"/>
<rollingStyle value="Date"/>
<datePattern value="yyyy-MM-dd"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date][%t][%c:%L]%-5p %m%n"/>
</layout>
</appender>
<appender name="AGV_3D_Line" type="log4net.Appender.RollingFileAppender">
<file value="logs/AGV_3D_Line.log"/>
<param name="Encoding" value="UTF-8"/>
<appendToFile value="true"/>
<rollingStyle value="Date"/> <rollingStyle value="Date"/>
<datePattern value="yyyy-MM-dd"/> <datePattern value="yyyy-MM-dd"/>
<layout type="log4net.Layout.PatternLayout"> <layout type="log4net.Layout.PatternLayout">
...@@ -21,12 +43,12 @@ ...@@ -21,12 +43,12 @@
<file value="logs/UnlockInfo.log"/> <file value="logs/UnlockInfo.log"/>
<param name="Encoding" value="UTF-8"/> <param name="Encoding" value="UTF-8"/>
<appendToFile value="true"/> <appendToFile value="true"/>
<param name="MaxSizeRollBackups" value="10"/> <param name="MaxSizeRollBackups" value="30"/>
<!-- 切割最多文件数 --> <!-- 切割最多文件数 -->
<param name="MaximumFileSize" value="100MB"/> <param name="MaximumFileSize" value="50MB"/>
<!-- 每个文件的大小 --> <!-- 每个文件的大小 -->
<param name="RollingStyle" value="Size"/> <param name="RollingStyle" value="Size"/>
<param name="StaticLogFileName" value="true"/> <!--param name="StaticLogFileName" value="true"/-->
<layout type="log4net.Layout.PatternLayout"> <layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date]%-5p %m%n"/> <conversionPattern value="[%date]%-5p %m%n"/>
</layout> </layout>
...@@ -35,20 +57,28 @@ ...@@ -35,20 +57,28 @@
<level value="Info"/> <level value="Info"/>
<appender-ref ref="LineWebService"/> <appender-ref ref="LineWebService"/>
</logger> </logger>
<root> <logger name="AgvServer">
<level value="Info"/> <level value="Info"/>
<appender-ref ref="AgvServer"/> <appender-ref ref="AgvServer"/>
</logger>
<logger name="HttpManager">
<level value="Info"/>
<appender-ref ref="HttpManager"/>
</logger>
<root name="AGV_3D_Line">
<level value="Info"/>
<appender-ref ref="AGV_3D_Line"/>
</root> </root>
</log4net> </log4net>
<appSettings> <appSettings>
<add key="ITS" value="http://10.85.17.233/ESMTCommonInterface/CommonService.asmx/VMIGetBoxDestInfo?boxRFID="/> <add key="ITS" value="10.85.17.233"/>
<add key="WebService" value="http://127.0.0.1/BenQMIR/Webservice/AGVService.asmx/"/> <add key="WebService" value="http://127.0.0.1/BenQMIR/Webservice/AGVService.asmx/"/>
<add key="http.server" value="http://10.85.199.25/myproject/"/> <add key="http.server" value="http://10.85.162.124/myproject/"/>
<add key="FLEET" value="10.85.199.3"/> <add key="FLEET" value="10.85.19.3"/>
<add key="AutoCharge" value="True"/> <add key="UseFleet" value="False"/>
<add key="ChargeWait" value="1"/> <add key="ChargeWait" value="1"/>
<add key="ChargeThreshold" value="20,90"/> <add key="ChargeThreshold" value="20,90"/>
<add key="IP_4D_Light" value="10.85.196.40:8088"/> <add key="IP_3D_Light" value="10.85.197.122:8088"/>
<add key="IP_4C_Light" value="10.85.197.40:8088"/> <add key="IP_3C_Light" value="10.85.197.122:8088"/>
</appSettings> </appSettings>
</configuration> </configuration>
...@@ -137,6 +137,7 @@ ...@@ -137,6 +137,7 @@
this.tabControl1.SelectedIndex = 0; this.tabControl1.SelectedIndex = 0;
this.tabControl1.Size = new System.Drawing.Size(1209, 373); this.tabControl1.Size = new System.Drawing.Size(1209, 373);
this.tabControl1.TabIndex = 7; this.tabControl1.TabIndex = 7;
this.tabControl1.SelectedIndexChanged += new System.EventHandler(this.tabControl1_SelectedIndexChanged);
// //
// tabPage1 // tabPage1
// //
......
...@@ -188,7 +188,7 @@ namespace AGVControl ...@@ -188,7 +188,7 @@ namespace AGVControl
{ {
AGVManager.WriteIni(item.Name, SettingString.RFID, item.RFID); AGVManager.WriteIni(item.Name, SettingString.RFID, item.RFID);
} }
LogUtil.logBox = null;
//showTimer.Enabled = false; //showTimer.Enabled = false;
showTimer.Stop(); showTimer.Stop();
AGVManager.server.NodeChanged -= Server_NodeChanged; AGVManager.server.NodeChanged -= Server_NodeChanged;
...@@ -406,12 +406,12 @@ namespace AGVControl ...@@ -406,12 +406,12 @@ namespace AGVControl
private void btnClearStationRFID_Click(object sender, EventArgs e) private void btnClearStationRFID_Click(object sender, EventArgs e)
{ {
if (!txtBoxLineName.Text.Equals("") && !txtBoxRFID.Text.Equals("")) if (!txtBoxLineName.Text.Equals("") && !txtBoxRFID.Text.Equals("") && AGVManager.GetNodeNameByLineName(txtBoxLineName.Text.ToUpper(),out string nodename))
{ {
try try
{ {
Task.Factory.StartNew(new Action(() => { Task.Factory.StartNew(new Action(() => {
bool rtn = HttpManager.ClearRFID(txtBoxLineName.Text.ToUpper(), txtBoxRFID.Text.ToUpper()); bool rtn = HttpManager.ClearRFID(nodename, txtBoxRFID.Text.ToUpper());
this.Invoke(new Action(() => { label11.Text = rtn ? "清除接驳RFID成功:" + txtBoxLineName.Text + " " + txtBoxRFID.Text : "清除接驳RFID失败:" + txtBoxLineName.Text + " " + txtBoxRFID.Text; })); this.Invoke(new Action(() => { label11.Text = rtn ? "清除接驳RFID成功:" + txtBoxLineName.Text + " " + txtBoxRFID.Text : "清除接驳RFID失败:" + txtBoxLineName.Text + " " + txtBoxRFID.Text; }));
txtBoxLineName.Text = ""; txtBoxLineName.Text = "";
txtBoxRFID.Text = ""; txtBoxRFID.Text = "";
...@@ -464,5 +464,13 @@ namespace AGVControl ...@@ -464,5 +464,13 @@ namespace AGVControl
// tabPageList.Add(lineTabPage); // tabPageList.Add(lineTabPage);
tabControlManual.Controls.Add(lineTabPage); tabControlManual.Controls.Add(lineTabPage);
} }
private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
{
if (tabControl1.SelectedIndex == 1)
{
LogUtil.logBox = this.richTextBox1;
}
}
} }
} }
...@@ -76,8 +76,14 @@ namespace AGVControl ...@@ -76,8 +76,14 @@ namespace AGVControl
{ {
if (MessageBox.Show("确定对小车重发任务?", Agv.Name, MessageBoxButtons.YesNo) == DialogResult.No) if (MessageBox.Show("确定对小车重发任务?", Agv.Name, MessageBoxButtons.YesNo) == DialogResult.No)
return; return;
Task.Factory.StartNew(new Action(()=> {
MiR_API.Clear_Error(Agv);
System.Threading.Thread.Sleep(1000);
MiR_API.State_Ready(Agv);
Agv.Resend(); Agv.Resend();
LogUtil.info(string.Format("{0} 手动重发任务", Agv.Name)); LogUtil.info(string.Format("{0} 手动重发任务", Agv.Name));
}));
} }
} }
...@@ -114,8 +120,12 @@ namespace AGVControl ...@@ -114,8 +120,12 @@ namespace AGVControl
{ {
if (Agv.IsCon) if (Agv.IsCon)
{ {
//Agv.AssignTask(CommonVar.showNameMissionName[cmbBxMission.SelectedItem.ToString()]); string taskName = MissionSys.GetTaskNameByAliceName(cmbBxMission.SelectedItem.ToString());
LogUtil.info(string.Format("{0} 手动发任务 {1}", Agv.Name, cmbBxMission.SelectedItem.ToString())); if (taskName.Equals(SettingString.Enter) || taskName.Equals(SettingString.Leave))
if (MessageBox.Show("确定对小车发送进/出任务?", Agv.Name, MessageBoxButtons.YesNo) == DialogResult.No)
return;
MissionSys.AssignMission(Agv, taskName);
LogUtil.info(string.Format("{0} 手动发任务 [{1}]", Agv.Name, cmbBxMission.SelectedItem.ToString()));
} }
} }
......
...@@ -46,7 +46,7 @@ namespace AGVControl ...@@ -46,7 +46,7 @@ namespace AGVControl
AGVManager.control = new DeviceLibrary.Control(); AGVManager.control = new DeviceLibrary.Control();
//获取节点位置 //获取节点位置
AGVManager.GetNodesPosition(); // AGVManager.GetNodesPosition();
AGVManager.control.Start(); AGVManager.control.Start();
AGVManager.server = new AgvServer(); AGVManager.server = new AgvServer();
AGVManager.server.Start(); AGVManager.server.Start();
......
...@@ -20,9 +20,11 @@ namespace AGV_UI ...@@ -20,9 +20,11 @@ namespace AGV_UI
static string FullBattery = "FullBattery"; static string FullBattery = "FullBattery";
static string ChargeBattery = "ChargeBattery"; static string ChargeBattery = "ChargeBattery";
static string Ready = "Ready"; static string Ready = "Ready";
static string Done = "Done";
static string Pause = "Pause"; static string Pause = "Pause";
static string Executing = "Executing"; static string Executing = "Executing";
static string Aborted = "Aborted"; static string Aborted = "Aborted";
static string Invalid = "Invalid";
static string EmergencyStop = "EmergencyStop"; static string EmergencyStop = "EmergencyStop";
static string ManualControl = "ManualControl"; static string ManualControl = "ManualControl";
static string Error = "Error"; static string Error = "Error";
...@@ -50,12 +52,14 @@ namespace AGV_UI ...@@ -50,12 +52,14 @@ namespace AGV_UI
stateImageList.ImageSize = new System.Drawing.Size(48, 48); stateImageList.ImageSize = new System.Drawing.Size(48, 48);
stateImageList.Images.Add(UNKNOWN, Properties.Resources.Unknown); stateImageList.Images.Add(UNKNOWN, Properties.Resources.Unknown);
stateImageList.Images.Add(Ready, Properties.Resources.ready); stateImageList.Images.Add(Ready, Properties.Resources.ready);
stateImageList.Images.Add(Done, Properties.Resources.ready);
stateImageList.Images.Add(Pause, Properties.Resources.pause); stateImageList.Images.Add(Pause, Properties.Resources.pause);
stateImageList.Images.Add(ManualControl, Properties.Resources.manual); stateImageList.Images.Add(ManualControl, Properties.Resources.manual);
stateImageList.Images.Add(Executing, Properties.Resources.Executing); stateImageList.Images.Add(Executing, Properties.Resources.Executing);
stateImageList.Images.Add(Error, Properties.Resources.Error); stateImageList.Images.Add(Error, Properties.Resources.Error);
stateImageList.Images.Add(EmergencyStop, Properties.Resources.emergency); stateImageList.Images.Add(EmergencyStop, Properties.Resources.emergency);
stateImageList.Images.Add(Aborted, Properties.Resources.Aborted); stateImageList.Images.Add(Aborted, Properties.Resources.Aborted);
stateImageList.Images.Add(Invalid, Properties.Resources.Aborted);
} }
/// <summary> /// <summary>
/// 设置连接状态 /// 设置连接状态
......
...@@ -112,7 +112,7 @@ ...@@ -112,7 +112,7 @@
this.lblAGVState.Size = new System.Drawing.Size(127, 50); this.lblAGVState.Size = new System.Drawing.Size(127, 50);
this.lblAGVState.TabIndex = 1; this.lblAGVState.TabIndex = 1;
this.lblAGVState.Text = "None"; this.lblAGVState.Text = "None";
this.lblAGVState.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; this.lblAGVState.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
// //
// lblTask // lblTask
// //
......
...@@ -69,6 +69,10 @@ namespace AGV_UI ...@@ -69,6 +69,10 @@ namespace AGV_UI
{ {
this.Invoke(new Action(() => this.Invoke(new Action(() =>
{ {
if (curBattery < MinBattery)
lblBattery.ForeColor = Color.White;
else
lblBattery.ForeColor = Color.Black;
lblBattery.Text = objs[0] as string; lblBattery.Text = objs[0] as string;
lblBattery.Image = objs[1] as Image; lblBattery.Image = objs[1] as Image;
} }
......
...@@ -18,9 +18,12 @@ namespace Common ...@@ -18,9 +18,12 @@ namespace Common
public const string DoorAirIn = "DoorAirIn"; public const string DoorAirIn = "DoorAirIn";
public const string DoorAirOut = "DoorAirOut"; public const string DoorAirOut = "DoorAirOut";
public const string AutoCharge = "AutoCharge"; public const string AutoCharge = "AutoCharge";
public const string UseFleet = "UseFleet";
public const string Leave = "Leave"; public const string Leave = "Leave";
public const string Enter = "Enter"; public const string Enter = "Enter";
public const string Init = "Init"; public const string Init = "Init";
//任务状态 //任务状态
public const string Wait = "Wait"; public const string Wait = "Wait";
public const string Done = "Done"; public const string Done = "Done";
...@@ -57,8 +60,8 @@ namespace Common ...@@ -57,8 +60,8 @@ namespace Common
public const string SmallShelf_Prefix = "D"; public const string SmallShelf_Prefix = "D";
public const string RoomC_Name = "3C"; public const string RoomC_Name = "3C";
public const string RoomD_Name= "3D"; public const string RoomD_Name= "3D";
public const string IP_4D_Light = "IP_4D_Light"; public const string IP_3D_Light = "IP_3D_Light";
public const string IP_4C_Light = "IP_4C_Light"; public const string IP_3C_Light = "IP_3C_Light";
public static List<string> Lines_In_Air_Door = new List<string>() { "C100" }; public static List<string> Lines_In_Air_Door = new List<string>() { "C100" };
public static List<string> RoomC_AGV_IPs = new List<string>() { "10.85.199.666"}; public static List<string> RoomC_AGV_IPs = new List<string>() { "10.85.199.666"};
......
...@@ -10,7 +10,7 @@ namespace Common ...@@ -10,7 +10,7 @@ namespace Common
{ {
public class LogUtil public class LogUtil
{ {
public static readonly ILog AIOLog = LogManager.GetLogger("AGV_3D_SMD"); public static readonly ILog AIOLog = LogManager.GetLogger("AGV_3D_Line");
private static LogUtil instance = new LogUtil(); private static LogUtil instance = new LogUtil();
public delegate void ShowLog(string msg,Color color); public delegate void ShowLog(string msg,Color color);
public static readonly ILog LOGGER = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); public static readonly ILog LOGGER = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
......
...@@ -28,7 +28,7 @@ namespace DeviceLibrary ...@@ -28,7 +28,7 @@ namespace DeviceLibrary
{ {
Station = new Dictionary<string, string>(); Station = new Dictionary<string, string>();
Station.Add(AutoCharge1, ""); Station.Add(AutoCharge1, "");
Station.Add(AutoCharge2, ""); //Station.Add(AutoCharge2, "");
string s = AppConfigHelper.GetValue(SettingString.ChargeThreshold); string s = AppConfigHelper.GetValue(SettingString.ChargeThreshold);
string[] arr = s.Split(','); string[] arr = s.Split(',');
...@@ -95,20 +95,21 @@ namespace DeviceLibrary ...@@ -95,20 +95,21 @@ namespace DeviceLibrary
/// <returns></returns> /// <returns></returns>
public bool HasEmptyChargeStation(Agv_Info agv) public bool HasEmptyChargeStation(Agv_Info agv)
{ {
lock(loc) //lock(loc)
{ //{
if (SettingString.FixedCharge_AGV_IPs.Contains(agv.IP))//固定充电小车 // if (SettingString.FixedCharge_AGV_IPs.Contains(agv.IP))//固定充电小车
return true; // return true;
else // else
{ // {
if (Station[AutoCharge2].Equals("")) // if (Station[AutoCharge2].Equals(""))
{ // {
// return true;
// }
// }
//}
//return false;
return true; return true;
} }
}
}
return false;
}
/// <summary> /// <summary>
/// 开始充电任务 /// 开始充电任务
/// </summary> /// </summary>
......
任务名称,任务别名,目的地,目的地别名,任务GUID 任务名称,任务别名,任务GUID
MoveA5,移动到双层线入口,A5,双层线入口,eec1eed4-2a04-11ea-9c84-94c691a734f1 Init,初始化,219cd91a-61da-11eb-96a9-0001297a1dca
Standby,初始化615cef05-61f4-11eb-96a9-0001297a1dca
AutoCharge,充电,615cef05-61f4-11eb-96a9-0001297a1dca
A5,双层线入口,90cece3e-6205-11eb-a040-0001297a2016
A6,双层线出口,9fd1183d-6205-11eb-a040-0001297a2016
D12,S12线,82abbf41-614c-11eb-b885-0001297a1dca
D11,S11线,61bab7dd-614c-11eb-b885-0001297a1dca
D10,S10线,b9bcc942-6205-11eb-a040-0001297a2016
D9,S9线,c19a6ce3-6205-11eb-a040-0001297a2016
D8,S8线,d3181a94-6205-11eb-a040-0001297a2016
D7,S7线,e718516c-6205-11eb-a040-0001297a2016
D6,S6线,fa13c4a5-6205-11eb-a040-0001297a2016
D5,S5线07e146a9-6206-11eb-a040-0001297a2016
D4,S4线,11cd500c-6206-11eb-a040-0001297a2016
D3,S3线,19b42469-6206-11eb-a040-0001297a2016
D2,S2线,2575e471-6206-11eb-a040-0001297a2016
D1,S1线,3037232d-6206-11eb-a040-0001297a2016
D21,备料区入口88486aae-6208-11eb-a040-0001297a2016
D22,备料区出口,97f8b64a-6208-11eb-a040-0001297a2016
CheckShelf,检查负载情况,d7ecd9b0-6207-11eb-a040-0001297a2016
Leave,出料,5a17e712-6205-11eb-a040-0001297a2016
Enter,进料,432f1946-6205-11eb-a040-0001297a2016
\ No newline at end of file \ No newline at end of file
Fleet ID,agv名称,IP,授权码,IOID Fleet ID,agv名称,IP,授权码,IOID
1,5号车,10.85.199.67,Basic ZGlzdHJpYnV0b3I6NjJmMmYwZjFlZmYxMGQzMTUyYzk1ZjZmMDU5NjU3NmU0ODJiYjhlNDQ4MDY0MzNmNGNmOTI5NzkyODM0YjAxNA==,007615a5-2220-11ea-99f2-94c691a73b53
2,6号车,10.85.199.68,Basic ZGlzdHJpYnV0b3I6NjJmMmYwZjFlZmYxMGQzMTUyYzk1ZjZmMDU5NjU3NmU0ODJiYjhlNDQ4MDY0MzNmNGNmOTI5NzkyODM0YjAxNA==,007615a5-2220-11ea-99f2-94c691a73b53
3,7号车,10.85.199.69,Basic ZGlzdHJpYnV0b3I6NjJmMmYwZjFlZmYxMGQzMTUyYzk1ZjZmMDU5NjU3NmU0ODJiYjhlNDQ4MDY0MzNmNGNmOTI5NzkyODM0YjAxNA==,007615a5-2220-11ea-99f2-94c691a73b53
\ No newline at end of file \ No newline at end of file
5,18号车,10.85.199.138,Basic ZGlzdHJpYnV0b3I6NjJmMmYwZjFlZmYxMGQzMTUyYzk1ZjZmMDU5NjU3NmU0ODJiYjhlNDQ4MDY0MzNmNGNmOTI5NzkyODM0YjAxNA==,007615a5-2220-11ea-99f2-94c691a73b53
产线名,节点名,IP,产线别名,位置名称,位置guid 产线名,节点名,IP,产线别名,位置名称,位置guid
A5,A5,10.85.162.40,双层线入口(A5),PA5,7ed952c3-b520-11ea-b6ad-00012998f5a0 A5,A5,10.85.162.40,双层线入口(A5),PA5,7ed952c3-b520-11ea-b6ad-00012998f5a0
A6,A6,10.85.162.40,双层线出(A6),PA6,929eb1c2-b520-11ea-b6ad-00012998f5a0 A6,A6,10.85.162.40,双层线出(A6),PA6,929eb1c2-b520-11ea-b6ad-00012998f5a0
D3,D3,10.85.199.12,3D-S3线,DL3,43855a9b-b365-11ea-a1a5-00012999830e S3,D3,10.85.197.151,3D-3线,DL3,43855a9b-b365-11ea-a1a5-00012999830e
D4,D4,10.85.199.15,3D-S4线,DL4,73c8b98c-b368-11ea-a1a5-00012999830e S4,D4,10.85.197.146,3D-4线,DL4,73c8b98c-b368-11ea-a1a5-00012999830e
D5,D5,10.85.199.31,3D-S5线,DL5,5436efd7-b432-11ea-a1a5-00012999830e S5,D5,10.85.197.15,3D-5线,DL5,5436efd7-b432-11ea-a1a5-00012999830e
D6,D6,10.85.199.32,3D-S6线,DL6,6b7710c1-b432-11ea-a1a5-00012999830e S6,D6,10.85.197.14,3D-6线,DL6,6b7710c1-b432-11ea-a1a5-00012999830e
D7,D7,10.85.199.36,3D-S7线,DL6,6b7710c1-b432-11ea-a1a5-00012999830e S7,D7,10.85.197.9,3D-7线,DL6,6b7710c1-b432-11ea-a1a5-00012999830e
D8,D8,10.85.199.37,3D-S8线,DL8,8f039d2e-b432-11ea-a1a5-00012999830e S8,D8,10.85.197.141,3D-8线,DL8,8f039d2e-b432-11ea-a1a5-00012999830e
D9,D9,10.85.199.43,3D-S9线,DL9,9e0b64ab-b432-11ea-a1a5-00012999830e S9,D9,10.85.197.8,3D-9线,DL9,9e0b64ab-b432-11ea-a1a5-00012999830e
D10,D10,10.85.199.44,3D-S10线,DL10,aec7da80-b432-11ea-a1a5-00012999830e S10,D10,10.85.197.7,3D-10线,DL10,aec7da80-b432-11ea-a1a5-00012999830e
D11,D11,10.85.199.14,3D-S11线,DL11,c10984c9-b432-11ea-a1a5-00012999830e S11,D11,10.85.197.131,3D-11线,DL11,c10984c9-b432-11ea-a1a5-00012999830e
D12,D12,10.85.199.13,3D-S12线,DL12,d6e0b92a-b432-11ea-a1a5-00012999830e S12,D12,10.85.197.6,3D-12线,DL12,d6e0b92a-b432-11ea-a1a5-00012999830e
FeederIn,D21,10.85.199.1,3D-备料区入口,FI,1e546c3a-8abe-11ea-ab63-000129922ca6 3DFeederIn,D21,10.85.197.3,3D-备料区入口,FI,1e546c3a-8abe-11ea-ab63-000129922ca6
FeederOut,D22,10.85.199.1,3D-备料区出口,FO,431649a4-8abe-11ea-ab63-000129922ca6 3DFeederOut,D22,10.85.197.3,3D-备料区出口,FO,431649a4-8abe-11ea-ab63-000129922ca6
...@@ -96,7 +96,7 @@ namespace DeviceLibrary ...@@ -96,7 +96,7 @@ namespace DeviceLibrary
if (!AGVManager.nodeInfo[j].Name.Equals(SettingString.RoomCFeederIn) && !AGVManager.nodeInfo[j].Name.Equals(SettingString.RoomCFeederOut) && if (!AGVManager.nodeInfo[j].Name.Equals(SettingString.RoomCFeederIn) && !AGVManager.nodeInfo[j].Name.Equals(SettingString.RoomCFeederOut) &&
!AGVManager.nodeInfo[j].Name.Equals(SettingString.RoomDFeederIn) && !AGVManager.nodeInfo[j].Name.Equals(SettingString.RoomDFeederOut)) !AGVManager.nodeInfo[j].Name.Equals(SettingString.RoomDFeederIn) && !AGVManager.nodeInfo[j].Name.Equals(SettingString.RoomDFeederOut))
{ {
tmp = HttpManager.GetFirstRFID(AGVManager.nodeInfo[j].Name); tmp = HttpManager.GetFirstRFID(AGVManager.nodeInfo[j].LineName);
if (!tmp.Equals(AGVManager.nodeInfo[j].RFID)) if (!tmp.Equals(AGVManager.nodeInfo[j].RFID))
{ {
AGVManager.nodeInfo[j].RFID = tmp; AGVManager.nodeInfo[j].RFID = tmp;
...@@ -122,7 +122,7 @@ namespace DeviceLibrary ...@@ -122,7 +122,7 @@ namespace DeviceLibrary
} }
HttpManager.updateDeviceAlarmMsg(msglist); HttpManager.updateDeviceAlarmMsg(msglist);
} }
catch(Exception ex) catch (Exception ex)
{ {
log.Error("NodeStateTimer " + ex.Message + ex.StackTrace); log.Error("NodeStateTimer " + ex.Message + ex.StackTrace);
} }
...@@ -144,7 +144,7 @@ namespace DeviceLibrary ...@@ -144,7 +144,7 @@ namespace DeviceLibrary
{ {
if (!CheckOnline(i)) continue; if (!CheckOnline(i)) continue;
bool change = false; bool change = false;
MiR_API.Get_Task_State(AGVManager.agvInfo[i].CurTaskID, out string stateStr); MiR_API.Get_Task_State(AGVManager.agvInfo[i], out string stateStr);
Thread.Sleep(50); Thread.Sleep(50);
//获取AGV状态 //获取AGV状态
rtn = MiR_API.Get_State(AGVManager.agvInfo[i], out eAGVState stateID, out string stateText, out int battery, out string mission_text, out Agv_Info.MirPosition position); rtn = MiR_API.Get_State(AGVManager.agvInfo[i], out eAGVState stateID, out string stateText, out int battery, out string mission_text, out Agv_Info.MirPosition position);
...@@ -160,13 +160,13 @@ namespace DeviceLibrary ...@@ -160,13 +160,13 @@ namespace DeviceLibrary
if (stateText.Equals("Error") || stateText.Equals("EmergencyStop") || stateText.Equals("Pause")) if (stateText.Equals("Error") || stateText.Equals("EmergencyStop") || stateText.Equals("Pause"))
{ {
isAlarm = true; isAlarm = true;
msglist.Add(new AlarmMsg(AGVManager.agvInfo[i].Name, "lineAgv." + AGVManager.agvInfo[i].Name + ".Error.EmergencyStop", "agv状态:" + stateText + "")); msglist.Add(new AlarmMsg(AGVManager.agvInfo[i].Name, "lineAgv." + AGVManager.agvInfo[i].Name + ".Msg", "agv状态:" + stateText + ""));
} }
if (!isAlarm && AGVManager.agvInfo[i].StandTimeOut) if (!isAlarm && AGVManager.agvInfo[i].StandTimeOut)
{ {
isAlarm = true; isAlarm = true;
msglist.Add(new AlarmMsg(AGVManager.agvInfo[i].Name, "lineAgv." + AGVManager.agvInfo[i].Name + ".StandTimeOut", "在" + AGVManager.agvInfo[i].PlaceAliceName + "停留超时" + (DateTime.Now - AGVManager.agvInfo[i].StandStartTime).TotalMinutes.ToString("f2") + "分钟")); msglist.Add(new AlarmMsg(AGVManager.agvInfo[i].Name, "lineAgv." + AGVManager.agvInfo[i].Name + ".Msg", "在" + AGVManager.agvInfo[i].PlaceAliceName + "停留超时" + (DateTime.Now - AGVManager.agvInfo[i].StandStartTime).TotalMinutes.ToString("f2") + "分钟"));
} }
if (!isAlarm) if (!isAlarm)
...@@ -209,9 +209,10 @@ namespace DeviceLibrary ...@@ -209,9 +209,10 @@ namespace DeviceLibrary
foreach (JobType jobType in AGVManager.jobTypes) foreach (JobType jobType in AGVManager.jobTypes)
{ {
Job job = null; Job job = null;
if (agv_Info.IsUse)
job = jobType.GetNewJob(agv_Info); job = jobType.GetNewJob(agv_Info);
else
return null;
if (job != null) if (job != null)
{ {
log.Debug(agv_Info.Name + " GetJob OK " + job.ToString()); log.Debug(agv_Info.Name + " GetJob OK " + job.ToString());
...@@ -236,7 +237,7 @@ namespace DeviceLibrary ...@@ -236,7 +237,7 @@ namespace DeviceLibrary
//Ready,Pause,Executing,Error //Ready,Pause,Executing,Error
if (!AGVManager.agvInfo[i].StateID.Equals(eAGVState.Ready) && !AGVManager.agvInfo[i].StateID.Equals(eAGVState.Pause) if (!AGVManager.agvInfo[i].StateID.Equals(eAGVState.Ready) && !AGVManager.agvInfo[i].StateID.Equals(eAGVState.Pause)
&& !AGVManager.agvInfo[i].StateID.Equals(eAGVState.Executing) && !AGVManager.agvInfo[i].StateID.Equals(eAGVState.Error)) && !AGVManager.agvInfo[i].StateID.Equals(eAGVState.Executing) && !AGVManager.agvInfo[i].StateID.Equals(eAGVState.None))
{ {
log.Warn(string.Format("{0}不能调用 StateID={1}", AGVManager.agvInfo[i].Name, AGVManager.agvInfo[i].StateID.ToString())); log.Warn(string.Format("{0}不能调用 StateID={1}", AGVManager.agvInfo[i].Name, AGVManager.agvInfo[i].StateID.ToString()));
continue; continue;
...@@ -288,7 +289,6 @@ namespace DeviceLibrary ...@@ -288,7 +289,6 @@ namespace DeviceLibrary
AGVManager.agvInfo[idx].IsCon = true; AGVManager.agvInfo[idx].IsCon = true;
log.Info(AGVManager.agvInfo[idx].Name + " Online"); log.Info(AGVManager.agvInfo[idx].Name + " Online");
AgvOnline?.Invoke(idx); AgvOnline?.Invoke(idx);
AgvChanged?.Invoke(idx);
} }
} }
else else
...@@ -298,7 +298,6 @@ namespace DeviceLibrary ...@@ -298,7 +298,6 @@ namespace DeviceLibrary
AGVManager.agvInfo[idx].IsCon = false; AGVManager.agvInfo[idx].IsCon = false;
log.Info(AGVManager.agvInfo[idx].Name + " Offline"); log.Info(AGVManager.agvInfo[idx].Name + " Offline");
AgvOnline?.Invoke(idx); AgvOnline?.Invoke(idx);
AgvChanged?.Invoke(idx);
} }
else else
{ {
......
...@@ -31,8 +31,8 @@ namespace DeviceLibrary ...@@ -31,8 +31,8 @@ namespace DeviceLibrary
for (int i = 1; i < line.Length; i++) for (int i = 1; i < line.Length; i++)
{ {
temp = line[i].Split(','); temp = line[i].Split(',');
if (temp.Length != 5) continue; if (temp.Length != 3) continue;
Missions.Add(new Mission(temp[0], temp[1], temp[2], temp[3], temp[4])); Missions.Add(new Mission(temp[0], temp[1], temp[2]));
} }
LogUtil.info("加载任务成功"); LogUtil.info("加载任务成功");
} }
...@@ -47,13 +47,13 @@ namespace DeviceLibrary ...@@ -47,13 +47,13 @@ namespace DeviceLibrary
/// </summary> /// </summary>
/// <param name="taskName"></param> /// <param name="taskName"></param>
/// <returns></returns> /// <returns></returns>
public static string GetMissionGuidByName(string name) public static string GetMissionGuidByAliceName(string aliceName)
{ {
Mission mission = Missions.Find(s => s.TargetName.Equals(name)); Mission mission = Missions.Find(s => s.AliceName.Equals(aliceName));
if (mission != null) if (mission != null)
return mission.Guid; return mission.Guid;
else else
LogUtil.error(string.Format("任务目的地{0}不存在,请检查!", name)); LogUtil.error(string.Format("任务[{0}]不存在,请检查!", aliceName));
return ""; return "";
} }
/// <summary> /// <summary>
...@@ -70,43 +70,63 @@ namespace DeviceLibrary ...@@ -70,43 +70,63 @@ namespace DeviceLibrary
LogUtil.error(string.Format("任务{0}不存在,请检查!", taskName)); LogUtil.error(string.Format("任务{0}不存在,请检查!", taskName));
return ""; return "";
} }
public static string GetAliceNameByTaskName(string taskName)
{
Mission mission = Missions.Find(s => s.Name.Equals(taskName));
if (mission != null)
return mission.AliceName;
else
LogUtil.error(string.Format("任务{0}不存在,请检查!", taskName));
return "";
}
public static string GetTaskNameByAliceName(string aliceName)
{
Mission mission = Missions.Find(s => s.AliceName.Equals(aliceName));
if (mission != null)
return mission.Name;
else
LogUtil.error(string.Format("任务[{0}]不存在,请检查!", aliceName));
return "";
}
/// <summary> /// <summary>
/// 向小车发送任务 /// 向小车发送任务
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
public static bool AssignMission(Agv_Info agv, string missionName) public static bool AssignMission(Agv_Info agv, string taskName)
{ {
bool rtn = false; bool rtn = false;
string guid = GetMissionGuidByName(missionName); string guid = GetMissionGuidByTaskName(taskName);
if (!guid.Equals("")) if (!guid.Equals(""))
{ {
if (agv.UseFleet) if (agv.UseFleet)
{ {
agv.CurTarName = taskName;
rtn = MiR_API.Add_Mission_Fleet(agv, guid); rtn = MiR_API.Add_Mission_Fleet(agv, guid);
MiR_API.State_Ready(agv); MiR_API.State_Ready(agv);
if (rtn) if (rtn)
{ {
LogUtil.info(string.Format("{0} Add_Mission_Fleet [{1}] OK", agv.Name, missionName)); LogUtil.info(string.Format("{0} Add_Mission_Fleet [{1}] OK", agv.Name, taskName));
} }
else else
{ {
LogUtil.info(string.Format("{0} Add_Mission_Fleet [{1}] Fail", agv.Name, missionName)); LogUtil.info(string.Format("{0} Add_Mission_Fleet [{1}] Fail", agv.Name, taskName));
} }
} }
else else
{ {
agv.CurTarName = taskName;
rtn = MiR_API.Add_Mission(agv, guid); rtn = MiR_API.Add_Mission(agv, guid);
MiR_API.State_Ready(agv); MiR_API.State_Ready(agv);
if (rtn) if (rtn)
{ {
LogUtil.info(string.Format("{0} Add_Mission [{1}] OK", agv.Name, missionName)); LogUtil.info(string.Format("{0} Add_Mission [{1}] OK", agv.Name, taskName));
} }
else else
{ {
LogUtil.info(string.Format("{0} Add_Mission [{1}] Fail", agv.Name, missionName)); LogUtil.info(string.Format("{0} Add_Mission [{1}] Fail", agv.Name, taskName));
} }
} }
agv.StateKanban.SetCurTask(MissionSys.GetAliceNameByTaskName(taskName));
} }
return rtn; return rtn;
} }
...@@ -136,7 +156,7 @@ namespace DeviceLibrary ...@@ -136,7 +156,7 @@ namespace DeviceLibrary
public static bool CheckTaskFinished(Agv_Info agv, string taskName, string curTaskState) public static bool CheckTaskFinished(Agv_Info agv, string taskName, string curTaskState)
{ {
LogUtil.debug(agv.Name + " 检查当前任务是否结束: " + taskName + " " + curTaskState); LogUtil.debug(agv.Name + " 检查当前任务是否结束: " + taskName + " " + curTaskState);
return GetMissionGuidByName(taskName).Equals(agv.CurTaskGUID) && curTaskState.Equals(SettingString.Done); return GetMissionGuidByTaskName(taskName).Equals(agv.CurTaskGUID) && curTaskState.Equals(SettingString.Done);
} }
/// <summary> /// <summary>
/// 检查当前是否分配成功 /// 检查当前是否分配成功
...@@ -146,16 +166,16 @@ namespace DeviceLibrary ...@@ -146,16 +166,16 @@ namespace DeviceLibrary
/// <returns></returns> /// <returns></returns>
public static bool CheckTaskIsOK(Agv_Info agv, string taskName, string curTaskState) public static bool CheckTaskIsOK(Agv_Info agv, string taskName, string curTaskState)
{ {
return GetMissionGuidByName(taskName).Equals(agv.CurTaskGUID) && curTaskState.Equals(SettingString.Executing); return GetMissionGuidByTaskName(taskName).Equals(agv.CurTaskGUID) && curTaskState.Equals(SettingString.Executing);
} }
/// <summary> /// <summary>
/// 获取Fleet Job任务状态 /// 获取Fleet Job任务状态
/// </summary> /// </summary>
/// <param name="CurTaskID"></param> /// <param name="CurTaskID"></param>
/// <returns></returns> /// <returns></returns>
public static string GetTakJobState(int CurTaskID) public static string GetTakJobState(Agv_Info agv)
{ {
if (!CurTaskID.Equals(-1) && MiR_API.Get_Task_State(CurTaskID, out string st)) if (!agv.CurTaskID.Equals(-1) && MiR_API.Get_Task_State(agv, out string st))
return st; return st;
return SettingString.Wait; return SettingString.Wait;
} }
......
...@@ -41,7 +41,19 @@ namespace DeviceLibrary ...@@ -41,7 +41,19 @@ namespace DeviceLibrary
/// <summary> /// <summary>
/// 是否在线 /// 是否在线
/// </summary> /// </summary>
public bool IsCon { set; get; } public bool IsCon
{
set
{
if (!value.Equals(isCon))
{
isCon = value;
StateKanban.SetConnectState(isCon);
}
}
get { return isCon; }
}
private bool isCon = false;
public bool IsInCharge { get; set; } public bool IsInCharge { get; set; }
/// <summary> /// <summary>
...@@ -55,7 +67,7 @@ namespace DeviceLibrary ...@@ -55,7 +67,7 @@ namespace DeviceLibrary
if (!value.Equals(_IsUse)) if (!value.Equals(_IsUse))
{ {
_IsUse = value; _IsUse = value;
AGVManager.WriteIni(Name,SettingString.IsUse,_IsUse.ToString()); AGVManager.WriteIni(Name, SettingString.IsUse, _IsUse.ToString());
} }
} }
get { return _IsUse; } get { return _IsUse; }
...@@ -87,7 +99,7 @@ namespace DeviceLibrary ...@@ -87,7 +99,7 @@ namespace DeviceLibrary
/// <summary> /// <summary>
/// 当前任务文本,(从小车获取) /// 当前任务文本,(从小车获取)
/// </summary> /// </summary>
public string MissionText { set; get; } public string MissionText { set; get; } = "";
public class MirPosition public class MirPosition
...@@ -116,7 +128,7 @@ namespace DeviceLibrary ...@@ -116,7 +128,7 @@ namespace DeviceLibrary
/// <summary> /// <summary>
/// 使用Fleet发任务 /// 使用Fleet发任务
/// </summary> /// </summary>
public bool UseFleet { get; set; } = false; public bool UseFleet=AppConfigHelper.GetBoolValue(SettingString.UseFleet);
/// <summary> /// <summary>
/// 当前任务的ID号 /// 当前任务的ID号
/// </summary> /// </summary>
...@@ -224,7 +236,7 @@ namespace DeviceLibrary ...@@ -224,7 +236,7 @@ namespace DeviceLibrary
if (!Battery.Equals(battery)) if (!Battery.Equals(battery))
{ {
Battery = battery; Battery = battery;
StateKanban.SetBattery(battery,IsInCharge); StateKanban.SetBattery(battery, IsInCharge);
} }
//"目的地", "RFID", "负载", "运行模式","任务信息", "AGV运行信息" //"目的地", "RFID", "负载", "运行模式","任务信息", "AGV运行信息"
if (AGVManager.nodeInfo != null && AGVManager.nodeInfo.Count != 0) if (AGVManager.nodeInfo != null && AGVManager.nodeInfo.Count != 0)
...@@ -242,6 +254,7 @@ namespace DeviceLibrary ...@@ -242,6 +254,7 @@ namespace DeviceLibrary
StateKanban.ShowInfo("负载", IsExistShelf ? "满载" : "空载"); StateKanban.ShowInfo("负载", IsExistShelf ? "满载" : "空载");
} }
StateKanban.ShowInfo("运行模式", IsUse ? "自动" : "手动"); StateKanban.ShowInfo("运行模式", IsUse ? "自动" : "手动");
if (this.CurJob != null)
StateKanban.ShowInfo("任务信息", this.CurJob.RunInfo); StateKanban.ShowInfo("任务信息", this.CurJob.RunInfo);
if (!MissionText.Equals(missionText)) if (!MissionText.Equals(missionText))
...@@ -262,7 +275,7 @@ namespace DeviceLibrary ...@@ -262,7 +275,7 @@ namespace DeviceLibrary
if (IsUse && CurJob != null && !(CurJob is ChargeJob) && if (IsUse && CurJob != null && !(CurJob is ChargeJob) &&
(!CurTarName.Contains(SettingString.Standby)))//!CurTaskName.Contains(SettingString.AutoCharge) || (!CurTarName.Contains(SettingString.Standby)))//!CurTaskName.Contains(SettingString.AutoCharge) ||
{ {
if (Math.Abs(position.Point.X - Position.Point.X) < 1 && Math.Abs(position.Point.Y- Position.Point.Y) < 1) if (Math.Abs(position.Point.X - Position.Point.X) < 1 && Math.Abs(position.Point.Y - Position.Point.Y) < 1)
{ {
//满足条件,计算持续时间 //满足条件,计算持续时间
if (StandStartTime == DateTime.MaxValue) if (StandStartTime == DateTime.MaxValue)
......
...@@ -33,11 +33,11 @@ namespace DeviceLibrary ...@@ -33,11 +33,11 @@ namespace DeviceLibrary
/// </summary> /// </summary>
/// <param name="curTaskName"></param> /// <param name="curTaskName"></param>
/// <param name="curTaskId"></param> /// <param name="curTaskId"></param>
protected void UpdateJobTaskInfo(string curTaskName, int curTaskId) protected void UpdateJobTaskInfo(Agv_Info agv)
{ {
CurTaskID = curTaskId; CurTaskID = agv.CurTaskID;
CurTarName = curTaskName; CurTarName = agv.CurTarName;
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
} }
/// <summary> /// <summary>
/// 任务重发 /// 任务重发
...@@ -46,25 +46,25 @@ namespace DeviceLibrary ...@@ -46,25 +46,25 @@ namespace DeviceLibrary
public bool ResendTask(Agv_Info agv) public bool ResendTask(Agv_Info agv)
{ {
bool rtn = false; bool rtn = false;
if (!CurTaskID.Equals(-1) && MiR_API.Get_Task_State(CurTaskID, out string stateStr)) if (!CurTaskID.Equals(-1) && MiR_API.Get_Task_State(agv, out string stateStr))
{ {
if (stateStr.Equals(SettingString.Aborted) || stateStr.Equals(SettingString.Invalid)) if (stateStr.Equals(SettingString.Aborted) || stateStr.Equals(SettingString.Invalid))
{ {
rtn = MissionSys.AssignMission(agv, CurTarName); rtn = MissionSys.AssignMission(agv, CurTarName);
if (rtn) if (rtn)
{ {
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
return true; return true;
} }
} }
} }
else if (!CurTarName.Equals("") && !MissionSys.GetMissionGuidByName(CurTarName).Equals(agv.CurTaskGUID))//Job的当前任务与agv最新任务不一致 else if (!CurTarName.Equals("") && !MissionSys.GetMissionGuidByTaskName(CurTarName).Equals(agv.CurTaskGUID))//Job的当前任务与agv最新任务不一致
{ {
rtn = MissionSys.AssignMission(agv, CurTarName); rtn = MissionSys.AssignMission(agv, CurTarName);
if (rtn) if (rtn)
{ {
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
return true; return true;
} }
} }
...@@ -73,7 +73,7 @@ namespace DeviceLibrary ...@@ -73,7 +73,7 @@ namespace DeviceLibrary
rtn = MissionSys.AssignMission(agv, CurTarName); rtn = MissionSys.AssignMission(agv, CurTarName);
if (rtn) if (rtn)
{ {
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
return true; return true;
} }
} }
......
...@@ -452,16 +452,18 @@ namespace DeviceLibrary ...@@ -452,16 +452,18 @@ namespace DeviceLibrary
/// <param name="CurTaskID"></param> /// <param name="CurTaskID"></param>
/// <param name="stateStr"></param> /// <param name="stateStr"></param>
/// <returns></returns> /// <returns></returns>
public static bool Get_Task_State(int CurTaskID, out string stateStr) public static bool Get_Task_State(Agv_Info agv, out string stateStr)
{ {
stateStr = SettingString.Wait; stateStr = SettingString.Wait;
try try
{ {
if (CurTaskID == -1) if (agv.CurTaskID == -1)
return true; return true;
if (agv.UseFleet)
{
string ip = AppConfigHelper.GetValue(SettingString.FLEET); string ip = AppConfigHelper.GetValue(SettingString.FLEET);
//http://10.85.199.3/api/v2.0.0/mission_scheduler string url = "http://" + ip + "/api/v2.0.0/mission_scheduler/" + agv.CurTaskID;
string url = "http://" + ip + "/api/v2.0.0/mission_scheduler/" + CurTaskID;
string json = HttpGet(url, ip, AGVManager.agvInfo[0].Authorization); string json = HttpGet(url, ip, AGVManager.agvInfo[0].Authorization);
log.Debug("URL: " + url + "\n" + "Return: " + json); log.Debug("URL: " + url + "\n" + "Return: " + json);
if (string.IsNullOrWhiteSpace(json)) return false; if (string.IsNullOrWhiteSpace(json)) return false;
...@@ -474,11 +476,33 @@ namespace DeviceLibrary ...@@ -474,11 +476,33 @@ namespace DeviceLibrary
// "state": "Done" // "state": "Done"
string s = dic["id"].ToString(); string s = dic["id"].ToString();
if (s.Equals(CurTaskID.ToString())) if (s.Equals(agv.CurTaskID.ToString()))
{ {
stateStr = dic["state"].ToString(); stateStr = dic["state"].ToString();
return true; return true;
} }
}
else
{
string url = "http://" + agv.IP + "/api/v2.0.0/mission_queue/" + agv.CurTaskID;
string json = HttpGet(url, agv.IP, agv.Authorization);
log.Debug("URL: " + url + "\n" + "Return: " + json);
if (string.IsNullOrWhiteSpace(json)) return false;
JavaScriptSerializer serializer = new JavaScriptSerializer();
Dictionary<string, object> dic = (Dictionary<string, object>)serializer.DeserializeObject(json);
if (dic == null) return false;
// "mission_id": "2e433130-c045-11ea-9a66-94c691a7387d",
// "id": 7178,
// "state": "Done"
string s = dic["id"].ToString();
if (s.Equals(agv.CurTaskID.ToString()))
{
stateStr = dic["state"].ToString();
return true;
}
}
return false; return false;
} }
catch (Exception ex) catch (Exception ex)
...@@ -488,6 +512,7 @@ namespace DeviceLibrary ...@@ -488,6 +512,7 @@ namespace DeviceLibrary
} }
} }
/// <summary> /// <summary>
/// 获取当前小车状态 /// 获取当前小车状态
/// </summary> /// </summary>
......
...@@ -18,15 +18,6 @@ namespace DeviceLibrary ...@@ -18,15 +18,6 @@ namespace DeviceLibrary
/// </summary> /// </summary>
public string AliceName { private set; get; } public string AliceName { private set; get; }
/// <summary> /// <summary>
/// 目的地名称(节点名)
/// </summary>
public string TargetName { private set; get; }
/// <summary>
/// 目的地别名(与节点名对应)
/// </summary>
public string TargetAliceName { private set; get; }
/// <summary>
/// 任务guid /// 任务guid
/// </summary> /// </summary>
public string Guid { private set; get; } public string Guid { private set; get; }
...@@ -38,12 +29,10 @@ namespace DeviceLibrary ...@@ -38,12 +29,10 @@ namespace DeviceLibrary
/// <param name="targetName">目的地名</param> /// <param name="targetName">目的地名</param>
/// <param name="targetAliceName">目的地别名</param> /// <param name="targetAliceName">目的地别名</param>
/// <param name="guid">任务guid</param> /// <param name="guid">任务guid</param>
public Mission(string name,string aliceName,string targetName,string targetAliceName,string guid) public Mission(string name,string aliceName,string guid)
{ {
Name = name; Name = name;
AliceName = aliceName; AliceName = aliceName;
TargetName = targetName;
TargetAliceName = targetAliceName;
Guid = guid; Guid = guid;
} }
} }
......
...@@ -28,7 +28,7 @@ namespace DeviceLibrary ...@@ -28,7 +28,7 @@ namespace DeviceLibrary
/// </summary> /// </summary>
public override string RunInfo public override string RunInfo
{ {
get { return string.Format("充电任务[{0}][{1}]:{2} ", CurTaskID, CurTaskState, runInfo);} get { return string.Format("充电任务[{0}]:{1} ", CurTaskID, runInfo);}
} }
private JobStep<CHARGE_STEP> jobStep = new JobStep<CHARGE_STEP>(CHARGE_STEP.NONE); private JobStep<CHARGE_STEP> jobStep = new JobStep<CHARGE_STEP>(CHARGE_STEP.NONE);
...@@ -41,7 +41,7 @@ namespace DeviceLibrary ...@@ -41,7 +41,7 @@ namespace DeviceLibrary
{ {
string msg = string.Format("{0} 充电任务: ", agv.Name); string msg = string.Format("{0} 充电任务: ", agv.Name);
//bool rtn = false; //bool rtn = false;
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (jobStep.IsStep(CHARGE_STEP.NONE)) if (jobStep.IsStep(CHARGE_STEP.NONE))
{ {
if (agv.Battery > AGVManager.Charge.BatteryMax) if (agv.Battery > AGVManager.Charge.BatteryMax)
...@@ -53,7 +53,7 @@ namespace DeviceLibrary ...@@ -53,7 +53,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv,SettingString.Standby); MissionSys.AssignMission(agv,SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix) && AGVManager.CheckIsInAirDoor(agvPlace)) else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix) && AGVManager.CheckIsInAirDoor(agvPlace))
{ {
...@@ -62,7 +62,7 @@ namespace DeviceLibrary ...@@ -62,7 +62,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv,SettingString.DoorAirOut); MissionSys.AssignMission(agv,SettingString.DoorAirOut);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix)) else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix))
{ {
...@@ -71,7 +71,7 @@ namespace DeviceLibrary ...@@ -71,7 +71,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv,SettingString.DoorCToD); MissionSys.AssignMission(agv,SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -81,7 +81,7 @@ namespace DeviceLibrary ...@@ -81,7 +81,7 @@ namespace DeviceLibrary
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv,SettingString.Standby); MissionSys.AssignMission(agv,SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else else
...@@ -94,7 +94,7 @@ namespace DeviceLibrary ...@@ -94,7 +94,7 @@ namespace DeviceLibrary
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv,SettingString.DoorAirOut); MissionSys.AssignMission(agv,SettingString.DoorAirOut);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix)) else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix))
{ {
...@@ -104,7 +104,7 @@ namespace DeviceLibrary ...@@ -104,7 +104,7 @@ namespace DeviceLibrary
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv,SettingString.DoorCToD); MissionSys.AssignMission(agv,SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -116,7 +116,7 @@ namespace DeviceLibrary ...@@ -116,7 +116,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv,SettingString.Standby); MissionSys.AssignMission(agv,SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -124,7 +124,7 @@ namespace DeviceLibrary ...@@ -124,7 +124,7 @@ namespace DeviceLibrary
runInfo = "电量" + agv.Battery + "%小于最大电量" + AGVManager.Charge.BatteryMax + "%,从当前位置" + agvPlace + "去充电位"; runInfo = "电量" + agv.Battery + "%小于最大电量" + AGVManager.Charge.BatteryMax + "%,从当前位置" + agvPlace + "去充电位";
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
} }
...@@ -139,7 +139,7 @@ namespace DeviceLibrary ...@@ -139,7 +139,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorCToD); MissionSys.AssignMission(agv, SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else if (jobStep.IsStep(CHARGE_STEP.WAIT_AGV_REACH_ROOMD_DOOR)) else if (jobStep.IsStep(CHARGE_STEP.WAIT_AGV_REACH_ROOMD_DOOR))
...@@ -153,7 +153,7 @@ namespace DeviceLibrary ...@@ -153,7 +153,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Standby); MissionSys.AssignMission(agv, SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -165,7 +165,7 @@ namespace DeviceLibrary ...@@ -165,7 +165,7 @@ namespace DeviceLibrary
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Standby); MissionSys.AssignMission(agv, SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -173,7 +173,7 @@ namespace DeviceLibrary ...@@ -173,7 +173,7 @@ namespace DeviceLibrary
runInfo = "电量" + agv.Battery + "%小于最大电量" + AGVManager.Charge.BatteryMax + "%,从当前位置" + agvPlace + "回到充电位"; runInfo = "电量" + agv.Battery + "%小于最大电量" + AGVManager.Charge.BatteryMax + "%,从当前位置" + agvPlace + "回到充电位";
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
...@@ -201,7 +201,7 @@ namespace DeviceLibrary ...@@ -201,7 +201,7 @@ namespace DeviceLibrary
jobStep.Msg = msg; jobStep.Msg = msg;
AGVManager.Charge.DelOccupyInfo(agv); AGVManager.Charge.DelOccupyInfo(agv);
MissionSys.AssignMission(agv, SettingString.Standby); MissionSys.AssignMission(agv, SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (agv.Battery >= AGVManager.Charge.BatteryMin) else if (agv.Battery >= AGVManager.Charge.BatteryMin)
{ {
......
...@@ -36,7 +36,7 @@ namespace DeviceLibrary ...@@ -36,7 +36,7 @@ namespace DeviceLibrary
/// </summary> /// </summary>
public override string RunInfo public override string RunInfo
{ {
get { return string.Format("返回任务[{0}][{1}]:{2}", CurTaskID,CurTaskState,runInfo); } get { return string.Format("返回任务[{0}]:{1}", CurTaskID,runInfo); }
} }
...@@ -50,7 +50,7 @@ namespace DeviceLibrary ...@@ -50,7 +50,7 @@ namespace DeviceLibrary
{ {
string msg = string.Format("{0} 返回任务: ", agv.Name); string msg = string.Format("{0} 返回任务: ", agv.Name);
//bool rtn = false; //bool rtn = false;
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (jobStep.IsStep(EMPTY_AGV_BACK_STEP.NONE)) if (jobStep.IsStep(EMPTY_AGV_BACK_STEP.NONE))
{ {
if (AGVManager.FindEmptyShelfNode(agv, out string nodeName, true)) if (AGVManager.FindEmptyShelfNode(agv, out string nodeName, true))
...@@ -75,7 +75,7 @@ namespace DeviceLibrary ...@@ -75,7 +75,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorAirOut); MissionSys.AssignMission(agv, SettingString.DoorAirOut);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix)) else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix))
{ {
...@@ -84,7 +84,7 @@ namespace DeviceLibrary ...@@ -84,7 +84,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorCToD); MissionSys.AssignMission(agv, SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -93,7 +93,7 @@ namespace DeviceLibrary ...@@ -93,7 +93,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Standby); MissionSys.AssignMission(agv, SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
} }
...@@ -106,7 +106,7 @@ namespace DeviceLibrary ...@@ -106,7 +106,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorAirOut); MissionSys.AssignMission(agv, SettingString.DoorAirOut);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix)) else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix))
{ {
...@@ -115,7 +115,7 @@ namespace DeviceLibrary ...@@ -115,7 +115,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorCToD); MissionSys.AssignMission(agv, SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -124,7 +124,7 @@ namespace DeviceLibrary ...@@ -124,7 +124,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Standby); MissionSys.AssignMission(agv, SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
...@@ -138,7 +138,7 @@ namespace DeviceLibrary ...@@ -138,7 +138,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorAirOut); MissionSys.AssignMission(agv, SettingString.DoorAirOut);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix)) else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix))
{ {
...@@ -147,7 +147,7 @@ namespace DeviceLibrary ...@@ -147,7 +147,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorCToD); MissionSys.AssignMission(agv, SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -156,13 +156,13 @@ namespace DeviceLibrary ...@@ -156,13 +156,13 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Standby); MissionSys.AssignMission(agv, SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
} }
else if (jobStep.IsStep(EMPTY_AGV_BACK_STEP.WAIT_REACH_STANDBY)) else if (jobStep.IsStep(EMPTY_AGV_BACK_STEP.WAIT_REACH_STANDBY))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.Standby, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.Standby, CurTaskState))
{ {
Job job = AGVManager.control.GetJob(agv); Job job = AGVManager.control.GetJob(agv);
...@@ -196,7 +196,7 @@ namespace DeviceLibrary ...@@ -196,7 +196,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(EMPTY_AGV_BACK_STEP.WAIT_AGV_REACH_RoomC_AIR_DOOR)) else if (jobStep.IsStep(EMPTY_AGV_BACK_STEP.WAIT_AGV_REACH_RoomC_AIR_DOOR))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.DoorAirOut, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.DoorAirOut, CurTaskState))
{ {
jobStep.ToNextStep(EMPTY_AGV_BACK_STEP.WAIT_AGV_REACH_RoomD_DOOR); jobStep.ToNextStep(EMPTY_AGV_BACK_STEP.WAIT_AGV_REACH_RoomD_DOOR);
...@@ -204,12 +204,12 @@ namespace DeviceLibrary ...@@ -204,12 +204,12 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorCToD); MissionSys.AssignMission(agv, SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else if (jobStep.IsStep(EMPTY_AGV_BACK_STEP.WAIT_AGV_REACH_RoomD_DOOR)) else if (jobStep.IsStep(EMPTY_AGV_BACK_STEP.WAIT_AGV_REACH_RoomD_DOOR))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.DoorCToD, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.DoorCToD, CurTaskState))
{ {
if (AGVManager.FindFullShelfTask(agv)) if (AGVManager.FindFullShelfTask(agv))
......
...@@ -42,7 +42,7 @@ namespace DeviceLibrary ...@@ -42,7 +42,7 @@ namespace DeviceLibrary
/// </summary> /// </summary>
public override string RunInfo public override string RunInfo
{ {
get { return string.Format("空料架[{0}][{1}][{2}]返回:{3} ",shelfType.ToString(), CurTaskID, CurTaskState, runInfo); } get { return string.Format("空料架[{0}][{1}]返回:{2} ",shelfType.ToString(), CurTaskID, runInfo); }
} }
...@@ -66,7 +66,7 @@ namespace DeviceLibrary ...@@ -66,7 +66,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorAirOut); MissionSys.AssignMission(agv, SettingString.DoorAirOut);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (EmptyShelfPlace.StartsWith(SettingString.RoomC_Name_Prefix))//C车间 else if (EmptyShelfPlace.StartsWith(SettingString.RoomC_Name_Prefix))//C车间
{ {
...@@ -75,7 +75,7 @@ namespace DeviceLibrary ...@@ -75,7 +75,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorCToD); MissionSys.AssignMission(agv, SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -89,7 +89,7 @@ namespace DeviceLibrary ...@@ -89,7 +89,7 @@ namespace DeviceLibrary
if (!EmptyShelfTargetPlace.Equals("")) if (!EmptyShelfTargetPlace.Equals(""))
{ {
MissionSys.AssignMission(agv, EmptyShelfTargetPlace); MissionSys.AssignMission(agv, EmptyShelfTargetPlace);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
...@@ -100,13 +100,13 @@ namespace DeviceLibrary ...@@ -100,13 +100,13 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Standby); MissionSys.AssignMission(agv, SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
} }
else if (jobStep.IsStep(EMPTY_SHELF_BACK_STEP.WAIT_AGV_REACH_AIR_DOOR)) else if (jobStep.IsStep(EMPTY_SHELF_BACK_STEP.WAIT_AGV_REACH_AIR_DOOR))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.DoorAirOut, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.DoorAirOut, CurTaskState))
{ {
jobStep.ToNextStep(EMPTY_SHELF_BACK_STEP.WAIT_AGV_REACH_DOOR); jobStep.ToNextStep(EMPTY_SHELF_BACK_STEP.WAIT_AGV_REACH_DOOR);
...@@ -114,12 +114,12 @@ namespace DeviceLibrary ...@@ -114,12 +114,12 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorCToD); MissionSys.AssignMission(agv, SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else if (jobStep.IsStep(EMPTY_SHELF_BACK_STEP.WAIT_AGV_REACH_DOOR)) else if (jobStep.IsStep(EMPTY_SHELF_BACK_STEP.WAIT_AGV_REACH_DOOR))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.DoorCToD, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.DoorCToD, CurTaskState))
{ {
if (AGVManager.CheckA5A6State(agv, shelfType, out string nodeName)) if (AGVManager.CheckA5A6State(agv, shelfType, out string nodeName))
...@@ -130,7 +130,7 @@ namespace DeviceLibrary ...@@ -130,7 +130,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, EmptyShelfTargetPlace); MissionSys.AssignMission(agv, EmptyShelfTargetPlace);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -140,13 +140,13 @@ namespace DeviceLibrary ...@@ -140,13 +140,13 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Standby); MissionSys.AssignMission(agv, SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
} }
else if (jobStep.IsStep(EMPTY_SHELF_BACK_STEP.WAIT_AGV_REACH_STANDBY)) else if (jobStep.IsStep(EMPTY_SHELF_BACK_STEP.WAIT_AGV_REACH_STANDBY))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (AGVManager.CheckA5A6State(agv, shelfType, out string nodeName)) if (AGVManager.CheckA5A6State(agv, shelfType, out string nodeName))
{ {
EmptyShelfTargetPlace = nodeName; EmptyShelfTargetPlace = nodeName;
...@@ -155,12 +155,12 @@ namespace DeviceLibrary ...@@ -155,12 +155,12 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, EmptyShelfTargetPlace); MissionSys.AssignMission(agv, EmptyShelfTargetPlace);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else if (jobStep.IsStep(EMPTY_SHELF_BACK_STEP.WAIT_AGV_REACH_A5A6)) else if (jobStep.IsStep(EMPTY_SHELF_BACK_STEP.WAIT_AGV_REACH_A5A6))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, EmptyShelfTargetPlace, CurTaskState) && EmptyShelfTargetPlace.StartsWith(SettingString.DoubleLine_Name_Prefix)) if (MissionSys.CheckTaskFinished(agv, EmptyShelfTargetPlace, CurTaskState) && EmptyShelfTargetPlace.StartsWith(SettingString.DoubleLine_Name_Prefix))
{ {
jobStep.ToNextStep(EMPTY_SHELF_BACK_STEP.WAIT_DOUBLE_LINE_RESPONSE); jobStep.ToNextStep(EMPTY_SHELF_BACK_STEP.WAIT_DOUBLE_LINE_RESPONSE);
...@@ -183,7 +183,7 @@ namespace DeviceLibrary ...@@ -183,7 +183,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Leave); MissionSys.AssignMission(agv, SettingString.Leave);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
...@@ -198,12 +198,12 @@ namespace DeviceLibrary ...@@ -198,12 +198,12 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Standby); MissionSys.AssignMission(agv, SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else if (jobStep.IsStep(EMPTY_SHELF_BACK_STEP.WAIT__EMPTY_SHELF_IN_DOUBLE_LINE)) else if (jobStep.IsStep(EMPTY_SHELF_BACK_STEP.WAIT__EMPTY_SHELF_IN_DOUBLE_LINE))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv,SettingString.Leave, CurTaskState)) if (MissionSys.CheckTaskFinished(agv,SettingString.Leave, CurTaskState))
{ {
agv.RFID = ""; agv.RFID = "";
......
...@@ -75,7 +75,7 @@ namespace DeviceLibrary ...@@ -75,7 +75,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Leave); MissionSys.AssignMission(agv, SettingString.Leave);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if(ActionType.Equals(eEnterLeaveType.Enter)) else if(ActionType.Equals(eEnterLeaveType.Enter))
{ {
...@@ -88,7 +88,7 @@ namespace DeviceLibrary ...@@ -88,7 +88,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Enter); MissionSys.AssignMission(agv, SettingString.Enter);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else if (jobStep.IsStep(ENTER_LEAVE_SHELF_STEP.WAIT_LINE_ReadyEnter_RESPONSE)) else if (jobStep.IsStep(ENTER_LEAVE_SHELF_STEP.WAIT_LINE_ReadyEnter_RESPONSE))
...@@ -102,7 +102,7 @@ namespace DeviceLibrary ...@@ -102,7 +102,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Leave); MissionSys.AssignMission(agv, SettingString.Leave);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (jobStep.IsTimeOut(15000, out double timeOutValue)) else if (jobStep.IsTimeOut(15000, out double timeOutValue))
{ {
...@@ -123,7 +123,7 @@ namespace DeviceLibrary ...@@ -123,7 +123,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Enter); MissionSys.AssignMission(agv, SettingString.Enter);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (jobStep.IsTimeOut(15000, out double timeOutValue)) else if (jobStep.IsTimeOut(15000, out double timeOutValue))
{ {
...@@ -135,7 +135,7 @@ namespace DeviceLibrary ...@@ -135,7 +135,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(ENTER_LEAVE_SHELF_STEP.WAIT__SHELF_IN_LINE)) else if (jobStep.IsStep(ENTER_LEAVE_SHELF_STEP.WAIT__SHELF_IN_LINE))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv,SettingString.Leave, CurTaskState)) if (MissionSys.CheckTaskFinished(agv,SettingString.Leave, CurTaskState))
{ {
...@@ -158,7 +158,7 @@ namespace DeviceLibrary ...@@ -158,7 +158,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(ENTER_LEAVE_SHELF_STEP.WAIT__SHELF_OUT_LINE)) else if (jobStep.IsStep(ENTER_LEAVE_SHELF_STEP.WAIT__SHELF_OUT_LINE))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.Enter, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.Enter, CurTaskState))
{ {
......
...@@ -36,7 +36,7 @@ namespace DeviceLibrary ...@@ -36,7 +36,7 @@ namespace DeviceLibrary
/// </summary> /// </summary>
public override string RunInfo public override string RunInfo
{ {
get { return string.Format("回收空料架[RFID={0}][{1}][{2}]:{3}",RFID, CurTaskID, CurTaskState, runInfo); } get { return string.Format("回收空料架[RFID={0}][{1}]:{2}",RFID, CurTaskID, runInfo); }
} }
...@@ -60,7 +60,7 @@ namespace DeviceLibrary ...@@ -60,7 +60,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorAirOut); MissionSys.AssignMission(agv, SettingString.DoorAirOut);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (!AGVManager.CheckIsInAirDoor(agvPlae) && AGVManager.CheckIsInAirDoor(EmptyShelfPlace))//4C风淋门外->风淋门内 else if (!AGVManager.CheckIsInAirDoor(agvPlae) && AGVManager.CheckIsInAirDoor(EmptyShelfPlace))//4C风淋门外->风淋门内
{ {
...@@ -73,7 +73,7 @@ namespace DeviceLibrary ...@@ -73,7 +73,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
AGVManager.MoveToRoomCStandy(agv); AGVManager.MoveToRoomCStandy(agv);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -82,7 +82,7 @@ namespace DeviceLibrary ...@@ -82,7 +82,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorAirIn); MissionSys.AssignMission(agv, SettingString.DoorAirIn);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else if ((agvPlae.StartsWith(SettingString.RoomD_Name_Prefix) || agvPlae.StartsWith(SettingString.DoubleLine_Name_Prefix) || agvPlae.Equals(SettingString.Standby) || else if ((agvPlae.StartsWith(SettingString.RoomD_Name_Prefix) || agvPlae.StartsWith(SettingString.DoubleLine_Name_Prefix) || agvPlae.Equals(SettingString.Standby) ||
...@@ -94,7 +94,7 @@ namespace DeviceLibrary ...@@ -94,7 +94,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorDToC); MissionSys.AssignMission(agv, SettingString.DoorDToC);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else//起始与目的地在风淋门同一侧 else//起始与目的地在风淋门同一侧
...@@ -108,7 +108,7 @@ namespace DeviceLibrary ...@@ -108,7 +108,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorAirOut); MissionSys.AssignMission(agv, SettingString.DoorAirOut);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -129,7 +129,7 @@ namespace DeviceLibrary ...@@ -129,7 +129,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
AGVManager.MoveToRoomCStandy(agv); AGVManager.MoveToRoomCStandy(agv);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -146,7 +146,7 @@ namespace DeviceLibrary ...@@ -146,7 +146,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorCToD); MissionSys.AssignMission(agv, SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if ((agvPlae.StartsWith(SettingString.RoomD_Name_Prefix) || agvPlae.StartsWith(SettingString.DoubleLine_Name_Prefix) || agvPlae.Equals(SettingString.Standby) || else if ((agvPlae.StartsWith(SettingString.RoomD_Name_Prefix) || agvPlae.StartsWith(SettingString.DoubleLine_Name_Prefix) || agvPlae.Equals(SettingString.Standby) ||
agvPlae.Equals(SettingString.AutoCharge)) agvPlae.Equals(SettingString.AutoCharge))
...@@ -157,7 +157,7 @@ namespace DeviceLibrary ...@@ -157,7 +157,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorDToC); MissionSys.AssignMission(agv, SettingString.DoorDToC);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else//4D->4D else//4D->4D
...@@ -174,7 +174,7 @@ namespace DeviceLibrary ...@@ -174,7 +174,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_AGV_REACH_AIR_OUT_DOOR)) else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_AGV_REACH_AIR_OUT_DOOR))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.DoorAirOut, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.DoorAirOut, CurTaskState))
{ {
//4C风淋门内->风淋门外,到达风淋门外 //4C风淋门内->风淋门外,到达风淋门外
...@@ -187,7 +187,7 @@ namespace DeviceLibrary ...@@ -187,7 +187,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
AGVManager.MoveToRoomCStandy(agv); AGVManager.MoveToRoomCStandy(agv);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -204,7 +204,7 @@ namespace DeviceLibrary ...@@ -204,7 +204,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorCToD); MissionSys.AssignMission(agv, SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
//都在风淋门内,到达风淋门外 //都在风淋门内,到达风淋门外
else else
...@@ -214,13 +214,13 @@ namespace DeviceLibrary ...@@ -214,13 +214,13 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
AGVManager.MoveToRoomCStandy(agv); AGVManager.MoveToRoomCStandy(agv);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
} }
else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_AGV_REACH_AIR_IN_DOOR)) else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_AGV_REACH_AIR_IN_DOOR))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.DoorAirIn, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.DoorAirIn, CurTaskState))
{ {
//4C风淋门外->风淋门内 //4C风淋门外->风淋门内
...@@ -232,7 +232,7 @@ namespace DeviceLibrary ...@@ -232,7 +232,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_AGV_REACH_4C_DOOR)) else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_AGV_REACH_4C_DOOR))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.DoorDToC, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.DoorDToC, CurTaskState))
{ {
if (AGVManager.CheckRoomCTarget(agv, EmptyShelfPlace))//被占用 if (AGVManager.CheckRoomCTarget(agv, EmptyShelfPlace))//被占用
...@@ -242,7 +242,7 @@ namespace DeviceLibrary ...@@ -242,7 +242,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
AGVManager.MoveToRoomCStandy(agv); AGVManager.MoveToRoomCStandy(agv);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -253,7 +253,7 @@ namespace DeviceLibrary ...@@ -253,7 +253,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorAirIn); MissionSys.AssignMission(agv, SettingString.DoorAirIn);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -267,7 +267,7 @@ namespace DeviceLibrary ...@@ -267,7 +267,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_REACH_TEMP_PLACE)) else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_REACH_TEMP_PLACE))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.C4_STANDBY1, CurTaskState) || MissionSys.CheckTaskFinished(agv, SettingString.C4_STANDBY2, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.C4_STANDBY1, CurTaskState) || MissionSys.CheckTaskFinished(agv, SettingString.C4_STANDBY2, CurTaskState))
{ {
if (!AGVManager.CheckRoomCTarget(agv, EmptyShelfPlace))//未占用 if (!AGVManager.CheckRoomCTarget(agv, EmptyShelfPlace))//未占用
...@@ -282,7 +282,7 @@ namespace DeviceLibrary ...@@ -282,7 +282,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_AGV_REACH_4D_DOOR)) else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_AGV_REACH_4D_DOOR))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.DoorCToD, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.DoorCToD, CurTaskState))
{ {
jobStep.ToNextStep(TAKE_EMPTY_STEP.ASSIGN_AGV_TASK); jobStep.ToNextStep(TAKE_EMPTY_STEP.ASSIGN_AGV_TASK);
...@@ -301,7 +301,7 @@ namespace DeviceLibrary ...@@ -301,7 +301,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, EmptyShelfPlace); MissionSys.AssignMission(agv, EmptyShelfPlace);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -323,7 +323,7 @@ namespace DeviceLibrary ...@@ -323,7 +323,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_REACH_PLACE)) else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_REACH_PLACE))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, EmptyShelfPlace, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, EmptyShelfPlace, CurTaskState))
{ {
//if (EmptyShelfPlace.Equals(SettingString.C4FeederOut)) //if (EmptyShelfPlace.Equals(SettingString.C4FeederOut))
...@@ -374,7 +374,7 @@ namespace DeviceLibrary ...@@ -374,7 +374,7 @@ namespace DeviceLibrary
jobStep.Msg = msg; jobStep.Msg = msg;
//agv.RFID = node.RFID; //agv.RFID = node.RFID;
MissionSys.AssignMission(agv, SettingString.Enter); MissionSys.AssignMission(agv, SettingString.Enter);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
...@@ -385,7 +385,7 @@ namespace DeviceLibrary ...@@ -385,7 +385,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_TAKE_EMPTY_SHELF)) else if (jobStep.IsStep(TAKE_EMPTY_STEP.WAIT_TAKE_EMPTY_SHELF))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.Enter, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.Enter, CurTaskState))
{ {
ClientNode node = AGVManager.nodeInfo[nodeIdx]; ClientNode node = AGVManager.nodeInfo[nodeIdx];
......
...@@ -32,7 +32,7 @@ namespace DeviceLibrary ...@@ -32,7 +32,7 @@ namespace DeviceLibrary
/// </summary> /// </summary>
public override string RunInfo public override string RunInfo
{ {
get { return string.Format("接满料任务[{0}][{1}]:{2}", CurTaskID, CurTaskState, runInfo); } get { return string.Format("接满料任务[{0}]:{1}", CurTaskID, runInfo); }
} }
/// <summary> /// <summary>
...@@ -55,11 +55,11 @@ namespace DeviceLibrary ...@@ -55,11 +55,11 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.CheckShelf); MissionSys.AssignMission(agv, SettingString.CheckShelf);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (jobStep.IsStep(GO_FULL_SHELF_STATION_STEP.WAIT_CHECK_RESULT)) else if (jobStep.IsStep(GO_FULL_SHELF_STATION_STEP.WAIT_CHECK_RESULT))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.CheckShelf, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.CheckShelf, CurTaskState))
{ {
if (agv.IsExistShelf) if (agv.IsExistShelf)
...@@ -79,7 +79,7 @@ namespace DeviceLibrary ...@@ -79,7 +79,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, FullShelfStationPlace); MissionSys.AssignMission(agv, FullShelfStationPlace);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (AGVManager.CheckIsInAirDoor(agvPlace)) else if (AGVManager.CheckIsInAirDoor(agvPlace))
{ {
...@@ -88,7 +88,7 @@ namespace DeviceLibrary ...@@ -88,7 +88,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorAirOut); MissionSys.AssignMission(agv, SettingString.DoorAirOut);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix))//4C车间 else if (agvPlace.StartsWith(SettingString.RoomC_Name_Prefix))//4C车间
{ {
...@@ -97,7 +97,7 @@ namespace DeviceLibrary ...@@ -97,7 +97,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorCToD); MissionSys.AssignMission(agv, SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -106,7 +106,7 @@ namespace DeviceLibrary ...@@ -106,7 +106,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, FullShelfStationPlace); MissionSys.AssignMission(agv, FullShelfStationPlace);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
...@@ -115,7 +115,7 @@ namespace DeviceLibrary ...@@ -115,7 +115,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(GO_FULL_SHELF_STATION_STEP.WAIT_AGV_REACH_AIR_DOOR)) else if (jobStep.IsStep(GO_FULL_SHELF_STATION_STEP.WAIT_AGV_REACH_AIR_DOOR))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.DoorAirOut, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.DoorAirOut, CurTaskState))
{ {
jobStep.ToNextStep(GO_FULL_SHELF_STATION_STEP.WAIT_AGV_REACH_DOOR); jobStep.ToNextStep(GO_FULL_SHELF_STATION_STEP.WAIT_AGV_REACH_DOOR);
...@@ -123,13 +123,13 @@ namespace DeviceLibrary ...@@ -123,13 +123,13 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorCToD); MissionSys.AssignMission(agv, SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else if (jobStep.IsStep(GO_FULL_SHELF_STATION_STEP.WAIT_AGV_REACH_DOOR)) else if (jobStep.IsStep(GO_FULL_SHELF_STATION_STEP.WAIT_AGV_REACH_DOOR))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.DoorCToD, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.DoorCToD, CurTaskState))
{ {
jobStep.ToNextStep(GO_FULL_SHELF_STATION_STEP.WAIT_AGV_REACH_A6); jobStep.ToNextStep(GO_FULL_SHELF_STATION_STEP.WAIT_AGV_REACH_A6);
...@@ -137,13 +137,13 @@ namespace DeviceLibrary ...@@ -137,13 +137,13 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, FullShelfStationPlace); MissionSys.AssignMission(agv, FullShelfStationPlace);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else if (jobStep.IsStep(GO_FULL_SHELF_STATION_STEP.WAIT_AGV_REACH_A6)) else if (jobStep.IsStep(GO_FULL_SHELF_STATION_STEP.WAIT_AGV_REACH_A6))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, FullShelfStationPlace, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, FullShelfStationPlace, CurTaskState))
{ {
ClientNode node = AGVManager.nodeInfo.Find(s => s.Name.Equals(SettingString.A6) ClientNode node = AGVManager.nodeInfo.Find(s => s.Name.Equals(SettingString.A6)
...@@ -180,7 +180,7 @@ namespace DeviceLibrary ...@@ -180,7 +180,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Standby); MissionSys.AssignMission(agv, SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
} }
...@@ -190,7 +190,7 @@ namespace DeviceLibrary ...@@ -190,7 +190,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(GO_FULL_SHELF_STATION_STEP.WAIT_REACH_STANDBY)) else if (jobStep.IsStep(GO_FULL_SHELF_STATION_STEP.WAIT_REACH_STANDBY))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.Standby, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.Standby, CurTaskState))
{ {
jobStep.ToNextStep(GO_FULL_SHELF_STATION_STEP.END); jobStep.ToNextStep(GO_FULL_SHELF_STATION_STEP.END);
...@@ -219,7 +219,7 @@ namespace DeviceLibrary ...@@ -219,7 +219,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(), runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv,SettingString.Enter); MissionSys.AssignMission(agv,SettingString.Enter);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
...@@ -232,7 +232,7 @@ namespace DeviceLibrary ...@@ -232,7 +232,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(GO_FULL_SHELF_STATION_STEP.WAIT__FULL_SHELF_IN_AGV)) else if (jobStep.IsStep(GO_FULL_SHELF_STATION_STEP.WAIT__FULL_SHELF_IN_AGV))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.Enter, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.Enter, CurTaskState))
{ {
......
...@@ -40,7 +40,7 @@ namespace DeviceLibrary ...@@ -40,7 +40,7 @@ namespace DeviceLibrary
/// </summary> /// </summary>
public override string RunInfo public override string RunInfo
{ {
get { return string.Format("送满料任务[RFID={0}][{1}][{2}]:{3}",RFID, CurTaskID, CurTaskState, runInfo); } get { return string.Format("送满料任务[RFID={0}][{1}]:{2}",RFID, CurTaskID, runInfo); }
} }
...@@ -61,7 +61,7 @@ namespace DeviceLibrary ...@@ -61,7 +61,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorDToC); MissionSys.AssignMission(agv, SettingString.DoorDToC);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -70,13 +70,13 @@ namespace DeviceLibrary ...@@ -70,13 +70,13 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, FullShelfPlace); MissionSys.AssignMission(agv, FullShelfPlace);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else if (jobStep.IsStep(SEND_FULL_SHELF_STEP.WAIT_AGV_REACH_DOOR)) else if (jobStep.IsStep(SEND_FULL_SHELF_STEP.WAIT_AGV_REACH_DOOR))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.DoorDToC, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.DoorDToC, CurTaskState))
{ {
if (AGVManager.CheckRoomCTarget(agv, FullShelfPlace))//被占用 if (AGVManager.CheckRoomCTarget(agv, FullShelfPlace))//被占用
...@@ -86,7 +86,7 @@ namespace DeviceLibrary ...@@ -86,7 +86,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
AGVManager.MoveToRoomCStandy(agv); AGVManager.MoveToRoomCStandy(agv);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -97,7 +97,7 @@ namespace DeviceLibrary ...@@ -97,7 +97,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorAirIn); MissionSys.AssignMission(agv, SettingString.DoorAirIn);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -106,7 +106,7 @@ namespace DeviceLibrary ...@@ -106,7 +106,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, FullShelfPlace); MissionSys.AssignMission(agv, FullShelfPlace);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
...@@ -114,7 +114,7 @@ namespace DeviceLibrary ...@@ -114,7 +114,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(SEND_FULL_SHELF_STEP.WAIT_AGV_REACH_AIR_DOOR)) else if (jobStep.IsStep(SEND_FULL_SHELF_STEP.WAIT_AGV_REACH_AIR_DOOR))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.DoorAirIn, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.DoorAirIn, CurTaskState))
{ {
jobStep.ToNextStep(SEND_FULL_SHELF_STEP.WAIT_AGV_REACH_LINE); jobStep.ToNextStep(SEND_FULL_SHELF_STEP.WAIT_AGV_REACH_LINE);
...@@ -122,12 +122,12 @@ namespace DeviceLibrary ...@@ -122,12 +122,12 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, FullShelfPlace); MissionSys.AssignMission(agv, FullShelfPlace);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else if (jobStep.IsStep(SEND_FULL_SHELF_STEP.WAIT_REACH_TEMP_PLACE)) else if (jobStep.IsStep(SEND_FULL_SHELF_STEP.WAIT_REACH_TEMP_PLACE))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, SettingString.C4_STANDBY1, CurTaskState) || MissionSys.CheckTaskFinished(agv, SettingString.C4_STANDBY2, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, SettingString.C4_STANDBY1, CurTaskState) || MissionSys.CheckTaskFinished(agv, SettingString.C4_STANDBY2, CurTaskState))
{ {
if (!AGVManager.CheckRoomCTarget(agv, FullShelfPlace))//未占用 if (!AGVManager.CheckRoomCTarget(agv, FullShelfPlace))//未占用
...@@ -139,7 +139,7 @@ namespace DeviceLibrary ...@@ -139,7 +139,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorAirIn); MissionSys.AssignMission(agv, SettingString.DoorAirIn);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -148,14 +148,14 @@ namespace DeviceLibrary ...@@ -148,14 +148,14 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv, FullShelfPlace); MissionSys.AssignMission(agv, FullShelfPlace);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
} }
} }
else if (jobStep.IsStep(SEND_FULL_SHELF_STEP.WAIT_AGV_REACH_LINE)) else if (jobStep.IsStep(SEND_FULL_SHELF_STEP.WAIT_AGV_REACH_LINE))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv, FullShelfPlace, CurTaskState)) if (MissionSys.CheckTaskFinished(agv, FullShelfPlace, CurTaskState))
{ {
//if (FullShelfPlace.Equals(SettingString.C4FeederIn)) //if (FullShelfPlace.Equals(SettingString.C4FeederIn))
...@@ -222,7 +222,7 @@ namespace DeviceLibrary ...@@ -222,7 +222,7 @@ namespace DeviceLibrary
msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo); msg += string.Format("[{0}] {1}", jobStep.CurStep(),runInfo);
jobStep.Msg = msg; jobStep.Msg = msg;
MissionSys.AssignMission(agv,SettingString.Leave); MissionSys.AssignMission(agv,SettingString.Leave);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
...@@ -246,7 +246,7 @@ namespace DeviceLibrary ...@@ -246,7 +246,7 @@ namespace DeviceLibrary
} }
else if (jobStep.IsStep(SEND_FULL_SHELF_STEP.WAIT__SHELF_IN_LINE)) else if (jobStep.IsStep(SEND_FULL_SHELF_STEP.WAIT__SHELF_IN_LINE))
{ {
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (MissionSys.CheckTaskFinished(agv,SettingString.Leave, CurTaskState)) if (MissionSys.CheckTaskFinished(agv,SettingString.Leave, CurTaskState))
{ {
runInfo = "满料进入" + FullShelfPlace + "完成[" + agv.BoxDestInfo + "]"; runInfo = "满料进入" + FullShelfPlace + "完成[" + agv.BoxDestInfo + "]";
......
...@@ -43,7 +43,7 @@ namespace DeviceLibrary ...@@ -43,7 +43,7 @@ namespace DeviceLibrary
bool rtn = false; bool rtn = false;
agv.Msg = ""; agv.Msg = "";
CurTaskState = MissionSys.GetTakJobState(CurTaskID); CurTaskState = MissionSys.GetTakJobState(agv);
if (curJobStep.IsStep(EXECUTE_STEP.NONE)) if (curJobStep.IsStep(EXECUTE_STEP.NONE))
{ {
if (agvPlace.Equals(SettingString.Standby))//在待机位不操作 if (agvPlace.Equals(SettingString.Standby))//在待机位不操作
...@@ -61,7 +61,7 @@ namespace DeviceLibrary ...@@ -61,7 +61,7 @@ namespace DeviceLibrary
msg += runInfo; msg += runInfo;
curJobStep.Msg = msg; curJobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.DoorCToD); MissionSys.AssignMission(agv, SettingString.DoorCToD);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
else else
{ {
...@@ -71,7 +71,7 @@ namespace DeviceLibrary ...@@ -71,7 +71,7 @@ namespace DeviceLibrary
curJobStep.Msg = msg; curJobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Standby); MissionSys.AssignMission(agv, SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
...@@ -86,7 +86,7 @@ namespace DeviceLibrary ...@@ -86,7 +86,7 @@ namespace DeviceLibrary
curJobStep.Msg = msg; curJobStep.Msg = msg;
MissionSys.AssignMission(agv, SettingString.Standby); MissionSys.AssignMission(agv, SettingString.Standby);
UpdateJobTaskInfo(agv.CurTarName, agv.CurTaskID); UpdateJobTaskInfo(agv);
} }
} }
else if (curJobStep.IsStep(EXECUTE_STEP.WAIT_REACH_STANDBY)) else if (curJobStep.IsStep(EXECUTE_STEP.WAIT_REACH_STANDBY))
......
...@@ -43,13 +43,13 @@ namespace DeviceLibrary ...@@ -43,13 +43,13 @@ namespace DeviceLibrary
if (workOrder.data.line != null) if (workOrder.data.line != null)
{ {
string tempLocation = workOrder.data.line; string tempLocation = workOrder.data.line;
if (workOrder.data.line.Equals("Feeder")) if (workOrder.data.line.Equals("3DFeeder"))
{ {
tempLocation = "FeederIn"; tempLocation = "3DFeederIn";
} }
else if (workOrder.data.line.Equals("4CFeeder")) else if (workOrder.data.line.Equals("3CFeeder"))
{ {
tempLocation = "4CFeederIn"; tempLocation = "3CFeederIn";
} }
workOrder.data.line = tempLocation; workOrder.data.line = tempLocation;
woData = workOrder.data; woData = workOrder.data;
...@@ -106,7 +106,7 @@ namespace DeviceLibrary ...@@ -106,7 +106,7 @@ namespace DeviceLibrary
{ {
if (rfid.Equals("") || rfid.Equals("00")) if (rfid.Equals("") || rfid.Equals("00"))
return false; return false;
string itsHttp = AppConfigHelper.GetValue(SettingString.ITS); string itsHttp = "http://"+AppConfigHelper.GetValue(SettingString.ITS)+"/ESMTCommonInterface/CommonService.asmx/VMIGetBoxDestInfo?boxRFID=";
string url = itsHttp + rfid; string url = itsHttp + rfid;
var client = new RestClient(url) { Timeout = -1 }; var client = new RestClient(url) { Timeout = -1 };
var request = new RestRequest(Method.GET); var request = new RestRequest(Method.GET);
...@@ -126,13 +126,13 @@ namespace DeviceLibrary ...@@ -126,13 +126,13 @@ namespace DeviceLibrary
string tempLocation = res[0].location; string tempLocation = res[0].location;
if (res[0].id == rfid) if (res[0].id == rfid)
{ {
if (res[0].location.Equals("Feeder")) if (res[0].location.Equals("3DFeeder"))
{ {
tempLocation = "FeederIn"; tempLocation = "3DFeederIn";
} }
else if (res[0].location.Equals("4CFeeder")) else if (res[0].location.Equals("3CFeeder"))
{ {
tempLocation = "4CFeederIn"; tempLocation = "3CFeederIn";
} }
if (AGVManager.GetNodeNameByLineName(tempLocation, out string loc)) if (AGVManager.GetNodeNameByLineName(tempLocation, out string loc))
...@@ -219,15 +219,15 @@ namespace DeviceLibrary ...@@ -219,15 +219,15 @@ namespace DeviceLibrary
//Host: 10.85.17.233 //Host: 10.85.17.233
AGVManager.GetLineNameByNodeName(nodeName, out string lineName); AGVManager.GetLineNameByNodeName(nodeName, out string lineName);
if (lineName.Equals("FeederIn")) if (lineName.Equals("3DFeederIn"))
{ {
lineName = "Feeder"; lineName = "3DFeeder";
} }
else if (lineName.Equals("4CFeederIn")) else if (lineName.Equals("3CFeederIn"))
{ {
lineName = "4CFeeder"; lineName = "3CFeeder";
} }
string addr = "http://10.85.17.233/ESMTCommonInterface/CommonService.asmx/UpdateStatusBy?id=" + rfid + "&location=" + lineName; string addr = "http://"+ AppConfigHelper.GetValue(SettingString.ITS) + "/ESMTCommonInterface/CommonService.asmx/UpdateStatusBy?id=" + rfid + "&location=" + lineName;
//[{"msg":"1更新成功"}] //[{"msg":"1更新成功"}]
try try
{ {
...@@ -267,7 +267,7 @@ namespace DeviceLibrary ...@@ -267,7 +267,7 @@ namespace DeviceLibrary
lineName = ""; lineName = "";
//GET /ESMTCommonInterface/CommonService.asmx/GetRackBy?id=string HTTP/1.1 //GET /ESMTCommonInterface/CommonService.asmx/GetRackBy?id=string HTTP/1.1
//Host: 10.85.17.233 //Host: 10.85.17.233
string addr = "http://10.85.17.233/ESMTCommonInterface/CommonService.asmx/GetRackBy?id=" + rfid; string addr = "http://"+AppConfigHelper.GetValue(SettingString.ITS)+"/ESMTCommonInterface/CommonService.asmx/GetRackBy?id=" + rfid;
//[{"msg":"1OKD1"}] //[{"msg":"1OKD1"}]
//[{"msg":"0NGFeeder"}] //[{"msg":"0NGFeeder"}]
try try
...@@ -301,7 +301,7 @@ namespace DeviceLibrary ...@@ -301,7 +301,7 @@ namespace DeviceLibrary
{ {
//GET /ESMTCommonInterface/CommonService.asmx/GetRackBy?id=string HTTP/1.1 //GET /ESMTCommonInterface/CommonService.asmx/GetRackBy?id=string HTTP/1.1
//Host: 10.85.17.233 //Host: 10.85.17.233
string addr = "http://10.85.17.233/ESMTCommonInterface/CommonService.asmx/GetRackBy?id=" + rfid; string addr = "http://10.85.71.25/ESMTCommonInterface/CommonService.asmx/GetRackBy?id=" + rfid;
//[{"msg":"1OKD1"}] //[{"msg":"1OKD1"}]
//[{"msg":"0NGFeeder"}] //[{"msg":"0NGFeeder"}]
try try
...@@ -347,6 +347,7 @@ namespace DeviceLibrary ...@@ -347,6 +347,7 @@ namespace DeviceLibrary
string msg = ""; string msg = "";
try try
{ {
if (msgList.Count.Equals(0)) return "";
Dictionary<string, string> paramMap = new Dictionary<string, string>(); Dictionary<string, string> paramMap = new Dictionary<string, string>();
string msgListStr = JsonHelper.SerializeObject(msgList); string msgListStr = JsonHelper.SerializeObject(msgList);
paramMap.Add("deviceAlarmList", msgListStr); paramMap.Add("deviceAlarmList", msgListStr);
...@@ -390,40 +391,40 @@ namespace DeviceLibrary ...@@ -390,40 +391,40 @@ namespace DeviceLibrary
return path; return path;
} }
public static string Add_emptyMsg = "http://10.85.199.1/BenQMIR/Webservice/AGVService.asmx/CreateEmptyRecycleTask"; //public static string Add_emptyMsg = "http://10.85.197.3/BenQMIR/Webservice/AGVService.asmx/CreateEmptyRecycleTask";
public static string CreateEmptyTask() //public static string CreateEmptyTask()
{ //{
try // try
{ // {
Dictionary<string, string> paramMap = new Dictionary<string, string>(); // Dictionary<string, string> paramMap = new Dictionary<string, string>();
paramMap.Add("emptyStation", "D1"); // paramMap.Add("emptyStation", "D1");
string path = Add_emptyMsg + "?"; // string path = Add_emptyMsg + "?";
foreach (string paramName in paramMap.Keys) // foreach (string paramName in paramMap.Keys)
{ // {
string par = System.Web.HttpUtility.UrlEncode(paramMap[paramName], System.Text.Encoding.UTF8); // string par = System.Web.HttpUtility.UrlEncode(paramMap[paramName], System.Text.Encoding.UTF8);
path += paramName + "=" + par + "&"; // path += paramName + "=" + par + "&";
} // }
path = path.Substring(0, path.Length - 1); // path = path.Substring(0, path.Length - 1);
string resultStr = HttpHelper.Post(path, ""); // string resultStr = HttpHelper.Post(path, "");
log.Debug("【" + path + "】【" + resultStr + "】"); // log.Debug("【" + path + "】【" + resultStr + "】");
Result data = JsonHelper.DeserializeJsonToObject<Result>(resultStr); // Result data = JsonHelper.DeserializeJsonToObject<Result>(resultStr);
if (data == null) // if (data == null)
{ // {
return " updateDeviceAlarmMsg 没有收到服务器反馈"; // return " updateDeviceAlarmMsg 没有收到服务器反馈";
} // }
else // else
{ // {
return data.Succeed.ToString(); // return data.Succeed.ToString();
} // }
} // }
catch (Exception e) // catch (Exception e)
{ // {
return e.ToString(); // return e.ToString();
} // }
} //}
/// <summary> /// <summary>
/// 获取接驳台料架情况 /// 获取接驳台料架情况
...@@ -436,11 +437,11 @@ namespace DeviceLibrary ...@@ -436,11 +437,11 @@ namespace DeviceLibrary
if (lineName.StartsWith(SettingString.RoomD_Name_Prefix)) if (lineName.StartsWith(SettingString.RoomD_Name_Prefix))
{ {
addr = string.Format("http://{0}/LineGetRFID?line={1}", AppConfigHelper.GetValue(SettingString.IP_4D_Light), lineName); addr = string.Format("http://{0}/LineGetRFID?line={1}", AppConfigHelper.GetValue(SettingString.IP_3D_Light), lineName);
} }
else if (lineName.StartsWith(SettingString.RoomC_Name_Prefix)) else if (lineName.StartsWith(SettingString.RoomC_Name_Prefix))
{ {
addr = string.Format("http://{0}/LineGetRFID?line={1}", AppConfigHelper.GetValue(SettingString.IP_4C_Light), lineName); addr = string.Format("http://{0}/LineGetRFID?line={1}", AppConfigHelper.GetValue(SettingString.IP_3C_Light), lineName);
} }
try try
{ {
...@@ -477,11 +478,11 @@ namespace DeviceLibrary ...@@ -477,11 +478,11 @@ namespace DeviceLibrary
if (lineName.StartsWith(SettingString.RoomD_Name_Prefix)) if (lineName.StartsWith(SettingString.RoomD_Name_Prefix))
{ {
addr = string.Format("http://{0}/LineGetRFID?line={1}", AppConfigHelper.GetValue(SettingString.IP_4D_Light), lineName); addr = string.Format("http://{0}/LineGetRFID?line={1}", AppConfigHelper.GetValue(SettingString.IP_3D_Light), lineName);
} }
else if (lineName.StartsWith(SettingString.RoomC_Name_Prefix)) else if (lineName.StartsWith(SettingString.RoomC_Name_Prefix))
{ {
addr = string.Format("http://{0}/LineGetRFID?line={1}", AppConfigHelper.GetValue(SettingString.IP_4C_Light), lineName); addr = string.Format("http://{0}/LineGetRFID?line={1}", AppConfigHelper.GetValue(SettingString.IP_3C_Light), lineName);
} }
try try
{ {
...@@ -520,17 +521,18 @@ namespace DeviceLibrary ...@@ -520,17 +521,18 @@ namespace DeviceLibrary
/// <param name="lineName"></param> /// <param name="lineName"></param>
/// <param name="rfid"></param> /// <param name="rfid"></param>
/// <returns></returns> /// <returns></returns>
public static bool ClearRFID(string lineName, string rfid) public static bool ClearRFID(string nodeName, string rfid)
{ {
string addr = ""; string addr = "";
if (lineName.StartsWith(SettingString.RoomD_Name_Prefix)) string lineName = "";
if (nodeName.StartsWith(SettingString.RoomD_Name_Prefix) && AGVManager.GetLineNameByNodeName(nodeName, out lineName))
{ {
addr = string.Format("http://{0}/LineClearRFID?line={1}&rfid={2}", AppConfigHelper.GetValue(SettingString.IP_4D_Light), lineName, rfid); addr = string.Format("http://{0}/LineClearRFID?line={1}&rfid={2}", AppConfigHelper.GetValue(SettingString.IP_3D_Light), lineName, rfid);
} }
else if (lineName.StartsWith(SettingString.RoomC_Name_Prefix)) else if (nodeName.StartsWith(SettingString.RoomC_Name_Prefix) && AGVManager.GetLineNameByNodeName(nodeName, out lineName))
{ {
addr = string.Format("http://{0}/LineClearRFID?line={1}&rfid={2}", AppConfigHelper.GetValue(SettingString.IP_4C_Light), lineName, rfid); addr = string.Format("http://{0}/LineClearRFID?line={1}&rfid={2}", AppConfigHelper.GetValue(SettingString.IP_3C_Light), lineName, rfid);
} }
try try
{ {
......
...@@ -58,9 +58,9 @@ namespace DeviceLibrary ...@@ -58,9 +58,9 @@ namespace DeviceLibrary
res = new Result() { Succeed = false, ResultData = null, ErrorMessage = "emptyStation =null " }; res = new Result() { Succeed = false, ResultData = null, ErrorMessage = "emptyStation =null " };
else else
{ {
if (emptyStation.Equals("Feeder")) if (emptyStation.Equals("3DFeeder"))
{ {
emptyStation = "FeederOut"; emptyStation = "3DFeederOut";
} }
else if (emptyStation.Equals("3CFeeder")) else if (emptyStation.Equals("3CFeeder"))
{ {
...@@ -107,9 +107,9 @@ namespace DeviceLibrary ...@@ -107,9 +107,9 @@ namespace DeviceLibrary
public string CreateEmptyRecycleTaskGET(string line, string RFID) public string CreateEmptyRecycleTaskGET(string line, string RFID)
{ {
Result res; Result res;
if (line.Equals("Feeder")) if (line.Equals("3DFeeder"))
{ {
line = "FeederOut"; line = "3DFeederOut";
} }
else if (line.Equals("3CFeeder")) else if (line.Equals("3CFeeder"))
{ {
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!