Commit f6098eca 刘韬

修正自动双盘出库问题

1 个父辈 478d0803
...@@ -50,8 +50,17 @@ namespace OnlineStore.ACSingleStore ...@@ -50,8 +50,17 @@ namespace OnlineStore.ACSingleStore
this.tableLayoutPanel1.RowCount = boxBean.Config.StoreDIList.Count; this.tableLayoutPanel1.RowCount = boxBean.Config.StoreDIList.Count;
DIControlList.Clear(); DIControlList.Clear();
DOControlList.Clear(); DOControlList.Clear();
HashSet<string> dilist = new HashSet<string>();
foreach (ConfigIO ioValue in boxBean.Config.StoreDIList.Values) foreach (ConfigIO ioValue in boxBean.Config.StoreDIList.Values)
{ {
if (ioValue.Describe == "hide")
continue;
if (dilist.Contains(ioValue.ElectricalDefinition))
continue;
dilist.Add(ioValue.ElectricalDefinition);
this.tableLayoutPanel1.RowStyles.Add(new RowStyle(SizeType.Absolute, 28)); this.tableLayoutPanel1.RowStyles.Add(new RowStyle(SizeType.Absolute, 28));
IOTextControl control = new IOTextControl(ioValue.DisplayName, ioValue.ProName); IOTextControl control = new IOTextControl(ioValue.DisplayName, ioValue.ProName);
control.Click += Control_Click; control.Click += Control_Click;
...@@ -65,6 +74,8 @@ namespace OnlineStore.ACSingleStore ...@@ -65,6 +74,8 @@ namespace OnlineStore.ACSingleStore
roleindex = 0; roleindex = 0;
foreach (ConfigIO ioValue in boxBean.Config.StoreDOList.Values) foreach (ConfigIO ioValue in boxBean.Config.StoreDOList.Values)
{ {
if (ioValue.Describe == "hide")
continue;
this.tableLayoutPanel2.RowStyles.Add(new RowStyle(SizeType.Absolute, 28)); this.tableLayoutPanel2.RowStyles.Add(new RowStyle(SizeType.Absolute, 28));
IOTextControl control = new IOTextControl(ioValue.DisplayName, ioValue.ProName); IOTextControl control = new IOTextControl(ioValue.DisplayName, ioValue.ProName);
control.Click += Control_Click; control.Click += Control_Click;
...@@ -74,7 +85,7 @@ namespace OnlineStore.ACSingleStore ...@@ -74,7 +85,7 @@ namespace OnlineStore.ACSingleStore
} }
this.SuspendLayout(); //此处为不闪屏,一定要有的! this.SuspendLayout(); //此处为不闪屏,一定要有的!
cmbWriteIO.DataSource = new List<ConfigIO>(boxBean.Config.StoreDOList.Values); cmbWriteIO.DataSource = new List<ConfigIO>(boxBean.Config.StoreDOList.Values.Where(so=> so.Describe!="hide").ToList());
cmbWriteIO.ValueMember = "ProName"; cmbWriteIO.ValueMember = "ProName";
cmbWriteIO.DisplayMember = "DisplayStr"; cmbWriteIO.DisplayMember = "DisplayStr";
this.Refresh(); this.Refresh();
......
...@@ -9,7 +9,7 @@ using System.Runtime.InteropServices; ...@@ -9,7 +9,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyDescription("")] [assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")] [assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")] [assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("SO951-HC-ACSingleStore 80340cc5c64647256d580f0ea4aa132b7bb874e0")] [assembly: AssemblyProduct("SO951-HC-ACSingleStore 478d0803e8601b903834b5718f1ac5d657635495")]
[assembly: AssemblyCopyright("Copyright ? 2017")] [assembly: AssemblyCopyright("Copyright ? 2017")]
[assembly: AssemblyTrademark("")] [assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")] [assembly: AssemblyCulture("")]
......
...@@ -55,7 +55,7 @@ namespace OnlineStore ...@@ -55,7 +55,7 @@ namespace OnlineStore
LoadData(true); LoadData(true);
Task.Run(() => { Task.Run(() => {
//return; return;
try try
{ {
Task.Delay(10 * 1000).Wait(); Task.Delay(10 * 1000).Wait();
......
...@@ -126,6 +126,9 @@ ...@@ -126,6 +126,9 @@
<None Include="StoreConfig\AC\linePositions.csv"> <None Include="StoreConfig\AC\linePositions.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
<None Include="StoreConfig\AC\StoreConfig - 复制.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="StoreConfig\AC\StoreConfig.csv"> <None Include="StoreConfig\AC\StoreConfig.csv">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None> </None>
......
类型,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义,SlaveID
AXIS,(轴一)旋转轴,Middle_Axis,0,HC,0,,,,
AXIS,(轴二)升降轴,UpDown_Axis,1,HC,0,,,,
AXIS,(轴三)进出轴,InOut_Axis,2,HC,0,,,,
AXIS,(轴四)压紧轴,Comp_Axis,3,HC,0,,,,
AXIS,(轴五)出料门,Door_Axis,4,HC,0,,,,
,,,,,,,,,
DI,急停,SuddenStop_BTN,0,HC,0,急停,X00,X00,0
DI,复位,Reset_BTN,1,HC,0,复位,X01,X01,0
DI,启动,AutoRun_Signal,2,HC,0,启动,X02,X02,0
DI,氮气气压检测,Airpressure_Check,3,HC,0,氮气气压检测,X03,X03,0
DI,料盘检测1(进料口),TrayCheck_Door,4,HC,0,料盘检测1(进料口),X04,X04,0
DI,料盘检测2(料叉),TrayCheck_Fixture,5,HC,0,料盘检测2(料叉),X05,X05,0
DI,进料口门上升端,Door_Up,6,HC,0,进料口门上升端,X06,X06,0
DI,进料口门下降端,Door_Down,7,HC,0,进料口门下降端,X07,X07,0
DI,安全光栅,SafetyLightCurtains,8,HC,0,安全光栅,X08,X08,0
DI,前门限位,Door_Limit,9,HC,0,前门限位,X09,X09,0
DI,左侧门限位,Door_LeftLimit,10,HC,0,左侧门限位,X10,X10,0
DI,右侧门限位,Door_RightLimit,11,HC,0,右侧门限位,X11,X11,0
DI,激光对点检测,Laser_detection,12,HC,0,激光对点检测,X12,X12,0
DIX,进料口电机异常,Motor_Error,13,HC,0,进料口电机异常,X13,X13,0
DI,料盘检测3(进料口),TrayCheck_Door_13,14,HC,0,料盘检测3(进料口),X14,X14,0
,,,,,,,,,
DO,自动指示灯,AutoRun_HddLed,0,HC,0,自动指示灯,Y00,Y01,0
DO,故障指示灯,Alarm_HddLed,1,HC,0,故障指示灯,Y01,Y02,0
DO,待机指示灯,RunSign_HddLed,2,HC,0,待机指示灯,Y02,Y03,0
DO,故障蜂鸣器,Alarm_Buzzer,3,HC,0,故障蜂鸣器,Y03,Y04,0
DO,设备照明开启,Device_Led,4,HC,0,设备照明开启,Y04,Y05,0
DO,相机光源开启,Camera_Led,5,HC,0,相机光源开启,Y05,Y06,0
DO,氮气阀门开启,StartOrStopBlow,6,HC,0,氮气阀门开启,Y06,Y07,0
DO,进料口门运转,Door_Moto_Run,7,HC,0,进料口门运转,Y07,Y08,0
DO,进料口门反转关门,Door_Moto_Rev,8,HC,0,进料口门反转,Y08,Y09,0
,,,,,,,,,
PRO,升降轴 进料口取料点 P1,UpDownAxis_DoorOPosition_P1,698000,,,,,,
PRO,升降轴 进料口出料前点 P2,UpDownAxis_DoorIPosition_P2,720000,,,,,,
PRO,升降轴 进料口取料缓冲点 P7,UpDownAxis_DoorOBPosition_P7,720000,,,,,,
PRO,升降轴 进料口出料缓冲点 P8,UpDownAxis_DoorIBPosition_P8,698000,,,,,,
PRO,旋转轴(轴1)P1 待机原位点,MiddleAxis_P1_Position,151300,,,,,,
PRO,进出轴(轴3)P1待机原位点,InOutAxis_P1_Position,-1000,,,,,,
PRO,压紧轴(轴4)P1待机原位点,CompressAxis_P1_Position,2000,,,,,,
PRO,L4_压紧轴_P2压紧点范围对应值,CompAxis_P2_List,8=34000;12=32000;32=11400;24=19400;16=28400;,,,,,,
PRO,是否使用定位气缸,IsHasLocationCylinder,0,,,,,,
PRO,是否有左右侧门,IsHasDoorLimit,1,,,,,,
PRO,是否使用压紧轴(1=使用),IsHasCompress_Axis,1,,,,,,
PRO,设备是否处于调试状态(1=调试,0=正常),IsInDebug,1,,,,,,
PRO,气压检测IO关闭需要持续的时间,AirCheckSeconds,3,,,,,,
,温湿度传感器地址,TemperateServer_Port,9001,,,,,,
PRO,预警温度,WarnTemperate,80,,,,,,
PRO,预警湿度,WarnHumidity,80,,,,,,
,,,,,,,,,
PRO,(轴一)旋转轴目标速度,MiddleAxis_TargetSpeed,60000,,,,,,
PRO,(轴一)旋转轴加速度,MiddleAxis_AddSpeed,0,,,,,,
PRO,(轴一)旋转轴减速度,MiddleAxis_DelSpeed,0,,,,,,
PRO,(轴一)旋转轴原点低速度,MiddleAxis_HomeLowSpeed,0,,,,,,
PRO,(轴一)旋转轴原点高速,MiddleAxis_HomeHighSpeed,10000,,,,,,
PRO,(轴一)旋转轴原点加速度,MiddleAxis_HomeAddSpeed,0,,,,,,
PRO,(轴二)升降轴轴目标速度,UpdownAxis_TargetSpeed,30000,,,,,,
PRO,(轴二)升降轴轴加速度,UpdownAxis_AddSpeed,0,,,,,,
PRO,(轴二)升降轴轴减速度,UpdownAxis_DelSpeed,0,,,,,,
PRO,(轴二)升降轴轴原点低速度,UpdownAxis_HomeLowSpeed,0,,,,,,
PRO,(轴二)升降轴轴原点高速,UpdownAxis_HomeHighSpeed,45000,,,,,,
PRO,(轴二)升降轴轴原点加速度,UpdownAxis_HomeAddSpeed,0,,,,,,
PRO,(轴三)进出轴目标速度,InoutAxis_TargetSpeed,200000,,,,,,
PRO,(轴三)进出轴加速度,InoutAxis_AddSpeed,0,,,,,,
PRO,(轴三)进出轴减速度,InoutAxis_DelSpeed,0,,,,,,
PRO,(轴三)进出轴原点低速,InoutAxis_HomeLowSpeed,0,,,,,,
PRO,(轴三)进出轴原点高速,InoutAxis_HomeHighSpeed,40000,,,,,,
PRO,(轴三)进出轴原点加速度,InoutAxis_HomeAddSpeed,0,,,,,,
PRO,(轴四)压紧轴目标速度,CompAxis_TargetSpeed,50000,,,,,,
PRO,(轴四)压紧轴加速度,CompAxis_AddSpeed,0,,,,,,
PRO,(轴四)压紧轴减速度,CompAxis_DelSpeed,0,,,,,,
PRO,(轴四)压紧轴原点低速,CompAxis_HomeLowSpeed,0,,,,,,
PRO,(轴四)压紧轴原点高速,CompAxis_HomeHighSpeed,8000,,,,,,
PRO,(轴四)压紧轴原点加速度,CompAxis_HomeAddSpeed,0,,,,,,
,,,,,,,,,
PRO,升降轴(轴2)P1速度,UpDownAxis_P1_Speed,500000,,,,,,
PRO,升降轴(轴2)P2速度,UpDownAxis_P2_Speed,500000,,,,,,
PRO,升降轴(轴2)P3速度,UpDownAxis_P3_Speed,500000,,,,,,
PRO,升降轴(轴2)P4速度,UpDownAxis_P4_Speed,200000,,,,,,
PRO,升降轴(轴2)P5速度,UpDownAxis_P5_Speed,500000,,,,,,
PRO,升降轴(轴2)P6速度,UpDownAxis_P6_Speed,200000,,,,,,
PRO,升降轴(轴2)P7速度,UpDownAxis_P7_Speed,200000,,,,,,
PRO,升降轴(轴2)P8速度,UpDownAxis_P8_Speed,200000,,,,,,
PRO,旋转轴(轴1)P1速度,MiddleAxis_P1_Speed,70000,,,,,,
PRO,旋转轴(轴1)P2速度,MiddleAxis_P2_Speed,70000,,,,,,
PRO,进出轴(轴3)P1速度,InOutAxis_P1_Speed,250000,,,,,,
PRO,进出轴(轴3)P2速度,InOutAxis_P2_Speed,250000,,,,,,
PRO,进出轴(轴3)P3速度,InOutAxis_P3_Speed,250000,,,,,,
PRO,压紧轴(轴4)P1速度,CompAxis_P1_Speed,200000,,,,,,
PRO,压紧轴(轴4)P2速度,CompAxis_P2_Speed,200000,,,,,,
PRO,压紧轴(轴4)P3速度,CompAxis_P3_Speed,200000,,,,,,
PRO,出料门(轴5)开关门速度,DoorAxis_Run_Speed,180000,,,,,,
PRO,(轴一)旋转轴停止时可误差的脉冲数的最小值,MiddleAxis_ErrorCountMin,10,,,,,,
PRO,(轴二)升降轴轴停止时可误差的脉冲数的最小值,UpdownAxis_ErrorCountMin,10,,,,,,
PRO,(轴三)进出轴停止时可误差的脉冲数的最小值,InoutAxis_ErrorCountMin,100,,,,,,
PRO,(轴一)旋转轴停止时可误差的脉冲数的最大值,MiddleAxis_ErrorCountMax,1000,,,,,,
PRO,(轴二)升降轴轴停止时可误差的脉冲数的最大值,UpdownAxis_ErrorCountMax,1000,,,,,,
PRO,(轴三)进出轴停止时可误差的脉冲数的最大值,InoutAxis_ErrorCountMax,1000,,,,,,
PRO,出入库多少次,会自动重置旋转轴,Box_ResetMCount,1000,,,,,,
PRO,出入库多少次,会自动重置所有轴操作,Box_ResetACount,1000,,,,,,
PRO,IO信号超时时间(毫秒),IOSingle_TimerOut,15000,,,,,,
PRO,是否使用料盘检测信号,IsUse_Tray_Check,1,,,,,,
,,,,,,,,,
PRO,(轴一)旋转轴最小限位,MiddleAxis_PositionMin,0,,,,,,
PRO,(轴二)升降轴最小限位,UpdownAxis_PositionMin,0,,,,,,
PRO,(轴三)进出轴最小限位,InoutAxis_PositionMin,0,,,,,,
PRO,(轴一)旋转轴最大限位,MiddleAxis_PositionMax,0,,,,,,
PRO,(轴二)升降轴最大限位,UpdownAxis_PositionMax,0,,,,,,
PRO,(轴三)进出轴最大限位,InoutAxis_PositionMax,0,,,,,,
PRO,需要吹气的温度(温度标准),Max_Temperature,0,,,,,,
PRO,需要吹气的湿度(湿度标准),Max_Humidity,10,,,,,,
PRO,每次吹气的时间(分钟),BlowAir_Time,10,,,,,,
PRO,两次吹气间隔(分钟),BlowAir_Interval,10,,,,,,
PRO,温湿度端口号,Humiture_Port,COM5,,,,,,
,,,,,,,,,
PRO,模拟信号1默认高度,AIDI1_DefaultPosition,5456,,,,,,
PRO,模拟信号2默认高度,AIDI2_DefaultPosition,5456,,,,,,
PRO,模拟信号3默认高度,AIDI3_DefaultPosition,5650,,,,,,
PRO,模拟信号4默认高度,AIDI4_DefaultPosition,5650,,,,,,
,,,,,,,,,
PRO,模拟信号1的地址,AIDI1_Addr,0,,,,,,
PRO,模拟信号2的地址,AIDI2_Addr,1,,,,,,
PRO,模拟信号3的地址(13寸高度),AIDI3_Addr,2,,,,,,
PRO,模拟信号4的地址(15寸高度),AIDI4_Addr,3,,,,,,
,,,,,,,,,
PRO,模拟转换系数,AI_ConvertPosition,62,,,,,,
,,,,,,,,,
PRO,默认的料盘宽度(多种尺寸为0),Default_TrayWidth,0,,,,,,
PRO,特殊二维码尺寸配置,CodeSizeConfig,XA=13x48#XB=13x32,,,,,,
PRO,扫码枪IP,Scanner_Ip,0,,,,,,
PRO,扫码枪端口号,Scanner_Port,51236,,,,,,
PRO,旋转轴反转点位补偿,MiddleAxis_Reverse_Offset,0,,,,,,
...@@ -7,29 +7,29 @@ AXIS,(轴五)出料门,Door_Axis,4,HC,0,,,, ...@@ -7,29 +7,29 @@ AXIS,(轴五)出料门,Door_Axis,4,HC,0,,,,
,,,,,,,,, ,,,,,,,,,
DI,急停,SuddenStop_BTN,0,HC,0,急停,X00,X00,0 DI,急停,SuddenStop_BTN,0,HC,0,急停,X00,X00,0
DI,复位,Reset_BTN,1,HC,0,复位,X01,X01,0 DI,复位,Reset_BTN,1,HC,0,复位,X01,X01,0
DI,启动,AutoRun_Signal,2,HC,0,启动,X02,X02,0 DI,启动,AutoRun_Signal,29,HC,0,hide,X029,X02,0
DI,氮气气压检测,Airpressure_Check,3,HC,0,氮气气压检测,X03,X03,0 DI,氮气气压检测,Airpressure_Check,0,HC,0,hide,X039,X03,0
DI,料盘检测1(进料口),TrayCheck_Door,4,HC,0,料盘检测1(进料口),X04,X04,0 DI,料盘检测1(进料口),TrayCheck_Door,2,HC,0,料盘检测1(进料口),X02,X04,0
DI,料盘检测2(料叉),TrayCheck_Fixture,5,HC,0,料盘检测2(料叉),X05,X05,0 DI,料盘检测2(料叉),TrayCheck_Fixture,3,HC,0,料盘检测2(料叉),X03,X05,0
DI,进料口门上升端,Door_Up,6,HC,0,进料口门上升端,X06,X06,0 DI,进料口门上升端,Door_Up,4,HC,0,进料口门上升端,X04,X06,0
DI,进料口门下降端,Door_Down,7,HC,0,进料口门下降端,X07,X07,0 DI,进料口门下降端,Door_Down,5,HC,0,进料口门下降端,X05,X07,0
DI,安全光栅,SafetyLightCurtains,8,HC,0,安全光栅,X08,X08,0 DI,安全光栅,SafetyLightCurtains,0,HC,0,hide,X00,X08,0
DI,前门限位,Door_Limit,9,HC,0,前门限位,X09,X09,0 DI,激光对点检测,Laser_detection,6,HC,0,激光对点检测,X06,X12,0
DI,左侧门限位,Door_LeftLimit,10,HC,0,左侧门限位,X10,X10,0 DI,后门门禁,Door_Limit,7,HC,0,后门门禁,X07,X09,0
DI,右侧门限位,Door_RightLimit,11,HC,0,右侧门限位,X11,X11,0 DI,后门门禁,Door_LeftLimit,7,HC,0,后门门禁,X07,X10,0
DI,激光对点检测,Laser_detection,12,HC,0,激光对点检测,X12,X12,0 DI,后门门禁,Door_RightLimit,7,HC,0,后门门禁,X07,X11,0
DIX,进料口电机异常,Motor_Error,13,HC,0,进料口电机异常,X13,X13,0 DI,进料口电机异常,Motor_Error,29,HC,0,hide,X139,X13,0
DI,料盘检测3(进料口),TrayCheck_Door_13,14,HC,0,料盘检测3(进料口),X14,X14,0 DI,料盘检测3(进料口),TrayCheck_Door_13,29,HC,0,hide,X149,X14,0
,,,,,,,,, ,,,,,,,,,
DO,自动指示灯,AutoRun_HddLed,0,HC,0,自动指示灯,Y00,Y01,0 DO,自动指示灯,AutoRun_HddLed,0,HC,0,自动指示灯,Y00,Y01,0
DO,故障指示灯,Alarm_HddLed,1,HC,0,故障指示灯,Y01,Y02,0 DO,故障指示灯,Alarm_HddLed,1,HC,0,故障指示灯,Y01,Y02,0
DO,待机指示灯,RunSign_HddLed,2,HC,0,待机指示灯,Y02,Y03,0 DO,待机指示灯,RunSign_HddLed,2,HC,0,待机指示灯,Y02,Y03,0
DO,故障蜂鸣器,Alarm_Buzzer,3,HC,0,故障蜂鸣器,Y03,Y04,0 DO,故障蜂鸣器,Alarm_Buzzer,3,HC,0,故障蜂鸣器,Y03,Y04,0
DO,设备照明开启,Device_Led,4,HC,0,设备照明开启,Y04,Y05,0 DO,设备照明开启,Device_Led,4,HC,0,设备照明开启,Y04,Y05,0
DO,相机光源开启,Camera_Led,5,HC,0,相机光源开启,Y05,Y06,0 DO,相机光源开启,Camera_Led,30,HC,0,hide,Y05,Y06,0
DO,氮气阀门开启,StartOrStopBlow,6,HC,0,氮气阀门开启,Y06,Y07,0 DO,氮气阀门开启,StartOrStopBlow,5,HC,0,氮气阀门开启,Y05,Y07,0
DO,进料口门运转,Door_Moto_Run,7,HC,0,进料口门运转,Y07,Y08,0 DO,进料口门运转,Door_Moto_Run,30,HC,0,hide,Y07,Y08,0
DO,进料口门反转关门,Door_Moto_Rev,8,HC,0,进料口门反转,Y08,Y09,0 DO,进料口门反转关门,Door_Moto_Rev,30,HC,0,hide,Y08,Y09,0
,,,,,,,,, ,,,,,,,,,
PRO,升降轴 进料口取料点 P1,UpDownAxis_DoorOPosition_P1,698000,,,,,, PRO,升降轴 进料口取料点 P1,UpDownAxis_DoorOPosition_P1,698000,,,,,,
PRO,升降轴 进料口出料前点 P2,UpDownAxis_DoorIPosition_P2,720000,,,,,, PRO,升降轴 进料口出料前点 P2,UpDownAxis_DoorIPosition_P2,720000,,,,,,
......
...@@ -553,7 +553,6 @@ namespace OnlineStore.DeviceLibrary ...@@ -553,7 +553,6 @@ namespace OnlineStore.DeviceLibrary
ComMoveToPosition(Config.CompressAxis_P1_Position, Config.CompAxis_P1_Speed); ComMoveToPosition(Config.CompressAxis_P1_Position, Config.CompAxis_P1_Speed);
break; break;
case StoreMoveStep.BOX_H_OtherAxisBack_03: case StoreMoveStep.BOX_H_OtherAxisBack_03:
if (IOManager.IOValue(IO_Type.TrayCheck_Door).Equals(IO_VALUE.LOW)) if (IOManager.IOValue(IO_Type.TrayCheck_Door).Equals(IO_VALUE.LOW))
{ {
StoreMove.NextMoveStep(StoreMoveStep.BOX_H_OtherAxisBack_04); StoreMove.NextMoveStep(StoreMoveStep.BOX_H_OtherAxisBack_04);
...@@ -561,8 +560,9 @@ namespace OnlineStore.DeviceLibrary ...@@ -561,8 +560,9 @@ namespace OnlineStore.DeviceLibrary
} }
else else
{ {
StoreMove.NextMoveStep(StoreMoveStep.BOX_H_MiddleAxisToP1); SetWarnMsg("舱门口有盘无法完成回原,请取走");
LogUtil.info(LOGGER, StoreName + " 舱门口有盘, 回原结束"); //StoreMove.NextMoveStep(StoreMoveStep.BOX_H_MiddleAxisToP1);
//LogUtil.info(LOGGER, StoreName + " 舱门口有盘, 回原结束");
} }
break; break;
...@@ -573,10 +573,19 @@ namespace OnlineStore.DeviceLibrary ...@@ -573,10 +573,19 @@ namespace OnlineStore.DeviceLibrary
OpenDoor(); OpenDoor();
break; break;
case StoreMoveStep.BOX_H_OtherAxisBack_05: case StoreMoveStep.BOX_H_OtherAxisBack_05:
StoreMove.NextMoveStep(StoreMoveStep.BOX_H_OtherAxisBack_06); if (IOManager.IOValue(IO_Type.TrayCheck_Door).Equals(IO_VALUE.LOW))
LogUtil.info(LOGGER, StoreName + " 进出轴到p2"); {
var InOutAxis_DoorPosition_P2 = CSVPositionReader<ACStorePosition>.allPositionMap.First().Value.InOutAxis_DoorPosition_P2; StoreMove.NextMoveStep(StoreMoveStep.BOX_H_OtherAxisBack_06);
ACAxisMove(Config.InOut_Axis, InOutAxis_DoorPosition_P2, Config.InOutAxis_P2_Speed); LogUtil.info(LOGGER, StoreName + " 进出轴到p2");
var InOutAxis_DoorPosition_P2 = CSVPositionReader<ACStorePosition>.allPositionMap.First().Value.InOutAxis_DoorPosition_P2;
ACAxisMove(Config.InOut_Axis, InOutAxis_DoorPosition_P2, Config.InOutAxis_P2_Speed);
}
else
{
SetWarnMsg("舱门口有盘无法完成回原,请取走");
//StoreMove.NextMoveStep(StoreMoveStep.BOX_H_MiddleAxisToP1);
//LogUtil.info(LOGGER, StoreName + " 舱门口有盘, 回原结束");
}
break; break;
case StoreMoveStep.BOX_H_OtherAxisBack_06: case StoreMoveStep.BOX_H_OtherAxisBack_06:
StoreMove.NextMoveStep(StoreMoveStep.BOX_H_OtherAxisBack_07); StoreMove.NextMoveStep(StoreMoveStep.BOX_H_OtherAxisBack_07);
......
...@@ -814,24 +814,27 @@ namespace OnlineStore.DeviceLibrary ...@@ -814,24 +814,27 @@ namespace OnlineStore.DeviceLibrary
{ {
StoreMove.NextMoveStep(StoreMoveStep.SO_12_DeviceOutFromDoor); StoreMove.NextMoveStep(StoreMoveStep.SO_12_DeviceOutFromDoor);
OutStoreLog("出库:SO_12 叉子从出料口返回,,进出轴动作至P1(待机点) "); OutStoreLog("出库:SO_12 叉子从出料口返回,,进出轴动作至P1(待机点) ");
InOutBackToP1(moveP.InOut_P1);
} }
else if (StoreMove.MoveStep == StoreMoveStep.SO_12_DeviceOutFromDoor) else if (StoreMove.MoveStep == StoreMoveStep.SO_12_DeviceOutFromDoor)
{ {
string posId = StoreMove.MoveParam != null ? StoreMove.MoveParam.PositionNum : ""; string posId = StoreMove.MoveParam != null ? StoreMove.MoveParam.PositionNum : "";
lastPosId = posId; lastPosId = posId;
lastPosIdStatus = StoreStatus.OutStorEnd;
storeStatus = StoreStatus.OutStorEnd;
SendLineStatus();
InOutBackToP1(moveP.InOut_P1);
if (IOManager.IOValue(IO_Type.TrayCheck_Door).Equals(IO_VALUE.HIGH)) if (IOManager.IOValue(IO_Type.TrayCheck_Door).Equals(IO_VALUE.HIGH))
{ {
StoreMove.NextMoveStep(StoreMoveStep.SO_13_CheckTray); StoreMove.NextMoveStep(StoreMoveStep.SO_13_CheckTray);
OutStoreLog($"出库:检测到料盘 SO_13 等待TrayCheck_Fixture= LOW && TrayCheck_Door=high"); OutStoreLog($"出库:检测到料盘 SO_13 等待TrayCheck_Fixture= LOW && TrayCheck_Door=high");
lastPosIdStatus = StoreStatus.OutStorEnd;
storeStatus = StoreStatus.OutStorEnd;
SendLineStatus();
} }
else else
{ {
lastPosIdStatus = StoreStatus.OutStoreError;
storeStatus = StoreStatus.OutStoreError;
SendLineStatus();
HIKCamera.Current.CameraGrabOne(HIKCamera.Current.GetFixtureStateFilename(StoreMove.MoveParam, StoreMove.MoveType, FixtureState.DoorOut)); HIKCamera.Current.CameraGrabOne(HIKCamera.Current.GetFixtureStateFilename(StoreMove.MoveParam, StoreMove.MoveType, FixtureState.DoorOut));
StoreMove.NextMoveStep(StoreMoveStep.SO_TakeReelFaile); StoreMove.NextMoveStep(StoreMoveStep.SO_TakeReelFaile);
//StoreMove.NextMoveStep(StoreMoveStep.SO_15_WaitTake); //StoreMove.NextMoveStep(StoreMoveStep.SO_15_WaitTake);
...@@ -841,6 +844,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -841,6 +844,7 @@ namespace OnlineStore.DeviceLibrary
//CloseDoor(); //CloseDoor();
SetWarnMsg(ResourceControl.take_out_reel_failure, posId);//1083 SetWarnMsg(ResourceControl.take_out_reel_failure, posId);//1083
OutStoreLog($"料叉没有成功取出料盘,请检查库位[{posId}]"); OutStoreLog($"料叉没有成功取出料盘,请检查库位[{posId}]");
} }
//改为出库完成 //改为出库完成
...@@ -860,7 +864,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -860,7 +864,7 @@ namespace OnlineStore.DeviceLibrary
{ {
HIKCamera.Current.CameraGrabOne(HIKCamera.Current.GetFixtureStateFilename(StoreMove.MoveParam, StoreMove.MoveType, FixtureState.DoorOut)); HIKCamera.Current.CameraGrabOne(HIKCamera.Current.GetFixtureStateFilename(StoreMove.MoveParam, StoreMove.MoveType, FixtureState.DoorOut));
StoreMove.NextMoveStep(StoreMoveStep.SO_15_WaitTake); StoreMove.NextMoveStep(StoreMoveStep.SO_15_WaitTake);
if (!IsInOutStoreAuto) if (!autoNext)
{ {
if (OutStoreWaitSeconds > 0) if (OutStoreWaitSeconds > 0)
{ {
......
...@@ -128,6 +128,15 @@ namespace OnlineStore ...@@ -128,6 +128,15 @@ namespace OnlineStore
} }
public string GetFixtureStateFilename(InOutStoreParam inOutParam,StoreMoveType storeMoveType, FixtureState fixtureState) public string GetFixtureStateFilename(InOutStoreParam inOutParam,StoreMoveType storeMoveType, FixtureState fixtureState)
{ {
var WareNumber = inOutParam.WareNumber;
Path.GetInvalidFileNameChars().ToList().ForEach((ix) => { WareNumber = WareNumber.Replace(ix.ToString(), ""); });
if (WareNumber.Length > 200)
{
WareNumber = "";
}
if (string.IsNullOrEmpty(WareNumber))
WareNumber = DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss");
string dir = $"\\image\\Fixture\\{storeMoveType}\\{inOutParam.PositionNum}\\"; string dir = $"\\image\\Fixture\\{storeMoveType}\\{inOutParam.PositionNum}\\";
Directory.CreateDirectory(dir); Directory.CreateDirectory(dir);
string filename = $"{inOutParam.WareNumber}@@{fixtureState}.jpg"; string filename = $"{inOutParam.WareNumber}@@{fixtureState}.jpg";
......
...@@ -108,6 +108,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -108,6 +108,7 @@ namespace OnlineStore.DeviceLibrary
/// 扫码入库失败 /// 扫码入库失败
/// </summary> /// </summary>
InStoreError=14, InStoreError=14,
OutStoreError = 23
} }
/// <summary> /// <summary>
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!