Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
RC1250-ACPackingStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 5c78a90f
由
LN
编写于
2020-04-10 14:45:49 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
agv到达时需要判断料架是否正确
1 个父辈
c0aa7e41
显示空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
17 行增加
和
44 行删除
source/ACPackingStore/FrmStore.Designer.cs
source/DeviceLibrary/ACPackingStore/AC_BOX_Bean_Partial.cs
source/DeviceLibrary/ACPackingStore/AC_BOX_Bean_Shelf.cs
source/DeviceLibrary/store/StoreStep.cs
source/ACPackingStore/FrmStore.Designer.cs
查看文件 @
5c78a90
...
...
@@ -130,8 +130,6 @@
// chbAGV
//
this
.
chbAGV
.
AutoSize
=
true
;
this
.
chbAGV
.
Checked
=
true
;
this
.
chbAGV
.
CheckState
=
System
.
Windows
.
Forms
.
CheckState
.
Checked
;
this
.
chbAGV
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
10.5F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
chbAGV
.
Location
=
new
System
.
Drawing
.
Point
(
36
,
470
);
this
.
chbAGV
.
Name
=
"chbAGV"
;
...
...
source/DeviceLibrary/ACPackingStore/AC_BOX_Bean_Partial.cs
查看文件 @
5c78a90
...
...
@@ -138,7 +138,7 @@ namespace OnlineStore.DeviceLibrary
wait
.
IsEnd
=
true
;
}
}
else
if
(
wait
.
AgvAction
.
Equals
((
int
)
ClientAction
.
Arrive
)&&
MoveInfo
.
MoveStep
.
Equals
(
StoreMoveStep
.
BS_03_Wait
EmptyAgv
))
else
if
(
wait
.
AgvAction
.
Equals
((
int
)
ClientAction
.
Arrive
)&&
MoveInfo
.
MoveStep
.
Equals
(
StoreMoveStep
.
BS_03_Wait
Arrive
))
{
if
(
IOValue
(
IO_Type
.
LineTake_Check
).
Equals
(
IO_VALUE
.
LOW
)
&&
IOValue
(
IO_Type
.
LineIn_Check
).
Equals
(
IO_VALUE
.
LOW
))
{
...
...
source/DeviceLibrary/ACPackingStore/AC_BOX_Bean_Shelf.cs
查看文件 @
5c78a90
...
...
@@ -249,7 +249,7 @@ namespace OnlineStore.DeviceLibrary
}
else
if
(
MoveInfo
.
MoveStep
.
Equals
(
StoreMoveStep
.
BS_02_LocatinDown
))
{
MoveInfo
.
NextMoveStep
(
StoreMoveStep
.
BS_03_Wait
EmptyAgv
);
MoveInfo
.
NextMoveStep
(
StoreMoveStep
.
BS_03_Wait
Arrive
);
MoveInfo
.
TimeOutSeconds
=
600
;
//MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(30000));
//等待agv到达
...
...
@@ -257,7 +257,7 @@ namespace OnlineStore.DeviceLibrary
InOutStoreLog
(
moveName
+
MoveInfo
.
SLog
+
":再次调用 NeedLeave["
+
mark
+
"]["
+
CurrShelfID
+
"],等待Agv "
+
Config
.
AgvNodeName
+
" Arrive ,最多等待1200秒"
);
AgvClient
.
SetStatus
(
Config
.
AgvNodeName
,
mark
,
CurrShelfID
,
ClientAction
.
NeedLeave
,
ClientLevel
.
High
,
true
);
}
else
if
(
MoveInfo
.
MoveStep
.
Equals
(
StoreMoveStep
.
BS_03_Wait
EmptyAgv
))
else
if
(
MoveInfo
.
MoveStep
.
Equals
(
StoreMoveStep
.
BS_03_Wait
Arrive
))
{
//agv到达
...
...
@@ -363,60 +363,30 @@ namespace OnlineStore.DeviceLibrary
#
region
AGV
internal
bool
ProcessAGVAction
(
string
name
,
string
rfid
,
ClientAction
action
)
internal
bool
ProcessAGVAction
(
string
name
,
string
rfid
,
ClientAction
action
)
{
string
logN
=
name
+
"收到调度"
+
name
+
"="
+
action
+
",RFID["
+
rfid
+
"]"
;
string
logN
=
name
+
"收到调度"
+
name
+
"="
+
action
+
",RFID["
+
rfid
+
"]"
;
//Arrive收到后打开门
if
(
!
action
.
Equals
(
ClientAction
.
Arrive
))
if
(
action
.
Equals
(
ClientAction
.
Arrive
))
{
LogUtil
.
info
(
Name
+
logN
+
" ,未找到相关处理"
);
return
false
;
}
//出库处理中不处理
if
(
MoveInfo
.
MoveType
.
Equals
(
StoreMoveType
.
OutStore
))
{
//出库等待料架到达
if
(
MoveInfo
.
MoveStep
.
Equals
(
StoreMoveStep
.
BI_00_ReadyShelf
))
{
if
(
rfid
.
Equals
(
""
))
{
string
mark
=
GetMarkInfo
();
LogUtil
.
error
(
Name
+
logN
+
" 当前出库中 BI_00_ReadyShelf,RFID无效,不处理agv,重发 NeedEnter ["
+
mark
+
"]["
+
MoveInfo
.
MoveParam
.
rfid
+
"]"
);
AgvClient
.
SetStatus
(
Config
.
AgvNodeName
,
mark
,
MoveInfo
.
MoveParam
.
rfid
,
ClientAction
.
NeedEnter
,
ClientLevel
.
High
,
true
);
return
false
;
}
//出库等待料架到达
LogUtil
.
info
(
Name
+
logN
+
",当前出库中 BI_00_ReadyShelf,正在等待料架到达"
);
MoveInfo
.
NextMoveStep
(
StoreMoveStep
.
BI_01_DoorOpen
);
InOutStoreLog
(
"出库等待料架"
+
MoveInfo
.
SLog
+
" agv已到达,打开入料口移门"
);
DoorBean
.
StartOpen
(
MoveInfo
);
return
true
;
}
else
if
(
MoveInfo
.
MoveStep
.
Equals
(
StoreMoveStep
.
BS_03_WaitEmptyAgv
))
{
if
(!
rfid
.
Equals
(
""
))
{
string
mark
=
GetMarkInfo
();
LogUtil
.
error
(
Name
+
logN
+
" 当前出库中 BS_03_WaitEmptyAgv,RFID["
+
rfid
+
"]不是空车,不处理agv,重发 NeedLeave ["
+
mark
+
"]["
+
CurrShelfID
+
"]"
);
AgvClient
.
SetStatus
(
Config
.
AgvNodeName
,
mark
,
CurrShelfID
,
ClientAction
.
NeedLeave
,
ClientLevel
.
High
,
true
);
return
false
;
else
if
(
MoveInfo
.
MoveStep
.
Equals
(
StoreMoveStep
.
BS_03_WaitArrive
))
}
//等待空车到达
LogUtil
.
info
(
Name
+
logN
+
",当前出库中 BS_03_WaitEmptyAgv,正在等待料架到达"
);
MoveInfo
.
NextMoveStep
(
StoreMoveStep
.
BS_04_DoorOpen
);
InOutStoreLog
(
"送出料架等待空车"
+
MoveInfo
.
SLog
+
":agv到达,打开入料口移门"
);
DoorBean
.
StartOpen
(
MoveInfo
);
return
true
;
}
}
else
if
(
storeRunStatus
.
Equals
(
StoreRunStatus
.
Runing
)
&&
//agv到达,开始处理
if
(
storeRunStatus
.
Equals
(
StoreRunStatus
.
Runing
)
&&
MoveInfo
.
MoveType
.
Equals
(
StoreMoveType
.
None
)
&&
IOValue
(
IO_Type
.
LineTake_Check
).
Equals
(
IO_VALUE
.
LOW
))
{
//agv到达,开始处理
if
(
rfid
.
Equals
(
""
))
{
LogUtil
.
error
(
Name
+
logN
+
" ,RFID无效,不需要入库处理"
);
...
...
@@ -426,6 +396,11 @@ namespace OnlineStore.DeviceLibrary
StartShelfInStore
();
return
true
;
}
}
else
{
LogUtil
.
info
(
Name
+
logN
+
" ,未找到相关处理"
);
}
return
false
;
}
...
...
source/DeviceLibrary/store/StoreStep.cs
查看文件 @
5c78a90
...
...
@@ -429,7 +429,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// 通知AGV准备空车
/// </summary>
BS_03_Wait
EmptyAgv
=
4003
,
BS_03_Wait
Arrive
=
4003
,
/// <summary>
/// 送出空料架:打开仓门
/// </summary>
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论