Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
RC1250-AssemblyLine
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 6fdc0626
由
LN
编写于
2020-09-04 15:18:16 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
进仓5优化
1 个父辈
230d363f
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
51 行增加
和
35 行删除
source/DeviceLibrary/assemblyLine/LineBean.cs
source/DeviceLibrary/assemblyLine/LineBean_Shunt2.cs
source/DeviceLibrary/assemblyLine/MoveEquip_Partial.cs
source/DeviceLibrary/assemblyLine/LineBean.cs
查看文件 @
6fdc062
...
...
@@ -286,6 +286,10 @@ namespace OnlineStore.DeviceLibrary
{
LogUtil
.
info
(
Name
+
"链条转动超过5秒,先停止链条转动"
);
WriteDrivetMotorRun
(
IO_VALUE
.
LOW
);
if
(!
DisableShunt2
)
{
IOMove
(
IO_Type
.
Shunt2_StopDown1_Front
,
IO_VALUE
.
LOW
);
}
}
if
(
runStatus
.
Equals
(
LineRunStatus
.
Wait
))
{
...
...
@@ -365,6 +369,7 @@ namespace OnlineStore.DeviceLibrary
//分流模块复位
ShuntStop
();
Shunt2Stop
();
IOMove
(
IO_Type
.
Shunt2_StopDown1_Front
,
IO_VALUE
.
HIGH
);
CylinderMove
(
MoveInfo
,
IO_Type
.
Shunt_TopCylinder_Up1
,
IO_Type
.
Shunt_TopCylinder_Down1
);
CylinderMove
(
MoveInfo
,
IO_Type
.
Shunt_TopCylinder_Up2
,
IO_Type
.
Shunt_TopCylinder_Down2
);
CylinderMove
(
MoveInfo
,
IO_Type
.
Shunt2_TopCylinder_Up1
,
IO_Type
.
Shunt2_TopCylinder_Down1
);
...
...
source/DeviceLibrary/assemblyLine/LineBean_Shunt2.cs
查看文件 @
6fdc062
...
...
@@ -370,7 +370,7 @@ namespace OnlineStore.DeviceLibrary
}
else
if
(
storeId
>=
15
&&
storeId
<=
18
)
{
outMsg
=
"15-18
仓入库"
;
outMsg
=
storeId
+
"
仓入库"
;
return
true
;
}
}
...
...
source/DeviceLibrary/assemblyLine/MoveEquip_Partial.cs
查看文件 @
6fdc062
...
...
@@ -580,46 +580,57 @@ namespace OnlineStore.DeviceLibrary
{
if
(
SecondMoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
).
Equals
(
false
))
{
LogUtil
.
error
(
Name
+
" StartCheckFixture "
+
" 不在空闲中,直接返回 "
);
return
;
}
bool
canpro
=
LineManager
.
Line
.
Move5CanProcessTray
(
DeviceID
);
if
(
IOValue
(
IO_Type
.
StopCylinder_Check2
).
Equals
(
IO_VALUE
.
HIGH
))
{
trayCheck2LowWait
.
Stop
();
if
(
canpro
&&
TrayManager
.
checkWatch
(
trayCheckWait
,
TrayManager
.
SwTrayWaitTime
,
true
))
if
(
IOValue
(
IO_Type
.
StopCylinder_Check2
).
Equals
(
IO_VALUE
.
HIGH
))
{
trayCheck2LowWait
.
Stop
();
}
else
{
SecondMoveInfo
.
NewMove
(
LineMoveType
.
CheckFixture
);
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_03_Stop2Down
);
CheckLog
(
"托盘阻挡"
+
SecondMoveInfo
.
SLog
+
" 阻挡气缸1-1上升)"
);
IOMove
(
IO_Type
.
StopCylinder_Down1
,
IO_VALUE
.
LOW
);
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Down1
,
IO_VALUE
.
LOW
));
TrayManager
.
checkWatch
(
trayCheck2LowWait
,
30000
,
false
);
}
LogUtil
.
error
(
Name
+
" StartCheckFixture "
+
" 不在空闲中,直接返回 "
);
return
;
}
else
if
(
SecondMoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
))
{
bool
c
heck2IsOk
=
TrayManager
.
checkWatch
(
trayCheck2LowWait
,
TrayManager
.
SwTrayWaitTime
,
false
);
if
(
IOValue
(
IO_Type
.
StopCylinder_Check
1
).
Equals
(
IO_VALUE
.
HIGH
))
bool
c
anpro
=
LineManager
.
Line
.
Move5CanProcessTray
(
DeviceID
);
if
(
IOValue
(
IO_Type
.
StopCylinder_Check
2
).
Equals
(
IO_VALUE
.
HIGH
))
{
if
(
canpro
&&
TrayManager
.
checkWatch
(
trayCheckWait
,
TrayManager
.
SwTrayWaitTime
,
false
)
&&
check2IsOk
)
{
trayCheckWait
.
Stop
();
trayCheck2LowWait
.
Stop
();
//托盘在第一个阻挡处
trayCheck2LowWait
.
Stop
();
if
(
canpro
&&
TrayManager
.
checkWatch
(
trayCheckWait
,
TrayManager
.
SwTrayWaitTime
,
true
))
{
SecondMoveInfo
.
NewMove
(
LineMoveType
.
CheckFixture
);
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_00_Stop1Down
);
CheckLog
(
" 托盘检测:料盘检测StopCylinder_Check1 "
+
SecondMoveInfo
.
SLog
+
"阻挡气缸1-1下降 , 等待 StopCylinder_Check1=0,清理托盘RFID"
);
ClearTrayRFID
();
IOMove
(
IO_Type
.
StopCylinder_Down1
,
IO_VALUE
.
HIGH
,
1200
);
SecondMoveInfo
.
OneWaitCanEndStep
=
true
;
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Check1
,
IO_VALUE
.
LOW
));
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Check2
,
IO_VALUE
.
HIGH
));
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_03_Stop2Down
);
CheckLog
(
"托盘阻挡"
+
SecondMoveInfo
.
SLog
+
" 阻挡气缸1-1上升)"
);
IOMove
(
IO_Type
.
StopCylinder_Down1
,
IO_VALUE
.
LOW
);
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Down1
,
IO_VALUE
.
LOW
));
}
}
else
{
trayCheckWait
.
Stop
();
bool
check2IsOk
=
TrayManager
.
checkWatch
(
trayCheck2LowWait
,
TrayManager
.
SwTrayWaitTime
,
false
);
if
(
IOValue
(
IO_Type
.
StopCylinder_Check1
).
Equals
(
IO_VALUE
.
HIGH
))
{
if
(
TrayManager
.
checkWatch
(
trayCheckWait
,
TrayManager
.
SwTrayWaitTime
,
false
)
&&
check2IsOk
&&
canpro
)
{
trayCheckWait
.
Stop
();
trayCheck2LowWait
.
Stop
();
//托盘在第一个阻挡处
SecondMoveInfo
.
NewMove
(
LineMoveType
.
CheckFixture
);
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_00_Stop1Down
);
CheckLog
(
" 托盘检测:料盘检测StopCylinder_Check1 "
+
SecondMoveInfo
.
SLog
+
"阻挡气缸1-1下降 , 等待 StopCylinder_Check1=0,清理托盘RFID"
);
ClearTrayRFID
();
IOMove
(
IO_Type
.
StopCylinder_Down1
,
IO_VALUE
.
HIGH
,
1200
);
SecondMoveInfo
.
OneWaitCanEndStep
=
true
;
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Check1
,
IO_VALUE
.
LOW
));
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Check2
,
IO_VALUE
.
HIGH
));
}
}
else
{
trayCheckWait
.
Stop
();
}
}
}
}
...
...
@@ -660,7 +671,7 @@ namespace OnlineStore.DeviceLibrary
if
(
DeviceID
.
Equals
(
5
))
{
SecondMoveInfo
.
TimeOutSeconds
=
15
;
SecondMoveInfo
.
TimeOutSeconds
=
20
;
}
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Check2
,
IO_VALUE
.
HIGH
));
}
...
...
@@ -829,16 +840,16 @@ namespace OnlineStore.DeviceLibrary
else
if
(
SecondMoveInfo
.
MoveStep
.
Equals
(
LineMoveStep
.
MO_17_Stop2Check
))
{
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MO_18_WaitTime
);
CheckLog
(
"托盘放行 "
+
SecondMoveInfo
.
SLog
+
" , 等待
5
00ms后阻挡2上升"
);
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
5
00
));
CheckLog
(
"托盘放行 "
+
SecondMoveInfo
.
SLog
+
" , 等待
3
00ms后阻挡2上升"
);
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
3
00
));
}
else
if
(
SecondMoveInfo
.
MoveStep
.
Equals
(
LineMoveStep
.
MO_18_WaitTime
))
{
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MO_19_StopCylinder_Back
);
CheckLog
(
"托盘放行"
+
SecondMoveInfo
.
SLog
+
" , 阻挡气缸1-2上升 )"
);
IOMove
(
IO_Type
.
StopCylinder_Down2
,
IO_VALUE
.
LOW
);
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
100
));
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Down2
,
IO_VALUE
.
LOW
));
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
200
));
}
else
if
(
SecondMoveInfo
.
MoveStep
.
Equals
(
LineMoveStep
.
MO_19_StopCylinder_Back
))
{
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论