Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
李娜
/
SO664-AssemblyLine
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 75a3b62e
由
LN
编写于
2020-12-12 14:29:53 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
1,上料横移到达流水线上方时再检测盘宽。2.T3-C1bug修改。3.接驳台bug修改
1 个父辈
6146271c
隐藏空白字符变更
内嵌
并排
正在显示
14 个修改的文件
包含
359 行增加
和
256 行删除
source/AssemblyLineClient/FrmFeedingEquip.cs
source/AssemblyLineClient/FrmLineIO.cs
source/AssemblyLineClient/FrmLineStore.Designer.cs
source/AssemblyLineClient/FrmLineStore.cs
source/AssemblyLineClient/记录.txt
source/DeviceLibrary/assemblyLine/FeedingEquip.cs
source/DeviceLibrary/assemblyLine/FeedingEquip_InStore.cs
source/DeviceLibrary/assemblyLine/FeedingEquip_OutStore.cs
source/DeviceLibrary/assemblyLine/HY/HY_C1Line.cs
source/DeviceLibrary/assemblyLine/HY/HY_Coveryor_Partial.cs
source/DeviceLibrary/assemblyLine/LineBean_T3-C1.cs
source/DeviceLibrary/assemblymanager/ALineManager.cs
source/DeviceLibrary/deviceLibrary/IO/IOManager.cs
source/DeviceLibrary/model/StoreStep.cs
source/AssemblyLineClient/FrmFeedingEquip.cs
查看文件 @
75a3b62
...
@@ -252,13 +252,15 @@ namespace OnlineStore.AssemblyLine
...
@@ -252,13 +252,15 @@ namespace OnlineStore.AssemblyLine
lblThisSta
.
Text
=
equipBean
.
WarnMsg
;
lblThisSta
.
Text
=
equipBean
.
WarnMsg
;
txtP1
.
Text
=
equipBean
.
Config
.
UpDownAxisP1
.
ToString
();
txtP1
.
Text
=
equipBean
.
Config
.
UpDownAxisP1
.
ToString
();
txtUpdownP3
.
Text
=
equipBean
.
Config
.
UpDownAxisP3
.
ToString
();
txtUpdownP3
.
Text
=
equipBean
.
Config
.
UpDownAxisP3
.
ToString
();
if
(
equipBean
.
Config
.
DOList
.
ContainsKey
(
IO_Type
.
SL_RollerLine_Run
)
)
if
(
equipBean
.
HasOutLine
)
{
{
SL_RollerLine_Run
.
Visible
=
true
;
SL_RollerLine_Run
.
Visible
=
true
;
SL_OutLine_Run
.
Visible
=
true
;
}
}
else
else
{
{
SL_RollerLine_Run
.
Visible
=
false
;
SL_RollerLine_Run
.
Visible
=
false
;
SL_OutLine_Run
.
Visible
=
false
;
}
}
LoadDP2
();
LoadDP2
();
LoadDOBtn
(
groupDO
);
LoadDOBtn
(
groupDO
);
...
...
source/AssemblyLineClient/FrmLineIO.cs
查看文件 @
75a3b62
...
@@ -377,13 +377,13 @@ namespace OnlineStore.AssemblyLine
...
@@ -377,13 +377,13 @@ namespace OnlineStore.AssemblyLine
private
void
btnSw4Location_Click
(
object
sender
,
EventArgs
e
)
private
void
btnSw4Location_Click
(
object
sender
,
EventArgs
e
)
{
{
LogUtil
.
info
(
"界面点击:"
+
btnFrontStopDown
.
Text
);
LogUtil
.
info
(
"界面点击:"
+
btnFrontStopDown
.
Text
);
BtnMove
(
btnFrontStopDown
,
"
T3-C1前阻挡下降"
,
"
T3-C1前阻挡上升"
,
IO_Type
.
HY_FrontStopDown
);
BtnMove
(
btnFrontStopDown
,
"
▉ T3-C1前阻挡下降"
,
"▉
T3-C1前阻挡上升"
,
IO_Type
.
HY_FrontStopDown
);
}
}
private
void
btn34Top_Click
(
object
sender
,
EventArgs
e
)
private
void
btn34Top_Click
(
object
sender
,
EventArgs
e
)
{
{
LogUtil
.
info
(
"界面点击:"
+
btnStopDown
.
Text
);
LogUtil
.
info
(
"界面点击:"
+
btnStopDown
.
Text
);
BtnMove
(
btnStopDown
,
"
T3-C1前阻挡下降"
,
"T3-C1前
阻挡上升"
,
IO_Type
.
HY_StopDown
);
BtnMove
(
btnStopDown
,
"
▉ T3-C1阻挡下降"
,
"▉ T3-C1
阻挡上升"
,
IO_Type
.
HY_StopDown
);
}
}
private
void
HY_TopCylinder_Down_Click
(
object
sender
,
EventArgs
e
)
private
void
HY_TopCylinder_Down_Click
(
object
sender
,
EventArgs
e
)
...
...
source/AssemblyLineClient/FrmLineStore.Designer.cs
查看文件 @
75a3b62
...
@@ -33,6 +33,7 @@
...
@@ -33,6 +33,7 @@
this
.
tabControl1
=
new
System
.
Windows
.
Forms
.
TabControl
();
this
.
tabControl1
=
new
System
.
Windows
.
Forms
.
TabControl
();
this
.
tabPage1
=
new
System
.
Windows
.
Forms
.
TabPage
();
this
.
tabPage1
=
new
System
.
Windows
.
Forms
.
TabPage
();
this
.
groupBox2
=
new
System
.
Windows
.
Forms
.
GroupBox
();
this
.
groupBox2
=
new
System
.
Windows
.
Forms
.
GroupBox
();
this
.
chbTrayTest
=
new
System
.
Windows
.
Forms
.
CheckBox
();
this
.
chbDisMove
=
new
System
.
Windows
.
Forms
.
CheckBox
();
this
.
chbDisMove
=
new
System
.
Windows
.
Forms
.
CheckBox
();
this
.
lblCardMsg
=
new
System
.
Windows
.
Forms
.
Label
();
this
.
lblCardMsg
=
new
System
.
Windows
.
Forms
.
Label
();
this
.
chbDisHy
=
new
System
.
Windows
.
Forms
.
CheckBox
();
this
.
chbDisHy
=
new
System
.
Windows
.
Forms
.
CheckBox
();
...
@@ -187,6 +188,7 @@
...
@@ -187,6 +188,7 @@
//
//
this
.
groupBox2
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)(((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Bottom
)
this
.
groupBox2
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)(((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Bottom
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)));
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)));
this
.
groupBox2
.
Controls
.
Add
(
this
.
chbTrayTest
);
this
.
groupBox2
.
Controls
.
Add
(
this
.
chbDisMove
);
this
.
groupBox2
.
Controls
.
Add
(
this
.
chbDisMove
);
this
.
groupBox2
.
Controls
.
Add
(
this
.
lblCardMsg
);
this
.
groupBox2
.
Controls
.
Add
(
this
.
lblCardMsg
);
this
.
groupBox2
.
Controls
.
Add
(
this
.
chbDisHy
);
this
.
groupBox2
.
Controls
.
Add
(
this
.
chbDisHy
);
...
@@ -200,10 +202,21 @@
...
@@ -200,10 +202,21 @@
this
.
groupBox2
.
TabIndex
=
200
;
this
.
groupBox2
.
TabIndex
=
200
;
this
.
groupBox2
.
TabStop
=
false
;
this
.
groupBox2
.
TabStop
=
false
;
//
//
// chbTrayTest
//
this
.
chbTrayTest
.
AutoSize
=
true
;
this
.
chbTrayTest
.
Location
=
new
System
.
Drawing
.
Point
(
9
,
22
);
this
.
chbTrayTest
.
Name
=
"chbTrayTest"
;
this
.
chbTrayTest
.
Size
=
new
System
.
Drawing
.
Size
(
168
,
24
);
this
.
chbTrayTest
.
TabIndex
=
203
;
this
.
chbTrayTest
.
Text
=
"托盘横移到出料线测试"
;
this
.
chbTrayTest
.
UseVisualStyleBackColor
=
true
;
this
.
chbTrayTest
.
CheckedChanged
+=
new
System
.
EventHandler
(
this
.
chbTrayTest_CheckedChanged
);
//
// chbDisMove
// chbDisMove
//
//
this
.
chbDisMove
.
AutoSize
=
true
;
this
.
chbDisMove
.
AutoSize
=
true
;
this
.
chbDisMove
.
Location
=
new
System
.
Drawing
.
Point
(
9
,
2
05
);
this
.
chbDisMove
.
Location
=
new
System
.
Drawing
.
Point
(
9
,
2
22
);
this
.
chbDisMove
.
Name
=
"chbDisMove"
;
this
.
chbDisMove
.
Name
=
"chbDisMove"
;
this
.
chbDisMove
.
Size
=
new
System
.
Drawing
.
Size
(
144
,
24
);
this
.
chbDisMove
.
Size
=
new
System
.
Drawing
.
Size
(
144
,
24
);
this
.
chbDisMove
.
TabIndex
=
202
;
this
.
chbDisMove
.
TabIndex
=
202
;
...
@@ -221,7 +234,7 @@
...
@@ -221,7 +234,7 @@
// chbDisHy
// chbDisHy
//
//
this
.
chbDisHy
.
AutoSize
=
true
;
this
.
chbDisHy
.
AutoSize
=
true
;
this
.
chbDisHy
.
Location
=
new
System
.
Drawing
.
Point
(
9
,
1
65
);
this
.
chbDisHy
.
Location
=
new
System
.
Drawing
.
Point
(
9
,
1
87
);
this
.
chbDisHy
.
Name
=
"chbDisHy"
;
this
.
chbDisHy
.
Name
=
"chbDisHy"
;
this
.
chbDisHy
.
Size
=
new
System
.
Drawing
.
Size
(
194
,
24
);
this
.
chbDisHy
.
Size
=
new
System
.
Drawing
.
Size
(
194
,
24
);
this
.
chbDisHy
.
TabIndex
=
201
;
this
.
chbDisHy
.
TabIndex
=
201
;
...
@@ -234,7 +247,7 @@
...
@@ -234,7 +247,7 @@
this
.
label2
.
AutoSize
=
true
;
this
.
label2
.
AutoSize
=
true
;
this
.
label2
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
9F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
label2
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
9F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
label2
.
ForeColor
=
System
.
Drawing
.
Color
.
Red
;
this
.
label2
.
ForeColor
=
System
.
Drawing
.
Color
.
Red
;
this
.
label2
.
Location
=
new
System
.
Drawing
.
Point
(
6
,
2
77
);
this
.
label2
.
Location
=
new
System
.
Drawing
.
Point
(
6
,
2
92
);
this
.
label2
.
Name
=
"label2"
;
this
.
label2
.
Name
=
"label2"
;
this
.
label2
.
Size
=
new
System
.
Drawing
.
Size
(
224
,
17
);
this
.
label2
.
Size
=
new
System
.
Drawing
.
Size
(
224
,
17
);
this
.
label2
.
TabIndex
=
200
;
this
.
label2
.
TabIndex
=
200
;
...
@@ -243,7 +256,7 @@
...
@@ -243,7 +256,7 @@
// chbLeftDis
// chbLeftDis
//
//
this
.
chbLeftDis
.
AutoSize
=
true
;
this
.
chbLeftDis
.
AutoSize
=
true
;
this
.
chbLeftDis
.
Location
=
new
System
.
Drawing
.
Point
(
9
,
29
);
this
.
chbLeftDis
.
Location
=
new
System
.
Drawing
.
Point
(
9
,
67
);
this
.
chbLeftDis
.
Name
=
"chbLeftDis"
;
this
.
chbLeftDis
.
Name
=
"chbLeftDis"
;
this
.
chbLeftDis
.
Size
=
new
System
.
Drawing
.
Size
(
277
,
24
);
this
.
chbLeftDis
.
Size
=
new
System
.
Drawing
.
Size
(
277
,
24
);
this
.
chbLeftDis
.
TabIndex
=
196
;
this
.
chbLeftDis
.
TabIndex
=
196
;
...
@@ -254,7 +267,7 @@
...
@@ -254,7 +267,7 @@
// chbDisSL
// chbDisSL
//
//
this
.
chbDisSL
.
AutoSize
=
true
;
this
.
chbDisSL
.
AutoSize
=
true
;
this
.
chbDisSL
.
Location
=
new
System
.
Drawing
.
Point
(
9
,
1
25
);
this
.
chbDisSL
.
Location
=
new
System
.
Drawing
.
Point
(
9
,
1
52
);
this
.
chbDisSL
.
Name
=
"chbDisSL"
;
this
.
chbDisSL
.
Name
=
"chbDisSL"
;
this
.
chbDisSL
.
Size
=
new
System
.
Drawing
.
Size
(
192
,
24
);
this
.
chbDisSL
.
Size
=
new
System
.
Drawing
.
Size
(
192
,
24
);
this
.
chbDisSL
.
TabIndex
=
199
;
this
.
chbDisSL
.
TabIndex
=
199
;
...
@@ -265,7 +278,7 @@
...
@@ -265,7 +278,7 @@
// chbRightDis
// chbRightDis
//
//
this
.
chbRightDis
.
AutoSize
=
true
;
this
.
chbRightDis
.
AutoSize
=
true
;
this
.
chbRightDis
.
Location
=
new
System
.
Drawing
.
Point
(
9
,
69
);
this
.
chbRightDis
.
Location
=
new
System
.
Drawing
.
Point
(
9
,
101
);
this
.
chbRightDis
.
Name
=
"chbRightDis"
;
this
.
chbRightDis
.
Name
=
"chbRightDis"
;
this
.
chbRightDis
.
Size
=
new
System
.
Drawing
.
Size
(
293
,
24
);
this
.
chbRightDis
.
Size
=
new
System
.
Drawing
.
Size
(
293
,
24
);
this
.
chbRightDis
.
TabIndex
=
197
;
this
.
chbRightDis
.
TabIndex
=
197
;
...
@@ -1259,6 +1272,7 @@
...
@@ -1259,6 +1272,7 @@
private
System
.
Windows
.
Forms
.
CheckBox
chbDisHy
;
private
System
.
Windows
.
Forms
.
CheckBox
chbDisHy
;
private
System
.
Windows
.
Forms
.
Label
label3
;
private
System
.
Windows
.
Forms
.
Label
label3
;
private
System
.
Windows
.
Forms
.
Label
label4
;
private
System
.
Windows
.
Forms
.
Label
label4
;
private
System
.
Windows
.
Forms
.
CheckBox
chbTrayTest
;
}
}
}
}
source/AssemblyLineClient/FrmLineStore.cs
查看文件 @
75a3b62
...
@@ -1116,17 +1116,18 @@ namespace OnlineStore.AssemblyLine
...
@@ -1116,17 +1116,18 @@ namespace OnlineStore.AssemblyLine
if
(
LineManager
.
DisLeftOutLine
)
if
(
LineManager
.
DisLeftOutLine
)
{
{
List
<
int
>
leftHYs
=
new
List
<
int
>()
{
205
,
207
,
210
};
foreach
(
int
id
in
leftHYs
)
{
LineManager
.
Line
.
HYEquipMap
[
id
].
IsDebug
=
true
;
}
LogUtil
.
info
(
"界面点击勾选:"
+
chbLeftDis
.
Text
+
"="
+
LineManager
.
DisLeftOutLine
+
",设置 HY5,HY7,HY10 为调试状态"
);
LogUtil
.
info
(
"界面点击勾选:"
+
chbLeftDis
.
Text
+
"="
+
LineManager
.
DisLeftOutLine
+
",设置 HY5,HY7,HY10 为调试状态"
);
}
}
else
else
{
{
LogUtil
.
info
(
"界面点击勾选:"
+
chbLeftDis
.
Text
+
"="
+
LineManager
.
DisLeftOutLine
);
LogUtil
.
info
(
"界面点击勾选:"
+
chbLeftDis
.
Text
+
"="
+
LineManager
.
DisLeftOutLine
);
}
}
List
<
int
>
leftHYs
=
new
List
<
int
>()
{
205
,
207
,
210
};
foreach
(
int
id
in
leftHYs
)
{
bool
isD
=
LineManager
.
DisLeftOutLine
?
true
:
LineManager
.
Line
.
HYEquipMap
[
id
].
Config
.
IsDebug
.
Equals
(
1
);
LineManager
.
Line
.
HYEquipMap
[
id
].
IsDebug
=
isD
;
}
}
}
private
void
chbRightDis_CheckedChanged
(
object
sender
,
EventArgs
e
)
private
void
chbRightDis_CheckedChanged
(
object
sender
,
EventArgs
e
)
...
@@ -1141,18 +1142,19 @@ namespace OnlineStore.AssemblyLine
...
@@ -1141,18 +1142,19 @@ namespace OnlineStore.AssemblyLine
}
}
LineManager
.
DisRightOutLine
=
chbRightDis
.
Checked
;
LineManager
.
DisRightOutLine
=
chbRightDis
.
Checked
;
if
(
LineManager
.
DisRightOutLine
)
if
(
LineManager
.
DisRightOutLine
)
{
{
List
<
int
>
rightHYs
=
new
List
<
int
>()
{
212
,
214
,
217
};
foreach
(
int
id
in
rightHYs
)
{
LineManager
.
Line
.
HYEquipMap
[
id
].
IsDebug
=
true
;
}
LogUtil
.
info
(
"界面点击勾选:"
+
chbRightDis
.
Text
+
"="
+
LineManager
.
DisRightOutLine
+
",设置 HY12,HY14,HY17 为调试状态"
);
LogUtil
.
info
(
"界面点击勾选:"
+
chbRightDis
.
Text
+
"="
+
LineManager
.
DisRightOutLine
+
",设置 HY12,HY14,HY17 为调试状态"
);
}
}
else
else
{
{
LogUtil
.
info
(
"界面点击勾选:"
+
chbRightDis
.
Text
+
"="
+
LineManager
.
DisRightOutLine
);
LogUtil
.
info
(
"界面点击勾选:"
+
chbRightDis
.
Text
+
"="
+
LineManager
.
DisRightOutLine
);
}
}
List
<
int
>
rightHYs
=
new
List
<
int
>()
{
212
,
214
,
217
};
foreach
(
int
id
in
rightHYs
)
{
bool
isD
=
LineManager
.
DisRightOutLine
?
true
:
LineManager
.
Line
.
HYEquipMap
[
id
].
Config
.
IsDebug
.
Equals
(
1
);
LineManager
.
Line
.
HYEquipMap
[
id
].
IsDebug
=
isD
;
}
}
}
private
void
chbDisSL_CheckedChanged
(
object
sender
,
EventArgs
e
)
private
void
chbDisSL_CheckedChanged
(
object
sender
,
EventArgs
e
)
...
@@ -1168,17 +1170,18 @@ namespace OnlineStore.AssemblyLine
...
@@ -1168,17 +1170,18 @@ namespace OnlineStore.AssemblyLine
LineManager
.
DisSLEquip
=
chbDisSL
.
Checked
;
LineManager
.
DisSLEquip
=
chbDisSL
.
Checked
;
if
(
LineManager
.
DisSLEquip
)
if
(
LineManager
.
DisSLEquip
)
{
{
List
<
int
>
rightHYs
=
new
List
<
int
>()
{
101
,
102
,
103
,
104
,
105
};
foreach
(
int
id
in
rightHYs
)
{
LineManager
.
Line
.
FeedingEquipMap
[
id
].
IsDebug
=
true
;
}
LogUtil
.
info
(
"界面点击勾选:"
+
chbDisSL
.
Text
+
"="
+
LineManager
.
DisSLEquip
+
",设置所有上料模块(T1~T5)为调试状态"
);
LogUtil
.
info
(
"界面点击勾选:"
+
chbDisSL
.
Text
+
"="
+
LineManager
.
DisSLEquip
+
",设置所有上料模块(T1~T5)为调试状态"
);
}
}
else
else
{
{
LogUtil
.
info
(
"界面点击勾选:"
+
chbDisSL
.
Text
+
"="
+
LineManager
.
DisSLEquip
);
LogUtil
.
info
(
"界面点击勾选:"
+
chbDisSL
.
Text
+
"="
+
LineManager
.
DisSLEquip
);
}
}
List
<
int
>
rightHYs
=
new
List
<
int
>()
{
101
,
102
,
103
,
104
,
105
};
foreach
(
int
id
in
rightHYs
)
{
bool
isD
=
LineManager
.
DisSLEquip
?
true
:
LineManager
.
Line
.
FeedingEquipMap
[
id
].
Config
.
IsDebug
.
Equals
(
1
);
LineManager
.
Line
.
FeedingEquipMap
[
id
].
IsDebug
=
isD
;
}
}
}
private
void
checkBox1_CheckedChanged
(
object
sender
,
EventArgs
e
)
private
void
checkBox1_CheckedChanged
(
object
sender
,
EventArgs
e
)
...
@@ -1194,16 +1197,17 @@ namespace OnlineStore.AssemblyLine
...
@@ -1194,16 +1197,17 @@ namespace OnlineStore.AssemblyLine
LineManager
.
DisAllHy
=
chbDisHy
.
Checked
;
LineManager
.
DisAllHy
=
chbDisHy
.
Checked
;
if
(
LineManager
.
DisAllHy
)
if
(
LineManager
.
DisAllHy
)
{
{
foreach
(
int
id
in
LineManager
.
Line
.
HYEquipMap
.
Keys
)
{
LineManager
.
Line
.
HYEquipMap
[
id
].
IsDebug
=
true
;
}
LogUtil
.
info
(
"界面点击勾选:"
+
chbDisHy
.
Text
+
"="
+
LineManager
.
DisAllHy
+
",设置所有HY为调试状态"
);
LogUtil
.
info
(
"界面点击勾选:"
+
chbDisHy
.
Text
+
"="
+
LineManager
.
DisAllHy
+
",设置所有HY为调试状态"
);
}
}
else
else
{
{
LogUtil
.
info
(
"界面点击勾选:"
+
chbDisHy
.
Text
+
"="
+
LineManager
.
DisAllHy
);
LogUtil
.
info
(
"界面点击勾选:"
+
chbDisHy
.
Text
+
"="
+
LineManager
.
DisAllHy
);
}
}
foreach
(
int
id
in
LineManager
.
Line
.
HYEquipMap
.
Keys
)
{
bool
isD
=
LineManager
.
DisAllHy
?
true
:
LineManager
.
Line
.
HYEquipMap
[
id
].
Config
.
IsDebug
.
Equals
(
1
);
LineManager
.
Line
.
HYEquipMap
[
id
].
IsDebug
=
isD
;
}
}
}
private
void
chbDisMove_CheckedChanged
(
object
sender
,
EventArgs
e
)
private
void
chbDisMove_CheckedChanged
(
object
sender
,
EventArgs
e
)
...
@@ -1219,16 +1223,31 @@ namespace OnlineStore.AssemblyLine
...
@@ -1219,16 +1223,31 @@ namespace OnlineStore.AssemblyLine
LineManager
.
DisAllMove
=
chbDisMove
.
Checked
;
LineManager
.
DisAllMove
=
chbDisMove
.
Checked
;
if
(
LineManager
.
DisAllMove
)
if
(
LineManager
.
DisAllMove
)
{
{
foreach
(
int
id
in
LineManager
.
Line
.
MoveEquipMap
.
Keys
)
{
LineManager
.
Line
.
MoveEquipMap
[
id
].
IsDebug
=
true
;
}
LogUtil
.
info
(
"界面点击勾选:"
+
chbDisMove
.
Text
+
"="
+
LineManager
.
DisAllMove
+
",设置所有进仓为调试状态"
);
LogUtil
.
info
(
"界面点击勾选:"
+
chbDisMove
.
Text
+
"="
+
LineManager
.
DisAllMove
+
",设置所有进仓为调试状态"
);
}
}
else
else
{
{
LogUtil
.
info
(
"界面点击勾选:"
+
chbDisMove
.
Text
+
"="
+
LineManager
.
DisAllMove
);
LogUtil
.
info
(
"界面点击勾选:"
+
chbDisMove
.
Text
+
"="
+
LineManager
.
DisAllMove
);
}
}
foreach
(
int
id
in
LineManager
.
Line
.
MoveEquipMap
.
Keys
)
{
bool
isD
=
LineManager
.
DisAllMove
?
true
:
LineManager
.
Line
.
MoveEquipMap
[
id
].
Config
.
IsDebug
.
Equals
(
1
);
LineManager
.
Line
.
MoveEquipMap
[
id
].
IsDebug
=
isD
;
}
}
private
void
chbTrayTest_CheckedChanged
(
object
sender
,
EventArgs
e
)
{
if
(!
LoadOk
)
{
return
;
}
if
(
LineManager
.
TrayToOutLineTest
.
Equals
(
chbTrayTest
.
Checked
))
{
return
;
}
LineManager
.
TrayToOutLineTest
=
chbTrayTest
.
Checked
;
LogUtil
.
info
(
"界面点击勾选:"
+
chbTrayTest
.
Text
+
"="
+
LineManager
.
TrayToOutLineTest
);
}
}
}
}
}
}
source/AssemblyLineClient/记录.txt
查看文件 @
75a3b62
...
@@ -33,6 +33,7 @@
...
@@ -33,6 +33,7 @@
上料模块,顶升气缸升降时,出口顶升气缸同时动作。
上料模块,顶升气缸升降时,出口顶升气缸同时动作。
上料机构,入料横移到放料端时,再检测料盘宽度
...
...
source/DeviceLibrary/assemblyLine/FeedingEquip.cs
查看文件 @
75a3b62
...
@@ -20,6 +20,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -20,6 +20,7 @@ namespace OnlineStore.DeviceLibrary
public
FeedingEquip_Config
Config
;
public
FeedingEquip_Config
Config
;
public
bool
OutEndSendShelfOut
=
false
;
public
bool
OutEndSendShelfOut
=
false
;
public
AxisBean
BatchAxis
=
null
;
public
AxisBean
BatchAxis
=
null
;
public
bool
HasOutLine
=
false
;
//是否有出料线体,T3和T4
public
FeedingEquip
(
string
cid
,
FeedingEquip_Config
config
)
public
FeedingEquip
(
string
cid
,
FeedingEquip_Config
config
)
{
{
this
.
DeviceID
=
config
.
Id
;
this
.
DeviceID
=
config
.
Id
;
...
@@ -35,6 +36,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -35,6 +36,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo
=
new
LineMoveInfo
(
DeviceID
,
"["
+
Name
.
Trim
()
+
"-Move]"
);
MoveInfo
=
new
LineMoveInfo
(
DeviceID
,
"["
+
Name
.
Trim
()
+
"-Move]"
);
SecondMoveInfo
=
new
LineMoveInfo
(
DeviceID
,
"["
+
Name
.
Trim
()
+
"-SMove]"
);
SecondMoveInfo
=
new
LineMoveInfo
(
DeviceID
,
"["
+
Name
.
Trim
()
+
"-SMove]"
);
RFIDIP
=
RFIDManager
.
GetRFIP
(
DeviceID
);
RFIDIP
=
RFIDManager
.
GetRFIP
(
DeviceID
);
HasOutLine
=
config
.
DOList
.
ContainsKey
(
IO_Type
.
SL_OutLine_Run
);
}
}
public
override
bool
StartRun
(
bool
isDebug
=
false
)
public
override
bool
StartRun
(
bool
isDebug
=
false
)
...
@@ -109,7 +111,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -109,7 +111,7 @@ namespace OnlineStore.DeviceLibrary
OutStoreHeight
=
-
1
;
OutStoreHeight
=
-
1
;
//OutStoreCount = 0;
//OutStoreCount = 0;
BatchAxisStopCheck
();
BatchAxisStopCheck
();
ResetClearData
();
ResetClearData
();
IOMove
(
IO_Type
.
SL_HddLed
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_HddLed
,
IO_VALUE
.
HIGH
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FR_01_StopUp
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FR_01_StopUp
);
...
@@ -118,10 +120,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -118,10 +120,9 @@ namespace OnlineStore.DeviceLibrary
IOMove
(
IO_Type
.
SL_Out_StopDown
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_Out_StopDown
,
IO_VALUE
.
LOW
);
//夹紧气缸放松
//夹紧气缸放松
CylinderMove
(
null
,
IO_Type
.
SL_ClampCylinder_Work
,
IO_Type
.
SL_ClampCylinder_Relax
);
CylinderMove
(
null
,
IO_Type
.
SL_ClampCylinder_Work
,
IO_Type
.
SL_ClampCylinder_Relax
);
if
(
Config
.
DOList
.
ContainsKey
(
IO_Type
.
SL_RollerLine_Run
))
{
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
LOW
);
}
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Entry_StopDown
,
IO_VALUE
.
LOW
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Entry_StopDown
,
IO_VALUE
.
LOW
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Buffer_StopDown
,
IO_VALUE
.
LOW
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Buffer_StopDown
,
IO_VALUE
.
LOW
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Out_StopDown
,
IO_VALUE
.
LOW
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Out_StopDown
,
IO_VALUE
.
LOW
));
...
@@ -154,6 +155,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -154,6 +155,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
3000
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
3000
));
//线体开始转动
//线体开始转动
IOMove
(
IO_Type
.
SL_Line_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_Line_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_OutLine_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
HIGH
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Location_Check
,
IO_VALUE
.
HIGH
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Location_Check
,
IO_VALUE
.
HIGH
));
...
@@ -165,6 +167,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -165,6 +167,7 @@ namespace OnlineStore.DeviceLibrary
LogInfo
(
MoveInfo
.
MoveType
+
":"
+
MoveInfo
.
SLog
+
":链条停止转动,上料横移机构上升,顶升气缸下降,所有阻挡气缸上升"
);
LogInfo
(
MoveInfo
.
MoveType
+
":"
+
MoveInfo
.
SLog
+
":链条停止转动,上料横移机构上升,顶升气缸下降,所有阻挡气缸上升"
);
//线体停止
//线体停止
IOMove
(
IO_Type
.
SL_Line_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_Line_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_OutLine_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
LOW
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Line_Run
,
IO_VALUE
.
LOW
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Line_Run
,
IO_VALUE
.
LOW
));
...
@@ -261,20 +264,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -261,20 +264,7 @@ namespace OnlineStore.DeviceLibrary
case
LineMoveStep
.
FR_17_ClampCheck
:
case
LineMoveStep
.
FR_17_ClampCheck
:
LogInfo
(
"重置完成!"
);
LogInfo
(
"重置完成!"
);
if
(
IOValue
(
IO_Type
.
SL_Out_Check
).
Equals
(
IO_VALUE
.
HIGH
))
{
ClientLevel
level
=
ClientLevel
.
Low
;
if
(
IOValue
(
IO_Type
.
SL_Location_Check
).
Equals
(
IO_VALUE
.
HIGH
))
{
level
=
ClientLevel
.
Middle
;
}
if
(
Config
.
IsCanOut
.
Equals
(
1
))
{
level
=
ClientLevel
.
High
;
}
LogInfo
(
"重置完成,出口检测到有料架,调用 "
+
Config
.
AgvOutName
+
" AgvClient.NeedLeave"
);
AgvClient
.
NeedLeave
(
Config
.
AgvOutName
,
LastOutShelfId
,
level
);
}
MoveEndS
();
MoveEndS
();
break
;
break
;
default
:
break
;
default
:
break
;
...
@@ -287,7 +277,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -287,7 +277,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo
.
EndMove
();
MoveInfo
.
EndMove
();
SecondMoveInfo
.
EndMove
();
SecondMoveInfo
.
EndMove
();
//StopMove时设置状态为none
//StopMove时设置状态为none
AgvClient
.
SetStatus
(
Config
.
AgvInName
,
""
,
ClientAction
.
None
,
ClientLevel
.
Low
,
true
);
AgvClient
.
SetStatus
(
Config
.
AgvInName
,
""
,
ClientAction
.
None
,
ClientLevel
.
Low
,
true
);
AgvClient
.
SetStatus
(
Config
.
AgvOutName
,
""
,
ClientAction
.
None
,
ClientLevel
.
Low
,
true
);
AgvClient
.
SetStatus
(
Config
.
AgvOutName
,
""
,
ClientAction
.
None
,
ClientLevel
.
Low
,
true
);
BatchAxisStopCheck
();
BatchAxisStopCheck
();
...
@@ -295,14 +285,12 @@ namespace OnlineStore.DeviceLibrary
...
@@ -295,14 +285,12 @@ namespace OnlineStore.DeviceLibrary
UpdownAxis
.
SuddenStop
();
UpdownAxis
.
SuddenStop
();
CloseAxis
(
BatchAxis
);
CloseAxis
(
BatchAxis
);
CloseAxis
(
UpdownAxis
);
CloseAxis
(
UpdownAxis
);
CheckAndMove
(
IO_Type
.
SL_Line_Run
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
SL_Line_Run
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
SL_OutLine_Run
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
SL_OutLine_Run
,
IO_VALUE
.
LOW
);
if
(
Config
.
DOList
.
ContainsKey
(
IO_Type
.
SL_RollerLine_Run
))
{
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
LOW
);
}
CheckAndMove
(
IO_Type
.
SL_Entry_StopDown
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
SL_Entry_StopDown
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
SL_Buffer_StopDown
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
SL_Buffer_StopDown
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
SL_Out_StopDown
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
SL_Out_StopDown
,
IO_VALUE
.
LOW
);
...
@@ -380,65 +368,13 @@ namespace OnlineStore.DeviceLibrary
...
@@ -380,65 +368,13 @@ namespace OnlineStore.DeviceLibrary
StartOutStoreP
();
StartOutStoreP
();
}
}
}
}
if
(
NoErrorAlarm
())
{
if
(
IOValue
(
IO_Type
.
SL_Out_Check
).
Equals
(
IO_VALUE
.
HIGH
))
{
if
(
CheckStopWatch
(
needLeaveWatch
,
3000
))
{
ClientLevel
level
=
ClientLevel
.
Low
;
if
(
Config
.
IsCanOut
.
Equals
(
1
))
{
level
=
ClientLevel
.
High
;
}
else
if
(
IOValue
(
IO_Type
.
SL_Location_Check
).
Equals
(
IO_VALUE
.
HIGH
)
||
(!
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
)))
{
level
=
ClientLevel
.
Middle
;
}
//线体出口检测到料架,需要通知AGV小车
AgvClient
.
NeedLeave
(
Config
.
AgvOutName
,
LastOutShelfId
,
level
);
}
}
else
{
needLeaveWatch
.
Stop
();
AgvClient
.
SetToNone
(
Config
.
AgvOutName
);
}
//入口无料架,mayEnter
if
(
IOValue
(
IO_Type
.
SL_Entry_Check
).
Equals
(
IO_VALUE
.
LOW
))
{
if
(
CheckStopWatch
(
needEnterWatch
,
3000
))
{
ClientLevel
level
=
ClientLevel
.
Low
;
if
(
Config
.
IsCanOut
.
Equals
(
1
))
{
//如果是出料模块且当前无料架
if
(
IOValue
(
IO_Type
.
SL_Location_Check
).
Equals
(
IO_VALUE
.
LOW
)
&&
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
))
{
level
=
ClientLevel
.
High
;
}
}
AgvClient
.
NeedEnter
(
Config
.
AgvInName
,
""
,
level
);
}
}
else
{
needEnterWatch
.
Stop
();
AgvClient
.
SetToNone
(
Config
.
AgvInName
);
}
}
else
{
needLeaveWatch
.
Stop
();
AgvClient
.
SetToNone
(
Config
.
AgvOutName
);
needEnterWatch
.
Stop
();
AgvClient
.
SetToNone
(
Config
.
AgvInName
);
}
AgvStatusPro
();
LedProcess
();
LedProcess
();
}
}
private
Stopwatch
needEnterWatch
=
new
Stopwatch
();
private
Stopwatch
needEnterWatch
=
new
Stopwatch
();
private
Stopwatch
needLeaveWatch
=
new
Stopwatch
();
private
Stopwatch
needLeaveWatch
=
new
Stopwatch
();
...
@@ -750,7 +686,103 @@ namespace OnlineStore.DeviceLibrary
...
@@ -750,7 +686,103 @@ namespace OnlineStore.DeviceLibrary
#
endregion
#
endregion
#
region
AGV
#
region
AGV
#
region
AGV
状态处理
//private void ResetEndAgvPro()
//{
// if (IOValue(IO_Type.SL_Out_Check).Equals(IO_VALUE.HIGH))
// {
// ClientLevel level = ClientLevel.Low;
// if (IOValue(IO_Type.SL_Location_Check).Equals(IO_VALUE.HIGH))
// {
// level = ClientLevel.Middle;
// }
// if (Config.IsCanOut.Equals(1))
// {
// level = ClientLevel.High;
// }
// LogInfo("重置完成,出口检测到有料架,调用 " + Config.AgvOutName + " AgvClient.NeedLeave");
// AgvClient.NeedLeave(Config.AgvOutName, LastOutShelfId, level);
// }
//}
private
void
AgvStatusPro
()
{
if
(
NoErrorAlarm
())
{
bool
HasOutLine
=
Config
.
DOList
.
ContainsKey
(
IO_Type
.
SL_OutLine_Run
);
if
(
HasOutLine
&&
IOValue
(
IO_Type
.
SL_OutLine_Check
).
Equals
(
IO_VALUE
.
HIGH
))
{
if
(
CheckStopWatch
(
needLeaveWatch
,
3000
))
{
ClientLevel
level
=
ClientLevel
.
Low
;
if
(
Config
.
IsCanOut
.
Equals
(
1
))
{
level
=
ClientLevel
.
High
;
}
else
if
(
IOValue
(
IO_Type
.
SL_Out_Check
).
Equals
(
IO_VALUE
.
HIGH
)
||
(!
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
)))
{
level
=
ClientLevel
.
Middle
;
}
//线体出口检测到料架,需要通知AGV小车
AgvClient
.
NeedLeave
(
Config
.
AgvOutName
,
LastOutShelfId
,
level
);
}
}
else
if
((!
HasOutLine
)
&&
IOValue
(
IO_Type
.
SL_Out_Check
).
Equals
(
IO_VALUE
.
HIGH
))
{
if
(
CheckStopWatch
(
needLeaveWatch
,
3000
))
{
ClientLevel
level
=
ClientLevel
.
Low
;
if
(
Config
.
IsCanOut
.
Equals
(
1
))
{
level
=
ClientLevel
.
High
;
}
else
if
(
IOValue
(
IO_Type
.
SL_Location_Check
).
Equals
(
IO_VALUE
.
HIGH
)
||
(!
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
)))
{
level
=
ClientLevel
.
Middle
;
}
//线体出口检测到料架,需要通知AGV小车
AgvClient
.
NeedLeave
(
Config
.
AgvOutName
,
LastOutShelfId
,
level
);
}
}
else
{
needLeaveWatch
.
Stop
();
AgvClient
.
SetToNone
(
Config
.
AgvOutName
);
}
//入口无料架,mayEnter
if
(
IOValue
(
IO_Type
.
SL_Entry_Check
).
Equals
(
IO_VALUE
.
LOW
))
{
if
(
CheckStopWatch
(
needEnterWatch
,
3000
))
{
ClientLevel
level
=
ClientLevel
.
Low
;
if
(
Config
.
IsCanOut
.
Equals
(
1
))
{
//如果是出料模块且当前无料架
if
(
IOValue
(
IO_Type
.
SL_Location_Check
).
Equals
(
IO_VALUE
.
LOW
)
&&
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
))
{
level
=
ClientLevel
.
High
;
}
}
AgvClient
.
NeedEnter
(
Config
.
AgvInName
,
""
,
level
);
}
}
else
{
needEnterWatch
.
Stop
();
AgvClient
.
SetToNone
(
Config
.
AgvInName
);
}
}
else
{
needLeaveWatch
.
Stop
();
AgvClient
.
SetToNone
(
Config
.
AgvOutName
);
needEnterWatch
.
Stop
();
AgvClient
.
SetToNone
(
Config
.
AgvInName
);
}
}
#
endregion
internal
void
AgvArrive
(
string
nodeId
,
string
rfid
)
internal
void
AgvArrive
(
string
nodeId
,
string
rfid
)
{
{
string
logN
=
Name
+
"收到 AgvArrive 事件 ["
+
nodeId
+
"] ["
+
rfid
+
"] "
;
string
logN
=
Name
+
"收到 AgvArrive 事件 ["
+
nodeId
+
"] ["
+
rfid
+
"] "
;
...
@@ -797,33 +829,42 @@ namespace OnlineStore.DeviceLibrary
...
@@ -797,33 +829,42 @@ namespace OnlineStore.DeviceLibrary
//AGV已到达,将料架送入AGV中
//AGV已到达,将料架送入AGV中
Task
.
Factory
.
StartNew
(
delegate
Task
.
Factory
.
StartNew
(
delegate
{
{
string
checkIo
=
IO_Type
.
SL_Out_Check
;
string
lineDo
=
IO_Type
.
SL_OutSideWay_Run
;
string
stopDo
=
IO_Type
.
SL_Out_StopDown
;
if
(
HasOutLine
)
{
checkIo
=
IO_Type
.
SL_OutLine_Check
;
lineDo
=
IO_Type
.
SL_OutLine_Run
;
}
string
logName
=
Name
+
"["
+
Config
.
AgvOutName
+
"] 料架送入AGV "
;
string
logName
=
Name
+
"["
+
Config
.
AgvOutName
+
"] 料架送入AGV "
;
try
try
{
{
LogUtil
.
info
(
logName
+
"开始,先设置状态为None"
);
LogUtil
.
info
(
logName
+
"开始,先设置状态为None"
);
AgvClient
.
SetStatus
(
Config
.
AgvOutName
,
LastOutShelfId
,
ClientAction
.
None
,
ClientLevel
.
High
,
true
);
AgvClient
.
SetStatus
(
Config
.
AgvOutName
,
LastOutShelfId
,
ClientAction
.
None
,
ClientLevel
.
High
,
true
);
if
(
IOValue
(
IO_Type
.
SL_Out_Check
).
Equals
(
IO_VALUE
.
HIGH
))
if
(
IOValue
(
checkIo
).
Equals
(
IO_VALUE
.
HIGH
))
{
{
// AgvClient.SetStatus(Config.AgvOutName,"",ClientAction.MayLeave,ClientLevel.High);
// AgvClient.SetStatus(Config.AgvOutName,"",ClientAction.MayLeave,ClientLevel.High);
ProcessShelfOut
=
true
;
ProcessShelfOut
=
true
;
//出口阻挡下降,出口线体转动
//出口阻挡下降,出口线体转动
IOMove
(
IO_Type
.
SL_Out_StopDown
,
IO_VALUE
.
HIGH
);
IOMove
(
stopDo
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
lineDo
,
IO_VALUE
.
HIGH
);
bool
result
=
WaitIo
(
IO_Type
.
SL_Out_Check
,
IO_VALUE
.
LOW
,
60000
);
bool
result
=
WaitIo
(
checkIo
,
IO_VALUE
.
LOW
,
60000
);
if
(!
result
)
if
(!
result
)
{
{
LogUtil
.
info
(
logName
+
" 等待
SL_Out_Check=LOW超时,等待8000后停止
转动,发送FinishLeave"
);
LogUtil
.
info
(
logName
+
" 等待
"
+
checkIo
+
"=LOW超时,等待8000后停止"
+
lineDo
+
"
转动,发送FinishLeave"
);
}
}
else
else
{
{
LogUtil
.
info
(
logName
+
" 已收到
SL_Out_Check=LOW ,等待8000后停止
转动,发送FinishLeave"
);
LogUtil
.
info
(
logName
+
" 已收到
"
+
checkIo
+
"=LOW ,等待8000后停止"
+
lineDo
+
"
转动,发送FinishLeave"
);
}
}
//再转动2000
//再转动2000
Thread
.
Sleep
(
8000
);
Thread
.
Sleep
(
8000
);
//停止转动 ,阻挡上升
//停止转动 ,阻挡上升
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
LOW
);
IOMove
(
lineDo
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_Out_StopDown
,
IO_VALUE
.
LOW
);
IOMove
(
stopDo
,
IO_VALUE
.
LOW
);
AgvClient
.
SetStatus
(
Config
.
AgvOutName
,
LastOutShelfId
,
ClientAction
.
FinishLeave
,
ClientLevel
.
High
,
true
);
AgvClient
.
SetStatus
(
Config
.
AgvOutName
,
LastOutShelfId
,
ClientAction
.
FinishLeave
,
ClientLevel
.
High
,
true
);
Thread
.
Sleep
(
1000
);
Thread
.
Sleep
(
1000
);
...
@@ -847,7 +888,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -847,7 +888,7 @@ namespace OnlineStore.DeviceLibrary
}
}
finally
finally
{
{
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
LOW
);
IOMove
(
lineDo
,
IO_VALUE
.
LOW
);
ProcessShelfOut
=
false
;
ProcessShelfOut
=
false
;
}
}
});
});
...
...
source/DeviceLibrary/assemblyLine/FeedingEquip_InStore.cs
查看文件 @
75a3b62
...
@@ -207,7 +207,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -207,7 +207,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_03_FixedUp
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_03_FixedUp
);
InLog
(
"料架入库"
+
MoveInfo
.
SLog
+
":固定气缸上升"
);
InLog
(
"料架入库"
+
MoveInfo
.
SLog
+
":固定气缸上升"
);
FixedCylinderUp
(
MoveInfo
);
FixedCylinderUp
(
MoveInfo
);
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_03_FixedUp
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_03_FixedUp
))
{
{
...
@@ -252,22 +252,22 @@ namespace OnlineStore.DeviceLibrary
...
@@ -252,22 +252,22 @@ namespace OnlineStore.DeviceLibrary
MoveEndS
();
MoveEndS
();
InLog
(
" 未检测到料架,入料结束"
);
InLog
(
" 未检测到料架,入料结束"
);
}
}
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_07_LocationUp
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_07_LocationUp
))
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_08_FixedDown
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_08_FixedDown
);
InLog
(
"料架入库: "
+
MoveInfo
.
SLog
+
" 固定气缸下降"
);
InLog
(
"料架入库: "
+
MoveInfo
.
SLog
+
" 固定气缸下降"
);
FixedCylinderDown
(
MoveInfo
);
FixedCylinderDown
(
MoveInfo
);
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_08_FixedDown
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_08_FixedDown
))
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_11_BatchAxisToP2
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_11_BatchAxisToP2
);
InLog
(
"料架入库"
+
MoveInfo
.
SLog
+
":提升轴下降到位P2 ["
+
Config
.
BatchAxisP2
+
"] "
);
InLog
(
"料架入库"
+
MoveInfo
.
SLog
+
":提升轴下降到位P2 ["
+
Config
.
BatchAxisP2
+
"] "
);
if
(!
ProcessShelfEnter
)
if
(!
ProcessShelfEnter
)
{
{
IOMove
(
IO_Type
.
SL_Line_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_Line_Run
,
IO_VALUE
.
LOW
);
}
}
BatchAxis
.
AbsMove
(
MoveInfo
,
Config
.
BatchAxisP2
,
Config
.
BatchAxis_P2Speed
);
BatchAxis
.
AbsMove
(
MoveInfo
,
Config
.
BatchAxisP2
,
Config
.
BatchAxis_P2Speed
);
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_11_BatchAxisToP2
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_11_BatchAxisToP2
))
{
{
...
@@ -327,14 +327,14 @@ namespace OnlineStore.DeviceLibrary
...
@@ -327,14 +327,14 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
MoveInfo
.
IsTimeOut
(
60
))
else
if
(
MoveInfo
.
IsTimeOut
(
60
))
{
{
MoveTimeOut
(
MoveInfo
,
"扫码结束超时"
);
MoveTimeOut
(
MoveInfo
,
"扫码结束超时"
);
}
}
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_21_CylinderTake
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_21_CylinderTake
))
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_22_UpdownToP3
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_22_UpdownToP3
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
500
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
500
));
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":升降轴到P3["
+
Config
.
UpDownAxisP3
+
"]"
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":升降轴到P3["
+
Config
.
UpDownAxisP3
+
"]"
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
UpDownAxisP3
,
Config
.
UpdownAxis_P3Speed
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
UpDownAxisP3
,
Config
.
UpdownAxis_P3Speed
);
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_22_UpdownToP3
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_22_UpdownToP3
))
...
@@ -346,7 +346,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -346,7 +346,7 @@ namespace OnlineStore.DeviceLibrary
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_23_CylinderTighten
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_23_CylinderTighten
))
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_24_UpdownToP1
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_24_UpdownToP1
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":升降伺服到P1点 ["
+
Config
.
UpDownAxisP1
+
"]"
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":升降伺服到P1点 ["
+
Config
.
UpDownAxisP1
+
"]"
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
UpDownAxisP1
,
Config
.
UpdownAxis_P1Speed
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
UpDownAxisP1
,
Config
.
UpdownAxis_P1Speed
);
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_24_UpdownToP1
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_24_UpdownToP1
))
...
@@ -361,7 +361,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -361,7 +361,7 @@ namespace OnlineStore.DeviceLibrary
else
else
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_24_UpdownToP1
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_24_UpdownToP1
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":升降伺服到P1点 ["
+
Config
.
UpDownAxisP1
+
"]"
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":升降伺服到P1点 ["
+
Config
.
UpDownAxisP1
+
"]"
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
UpDownAxisP1
,
Config
.
UpdownAxis_P1Speed
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
UpDownAxisP1
,
Config
.
UpdownAxis_P1Speed
);
}
}
}
}
...
@@ -369,47 +369,23 @@ namespace OnlineStore.DeviceLibrary
...
@@ -369,47 +369,23 @@ namespace OnlineStore.DeviceLibrary
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_26_BatchAxisToP3
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_26_BatchAxisToP3
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1000
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1000
));
LastWidth
=
GetWidth
();
//LastWidth = GetWidth();
MoveInfo
.
MoveParam
.
PlateW
=
LastWidth
;
//MoveInfo.MoveParam.PlateW = LastWidth;
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":提升伺服运动到P3,盘宽【"
+
LastWidth
+
"】,横移气缸上升 "
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":提升伺服运动到P3,横移气缸上升 "
);
CylinderMove
(
null
,
IO_Type
.
SL_MoveCylinder_Take
,
IO_Type
.
SL_MoveCylinder_Give
);
CylinderMove
(
null
,
IO_Type
.
SL_MoveCylinder_Take
,
IO_Type
.
SL_MoveCylinder_Give
);
BatchAxisToP3
(
false
);
BatchAxisToP3
(
false
);
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_26_BatchAxisToP3
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_26_BatchAxisToP3
))
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_27_SaveSize
);
if
(
UpdownIsInP1
())
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_27_CylinderGive
);
{
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":上料横移气缸放料SOL"
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_28_CylinderGive
);
CylinderMove
(
MoveInfo
,
IO_Type
.
SL_MoveCylinder_Take
,
IO_Type
.
SL_MoveCylinder_Give
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":上料横移气缸放料SOL"
);
CylinderMove
(
MoveInfo
,
IO_Type
.
SL_MoveCylinder_Take
,
IO_Type
.
SL_MoveCylinder_Give
);
}
else
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_27_SaveSize
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":上料横移机构取料端 前升降轴先到P1 ["
+
Config
.
UpDownAxisP1
+
"]"
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
UpDownAxisP1
,
Config
.
UpdownAxis_P1Speed
);
}
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
500
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
500
));
LastHeight
=
GetHeight
();
LastHeight
=
GetHeight
();
MoveInfo
.
MoveParam
.
PlateH
=
LastHeight
;
MoveInfo
.
MoveParam
.
PlateH
=
LastHeight
;
if
(
LastWidth
.
Equals
(
7
))
{
if
(
LastHeight
>
16
)
{
LogUtil
.
error
(
Name
+
"计算后高度"
+
LastWidth
+
"X"
+
LastHeight
+
",七寸盘默认盘高最高=16,修改高度为16"
);
LastHeight
=
16
;
}
}
else
{
if
(
LastHeight
<
12
)
{
LogUtil
.
error
(
Name
+
"计算后高度"
+
LastWidth
+
"X"
+
LastHeight
+
",非七寸盘默认盘高最低=12,修改高度为12"
);
LastHeight
=
12
;
}
}
//判断是否还有料盘
//判断是否还有料盘
if
(
IOValue
(
IO_Type
.
SL_AxisLocationCheck
).
Equals
(
IO_VALUE
.
LOW
))
if
(
IOValue
(
IO_Type
.
SL_AxisLocationCheck
).
Equals
(
IO_VALUE
.
LOW
))
{
{
...
@@ -417,61 +393,60 @@ namespace OnlineStore.DeviceLibrary
...
@@ -417,61 +393,60 @@ namespace OnlineStore.DeviceLibrary
int
chaz
=
Math
.
Abs
(
currP
-
Config
.
BatchAxisP3
);
int
chaz
=
Math
.
Abs
(
currP
-
Config
.
BatchAxisP3
);
if
(
chaz
<
BatchAxis
.
Config
.
CanErrorCountMax
)
if
(
chaz
<
BatchAxis
.
Config
.
CanErrorCountMax
)
{
{
// MoveInfo.NextMoveStep(LineMoveStep.FI_21_BatchAxisDown);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":记录 高度【"
+
LastHeight
+
"】 ,已经没有料盘,且已达到P3:"
+
Config
.
BatchAxisP3
+
",提升轴开始回下降待机点P2"
);
// MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":记录 高度【"
+
LastHeight
+
"】宽度【"
+
LastWidth
+
"】,已经没有料盘,且已达到P3:"
+
Config
.
BatchAxisP3
+
",提升轴开始回下降待机点P2"
);
MoveInfo
.
ShelfNoTray
=
true
;
MoveInfo
.
ShelfNoTray
=
true
;
BatchAxis
.
AbsMove
(
null
,
Config
.
BatchAxisP2
,
Config
.
BatchAxis_P2Speed
);
BatchAxis
.
AbsMove
(
null
,
Config
.
BatchAxisP2
,
Config
.
BatchAxis_P2Speed
);
}
}
else
else
{
{
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":记录 高度【"
+
LastHeight
+
"】
宽度【"
+
LastWidth
+
"】
,此时未检测到料盘,上料轴位置【"
+
currP
+
"】不在P3:"
+
Config
.
BatchAxisP3
+
",预扫码"
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":记录 高度【"
+
LastHeight
+
"】
,此时未检测到料盘,上料轴位置【"
+
currP
+
"】不在P3:"
+
Config
.
BatchAxisP3
+
",预扫码"
);
YuScanCode
();
YuScanCode
();
}
}
}
}
else
else
{
{
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":记录 高度【"
+
LastHeight
+
"】
宽度【"
+
LastWidth
+
"】
,预扫码"
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":记录 高度【"
+
LastHeight
+
"】
,预扫码"
);
YuScanCode
();
YuScanCode
();
}
}
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_27_
SaveSiz
e
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_27_
CylinderGiv
e
))
{
{
if
(
UpdownIsInP1
())
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_28_SaveSize
);
LastWidth
=
GetWidth
();
MoveInfo
.
MoveParam
.
PlateW
=
LastWidth
;
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":获取到料盘尺寸 ["
+
LastWidth
+
"X"
+
LastHeight
+
"]"
);
if
(
LastWidth
.
Equals
(
7
))
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_28_CylinderGive
);
if
(
LastHeight
>
16
)
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":上料横移气缸放料SOL"
);
{
CylinderMove
(
MoveInfo
,
IO_Type
.
SL_MoveCylinder_Take
,
IO_Type
.
SL_MoveCylinder_Give
);
LogUtil
.
error
(
Name
+
"计算后高度"
+
LastWidth
+
"X"
+
LastHeight
+
",七寸盘默认盘高最高=16,修改高度为16"
);
LastHeight
=
16
;
}
}
}
else
else
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_27_SaveSize
);
if
(
LastHeight
<
12
)
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":上料横移机构取料端 前升降轴先到P1 ["
+
Config
.
UpDownAxisP1
+
"]"
);
{
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
UpDownAxisP1
,
Config
.
UpdownAxis_P1Speed
);
LogUtil
.
error
(
Name
+
"计算后高度"
+
LastWidth
+
"X"
+
LastHeight
+
",非七寸盘默认盘高最低=12,修改高度为12"
);
LastHeight
=
12
;
}
}
}
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_28_
CylinderGiv
e
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_28_
SaveSiz
e
))
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_29_BatchAxisDown
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_29_BatchAxisDown
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1000
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1000
));
if
(!
MoveInfo
.
ShelfNoTray
)
if
(!
MoveInfo
.
ShelfNoTray
)
{
{
FI_BatchAxisDown
();
FI_BatchAxisDown
();
}
}
//int targetPositon = Config.GetUpdownP2Detial(LastHeight, LastWidth);
//string log = ":移栽伺服下降到P2:" + targetPositon;
//InLog("料盘移栽" + MoveInfo.SLog + ": " + log + "");
//UpdownAxis.AbsMove(MoveInfo, targetPositon, Config.UpdownAxis_P2Speed);
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_29_BatchAxisDown
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_29_BatchAxisDown
))
{
{
FI_31_GetPosID
();
FI_31_GetPosID
();
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_30_WaitReelCheck
))
{
FI_31_GetPosID
();
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_31_GetPosID
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_31_GetPosID
))
{
{
if
(
getPosTask
.
IsCompleted
&&
LastPosParam
!=
null
)
if
(
getPosTask
.
IsCompleted
&&
LastPosParam
!=
null
)
...
@@ -485,24 +460,24 @@ namespace OnlineStore.DeviceLibrary
...
@@ -485,24 +460,24 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
MoveInfo
.
IsTimeOut
(
120
))
else
if
(
MoveInfo
.
IsTimeOut
(
120
))
{
{
MoveTimeOut
(
MoveInfo
,
"获取库位号超时"
);
MoveTimeOut
(
MoveInfo
,
"获取库位号超时"
);
}
}
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_32_WaitTray
))
//TODO
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_32_WaitTray
))
//TODO
{
{
currTrayNum
=
-
1
;
currTrayNum
=
-
1
;
if
(
LineManager
.
Line
.
TrayIsReady
(
DeviceID
,
out
currTrayNum
))
if
(
LineManager
.
Line
.
TrayIsReady
(
DeviceID
,
out
currTrayNum
))
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_33_CylinderDown
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_33_CylinderDown
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
500
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
500
));
int
targetPositon
=
Config
.
GetUpdownP2Detial
(
LastHeight
,
LastWidth
);
int
targetPositon
=
Config
.
GetUpdownP2Detial
(
LastHeight
,
LastWidth
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
targetPositon
,
Config
.
UpdownAxis_P2Speed
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
targetPositon
,
Config
.
UpdownAxis_P2Speed
);
LastPosParam
.
TrayNumber
=
currTrayNum
;
LastPosParam
.
TrayNumber
=
currTrayNum
;
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":移栽伺服下降到P2: ["
+
targetPositon
+
"] 托盘号【"
+
currTrayNum
+
"】,更新托盘信息 :"
+
LastPosParam
.
ToShortStr
());
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":移栽伺服下降到P2: ["
+
targetPositon
+
"] 托盘号【"
+
currTrayNum
+
"】,更新托盘信息 :"
+
LastPosParam
.
ToShortStr
());
TrayManager
.
UpdateTrayInfo
(
currTrayNum
,
true
,
ReelType
.
InStore
,
LastPosParam
,
LastPosParam
.
NgMsg
);
TrayManager
.
UpdateTrayInfo
(
currTrayNum
,
true
,
ReelType
.
InStore
,
LastPosParam
,
LastPosParam
.
NgMsg
);
SServerManager
.
SendPosToStoreCheck
(
Name
,
LastPosParam
);
SServerManager
.
SendPosToStoreCheck
(
Name
,
LastPosParam
);
if
(
IOValue
(
IO_Type
.
SL_AxisLocationCheck
).
Equals
(
IO_VALUE
.
LOW
)
&&
MoveInfo
.
ShelfNoTray
.
Equals
(
false
))
if
(
IOValue
(
IO_Type
.
SL_AxisLocationCheck
).
Equals
(
IO_VALUE
.
LOW
)
&&
MoveInfo
.
ShelfNoTray
.
Equals
(
false
))
{
{
InLog
(
"获取库位"
+
MoveInfo
.
SLog
+
": 上料轴开始慢速上升到P3点,不等待结果"
);
InLog
(
"获取库位"
+
MoveInfo
.
SLog
+
": 上料轴开始慢速上升到P3点,不等待结果"
);
...
@@ -513,7 +488,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -513,7 +488,7 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
MoveInfo
.
IsTimeOut
(
180
))
else
if
(
MoveInfo
.
IsTimeOut
(
180
))
{
{
MoveTimeOut
(
MoveInfo
,
"等待空托盘到达超时"
);
MoveTimeOut
(
MoveInfo
,
"等待空托盘到达超时"
);
}
}
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_33_CylinderDown
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_33_CylinderDown
))
...
@@ -526,8 +501,8 @@ namespace OnlineStore.DeviceLibrary
...
@@ -526,8 +501,8 @@ namespace OnlineStore.DeviceLibrary
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_35_AxisToP1
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_35_AxisToP1
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1000
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1000
));
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":升降轴到P1点 ["
+
Config
.
UpDownAxisP1
+
"]"
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":升降轴到P1点 ["
+
Config
.
UpDownAxisP1
+
"]"
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
UpDownAxisP1
,
Config
.
UpdownAxis_P1Speed
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
UpDownAxisP1
,
Config
.
UpdownAxis_P1Speed
);
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_35_AxisToP1
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_35_AxisToP1
))
{
{
...
@@ -535,7 +510,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -535,7 +510,7 @@ namespace OnlineStore.DeviceLibrary
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_35_AxisToP1
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_35_AxisToP1
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1000
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1000
));
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":升降轴到P1点 ["
+
Config
.
UpDownAxisP1
+
"]"
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":升降轴到P1点 ["
+
Config
.
UpDownAxisP1
+
"]"
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
UpDownAxisP1
,
Config
.
UpdownAxis_P1Speed
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
UpDownAxisP1
,
Config
.
UpdownAxis_P1Speed
);
}
}
else
else
...
@@ -543,9 +518,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -543,9 +518,9 @@ namespace OnlineStore.DeviceLibrary
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_36_TrayMoveOk
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_36_TrayMoveOk
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":升降轴已到P1,托盘放行"
);
InLog
(
"料盘移栽"
+
MoveInfo
.
SLog
+
":升降轴已到P1,托盘放行"
);
TrayMoveOk
();
TrayMoveOk
();
}
}
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_36_TrayMoveOk
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_36_TrayMoveOk
))
{
{
if
(
getPosTask
==
null
||
getPosTask
.
IsCompleted
)
if
(
getPosTask
==
null
||
getPosTask
.
IsCompleted
)
...
@@ -580,7 +555,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -580,7 +555,7 @@ namespace OnlineStore.DeviceLibrary
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_52_TrayLocation_After
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_52_TrayLocation_After
))
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_53_BatchAxisToP1
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_53_BatchAxisToP1
);
InLog
(
"上料完成"
+
MoveInfo
.
SLog
+
":提升伺服到P1点["
+
Config
.
BatchAxisP1
+
"]"
);
InLog
(
"上料完成"
+
MoveInfo
.
SLog
+
":提升伺服到P1点["
+
Config
.
BatchAxisP1
+
"]"
);
BatchAxis
.
AbsMove
(
MoveInfo
,
Config
.
BatchAxisP1
,
Config
.
BatchAxis_P1Speed
);
BatchAxis
.
AbsMove
(
MoveInfo
,
Config
.
BatchAxisP1
,
Config
.
BatchAxis_P1Speed
);
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_53_BatchAxisToP1
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_53_BatchAxisToP1
))
...
@@ -612,7 +587,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -612,7 +587,7 @@ namespace OnlineStore.DeviceLibrary
{
{
InLog
(
"上料完成"
+
MoveInfo
.
SLog
+
",顶升气缸上升时发现固定气缸不在上升端,重新上升定位气缸"
);
InLog
(
"上料完成"
+
MoveInfo
.
SLog
+
",顶升气缸上升时发现固定气缸不在上升端,重新上升定位气缸"
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_54_FixedUp
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_54_FixedUp
);
InLog
(
"上料完成"
+
MoveInfo
.
SLog
+
", 固定气缸上升"
);
InLog
(
"上料完成"
+
MoveInfo
.
SLog
+
", 固定气缸上升"
);
FixedCylinderUp
(
MoveInfo
);
FixedCylinderUp
(
MoveInfo
);
}
}
}
}
...
@@ -624,6 +599,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -624,6 +599,7 @@ namespace OnlineStore.DeviceLibrary
InLog
(
"上料完成"
+
MoveInfo
.
SLog
+
", 线体横移电机运转,等待料架离开上料工位"
);
InLog
(
"上料完成"
+
MoveInfo
.
SLog
+
", 线体横移电机运转,等待料架离开上料工位"
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
HIGH
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Location_Check
,
IO_VALUE
.
LOW
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Location_Check
,
IO_VALUE
.
LOW
));
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_57_SideWayLineRun
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_57_SideWayLineRun
))
...
@@ -632,6 +608,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -632,6 +608,7 @@ namespace OnlineStore.DeviceLibrary
InLog
(
"上料完成"
+
MoveInfo
.
SLog
+
", 线体横移电机运转,等待料架到达出口"
);
InLog
(
"上料完成"
+
MoveInfo
.
SLog
+
", 线体横移电机运转,等待料架到达出口"
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
HIGH
);
//MoveInfo.OneWaitCanEndStep = true;
//MoveInfo.OneWaitCanEndStep = true;
//MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(10000));
//MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(10000));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Out_Check
,
IO_VALUE
.
HIGH
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Out_Check
,
IO_VALUE
.
HIGH
));
...
@@ -643,7 +620,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -643,7 +620,7 @@ namespace OnlineStore.DeviceLibrary
InLog
(
"上料完成"
+
MoveInfo
.
SLog
+
", 料架到达出口,线体横移电机停止 "
);
InLog
(
"上料完成"
+
MoveInfo
.
SLog
+
", 料架到达出口,线体横移电机停止 "
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
LOW
);
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_59_LineStop
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_59_LineStop
))
{
{
...
@@ -655,8 +632,29 @@ namespace OnlineStore.DeviceLibrary
...
@@ -655,8 +632,29 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_60_TopDown
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_60_TopDown
))
{
{
if
(
HasOutLine
)
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FI_61_OutLineRun
);
InLog
(
"送出料串: "
+
MoveInfo
.
SLog
+
", 出料线阻挡上升,出料线体转动5秒钟 或等待出料口信号亮"
);
IOMove
(
IO_Type
.
SL_Out_StopDown
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_OutLine_Run
,
IO_VALUE
.
HIGH
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
5000
));
if
(
IOValue
(
IO_Type
.
SL_OutLine_Check
).
Equals
(
IO_VALUE
.
LOW
))
{
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_OutLine_Check
,
IO_VALUE
.
HIGH
));
}
}
else
{
MoveEndS
();
LastOutShelfId
=
CurrShelfId
;
InLog
(
"上料完成,料架到达出口处, 通知AGV取空料架, 入料流程结束,更新LastOutShelfId="
+
LastOutShelfId
);
AgvClient
.
NeedLeave
(
Config
.
AgvOutName
,
LastOutShelfId
,
ClientLevel
.
Low
);
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FI_61_OutLineRun
))
{
MoveEndS
();
MoveEndS
();
// MoveInfo.NextMoveStep(LineMoveStep.FI_39_OutLineRun);
LastOutShelfId
=
CurrShelfId
;
LastOutShelfId
=
CurrShelfId
;
InLog
(
"上料完成,料架到达出口处, 通知AGV取空料架, 入料流程结束,更新LastOutShelfId="
+
LastOutShelfId
);
InLog
(
"上料完成,料架到达出口处, 通知AGV取空料架, 入料流程结束,更新LastOutShelfId="
+
LastOutShelfId
);
AgvClient
.
NeedLeave
(
Config
.
AgvOutName
,
LastOutShelfId
,
ClientLevel
.
Low
);
AgvClient
.
NeedLeave
(
Config
.
AgvOutName
,
LastOutShelfId
,
ClientLevel
.
Low
);
...
...
source/DeviceLibrary/assemblyLine/FeedingEquip_OutStore.cs
查看文件 @
75a3b62
...
@@ -371,7 +371,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -371,7 +371,7 @@ namespace OnlineStore.DeviceLibrary
//如果再出库中直接出库
//如果再出库中直接出库
MoveInfo
.
EndMove
();
MoveInfo
.
EndMove
();
runStatus
=
LineRunStatus
.
Runing
;
runStatus
=
LineRunStatus
.
Runing
;
OutLog
(
"准备出库料架完成"
);
OutLog
(
"准备出库料架完成"
);
}
}
else
else
{
{
...
@@ -454,23 +454,16 @@ namespace OnlineStore.DeviceLibrary
...
@@ -454,23 +454,16 @@ namespace OnlineStore.DeviceLibrary
OutLog
(
"送出料串: "
+
MoveInfo
.
SLog
+
", 线体横移电机运转,等待料架离开定位工位"
);
OutLog
(
"送出料串: "
+
MoveInfo
.
SLog
+
", 线体横移电机运转,等待料架离开定位工位"
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
HIGH
);
if
(
Config
.
DOList
.
ContainsKey
(
IO_Type
.
SL_RollerLine_Run
))
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
HIGH
);
{
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
HIGH
);
}
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Location_Check
,
IO_VALUE
.
LOW
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Location_Check
,
IO_VALUE
.
LOW
));
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FO_57_SideWayLineRun
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FO_57_SideWayLineRun
))
{
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FO_58_WaitShelfGo
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FO_58_WaitShelfGo
);
OutLog
(
"送出料串:"
+
MoveInfo
.
SLog
+
", 线体横移电机运转,等待料架到达出口"
);
OutLog
(
"送出料串:"
+
MoveInfo
.
SLog
+
", 线体横移电机运转,等待料架到达出口"
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
HIGH
);
if
(
Config
.
DOList
.
ContainsKey
(
IO_Type
.
SL_RollerLine_Run
))
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
HIGH
);
{
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
HIGH
);
}
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Out_Check
,
IO_VALUE
.
HIGH
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_Out_Check
,
IO_VALUE
.
HIGH
));
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FO_58_WaitShelfGo
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FO_58_WaitShelfGo
))
...
@@ -479,10 +472,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -479,10 +472,7 @@ namespace OnlineStore.DeviceLibrary
OutLog
(
"送出料串: "
+
MoveInfo
.
SLog
+
", 料架到达出口,线体横移电机停止 "
);
OutLog
(
"送出料串: "
+
MoveInfo
.
SLog
+
", 料架到达出口,线体横移电机停止 "
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_LocationSideWay_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_OutSideWay_Run
,
IO_VALUE
.
LOW
);
if
(
Config
.
DOList
.
ContainsKey
(
IO_Type
.
SL_RollerLine_Run
))
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
LOW
);
{
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
LOW
);
}
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
300
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
300
));
}
}
...
@@ -497,9 +487,31 @@ namespace OnlineStore.DeviceLibrary
...
@@ -497,9 +487,31 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FO_60_TopDown
))
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FO_60_TopDown
))
{
{
MoveEndS
();
if
(
HasOutLine
)
// MoveInfo.NextMoveStep(LineMoveStep.FO_39_OutLineRun);
{
OutLog
(
"送出料串: "
+
MoveInfo
.
SLog
+
", 出口线体运转,料架到达出口处, 通知AGV取空料架, 出料结束"
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FO_61_OutLineRun
);
OutLog
(
"送出料串: "
+
MoveInfo
.
SLog
+
", 出料线阻挡上升,出料线体转动5秒钟 或等待出料口信号亮"
);
IOMove
(
IO_Type
.
SL_Out_StopDown
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_OutLine_Run
,
IO_VALUE
.
HIGH
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
5000
));
if
(
IOValue
(
IO_Type
.
SL_OutLine_Check
).
Equals
(
IO_VALUE
.
LOW
))
{
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_OutLine_Check
,
IO_VALUE
.
HIGH
));
}
}
else
{
MoveEndS
();
OutLog
(
"送出料串: "
+
MoveInfo
.
SLog
+
", 料架到达出口处, 通知AGV取空料架, 出料结束"
);
AgvClient
.
NeedLeave
(
Config
.
AgvOutName
,
LastOutShelfId
,
Asa
.
ClientLevel
.
High
);
}
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
FO_61_OutLineRun
))
{
MoveEndS
();
OutLog
(
"送出料串: "
+
MoveInfo
.
SLog
+
", 出料线体停止,料架到达出口处, 通知AGV取空料架, 出料结束"
);
IOMove
(
IO_Type
.
SL_Out_StopDown
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_OutLine_Run
,
IO_VALUE
.
LOW
);
AgvClient
.
NeedLeave
(
Config
.
AgvOutName
,
LastOutShelfId
,
Asa
.
ClientLevel
.
High
);
AgvClient
.
NeedLeave
(
Config
.
AgvOutName
,
LastOutShelfId
,
Asa
.
ClientLevel
.
High
);
}
}
else
if
(
MoveInfo
.
MoveStep
>=
LineMoveStep
.
FO_21_AxisDownMove
&&
MoveInfo
.
MoveStep
<
LineMoveStep
.
FO_51_BatchAxisToP2
)
else
if
(
MoveInfo
.
MoveStep
>=
LineMoveStep
.
FO_21_AxisDownMove
&&
MoveInfo
.
MoveStep
<
LineMoveStep
.
FO_51_BatchAxisToP2
)
...
...
source/DeviceLibrary/assemblyLine/HY/HY_C1Line.cs
查看文件 @
75a3b62
...
@@ -801,7 +801,12 @@ namespace OnlineStore.DeviceLibrary
...
@@ -801,7 +801,12 @@ namespace OnlineStore.DeviceLibrary
//测线满时不需要横移
//测线满时不需要横移
if
(
IOValue
(
IO_Type
.
HY_OL_Full_Check
).
Equals
(
IO_VALUE
.
LOW
))
if
(
IOValue
(
IO_Type
.
HY_OL_Full_Check
).
Equals
(
IO_VALUE
.
LOW
))
{
{
if
(
LineManager
.
TrayToOutLineTest
)
{
MoveInfo
.
MoveParam
=
new
InOutParam
(
trayNum
);
LogInfo
(
" 托盘需要横移到出料线:托盘横移到出料线测试功能打开"
);
return
true
;
}
//TODO
//TODO
TrayInfo
trayInfo
=
TrayManager
.
GetTrayInfo
(
currTrayNum
);
TrayInfo
trayInfo
=
TrayManager
.
GetTrayInfo
(
currTrayNum
);
if
(!
trayInfo
.
IsFull
)
if
(!
trayInfo
.
IsFull
)
...
...
source/DeviceLibrary/assemblyLine/HY/HY_Coveryor_Partial.cs
查看文件 @
75a3b62
...
@@ -122,21 +122,28 @@ namespace OnlineStore.DeviceLibrary
...
@@ -122,21 +122,28 @@ namespace OnlineStore.DeviceLibrary
{
{
CheckLog
(
" 接驳台托盘"
+
SecondMoveInfo
.
SLog
+
":顶升气缸上升 "
);
CheckLog
(
" 接驳台托盘"
+
SecondMoveInfo
.
SLog
+
":顶升气缸上升 "
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Down
,
IO_Type
.
HY_TopCylinder_Up
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Down
,
IO_Type
.
HY_TopCylinder_Up
);
LineRun
(
SecondMoveInfo
);
//
LineRun(SecondMoveInfo);
}
}
else
else
{
{
CheckLog
(
" 接驳台托盘"
+
SecondMoveInfo
.
SLog
+
":顶升气缸下降 "
);
CheckLog
(
" 接驳台托盘"
+
SecondMoveInfo
.
SLog
+
":顶升气缸下降 "
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Up
,
IO_Type
.
HY_TopCylinder_Down
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Up
,
IO_Type
.
HY_TopCylinder_Down
);
LineRun
(
SecondMoveInfo
);
//
LineRun(SecondMoveInfo);
}
}
}
}
else
if
(
SecondMoveInfo
.
IsStep
(
LineMoveStep
.
JHY_02_TopMove
))
else
if
(
SecondMoveInfo
.
IsStep
(
LineMoveStep
.
JHY_02_TopMove
))
{
{
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
JHY_03_StopDown
);
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
JHY_03_StopDown
);
CheckLog
(
" 接驳台托盘"
+
SecondMoveInfo
.
SLog
+
":前阻挡下降,电机正转"
);
IOMove
(
IO_Type
.
HY_FrontStopDown
,
IO_VALUE
.
HIGH
,
1200
);
IOMove
(
IO_Type
.
HY_FrontStopDown
,
IO_VALUE
.
HIGH
,
1200
);
LineRun
(
SecondMoveInfo
);
if
(
IsNgPro
())
{
CheckLog
(
" 接驳台托盘"
+
SecondMoveInfo
.
SLog
+
":前阻挡下降,横移电机正转"
);
LineRun
(
SecondMoveInfo
);
}
else
{
CheckLog
(
" 接驳台托盘"
+
SecondMoveInfo
.
SLog
+
":前阻挡下降"
);
}
}
}
else
if
(
SecondMoveInfo
.
IsStep
(
LineMoveStep
.
JHY_03_StopDown
))
else
if
(
SecondMoveInfo
.
IsStep
(
LineMoveStep
.
JHY_03_StopDown
))
{
{
...
@@ -154,8 +161,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -154,8 +161,7 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
SecondMoveInfo
.
IsStep
(
LineMoveStep
.
JHY_05_TrayCheck
))
else
if
(
SecondMoveInfo
.
IsStep
(
LineMoveStep
.
JHY_05_TrayCheck
))
{
{
//读取托盘号
//读取托盘号
LineStop
();
UpdateTrayNum
();
UpdateTrayNum
();
if
(
ReelNeedMove
())
if
(
ReelNeedMove
())
{
{
...
@@ -164,7 +170,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -164,7 +170,7 @@ namespace OnlineStore.DeviceLibrary
else
if
(
ReelNeedToNG
())
else
if
(
ReelNeedToNG
())
{
{
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
JHY_07_TopUp
);
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
JHY_07_TopUp
);
CheckLog
(
" 接驳台托盘"
+
SecondMoveInfo
.
SLog
+
":需要移到NG箱,顶升气缸上升,横移电机停止"
);
CheckLog
(
" 接驳台托盘"
+
SecondMoveInfo
.
SLog
+
":需要移到NG箱,顶升气缸上升,横移电机停止"
);
LineStop
(
SecondMoveInfo
);
LineStop
(
SecondMoveInfo
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Down
,
IO_Type
.
HY_TopCylinder_Up
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Down
,
IO_Type
.
HY_TopCylinder_Up
);
}
}
...
@@ -194,12 +200,12 @@ namespace OnlineStore.DeviceLibrary
...
@@ -194,12 +200,12 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
SecondMoveInfo
.
IsTimeOut
())
else
if
(
SecondMoveInfo
.
IsTimeOut
())
{
{
MoveTimeOut
(
SecondMoveInfo
,
"等待移栽机构开始抓料超时"
);
MoveTimeOut
(
SecondMoveInfo
,
"等待移栽机构开始抓料超时"
);
}
}
}
}
else
if
(
SecondMoveInfo
.
IsTimeOut
())
else
if
(
SecondMoveInfo
.
IsTimeOut
())
{
{
MoveTimeOut
(
SecondMoveInfo
,
"等待移栽机构开始抓料超时"
);
MoveTimeOut
(
SecondMoveInfo
,
"等待移栽机构开始抓料超时"
);
}
}
}
}
else
if
(
SecondMoveInfo
.
IsStep
(
LineMoveStep
.
JHY_10_ReelProEnd
))
else
if
(
SecondMoveInfo
.
IsStep
(
LineMoveStep
.
JHY_10_ReelProEnd
))
...
@@ -233,7 +239,8 @@ namespace OnlineStore.DeviceLibrary
...
@@ -233,7 +239,8 @@ namespace OnlineStore.DeviceLibrary
else
if
(
SecondMoveInfo
.
IsStep
(
LineMoveStep
.
JHY_13_TrayLeave
))
else
if
(
SecondMoveInfo
.
IsStep
(
LineMoveStep
.
JHY_13_TrayLeave
))
{
{
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
JHY_14_TopDown
);
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
JHY_14_TopDown
);
CheckLog
(
" 托盘放行"
+
SecondMoveInfo
.
SLog
+
":顶升气缸下降"
);
CheckLog
(
" 托盘放行"
+
SecondMoveInfo
.
SLog
+
":顶升气缸下降,横移电机 停止"
);
LineStop
(
SecondMoveInfo
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Up
,
IO_Type
.
HY_TopCylinder_Down
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Up
,
IO_Type
.
HY_TopCylinder_Down
);
}
}
else
if
(
SecondMoveInfo
.
IsStep
(
LineMoveStep
.
JHY_14_TopDown
))
else
if
(
SecondMoveInfo
.
IsStep
(
LineMoveStep
.
JHY_14_TopDown
))
...
@@ -250,16 +257,18 @@ namespace OnlineStore.DeviceLibrary
...
@@ -250,16 +257,18 @@ namespace OnlineStore.DeviceLibrary
private
void
JHY_11_TopDown
()
private
void
JHY_11_TopDown
()
{
{
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
JHY_11_TopDown
);
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
JHY_11_TopDown
);
CheckLog
(
" 托盘放行"
+
SecondMoveInfo
.
SLog
+
":横移电机停止,阻挡上升,顶升气缸下降"
);
LineStop
(
SecondMoveInfo
);
IOMove
(
IO_Type
.
HY_FrontStopDown
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
HY_FrontStopDown
,
IO_VALUE
.
LOW
);
if
(
IsNgPro
())
if
(
IsNgPro
())
{
{
CheckLog
(
" 托盘放行"
+
SecondMoveInfo
.
SLog
+
":横移电机停止,阻挡上升,顶升气缸下降"
);
LineStop
(
SecondMoveInfo
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Up
,
IO_Type
.
HY_TopCylinder_Down
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Up
,
IO_Type
.
HY_TopCylinder_Down
);
}
}
else
else
{
{
CheckLog
(
" 托盘放行"
+
SecondMoveInfo
.
SLog
+
":启动横移电机,阻挡上升,顶升气缸上升"
);
LineRun
(
SecondMoveInfo
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Down
,
IO_Type
.
HY_TopCylinder_Up
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Down
,
IO_Type
.
HY_TopCylinder_Up
);
}
}
}
}
...
@@ -278,8 +287,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -278,8 +287,7 @@ namespace OnlineStore.DeviceLibrary
if
(
LastWidth
>
0
)
if
(
LastWidth
>
0
)
{
{
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
JHY_07_TopUp
);
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
JHY_07_TopUp
);
CheckLog
(
" 接驳台托盘"
+
SecondMoveInfo
.
SLog
+
":横移电机停止,顶升气缸上升"
);
CheckLog
(
" 接驳台托盘"
+
SecondMoveInfo
.
SLog
+
":横移电机停止,顶升气缸上升"
);
LineStop
(
SecondMoveInfo
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Down
,
IO_Type
.
HY_TopCylinder_Up
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
HY_TopCylinder_Down
,
IO_Type
.
HY_TopCylinder_Up
);
}
}
else
else
...
...
source/DeviceLibrary/assemblyLine/LineBean_T3-C1.cs
查看文件 @
75a3b62
...
@@ -99,7 +99,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -99,7 +99,7 @@ namespace OnlineStore.DeviceLibrary
T3C1_Log
(
"检测到阻挡托盘,"
+
T3C1_MoveInfo
.
SLog
+
" ,前阻挡上升,阻挡上升"
);
T3C1_Log
(
"检测到阻挡托盘,"
+
T3C1_MoveInfo
.
SLog
+
" ,前阻挡上升,阻挡上升"
);
Update_T3C1_TrayNum
();
Update_T3C1_TrayNum
();
IOMove
(
IO_Type
.
HY_FrontStopDown
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
HY_FrontStopDown
,
IO_VALUE
.
LOW
);
T3C1_MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_FrontStop
Check
,
IO_VALUE
.
LOW
));
T3C1_MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_FrontStop
Down
,
IO_VALUE
.
LOW
));
IOMove
(
IO_Type
.
HY_StopDown
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
HY_StopDown
,
IO_VALUE
.
LOW
);
T3C1_MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_StopDown
,
IO_VALUE
.
LOW
));
T3C1_MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_StopDown
,
IO_VALUE
.
LOW
));
}
}
...
@@ -118,7 +118,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -118,7 +118,7 @@ namespace OnlineStore.DeviceLibrary
T3C1_MoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_00_Stop1Down
);
T3C1_MoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_00_Stop1Down
);
T3C1_Log
(
" 托盘检测:"
+
T3C1_MoveInfo
.
SLog
+
",检测到HY_FrontStopCheck,前阻挡下降 , 等待 HY_FrontStopCheck=0,清理托盘RFID"
);
T3C1_Log
(
" 托盘检测:"
+
T3C1_MoveInfo
.
SLog
+
",检测到HY_FrontStopCheck,前阻挡下降 , 等待 HY_FrontStopCheck=0,清理托盘RFID"
);
T3C1_TrayNum
=
0
;
T3C1_TrayNum
=
0
;
IOMove
(
IO_Type
.
HY_FrontStop
Check
,
IO_VALUE
.
HIGH
,
1200
);
IOMove
(
IO_Type
.
HY_FrontStop
Down
,
IO_VALUE
.
HIGH
,
1200
);
T3C1_MoveInfo
.
OneWaitCanEndStep
=
true
;
T3C1_MoveInfo
.
OneWaitCanEndStep
=
true
;
T3C1_MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_FrontStopCheck
,
IO_VALUE
.
LOW
));
T3C1_MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_FrontStopCheck
,
IO_VALUE
.
LOW
));
T3C1_MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_TrayCheck
,
IO_VALUE
.
HIGH
));
T3C1_MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_TrayCheck
,
IO_VALUE
.
HIGH
));
...
...
source/DeviceLibrary/assemblymanager/ALineManager.cs
查看文件 @
75a3b62
...
@@ -20,6 +20,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -20,6 +20,7 @@ namespace OnlineStore.DeviceLibrary
public
static
bool
DisSLEquip
=
false
;
public
static
bool
DisSLEquip
=
false
;
public
static
bool
DisAllHy
=
false
;
public
static
bool
DisAllHy
=
false
;
public
static
bool
DisAllMove
=
false
;
public
static
bool
DisAllMove
=
false
;
public
static
bool
TrayToOutLineTest
=
false
;
public
static
bool
UseBuzzer
=
ConfigAppSettings
.
GetIntValue
(
Setting_Init
.
UseBuzzer
).
Equals
(
1
);
public
static
bool
UseBuzzer
=
ConfigAppSettings
.
GetIntValue
(
Setting_Init
.
UseBuzzer
).
Equals
(
1
);
private
static
bool
isInit
=
false
;
private
static
bool
isInit
=
false
;
...
...
source/DeviceLibrary/deviceLibrary/IO/IOManager.cs
查看文件 @
75a3b62
...
@@ -33,11 +33,12 @@ namespace OnlineStore.DeviceLibrary
...
@@ -33,11 +33,12 @@ namespace OnlineStore.DeviceLibrary
{
{
if
(
ioType
.
Equals
(
IO_Type
.
HY_FrontStopDown
)
||
ioType
.
Equals
(
IO_Type
.
HY_OL_StopDown
))
if
(
ioType
.
Equals
(
IO_Type
.
HY_FrontStopDown
)
||
ioType
.
Equals
(
IO_Type
.
HY_OL_StopDown
))
{
{
}
}
else
if
(
ioType
.
Equals
(
IO_Type
.
HY_FrontStopCheck
)
||
ioType
.
Equals
(
IO_Type
.
HY_OL_Tray_Check
))
else
if
(
ioType
.
Equals
(
IO_Type
.
HY_FrontStopCheck
)
||
ioType
.
Equals
(
IO_Type
.
HY_OL_Tray_Check
))
{
{
}
else
if
(
ioType
.
Equals
(
IO_Type
.
SL_RollerLine_Run
)||
ioType
.
Equals
(
IO_Type
.
SL_OutLine_Run
)
||
ioType
.
Equals
(
IO_Type
.
SL_OutLine_Check
))
{
}
}
else
else
{
{
...
...
source/DeviceLibrary/model/StoreStep.cs
查看文件 @
75a3b62
...
@@ -553,31 +553,32 @@ namespace OnlineStore.DeviceLibrary
...
@@ -553,31 +553,32 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
/// </summary>
FI_24_UpdownToP1
,
FI_24_UpdownToP1
,
/// <summary>
/// <summary>
/// 料盘移栽:等待没有伺服料盘检测信号
/// 料盘移栽:等待没有伺服料盘检测信号
,等待检测到料盘
/// </summary>
/// </summary>
FI_25_CheckTray
,
FI_25_CheckTray
,
/// <summary>
/// <summary>
/// 料盘移栽:批量轴到P3点
,检测是否有料盘
/// 料盘移栽:批量轴到P3点
/// </summary>
/// </summary>
FI_26_BatchAxisToP3
,
FI_26_BatchAxisToP3
,
/// <summary>
/// <summary>
///
料盘移栽:记录高度尺寸
///
料盘移栽: 上料横移气缸放料SOL
/// </summary>
/// </summary>
FI_27_
SaveSiz
e
,
FI_27_
CylinderGiv
e
,
/// <summary>
/// <summary>
///
料盘移栽: 上料横移气缸放料SOL
///
料盘移栽:记录高度尺寸
/// </summary>
/// </summary>
FI_28_
CylinderGiv
e
,
FI_28_
SaveSiz
e
,
/// <summary>
/// <summary>
/// 提升轴下降到料盘不溢出的位置
/// 提升轴下降到料盘不溢出的位置
/// </summary>
/// </summary>
FI_29_BatchAxisDown
,
FI_29_BatchAxisDown
,
/// <summary>
///
//
<summary>
/// 等待料盘检测信号
///
//
等待料盘检测信号
/// </summary>
///
//
</summary>
FI_30_WaitReelCheck
,
//
FI_30_WaitReelCheck,
/// <summary>
/// <summary>
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论