Commit a04c6c6c 张东亮

上料工位要料架,循环检测左右两边

1 个父辈 8c7dab8e
......@@ -38,7 +38,7 @@ namespace OnlineStore.Common
public static string ABBServerPort = "ABBServerPort";
public static string BenQ_AGV = "BenQ_AGV";
public static string Line_AGV = "Line_AGV";
public static string DefaultSpeed = "DefaultSpeed";
}
......
......@@ -12,7 +12,7 @@ namespace OnlineStore.DeviceLibrary
{
public class AgvClient_Dbline
{
private static string ServerIp = ConfigAppSettings.GetValue(Setting_Init.BenQ_AGV);
private static string ServerIp = ConfigAppSettings.GetValue(Setting_Init.Line_AGV);
public AsaPL.AgvClient agvClient;
private static bool isInit = false;
public static Dictionary<string, AsaPL.ClientAction> actionMap = new Dictionary<string, AsaPL.ClientAction>();
......
......@@ -70,9 +70,9 @@ namespace OnlineStore.DeviceLibrary
WarnMsg = "";
if (IOValue(IO_Type.SuddenStop_BTN).Equals(IO_VALUE.HIGH))
{
S1_RightShelfId = "";
S1_CurrShelfId = "";
S1_LeftShelfId = "";
//S1_RightShelfId = "";
//S1_CurrShelfId = "";
//S1_LeftShelfId = "";
RealRfidMap = new Dictionary<string, string>();
mainTimer.Enabled = false;
// AgvClient.SetCancelState(false);
......@@ -349,6 +349,7 @@ namespace OnlineStore.DeviceLibrary
}
private bool InProcess = false;
static object s1ShelfLock = new object();
private Stopwatch stopwatch = new Stopwatch();
public bool MoveStop = false;
protected void timersTimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
......@@ -406,7 +407,22 @@ namespace OnlineStore.DeviceLibrary
if (SOneMoveInfo.MoveType.Equals(LineMoveType.None))
{
S1_ShelfCheck();
if (Monitor.TryEnter(s1ShelfLock))
{
try
{
S1_ShelfProcess();
}
catch (Exception ex)
{
LogUtil.error(Name + " S1_ShelfProcess出错", ex);
}
finally
{
Monitor.Exit(s1ShelfLock);
}
}
if (S1_RightShelfId != "")
{
S2CanGetShelf = false;
......
......@@ -233,6 +233,11 @@ namespace OnlineStore.DeviceLibrary
{
if (needNewShelf.EndsWith(Static_String.BigShelf_RFID_Prefix) || needNewShelf.StartsWith(Static_String.BigShelf_RFID_Prefix))
{
if(IOManager.IOValue(IO_Type.LLow_StopCheck2).Equals(IO_VALUE.LOW))
{
SOneMoveInfo.NextMoveStep(MoveStep.S1_NewShelf);
return;
}
LogUtil.info("双层线_S1" + AllTaskInfo.ToStr() + "S1需要新料架【" + needNewShelf + "】,等待 LLow_StopCheck3");
//放一个C料架
SOneMoveInfo.NewMove(LineMoveType.S1Shelf, MoveStep.S1_C01_GetC);
......@@ -242,7 +247,12 @@ namespace OnlineStore.DeviceLibrary
}
else if (needNewShelf.EndsWith(Static_String.SmallShelf_RFID_Prefix) || needNewShelf.StartsWith(Static_String.SmallShelf_RFID_Prefix))
{
LogUtil.info("双层线_S1" + AllTaskInfo.ToStr() + "S1需要新料架【" + needNewShelf + "】,等待 LHigh_StopCheck3");
if (IOManager.IOValue(IO_Type.LHigh_StopCheck2).Equals(IO_VALUE.LOW))
{
SOneMoveInfo.NextMoveStep(MoveStep.S1_NewShelf);
return;
}
LogUtil.info("双层线_S1" + AllTaskInfo.ToStr() + "S1需要新料架【" + needNewShelf + "】,等待 LHigh_StopCheck2");
//放一个D料架
SOneMoveInfo.NewMove(LineMoveType.S1Shelf, MoveStep.S1_D10_GetD);
SOneMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.LHigh_StopCheck2, IO_VALUE.HIGH));
......
......@@ -73,7 +73,7 @@ namespace OnlineStore.DeviceLibrary
//右侧上层需要放个料架
Task.Factory.StartNew(delegate
{
LHighProcess = true;
RHighProcess = true;
LogUtil.info("右侧双层线_" + "右上层放料架到阻挡2");
IOMove(IO_Type.RHigh_LineRun, IO_VALUE.HIGH, 30000);
IOMove(IO_Type.RHigh_StopCylinder1, IO_VALUE.HIGH, 3000);
......
......@@ -63,8 +63,8 @@ namespace OnlineStore.DeviceLibrary
}
else
{
s1RLeaveStep.Msg = "工位1放行料架完成,停止工位1线体";
CheckAndMove(IO_Type.S1_LineRun, IO_VALUE.LOW);
s1RLeaveStep.Msg = "工位1放行料架完成";
//CheckAndMove(IO_Type.S1_LineRun, IO_VALUE.LOW);
s1RLeaveStep.ToNextStep(S1_R_LEAVE_SHELF_STEP.NONE);
//右侧下方线体是否停止,要根据情况来
outShelfStep.ToNextStep(SHELF_TO_LEAVE_STATION.SHELF_OUT_S2);
......
......@@ -8,7 +8,7 @@
<add key="App_AutoRun" value="1" />
<add key="App_Title" value="双层料架流水线" />
<!--Server address-->
<add key="httpAddr" value="http://10.85.160.25/myproject/rest/api/qisda/device/"/>
<add key="httpAddr" value="http://10.85.162.124/myproject/rest/api/qisda/device/"/>
<!--start one store config-->
<add key="Line_Config" value="\LineConfig\DoubleLineConfig.csv" />
......@@ -17,15 +17,15 @@
<add key="UseAIOBOX" value="1" />
<add key="DIMS" value="150" />
<add key="DOMS" value="300" />
<!--AGV调度服务器地址-->
<!--AGV料仓调度服务器地址-->
<add key="AgvServerIp" value="127.0.0.1" />
<!--AGV产线调度服务器地址-->
<add key="Line_AGV" value="10.85.197.3" />
<!--是否调试状态-->
<add key="IsInDebug" value="1" />
<add key ="Agv_Log_Open" value ="1"/>
<!--ABB机器人服务器-->
<add key ="ABBServerPort" value ="10021"/>
<!--明基agv地址-->
<add key="BenQ_AGV" value="10.85.161.122"/>
<add key ="DefaultSpeed" value ="1000"/>
</appSettings>
<log4net>
......@@ -57,7 +57,7 @@
<appender-ref ref="RollingLogFileAppender" />
</logger>
<logger name="TheRFID">
<level value="Info" />
<level value="Error" />
<appender-ref ref="TheRFID" />
</logger>
<!--<root>
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!