Commit 4a17d764 张东亮

1号车只运C5,C6

1 个父辈 33d7371d
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="log4net"> <Reference Include="log4net">
<HintPath>..\..\..\..\DLL\log4net.dll</HintPath> <HintPath>dll\log4net.dll</HintPath>
</Reference> </Reference>
<Reference Include="Newtonsoft.Json, Version=3.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL"> <Reference Include="Newtonsoft.Json, Version=3.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
......
...@@ -407,6 +407,126 @@ namespace BLL ...@@ -407,6 +407,126 @@ namespace BLL
bool rtn; bool rtn;
string log; string log;
Agv_Info agv = Common.agvInfo[agvIdx]; Agv_Info agv = Common.agvInfo[agvIdx];
if(agv.IP.Equals(Common.No1_IP))
{
//检测IO信号
rtn = Common.mir.Get_IO_Status(agv, out bool[] input, out bool[] output);
if (rtn)
{
if (input[3])
{
agv.IsUse = false;
AgvChanged?.Invoke(agvIdx);
//System.Windows.Forms.MessageBox.Show("关闭小车调用,因检测到车上有料架/料串,不执行任务!请将料架移除再打开调用。");
Common.log.Info("关闭小车调用,因检测到车上有料架/料串,不执行任务!请将料架移除再打开调用。");
return;
}
int nodeIdx = -1;
int high = 0, middle = 0, low = 0;
List<int> node = new List<int>();
//清除节点AGV的名称
foreach (var item in Common.nodeInfo)
{
if (item.AgvName.Equals(agv.Name))
{
item.AgvName = "";
Common.log.Info("清除节点的AGV名称: 节点名:" + item.Name + ";AGV名称:" + agv.Name);
}
}
//需要出料架,且没有被标记
//A4是包装料仓的进料,不包含在内
//根据优先级调用
for (int i = 0; i < Common.nodeInfo.Count; i++)
{
if (Common.nodeInfo[i].Action == ClientAction.NeedLeave && Common.nodeInfo[i].Name != "A4" &&
Common.nodeInfo[i].AgvName == "" && Common.nodeInfo[i].IsUse)
{
switch (Common.nodeInfo[i].Level)
{
case ClientLevel.High:
node.Insert(high++, i);
middle++;
low++;
break;
case ClientLevel.Middle:
node.Insert(middle++, i);
low++;
break;
case ClientLevel.Low:
node.Insert(low++, i);
break;
}
}
}
if (node.Count == 0)
{
nodeIdx = -1;
}
else
{
//按顺序取符合要求的
for (int i = 0; i < node.Count; i++)
{
if (Common.nodeInfo[node[i]].Name == "A1" && Common.nodeInfo[node[i]].RFID.StartsWith("B"))//A1出料串,检查C5是否需要
{
int n = Common.nodeInfo.FindIndex(s => s.Name == "C5" && s.Action == ClientAction.NeedEnter && s.AgvName == "" && s.IsUse);
if (n > -1)
{
nodeIdx = node[i];
break;
}
}
else if (agv.IP.Equals(Common.No1_IP) && Common.nodeInfo[node[i]].Name == "C6")//C6准备出空架子,A2需要料
{
int n = Common.nodeInfo.FindIndex(s => s.Name == "A2" && s.Action == ClientAction.NeedEnter && s.AgvName == "" && s.IsUse);
//入料口有一个没有占用
if (n > -1)
{
nodeIdx = node[i];
break;
}
}
}
if (nodeIdx > -1)
{
if (Common.nodeInfo[nodeIdx].Name == "A1")
{
if (Common.nodeInfo[nodeIdx].RFID.Length == 0 || Common.nodeInfo[nodeIdx].RFID == "00")
{
Common.log.Info("A1 RFID 错误");
//Common.log.OutTextBox("A1 RFID 错误");
return;
}
else
{
Common.log.Info("[StatusNone Assign Mission A1] " + agv.Name + " " + Common.nodeInfo[nodeIdx].Name);
MoveNode(agv, nodeIdx);
return;
}
}
else
{
Common.log.Info("[StatusNone Assign Mission other] " + agv.Name + " " + Common.nodeInfo[nodeIdx].Name);
MoveNode(agv, nodeIdx);
return;
}
}
}
}
}
else //除1号小车
{
//检测IO信号 //检测IO信号
rtn = Common.mir.Get_IO_Status(agv, out bool[] input, out bool[] output); rtn = Common.mir.Get_IO_Status(agv, out bool[] input, out bool[] output);
if (rtn) if (rtn)
...@@ -676,13 +796,13 @@ namespace BLL ...@@ -676,13 +796,13 @@ namespace BLL
{ {
int n = Common.nodeInfo.FindIndex(s => s.Name == "C1" && s.Action == ClientAction.NeedEnter && s.AgvName == "" && s.IsUse); int n = Common.nodeInfo.FindIndex(s => s.Name == "C1" && s.Action == ClientAction.NeedEnter && s.AgvName == "" && s.IsUse);
if (n == -1) n = Common.nodeInfo.FindIndex(s => s.Name == "C3" && s.Action == ClientAction.NeedEnter && s.AgvName == "" && s.IsUse); if (n == -1) n = Common.nodeInfo.FindIndex(s => s.Name == "C3" && s.Action == ClientAction.NeedEnter && s.AgvName == "" && s.IsUse);
if (n == -1) n = Common.nodeInfo.FindIndex(s => s.Name == "C5" && s.Action == ClientAction.NeedEnter && s.AgvName == "" && s.IsUse);
//入料口有一个没有占用 //入料口有一个没有占用
if (n > -1) if (n > -1)
{ {
nodeIdx = node[i]; nodeIdx = node[i];
break; break;
} }
} }
else if (Common.nodeInfo[node[i]].Name == "A1" && Common.nodeInfo[node[i]].RFID.StartsWith("A"))//B区域入料 else if (Common.nodeInfo[node[i]].Name == "A1" && Common.nodeInfo[node[i]].RFID.StartsWith("A"))//B区域入料
{ {
...@@ -723,7 +843,7 @@ namespace BLL ...@@ -723,7 +843,7 @@ namespace BLL
break; break;
} }
} }
else if (Common.nodeInfo[node[i]].Name == "C2" || Common.nodeInfo[node[i]].Name == "C4" || Common.nodeInfo[node[i]].Name == "C6")//C2,4,6准备出空架子,A2需要料 else if (Common.nodeInfo[node[i]].Name == "C2" || Common.nodeInfo[node[i]].Name == "C4")//C2,4准备出空架子,A2需要料
{ {
int n = Common.nodeInfo.FindIndex(s => s.Name == "C7" && s.Action == ClientAction.NeedEnter && s.AgvName == "" && s.IsUse); int n = Common.nodeInfo.FindIndex(s => s.Name == "C7" && s.Action == ClientAction.NeedEnter && s.AgvName == "" && s.IsUse);
if (n == -1) n = Common.nodeInfo.FindIndex(s => s.Name == "A2" && s.Action == ClientAction.NeedEnter && s.AgvName == "" && s.IsUse); if (n == -1) n = Common.nodeInfo.FindIndex(s => s.Name == "A2" && s.Action == ClientAction.NeedEnter && s.AgvName == "" && s.IsUse);
...@@ -744,11 +864,11 @@ namespace BLL ...@@ -744,11 +864,11 @@ namespace BLL
break; break;
} }
} }
else //else if(!Common.nodeInfo[node[i]].Equals("C5") || !Common.nodeInfo[node[i]].Equals("C6"))
{ //{
nodeIdx = node[i]; // nodeIdx = node[i];
break; // break;
} //}
} }
if (nodeIdx > -1) if (nodeIdx > -1)
...@@ -794,6 +914,8 @@ namespace BLL ...@@ -794,6 +914,8 @@ namespace BLL
} }
}
} }
catch (Exception ex) catch (Exception ex)
...@@ -1147,8 +1269,9 @@ namespace BLL ...@@ -1147,8 +1269,9 @@ namespace BLL
rtn = B123456Enter(agv); break; rtn = B123456Enter(agv); break;
case "C2": case "C2":
case "C4": case "C4":
rtn = C24Enter(agv); break;
case "C6": case "C6":
rtn = C246Enter(agv); break; rtn = C6Enter(agv); break;
case "C8": case "C8":
rtn = C8Enter(agv); break; rtn = C8Enter(agv); break;
case "D2": case "D2":
...@@ -1402,6 +1525,23 @@ namespace BLL ...@@ -1402,6 +1525,23 @@ namespace BLL
nodeIdx = FindAreaC(); nodeIdx = FindAreaC();
if (nodeIdx > -1) if (nodeIdx > -1)
{ {
string nodeName = Common.nodeInfo[nodeIdx].Name;
if (nodeName.Equals("C5") && agv.IP.Equals(Common.No1_IP))
{
rtn = MoveNode(agv, nodeIdx);
if (rtn)
{
agv.NextMission = "";
Common.log.Info(agv.Name + " A1出料串[" + agv.RFID + "],去[" + Common.nodeInfo[nodeIdx].Name + "]入库");
}
else
{
agv.NextMission = Common.nodeInfo[nodeIdx].Name;
//Common.mir.Add_Mission_Fleet(agv, "Common.agvMission["MoveStandbyTemp"]");
}
}
else if (!nodeName.Equals("C5") && !agv.IP.Equals(Common.No1_IP))
{
rtn = MoveNode(agv, nodeIdx); rtn = MoveNode(agv, nodeIdx);
if (rtn) if (rtn)
{ {
...@@ -1425,6 +1565,19 @@ namespace BLL ...@@ -1425,6 +1565,19 @@ namespace BLL
Common.log.Info(log); Common.log.Info(log);
Common.ShowLog(log); Common.ShowLog(log);
} }
}
}
else
{
if (!agv.StandbyTemp)
{
agv.StandbyTemp = true;
log = agv.Name + " A1出料串[" + agv.RFID + "] C区暂时没有位置";
agv.NextMission = "C区";
Common.mir.Add_Mission_Fleet(agv, Common.agvMission["MoveStandbyTemp"]);
Common.log.Info(log);
Common.ShowLog(log);
}
} }
} }
...@@ -1882,12 +2035,12 @@ namespace BLL ...@@ -1882,12 +2035,12 @@ namespace BLL
rtn = FindNeedLeave(agv, "C4"); rtn = FindNeedLeave(agv, "C4");
if (rtn) if (rtn)
Common.log.Info(agv.Name + " 在C1送完料串,检测到C4出料串任务[A2可以进料],开始执行"); Common.log.Info(agv.Name + " 在C1送完料串,检测到C4出料串任务[A2可以进料],开始执行");
if (!rtn) //if (!rtn)
{ //{
rtn = FindNeedLeave(agv, "C6"); // rtn = FindNeedLeave(agv, "C6");
if (rtn) // if (rtn)
Common.log.Info(agv.Name + " 在C1送完料串,检测到C6出料串任务[A2可以进料],开始执行"); // Common.log.Info(agv.Name + " 在C1送完料串,检测到C6出料串任务[A2可以进料],开始执行");
} //}
} }
if (!rtn) if (!rtn)
...@@ -1898,12 +2051,12 @@ namespace BLL ...@@ -1898,12 +2051,12 @@ namespace BLL
rtn = FindNeedLeave(agv, "C4"); rtn = FindNeedLeave(agv, "C4");
if (rtn) if (rtn)
Common.log.Info(agv.Name + " 在C1送完料串,检测到C4出料串任务[A2不可以进料,C7可以进料],开始执行"); Common.log.Info(agv.Name + " 在C1送完料串,检测到C4出料串任务[A2不可以进料,C7可以进料],开始执行");
if (!rtn) //if (!rtn)
{ //{
rtn = FindNeedLeave(agv, "C6"); // rtn = FindNeedLeave(agv, "C6");
if (rtn) // if (rtn)
Common.log.Info(agv.Name + " 在C1送完料串,检测到C6出料串任务[A2不可以进料,C7可以进料],开始执行"); // Common.log.Info(agv.Name + " 在C1送完料串,检测到C6出料串任务[A2不可以进料,C7可以进料],开始执行");
} //}
} }
} }
...@@ -1923,7 +2076,7 @@ namespace BLL ...@@ -1923,7 +2076,7 @@ namespace BLL
{ {
rtn = MoveStandby(agv); rtn = MoveStandby(agv);
if (rtn) if (rtn)
Common.log.Info(agv.Name + " 在C1送完料串,C4,C6,A1,D2暂无任务,回待机位"); Common.log.Info(agv.Name + " 在C1送完料串,C4,A1,D2暂无任务,回待机位");
} }
return rtn; return rtn;
...@@ -1943,12 +2096,12 @@ namespace BLL ...@@ -1943,12 +2096,12 @@ namespace BLL
rtn = FindNeedLeave(agv, "C4"); rtn = FindNeedLeave(agv, "C4");
if (rtn) if (rtn)
Common.log.Info(agv.Name + " 在C3送完料串,检测到C4出料串任务[A2可以进料],开始执行"); Common.log.Info(agv.Name + " 在C3送完料串,检测到C4出料串任务[A2可以进料],开始执行");
if (!rtn) //if (!rtn)
{ //{
rtn = FindNeedLeave(agv, "C6"); // rtn = FindNeedLeave(agv, "C6");
if (rtn) // if (rtn)
Common.log.Info(agv.Name + " 在C3送完料串,检测到C6出料串任务[A2可以进料],开始执行"); // Common.log.Info(agv.Name + " 在C3送完料串,检测到C6出料串任务[A2可以进料],开始执行");
} //}
} }
if (!rtn) if (!rtn)
...@@ -1959,12 +2112,12 @@ namespace BLL ...@@ -1959,12 +2112,12 @@ namespace BLL
rtn = FindNeedLeave(agv, "C4"); rtn = FindNeedLeave(agv, "C4");
if (rtn) if (rtn)
Common.log.Info(agv.Name + " 在C3送完料串,检测到C4出料串任务[A2不可以进料,C7可以进料],开始执行"); Common.log.Info(agv.Name + " 在C3送完料串,检测到C4出料串任务[A2不可以进料,C7可以进料],开始执行");
if (!rtn) //if (!rtn)
{ //{
rtn = FindNeedLeave(agv, "C6"); // rtn = FindNeedLeave(agv, "C6");
if (rtn) // if (rtn)
Common.log.Info(agv.Name + " 在C3送完料串,检测到C6出料串任务[A2不可以进料,C7可以进料],开始执行"); // Common.log.Info(agv.Name + " 在C3送完料串,检测到C6出料串任务[A2不可以进料,C7可以进料],开始执行");
} //}
} }
} }
...@@ -1985,7 +2138,7 @@ namespace BLL ...@@ -1985,7 +2138,7 @@ namespace BLL
{ {
rtn = MoveStandby(agv); rtn = MoveStandby(agv);
if (rtn) if (rtn)
Common.log.Info(agv.Name + " 在C3送完料串,C4,C6,A1,D2暂无任务,回待机位"); Common.log.Info(agv.Name + " 在C3送完料串,C4,A1,D2暂无任务,回待机位");
} }
...@@ -2013,16 +2166,16 @@ namespace BLL ...@@ -2013,16 +2166,16 @@ namespace BLL
Common.log.Info(agv.Name + " 在C5送完料串,检测到C6出料串任务[A2可以进料],开始执行"); Common.log.Info(agv.Name + " 在C5送完料串,检测到C6出料串任务[A2可以进料],开始执行");
} }
if (!rtn) //if (!rtn)
{ //{
nodeIdx = Common.nodeInfo.FindIndex(s => s.Name == "C7" && s.Action == ClientAction.NeedEnter && s.AgvName == "" && s.IsUse); // nodeIdx = Common.nodeInfo.FindIndex(s => s.Name == "C7" && s.Action == ClientAction.NeedEnter && s.AgvName == "" && s.IsUse);
if (nodeIdx > -1) // if (nodeIdx > -1)
{ // {
rtn = FindNeedLeave(agv, "C6"); // rtn = FindNeedLeave(agv, "C6");
if (rtn) // if (rtn)
Common.log.Info(agv.Name + " 在C5送完料串,检测到C6出料串任务[A2不可以进料,C7可以进料],开始执行"); // Common.log.Info(agv.Name + " 在C5送完料串,检测到C6出料串任务[A2不可以进料,C7可以进料],开始执行");
} // }
} //}
if (!rtn) if (!rtn)
{ {
...@@ -2040,7 +2193,7 @@ namespace BLL ...@@ -2040,7 +2193,7 @@ namespace BLL
{ {
rtn = MoveStandby(agv); rtn = MoveStandby(agv);
if (rtn) if (rtn)
Common.log.Info(agv.Name + " 在C3送完料串,C6,A1,D2暂无任务,回待机位"); Common.log.Info(agv.Name + " 在C5送完料串,C6,A1,D2暂无任务,回待机位");
} }
//bool rtn = FindNeedLeave(agv, "C6"); //bool rtn = FindNeedLeave(agv, "C6");
...@@ -2084,11 +2237,11 @@ namespace BLL ...@@ -2084,11 +2237,11 @@ namespace BLL
} }
/// <summary> /// <summary>
/// 【满车】料串进入小车,离开C2,4,6 /// 【满车】料串进入小车,离开C2,4
/// </summary> /// </summary>
/// <param name="agv"></param> /// <param name="agv"></param>
/// <returns></returns> /// <returns></returns>
private bool C246Enter(Agv_Info agv) private bool C24Enter(Agv_Info agv)
{ {
string log; string log;
bool rtn; bool rtn;
...@@ -2098,7 +2251,7 @@ namespace BLL ...@@ -2098,7 +2251,7 @@ namespace BLL
if (rtn) if (rtn)
{ {
agv.NextMission = ""; agv.NextMission = "";
Common.log.Info(agv.Name + " 在C2/4/6进入空料串,检测到C7需要料串,开始执行"); Common.log.Info(agv.Name + " 在C2/4进入空料串,检测到C7需要料串,开始执行");
return true; return true;
} }
...@@ -2106,15 +2259,41 @@ namespace BLL ...@@ -2106,15 +2259,41 @@ namespace BLL
if (rtn) if (rtn)
{ {
agv.NextMission = ""; agv.NextMission = "";
Common.log.Info(agv.Name + " 在C2/4/6进入空料串,检测到D1需要料串,开始执行"); Common.log.Info(agv.Name + " 在C2/4进入空料串,检测到D1需要料串,开始执行");
return true;
}
rtn = FindNeedEnter(agv, "A2");
if (rtn)
{
agv.NextMission = "";
Common.log.Info(agv.Name + " 在C2/4进入空料串,检测到A2需要料串,开始执行");
return true; return true;
} }
if (!agv.StandbyTemp)
{
agv.StandbyTemp = true;
agv.NextMission = "A2";
rtn = Common.mir.Add_Mission_Fleet(agv, Common.agvMission["MoveStandbyTemp"]);
if (rtn)
Common.log.Info(agv.Name + " 在C2/4进入空料串,C7,D1,A2不需要料串,回待机位");
return false;
}
return false;
}
private bool C6Enter(Agv_Info agv)
{
string log;
bool rtn;
//C7紧急料优先放架子
rtn = FindNeedEnter(agv, "A2"); rtn = FindNeedEnter(agv, "A2");
if (rtn) if (rtn)
{ {
agv.NextMission = ""; agv.NextMission = "";
Common.log.Info(agv.Name + " 在C2/4/6进入空料串,检测到A2需要料串,开始执行"); Common.log.Info(agv.Name + " 在C6进入空料串,检测到A2需要料串,开始执行");
return true; return true;
} }
...@@ -2124,7 +2303,7 @@ namespace BLL ...@@ -2124,7 +2303,7 @@ namespace BLL
agv.NextMission = "A2"; agv.NextMission = "A2";
rtn = Common.mir.Add_Mission_Fleet(agv, Common.agvMission["MoveStandbyTemp"]); rtn = Common.mir.Add_Mission_Fleet(agv, Common.agvMission["MoveStandbyTemp"]);
if (rtn) if (rtn)
Common.log.Info(agv.Name + " 在C2/4/6进入空料串,C7,D1,A2不需要料串,回待机位"); Common.log.Info(agv.Name + " 在C6进入空料串,A2不需要料串,回待机位");
return false; return false;
} }
return false; return false;
...@@ -2216,6 +2395,23 @@ namespace BLL ...@@ -2216,6 +2395,23 @@ namespace BLL
nodeIdx = FindAreaC(); nodeIdx = FindAreaC();
if (nodeIdx > -1) if (nodeIdx > -1)
{ {
string nodeName = Common.nodeInfo[nodeIdx].Name;
if (nodeName.Equals("C5") && agv.IP.Equals(Common.No1_IP))
{
rtn = MoveNode(agv, nodeIdx);
if (rtn)
{
agv.NextMission = "";
Common.log.Info(agv.Name + " 在D2进入料串,送往C区");
}
else
{
agv.NextMission = "C区";
//Common.mir.Add_Mission_Fleet(agv, "Common.agvMission["MoveStandbyTemp"]");
}
}
else if (!nodeName.Equals("C5") && !agv.IP.Equals(Common.No1_IP))
{
rtn = MoveNode(agv, nodeIdx); rtn = MoveNode(agv, nodeIdx);
if (rtn) if (rtn)
{ {
...@@ -2230,6 +2426,21 @@ namespace BLL ...@@ -2230,6 +2426,21 @@ namespace BLL
} }
else else
{ {
if (!agv.StandbyTemp)
{
agv.StandbyTemp = true;
log = agv.Name + " D2[点料机]出料架 C区暂时没有位置";
agv.NextMission = "C区";
Common.mir.Add_Mission_Fleet(agv, Common.agvMission["MoveStandbyTemp"]);
Common.log.Info(log);
Common.ShowLog(log);
}
}
}
else
{
if (!agv.StandbyTemp) if (!agv.StandbyTemp)
{ {
agv.StandbyTemp = true; agv.StandbyTemp = true;
...@@ -3129,7 +3340,7 @@ namespace BLL ...@@ -3129,7 +3340,7 @@ namespace BLL
agv.CloseDoor = false; agv.CloseDoor = false;
Common.nodeInfo[nodeIdx].AgvName = agv.Name; Common.nodeInfo[nodeIdx].AgvName = agv.Name;
agv.TaskSend = true; agv.TaskSend = true;
log = string.Format("{0} MoveTtoNode {1} {2}", agv.Name, agv.Place, Common.nodeInfo[nodeIdx].Action.ToString()); log = string.Format("{0} MoveToNode {1} {2}", agv.Name, agv.Place, Common.nodeInfo[nodeIdx].Action.ToString());
Common.log.Info(log); Common.log.Info(log);
Common.ShowLog(log); Common.ShowLog(log);
Common.mir.State_Ready(agv); Common.mir.State_Ready(agv);
...@@ -3138,7 +3349,7 @@ namespace BLL ...@@ -3138,7 +3349,7 @@ namespace BLL
else else
{ {
agv.TaskSend = false; agv.TaskSend = false;
log = string.Format("{0} MoveTtoNode {1} 失败", agv.Name, agv.Place); log = string.Format("{0} MoveToNode {1} 失败", agv.Name, agv.Place);
//防止上一个任务已执行但返回失败时,删除任务 //防止上一个任务已执行但返回失败时,删除任务
//Common.mir.Del_Mission(agv); //Common.mir.Del_Mission(agv);
Common.log.Info(log); Common.log.Info(log);
......
...@@ -385,7 +385,7 @@ namespace BLL ...@@ -385,7 +385,7 @@ namespace BLL
string url = "http://" + info.IP + "/api/v2.0.0/status?whitelist=state_id,state_text,battery_percentage,mission_text"; string url = "http://" + info.IP + "/api/v2.0.0/status?whitelist=state_id,state_text,battery_percentage,mission_text";
string json = HttpGet(url, info.IP, info.Authorization); string json = HttpGet(url, info.IP, info.Authorization);
Common.log.Info("URL: " + url+"\n"+"Return: " + json); Common.log.Debug("URL: " + url+"\n"+"Return: " + json);
if (string.IsNullOrWhiteSpace(json)) return false; if (string.IsNullOrWhiteSpace(json)) return false;
JavaScriptSerializer serializer = new JavaScriptSerializer(); JavaScriptSerializer serializer = new JavaScriptSerializer();
......
...@@ -22,6 +22,7 @@ namespace AGVControl ...@@ -22,6 +22,7 @@ namespace AGVControl
public static readonly string LOG_PATH = AppDomain.CurrentDomain.BaseDirectory + "Log"; public static readonly string LOG_PATH = AppDomain.CurrentDomain.BaseDirectory + "Log";
public static readonly string CONFIG_PATH = AppDomain.CurrentDomain.BaseDirectory + "Config\\"; public static readonly string CONFIG_PATH = AppDomain.CurrentDomain.BaseDirectory + "Config\\";
public static string No1_IP = "10.85.199.67";
public static void ShowLog(string s) public static void ShowLog(string s)
{ {
if (txtLog == null) return; if (txtLog == null) return;
......
此文件类型无法预览
6e0a935f2fc071fe41a8b4e4966fbe7ca4dacc89 8da7a79df2cfe73788bf4aeb9a8db9dab2618e7c
...@@ -94,3 +94,20 @@ C:\ZDL\Gitee\AGVControl\AGVControl\obj\Debug\AGVControl.csprojAssemblyReference. ...@@ -94,3 +94,20 @@ C:\ZDL\Gitee\AGVControl\AGVControl\obj\Debug\AGVControl.csprojAssemblyReference.
D:\OneDrive - 上海挚锦科技有限公司\SMD\AGVControl\AGVControl\bin\Debug\Newtonsoft.Json.dll D:\OneDrive - 上海挚锦科技有限公司\SMD\AGVControl\AGVControl\bin\Debug\Newtonsoft.Json.dll
D:\OneDrive - 上海挚锦科技有限公司\SMD\AGVControl\AGVControl\bin\Debug\log4net.dll D:\OneDrive - 上海挚锦科技有限公司\SMD\AGVControl\AGVControl\bin\Debug\log4net.dll
D:\OneDrive - 上海挚锦科技有限公司\SMD\AGVControl\AGVControl\obj\Debug\AGVControl.csprojAssemblyReference.cache D:\OneDrive - 上海挚锦科技有限公司\SMD\AGVControl\AGVControl\obj\Debug\AGVControl.csprojAssemblyReference.cache
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\bin\Debug\AGVControl.exe.config
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\bin\Debug\AGVControl.exe
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\bin\Debug\AGVControl.pdb
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\bin\Debug\log4net.dll
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\bin\Debug\Newtonsoft.Json.dll
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\bin\Debug\RestSharp.dll
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\bin\Debug\RestSharp.xml
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\obj\Debug\Interop.IWshRuntimeLibrary.dll
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\obj\Debug\AGVControl.csproj.ResolveComReference.cache
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\obj\Debug\AGVControl.FrmMain.resources
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\obj\Debug\AGVControl.Properties.Resources.resources
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\obj\Debug\AGVControl.csproj.GenerateResource.cache
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\obj\Debug\AGVControl.csproj.CoreCompileInputs.cache
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\obj\Debug\AGVControl.csproj.CopyComplete
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\obj\Debug\AGVControl.exe
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\obj\Debug\AGVControl.pdb
C:\Users\dolen\Desktop\AGVControl-Temp\AGVControl\obj\Debug\AGVControl.csprojAssemblyReference.cache
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!