Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
顾剑亮
/
AGVControl-Qisda-ProductionLine
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 54be25c3
由
张东亮
编写于
2020-12-04 19:39:00 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
运行版1
1 个父辈
c0e49397
隐藏空白字符变更
内嵌
并排
正在显示
20 个修改的文件
包含
336 行增加
和
155 行删除
.vs/AGVControl-ProductionLine/v16/.suo
AGVControl-ProductionLine/BLL/AGVManager.cs
AGVControl-ProductionLine/BLL/Common.cs
AGVControl-ProductionLine/BLL/Control.cs
AGVControl-ProductionLine/FrmMain.Designer.cs
AGVControl-ProductionLine/FrmMain.cs
AGVControl-ProductionLine/FrmMain.resx
AGVControl-ProductionLine/Program.cs
AGVControl-ProductionLine/bean/UnlockedShelf.cs
AGVControl-ProductionLine/bean/job/GoEmptyShelfLineJob.cs
AGVControl-ProductionLine/bean/node/ClientNode.cs
AGVControl-ProductionLine/bean/node/DoubleLineNodeFor4C.cs
AGVControl-ProductionLine/bean/node/DoubleLineNodeFor4D.cs
AGVControl-ProductionLine/bin/Debug/AGVControl-ProductionLine.exe
AGVControl-ProductionLine/bin/Debug/AGVControl-ProductionLine.pdb
AGVControl-ProductionLine/bin/Debug/logs/AgvServer.log
AGVControl-ProductionLine/bin/Debug/logs/LineWebService.log
AGVControl-ProductionLine/obj/Debug/AGVControl-ProductionLine.csproj.GenerateResource.cache
AGVControl-ProductionLine/obj/Debug/AGVControl-ProductionLine.exe
AGVControl-ProductionLine/obj/Debug/AGVControl-ProductionLine.pdb
.vs/AGVControl-ProductionLine/v16/.suo
查看文件 @
54be25c
此文件类型无法预览
AGVControl-ProductionLine/BLL/AGVManager.cs
查看文件 @
54be25c
...
...
@@ -451,7 +451,7 @@ namespace AGVControl
{
Msg1
msgs
=
JsonHelper
.
DeserializeJsonToObject
<
Msg1
>(
result
);
if
(
msgs
==
null
)
return
",,,
D22
"
;
return
",,,"
;
else
{
Common
.
log
.
Debug
(
string
.
Format
(
"{0}接驳台状态:{1}"
,
lineName
,
msgs
.
Msg
));
...
...
@@ -463,9 +463,58 @@ namespace AGVControl
catch
(
Exception
ex
)
{
Common
.
log
.
Error
(
ex
.
Message
);
return
",,,
D22
"
;
return
",,,"
;
}
return
",,,D22"
;
return
",,,"
;
}
/// <summary>
/// 获取接驳台最外面料架
/// </summary>
/// <param name="lineName"></param>
/// <returns></returns>
public
static
string
GetFirstRFID
(
string
lineName
)
{
string
addr
=
""
;
if
(
lineName
.
StartsWith
(
SettingString
.
D4_Name_Prefix
))
{
addr
=
string
.
Format
(
"http://{0}/LineGetRFID?line={1}"
,
ConfigAppSettings
.
GetValue
(
SettingString
.
IP_4D_Light
),
lineName
);
}
else
if
(
lineName
.
StartsWith
(
SettingString
.
C4_Name_Prefix
))
{
addr
=
string
.
Format
(
"http://{0}/LineGetRFID?line={1}"
,
ConfigAppSettings
.
GetValue
(
SettingString
.
IP_4C_Light
),
lineName
);
}
try
{
string
result
=
HttpHelper
.
Get
(
addr
);
if
(!
result
.
Equals
(
""
))
{
Msg1
msgs
=
JsonHelper
.
DeserializeJsonToObject
<
Msg1
>(
result
);
if
(
msgs
==
null
)
return
""
;
else
{
Common
.
log
.
Debug
(
string
.
Format
(
"{0}接驳台状态:{1}"
,
lineName
,
msgs
.
Msg
));
string
rfid
=
""
;
foreach
(
string
item
in
msgs
.
Msg
.
Split
(
','
))
{
if
(!
item
.
Equals
(
""
))
{
rfid
=
item
;
}
}
return
rfid
;
}
}
}
catch
(
Exception
ex
)
{
Common
.
log
.
Error
(
ex
.
Message
);
return
""
;
}
return
""
;
}
/// <summary>
/// 删除接驳台料架
...
...
AGVControl-ProductionLine/BLL/Common.cs
查看文件 @
54be25c
...
...
@@ -617,8 +617,8 @@ namespace AGVControl
if
(!
Common
.
missionManager
.
GetUnlockRfids
(
Common
.
nodeInfo
[
idx
].
Name
).
Contains
(
nodeInfo
[
idx
].
RFID
))
{
warnMsg
=
string
.
Format
(
"料架{0}在接驳台{1}最外侧,但没有解绑信息,请检查"
,
nodeInfo
[
idx
].
RFID
,
nodeInfo
[
idx
].
Name
);
Common
.
log
.
Error
(
warnMsg
);
return
fals
e
;
Common
.
LogInfo
(
warnMsg
);
return
tru
e
;
}
rfid
=
nodeInfo
[
idx
].
RFID
;
warnMsg
=
""
;
...
...
@@ -664,8 +664,8 @@ namespace AGVControl
if
(!
Common
.
missionManager
.
GetUnlockRfids
(
Common
.
nodeInfo
[
idx
].
Name
).
Contains
(
nodeInfo
[
idx
].
RFID
))
{
warnMsg
=
string
.
Format
(
"料架{0}在接驳台{1}最外侧,但没有解绑信息,请检查"
,
nodeInfo
[
idx
].
RFID
,
nodeInfo
[
idx
].
Name
);
Common
.
log
.
Error
(
warnMsg
);
return
fals
e
;
Common
.
LogInfo
(
warnMsg
);
return
tru
e
;
}
rfid
=
nodeInfo
[
idx
].
RFID
;
warnMsg
=
""
;
...
...
@@ -705,8 +705,8 @@ namespace AGVControl
if
(!
Common
.
missionManager
.
GetUnlockRfids
(
Common
.
nodeInfo
[
idx
].
Name
).
Contains
(
nodeInfo
[
idx
].
RFID
))
{
warnMsg
=
string
.
Format
(
"料架{0}在接驳台{1}最外侧,但没有解绑信息,请检查"
,
nodeInfo
[
idx
].
RFID
,
nodeInfo
[
idx
].
Name
);
Common
.
log
.
Error
(
warnMsg
);
return
fals
e
;
Common
.
LogInfo
(
warnMsg
);
return
tru
e
;
}
rfid
=
nodeInfo
[
idx
].
RFID
;
warnMsg
=
""
;
...
...
@@ -727,8 +727,8 @@ namespace AGVControl
if
(!
Common
.
missionManager
.
GetUnlockRfids
(
Common
.
nodeInfo
[
idx
].
Name
).
Contains
(
nodeInfo
[
idx
].
RFID
))
{
warnMsg
=
string
.
Format
(
"料架{0}在接驳台{1}最外侧,但没有解绑信息,请检查"
,
nodeInfo
[
idx
].
RFID
,
nodeInfo
[
idx
].
Name
);
Common
.
log
.
Error
(
warnMsg
);
return
fals
e
;
Common
.
LogInfo
(
warnMsg
);
return
tru
e
;
}
rfid
=
nodeInfo
[
idx
].
RFID
;
warnMsg
=
""
;
...
...
@@ -757,8 +757,8 @@ namespace AGVControl
if
(!
Common
.
missionManager
.
GetUnlockRfids
(
Common
.
nodeInfo
[
idx
].
Name
).
Contains
(
nodeInfo
[
idx
].
RFID
))
{
warnMsg
=
string
.
Format
(
"料架{0}在接驳台{1}最外侧,但没有解绑信息,请检查"
,
nodeInfo
[
idx
].
RFID
,
nodeInfo
[
idx
].
Name
);
Common
.
log
.
Error
(
warnMsg
);
return
fals
e
;
Common
.
LogInfo
(
warnMsg
);
return
tru
e
;
}
rfid
=
nodeInfo
[
idx
].
RFID
;
warnMsg
=
""
;
...
...
@@ -779,8 +779,8 @@ namespace AGVControl
if
(!
Common
.
missionManager
.
GetUnlockRfids
(
Common
.
nodeInfo
[
idx
].
Name
).
Contains
(
nodeInfo
[
idx
].
RFID
))
{
warnMsg
=
string
.
Format
(
"料架{0}在接驳台{1}最外侧,但没有解绑信息,请检查"
,
nodeInfo
[
idx
].
RFID
,
nodeInfo
[
idx
].
Name
);
Common
.
log
.
Error
(
warnMsg
);
return
fals
e
;
Common
.
LogInfo
(
warnMsg
);
return
tru
e
;
}
rfid
=
nodeInfo
[
idx
].
RFID
;
warnMsg
=
""
;
...
...
@@ -796,12 +796,14 @@ namespace AGVControl
//4C车间备料区寻找
if
(
SettingString
.
C4_AGV_IPs
.
Contains
(
agv
.
IP
))
{
idx
=
nodeInfo
.
FindIndex
(
s
=>
s
.
EmptyShelfCnt
>
0
&&
s
.
Name
.
Equals
(
SettingString
.
C4FeederOut
)
&&
s
.
IsUse
);
idx
=
nodeInfo
.
FindIndex
(
s
=>
s
.
EmptyShelfCnt
>
0
&&
s
.
Name
.
Equals
(
SettingString
.
C4FeederOut
)
&&
!
s
.
RFID
.
StartsWith
(
"0"
)
&&
s
.
IsUse
);
if
(
idx
>
-
1
)
{
int
idx1
=
agvInfo
.
FindIndex
(
s
=>
s
.
CurJob
is
EnterLeaveShelfJob
&&
((
EnterLeaveShelfJob
)
s
.
CurJob
).
LineName
.
Equals
(
SettingString
.
C4FeederOut
));
if
(
idx1
==
-
1
)
{
rfid
=
nodeInfo
[
idx
].
RFID
;
warnMsg
=
""
;
nodeName
=
nodeInfo
[
idx
].
Name
;
Common
.
log
.
Debug
(
agv
.
Name
+
" 双层线右侧需要料架,准备去4C-"
+
nodeName
);
return
true
;
...
...
@@ -812,9 +814,11 @@ namespace AGVControl
//4D车间备料区寻找
if
(!
SettingString
.
C4_AGV_IPs
.
Contains
(
agv
.
IP
))
{
idx
=
nodeInfo
.
FindIndex
(
s
=>
s
.
EmptyShelfCnt
>
0
&&
s
.
Name
.
Equals
(
SettingString
.
D4FeederOut
)
&&
s
.
IsUse
);
idx
=
nodeInfo
.
FindIndex
(
s
=>
s
.
EmptyShelfCnt
>
0
&&
s
.
Name
.
Equals
(
SettingString
.
D4FeederOut
)
&&
!
s
.
RFID
.
StartsWith
(
"0"
)&&
s
.
IsUse
);
if
(
idx
>
-
1
)
{
rfid
=
nodeInfo
[
idx
].
RFID
;
warnMsg
=
""
;
nodeName
=
nodeInfo
[
idx
].
Name
;
Common
.
log
.
Debug
(
agv
.
Name
+
" 双层线右侧需要料架,准备去4D-"
+
nodeName
);
return
true
;
...
...
@@ -891,8 +895,8 @@ namespace AGVControl
if
(!
Common
.
missionManager
.
GetUnlockRfids
(
Common
.
nodeInfo
[
idx
].
Name
).
Contains
(
nodeInfo
[
idx
].
RFID
))
{
warnMsg
=
string
.
Format
(
"料架{0}在接驳台{1}最外侧,但没有解绑信息,请检查"
,
nodeInfo
[
idx
].
RFID
,
nodeInfo
[
idx
].
Name
);
Common
.
log
.
Error
(
warnMsg
);
return
fals
e
;
Common
.
LogInfo
(
warnMsg
);
return
tru
e
;
}
rfid
=
nodeInfo
[
idx
].
RFID
;
warnMsg
=
""
;
...
...
AGVControl-ProductionLine/BLL/Control.cs
查看文件 @
54be25c
...
...
@@ -18,6 +18,7 @@ namespace AGVControl.BLL
//private int areaC_Index;
private
System
.
Timers
.
Timer
AgvCallTimer
;
private
System
.
Timers
.
Timer
AgvStateTimer
;
private
System
.
Timers
.
Timer
NodeStateTimer
;
//public List<string> Marks;
private
const
int
REG_STATUS
=
20
;
//private List<string> shelfLockedNodeNames;
...
...
@@ -42,6 +43,13 @@ namespace AGVControl.BLL
Enabled
=
false
};
AgvStateTimer
.
Elapsed
+=
AgvStateTimer_Elapsed
;
NodeStateTimer
=
new
System
.
Timers
.
Timer
{
Interval
=
5000
,
AutoReset
=
true
,
Enabled
=
false
};
NodeStateTimer
.
Elapsed
+=
NodeStateTimer_Elapsed
;
}
...
...
@@ -49,19 +57,67 @@ namespace AGVControl.BLL
{
AgvCallTimer
.
Enabled
=
true
;
AgvStateTimer
.
Enabled
=
true
;
NodeStateTimer
.
Enabled
=
true
;
AgvCallTimer
.
Start
();
AgvStateTimer
.
Start
();
NodeStateTimer
.
Start
();
}
public
void
Stop
()
{
AgvCallTimer
.
Enabled
=
false
;
AgvStateTimer
.
Enabled
=
false
;
NodeStateTimer
.
Enabled
=
false
;
AgvCallTimer
.
Stop
();
AgvStateTimer
.
Stop
();
NodeStateTimer
.
Stop
();
}
private
bool
NodeStateInProcess
=
false
;
private
void
NodeStateTimer_Elapsed
(
object
sender
,
System
.
Timers
.
ElapsedEventArgs
e
)
{
if
(
NodeStateInProcess
)
return
;
NodeStateInProcess
=
true
;
try
{
String
tmp
=
""
;
for
(
int
j
=
0
;
j
<
Common
.
nodeInfo
.
Count
;
j
++)
{
if
(
Common
.
nodeInfo
[
j
].
Name
.
StartsWith
(
SettingString
.
D4_Name_Prefix
)
||
Common
.
nodeInfo
[
j
].
Name
.
StartsWith
(
SettingString
.
C4_Name_Prefix
))
{
if
(!
Common
.
nodeInfo
[
j
].
Name
.
Equals
(
SettingString
.
C4FeederIn
)
&&
!
Common
.
nodeInfo
[
j
].
Name
.
Equals
(
SettingString
.
C4FeederOut
)
&&
!
Common
.
nodeInfo
[
j
].
Name
.
Equals
(
SettingString
.
D4FeederIn
)
&&
!
Common
.
nodeInfo
[
j
].
Name
.
Equals
(
SettingString
.
D4FeederOut
))
{
tmp
=
AGVManager
.
GetFirstRFID
(
Common
.
nodeInfo
[
j
].
Name
);
if
(!
tmp
.
Equals
(
Common
.
nodeInfo
[
j
].
RFID
))
{
Common
.
nodeInfo
[
j
].
RFID
=
tmp
;
NodeChangedEvent
?.
Invoke
(
j
);
}
}
if
(
Common
.
nodeInfo
[
j
].
Name
.
Equals
(
SettingString
.
C4FeederOut
)
||
Common
.
nodeInfo
[
j
].
Name
.
Equals
(
SettingString
.
D4FeederOut
))
{
if
(
Common
.
missionManager
.
GetUnlockCnt
(
Common
.
nodeInfo
[
j
].
Name
)
>
0
)
{
tmp
=
Common
.
missionManager
.
GetUnlockRfids
(
Common
.
nodeInfo
[
j
].
Name
)[
0
];
if
(!
tmp
.
Equals
(
Common
.
nodeInfo
[
j
].
RFID
))
{
Common
.
nodeInfo
[
j
].
RFID
=
tmp
;
NodeChangedEvent
?.
Invoke
(
j
);
}
}
}
}
}
}
catch
(
Exception
ex
)
{
Common
.
log
.
Error
(
"NodeStateTimer "
+
ex
.
Message
+
ex
.
StackTrace
);
}
NodeStateInProcess
=
false
;
}
private
bool
AgvStateInProcess
=
false
;
private
eAGVState
preAGVState
=
eAGVState
.
None
;
private
void
AgvStateTimer_Elapsed
(
object
sender
,
System
.
Timers
.
ElapsedEventArgs
e
)
...
...
@@ -73,20 +129,6 @@ namespace AGVControl.BLL
String
tmp
=
""
;
for
(
int
j
=
0
;
j
<
Common
.
nodeInfo
.
Count
;
j
++)
{
if
(
Common
.
nodeInfo
[
j
].
Name
.
StartsWith
(
SettingString
.
D4_Name_Prefix
)
||
Common
.
nodeInfo
[
j
].
Name
.
StartsWith
(
SettingString
.
C4_Name_Prefix
))
{
if
(!
Common
.
nodeInfo
[
j
].
Name
.
Equals
(
SettingString
.
C4FeederIn
)
&&
!
Common
.
nodeInfo
[
j
].
Name
.
Equals
(
SettingString
.
C4FeederOut
)
&&
!
Common
.
nodeInfo
[
j
].
Name
.
Equals
(
SettingString
.
D4FeederIn
)
&&
!
Common
.
nodeInfo
[
j
].
Name
.
Equals
(
SettingString
.
D4FeederOut
))
{
tmp
=
AGVManager
.
GetRFIDs
(
Common
.
nodeInfo
[
j
].
Name
).
Split
(
','
)[
3
];
if
(!
tmp
.
Equals
(
Common
.
nodeInfo
[
j
].
RFID
))
{
Common
.
nodeInfo
[
j
].
RFID
=
tmp
;
NodeChangedEvent
?.
Invoke
(
j
);
}
}
}
if
(!
Common
.
nodeInfo
[
j
].
Online
)
{
msglist
.
Add
(
new
AlarmMsg
(
Common
.
nodeInfo
[
j
].
AliceName
,
"lineAgv."
+
Common
.
nodeInfo
[
j
].
Name
+
".OffLine"
,
"离线"
));
...
...
@@ -116,7 +158,7 @@ namespace AGVControl.BLL
{
AgvChanged
?.
Invoke
(
i
);
}
Common
.
log
.
Debug
(
"获取AGV状态"
);
Common
.
log
.
Debug
(
"获取AGV状态"
);
Thread
.
Sleep
(
50
);
rtn
=
Common
.
mir
.
Get_IO_Status
(
Common
.
agvInfo
[
i
],
out
bool
[]
input
,
out
bool
[]
output
);
...
...
AGVControl-ProductionLine/FrmMain.Designer.cs
查看文件 @
54be25c
...
...
@@ -82,7 +82,6 @@
this
.
btnDeleteMission
=
new
System
.
Windows
.
Forms
.
Button
();
this
.
btnAddMission
=
new
System
.
Windows
.
Forms
.
Button
();
this
.
cmbBoxLineName
=
new
System
.
Windows
.
Forms
.
ComboBox
();
this
.
groupBox7
=
new
System
.
Windows
.
Forms
.
GroupBox
();
this
.
txtBoxLineName
=
new
System
.
Windows
.
Forms
.
TextBox
();
this
.
label8
=
new
System
.
Windows
.
Forms
.
Label
();
this
.
label7
=
new
System
.
Windows
.
Forms
.
Label
();
...
...
@@ -103,6 +102,11 @@
this
.
label3
=
new
System
.
Windows
.
Forms
.
Label
();
this
.
label2
=
new
System
.
Windows
.
Forms
.
Label
();
this
.
label1
=
new
System
.
Windows
.
Forms
.
Label
();
this
.
groupBox4
=
new
System
.
Windows
.
Forms
.
GroupBox
();
this
.
backgroundWorker1
=
new
System
.
ComponentModel
.
BackgroundWorker
();
this
.
btnGetStationRfid
=
new
System
.
Windows
.
Forms
.
Button
();
this
.
label11
=
new
System
.
Windows
.
Forms
.
Label
();
this
.
btnClearStationRFID
=
new
System
.
Windows
.
Forms
.
Button
();
((
System
.
ComponentModel
.
ISupportInitialize
)(
this
.
DgvAgv
)).
BeginInit
();
this
.
tableLayoutPanel3
.
SuspendLayout
();
this
.
tabControl1
.
SuspendLayout
();
...
...
@@ -123,10 +127,10 @@
this
.
groupBox8
.
SuspendLayout
();
this
.
tabPage3
.
SuspendLayout
();
this
.
groupBox6
.
SuspendLayout
();
this
.
groupBox7
.
SuspendLayout
();
this
.
groupBox2
.
SuspendLayout
();
this
.
tableLayoutPanel4
.
SuspendLayout
();
this
.
tableLayoutPanel6
.
SuspendLayout
();
this
.
groupBox4
.
SuspendLayout
();
this
.
SuspendLayout
();
//
// DgvAgv
...
...
@@ -160,7 +164,7 @@
this
.
DgvAgv
.
RowHeadersVisible
=
false
;
this
.
DgvAgv
.
RowHeadersWidth
=
51
;
this
.
DgvAgv
.
RowTemplate
.
Height
=
23
;
this
.
DgvAgv
.
Size
=
new
System
.
Drawing
.
Size
(
1
061
,
125
);
this
.
DgvAgv
.
Size
=
new
System
.
Drawing
.
Size
(
1
105
,
141
);
this
.
DgvAgv
.
TabIndex
=
3
;
this
.
DgvAgv
.
CellClick
+=
new
System
.
Windows
.
Forms
.
DataGridViewCellEventHandler
(
this
.
DgvAgv_CellClick
);
//
...
...
@@ -266,7 +270,7 @@
this
.
tableLayoutPanel3
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Percent
,
20F
));
this
.
tableLayoutPanel3
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Percent
,
30F
));
this
.
tableLayoutPanel3
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Percent
,
50F
));
this
.
tableLayoutPanel3
.
Size
=
new
System
.
Drawing
.
Size
(
1
067
,
656
);
this
.
tableLayoutPanel3
.
Size
=
new
System
.
Drawing
.
Size
(
1
111
,
735
);
this
.
tableLayoutPanel3
.
TabIndex
=
7
;
//
// tabControl1
...
...
@@ -275,10 +279,10 @@
this
.
tabControl1
.
Controls
.
Add
(
this
.
tabPage2
);
this
.
tabControl1
.
Controls
.
Add
(
this
.
tabPage3
);
this
.
tabControl1
.
Dock
=
System
.
Windows
.
Forms
.
DockStyle
.
Fill
;
this
.
tabControl1
.
Location
=
new
System
.
Drawing
.
Point
(
3
,
3
3
0
);
this
.
tabControl1
.
Location
=
new
System
.
Drawing
.
Point
(
3
,
3
7
0
);
this
.
tabControl1
.
Name
=
"tabControl1"
;
this
.
tabControl1
.
SelectedIndex
=
0
;
this
.
tabControl1
.
Size
=
new
System
.
Drawing
.
Size
(
1
061
,
323
);
this
.
tabControl1
.
Size
=
new
System
.
Drawing
.
Size
(
1
105
,
362
);
this
.
tabControl1
.
TabIndex
=
7
;
//
// tabPage1
...
...
@@ -287,7 +291,7 @@
this
.
tabPage1
.
Location
=
new
System
.
Drawing
.
Point
(
4
,
22
);
this
.
tabPage1
.
Name
=
"tabPage1"
;
this
.
tabPage1
.
Padding
=
new
System
.
Windows
.
Forms
.
Padding
(
3
);
this
.
tabPage1
.
Size
=
new
System
.
Drawing
.
Size
(
10
53
,
297
);
this
.
tabPage1
.
Size
=
new
System
.
Drawing
.
Size
(
10
97
,
336
);
this
.
tabPage1
.
TabIndex
=
0
;
this
.
tabPage1
.
Text
=
"节点状态&产线任务"
;
this
.
tabPage1
.
UseVisualStyleBackColor
=
true
;
...
...
@@ -305,7 +309,7 @@
this
.
tableLayoutPanel2
.
Name
=
"tableLayoutPanel2"
;
this
.
tableLayoutPanel2
.
RowCount
=
1
;
this
.
tableLayoutPanel2
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Percent
,
50F
));
this
.
tableLayoutPanel2
.
Size
=
new
System
.
Drawing
.
Size
(
10
47
,
291
);
this
.
tableLayoutPanel2
.
Size
=
new
System
.
Drawing
.
Size
(
10
91
,
330
);
this
.
tableLayoutPanel2
.
TabIndex
=
34
;
//
// DgvNode
...
...
@@ -337,7 +341,7 @@
this
.
DgvNode
.
RowHeadersVisible
=
false
;
this
.
DgvNode
.
RowHeadersWidth
=
50
;
this
.
DgvNode
.
RowTemplate
.
Height
=
23
;
this
.
DgvNode
.
Size
=
new
System
.
Drawing
.
Size
(
584
,
285
);
this
.
DgvNode
.
Size
=
new
System
.
Drawing
.
Size
(
609
,
324
);
this
.
DgvNode
.
TabIndex
=
1
;
this
.
DgvNode
.
CellContentClick
+=
new
System
.
Windows
.
Forms
.
DataGridViewCellEventHandler
(
this
.
DgvNode_CellClick
);
//
...
...
@@ -416,11 +420,11 @@
this
.
groupBox1
.
Controls
.
Add
(
this
.
tableLayoutPanel5
);
this
.
groupBox1
.
Dock
=
System
.
Windows
.
Forms
.
DockStyle
.
Fill
;
this
.
groupBox1
.
Font
=
new
System
.
Drawing
.
Font
(
"宋体"
,
10.8F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
groupBox1
.
Location
=
new
System
.
Drawing
.
Point
(
592
,
2
);
this
.
groupBox1
.
Location
=
new
System
.
Drawing
.
Point
(
617
,
2
);
this
.
groupBox1
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
groupBox1
.
Name
=
"groupBox1"
;
this
.
groupBox1
.
Padding
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
groupBox1
.
Size
=
new
System
.
Drawing
.
Size
(
4
53
,
287
);
this
.
groupBox1
.
Size
=
new
System
.
Drawing
.
Size
(
4
72
,
326
);
this
.
groupBox1
.
TabIndex
=
33
;
this
.
groupBox1
.
TabStop
=
false
;
this
.
groupBox1
.
Text
=
"任务信息"
;
...
...
@@ -442,18 +446,18 @@
this
.
tableLayoutPanel5
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Percent
,
15F
));
this
.
tableLayoutPanel5
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Percent
,
15F
));
this
.
tableLayoutPanel5
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Percent
,
55F
));
this
.
tableLayoutPanel5
.
Size
=
new
System
.
Drawing
.
Size
(
4
49
,
266
);
this
.
tableLayoutPanel5
.
Size
=
new
System
.
Drawing
.
Size
(
4
68
,
305
);
this
.
tableLayoutPanel5
.
TabIndex
=
2
;
//
// groupBox5
//
this
.
groupBox5
.
Controls
.
Add
(
this
.
lblDestInfo
);
this
.
groupBox5
.
Dock
=
System
.
Windows
.
Forms
.
DockStyle
.
Fill
;
this
.
groupBox5
.
Location
=
new
System
.
Drawing
.
Point
(
2
,
4
1
);
this
.
groupBox5
.
Location
=
new
System
.
Drawing
.
Point
(
2
,
4
7
);
this
.
groupBox5
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
groupBox5
.
Name
=
"groupBox5"
;
this
.
groupBox5
.
Padding
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
groupBox5
.
Size
=
new
System
.
Drawing
.
Size
(
4
45
,
35
);
this
.
groupBox5
.
Size
=
new
System
.
Drawing
.
Size
(
4
64
,
41
);
this
.
groupBox5
.
TabIndex
=
2
;
this
.
groupBox5
.
TabStop
=
false
;
this
.
groupBox5
.
Text
=
"出料信息"
;
...
...
@@ -465,7 +469,7 @@
this
.
lblDestInfo
.
Location
=
new
System
.
Drawing
.
Point
(
2
,
19
);
this
.
lblDestInfo
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
,
0
,
2
,
0
);
this
.
lblDestInfo
.
Name
=
"lblDestInfo"
;
this
.
lblDestInfo
.
Size
=
new
System
.
Drawing
.
Size
(
4
41
,
14
);
this
.
lblDestInfo
.
Size
=
new
System
.
Drawing
.
Size
(
4
60
,
20
);
this
.
lblDestInfo
.
TabIndex
=
40
;
this
.
lblDestInfo
.
Text
=
"lblDestInfo"
;
//
...
...
@@ -477,7 +481,7 @@
this
.
groupBox3
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
groupBox3
.
Name
=
"groupBox3"
;
this
.
groupBox3
.
Padding
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
groupBox3
.
Size
=
new
System
.
Drawing
.
Size
(
4
45
,
35
);
this
.
groupBox3
.
Size
=
new
System
.
Drawing
.
Size
(
4
64
,
41
);
this
.
groupBox3
.
TabIndex
=
0
;
this
.
groupBox3
.
TabStop
=
false
;
this
.
groupBox3
.
Text
=
"双层线工单信息"
;
...
...
@@ -489,7 +493,7 @@
this
.
lblWO
.
Location
=
new
System
.
Drawing
.
Point
(
2
,
19
);
this
.
lblWO
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
,
0
,
2
,
0
);
this
.
lblWO
.
Name
=
"lblWO"
;
this
.
lblWO
.
Size
=
new
System
.
Drawing
.
Size
(
4
41
,
14
);
this
.
lblWO
.
Size
=
new
System
.
Drawing
.
Size
(
4
60
,
20
);
this
.
lblWO
.
TabIndex
=
40
;
this
.
lblWO
.
Text
=
"lblWO"
;
//
...
...
@@ -500,12 +504,12 @@
this
.
tableLayoutPanel7
.
ColumnStyles
.
Add
(
new
System
.
Windows
.
Forms
.
ColumnStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Absolute
,
20F
));
this
.
tableLayoutPanel7
.
Controls
.
Add
(
this
.
lblWarn
,
0
,
0
);
this
.
tableLayoutPanel7
.
Dock
=
System
.
Windows
.
Forms
.
DockStyle
.
Fill
;
this
.
tableLayoutPanel7
.
Location
=
new
System
.
Drawing
.
Point
(
2
,
80
);
this
.
tableLayoutPanel7
.
Location
=
new
System
.
Drawing
.
Point
(
2
,
92
);
this
.
tableLayoutPanel7
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
tableLayoutPanel7
.
Name
=
"tableLayoutPanel7"
;
this
.
tableLayoutPanel7
.
RowCount
=
1
;
this
.
tableLayoutPanel7
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Percent
,
100F
));
this
.
tableLayoutPanel7
.
Size
=
new
System
.
Drawing
.
Size
(
4
45
,
35
);
this
.
tableLayoutPanel7
.
Size
=
new
System
.
Drawing
.
Size
(
4
64
,
41
);
this
.
tableLayoutPanel7
.
TabIndex
=
3
;
//
// lblWarn
...
...
@@ -516,7 +520,7 @@
this
.
lblWarn
.
Location
=
new
System
.
Drawing
.
Point
(
2
,
0
);
this
.
lblWarn
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
,
0
,
2
,
0
);
this
.
lblWarn
.
Name
=
"lblWarn"
;
this
.
lblWarn
.
Size
=
new
System
.
Drawing
.
Size
(
4
41
,
35
);
this
.
lblWarn
.
Size
=
new
System
.
Drawing
.
Size
(
4
60
,
41
);
this
.
lblWarn
.
TabIndex
=
41
;
this
.
lblWarn
.
TextAlign
=
System
.
Drawing
.
ContentAlignment
.
MiddleLeft
;
//
...
...
@@ -525,9 +529,9 @@
this
.
grpUnlock
.
Controls
.
Add
(
this
.
tblLayoutUnlock
);
this
.
grpUnlock
.
Dock
=
System
.
Windows
.
Forms
.
DockStyle
.
Fill
;
this
.
grpUnlock
.
Font
=
new
System
.
Drawing
.
Font
(
"宋体"
,
10.5F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
grpUnlock
.
Location
=
new
System
.
Drawing
.
Point
(
3
,
1
20
);
this
.
grpUnlock
.
Location
=
new
System
.
Drawing
.
Point
(
3
,
1
38
);
this
.
grpUnlock
.
Name
=
"grpUnlock"
;
this
.
grpUnlock
.
Size
=
new
System
.
Drawing
.
Size
(
4
43
,
143
);
this
.
grpUnlock
.
Size
=
new
System
.
Drawing
.
Size
(
4
62
,
164
);
this
.
grpUnlock
.
TabIndex
=
4
;
this
.
grpUnlock
.
TabStop
=
false
;
this
.
grpUnlock
.
Text
=
"解绑信息"
;
...
...
@@ -545,7 +549,7 @@
this
.
tblLayoutUnlock
.
Name
=
"tblLayoutUnlock"
;
this
.
tblLayoutUnlock
.
RowCount
=
1
;
this
.
tblLayoutUnlock
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Percent
,
50F
));
this
.
tblLayoutUnlock
.
Size
=
new
System
.
Drawing
.
Size
(
4
37
,
121
);
this
.
tblLayoutUnlock
.
Size
=
new
System
.
Drawing
.
Size
(
4
56
,
142
);
this
.
tblLayoutUnlock
.
TabIndex
=
1
;
//
// dgvUnlockDetail
...
...
@@ -554,13 +558,13 @@
this
.
dgvUnlockDetail
.
AutoSizeRowsMode
=
System
.
Windows
.
Forms
.
DataGridViewAutoSizeRowsMode
.
AllCells
;
this
.
dgvUnlockDetail
.
ColumnHeadersHeightSizeMode
=
System
.
Windows
.
Forms
.
DataGridViewColumnHeadersHeightSizeMode
.
AutoSize
;
this
.
dgvUnlockDetail
.
Dock
=
System
.
Windows
.
Forms
.
DockStyle
.
Fill
;
this
.
dgvUnlockDetail
.
Location
=
new
System
.
Drawing
.
Point
(
2
2
1
,
3
);
this
.
dgvUnlockDetail
.
Location
=
new
System
.
Drawing
.
Point
(
2
3
1
,
3
);
this
.
dgvUnlockDetail
.
Name
=
"dgvUnlockDetail"
;
this
.
dgvUnlockDetail
.
ReadOnly
=
true
;
this
.
dgvUnlockDetail
.
RowHeadersVisible
=
false
;
this
.
dgvUnlockDetail
.
RowHeadersWidthSizeMode
=
System
.
Windows
.
Forms
.
DataGridViewRowHeadersWidthSizeMode
.
AutoSizeToAllHeaders
;
this
.
dgvUnlockDetail
.
RowTemplate
.
Height
=
23
;
this
.
dgvUnlockDetail
.
Size
=
new
System
.
Drawing
.
Size
(
2
13
,
115
);
this
.
dgvUnlockDetail
.
Size
=
new
System
.
Drawing
.
Size
(
2
22
,
136
);
this
.
dgvUnlockDetail
.
TabIndex
=
1
;
//
// dgvUnlockInfo
...
...
@@ -574,7 +578,7 @@
this
.
dgvUnlockInfo
.
ReadOnly
=
true
;
this
.
dgvUnlockInfo
.
RowHeadersVisible
=
false
;
this
.
dgvUnlockInfo
.
RowTemplate
.
Height
=
23
;
this
.
dgvUnlockInfo
.
Size
=
new
System
.
Drawing
.
Size
(
2
12
,
115
);
this
.
dgvUnlockInfo
.
Size
=
new
System
.
Drawing
.
Size
(
2
22
,
136
);
this
.
dgvUnlockInfo
.
TabIndex
=
0
;
//
// tabPage2
...
...
@@ -677,15 +681,15 @@
//
// tabPage3
//
this
.
tabPage3
.
Controls
.
Add
(
this
.
groupBox4
);
this
.
tabPage3
.
Controls
.
Add
(
this
.
groupBox6
);
this
.
tabPage3
.
Controls
.
Add
(
this
.
groupBox7
);
this
.
tabPage3
.
Controls
.
Add
(
this
.
groupBox2
);
this
.
tabPage3
.
Controls
.
Add
(
this
.
BtnMissionAdd
);
this
.
tabPage3
.
Controls
.
Add
(
this
.
LstAgvPlace
);
this
.
tabPage3
.
Location
=
new
System
.
Drawing
.
Point
(
4
,
22
);
this
.
tabPage3
.
Name
=
"tabPage3"
;
this
.
tabPage3
.
Padding
=
new
System
.
Windows
.
Forms
.
Padding
(
3
);
this
.
tabPage3
.
Size
=
new
System
.
Drawing
.
Size
(
10
53
,
297
);
this
.
tabPage3
.
Size
=
new
System
.
Drawing
.
Size
(
10
97
,
336
);
this
.
tabPage3
.
TabIndex
=
2
;
this
.
tabPage3
.
Text
=
"手动"
;
this
.
tabPage3
.
UseVisualStyleBackColor
=
true
;
...
...
@@ -764,25 +768,9 @@
this
.
cmbBoxLineName
.
Size
=
new
System
.
Drawing
.
Size
(
137
,
20
);
this
.
cmbBoxLineName
.
TabIndex
=
39
;
//
// groupBox7
//
this
.
groupBox7
.
Controls
.
Add
(
this
.
txtBoxLineName
);
this
.
groupBox7
.
Controls
.
Add
(
this
.
label8
);
this
.
groupBox7
.
Controls
.
Add
(
this
.
label7
);
this
.
groupBox7
.
Controls
.
Add
(
this
.
btnUpdateStatus
);
this
.
groupBox7
.
Controls
.
Add
(
this
.
txtBoxRFID
);
this
.
groupBox7
.
Location
=
new
System
.
Drawing
.
Point
(
593
,
24
);
this
.
groupBox7
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
groupBox7
.
Name
=
"groupBox7"
;
this
.
groupBox7
.
Padding
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
groupBox7
.
Size
=
new
System
.
Drawing
.
Size
(
153
,
121
);
this
.
groupBox7
.
TabIndex
=
36
;
this
.
groupBox7
.
TabStop
=
false
;
this
.
groupBox7
.
Text
=
"物料状态上报"
;
//
// txtBoxLineName
//
this
.
txtBoxLineName
.
Location
=
new
System
.
Drawing
.
Point
(
60
,
50
);
this
.
txtBoxLineName
.
Location
=
new
System
.
Drawing
.
Point
(
55
,
57
);
this
.
txtBoxLineName
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
txtBoxLineName
.
Name
=
"txtBoxLineName"
;
this
.
txtBoxLineName
.
Size
=
new
System
.
Drawing
.
Size
(
77
,
21
);
...
...
@@ -791,7 +779,7 @@
// label8
//
this
.
label8
.
AutoSize
=
true
;
this
.
label8
.
Location
=
new
System
.
Drawing
.
Point
(
4
,
58
);
this
.
label8
.
Location
=
new
System
.
Drawing
.
Point
(
4
,
66
);
this
.
label8
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
,
0
,
2
,
0
);
this
.
label8
.
Name
=
"label8"
;
this
.
label8
.
Size
=
new
System
.
Drawing
.
Size
(
47
,
12
);
...
...
@@ -801,7 +789,7 @@
// label7
//
this
.
label7
.
AutoSize
=
true
;
this
.
label7
.
Location
=
new
System
.
Drawing
.
Point
(
4
,
2
4
);
this
.
label7
.
Location
=
new
System
.
Drawing
.
Point
(
6
,
3
4
);
this
.
label7
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
,
0
,
2
,
0
);
this
.
label7
.
Name
=
"label7"
;
this
.
label7
.
Size
=
new
System
.
Drawing
.
Size
(
35
,
12
);
...
...
@@ -810,18 +798,18 @@
//
// btnUpdateStatus
//
this
.
btnUpdateStatus
.
Location
=
new
System
.
Drawing
.
Point
(
37
,
78
);
this
.
btnUpdateStatus
.
Location
=
new
System
.
Drawing
.
Point
(
8
,
102
);
this
.
btnUpdateStatus
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
btnUpdateStatus
.
Name
=
"btnUpdateStatus"
;
this
.
btnUpdateStatus
.
Size
=
new
System
.
Drawing
.
Size
(
7
5
,
39
);
this
.
btnUpdateStatus
.
Size
=
new
System
.
Drawing
.
Size
(
12
5
,
39
);
this
.
btnUpdateStatus
.
TabIndex
=
41
;
this
.
btnUpdateStatus
.
Text
=
"上报"
;
this
.
btnUpdateStatus
.
Text
=
"
物料状态
上报"
;
this
.
btnUpdateStatus
.
UseVisualStyleBackColor
=
true
;
this
.
btnUpdateStatus
.
Click
+=
new
System
.
EventHandler
(
this
.
btnUpdateStatus_Click
);
//
// txtBoxRFID
//
this
.
txtBoxRFID
.
Location
=
new
System
.
Drawing
.
Point
(
60
,
19
);
this
.
txtBoxRFID
.
Location
=
new
System
.
Drawing
.
Point
(
55
,
26
);
this
.
txtBoxRFID
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
txtBoxRFID
.
Name
=
"txtBoxRFID"
;
this
.
txtBoxRFID
.
Size
=
new
System
.
Drawing
.
Size
(
77
,
21
);
...
...
@@ -833,18 +821,18 @@
this
.
groupBox2
.
Controls
.
Add
(
this
.
BtnClearError
);
this
.
groupBox2
.
Controls
.
Add
(
this
.
BtnMissionReady
);
this
.
groupBox2
.
Controls
.
Add
(
this
.
BtnMissionPause
);
this
.
groupBox2
.
Location
=
new
System
.
Drawing
.
Point
(
770
,
24
);
this
.
groupBox2
.
Location
=
new
System
.
Drawing
.
Point
(
583
,
24
);
this
.
groupBox2
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
groupBox2
.
Name
=
"groupBox2"
;
this
.
groupBox2
.
Padding
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
groupBox2
.
Size
=
new
System
.
Drawing
.
Size
(
262
,
177
);
this
.
groupBox2
.
Size
=
new
System
.
Drawing
.
Size
(
193
,
177
);
this
.
groupBox2
.
TabIndex
=
32
;
this
.
groupBox2
.
TabStop
=
false
;
this
.
groupBox2
.
Text
=
"操作"
;
this
.
groupBox2
.
Text
=
"
小车
操作"
;
//
// btnReSendTask
//
this
.
btnReSendTask
.
Location
=
new
System
.
Drawing
.
Point
(
152
,
102
);
this
.
btnReSendTask
.
Location
=
new
System
.
Drawing
.
Point
(
96
,
102
);
this
.
btnReSendTask
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
btnReSendTask
.
Name
=
"btnReSendTask"
;
this
.
btnReSendTask
.
Size
=
new
System
.
Drawing
.
Size
(
75
,
52
);
...
...
@@ -855,7 +843,7 @@
//
// BtnClearError
//
this
.
BtnClearError
.
Location
=
new
System
.
Drawing
.
Point
(
3
5
,
102
);
this
.
BtnClearError
.
Location
=
new
System
.
Drawing
.
Point
(
5
,
102
);
this
.
BtnClearError
.
Name
=
"BtnClearError"
;
this
.
BtnClearError
.
Size
=
new
System
.
Drawing
.
Size
(
75
,
52
);
this
.
BtnClearError
.
TabIndex
=
19
;
...
...
@@ -865,7 +853,7 @@
//
// BtnMissionReady
//
this
.
BtnMissionReady
.
Location
=
new
System
.
Drawing
.
Point
(
35
,
19
);
this
.
BtnMissionReady
.
Location
=
new
System
.
Drawing
.
Point
(
5
,
23
);
this
.
BtnMissionReady
.
Name
=
"BtnMissionReady"
;
this
.
BtnMissionReady
.
Size
=
new
System
.
Drawing
.
Size
(
75
,
52
);
this
.
BtnMissionReady
.
TabIndex
=
1
;
...
...
@@ -875,7 +863,7 @@
//
// BtnMissionPause
//
this
.
BtnMissionPause
.
Location
=
new
System
.
Drawing
.
Point
(
152
,
15
);
this
.
BtnMissionPause
.
Location
=
new
System
.
Drawing
.
Point
(
96
,
23
);
this
.
BtnMissionPause
.
Name
=
"BtnMissionPause"
;
this
.
BtnMissionPause
.
Size
=
new
System
.
Drawing
.
Size
(
75
,
52
);
this
.
BtnMissionPause
.
TabIndex
=
2
;
...
...
@@ -901,7 +889,7 @@
this
.
LstAgvPlace
.
ItemHeight
=
12
;
this
.
LstAgvPlace
.
Location
=
new
System
.
Drawing
.
Point
(
3
,
3
);
this
.
LstAgvPlace
.
Name
=
"LstAgvPlace"
;
this
.
LstAgvPlace
.
Size
=
new
System
.
Drawing
.
Size
(
150
,
291
);
this
.
LstAgvPlace
.
Size
=
new
System
.
Drawing
.
Size
(
150
,
330
);
this
.
LstAgvPlace
.
TabIndex
=
0
;
//
// tableLayoutPanel4
...
...
@@ -910,13 +898,13 @@
this
.
tableLayoutPanel4
.
ColumnStyles
.
Add
(
new
System
.
Windows
.
Forms
.
ColumnStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Percent
,
100F
));
this
.
tableLayoutPanel4
.
Controls
.
Add
(
this
.
tableLayoutPanel6
,
0
,
0
);
this
.
tableLayoutPanel4
.
Dock
=
System
.
Windows
.
Forms
.
DockStyle
.
Fill
;
this
.
tableLayoutPanel4
.
Location
=
new
System
.
Drawing
.
Point
(
2
,
1
33
);
this
.
tableLayoutPanel4
.
Location
=
new
System
.
Drawing
.
Point
(
2
,
1
49
);
this
.
tableLayoutPanel4
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
tableLayoutPanel4
.
Name
=
"tableLayoutPanel4"
;
this
.
tableLayoutPanel4
.
RowCount
=
1
;
this
.
tableLayoutPanel4
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Percent
,
100F
));
this
.
tableLayoutPanel4
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Absolute
,
169F
));
this
.
tableLayoutPanel4
.
Size
=
new
System
.
Drawing
.
Size
(
1
063
,
192
);
this
.
tableLayoutPanel4
.
Size
=
new
System
.
Drawing
.
Size
(
1
107
,
216
);
this
.
tableLayoutPanel4
.
TabIndex
=
8
;
//
// tableLayoutPanel6
...
...
@@ -940,7 +928,7 @@
this
.
tableLayoutPanel6
.
RowCount
=
2
;
this
.
tableLayoutPanel6
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Percent
,
50F
));
this
.
tableLayoutPanel6
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Percent
,
50F
));
this
.
tableLayoutPanel6
.
Size
=
new
System
.
Drawing
.
Size
(
1
059
,
188
);
this
.
tableLayoutPanel6
.
Size
=
new
System
.
Drawing
.
Size
(
1
103
,
212
);
this
.
tableLayoutPanel6
.
TabIndex
=
0
;
//
// label6
...
...
@@ -948,10 +936,10 @@
this
.
label6
.
AutoSize
=
true
;
this
.
label6
.
Dock
=
System
.
Windows
.
Forms
.
DockStyle
.
Fill
;
this
.
label6
.
Font
=
new
System
.
Drawing
.
Font
(
"宋体"
,
10.8F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
label6
.
Location
=
new
System
.
Drawing
.
Point
(
7
08
,
95
);
this
.
label6
.
Location
=
new
System
.
Drawing
.
Point
(
7
37
,
107
);
this
.
label6
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
,
0
,
2
,
0
);
this
.
label6
.
Name
=
"label6"
;
this
.
label6
.
Size
=
new
System
.
Drawing
.
Size
(
3
46
,
90
);
this
.
label6
.
Size
=
new
System
.
Drawing
.
Size
(
3
61
,
102
);
this
.
label6
.
TabIndex
=
5
;
this
.
label6
.
Text
=
"label6"
;
//
...
...
@@ -960,10 +948,10 @@
this
.
label5
.
AutoSize
=
true
;
this
.
label5
.
Dock
=
System
.
Windows
.
Forms
.
DockStyle
.
Fill
;
this
.
label5
.
Font
=
new
System
.
Drawing
.
Font
(
"宋体"
,
10.8F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
label5
.
Location
=
new
System
.
Drawing
.
Point
(
3
56
,
95
);
this
.
label5
.
Location
=
new
System
.
Drawing
.
Point
(
3
71
,
107
);
this
.
label5
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
,
0
,
2
,
0
);
this
.
label5
.
Name
=
"label5"
;
this
.
label5
.
Size
=
new
System
.
Drawing
.
Size
(
3
45
,
90
);
this
.
label5
.
Size
=
new
System
.
Drawing
.
Size
(
3
59
,
102
);
this
.
label5
.
TabIndex
=
4
;
this
.
label5
.
Text
=
"label5"
;
//
...
...
@@ -972,10 +960,10 @@
this
.
label4
.
AutoSize
=
true
;
this
.
label4
.
Dock
=
System
.
Windows
.
Forms
.
DockStyle
.
Fill
;
this
.
label4
.
Font
=
new
System
.
Drawing
.
Font
(
"宋体"
,
10.8F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
label4
.
Location
=
new
System
.
Drawing
.
Point
(
5
,
95
);
this
.
label4
.
Location
=
new
System
.
Drawing
.
Point
(
5
,
107
);
this
.
label4
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
,
0
,
2
,
0
);
this
.
label4
.
Name
=
"label4"
;
this
.
label4
.
Size
=
new
System
.
Drawing
.
Size
(
3
44
,
90
);
this
.
label4
.
Size
=
new
System
.
Drawing
.
Size
(
3
59
,
102
);
this
.
label4
.
TabIndex
=
3
;
this
.
label4
.
Text
=
"label4"
;
//
...
...
@@ -984,10 +972,10 @@
this
.
label3
.
AutoSize
=
true
;
this
.
label3
.
Dock
=
System
.
Windows
.
Forms
.
DockStyle
.
Fill
;
this
.
label3
.
Font
=
new
System
.
Drawing
.
Font
(
"宋体"
,
10.8F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
label3
.
Location
=
new
System
.
Drawing
.
Point
(
7
08
,
3
);
this
.
label3
.
Location
=
new
System
.
Drawing
.
Point
(
7
37
,
3
);
this
.
label3
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
,
0
,
2
,
0
);
this
.
label3
.
Name
=
"label3"
;
this
.
label3
.
Size
=
new
System
.
Drawing
.
Size
(
3
46
,
89
);
this
.
label3
.
Size
=
new
System
.
Drawing
.
Size
(
3
61
,
101
);
this
.
label3
.
TabIndex
=
2
;
this
.
label3
.
Text
=
"label3"
;
//
...
...
@@ -996,10 +984,10 @@
this
.
label2
.
AutoSize
=
true
;
this
.
label2
.
Dock
=
System
.
Windows
.
Forms
.
DockStyle
.
Fill
;
this
.
label2
.
Font
=
new
System
.
Drawing
.
Font
(
"宋体"
,
10.8F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
label2
.
Location
=
new
System
.
Drawing
.
Point
(
3
56
,
3
);
this
.
label2
.
Location
=
new
System
.
Drawing
.
Point
(
3
71
,
3
);
this
.
label2
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
,
0
,
2
,
0
);
this
.
label2
.
Name
=
"label2"
;
this
.
label2
.
Size
=
new
System
.
Drawing
.
Size
(
3
45
,
89
);
this
.
label2
.
Size
=
new
System
.
Drawing
.
Size
(
3
59
,
101
);
this
.
label2
.
TabIndex
=
1
;
this
.
label2
.
Text
=
"label2"
;
//
...
...
@@ -1011,15 +999,62 @@
this
.
label1
.
Location
=
new
System
.
Drawing
.
Point
(
5
,
3
);
this
.
label1
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
,
0
,
2
,
0
);
this
.
label1
.
Name
=
"label1"
;
this
.
label1
.
Size
=
new
System
.
Drawing
.
Size
(
3
44
,
89
);
this
.
label1
.
Size
=
new
System
.
Drawing
.
Size
(
3
59
,
101
);
this
.
label1
.
TabIndex
=
0
;
this
.
label1
.
Text
=
"label1"
;
//
// groupBox4
//
this
.
groupBox4
.
Controls
.
Add
(
this
.
btnClearStationRFID
);
this
.
groupBox4
.
Controls
.
Add
(
this
.
label11
);
this
.
groupBox4
.
Controls
.
Add
(
this
.
txtBoxLineName
);
this
.
groupBox4
.
Controls
.
Add
(
this
.
btnUpdateStatus
);
this
.
groupBox4
.
Controls
.
Add
(
this
.
btnGetStationRfid
);
this
.
groupBox4
.
Controls
.
Add
(
this
.
label8
);
this
.
groupBox4
.
Controls
.
Add
(
this
.
label7
);
this
.
groupBox4
.
Controls
.
Add
(
this
.
txtBoxRFID
);
this
.
groupBox4
.
Location
=
new
System
.
Drawing
.
Point
(
800
,
24
);
this
.
groupBox4
.
Name
=
"groupBox4"
;
this
.
groupBox4
.
Size
=
new
System
.
Drawing
.
Size
(
291
,
185
);
this
.
groupBox4
.
TabIndex
=
38
;
this
.
groupBox4
.
TabStop
=
false
;
this
.
groupBox4
.
Text
=
"操作"
;
//
// btnGetStationRfid
//
this
.
btnGetStationRfid
.
Location
=
new
System
.
Drawing
.
Point
(
161
,
23
);
this
.
btnGetStationRfid
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
btnGetStationRfid
.
Name
=
"btnGetStationRfid"
;
this
.
btnGetStationRfid
.
Size
=
new
System
.
Drawing
.
Size
(
125
,
35
);
this
.
btnGetStationRfid
.
TabIndex
=
41
;
this
.
btnGetStationRfid
.
Text
=
"获取接驳台RFID"
;
this
.
btnGetStationRfid
.
UseVisualStyleBackColor
=
true
;
this
.
btnGetStationRfid
.
Click
+=
new
System
.
EventHandler
(
this
.
btnGetStationRfid_Click
);
//
// label11
//
this
.
label11
.
AutoSize
=
true
;
this
.
label11
.
Location
=
new
System
.
Drawing
.
Point
(
6
,
155
);
this
.
label11
.
Name
=
"label11"
;
this
.
label11
.
Size
=
new
System
.
Drawing
.
Size
(
0
,
12
);
this
.
label11
.
TabIndex
=
45
;
//
// btnClearStationRFID
//
this
.
btnClearStationRFID
.
Location
=
new
System
.
Drawing
.
Point
(
161
,
67
);
this
.
btnClearStationRFID
.
Margin
=
new
System
.
Windows
.
Forms
.
Padding
(
2
);
this
.
btnClearStationRFID
.
Name
=
"btnClearStationRFID"
;
this
.
btnClearStationRFID
.
Size
=
new
System
.
Drawing
.
Size
(
125
,
35
);
this
.
btnClearStationRFID
.
TabIndex
=
46
;
this
.
btnClearStationRFID
.
Text
=
"清除接驳台RFID"
;
this
.
btnClearStationRFID
.
UseVisualStyleBackColor
=
true
;
this
.
btnClearStationRFID
.
Click
+=
new
System
.
EventHandler
(
this
.
btnClearStationRFID_Click
);
//
// FrmMain
//
this
.
AutoScaleDimensions
=
new
System
.
Drawing
.
SizeF
(
6F
,
12F
);
this
.
AutoScaleMode
=
System
.
Windows
.
Forms
.
AutoScaleMode
.
Font
;
this
.
ClientSize
=
new
System
.
Drawing
.
Size
(
1
067
,
656
);
this
.
ClientSize
=
new
System
.
Drawing
.
Size
(
1
111
,
735
);
this
.
Controls
.
Add
(
this
.
tableLayoutPanel3
);
this
.
Icon
=
((
System
.
Drawing
.
Icon
)(
resources
.
GetObject
(
"$this.Icon"
)));
this
.
Name
=
"FrmMain"
;
...
...
@@ -1051,12 +1086,12 @@
this
.
tabPage3
.
ResumeLayout
(
false
);
this
.
groupBox6
.
ResumeLayout
(
false
);
this
.
groupBox6
.
PerformLayout
();
this
.
groupBox7
.
ResumeLayout
(
false
);
this
.
groupBox7
.
PerformLayout
();
this
.
groupBox2
.
ResumeLayout
(
false
);
this
.
tableLayoutPanel4
.
ResumeLayout
(
false
);
this
.
tableLayoutPanel6
.
ResumeLayout
(
false
);
this
.
tableLayoutPanel6
.
PerformLayout
();
this
.
groupBox4
.
ResumeLayout
(
false
);
this
.
groupBox4
.
PerformLayout
();
this
.
ResumeLayout
(
false
);
}
...
...
@@ -1100,7 +1135,6 @@
private
System
.
Windows
.
Forms
.
TableLayoutPanel
tableLayoutPanel5
;
private
System
.
Windows
.
Forms
.
GroupBox
groupBox5
;
private
System
.
Windows
.
Forms
.
Label
lblDestInfo
;
private
System
.
Windows
.
Forms
.
GroupBox
groupBox7
;
private
System
.
Windows
.
Forms
.
Button
btnUpdateStatus
;
private
System
.
Windows
.
Forms
.
TextBox
txtBoxRFID
;
private
System
.
Windows
.
Forms
.
TableLayoutPanel
tableLayoutPanel7
;
...
...
@@ -1136,6 +1170,11 @@
private
System
.
Windows
.
Forms
.
DataGridView
dgvUnlockInfo
;
private
System
.
Windows
.
Forms
.
TableLayoutPanel
tblLayoutUnlock
;
private
System
.
Windows
.
Forms
.
DataGridView
dgvUnlockDetail
;
private
System
.
Windows
.
Forms
.
GroupBox
groupBox4
;
private
System
.
Windows
.
Forms
.
Button
btnGetStationRfid
;
private
System
.
ComponentModel
.
BackgroundWorker
backgroundWorker1
;
private
System
.
Windows
.
Forms
.
Label
label11
;
private
System
.
Windows
.
Forms
.
Button
btnClearStationRFID
;
}
}
AGVControl-ProductionLine/FrmMain.cs
查看文件 @
54be25c
...
...
@@ -214,9 +214,9 @@ namespace AGVControl
}
dgvUnlockInfo
.
DataSource
=
bs
;
//赋值控件自动更新
dgvUnlockDetail
.
DataSource
=
bs2
;
dgvUnlockDetail
.
DataSource
=
bs2
;
}));
this
.
Invoke
(
new
Action
(()=>
this
.
Invoke
(
new
Action
(()
=>
{
//grpUnlock.Text = "解绑总数:"+count;
}
...
...
@@ -616,9 +616,11 @@ namespace AGVControl
{
Task
.
Factory
.
StartNew
(()
=>
{
AGVManager
.
UpdateStatus
(
txtBoxRFID
.
Text
.
ToUpper
(),
txtBoxLineName
.
Text
.
ToUpper
());
bool
rtn
=
AGVManager
.
UpdateStatus
(
txtBoxRFID
.
Text
.
ToUpper
(),
txtBoxLineName
.
Text
.
ToUpper
());
this
.
Invoke
(
new
Action
(()
=>
{
label11
.
Text
=
rtn
?
"状态上报成功"
:
"状态上报失败"
;
}));
Common
.
LogInfo
(
string
.
Format
(
"手动上报状态 产线{0} 物料状态更新成功[{1}]"
,
txtBoxLineName
.
Text
.
ToUpper
(),
txtBoxRFID
.
Text
.
ToUpper
()));
txtBoxLineName
.
Text
=
""
;
txtBoxRFID
.
Text
=
""
;
});
}
catch
(
Exception
ex
)
...
...
@@ -662,5 +664,23 @@ namespace AGVControl
}
}
private
void
btnGetStationRfid_Click
(
object
sender
,
EventArgs
e
)
{
if
(
txtBoxLineName
.
Text
.
Equals
(
""
))
return
;
string
res
=
AGVManager
.
GetRFIDs
(
txtBoxLineName
.
Text
.
ToUpper
());
this
.
Invoke
(
new
Action
(()
=>
{
label11
.
Text
=
string
.
Format
(
"由里到外料架顺序:{0}"
,
res
);
}));
}
private
void
btnClearStationRFID_Click
(
object
sender
,
EventArgs
e
)
{
if
(!
txtBoxLineName
.
Text
.
Equals
(
""
)
&&
!
txtBoxRFID
.
Text
.
Equals
(
""
))
{
bool
rtn
=
AGVManager
.
ClearRFID
(
txtBoxLineName
.
Text
.
ToUpper
(),
txtBoxRFID
.
Text
.
ToUpper
());
this
.
Invoke
(
new
Action
(()
=>
{
label11
.
Text
=
rtn
?
"清除接驳RFID成功:"
+
txtBoxLineName
.
Text
+
" "
+
txtBoxRFID
.
Text
:
"清除接驳RFID失败:"
+
txtBoxLineName
.
Text
+
" "
+
txtBoxRFID
.
Text
;
}));
txtBoxLineName
.
Text
=
""
;
txtBoxRFID
.
Text
=
""
;
}
}
}
}
AGVControl-ProductionLine/FrmMain.resx
查看文件 @
54be25c
...
...
@@ -174,6 +174,9 @@
<metadata name="Column16.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="backgroundWorker1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
...
...
AGVControl-ProductionLine/Program.cs
查看文件 @
54be25c
...
...
@@ -51,7 +51,7 @@ namespace AGVControl
Common
.
control
=
new
BLL
.
Control
();
//获取节点位置
//
Common.GetNodesPosition();
Common
.
GetNodesPosition
();
Common
.
control
.
Start
();
Common
.
server
=
new
AgvServer
();
Common
.
server
.
Start
();
...
...
AGVControl-ProductionLine/bean/UnlockedShelf.cs
查看文件 @
54be25c
...
...
@@ -56,7 +56,7 @@ namespace AGVControl
System
.
Threading
.
Interlocked
.
Increment
(
ref
tmp
);
EmptyCnt
=
tmp
;
Rfids
.
Add
(
rfid
,
DateTime
.
Now
.
ToString
(
"yyyy/MM/dd/HH:mm:ss,fff"
));
// Common.WriteIni(NodeName, SettingString.EmptyShelfCnt, e
mptyCnt.ToString());
Common
.
WriteIni
(
NodeName
,
SettingString
.
EmptyShelfCnt
,
E
mptyCnt
.
ToString
());
//using (System.IO.StreamWriter file = new System.IO.StreamWriter(Common.CONFIG_PATH + "UnlockInfo.txt"))
//{
// foreach (var item in Rfids.Keys)
...
...
@@ -83,8 +83,12 @@ namespace AGVControl
int
tmp
=
EmptyCnt
;
System
.
Threading
.
Interlocked
.
Decrement
(
ref
tmp
);
EmptyCnt
=
tmp
;
Rfids
.
Remove
(
rfid
);
//Common.WriteIni(nodeName, SettingString.EmptyShelfCnt, emptyCnt.ToString());
if
(
EmptyCnt
.
Equals
(
0
)
&&
Rfids
.
Count
>
0
)
{
Rfids
.
Clear
();
}
//Rfids.Remove(rfid);
Common
.
WriteIni
(
NodeName
,
SettingString
.
EmptyShelfCnt
,
EmptyCnt
.
ToString
());
//using (System.IO.StreamWriter file = new System.IO.StreamWriter(Common.CONFIG_PATH + "UnlockInfo.txt"))
//{
// foreach (var item in Rfids.Keys)
...
...
AGVControl-ProductionLine/bean/job/GoEmptyShelfLineJob.cs
查看文件 @
54be25c
...
...
@@ -19,7 +19,7 @@ namespace AGVControl
/// </summary>
/// <param name="agvPlae">小车当前位置,空表示在待机位</param>
/// <param name="palce">空料架位置点</param>
public
GoEmptyShelfLineJob
(
string
agvPlae
,
string
palce
,
string
rfid
)
public
GoEmptyShelfLineJob
(
string
agvPlae
,
string
palce
,
string
rfid
)
{
EmptyShelfPlace
=
palce
;
this
.
agvPlae
=
agvPlae
;
...
...
@@ -63,10 +63,12 @@ namespace AGVControl
// CurTaskState = st;
if
(
TakeEmptyStep
.
IsStep
(
TAKE_EMPTY_STEP
.
NONE
))
{
if
(
nodeIdx
==
-
1
)
return
null
;
if
(
agvPlae
.
StartsWith
(
SettingString
.
C4_Name_Prefix
)
&&
EmptyShelfPlace
.
StartsWith
(
SettingString
.
D4_Name_Prefix
))
//4C->4D
{
TakeEmptyStep
.
ToNextStep
(
TAKE_EMPTY_STEP
.
WAIT_AGV_REACH_4D_DOOR
);
runInfo
=
"去空料架产线"
+
EmptyShelfPlace
+
",先前往4D门["
+
agvPlae
+
"->"
+
EmptyShelfPlace
+
"]"
+
"[RFID="
+
RFID
+
"]"
;
runInfo
=
"去空料架产线"
+
EmptyShelfPlace
+
",先前往4D门["
+
agvPlae
+
"->"
+
EmptyShelfPlace
+
"]"
+
"[RFID="
+
RFID
+
"]"
;
msg
+=
runInfo
;
TakeEmptyStep
.
Msg
=
msg
;
Common
.
DoorMission
(
agv
,
SettingString
.
DoorCToD
);
...
...
@@ -76,15 +78,15 @@ namespace AGVControl
&&
EmptyShelfPlace
.
StartsWith
(
SettingString
.
C4_Name_Prefix
))
//4D->4C
{
TakeEmptyStep
.
ToNextStep
(
TAKE_EMPTY_STEP
.
WAIT_AGV_REACH_4C_DOOR
);
runInfo
=
"去空料架产线"
+
EmptyShelfPlace
+
",先前往4C门["
+
agvPlae
+
"->"
+
EmptyShelfPlace
+
"]"
+
"[RFID="
+
RFID
+
"]"
;
runInfo
=
"去空料架产线"
+
EmptyShelfPlace
+
",先前往4C门["
+
agvPlae
+
"->"
+
EmptyShelfPlace
+
"]"
+
"[RFID="
+
RFID
+
"]"
;
msg
+=
runInfo
;
TakeEmptyStep
.
Msg
=
msg
;
Common
.
DoorMission
(
agv
,
SettingString
.
DoorDToC
);
UpdateJobTaskInfo
(
agv
.
CurTaskName
,
agv
.
CurTaskID
);
}
else
if
(
agvPlae
.
StartsWith
(
SettingString
.
C4_Name_Prefix
)
&&
EmptyShelfPlace
.
StartsWith
(
SettingString
.
C4_Name_Prefix
))
else
if
(
agvPlae
.
StartsWith
(
SettingString
.
C4_Name_Prefix
)
&&
EmptyShelfPlace
.
StartsWith
(
SettingString
.
C4_Name_Prefix
))
{
if
(
Common
.
Check4CTarget
(
agv
,
EmptyShelfPlace
))
//被占用
if
(
Common
.
Check4CTarget
(
agv
,
EmptyShelfPlace
))
//被占用
{
TakeEmptyStep
.
ToNextStep
(
TAKE_EMPTY_STEP
.
WAIT_REACH_TEMP_PLACE
);
runInfo
=
"目的地"
+
EmptyShelfPlace
+
"有小车占用,先到临时待机位"
+
"[RFID="
+
RFID
+
"]"
;
...
...
@@ -92,8 +94,8 @@ namespace AGVControl
TakeEmptyStep
.
Msg
=
msg
;
Common
.
MoveTo4CStandy
(
agv
);
UpdateJobTaskInfo
(
agv
.
CurTaskName
,
agv
.
CurTaskID
);
}
else
}
else
{
TakeEmptyStep
.
ToNextStep
(
TAKE_EMPTY_STEP
.
ASSIGN_AGV_TASK
);
runInfo
=
"开始执行回收空料架任务["
+
agvPlae
+
"->"
+
EmptyShelfPlace
+
"]"
+
"[RFID="
+
RFID
+
"]"
;
...
...
@@ -104,7 +106,7 @@ namespace AGVControl
else
{
TakeEmptyStep
.
ToNextStep
(
TAKE_EMPTY_STEP
.
ASSIGN_AGV_TASK
);
runInfo
=
"开始执行回收空料架任务["
+
agvPlae
+
"->"
+
EmptyShelfPlace
+
"]"
+
"[RFID="
+
RFID
+
"]"
;
runInfo
=
"开始执行回收空料架任务["
+
agvPlae
+
"->"
+
EmptyShelfPlace
+
"]"
+
"[RFID="
+
RFID
+
"]"
;
msg
+=
runInfo
;
TakeEmptyStep
.
Msg
=
msg
;
}
...
...
@@ -164,7 +166,7 @@ namespace AGVControl
if
(
nodeIdx
>
-
1
)
{
TakeEmptyStep
.
ToNextStep
(
TAKE_EMPTY_STEP
.
WAIT_AGV_START_TASK
);
runInfo
=
"AGV 添加任务:移动到"
+
EmptyShelfPlace
+
"[RFID="
+
RFID
+
"]"
;
runInfo
=
"AGV 添加任务:移动到"
+
EmptyShelfPlace
+
"[RFID="
+
RFID
+
"]"
;
msg
+=
runInfo
;
TakeEmptyStep
.
Msg
=
msg
;
Common
.
MoveToNode
(
agv
,
EmptyShelfPlace
);
...
...
@@ -173,7 +175,7 @@ namespace AGVControl
else
{
TakeEmptyStep
.
ToNextStep
(
TAKE_EMPTY_STEP
.
ASSIGN_AGV_TASK
);
runInfo
=
EmptyShelfPlace
+
" 不存在或未开启调用"
;
runInfo
=
EmptyShelfPlace
+
" 不存在或未开启调用"
;
msg
+=
runInfo
;
TakeEmptyStep
.
Msg
=
msg
;
}
...
...
@@ -183,7 +185,7 @@ namespace AGVControl
if
(
agv
.
CurTaskState
.
Equals
(
SettingString
.
Executing
))
{
TakeEmptyStep
.
ToNextStep
(
TAKE_EMPTY_STEP
.
WAIT_REACH_PLACE
);
runInfo
=
"AGV开始向目的地["
+
EmptyShelfPlace
+
"]移动"
+
"[RFID="
+
RFID
+
"]"
;
runInfo
=
"AGV开始向目的地["
+
EmptyShelfPlace
+
"]移动"
+
"[RFID="
+
RFID
+
"]"
;
msg
+=
runInfo
;
TakeEmptyStep
.
Msg
=
msg
;
}
...
...
@@ -203,7 +205,7 @@ namespace AGVControl
//else
{
TakeEmptyStep
.
ToNextStep
(
TAKE_EMPTY_STEP
.
WAIT_LINE_RESPONSE
);
runInfo
=
"AGV到达 "
+
EmptyShelfPlace
+
" 向产线发送出料架请求[ReadyLeave]"
+
"[RFID="
+
RFID
+
"]"
;
runInfo
=
"AGV到达 "
+
EmptyShelfPlace
+
" 向产线发送出料架请求[ReadyLeave]"
+
"[RFID="
+
RFID
+
"]"
;
msg
+=
runInfo
;
TakeEmptyStep
.
Msg
=
msg
;
if
(
nodeIdx
==
-
1
)
...
...
@@ -222,9 +224,9 @@ namespace AGVControl
}
else
if
(
TakeEmptyStep
.
IsStep
(
TAKE_EMPTY_STEP
.
WAIT_LINE_RESPONSE
))
{
if
(
nodeIdx
==
-
1
)
if
(
nodeIdx
==
-
1
)
{
runInfo
=
EmptyShelfPlace
+
" 未开启调用"
;
runInfo
=
EmptyShelfPlace
+
" 未开启调用"
;
msg
+=
runInfo
;
TakeEmptyStep
.
Msg
=
msg
;
return
this
;
...
...
@@ -260,18 +262,23 @@ namespace AGVControl
{
ClientNode
node
=
Common
.
nodeInfo
[
nodeIdx
];
//回收空料架数量减少1
Common
.
missionManager
.
DelMission
(
EmptyShelfPlace
,
RFID
);
runInfo
=
"空料架在["
+
EmptyShelfPlace
+
"]进入小车完成"
+
"[RFID="
+
RFID
+
"]"
;
Common
.
missionManager
.
DelMission
(
EmptyShelfPlace
,
RFID
);
if
(!
agvPlae
.
Equals
(
SettingString
.
D4FeederOut
)
&&
!
agvPlae
.
Equals
(
SettingString
.
C4FeederOut
))
AGVManager
.
ClearRFID
(
EmptyShelfPlace
,
RFID
);
runInfo
=
"空料架在["
+
EmptyShelfPlace
+
"]进入小车完成"
+
"[RFID="
+
RFID
+
"]"
;
msg
+=
runInfo
;
TakeEmptyStep
.
Msg
=
msg
;
//4DfeederOut默认大料架
if
(
agv
.
Place
.
Equals
(
SettingString
.
D4FeederOut
))
return
new
EmptyShelfBackJob
(
EmptyShelfPlace
,
eShelfType
.
BigShelf
);
else
if
(
agv
.
Place
.
Equals
(
SettingString
.
C4FeederOut
))
return
new
EmptyShelfBackJob
(
EmptyShelfPlace
,
eShelfType
.
BigShelf
);
else
if
(
agv
.
RFID
.
StartsWith
(
"D"
))
//if (agv.Place.Equals(SettingString.D4FeederOut))
//{
// return new EmptyShelfBackJob(EmptyShelfPlace, eShelfType.BigShelf);
//}
//else if(agv.Place.Equals(SettingString.C4FeederOut))
//{
// return new EmptyShelfBackJob(EmptyShelfPlace, eShelfType.BigShelf);
//}
if
(
agv
.
RFID
.
StartsWith
(
"D"
))
{
AGVManager
.
ClearRFID
(
EmptyShelfPlace
,
RFID
);
return
new
EmptyShelfBackJob
(
EmptyShelfPlace
,
eShelfType
.
SmallShelf
);
}
else
if
(
agv
.
RFID
.
StartsWith
(
"C"
))
...
...
@@ -285,7 +292,7 @@ namespace AGVControl
{
//链条停止
runInfo
=
"空料架在["
+
EmptyShelfPlace
+
"]进入小车超时["
+
timeOutValue
.
ToString
(
"f1"
)
+
"秒],请检查料架进入小车的情况"
+
"[RFID="
+
RFID
+
"]"
;
// msg += runInfo;
// msg += runInfo;
//TakeEmptyStep.Msg = msg;
}
...
...
AGVControl-ProductionLine/bean/node/ClientNode.cs
查看文件 @
54be25c
...
...
@@ -60,7 +60,7 @@ namespace AGVControl
{
return
Common
.
missionManager
.
GetUnlockCnt
(
Name
);
}
return
-
1
;
return
0
;
}
}
public
string
AliceName
{
get
;
set
;
}
...
...
AGVControl-ProductionLine/bean/node/DoubleLineNodeFor4C.cs
查看文件 @
54be25c
...
...
@@ -35,15 +35,12 @@ namespace AGVControl
{
if
(!
SettingString
.
C4_AGV_IPs
.
Contains
(
agv
.
IP
))
continue
;
if
(
agv
.
CurJob
is
GoEmptyShelfLineJob
||
agv
.
CurJob
is
EmptyShelfBackJob
)
if
(
agv
.
CurJob
is
GoEmptyShelfLineJob
)
//|| agv.CurJob is EmptyShelfBackJob
{
emptyJobCnt
++;
}
}
if
((
SettingString
.
AGVCNT
-
emptyJobCnt
).
Equals
(
2
))
//保留2辆小车出满料架
{
return
null
;
}
//出工单料的目的地是否有空料架
if
(
Common
.
FindEmptyShelfBeforeSendFullShelf
(
out
string
nodeName
,
out
rfid
))
{
...
...
@@ -61,6 +58,10 @@ namespace AGVControl
}
if
(
cnt
<
clientNode
.
EmptyShelfCnt
)
{
if
((
SettingString
.
AGVCNT
/
2
-
emptyJobCnt
).
Equals
(
2
))
//保留1辆小车出满料架
{
return
null
;
}
return
new
GoEmptyShelfLineJob
(
currentAgv
.
Place
,
nodeName
,
rfid
);
}
}
...
...
@@ -74,7 +75,13 @@ namespace AGVControl
{
int
i
=
Common
.
agvInfo
.
FindIndex
(
s
=>
s
.
CurJob
is
GoEmptyShelfLineJob
&&
((
GoEmptyShelfLineJob
)
s
.
CurJob
).
EmptyShelfPlace
.
Equals
(
emptyNodeName
));
if
(
i
==
-
1
)
return
new
GoEmptyShelfLineJob
(
currentAgv
.
Place
,
emptyNodeName
,
rfid
);
{
if
((
SettingString
.
AGVCNT
/
2
-
emptyJobCnt
).
Equals
(
2
))
//保留1辆小车出满料架
{
return
null
;
}
return
new
GoEmptyShelfLineJob
(
currentAgv
.
Place
,
emptyNodeName
,
rfid
);
}
}
}
...
...
AGVControl-ProductionLine/bean/node/DoubleLineNodeFor4D.cs
查看文件 @
54be25c
...
...
@@ -38,15 +38,11 @@ namespace AGVControl
{
if
(
SettingString
.
C4_AGV_IPs
.
Contains
(
agv
.
IP
))
continue
;
if
(
agv
.
CurJob
is
GoEmptyShelfLineJob
||
agv
.
CurJob
is
EmptyShelfBackJob
)
if
(
agv
.
CurJob
is
GoEmptyShelfLineJob
)
//|| agv.CurJob is EmptyShelfBackJob
{
emptyJobCnt
++;
}
}
if
((
SettingString
.
AGVCNT
/
2
-
emptyJobCnt
).
Equals
(
1
))
//保留1辆小车出满料架
{
return
null
;
}
//出工单料的目的地是否有空料架
if
(
Common
.
FindEmptyShelfBeforeSendFullShelf
(
out
string
nodeName
,
out
rfid
))
{
...
...
@@ -66,6 +62,10 @@ namespace AGVControl
}
if
(
cnt
<
clientNode
.
EmptyShelfCnt
)
{
if
((
SettingString
.
AGVCNT
/
2
-
emptyJobCnt
).
Equals
(
1
))
//保留1辆小车出满料架
{
return
null
;
}
return
new
GoEmptyShelfLineJob
(
currentAgv
.
Place
,
nodeName
,
rfid
);
}
}
...
...
@@ -78,7 +78,13 @@ namespace AGVControl
{
int
i
=
Common
.
agvInfo
.
FindIndex
(
s
=>
s
.
CurJob
is
GoEmptyShelfLineJob
&&
((
GoEmptyShelfLineJob
)
s
.
CurJob
).
EmptyShelfPlace
.
Equals
(
emptyNodeName
));
if
(
i
==
-
1
)
return
new
GoEmptyShelfLineJob
(
currentAgv
.
Place
,
emptyNodeName
,
rfid
);
{
if
((
SettingString
.
AGVCNT
/
2
-
emptyJobCnt
).
Equals
(
1
))
//保留1辆小车出满料架
{
return
null
;
}
return
new
GoEmptyShelfLineJob
(
currentAgv
.
Place
,
emptyNodeName
,
rfid
);
}
}
}
...
...
AGVControl-ProductionLine/bin/Debug/AGVControl-ProductionLine.exe
查看文件 @
54be25c
此文件类型无法预览
AGVControl-ProductionLine/bin/Debug/AGVControl-ProductionLine.pdb
查看文件 @
54be25c
此文件类型无法预览
AGVControl-ProductionLine/bin/Debug/logs/AgvServer.log
deleted
100644 → 0
查看文件 @
c0e4939
此文件的差异太大,无法显示。
AGVControl-ProductionLine/bin/Debug/logs/LineWebService.log
deleted
100644 → 0
查看文件 @
c0e4939
文件属性发生变化
AGVControl-ProductionLine/obj/Debug/AGVControl-ProductionLine.csproj.GenerateResource.cache
查看文件 @
54be25c
此文件类型无法预览
AGVControl-ProductionLine/obj/Debug/AGVControl-ProductionLine.exe
查看文件 @
54be25c
此文件类型无法预览
AGVControl-ProductionLine/obj/Debug/AGVControl-ProductionLine.pdb
查看文件 @
54be25c
此文件类型无法预览
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论