Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
RC1250-AssemblyLine
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 29567857
由
LN
编写于
2020-04-14 16:25:41 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
入库未验证成功时需要停留3秒等待验证
1 个父辈
130d6f3e
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
34 行增加
和
20 行删除
source/DeviceLibrary/assemblyLine/MoveEquip_Partial.cs
source/DeviceLibrary/assemblyLine/MoveEquip_Partial.cs
查看文件 @
2956785
...
...
@@ -403,16 +403,14 @@ namespace OnlineStore.DeviceLibrary
//判断是否验证成功,如果验证失败,不入库
if
(
LineServer
.
RightInPosId
(
DeviceID
,
cc
.
PosId
))
{
SecondMoveInfo
.
MoveParam
=
new
InOutParam
(
cc
.
TrayNumber
,
cc
.
WareCode
,
cc
.
PosId
,
cc
.
PlateH
,
cc
.
PlateW
,
cc
.
InStoreNg
);
return
true
;
}
else
{
SecondMoveInfo
.
MoveParam
=
new
InOutParam
(
cc
.
TrayNumber
,
cc
.
WareCode
,
cc
.
PosId
,
cc
.
PlateH
,
cc
.
PlateW
,
cc
.
InStoreNg
);
LogUtil
.
error
(
Name
+
"托盘号【"
+
currTrayNum
+
"】入库信息【"
+
cc
.
ToStr
()+
"】料仓未验证成功,重新发送验证消息"
);
LineServer
.
CheckInStorePos
(
DeviceID
,
cc
);
//TrayManager.UpdateInStoreNG(currTrayNum, true,"Box验证入库失败");
//needRemove = true;
//break;
LineServer
.
CheckInStorePos
(
DeviceID
,
cc
);
return
true
;
}
}
...
...
@@ -629,24 +627,24 @@ namespace OnlineStore.DeviceLibrary
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_03_Stop2Down
);
CheckLog
(
"托盘阻挡"
+
SecondMoveInfo
.
SLog
+
" 再次等待托盘信号"
);
IOMove
(
IO_Type
.
StopCylinder_Down1
,
IO_VALUE
.
LOW
);
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Check2
,
IO_VALUE
.
HIGH
));
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Check2
,
IO_VALUE
.
HIGH
));
}
else
if
(
SecondMoveInfo
.
MoveStep
.
Equals
(
LineMoveStep
.
MIO_03_Stop2Down
))
{
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_04_Wait
);
CheckLog
(
"托盘阻挡"
+
SecondMoveInfo
.
SLog
+
" ,等待编码信号稳定StopCylinder_Check2=1"
);
CheckAndMove
(
IO_Type
.
StopCylinder_Down1
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
StopCylinder_Down1
,
IO_VALUE
.
LOW
);
//SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Check2
,
IO_VALUE
.
HIGH
));
}
else
if
(
SecondMoveInfo
.
MoveStep
.
Equals
(
LineMoveStep
.
MIO_04_Wait
))
{
try
{
{
//判断是否需要顶升
bool
isNeed
=
false
;
bool
isNeed
=
false
;
UpdateTrayNum
();
bool
isFull
=
TrayManager
.
TrayIsFull
(
currTrayNum
);
bool
isFull
=
TrayManager
.
TrayIsFull
(
currTrayNum
);
if
(
TrayManager
.
RightTrayCode
(
currTrayNum
,
preTrayNum
,
false
))
{
//出库中,需要拦盘
...
...
@@ -674,29 +672,45 @@ namespace OnlineStore.DeviceLibrary
}
else
{
LogUtil
.
debug
(
Name
+
SecondMoveInfo
.
MoveNum
+
"***************上个托盘号【"
+
preTrayNum
+
"】,当前"
+
(
isFull
?
"有料托盘"
:
"空托盘"
)
+
"【"
+
currTrayNum
+
"】没有出入库任务,放盘通过~"
);
LogUtil
.
debug
(
Name
+
SecondMoveInfo
.
MoveNum
+
"***************上个托盘号【"
+
preTrayNum
+
"】,当前"
+
(
isFull
?
"有料托盘"
:
"空托盘"
)
+
"【"
+
currTrayNum
+
"】没有出入库任务,放盘通过~"
);
// preTrayNum = currMoveTrayNum;
if
(
TrayManager
.
ErrorDeviceId
.
Equals
(
DeviceID
))
{
TrayManager
.
UpdateTrayNumError
(-
1
,
""
);
}
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MO_15_WaitCanGo
);
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MO_15_WaitCanGo
);
CheckLog
(
"托盘放行 "
+
SecondMoveInfo
.
SLog
+
" ,等待 NextStopCheck=0"
);
// SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.NextStopCheck, IO_VALUE.LOW));
// SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.NextStopCheck, IO_VALUE.LOW));
}
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
"判断托盘是否需要顶升出错:"
,
ex
);
LogUtil
.
error
(
"判断托盘是否需要顶升出错:"
,
ex
);
}
}
else
if
(
SecondMoveInfo
.
MoveStep
.
Equals
(
LineMoveStep
.
MIO_05_WaitTime
))
{
//如果是出库,且盘高大于30,暂不顶升
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_06_TopUp
);
if
(
MoveInfo
.
MoveParam
.
PlateH
>=
30
)
if
(
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
OutStore
))
{
CheckLog
(
"托盘阻挡"
+
SecondMoveInfo
.
SLog
+
" 高度>30,暂不顶升上升"
);
if
(
MoveInfo
.
MoveParam
!=
null
&&
MoveInfo
.
MoveParam
.
PlateH
>=
30
)
{
CheckLog
(
"托盘阻挡"
+
SecondMoveInfo
.
SLog
+
" 高度>30,暂不顶升上升"
);
}
}
else
if
(
SecondMoveInfo
.
MoveParam
!=
null
)
{
if
(!
LineServer
.
RightInPosId
(
DeviceID
,
SecondMoveInfo
.
MoveParam
.
PosId
))
{
LogUtil
.
error
(
Name
+
" "
+
SecondMoveInfo
.
SLog
+
"["
+
SecondMoveInfo
.
MoveParam
.
PosId
+
"]料仓未验证成功,等待3秒"
);
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
3000
));
}
if
(
SecondMoveInfo
.
MoveParam
.
PlateH
>=
30
)
{
CheckLog
(
"托盘阻挡"
+
SecondMoveInfo
.
SLog
+
" 高度>30,暂不顶升上升"
);
}
}
else
{
...
...
@@ -720,7 +734,7 @@ namespace OnlineStore.DeviceLibrary
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MO_11_CodeRember
);
SecondMoveInfo
.
EndStepWait
();
}
else
if
(
CheckIsNeedInStore
())
else
if
(
CheckIsNeedInStore
())
{
LogInfo
(
SecondMoveInfo
.
MoveNum
+
"*************** 托盘【"
+
currTrayNum
+
"】,有对应的入库任务,等待移栽"
);
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_08_WaitInStore
);
...
...
@@ -755,9 +769,9 @@ namespace OnlineStore.DeviceLibrary
#
region
不需要出入库,直接放行
else
if
(
SecondMoveInfo
.
MoveStep
.
Equals
(
LineMoveStep
.
MO_14_TopDown
))
{
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MO_15_WaitCanGo
);
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MO_15_WaitCanGo
);
CheckLog
(
"托盘放行 "
+
SecondMoveInfo
.
SLog
+
" ,等待 NextStopCheck=0"
);
// SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.NextStopCheck, IO_VALUE.LOW));
// SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.NextStopCheck, IO_VALUE.LOW));
}
else
if
(
SecondMoveInfo
.
MoveStep
.
Equals
(
LineMoveStep
.
MO_15_WaitCanGo
))
...
...
@@ -783,7 +797,7 @@ namespace OnlineStore.DeviceLibrary
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
200
));
}
else
if
(
SecondMoveInfo
.
MoveStep
.
Equals
(
LineMoveStep
.
MO_18_StopCylinder_Back
))
{
{
CheckLog
(
"托盘放行 SecondMove:(托盘放行结束) "
);
// IOMove(IO_Type.StopCylinder_Down1, IO_VALUE.HIGH);
SecondMoveInfo
.
EndMove
();
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论