Commit 16921313 LN

出入库时需要检测叉子是否有料

1 个父辈 a547da51
...@@ -28,7 +28,7 @@ ...@@ -28,7 +28,7 @@
<add key="CameraName" value="GigE:acA3800-10gc (23124327)#GigE:acA3800-10gc (23172285)" /> <add key="CameraName" value="GigE:acA3800-10gc (23124327)#GigE:acA3800-10gc (23172285)" />
<!--二维码类型列表配置,用#分割--> <!--二维码类型列表配置,用#分割-->
<add key="CodeType" value="QR Code" /> <add key="CodeType" value="QR Code" />
<add key="CodeType" value="Data Matrix ECC 200#QR Code" /> <add key="CodeType" value="Data Matrix ECC 200#QR Code#PDF417" />
<!--二维码参数文件所在路径,文件名与二维码类型名一样--> <!--二维码参数文件所在路径,文件名与二维码类型名一样-->
<add key="CodeParamPath" value="\CodeParam\" /> <add key="CodeParamPath" value="\CodeParam\" />
<add key="InOutDefaultPosition" value="50000000" /> <add key="InOutDefaultPosition" value="50000000" />
......
...@@ -51,7 +51,7 @@ namespace OnlineStore.AutoInOutStore ...@@ -51,7 +51,7 @@ namespace OnlineStore.AutoInOutStore
LogUtil.info("版本号[" + version + "][" + str + "][" + GetCodeNum() + "]"); LogUtil.info("版本号[" + version + "][" + str + "][" + GetCodeNum() + "]");
return str; return str;
} }
internal static string GetCodeNum(string codeName = "RC1252-AutoInOutStore") internal static string GetCodeNum(string codeName = "RC1252-AutoInOutStore-N")
{ {
byte[] byteArray = System.Text.Encoding.ASCII.GetBytes(codeName); byte[] byteArray = System.Text.Encoding.ASCII.GetBytes(codeName);
string result = ""; string result = "";
......
...@@ -16,7 +16,7 @@ namespace OnlineStore.AutoInOutStore ...@@ -16,7 +16,7 @@ namespace OnlineStore.AutoInOutStore
{ {
public class ResourceCulture public class ResourceCulture
{ {
public static bool ShowLog = false ; public static bool ShowLog = false;
public static string China = "zh-CN"; public static string China = "zh-CN";
public static string English = "en-US"; public static string English = "en-US";
public static string German = "ge-DE"; public static string German = "ge-DE";
...@@ -45,8 +45,10 @@ namespace OnlineStore.AutoInOutStore ...@@ -45,8 +45,10 @@ namespace OnlineStore.AutoInOutStore
} }
CurrLanguage = name; CurrLanguage = name;
Thread.CurrentThread.CurrentCulture = new CultureInfo(name); Thread.CurrentThread.CurrentCulture = new CultureInfo(name);
LoadAllRes();
} }
public static void LoaAllRes() public static void LoadAllRes()
{ {
if (rm == null) if (rm == null)
{ {
...@@ -55,8 +57,10 @@ namespace OnlineStore.AutoInOutStore ...@@ -55,8 +57,10 @@ namespace OnlineStore.AutoInOutStore
//CultureInfo ci = Thread.CurrentThread.CurrentCulture; //CultureInfo ci = Thread.CurrentThread.CurrentCulture;
Dictionary<string, string> chinaMap = GetRMap(China); Dictionary<string, string> chinaMap = GetRMap(China);
Dictionary<string, string> englishMap = GetRMap(English); Dictionary<string, string> englishMap = GetRMap(English);
List<string> keyList = new List<string>(chinaMap.Keys);
keyList = (from m in keyList orderby m select m).ToList<string>();
List<string> resulList = new List<string>(); List<string> resulList = new List<string>();
foreach(string key in chinaMap.Keys) foreach (string key in keyList)
{ {
string china = chinaMap[key]; string china = chinaMap[key];
string english = ""; string english = "";
...@@ -70,7 +74,7 @@ namespace OnlineStore.AutoInOutStore ...@@ -70,7 +74,7 @@ namespace OnlineStore.AutoInOutStore
File.WriteAllLines("D:\\storeResource.csv", resulList.ToArray()); File.WriteAllLines("D:\\storeResource.csv", resulList.ToArray());
} }
private static Dictionary<string ,string > GetRMap(string lan) private static Dictionary<string, string> GetRMap(string lan)
{ {
Dictionary<string, string> chinaMap = new Dictionary<string, string>(); Dictionary<string, string> chinaMap = new Dictionary<string, string>();
CultureInfo ci = new CultureInfo(lan); CultureInfo ci = new CultureInfo(lan);
...@@ -208,11 +212,11 @@ namespace OnlineStore.AutoInOutStore ...@@ -208,11 +212,11 @@ namespace OnlineStore.AutoInOutStore
{ {
return className + spiltStr + propertyName; return className + spiltStr + propertyName;
} }
public static string GetTextIdStr(string className, string controlName ) public static string GetTextIdStr(string className, string controlName)
{ {
return className + spiltStr + controlName + spiltStr + Text; return className + spiltStr + controlName + spiltStr + Text;
} }
public static string GetTextIdStr(string className ) public static string GetTextIdStr(string className)
{ {
return className + spiltStr + Text; return className + spiltStr + Text;
} }
......
...@@ -38,7 +38,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -38,7 +38,7 @@ namespace OnlineStore.DeviceLibrary
private int CurrInOutCount = 0; private int CurrInOutCount = 0;
private int CurrInOutACount = 0; private int CurrInOutACount = 0;
private bool LoadParamPosition(InOutStoreParam param ) private bool LoadParamPosition(InOutStoreParam param)
{ {
if (param == null) if (param == null)
{ {
...@@ -273,7 +273,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -273,7 +273,7 @@ namespace OnlineStore.DeviceLibrary
/// <param name="IsBatchWork">是否批量出库</param> /// <param name="IsBatchWork">是否批量出库</param>
/// <param name="isNeedInStore">是否需要入库,不需要入库时直接等待拿走料盘</param> /// <param name="isNeedInStore">是否需要入库,不需要入库时直接等待拿走料盘</param>
/// <returns></returns> /// <returns></returns>
public bool StartInStoreMove(InOutStoreParam param, bool IsBatchWork=true, bool isNeedInStore=true) public bool StartInStoreMove(InOutStoreParam param, bool IsBatchWork = true, bool isNeedInStore = true)
{ {
InOutWatch.Restart(); InOutWatch.Restart();
string posId = param != null ? param.PositionNum : ""; string posId = param != null ? param.PositionNum : "";
...@@ -333,7 +333,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -333,7 +333,7 @@ namespace OnlineStore.DeviceLibrary
if (!ACServerManager.isInPosition(Config.Comp_Axis, moveP.ComPress_P3)) if (!ACServerManager.isInPosition(Config.Comp_Axis, moveP.ComPress_P3))
{ {
needMove = true; needMove = true;
ComMoveToPosition(moveP.ComPress_P3,Config.CompAxis_P3_Speed); ComMoveToPosition(moveP.ComPress_P3, Config.CompAxis_P3_Speed);
} }
if (!ACServerManager.isInPosition(Config.UpDown_Axis, moveP.UpDown_P1)) if (!ACServerManager.isInPosition(Config.UpDown_Axis, moveP.UpDown_P1))
{ {
...@@ -393,10 +393,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -393,10 +393,11 @@ namespace OnlineStore.DeviceLibrary
if (StoreMove.IsBatchInOutStore) if (StoreMove.IsBatchInOutStore)
{ {
SI_03_AxisToP1(moveP); SI_03_AxisToP1(moveP);
}else }
else
{ {
int updownPosition = moveP.UpDown_Door_P7 - Config.UpdownAxis_UpPosition; int updownPosition = moveP.UpDown_Door_P7 - Config.UpdownAxis_UpPosition;
InStoreLog("入库:SIS_31 单盘入库:旋转轴待机点P1,升降轴走到仓门位置P7下方位置 "+ updownPosition); InStoreLog("入库:SIS_31 单盘入库:旋转轴待机点P1,升降轴走到仓门位置P7下方位置 " + updownPosition);
StoreMove.NextMoveStep(StoreMoveStep.SIS_31_ToDoor); StoreMove.NextMoveStep(StoreMoveStep.SIS_31_ToDoor);
ACAxisMove(Config.Middle_Axis, moveP.Middle_P1, Config.MiddleAxis_P1_Speed); ACAxisMove(Config.Middle_Axis, moveP.Middle_P1, Config.MiddleAxis_P1_Speed);
ACAxisMove(Config.UpDown_Axis, updownPosition, Config.UpDownAxis_P7_Speed); ACAxisMove(Config.UpDown_Axis, updownPosition, Config.UpDownAxis_P7_Speed);
...@@ -437,20 +438,44 @@ namespace OnlineStore.DeviceLibrary ...@@ -437,20 +438,44 @@ namespace OnlineStore.DeviceLibrary
else else
{ {
InStoreLog("入库:SI_07 叉子返回,进出轴至P1,检测料仓料盘检测信号 "); InStoreLog("入库:SI_07 叉子返回,进出轴至P1,检测料仓料盘检测信号 ");
StoreMove.NextMoveStep(StoreMoveStep.SI_07_DeviceBackFromDoor); StoreMove.NextMoveStep(StoreMoveStep.SI_07_InoutToP1);
InOutBackToP1(moveP.InOut_P1); InOutBackToP1(moveP.InOut_P1);
StoreMove.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.TrayCheck_Fixture, IO_VALUE.HIGH)); StoreMove.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.TrayCheck_Fixture, IO_VALUE.HIGH));
} }
} }
} }
else if (StoreMove.MoveStep == StoreMoveStep.SI_06_CompressWork) else if (StoreMove.MoveStep == StoreMoveStep.SI_06_CompressWork)
{ {
InStoreLog("入库:SI_07 叉子返回,进出轴至P1 "); InStoreLog("入库:SI_07 叉子返回,进出轴至P1 ");
StoreMove.NextMoveStep(StoreMoveStep.SI_07_DeviceBackFromDoor); StoreMove.NextMoveStep(StoreMoveStep.SI_07_InoutToP1);
InOutBackToP1(moveP.InOut_P1); InOutBackToP1(moveP.InOut_P1);
} }
else if (StoreMove.MoveStep == StoreMoveStep.SI_07_DeviceBackFromDoor) else if (StoreMove.MoveStep == StoreMoveStep.SI_07_InoutToP1)
{
if (Config.IsUse_Tray_Check.Equals(1))
{
StoreMove.NextMoveStep(StoreMoveStep.SI_071_CheckFixture);
InStoreLog("入库:SI_071_CheckFixture 进出轴到P1后,判断是否拿到物料 ");
StoreMove.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.TrayCheck_Fixture, IO_VALUE.HIGH));
}
else
{
if (IsHasCompress_Axis || Config.IsHasLocationCylinder.Equals(0))
{
InStoreLog("入库:SI_09 移动到库位点,旋转轴至P2(库位点),升降轴至P3(库位入库前点) ");
StoreMove.NextMoveStep(StoreMoveStep.SI_09_MoveToBag);
ACAxisMove(Config.Middle_Axis, moveP.Middle_P2, Config.MiddleAxis_P2_Speed);
ACAxisMove(Config.UpDown_Axis, moveP.UpDown_P3, Config.UpDownAxis_P3_Speed);
}
else
{
InStoreLog("入库:SI_08 定位气缸伸出 ");
StoreMove.NextMoveStep(StoreMoveStep.SI_08_LocationCylinder_Up);
LocationUpAndWait();
}
}
}
else if (StoreMove.MoveStep == StoreMoveStep.SI_071_CheckFixture)
{ {
if (IsHasCompress_Axis || Config.IsHasLocationCylinder.Equals(0)) if (IsHasCompress_Axis || Config.IsHasLocationCylinder.Equals(0))
{ {
...@@ -551,7 +576,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -551,7 +576,7 @@ namespace OnlineStore.DeviceLibrary
{ {
InStoreLog("送出料盘:SI_22 ,压紧轴到压紧前点 "); InStoreLog("送出料盘:SI_22 ,压紧轴到压紧前点 ");
StoreMove.NextMoveStep(StoreMoveStep.SI_23_ComToP3); StoreMove.NextMoveStep(StoreMoveStep.SI_23_ComToP3);
ComMoveToPosition(moveP.ComPress_P3,Config.CompAxis_P3_Speed); ComMoveToPosition(moveP.ComPress_P3, Config.CompAxis_P3_Speed);
//if (IOManager.IOValue(IO_Type.SafetyLightCurtains).Equals(IO_VALUE.HIGH)) //if (IOManager.IOValue(IO_Type.SafetyLightCurtains).Equals(IO_VALUE.HIGH))
//{ //{
// InStoreLog("送出料盘:SI_22 ,打开仓门 "); // InStoreLog("送出料盘:SI_22 ,打开仓门 ");
...@@ -641,7 +666,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -641,7 +666,7 @@ namespace OnlineStore.DeviceLibrary
StoreMove.NextMoveStep(StoreMoveStep.SIS_34_GetTray); StoreMove.NextMoveStep(StoreMoveStep.SIS_34_GetTray);
CloseDoorAndWait(); CloseDoorAndWait();
ACAxisMove(Config.UpDown_Axis, Config.UpDownAxis_Door_P7, Config.UpDownAxis_P4_Speed); ACAxisMove(Config.UpDown_Axis, Config.UpDownAxis_Door_P7, Config.UpDownAxis_P4_Speed);
ComMoveToPosition(moveP.ComPress_P2,Config.CompAxis_P2_Speed); ComMoveToPosition(moveP.ComPress_P2, Config.CompAxis_P2_Speed);
} }
} }
else if (StoreMove.MoveStep.Equals(StoreMoveStep.SIS_34_GetTray)) else if (StoreMove.MoveStep.Equals(StoreMoveStep.SIS_34_GetTray))
...@@ -694,7 +719,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -694,7 +719,7 @@ namespace OnlineStore.DeviceLibrary
} }
else else
{ {
LogUtil.info("单盘入库获取库位号成功:"+param.PositionNum+",叉子后退,开始入库"); LogUtil.info("单盘入库获取库位号成功:" + param.PositionNum + ",叉子后退,开始入库");
//更改当前入库参数 //更改当前入库参数
storeRunStatus = StoreRunStatus.Busy; storeRunStatus = StoreRunStatus.Busy;
storeStatus = StoreStatus.InStoreExecute; storeStatus = StoreStatus.InStoreExecute;
...@@ -703,7 +728,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -703,7 +728,7 @@ namespace OnlineStore.DeviceLibrary
StoreMove.IsBatchInOutStore = true; StoreMove.IsBatchInOutStore = true;
StoreMove.IsNeedInStore = true; StoreMove.IsNeedInStore = true;
StoreMove.NextMoveStep(StoreMoveStep.SI_07_DeviceBackFromDoor); StoreMove.NextMoveStep(StoreMoveStep.SI_07_InoutToP1);
ACAxisMove(Config.InOut_Axis, moveP.InOut_P1, Config.InOutAxis_P1_Position); ACAxisMove(Config.InOut_Axis, moveP.InOut_P1, Config.InOutAxis_P1_Position);
} }
} }
...@@ -730,8 +755,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -730,8 +755,8 @@ namespace OnlineStore.DeviceLibrary
private void SingleSendOut(string msg) private void SingleSendOut(string msg)
{ {
StoreMove.IsBatchInOutStore = true; StoreMove.IsBatchInOutStore = true;
StoreMove.IsNeedInStore = false ; StoreMove.IsNeedInStore = false;
InStoreLog( msg+",将料盘送出,叉子后退"); InStoreLog(msg + ",将料盘送出,叉子后退");
StoreMove.NextMoveStep(StoreMoveStep.SIS_41_StartSendTrayOut); StoreMove.NextMoveStep(StoreMoveStep.SIS_41_StartSendTrayOut);
ACAxisMove(Config.InOut_Axis, StoreMove.MoveParam.MoveP.InOut_P1, Config.InOutAxis_P1_Position); ACAxisMove(Config.InOut_Axis, StoreMove.MoveParam.MoveP.InOut_P1, Config.InOutAxis_P1_Position);
} }
...@@ -779,7 +804,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -779,7 +804,7 @@ namespace OnlineStore.DeviceLibrary
return false; return false;
} }
//判断批量上下料机构是否已经满 //判断批量上下料机构是否已经满
if (IOManager.IOValue(IO_Type.TrayCheck_LoadMaterial).Equals(IO_VALUE.HIGH)&& IsBatchWork) if (IOManager.IOValue(IO_Type.TrayCheck_LoadMaterial).Equals(IO_VALUE.HIGH) && IsBatchWork)
{ {
int currBatchValue = ACServerManager.GetActualtPosition(Config.Batch_Axis.DeviceName, Config.Batch_Axis.GetAxisValue()); int currBatchValue = ACServerManager.GetActualtPosition(Config.Batch_Axis.DeviceName, Config.Batch_Axis.GetAxisValue());
if (currBatchValue - param.MoveP.BatchAxis_DownValue < 1000) if (currBatchValue - param.MoveP.BatchAxis_DownValue < 1000)
...@@ -791,7 +816,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -791,7 +816,7 @@ namespace OnlineStore.DeviceLibrary
int height = param.GetPosition().BagHeight; int height = param.GetPosition().BagHeight;
if (AutomaticBaiting.BatchOutStoreHeight >= Config.BatchAxis_MaxHeight) if (AutomaticBaiting.BatchOutStoreHeight >= Config.BatchAxis_MaxHeight)
{ {
LogUtil.error(LOGGER, StoreName + logMsg + " 出错,当前高【"+ AutomaticBaiting.BatchOutStoreHeight + "】出库料盘高【"+ height + "】,最大高【"+ Config.BatchAxis_MaxHeight + "】"); LogUtil.error(LOGGER, StoreName + logMsg + " 出错,当前高【" + AutomaticBaiting.BatchOutStoreHeight + "】出库料盘高【" + height + "】,最大高【" + Config.BatchAxis_MaxHeight + "】");
UpdateInOutMsg(logMsg + "失败,批量上下料机构已满,请先拿出料盘"); UpdateInOutMsg(logMsg + "失败,批量上下料机构已满,请先拿出料盘");
return false; return false;
} }
...@@ -818,7 +843,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -818,7 +843,7 @@ namespace OnlineStore.DeviceLibrary
} }
else else
{ {
UpdateInOutMsg(logMsg + "失败,当前状态:"+storeRunStatus); UpdateInOutMsg(logMsg + "失败,当前状态:" + storeRunStatus);
//LogUtil.error(LOGGER, StoreName + logMsg+ "出错,当前storeStatus=" + storeRunStatus); //LogUtil.error(LOGGER, StoreName + logMsg+ "出错,当前storeStatus=" + storeRunStatus);
return false; return false;
} }
...@@ -946,28 +971,50 @@ namespace OnlineStore.DeviceLibrary ...@@ -946,28 +971,50 @@ namespace OnlineStore.DeviceLibrary
} }
else if (StoreMove.MoveStep == StoreMoveStep.SO_08_ToDoorPosition) else if (StoreMove.MoveStep == StoreMoveStep.SO_08_ToDoorPosition)
{ {
if (Config.IsUse_Tray_Check.Equals(1))
{
StoreMove.NextMoveStep(StoreMoveStep.SO_09_CheckFixture);
OutStoreLog("出库:SO_09_CheckFixture 等待叉子料盘检测信号");
StoreMove.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.TrayCheck_Fixture, IO_VALUE.HIGH));
}
else
{
if (IsHasCompress_Axis || Config.IsHasLocationCylinder.Equals(0)) if (IsHasCompress_Axis || Config.IsHasLocationCylinder.Equals(0))
{ {
SO_10_DeviceToDoorPro(); SO_11_DeviceToDoorPro();
} }
else else
{ {
StoreMove.NextMoveStep(StoreMoveStep.SO_09_LocationCylinder_Down); StoreMove.NextMoveStep(StoreMoveStep.SO_10_LocationCylinder_Down);
OutStoreLog("出库:SO_09 定位气缸退回 "); OutStoreLog("出库:SO_10 定位气缸退回 ");
LocationDownAndWait();
}
}
}
else if (StoreMove.MoveStep == StoreMoveStep.SO_09_CheckFixture)
{
if (IsHasCompress_Axis || Config.IsHasLocationCylinder.Equals(0))
{
SO_11_DeviceToDoorPro();
}
else
{
StoreMove.NextMoveStep(StoreMoveStep.SO_10_LocationCylinder_Down);
OutStoreLog("出库:SO_10 定位气缸退回 ");
LocationDownAndWait(); LocationDownAndWait();
} }
} }
//此处需要等待移栽没有工作,才能把盘放入出料口 //此处需要等待移栽没有工作,才能把盘放入出料口
else if (StoreMove.MoveStep == StoreMoveStep.SO_09_LocationCylinder_Down) else if (StoreMove.MoveStep == StoreMoveStep.SO_10_LocationCylinder_Down)
{ {
SO_10_DeviceToDoorPro(); SO_11_DeviceToDoorPro();
} }
else if (StoreMove.MoveStep == StoreMoveStep.SO_10_DeviceToDoor) else if (StoreMove.MoveStep == StoreMoveStep.SO_11_DeviceToDoor)
{ {
if (StoreMove.IsBatchInOutStore) if (StoreMove.IsBatchInOutStore)
{ {
StoreMove.NextMoveStep(StoreMoveStep.SO_11_PutTray); StoreMove.NextMoveStep(StoreMoveStep.SO_12_PutTray);
OutStoreLog("出库:SO_11_PutTray 放下料盘,升降轴到P8(出库低点),压紧轴至P3(压紧前点)"); OutStoreLog("出库:SO_12_PutTray 放下料盘,升降轴到P8(出库低点),压紧轴至P3(压紧前点)");
ComMoveToPosition(StoreMove.MoveParam.MoveP.ComPress_P3, Config.CompAxis_P3_Speed); ComMoveToPosition(StoreMove.MoveParam.MoveP.ComPress_P3, Config.CompAxis_P3_Speed);
ACAxisMove(Config.UpDown_Axis, StoreMove.MoveParam.MoveP.UpDown_OutLow_P8, Config.UpDownAxis_P8_Speed); ACAxisMove(Config.UpDown_Axis, StoreMove.MoveParam.MoveP.UpDown_OutLow_P8, Config.UpDownAxis_P8_Speed);
AutomaticBaiting.BatchOutStoreHeight += StoreMove.MoveParam.PlateH; AutomaticBaiting.BatchOutStoreHeight += StoreMove.MoveParam.PlateH;
...@@ -1003,7 +1050,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -1003,7 +1050,7 @@ namespace OnlineStore.DeviceLibrary
CloseDoorAndWait(); CloseDoorAndWait();
} }
} }
else if (StoreMove.MoveStep == StoreMoveStep.SO_11_PutTray) else if (StoreMove.MoveStep == StoreMoveStep.SO_12_PutTray)
{ {
SO_13_InoutBack(); SO_13_InoutBack();
} }
...@@ -1126,18 +1173,18 @@ namespace OnlineStore.DeviceLibrary ...@@ -1126,18 +1173,18 @@ namespace OnlineStore.DeviceLibrary
StoreMove.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.ClampingDisc_Up, IO_VALUE.HIGH)); StoreMove.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.ClampingDisc_Up, IO_VALUE.HIGH));
StoreMove.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.ClampingDisc_Down, IO_VALUE.LOW)); StoreMove.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.ClampingDisc_Down, IO_VALUE.LOW));
} }
private void SO_10_DeviceToDoorPro() private void SO_11_DeviceToDoorPro()
{ {
LineMoveP moveP = StoreMove.MoveParam.MoveP; LineMoveP moveP = StoreMove.MoveParam.MoveP;
StoreMove.NextMoveStep(StoreMoveStep.SO_10_DeviceToDoor); StoreMove.NextMoveStep(StoreMoveStep.SO_11_DeviceToDoor);
if (StoreMove.IsBatchInOutStore) if (StoreMove.IsBatchInOutStore)
{ {
OutStoreLog("出库:SO_10 叉子进出料口,进出轴至P2(进料口吸盘取料点) "); OutStoreLog("出库:SO_11 叉子进出料口,进出轴至P2(进料口吸盘取料点) ");
ACAxisMove(Config.InOut_Axis, moveP.InOut_P2, Config.InOutAxis_P2_Speed); ACAxisMove(Config.InOut_Axis, moveP.InOut_P2, Config.InOutAxis_P2_Speed);
} }
else else
{ {
OutStoreLog("出库:SO_10 叉子进出料口,进出轴至P4(仓门出料点) "); OutStoreLog("出库:SO_11 叉子进出料口,进出轴至P4(仓门出料点) ");
ACAxisMove(Config.InOut_Axis, moveP.InOut_P4, Config.InOutAxis_P2_Speed); ACAxisMove(Config.InOut_Axis, moveP.InOut_P4, Config.InOutAxis_P2_Speed);
} }
} }
...@@ -1145,11 +1192,12 @@ namespace OnlineStore.DeviceLibrary ...@@ -1145,11 +1192,12 @@ namespace OnlineStore.DeviceLibrary
public bool SupportBatch(string posId) public bool SupportBatch(string posId)
{ {
AutoStorePosition position= CSVPositionReader<AutoStorePosition>.GetPositon(posId); AutoStorePosition position = CSVPositionReader<AutoStorePosition>.GetPositon(posId);
if (position != null && position.SupportBatch.Equals(1)) if (position != null && position.SupportBatch.Equals(1))
{ {
return true; return true;
}else }
else
{ {
return false; return false;
} }
...@@ -1228,7 +1276,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -1228,7 +1276,7 @@ namespace OnlineStore.DeviceLibrary
if (PositionNumList.Count > autoPositionIndex) if (PositionNumList.Count > autoPositionIndex)
{ {
posid = PositionNumList[autoPositionIndex]; posid = PositionNumList[autoPositionIndex];
autoMsg = ResourceControl.GetString("自动入库", "自动入库") + ":" +posid; autoMsg = ResourceControl.GetString("自动入库", "自动入库") + ":" + posid;
//到下一个库位 //到下一个库位
if (isNext) if (isNext)
{ {
...@@ -1250,7 +1298,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -1250,7 +1298,7 @@ namespace OnlineStore.DeviceLibrary
CurrInOutCount++; CurrInOutCount++;
CurrInOutACount++; CurrInOutACount++;
if (CycleOut&& storeMoveType.Equals(StoreMoveType.OutStore)) if (CycleOut && storeMoveType.Equals(StoreMoveType.OutStore))
{ {
AutomaticBaiting.ClearOutStoreInfo(); AutomaticBaiting.ClearOutStoreInfo();
FixtureCodeInfo currInOutFixture = new FixtureCodeInfo(0, "", CyclePosId); FixtureCodeInfo currInOutFixture = new FixtureCodeInfo(0, "", CyclePosId);
......
...@@ -105,20 +105,20 @@ namespace OnlineStore.DeviceLibrary ...@@ -105,20 +105,20 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 13=重置中(原点返回和重置都发此状态) /// 13=重置中(原点返回和重置都发此状态)
/// </summary> /// </summary>
ResetMove=13, ResetMove = 13,
/// <summary> /// <summary>
/// 14=批量上料中 /// 14=批量上料中
/// </summary> /// </summary>
BatchInStore=14, BatchInStore = 14,
/// <summary> /// <summary>
///15= 扫码失败或无库位料盘送出 ///15= 扫码失败或无库位料盘送出
/// </summary> /// </summary>
SendTrayOut=15, SendTrayOut = 15,
/// <summary> /// <summary>
/// 16=批量上料模块复位中 /// 16=批量上料模块复位中
/// </summary> /// </summary>
BatchReset=16, BatchReset = 16,
} }
/// <summary> /// <summary>
...@@ -134,12 +134,12 @@ namespace OnlineStore.DeviceLibrary ...@@ -134,12 +134,12 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 料仓原点返回和重置步骤,,定位气缸下降 /// 料仓原点返回和重置步骤,,定位气缸下降
/// </summary> /// </summary>
BOX_H_LocationCylinderBack=010, BOX_H_LocationCylinderBack = 010,
/// <summary> /// <summary>
/// 料仓原点返回和重置步骤,轴三先相对走3000 /// 料仓原点返回和重置步骤,轴三先相对走3000
/// </summary> /// </summary>
BOX_H_InOutMove=011, BOX_H_InOutMove = 011,
/// <summary> /// <summary>
/// 料仓原点返回和重置步骤,,轴三进出轴先返回原点 /// 料仓原点返回和重置步骤,,轴三进出轴先返回原点
/// </summary> /// </summary>
...@@ -160,12 +160,12 @@ namespace OnlineStore.DeviceLibrary ...@@ -160,12 +160,12 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 旋转轴返回P1 /// 旋转轴返回P1
/// </summary> /// </summary>
BOX_H_MiddleAxisToP1=016, BOX_H_MiddleAxisToP1 = 016,
/// <summary> /// <summary>
/// 叉子先退回P1 /// 叉子先退回P1
/// </summary> /// </summary>
BOX_M_H_InOutToP1=018, BOX_M_H_InOutToP1 = 018,
/// <summary> /// <summary>
/// 旋转轴回原点 /// 旋转轴回原点
/// </summary> /// </summary>
...@@ -213,7 +213,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -213,7 +213,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
///料仓出库,,定位气缸下降 ///料仓出库,,定位气缸下降
/// </summary> /// </summary>
SO_01_LocationCylinderDown =101, SO_01_LocationCylinderDown = 101,
/// <summary> /// <summary>
///料仓出库:叉子先运动到P1 ///料仓出库:叉子先运动到P1
/// </summary> /// </summary>
...@@ -249,14 +249,19 @@ namespace OnlineStore.DeviceLibrary ...@@ -249,14 +249,19 @@ namespace OnlineStore.DeviceLibrary
SO_08_ToDoorPosition = 108, SO_08_ToDoorPosition = 108,
/// <summary> /// <summary>
/// 到达门口后,判断叉子料盘检测信号
/// </summary>
SO_09_CheckFixture,
/// <summary>
/// 料仓出库,定位气缸退回(有压紧轴的不需要此步骤),,定位气缸退回(Y104-1/PCI5O1-84) (Y104-2/PCI5O1-91) (Y104-2/PCI5O1-96) 退回到位 /// 料仓出库,定位气缸退回(有压紧轴的不需要此步骤),,定位气缸退回(Y104-1/PCI5O1-84) (Y104-2/PCI5O1-91) (Y104-2/PCI5O1-96) 退回到位
/// </summary> /// </summary>
SO_09_LocationCylinder_Down = 109, SO_10_LocationCylinder_Down,
/// <summary> /// <summary>
/// 料仓出库,,叉子进出料口,,轴3( 叉子) 至P2( 进料口取料点) /// 料仓出库,,叉子进出料口,,轴3( 叉子) 至P2( 进料口取料点)
/// /// </summary> /// /// </summary>
SO_10_DeviceToDoor = 110, SO_11_DeviceToDoor,
///// <summary> ///// <summary>
///// 料仓出库,,把物品放下,,轴2( 上下) 至P8( 进料口出料缓冲点)轴4( 压紧) 至P1( 待机点) ///// 料仓出库,,把物品放下,,轴2( 上下) 至P8( 进料口出料缓冲点)轴4( 压紧) 至P1( 待机点)
///// </summary> ///// </summary>
...@@ -269,23 +274,23 @@ namespace OnlineStore.DeviceLibrary ...@@ -269,23 +274,23 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 料仓出库,升降轴下降,压紧轴放松 /// 料仓出库,升降轴下降,压紧轴放松
/// </summary> /// </summary>
SO_11_PutTray = 111, SO_12_PutTray,
/// <summary> /// <summary>
/// 叉子返回待机位 /// 叉子返回待机位
/// </summary> /// </summary>
SO_13_InoutBack=112, SO_13_InoutBack,
/// <summary> /// <summary>
/// 等待拿走物品 /// 等待拿走物品
/// </summary> /// </summary>
SO_14_WaitTake=114, SO_14_WaitTake,
/// <summary> /// <summary>
/// 升降轴走到门口位置 /// 升降轴走到门口位置
/// </summary> /// </summary>
SO_21_OpenDoor=121, SO_21_OpenDoor = 121,
/// <summary> /// <summary>
/// 等待操作人员拿走料盘 /// 等待操作人员拿走料盘
/// </summary> /// </summary>
SO_22_WaitTrayGo=122, SO_22_WaitTrayGo = 122,
///// <summary> ///// <summary>
...@@ -321,11 +326,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -321,11 +326,11 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 入库检测 /// 入库检测
/// </summary> /// </summary>
SI_00_TrayCheck =200, SI_00_TrayCheck = 200,
/// <summary> /// <summary>
/// 入库,。定位气缸下降 /// 入库,。定位气缸下降
/// </summary> /// </summary>
SI_01_LocationCylinderDown=201, SI_01_LocationCylinderDown = 201,
/// <summary> /// <summary>
/// 入库。。进出轴(叉子)先返回P1 /// 入库。。进出轴(叉子)先返回P1
/// </summary> /// </summary>
...@@ -351,12 +356,16 @@ namespace OnlineStore.DeviceLibrary ...@@ -351,12 +356,16 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 压紧轴压紧后,升降轴稍微下降之后叉子再后退 /// 压紧轴压紧后,升降轴稍微下降之后叉子再后退
/// </summary> /// </summary>
SI_061_UpdownAxisDown=215, SI_061_UpdownAxisDown = 215,
/// <summary> /// <summary>
/// 入库。。叉子 从入料口抽出,轴3( 叉子) 至P1( 待机点) /// 入库。。叉子 从入料口抽出,轴3( 叉子) 至P1( 待机点)
/// </summary> /// </summary>
SI_07_DeviceBackFromDoor = 207, SI_07_InoutToP1 = 207,
/// <summary>
/// 拿到料盘后判断叉子料盘检测信号
/// </summary>
SI_071_CheckFixture = 216,
/// <summary> /// <summary>
/// 入库。。,定位气缸伸出 (有压紧轴的不需要此步骤) /// 入库。。,定位气缸伸出 (有压紧轴的不需要此步骤)
/// </summary> /// </summary>
...@@ -391,7 +400,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -391,7 +400,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 入库未取到PosID,,升降轴到门口, 打开仓门 /// 入库未取到PosID,,升降轴到门口, 打开仓门
/// </summary> /// </summary>
SI_21_DeviceToDoor= 221, SI_21_DeviceToDoor = 221,
/// <summary> /// <summary>
/// 入库未取到PosID,叉子走到门口位置, 打开仓门 /// 入库未取到PosID,叉子走到门口位置, 打开仓门
/// </summary> /// </summary>
...@@ -400,7 +409,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -400,7 +409,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 压紧轴走到压紧前点 /// 压紧轴走到压紧前点
/// </summary> /// </summary>
SI_23_ComToP3=223, SI_23_ComToP3 = 223,
/// <summary> /// <summary>
///入库未取到PosID,, 打开仓门 ///入库未取到PosID,, 打开仓门
/// </summary> /// </summary>
...@@ -423,11 +432,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -423,11 +432,11 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 单盘入库:等待操作人员放入料盘 /// 单盘入库:等待操作人员放入料盘
/// </summary> /// </summary>
SIS_33_WaitTray= 303, SIS_33_WaitTray = 303,
/// <summary> /// <summary>
/// 单盘入库:确认放入料盘,关闭仓门,升降轴走 到P7,压紧轴压紧 /// 单盘入库:确认放入料盘,关闭仓门,升降轴走 到P7,压紧轴压紧
/// </summary> /// </summary>
SIS_34_GetTray= 304, SIS_34_GetTray = 304,
/// <summary> /// <summary>
/// 单盘入库:确认放入料盘,关闭仓门,进出轴后退到P1 /// 单盘入库:确认放入料盘,关闭仓门,进出轴后退到P1
/// </summary> /// </summary>
...@@ -446,7 +455,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -446,7 +455,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 单盘入库:扫码 /// 单盘入库:扫码
/// </summary> /// </summary>
SIS_38_ScanCode =308, SIS_38_ScanCode = 308,
/// <summary> /// <summary>
/// 单盘入库:获取入库库位号 /// 单盘入库:获取入库库位号
...@@ -456,12 +465,12 @@ namespace OnlineStore.DeviceLibrary ...@@ -456,12 +465,12 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 单盘入库:启动新的入库 /// 单盘入库:启动新的入库
/// </summary> /// </summary>
SIS_40_StartInStore= 340, SIS_40_StartInStore = 340,
/// <summary> /// <summary>
/// 单盘入库:开始送出料盘 /// 单盘入库:开始送出料盘
/// </summary> /// </summary>
SIS_41_StartSendTrayOut= 341, SIS_41_StartSendTrayOut = 341,
#endregion #endregion
...@@ -470,7 +479,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -470,7 +479,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 开始复位 /// 开始复位
/// </summary> /// </summary>
AUTO_R00_Start =1100, AUTO_R00_Start = 1100,
/// <summary> /// <summary>
/// 关闭门锁 /// 关闭门锁
/// </summary> /// </summary>
...@@ -487,11 +496,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -487,11 +496,11 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 上料轴返回0点 /// 上料轴返回0点
/// </summary> /// </summary>
AUTO_R04_AutoBack=1104, AUTO_R04_AutoBack = 1104,
/// <summary> /// <summary>
/// 上料轴移动到待机点 /// 上料轴移动到待机点
/// </summary> /// </summary>
AUTO_R05_ToP2=1105, AUTO_R05_ToP2 = 1105,
#endregion #endregion
...@@ -500,52 +509,52 @@ namespace OnlineStore.DeviceLibrary ...@@ -500,52 +509,52 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 开始自动上料 /// 开始自动上料
/// </summary> /// </summary>
AUTO_I01_Wait=1201, AUTO_I01_Wait = 1201,
/// <summary> /// <summary>
/// 先上升到料盘检测1(上料机构)信号亮 /// 先上升到料盘检测1(上料机构)信号亮
/// </summary> /// </summary>
AUTO_I02_MoveToUp=1202, AUTO_I02_MoveToUp = 1202,
/// <summary> /// <summary>
/// 扫码 /// 扫码
/// </summary> /// </summary>
AUTO_I03_ScanCode=1203, AUTO_I03_ScanCode = 1203,
/// <summary> /// <summary>
/// 吸盘下降 /// 吸盘下降
/// </summary> /// </summary>
AUTO_I04_SuckingDisc_Down=1204, AUTO_I04_SuckingDisc_Down = 1204,
/// <summary> /// <summary>
/// 吸盘吸料盘 /// 吸盘吸料盘
/// </summary> /// </summary>
AUTO_I05_SuckingDisc_Work=1205, AUTO_I05_SuckingDisc_Work = 1205,
/// <summary> /// <summary>
/// 吸盘上升 , /// 吸盘上升 ,
/// </summary> /// </summary>
AUTO_I06_SuckingDisc_Up=1206, AUTO_I06_SuckingDisc_Up = 1206,
/// <summary> /// <summary>
/// 批量上下料料轴上升 /// 批量上下料料轴上升
/// </summary> /// </summary>
AUTO_I07_BatchAxisUp=1207, AUTO_I07_BatchAxisUp = 1207,
/// <summary> /// <summary>
/// 从服务器获取PosID /// 从服务器获取PosID
/// </summary> /// </summary>
AUTO_I08_GetPosId=1208, AUTO_I08_GetPosId = 1208,
/// <summary> /// <summary>
/// 等待料盘被叉子拿走 /// 等待料盘被叉子拿走
/// </summary> /// </summary>
AUTO_I09_WaitTrayLeave=1209, AUTO_I09_WaitTrayLeave = 1209,
/// <summary> /// <summary>
/// 未扫到码:等待操作人员拿走料盘 /// 未扫到码:等待操作人员拿走料盘
/// </summary> /// </summary>
AUTO_I10_WaitTrayGo=1210, AUTO_I10_WaitTrayGo = 1210,
/// <summary> /// <summary>
/// 批量上下轴开始回原点 /// 批量上下轴开始回原点
/// </summary> /// </summary>
AUTO_I11_BatchAxisHome=1211, AUTO_I11_BatchAxisHome = 1211,
...@@ -554,37 +563,37 @@ namespace OnlineStore.DeviceLibrary ...@@ -554,37 +563,37 @@ namespace OnlineStore.DeviceLibrary
#region 自动上下料出料功能 #region 自动上下料出料功能
AUTO_O00_Wait=1300, AUTO_O00_Wait = 1300,
/// <summary> /// <summary>
/// 批量轴先匀速下降到X12不亮 /// 批量轴先匀速下降到X12不亮
/// </summary> /// </summary>
AUTO_O01_BatchAxisDown=1301, AUTO_O01_BatchAxisDown = 1301,
/// <summary> /// <summary>
/// 打开门锁 /// 打开门锁
/// </summary> /// </summary>
AUTO_O02_WaitDoorOpen =1302, AUTO_O02_WaitDoorOpen = 1302,
/// <summary> /// <summary>
/// 等待出料检测信号关闭 /// 等待出料检测信号关闭
/// </summary> /// </summary>
AUTO_O03_WaitOutSingleLow=1303, AUTO_O03_WaitOutSingleLow = 1303,
/// <summary> /// <summary>
/// 向上运动,等待DI12亮或者极限亮停止 /// 向上运动,等待DI12亮或者极限亮停止
/// </summary> /// </summary>
AUTO_O04_SpeedMove=1304, AUTO_O04_SpeedMove = 1304,
/// <summary> /// <summary>
/// 极限亮,返回P2点 /// 极限亮,返回P2点
/// </summary> /// </summary>
AUTO_O08_BackToP2=1308, AUTO_O08_BackToP2 = 1308,
/// <summary> /// <summary>
/// 等待X12灭 /// 等待X12灭
/// </summary> /// </summary>
AUTO_O06_WaitDI12Low=1306, AUTO_O06_WaitDI12Low = 1306,
/// <summary> /// <summary>
/// 等待1秒钟后在下降 /// 等待1秒钟后在下降
/// </summary> /// </summary>
AUTO_O07_WaitDown=1307, AUTO_O07_WaitDown = 1307,
#endregion #endregion
...@@ -624,11 +633,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -624,11 +633,11 @@ namespace OnlineStore.DeviceLibrary
/// <summary> /// <summary>
/// 批量上下料模块报警 /// 批量上下料模块报警
/// </summary> /// </summary>
BatchAlarm =110, BatchAlarm = 110,
/// <summary> /// <summary>
/// 批量上下轴报警 /// 批量上下轴报警
/// </summary> /// </summary>
BatchAxisAlarm=120, BatchAxisAlarm = 120,
} }
} }
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!