Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
ACSquareStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 907b095b
由
LN
编写于
2020-09-17 17:16:11 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
服务器通信功能修改
1 个父辈
67dc99ba
隐藏空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
332 行增加
和
147 行删除
source/ACSquareStore/FrmIOStatus.cs
source/ACSquareStore/记录.txt
source/Common/bean/Bean.cs
source/Common/util/LogUtil.cs
source/DeviceLibrary/acSquareStore/Square_BoxBean.cs
source/DeviceLibrary/acSquareStore/Square_BoxBean_Partial.cs
source/DeviceLibrary/store/StoreStep.cs
source/ACSquareStore/FrmIOStatus.cs
查看文件 @
907b095
...
@@ -171,11 +171,14 @@ namespace OnlineStore.ACSquareStore
...
@@ -171,11 +171,14 @@ namespace OnlineStore.ACSquareStore
private
void
btnOpenAxisBreak_Click
(
object
sender
,
EventArgs
e
)
private
void
btnOpenAxisBreak_Click
(
object
sender
,
EventArgs
e
)
{
{
LogUtil
.
info
(
"点击:"
+
btnRShelfForward
.
Text
);
StoreManager
.
Store
.
ShelfForward
(
2
);
StoreManager
.
Store
.
ShelfForward
(
2
);
}
}
private
void
btnCloseAxisBreak_Click
(
object
sender
,
EventArgs
e
)
private
void
btnCloseAxisBreak_Click
(
object
sender
,
EventArgs
e
)
{
{
LogUtil
.
info
(
"点击:"
+
btnRShelfBack
.
Text
);
StoreManager
.
Store
.
ShelfBack
(
2
);
StoreManager
.
Store
.
ShelfBack
(
2
);
}
}
...
@@ -230,48 +233,48 @@ namespace OnlineStore.ACSquareStore
...
@@ -230,48 +233,48 @@ namespace OnlineStore.ACSquareStore
private
void
btnOpenDoor_Click
(
object
sender
,
EventArgs
e
)
private
void
btnOpenDoor_Click
(
object
sender
,
EventArgs
e
)
{
{
LogUtil
.
info
(
"点击:"
+
btnOpenLDoor
.
Text
);
// StoreManager.Store.OpenDoor(1);
// StoreManager.Store.OpenDoor(1);
IOManager
.
IOMove
(
IO_Type
.
LeftDoor_Close
,
IO_VALUE
.
LOW
);
IOManager
.
IOMove
(
IO_Type
.
LeftDoor_Close
,
IO_VALUE
.
LOW
);
}
}
private
void
btnCloseDoor_Click
(
object
sender
,
EventArgs
e
)
private
void
btnCloseDoor_Click
(
object
sender
,
EventArgs
e
)
{
{
LogUtil
.
info
(
"点击:"
+
btnCloseLDoor
.
Text
);
// StoreManager.Store.CloseDoor(1);
// StoreManager.Store.CloseDoor(1);
IOManager
.
IOMove
(
IO_Type
.
LeftDoor_Close
,
IO_VALUE
.
HIGH
);
IOManager
.
IOMove
(
IO_Type
.
LeftDoor_Close
,
IO_VALUE
.
HIGH
);
}
}
private
void
btnOpenRDoor_Click
(
object
sender
,
EventArgs
e
)
private
void
btnOpenRDoor_Click
(
object
sender
,
EventArgs
e
)
{
{
LogUtil
.
info
(
"点击:"
+
btnOpenRDoor
.
Text
);
// StoreManager.Store.OpenDoor(2);
// StoreManager.Store.OpenDoor(2);
IOManager
.
IOMove
(
IO_Type
.
RightDoor_Close
,
IO_VALUE
.
LOW
);
IOManager
.
IOMove
(
IO_Type
.
RightDoor_Close
,
IO_VALUE
.
LOW
);
}
}
private
void
btnCloseRDoor_Click
(
object
sender
,
EventArgs
e
)
private
void
btnCloseRDoor_Click
(
object
sender
,
EventArgs
e
)
{
{
LogUtil
.
info
(
"点击:"
+
btnCloseRDoor
.
Text
);
// StoreManager.Store.OpenDoor(2);
// StoreManager.Store.OpenDoor(2);
IOManager
.
IOMove
(
IO_Type
.
RightDoor_Close
,
IO_VALUE
.
HIGH
);
IOManager
.
IOMove
(
IO_Type
.
RightDoor_Close
,
IO_VALUE
.
HIGH
);
}
}
private
void
btnLShelfForward_Click
(
object
sender
,
EventArgs
e
)
private
void
btnLShelfForward_Click
(
object
sender
,
EventArgs
e
)
{
{
LogUtil
.
info
(
"点击:"
+
btnLShelfForward
.
Text
);
StoreManager
.
Store
.
ShelfForward
(
1
);
StoreManager
.
Store
.
ShelfForward
(
1
);
}
}
private
void
btnLShelfBack_Click
(
object
sender
,
EventArgs
e
)
private
void
btnLShelfBack_Click
(
object
sender
,
EventArgs
e
)
{
{
LogUtil
.
info
(
"点击:"
+
btnLShelfBack
.
Text
);
StoreManager
.
Store
.
ShelfBack
(
1
);
StoreManager
.
Store
.
ShelfBack
(
1
);
}
}
private
void
btnOpenB_Click
(
object
sender
,
EventArgs
e
)
{
IOManager
.
IOMove
(
IO_Type
.
Axis_Brake
,
IO_VALUE
.
HIGH
);
}
private
void
btnCloseB_Click
(
object
sender
,
EventArgs
e
)
{
IOManager
.
IOMove
(
IO_Type
.
Axis_Brake
,
IO_VALUE
.
LOW
);
}
private
void
btnLShelfStop_Click
(
object
sender
,
EventArgs
e
)
private
void
btnLShelfStop_Click
(
object
sender
,
EventArgs
e
)
{
{
LogUtil
.
info
(
"点击:"
+
btnLShelfStop
.
Text
);
StoreManager
.
Store
.
LeftShlefMove
.
Stop
();
StoreManager
.
Store
.
LeftShlefMove
.
Stop
();
}
}
private
void
btnRShlefStop_Click
(
object
sender
,
EventArgs
e
)
private
void
btnRShlefStop_Click
(
object
sender
,
EventArgs
e
)
{
{
LogUtil
.
info
(
"点击:"
+
btnRShlefStop
.
Text
);
StoreManager
.
Store
.
RightShelfMove
.
Stop
();
StoreManager
.
Store
.
RightShelfMove
.
Stop
();
}
}
}
}
...
...
source/ACSquareStore/记录.txt
查看文件 @
907b095
...
@@ -61,4 +61,11 @@
...
@@ -61,4 +61,11 @@
修改问题:
修改问题:
1.界面进出轴P3显示错误。
1.界面进出轴P3显示错误。
2.入库时:前后轴先移动到库位,再移动升降轴。
2.入库时:前后轴先移动到库位,再移动升降轴。
3.出库去库位时:前后轴先移动到库位,再移动升降轴。
\ No newline at end of file
\ No newline at end of file
3.出库去库位时:前后轴先移动到库位,再移动升降轴。
20200917
方仓的字段:
1 入库时的字段: door: 1为1号仓门入库 2为2号仓门入库
2 出库放到仓门口算出库完成,完成时发送 door=1为1号仓门 door=2为2号仓门
3 仓门状态上传: 字段为door1和doo2, 状态:opened为已打开, closed为已关闭, opening为打开中, closing为关闭中
4 开关门操作: 开门openDoor=1为1号仓门打开, =2为2号仓门打开, closeDoor=1为1号仓门关闭,=2为2号仓门关闭
\ No newline at end of file
\ No newline at end of file
source/Common/bean/Bean.cs
查看文件 @
907b095
...
@@ -224,5 +224,14 @@ namespace OnlineStore.Common
...
@@ -224,5 +224,14 @@ namespace OnlineStore.Common
public
static
string
rfidLoc
=
"rfidLoc"
;
public
static
string
rfidLoc
=
"rfidLoc"
;
public
static
string
barcode
=
"barcode"
;
public
static
string
barcode
=
"barcode"
;
/// <summary>
/// 1 入库时的字段: door: 1为1号仓门入库 2为2号仓门入库
/// 2 出库放到仓门口算出库完成,完成时发送 door = 1为1号仓门 door = 2为2号仓门
/// </summary>
public
static
string
door
=
"door"
;
public
static
string
door1
=
"door1"
;
public
static
string
door2
=
"door2"
;
public
static
string
openDoor
=
"openDoor"
;
public
static
string
closeDoor
=
"closeDoor"
;
}
}
}
}
source/Common/util/LogUtil.cs
查看文件 @
907b095
...
@@ -32,20 +32,20 @@ namespace OnlineStore.Common
...
@@ -32,20 +32,20 @@ namespace OnlineStore.Common
return
;
return
;
}
}
log
.
Info
(
log
.
Logger
.
Name
+
" - "
+
msg
);
log
.
Info
(
msg
);
AddToBox
(
msg
,
Color
.
Black
);
AddToBox
(
msg
,
Color
.
Black
);
//clear();
//clear();
}
}
public
static
void
info
(
ILog
log
,
string
msg
,
Color
color
)
public
static
void
info
(
ILog
log
,
string
msg
,
Color
color
)
{
{
log
.
Info
(
log
.
Logger
.
Name
+
" - "
+
msg
);
log
.
Info
(
msg
);
AddToBox
(
msg
,
color
);
AddToBox
(
msg
,
color
);
}
}
public
static
void
debug
(
ILog
log
,
string
msg
,
Color
color
)
public
static
void
debug
(
ILog
log
,
string
msg
,
Color
color
)
{
{
log
.
Debug
(
log
.
Logger
.
Name
+
" - "
+
msg
);
log
.
Debug
(
msg
);
if
(
debug_opened
)
if
(
debug_opened
)
{
{
AddToBox
(
msg
,
color
);
AddToBox
(
msg
,
color
);
...
@@ -53,7 +53,7 @@ namespace OnlineStore.Common
...
@@ -53,7 +53,7 @@ namespace OnlineStore.Common
}
}
public
static
void
debug
(
ILog
log
,
string
msg
)
public
static
void
debug
(
ILog
log
,
string
msg
)
{
{
log
.
Debug
(
log
.
Logger
.
Name
+
" - "
+
msg
);
log
.
Debug
(
msg
);
if
(
debug_opened
)
if
(
debug_opened
)
{
{
AddToBox
(
msg
,
Color
.
Gray
);
AddToBox
(
msg
,
Color
.
Gray
);
...
@@ -93,7 +93,7 @@ namespace OnlineStore.Common
...
@@ -93,7 +93,7 @@ namespace OnlineStore.Common
}
}
public
static
void
error
(
ILog
log
,
string
errorMsg
)
public
static
void
error
(
ILog
log
,
string
errorMsg
)
{
{
log
.
Error
(
log
.
Logger
.
Name
+
" - "
+
errorMsg
);
log
.
Error
(
errorMsg
);
AddToBox
(
errorMsg
,
Color
.
Red
);
AddToBox
(
errorMsg
,
Color
.
Red
);
}
}
private
static
void
AddToBox
(
string
msg
,
Color
color
)
private
static
void
AddToBox
(
string
msg
,
Color
color
)
...
...
source/DeviceLibrary/acSquareStore/Square_BoxBean.cs
查看文件 @
907b095
...
@@ -27,6 +27,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -27,6 +27,7 @@ namespace OnlineStore.DeviceLibrary
/// 记录最后一次 出库的posID,出库完成发送给服务器之后清除
/// 记录最后一次 出库的posID,出库完成发送给服务器之后清除
/// </summary>
/// </summary>
public
string
lastPosId
=
""
;
public
string
lastPosId
=
""
;
public
int
lastDoor
=
0
;
public
StoreStatus
lastPosIdStatus
=
StoreStatus
.
StoreOnline
;
public
StoreStatus
lastPosIdStatus
=
StoreStatus
.
StoreOnline
;
/// <summary>
/// <summary>
/// 轴列表
/// 轴列表
...
@@ -1171,8 +1172,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -1171,8 +1172,9 @@ namespace OnlineStore.DeviceLibrary
//服务器返回时有:posId库位编号,plateW:料盘宽度,plateH:料盘高度,
//服务器返回时有:posId库位编号,plateW:料盘宽度,plateH:料盘高度,
string
posId
=
data
[
ParamDefine
.
posId
];
string
posId
=
data
[
ParamDefine
.
posId
];
string
plateW
=
data
[
ParamDefine
.
plateW
];
string
plateW
=
data
[
ParamDefine
.
plateW
];
string
plateH
=
data
[
ParamDefine
.
plateH
];
string
plateH
=
data
[
ParamDefine
.
plateH
];
InOutPosInfo
inoutInfo
=
new
InOutPosInfo
(
message
,
posId
,
plateH
,
plateW
);
int
door
=
Convert
.
ToInt32
(
data
[
ParamDefine
.
door
]);
InOutPosInfo
inoutInfo
=
new
InOutPosInfo
(
message
,
posId
,
plateH
,
plateW
,
door
);
//根据发送的posId获取位置列表
//根据发送的posId获取位置列表
ACSquareSPosition
position
=
CSVPositionReader
<
ACSquareSPosition
>.
GetPositon
(
posId
);
ACSquareSPosition
position
=
CSVPositionReader
<
ACSquareSPosition
>.
GetPositon
(
posId
);
...
@@ -1180,7 +1182,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -1180,7 +1182,7 @@ namespace OnlineStore.DeviceLibrary
{
//出入库没有找到服务器发送的库位,需要打印日志方便查询原因
{
//出入库没有找到服务器发送的库位,需要打印日志方便查询原因
WarnMsg
=
"入库未找到库位:【"
+
inoutInfo
.
ToStr
()
+
"】 "
;
WarnMsg
=
"入库未找到库位:【"
+
inoutInfo
.
ToStr
()
+
"】 "
;
LogUtil
.
error
(
LOGGER
,
"收到服务器入库命令:入库未找到库位:【"
+
inoutInfo
.
ToStr
()
+
"】"
);
LogUtil
.
error
(
LOGGER
,
"收到服务器入库命令:入库未找到库位:【"
+
inoutInfo
.
ToStr
()
+
"】"
);
LogUtil
.
info
(
LOGGER
,
"收到服务器入库命令:入库未找到库位:【"
+
inoutInfo
.
ToStr
()
+
"】"
);
LogUtil
.
info
(
LOGGER
,
"收到服务器入库命令:入库未找到库位:【"
+
inoutInfo
.
ToStr
()
+
"】"
);
return
;
return
;
}
}
//TODO:判断BOX是否处于可以入库状态,如果调试或急停中,需要返回给服务器;
//TODO:判断BOX是否处于可以入库状态,如果调试或急停中,需要返回给服务器;
...
@@ -1503,15 +1505,25 @@ namespace OnlineStore.DeviceLibrary
...
@@ -1503,15 +1505,25 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
storeStatus
.
Equals
(
StoreStatus
.
OutStoreBoxEnd
)
||
storeStatus
.
Equals
(
StoreStatus
.
InStoreEnd
))
else
if
(
storeStatus
.
Equals
(
StoreStatus
.
OutStoreBoxEnd
)
||
storeStatus
.
Equals
(
StoreStatus
.
InStoreEnd
))
{
{
boxStatus
.
data
.
Add
(
ParamDefine
.
posId
,
lastPosId
);
boxStatus
.
data
.
Add
(
ParamDefine
.
posId
,
lastPosId
);
if
(
lastPosIdStatus
.
Equals
(
StoreStatus
.
OutStoreBoxEnd
)
||
lastPosIdStatus
.
Equals
(
StoreStatus
.
InStoreEnd
))
{
boxStatus
.
data
.
Add
(
ParamDefine
.
door
,
lastDoor
.
ToString
());
}
}
}
else
if
(!
lastPosId
.
Equals
(
""
))
else
if
(!
lastPosId
.
Equals
(
""
))
{
{
boxStatus
.
data
.
Add
(
ParamDefine
.
posId
,
lastPosId
);
boxStatus
.
data
.
Add
(
ParamDefine
.
posId
,
lastPosId
);
boxStatus
.
status
=
(
int
)
lastPosIdStatus
;
boxStatus
.
status
=
(
int
)
lastPosIdStatus
;
string
doorP
=
""
;
if
(
lastPosIdStatus
.
Equals
(
StoreStatus
.
OutStoreBoxEnd
)
||
lastPosIdStatus
.
Equals
(
StoreStatus
.
InStoreEnd
))
{
boxStatus
.
data
.
Add
(
ParamDefine
.
door
,
lastDoor
.
ToString
());
doorP
=
"door【"
+
lastDoor
+
"】"
;
}
if
(
lastPosId
!=
""
)
if
(
lastPosId
!=
""
)
{
{
LogUtil
.
info
(
LOGGER
,
"给服务器发送出入库完成消息:"
+
StoreName
+
",status【"
+
lastPosIdStatus
+
"】posId【"
+
lastPosId
+
"】"
);
LogUtil
.
info
(
LOGGER
,
"给服务器发送出入库完成消息:"
+
StoreName
+
",status【"
+
lastPosIdStatus
+
"】posId【"
+
lastPosId
+
"】"
+
doorP
);
}
}
lastPosId
=
""
;
lastPosId
=
""
;
}
}
...
@@ -1525,7 +1537,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -1525,7 +1537,9 @@ namespace OnlineStore.DeviceLibrary
// boxStatus.status = (int)StoreStatus.InStoreExecute;
// boxStatus.status = (int)StoreStatus.InStoreExecute;
//}
//}
}
}
//3 仓门状态上传: 字段为door1和doo2, 状态: opened为已打开, closed为已关闭, opening为打开中, closing为关闭中
boxStatus
.
data
.
Add
(
ParamDefine
.
door1
,
GetDoorStatus
(
1
));
boxStatus
.
data
.
Add
(
ParamDefine
.
door2
,
GetDoorStatus
(
2
));
//温湿度
//温湿度
//ASTemperateParam param = HumitureServer.GetTemperateParam(Config.Temperate_Serveraddress);
//ASTemperateParam param = HumitureServer.GetTemperateParam(Config.Temperate_Serveraddress);
...
@@ -1559,26 +1573,67 @@ namespace OnlineStore.DeviceLibrary
...
@@ -1559,26 +1573,67 @@ namespace OnlineStore.DeviceLibrary
Operation
resultOperation
=
HttpHelper
.
Post
(
StoreManager
.
GetPostApi
(
server
),
lineOperation
,
false
);
Operation
resultOperation
=
HttpHelper
.
Post
(
StoreManager
.
GetPostApi
(
server
),
lineOperation
,
false
);
//发送状态信息到服务器
//发送状态信息到服务器
if
(
resultOperation
==
null
||
(
resultOperation
.
op
<=
0
)
)
if
(
resultOperation
==
null
)
{
{
//判断服务端是否返回出库操作
//判断服务端是否返回出库操作
return
;
return
;
}
}
if
(
resultOperation
.
op
.
Equals
(
1
))
if
(
resultOperation
.
op
>
0
)
{
ReviceInStoreProcess
(
""
,
resultOperation
);
}
else
if
(
resultOperation
.
op
.
Equals
(
2
))
{
ReviceOutStoreProcess
(
resultOperation
);
}
else
if
(
resultOperation
.
op
.
Equals
(
5
))
{
{
ProcessHumidityCMD
(
resultOperation
);
if
(
resultOperation
.
op
.
Equals
(
1
))
{
ReviceInStoreProcess
(
""
,
resultOperation
);
}
else
if
(
resultOperation
.
op
.
Equals
(
2
))
{
ReviceOutStoreProcess
(
resultOperation
);
}
else
if
(
resultOperation
.
op
.
Equals
(
5
))
{
ProcessHumidityCMD
(
resultOperation
);
}
else
{
LogUtil
.
error
(
"收到服务器命令:op="
+
resultOperation
.
op
+
",未找到对应处理"
);
}
}
}
else
else
if
(
resultOperation
.
data
!=
null
)
{
{
LogUtil
.
error
(
"收到服务器命令:op="
+
resultOperation
.
op
+
",未找到对应处理"
);
//4 开关门操作: 开门openDoor = 1为1号仓门打开, = 2为2号仓门打开, closeDoor = 1为1号仓门关闭,= 2为2号仓门关闭
bool
result
=
false
;
Dictionary
<
string
,
string
>
dataMap
=
resultOperation
.
data
;
if
(
dataMap
.
ContainsKey
(
ParamDefine
.
openDoor
))
{
if
(
dataMap
[
ParamDefine
.
openDoor
].
Equals
(
1
))
{
LogUtil
.
info
(
StoreName
+
"收到服务器命令:openDoor=1 "
);
result
=
OpenDoor
(
1
);
}
else
if
(
dataMap
[
ParamDefine
.
openDoor
].
Equals
(
2
))
{
LogUtil
.
info
(
StoreName
+
"收到服务器命令:openDoor=2"
);
result
=
OpenDoor
(
2
);
}
}
else
if
(
dataMap
.
ContainsKey
(
ParamDefine
.
closeDoor
))
{
if
(
dataMap
[
ParamDefine
.
closeDoor
].
Equals
(
1
))
{
LogUtil
.
info
(
StoreName
+
"收到服务器命令:closeDoor=1"
);
result
=
CloseDoor
(
1
);
}
else
if
(
dataMap
[
ParamDefine
.
closeDoor
].
Equals
(
2
))
{
LogUtil
.
info
(
StoreName
+
"收到服务器命令:closeDoor=2"
);
result
=
CloseDoor
(
2
);
}
}
if
(!
result
)
{
LogUtil
.
info
(
StoreName
+
"收到服务器命令:执行失败:"
+
result
);
}
}
}
TimeSpan
span
=
DateTime
.
Now
-
time
;
TimeSpan
span
=
DateTime
.
Now
-
time
;
if
(
span
.
TotalMilliseconds
>
10
)
if
(
span
.
TotalMilliseconds
>
10
)
...
...
source/DeviceLibrary/acSquareStore/Square_BoxBean_Partial.cs
查看文件 @
907b095
...
@@ -285,11 +285,11 @@ namespace OnlineStore.DeviceLibrary
...
@@ -285,11 +285,11 @@ namespace OnlineStore.DeviceLibrary
storeRunStatus
=
StoreRunStatus
.
Busy
;
storeRunStatus
=
StoreRunStatus
.
Busy
;
storeStatus
=
StoreStatus
.
InStoreExecute
;
storeStatus
=
StoreStatus
.
InStoreExecute
;
StoreMove
.
NewMove
(
StoreMoveType
.
InStore
,
param
);
StoreMove
.
NewMove
(
StoreMoveType
.
InStore
,
param
);
if
(
StoreManager
.
UseShelfCheck
)
if
(
StoreManager
.
UseShelfCheck
)
{
//料盘检测
{
//料盘检测
InStoreLog
(
" 入库:SI_00 检测料盘信号"
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_00_TrayCheck
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_00_TrayCheck
);
InStoreLog
(
"入库:检测料盘信号 "
);
if
(
param
.
PosInfo
.
ShelfType
.
Equals
(
1
))
if
(
param
.
PosInfo
.
ShelfType
.
Equals
(
1
))
{
{
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
LeftShelf_Check
,
IO_VALUE
.
HIGH
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
LeftShelf_Check
,
IO_VALUE
.
HIGH
));
...
@@ -297,7 +297,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -297,7 +297,7 @@ namespace OnlineStore.DeviceLibrary
else
else
{
{
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
RightShelf_Check
,
IO_VALUE
.
HIGH
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
RightShelf_Check
,
IO_VALUE
.
HIGH
));
}
}
}
}
else
else
{
{
...
@@ -311,8 +311,8 @@ namespace OnlineStore.DeviceLibrary
...
@@ -311,8 +311,8 @@ namespace OnlineStore.DeviceLibrary
}
}
private
void
SI_02_Move
()
private
void
SI_02_Move
()
{
{
InStoreLog
(
"入库:SI_02_ 进出轴(叉子)动作至P1,关闭门锁="
+
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_02_InOutToP1
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_02_InOutAxisHom
e
);
InStoreLog
(
"入库:进出轴(叉子)动作至P1,关闭门锁="
+
StoreMove
.
MoveParam
.
PosInfo
.
ShelfTyp
e
);
CloseDoor
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
);
CloseDoor
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
);
InOutBackToP1
(
StoreMove
.
MoveParam
.
MoveP
.
InOut_P1
);
InOutBackToP1
(
StoreMove
.
MoveParam
.
MoveP
.
InOut_P1
);
}
}
...
@@ -333,38 +333,38 @@ namespace OnlineStore.DeviceLibrary
...
@@ -333,38 +333,38 @@ namespace OnlineStore.DeviceLibrary
SI_02_Move
();
SI_02_Move
();
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_02_InOut
AxisHome
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_02_InOut
ToP1
)
{
{
InStoreLog
(
"入库:SI_03 升降轴,前进轴 动作到P1 ,托架后退"
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_03_ToP1
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_03_ReturnHome
);
InStoreLog
(
"入库:升降轴到P1["
+
moveP
.
UpDown_P1
+
"],前进轴到P1["
+
moveP
.
Middle_P1
+
"] ,托架后退"
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P1
,
Config
.
UpDownAxis_P1_Speed
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P1
,
Config
.
UpDownAxis_P1_Speed
);
ACAxisMove
(
Config
.
Middle_Axis
,
moveP
.
Middle_P1
,
Config
.
MiddleAxis_P1_Speed
);
ACAxisMove
(
Config
.
Middle_Axis
,
moveP
.
Middle_P1
,
Config
.
MiddleAxis_P1_Speed
);
ShelfBack
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
,
StoreMove
);
ShelfBack
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
,
StoreMove
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_03_
ReturnHome
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_03_
ToP1
)
{
{
InStoreLog
(
"入库:SI_05 叉子进入入料口,进出轴至P2(进料口取料点) "
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_05_InoutToP2
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_05_DeviceToDoor
);
InStoreLog
(
"入库:叉子进入入料口,进出轴至P2(进料口取料点) ["
+
moveP
.
InOut_P2
+
"] "
);
ACAxisMove
(
Config
.
InOut_Axis
,
StoreMove
.
MoveParam
.
M
oveP
.
InOut_P2
,
Config
.
InOutAxis_P2_Speed
);
ACAxisMove
(
Config
.
InOut_Axis
,
m
oveP
.
InOut_P2
,
Config
.
InOutAxis_P2_Speed
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_05_
DeviceToDoor
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_05_
InoutToP2
)
{
{
//NeedCheckSafetyLight = 0;
//NeedCheckSafetyLight = 0;
InStoreLog
(
"入库:SI_06 拿物品, 升降轴至P7(进料口取料缓冲点) "
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_06_UpdownAxisUp
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_06_UpdownAxisUp
);
InStoreLog
(
"入库: 拿物品, 升降轴至P7(进料口取料缓冲点) ["
+
moveP
.
UpDown_P7
+
"]"
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P7
,
Config
.
UpDownAxis_P7_Speed
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P7
,
Config
.
UpDownAxis_P7_Speed
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_06_UpdownAxisUp
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_06_UpdownAxisUp
)
{
{
InStoreLog
(
"入库:SI_07 叉子 从入料口抽出,进出轴至P1(待机点) "
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_07_InOutToP1
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_07_InoutBack
);
InStoreLog
(
"入库: 叉子 从入料口抽出,进出轴至P1(待机点) ["
+
moveP
.
InOut_P1
+
"]"
);
InOutBackToP1
(
moveP
.
InOut_P1
);
InOutBackToP1
(
moveP
.
InOut_P1
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_07_In
outBack
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_07_In
OutToP1
)
{
{
InStoreLog
(
"入库:SI_08 判断是否拿到物料"
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_08_WaitShelfDI
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_08_WaitShelfDI
);
InStoreLog
(
"入库: 判断是否拿到物料"
);
if
(
StoreManager
.
UseShelfCheck
)
if
(
StoreManager
.
UseShelfCheck
)
{
{
if
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
.
Equals
(
1
))
if
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
.
Equals
(
1
))
...
@@ -381,50 +381,50 @@ namespace OnlineStore.DeviceLibrary
...
@@ -381,50 +381,50 @@ namespace OnlineStore.DeviceLibrary
//判断是否拿到料
//判断是否拿到料
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_08_WaitShelfDI
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_08_WaitShelfDI
)
{
{
InStoreLog
(
"入库:SI_09 移动到库位点,前后轴至P2(库位点),"
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_09_MiddleToP3
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_09_MoveToBag
);
InStoreLog
(
"入库: 移动到库位点,前后轴至P2(库位点), ["
+
moveP
.
Middle_P2
+
"]"
);
ACAxisMove
(
Config
.
Middle_Axis
,
moveP
.
Middle_P2
,
Config
.
MiddleAxis_P2_Speed
);
ACAxisMove
(
Config
.
Middle_Axis
,
moveP
.
Middle_P2
,
Config
.
MiddleAxis_P2_Speed
);
// ACAxisMove(Config.UpDown_Axis, moveP.UpDown_P3, Config.UpDownAxis_P3_Speed);
// ACAxisMove(Config.UpDown_Axis, moveP.UpDown_P3, Config.UpDownAxis_P3_Speed);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_09_M
oveToBag
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_09_M
iddleToP3
)
{
{
InStoreLog
(
"入库:SI_10 移动到库位点,升降轴至P3(库位入库前点) "
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_10_UpdownToBag
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_10_UpdownToBag
);
InStoreLog
(
"入库: 移动到库位点,升降轴至P3(库位入库前点) ["
+
moveP
.
UpDown_P3
+
"] "
);
//ACAxisMove(Config.Middle_Axis, moveP.Middle_P2, Config.MiddleAxis_P2_Speed);
//ACAxisMove(Config.Middle_Axis, moveP.Middle_P2, Config.MiddleAxis_P2_Speed);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P3
,
Config
.
UpDownAxis_P3_Speed
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P3
,
Config
.
UpDownAxis_P3_Speed
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_10_UpdownToBag
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_10_UpdownToBag
)
{
{
InStoreLog
(
"入库:SI_11 叉子进入库位中,进出轴至P4(库位取放料点) "
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_11_InoutToP4
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_11_DeviceToBag
);
InStoreLog
(
"入库:叉子进入库位中,进出轴至P4(库位取放料点) ["
+
moveP
.
InOut_P4
+
"] "
);
ACAxisMove
(
Config
.
InOut_Axis
,
moveP
.
InOut_P4
,
Config
.
InOutAxis_P4_Speed
);
ACAxisMove
(
Config
.
InOut_Axis
,
moveP
.
InOut_P4
,
Config
.
InOutAxis_P4_Speed
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_11_
DeviceToBag
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_11_
InoutToP4
)
{
{
InStoreLog
(
"入库:SI_12 放下物品,升降轴至P4(库位入料缓冲点), "
);
// 5= 入仓位完成(料仓Box把料盘放入对应的库位中,装置还未恢复原始状态)
// 5= 入仓位完成(料仓Box把料盘放入对应的库位中,装置还未恢复原始状态)
string
posId
=
StoreMove
.
MoveParam
!=
null
?
StoreMove
.
MoveParam
.
PosInfo
.
PosId
:
""
;
string
posId
=
StoreMove
.
MoveParam
!=
null
?
StoreMove
.
MoveParam
.
PosInfo
.
PosId
:
""
;
lastPosId
=
posId
;
lastPosId
=
posId
;
lastPosIdStatus
=
StoreStatus
.
InStoreEnd
;
lastDoor
=
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
;
lastPosIdStatus
=
StoreStatus
.
InStoreEnd
;
storeStatus
=
StoreStatus
.
InStoreEnd
;
storeStatus
=
StoreStatus
.
InStoreEnd
;
//手动发给服务器状态,防止没有手动
//手动发给服务器状态,防止没有手动
//SendLineStatus(StoreID, posId, StoreStatus.InStoreEnd);
//SendLineStatus(StoreID, posId, StoreStatus.InStoreEnd);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_12_PutWareToBag
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_12_PutWare
);
InStoreLog
(
"入库:放下物品,升降轴至P4(库位入料缓冲点) ["
+
moveP
.
UpDown_P4
+
"], 更新状态=InStoreEnd, "
+
lastDoor
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P4
,
Config
.
UpDownAxis_P4_Speed
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P4
,
Config
.
UpDownAxis_P4_Speed
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_12_PutWare
ToBag
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_12_PutWare
)
{
{
InStoreLog
(
"入库:SI_13 叉子从库位中返回,进出轴动作至P1(待机点) "
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_13_InoutToP1
);
InStoreLog
(
"入库:叉子从库位中返回,进出轴动作至P1(待机点) ["
+
moveP
.
InOut_P1
+
"] "
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_13_DeviceBackFromBag
);
InOutBackToP1
(
moveP
.
InOut_P1
);
InOutBackToP1
(
moveP
.
InOut_P1
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_13_
DeviceBackFromBag
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_13_
InoutToP1
)
{
{
InStoreLog
(
"入库:SI_14 检查叉子物料检测信号=low"
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_14_CheckTrayIsGo
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_14_CheckTrayIsGo
);
InStoreLog
(
"入库:检查叉子物料检测信号=low"
);
if
(
StoreManager
.
UseShelfCheck
)
if
(
StoreManager
.
UseShelfCheck
)
{
{
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
TrayCheck_Fixture
,
IO_VALUE
.
LOW
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
TrayCheck_Fixture
,
IO_VALUE
.
LOW
));
...
@@ -432,8 +432,8 @@ namespace OnlineStore.DeviceLibrary
...
@@ -432,8 +432,8 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_14_CheckTrayIsGo
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_14_CheckTrayIsGo
)
{
{
InStoreLog
(
"入库:SI_15 升降轴 返回待机点 ,托架前进"
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_15_UpdownBack
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_15_UpdownBack
);
InStoreLog
(
"入库:升降轴 返回待机点P1["
+
moveP
.
UpDown_P1
+
"] ,托架前进"
);
// ACAxisMove(Config.Middle_Axis, moveP.Middle_P1, Config.MiddleAxis_P1_Speed);
// ACAxisMove(Config.Middle_Axis, moveP.Middle_P1, Config.MiddleAxis_P1_Speed);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P1
,
Config
.
UpDownAxis_P1_Speed
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P1
,
Config
.
UpDownAxis_P1_Speed
);
ShelfForward
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
);
ShelfForward
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
);
...
@@ -441,11 +441,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -441,11 +441,9 @@ namespace OnlineStore.DeviceLibrary
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_15_UpdownBack
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_15_UpdownBack
)
{
{
InStoreLog
(
"入库:SI_15 前后轴 返回待机点 "
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_16_GoBack
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SI_16_GoBack
);
ACAxisMove
(
Config
.
Middle_Axis
,
moveP
.
Middle_P1
,
Config
.
MiddleAxis_P1_Speed
);
InStoreLog
(
"入库: 前后轴 返回待机点P1 ["
+
moveP
.
Middle_P1
+
"],打开门锁 "
);
// ACAxisMove(Config.UpDown_Axis, moveP.UpDown_P1, Config.UpDownAxis_P1_Speed);
ACAxisMove
(
Config
.
Middle_Axis
,
moveP
.
Middle_P1
,
Config
.
MiddleAxis_P1_Speed
);
// ShelfForward(StoreMove.MoveParam.PosInfo.ShelfType);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_16_GoBack
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SI_16_GoBack
)
{
{
...
@@ -498,8 +496,8 @@ namespace OnlineStore.DeviceLibrary
...
@@ -498,8 +496,8 @@ namespace OnlineStore.DeviceLibrary
storeRunStatus
=
StoreRunStatus
.
Busy
;
storeRunStatus
=
StoreRunStatus
.
Busy
;
StoreMove
.
NewMove
(
StoreMoveType
.
OutStore
,
param
);
StoreMove
.
NewMove
(
StoreMoveType
.
OutStore
,
param
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_01_
DeviceBack
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_01_
InoutToP1
);
OutStoreLog
(
"出库:
SO_01
叉子先运动到P1 , 开始"
);
OutStoreLog
(
"出库: 叉子先运动到P1 , 开始"
);
InOutBackToP1
(
StoreMove
.
MoveParam
.
MoveP
.
InOut_P1
);
InOutBackToP1
(
StoreMove
.
MoveParam
.
MoveP
.
InOut_P1
);
return
true
;
return
true
;
}
}
...
@@ -520,58 +518,64 @@ namespace OnlineStore.DeviceLibrary
...
@@ -520,58 +518,64 @@ namespace OnlineStore.DeviceLibrary
{
{
return
;
return
;
}
}
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_01_
DeviceBack
)
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_01_
InoutToP1
)
{
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_02_ToBagPosition
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_02_MiddleToP2
);
OutStoreLog
(
"出库:SO_02 走到库位, 前后轴至P2(库位点), ,托架后退"
);
OutStoreLog
(
"出库: 走到库位, 前后轴至P2(库位点) ["
+
moveP
.
Middle_P2
+
"]"
);
// ComMoveToPosition(moveP.ComPress_P3,Config.CompAxis_P3_Speed);
ACAxisMove
(
Config
.
Middle_Axis
,
moveP
.
Middle_P2
,
Config
.
MiddleAxis_P2_Speed
);
ACAxisMove
(
Config
.
Middle_Axis
,
StoreMove
.
MoveParam
.
MoveP
.
Middle_P2
,
Config
.
MiddleAxis_P2_Speed
);
// ACAxisMove(Config.UpDown_Axis, StoreMove.MoveParam.MoveP.UpDown_P5, Config.UpDownAxis_P5_Speed);
ShelfBack
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_02_
ToBagPosition
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_02_
MiddleToP2
)
{
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_03_UpdownMove
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_03_UpdownToP5
);
OutStoreLog
(
"出库:SO_03 走到库位, 升降轴至P5(库位出库前点) "
);
OutStoreLog
(
"出库: 走到库位, 升降轴至P5(库位出库前点) ["
+
moveP
.
UpDown_P5
+
"]"
);
// ComMoveToPosition(moveP.ComPress_P3,Config.CompAxis_P3_Speed);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P5
,
Config
.
UpDownAxis_P5_Speed
);
// ACAxisMove(Config.Middle_Axis, StoreMove.MoveParam.MoveP.Middle_P2, Config.MiddleAxis_P2_Speed);
ACAxisMove
(
Config
.
UpDown_Axis
,
StoreMove
.
MoveParam
.
MoveP
.
UpDown_P5
,
Config
.
UpDownAxis_P5_Speed
);
// ShelfBack(StoreMove.MoveParam.PosInfo.ShelfType);
// ShelfBack(StoreMove.MoveParam.PosInfo.ShelfType);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_03_Updown
Move
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_03_Updown
ToP5
)
{
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_04_
DeviceToBag
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_04_
InoutToP3
);
OutStoreLog
(
"出库:
SO_04 叉子进入库位中, 进出轴至P3(库位取放料点)
"
);
OutStoreLog
(
"出库:
叉子进入库位中, 进出轴至P3(库位取放料点) ["
+
moveP
.
InOut_P4
+
"]
"
);
ACAxisMove
(
Config
.
InOut_Axis
,
moveP
.
InOut_P4
,
Config
.
InOutAxis_P3_Speed
);
ACAxisMove
(
Config
.
InOut_Axis
,
moveP
.
InOut_P4
,
Config
.
InOutAxis_P3_Speed
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_04_
DeviceToBag
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_04_
InoutToP3
)
{
{
OutStoreLog
(
"出库:SO_05 拿起物品,升降轴至P6(库位出料缓冲点) "
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_05_GetWare
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_05_BagWareToDevice
);
OutStoreLog
(
"出库: 拿起物品,升降轴至P6(库位出料缓冲点) ["
+
moveP
.
UpDown_P6
+
"]"
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P6
,
Config
.
UpDownAxis_P6_Speed
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P6
,
Config
.
UpDownAxis_P6_Speed
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_05_
BagWareToDevic
e
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_05_
GetWar
e
)
{
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_06_BagDeviceBack
);
if
(
IOManager
.
IOValue
(
IO_Type
.
LeftShelf_Check
).
Equals
(
IO_VALUE
.
LOW
))
OutStoreLog
(
"出库:SO_06 叉子从库位返回,进出轴至P1(待机点) "
);
{
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
=
1
;
InOutBackToP1
(
moveP
.
InOut_P1
);
OutStoreLog
(
" 出库: 当前未设置ShelfType,默认ShelfType="
+
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
);
}
else
{
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
=
2
;
OutStoreLog
(
"出库: 当前未设置ShelfType,默认ShelfType="
+
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
);
}
//把库位的物品放到取到叉子上之后是出仓完成
//把库位的物品放到取到叉子上之后是出仓完成
string
posId
=
StoreMove
.
MoveParam
!=
null
?
StoreMove
.
MoveParam
.
PosInfo
.
PosId
:
""
;
string
posId
=
StoreMove
.
MoveParam
!=
null
?
StoreMove
.
MoveParam
.
PosInfo
.
PosId
:
""
;
lastPosId
=
posId
;
lastPosId
=
posId
;
lastPosIdStatus
=
StoreStatus
.
OutStoreBoxEnd
;
lastPosIdStatus
=
StoreStatus
.
OutStoreBoxEnd
;
storeStatus
=
StoreStatus
.
OutStoreBoxEnd
;
storeStatus
=
StoreStatus
.
OutStoreBoxEnd
;
lastDoor
=
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
;
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_06_InoutToP1
);
OutStoreLog
(
"出库: 叉子从库位返回,进出轴至P1(待机点)["
+
moveP
.
InOut_P1
+
"],更新状态=OutStoreBoxEnd, "
+
lastDoor
);
InOutBackToP1
(
moveP
.
InOut_P1
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_06_
BagDeviceBack
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_06_
InoutToP1
)
{
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_07_CheckHasTray
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_07_CheckHasTray
);
OutStoreLog
(
"出库:
SO_07
判断是否拿到料"
);
OutStoreLog
(
"出库: 判断是否拿到料"
);
if
(
StoreManager
.
UseShelfCheck
)
if
(
StoreManager
.
UseShelfCheck
)
{
{
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
TrayCheck_Fixture
,
IO_VALUE
.
HIGH
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
TrayCheck_Fixture
,
IO_VALUE
.
HIGH
));
}
}
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_07_CheckHasTray
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_07_CheckHasTray
)
{
{
...
@@ -583,16 +587,15 @@ namespace OnlineStore.DeviceLibrary
...
@@ -583,16 +587,15 @@ namespace OnlineStore.DeviceLibrary
}
}
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_08_UpdownBack
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_08_UpdownBack
);
OutStoreLog
(
"出库:
SO_08 升降轴至P2(进料口出料前点), 托架后退
"
);
OutStoreLog
(
"出库:
升降轴至P2(进料口出料前点), ["
+
moveP
.
UpDown_P2
+
"]
"
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P2
,
Config
.
UpDownAxis_P2_Speed
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P2
,
Config
.
UpDownAxis_P2_Speed
);
// ACAxisMove(Config.Middle_Axis, moveP.Middle_P1, Config.MiddleAxis_P1_Speed);
// ACAxisMove(Config.Middle_Axis, moveP.Middle_P1, Config.MiddleAxis_P1_Speed);
ShelfBack
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
,
StoreMove
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_08_UpdownBack
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_08_UpdownBack
)
{
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_09_ToDoorPosition
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_09_ToDoorPosition
);
OutStoreLog
(
"出库:
SO_09 前后轴至P1(待机点)
"
);
OutStoreLog
(
"出库:
前后轴至P1(待机点) ["
+
moveP
.
Middle_P1
+
"]
"
);
// ACAxisMove(Config.UpDown_Axis, moveP.UpDown_P2, Config.UpDownAxis_P2_Speed);
// ACAxisMove(Config.UpDown_Axis, moveP.UpDown_P2, Config.UpDownAxis_P2_Speed);
ACAxisMove
(
Config
.
Middle_Axis
,
moveP
.
Middle_P1
,
Config
.
MiddleAxis_P1_Speed
);
ACAxisMove
(
Config
.
Middle_Axis
,
moveP
.
Middle_P1
,
Config
.
MiddleAxis_P1_Speed
);
// ShelfBack(StoreMove.MoveParam.PosInfo.ShelfType, StoreMove);
// ShelfBack(StoreMove.MoveParam.PosInfo.ShelfType, StoreMove);
...
@@ -601,39 +604,79 @@ namespace OnlineStore.DeviceLibrary
...
@@ -601,39 +604,79 @@ namespace OnlineStore.DeviceLibrary
{
{
//SO_10_DeviceToDoorPro();
//SO_10_DeviceToDoorPro();
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_10_WaitNoTray
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_10_WaitNoTray
);
OutStoreLog
(
"出库:SO_10_WaitNoTray 等待托架无料 "
);
int
shelfType
=
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
;
if
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
.
Equals
(
1
))
OutStoreLog
(
"出库:等待托架无料 ["
+
shelfType
+
"] "
);
if
(
shelfType
.
Equals
(
1
))
{
{
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
LeftShelf_Check
,
IO_VALUE
.
LOW
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
LeftShelf_Check
,
IO_VALUE
.
LOW
));
}
}
else
else
if
(
shelfType
.
Equals
(
2
))
{
{
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
RightShelf_Check
,
IO_VALUE
.
LOW
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
RightShelf_Check
,
IO_VALUE
.
LOW
));
}
}
if
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
.
Equals
(
0
))
{
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
LeftShelf_Check
,
IO_VALUE
.
LOW
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
RightShelf_Check
,
IO_VALUE
.
LOW
));
StoreMove
.
OneWaitCanEndStep
=
true
;
}
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_10_WaitNoTray
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_10_WaitNoTray
)
{
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_11_DeviceToDoor
);
if
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
.
Equals
(
0
))
OutStoreLog
(
"出库:SO_11 叉子进出料口,进出轴至P2(进料口取料点) "
);
{
if
(
IOManager
.
IOValue
(
IO_Type
.
LeftShelf_Check
).
Equals
(
IO_VALUE
.
LOW
))
{
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
=
1
;
OutStoreLog
(
" 出库: 当前未设置ShelfType,默认ShelfType="
+
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
);
}
else
if
(
IOManager
.
IOValue
(
IO_Type
.
RightShelf_Check
).
Equals
(
IO_VALUE
.
LOW
))
{
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
=
2
;
OutStoreLog
(
"出库: 当前未设置ShelfType,默认ShelfType="
+
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
);
}
else
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_10_WaitNoTray
);
int
shelfType
=
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
;
OutStoreLog
(
"出库: 再次 等待托架无料 ["
+
shelfType
+
"] "
);
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
LeftShelf_Check
,
IO_VALUE
.
LOW
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
RightShelf_Check
,
IO_VALUE
.
LOW
));
StoreMove
.
OneWaitCanEndStep
=
true
;
}
}
if
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
>
0
)
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_11_ShelfBack
);
OutStoreLog
(
"出库: 托架后退 ["
+
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
+
"] "
);
ShelfBack
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
,
StoreMove
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_11_ShelfBack
)
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_12_InoutToP2
);
OutStoreLog
(
"出库: 叉子进出料口,进出轴至P2(进料口取料点) ["
+
moveP
.
InOut_P2
+
"] "
);
ACAxisMove
(
Config
.
InOut_Axis
,
moveP
.
InOut_P2
,
Config
.
InOutAxis_P2_Speed
);
ACAxisMove
(
Config
.
InOut_Axis
,
moveP
.
InOut_P2
,
Config
.
InOutAxis_P2_Speed
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_1
1_DeviceToDoor
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_1
2_InoutToP2
)
{
{
OutStoreLog
(
"出库:SO_12 放下物品,升降轴至P8(进料口出料缓冲点) "
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_13_PutWare
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_12_DevicePutWare
);
OutStoreLog
(
"出库: 放下物品,升降轴至P8(进料口出料缓冲点) ["
+
moveP
.
UpDown_P8
+
"]"
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P8
,
Config
.
UpDownAxis_P8_Speed
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P8
,
Config
.
UpDownAxis_P8_Speed
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_1
2_Device
PutWare
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_1
3_
PutWare
)
{
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_1
3_DeviceOutFromDoor
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_1
4_InoutToP1
);
OutStoreLog
(
"出库:
SO_13 叉子从出料口返回,,进出轴动作至P1(待机点)
"
);
OutStoreLog
(
"出库:
叉子从出料口返回,,进出轴动作至P1(待机点) ["
+
moveP
.
InOut_P1
+
"]
"
);
InOutBackToP1
(
moveP
.
InOut_P1
);
InOutBackToP1
(
moveP
.
InOut_P1
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_1
3_DeviceOutFromDoor
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_1
4_InoutToP1
)
{
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_1
4
_CheckShelfDI
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_1
5
_CheckShelfDI
);
OutStoreLog
(
"出库:
SO_14
判断物料信号是否正确 "
);
OutStoreLog
(
"出库: 判断物料信号是否正确 "
);
if
(
StoreManager
.
UseShelfCheck
)
if
(
StoreManager
.
UseShelfCheck
)
{
{
if
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
.
Equals
(
1
))
if
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
.
Equals
(
1
))
...
@@ -647,15 +690,15 @@ namespace OnlineStore.DeviceLibrary
...
@@ -647,15 +690,15 @@ namespace OnlineStore.DeviceLibrary
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
TrayCheck_Fixture
,
IO_VALUE
.
LOW
));
StoreMove
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
TrayCheck_Fixture
,
IO_VALUE
.
LOW
));
}
}
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_1
4
_CheckShelfDI
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_1
5
_CheckShelfDI
)
{
{
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_1
5
_GoBack
);
StoreMove
.
NextMoveStep
(
StoreMoveStep
.
SO_1
6
_GoBack
);
OutStoreLog
(
"出库:
SO_15 升降轴到P1(待机点)
,托架前进,打开门锁"
);
OutStoreLog
(
"出库:
升降轴到P1(待机点) ["
+
moveP
.
UpDown_P1
+
"]
,托架前进,打开门锁"
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P1
,
Config
.
UpDownAxis_P1_Speed
);
ACAxisMove
(
Config
.
UpDown_Axis
,
moveP
.
UpDown_P1
,
Config
.
UpDownAxis_P1_Speed
);
OpenDoor
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
);
OpenDoor
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
);
ShelfForward
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
,
StoreMove
);
ShelfForward
(
StoreMove
.
MoveParam
.
PosInfo
.
ShelfType
,
StoreMove
);
}
}
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_1
5
_GoBack
)
else
if
(
StoreMove
.
MoveStep
==
StoreMoveStep
.
SO_1
6
_GoBack
)
{
{
TimeSpan
span
=
DateTime
.
Now
-
startOutStoreTime
;
TimeSpan
span
=
DateTime
.
Now
-
startOutStoreTime
;
string
posId
=
StoreMove
.
MoveParam
!=
null
?
StoreMove
.
MoveParam
.
PosInfo
.
PosId
:
""
;
string
posId
=
StoreMove
.
MoveParam
!=
null
?
StoreMove
.
MoveParam
.
PosInfo
.
PosId
:
""
;
...
@@ -798,12 +841,76 @@ namespace OnlineStore.DeviceLibrary
...
@@ -798,12 +841,76 @@ namespace OnlineStore.DeviceLibrary
private
void
InStoreLog
(
string
msg
)
private
void
InStoreLog
(
string
msg
)
{
{
string
posId
=
StoreMove
.
MoveParam
!=
null
?
StoreMove
.
MoveParam
.
PosInfo
.
PosId
:
""
;
string
posId
=
StoreMove
.
MoveParam
!=
null
?
StoreMove
.
MoveParam
.
PosInfo
.
PosId
:
""
;
LogUtil
.
info
(
LOGGER
,
"【"
+
posId
+
"】"
+
msg
,
storeMoveColor
);
LogUtil
.
info
(
LOGGER
,
"【"
+
posId
+
"】
["
+
StoreMove
.
MoveStep
+
"]
"
+
msg
,
storeMoveColor
);
}
}
private
void
OutStoreLog
(
string
msg
)
private
void
OutStoreLog
(
string
msg
)
{
{
string
posId
=
StoreMove
.
MoveParam
!=
null
?
StoreMove
.
MoveParam
.
PosInfo
.
PosId
:
""
;
string
posId
=
StoreMove
.
MoveParam
!=
null
?
StoreMove
.
MoveParam
.
PosInfo
.
PosId
:
""
;
LogUtil
.
info
(
LOGGER
,
"【"
+
posId
+
"】"
+
msg
,
storeMoveColor
);
LogUtil
.
info
(
LOGGER
,
"【"
+
posId
+
"】["
+
StoreMove
.
MoveStep
+
"] "
+
msg
,
storeMoveColor
);
}
private
bool
OpenDoor
(
int
doorType
)
{
return
OpenCloseDoor
(
doorType
,
IO_VALUE
.
LOW
);
}
private
bool
CloseDoor
(
int
doorType
)
{
return
OpenCloseDoor
(
doorType
,
IO_VALUE
.
HIGH
);
}
private
bool
OpenCloseDoor
(
int
doorType
,
IO_VALUE
value
)
{
if
(
doorType
.
Equals
(
1
))
{
if
(
IOManager
.
IOValue
(
IO_Type
.
LeftDoor_Close
).
Equals
(
IO_VALUE
.
HIGH
))
{
IOManager
.
IOMove
(
IO_Type
.
LeftDoor_Close
,
value
);
return
true
;
}
else
{
LogUtil
.
info
(
"OpenCloseDoor ["
+
doorType
+
"] ["
+
value
+
"] 失败"
);
return
false
;
}
}
else
{
if
(
IOManager
.
IOValue
(
IO_Type
.
RightDoor_Close
).
Equals
(
IO_VALUE
.
HIGH
))
{
IOManager
.
IOMove
(
IO_Type
.
RightDoor_Close
,
value
);
return
true
;
}
else
{
LogUtil
.
info
(
"OpenCloseDoor ["
+
doorType
+
"] ["
+
value
+
"] 失败"
);
return
false
;
}
}
}
private
string
GetDoorStatus
(
int
doorType
)
{
////3 仓门状态上传: 字段为door1和doo2, 状态: opened为已打开, closed为已关闭, opening为打开中, closing为关闭中
if
(
doorType
.
Equals
(
1
))
{
if
(
IOManager
.
IOValue
(
IO_Type
.
LeftDoor_Close
).
Equals
(
IO_VALUE
.
HIGH
))
{
return
"opened"
;
}
else
{
return
"closed"
;
}
}
else
{
if
(
IOManager
.
IOValue
(
IO_Type
.
RightDoor_Close
).
Equals
(
IO_VALUE
.
HIGH
))
{
return
"opened"
;
}
else
{
return
"closed"
;
}
}
}
}
}
}
}
}
source/DeviceLibrary/store/StoreStep.cs
查看文件 @
907b095
...
@@ -171,31 +171,31 @@ namespace OnlineStore.DeviceLibrary
...
@@ -171,31 +171,31 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// <summary>
///出库:叉子先运动到P1
///出库:叉子先运动到P1
/// </summary>
/// </summary>
SO_01_
DeviceBack
=
101
,
SO_01_
InoutToP1
=
101
,
/// <summary>
/// <summary>
/// 出库:前后轴至P2(库位点),托架后退)
/// 出库:前后轴至P2(库位点),托架后退)
/// </summary>
/// </summary>
SO_02_
ToBagPosition
=
102
,
SO_02_
MiddleToP2
=
102
,
/// <summary>
/// <summary>
/// 出库:升降轴至P5(库位出库前点)
/// 出库:升降轴至P5(库位出库前点)
/// </summary>
/// </summary>
SO_03_Updown
Move
=
103
,
SO_03_Updown
ToP5
=
103
,
/// <summary>
/// <summary>
/// 出库:叉子进入库位中, 轴3( 叉子) 至P3(库位取放料点)
/// 出库:叉子进入库位中, 轴3( 叉子) 至P3(库位取放料点)
/// </summary>
/// </summary>
SO_04_
DeviceToBag
=
104
,
SO_04_
InoutToP3
=
104
,
/// <summary>
/// <summary>
///出库: 库位的物品放入叉子上,轴2( 上下) 至P6( 库位出料缓冲点),轴4( 压紧) 至P2(压紧点)
///出库: 库位的物品放入叉子上,轴2( 上下) 至P6( 库位出料缓冲点),轴4( 压紧) 至P2(压紧点)
/// </summary>
/// </summary>
SO_05_
BagWareToDevic
e
=
105
,
SO_05_
GetWar
e
=
105
,
/// <summary>
/// <summary>
///出库:叉子从 库位返回,轴3( 叉子) 至P1( 待机点)
///出库:叉子从 库位返回,轴3( 叉子) 至P1( 待机点)
/// </summary>
/// </summary>
SO_06_
BagDeviceBack
=
106
,
SO_06_
InoutToP1
=
106
,
/// <summary>
/// <summary>
/// 出库:检测叉子是否有料
/// 出库:检测叉子是否有料
...
@@ -212,32 +212,36 @@ namespace OnlineStore.DeviceLibrary
...
@@ -212,32 +212,36 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
/// </summary>
SO_09_ToDoorPosition
=
109
,
SO_09_ToDoorPosition
=
109
,
/// <summary>
/// <summary>
/// 等待门口无料盘
///
出库:
等待门口无料盘
/// </summary>
/// </summary>
SO_10_WaitNoTray
=
110
,
SO_10_WaitNoTray
=
110
,
/// <summary>
/// 出库:托架后退
/// </summary>
SO_11_ShelfBack
=
111
,
/// <summary>
/// <summary>
/// 出库:叉子进出料口,,轴3( 叉子) 至P2( 进料口取料点)
/// 出库:叉子进出料口,,轴3( 叉子) 至P2( 进料口取料点)
/// /// </summary>
/// /// </summary>
SO_1
1_DeviceToDoor
=
111
,
SO_1
2_InoutToP2
=
112
,
/// <summary>
/// <summary>
/// 出库:把物品放下,,轴2( 上下) 至P8( 进料口出料缓冲点)轴4( 压紧) 至P1( 待机点)
/// 出库:把物品放下,,轴2( 上下) 至P8( 进料口出料缓冲点)轴4( 压紧) 至P1( 待机点)
/// </summary>
/// </summary>
SO_1
2_DevicePutWare
=
112
,
SO_1
3_PutWare
=
113
,
/// <summary>
/// <summary>
/// 出库:叉子从出料口返回,,轴3( 叉子) 动作至P1( 待机点)
/// 出库:叉子从出料口返回,,轴3( 叉子) 动作至P1( 待机点)
/// </summary>
/// </summary>
SO_1
3_DeviceOutFromDoor
=
113
,
SO_1
4_InoutToP1
=
114
,
/// <summary>
/// <summary>
/// 出库:判断物料信号
/// 出库:判断物料信号
/// </summary>
/// </summary>
SO_1
4_CheckShelfDI
=
114
,
SO_1
5_CheckShelfDI
=
115
,
/// <summary>
/// <summary>
/// 出库:升降轴返回,, 轴2至P1( 待机点)
/// 出库:升降轴返回,, 轴2至P1( 待机点)
/// </summary>
/// </summary>
SO_1
5_GoBack
=
115
,
SO_1
6_GoBack
=
116
,
///// <summary>
///// <summary>
///// 等待拿走物品
///// 等待拿走物品
///// </summary>
///// </summary>
...
@@ -254,16 +258,16 @@ namespace OnlineStore.DeviceLibrary
...
@@ -254,16 +258,16 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// <summary>
/// 入库。。进出轴(叉子)先返回P1,关闭门锁
/// 入库。。进出轴(叉子)先返回P1,关闭门锁
/// </summary>
/// </summary>
SI_02_InOut
AxisHome
=
202
,
SI_02_InOut
ToP1
=
202
,
/// <summary>
/// <summary>
/// 入库。。所有轴先回到待机点,轴2、轴1 动作到P1, 托架后退
/// 入库。。所有轴先回到待机点,轴2、轴1 动作到P1, 托架后退
/// </summary>
/// </summary>
SI_03_
ReturnHome
=
203
,
SI_03_
ToP1
=
203
,
/// <summary>
/// <summary>
/// 入库。。叉子进入入料口,轴3( 叉子) 至P2( 进料口取料点)
/// 入库。。叉子进入入料口,轴3( 叉子) 至P2( 进料口取料点)
/// </summary>
/// </summary>
SI_05_
DeviceToDoor
=
205
,
SI_05_
InoutToP2
=
205
,
/// <summary>
/// <summary>
/// 入库。。把物品放入叉子上,轴2( 上下) 至P7( 进料口取料缓冲点)
/// 入库。。把物品放入叉子上,轴2( 上下) 至P7( 进料口取料缓冲点)
/// </summary>
/// </summary>
...
@@ -273,7 +277,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -273,7 +277,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// <summary>
/// 入库。。叉子 从入料口抽出,轴3( 叉子) 至P1( 待机点)
/// 入库。。叉子 从入料口抽出,轴3( 叉子) 至P1( 待机点)
/// </summary>
/// </summary>
SI_07_In
outBack
=
207
,
SI_07_In
OutToP1
=
207
,
/// <summary>
/// <summary>
/// 入库。。等待物料信号到位
/// 入库。。等待物料信号到位
...
@@ -282,7 +286,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -282,7 +286,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// <summary>
/// 入库。。移动到库位点,前后轴 至P3(库位入库前点)
/// 入库。。移动到库位点,前后轴 至P3(库位入库前点)
/// </summary>
/// </summary>
SI_09_M
oveToBag
=
209
,
SI_09_M
iddleToP3
=
209
,
/// <summary>
/// <summary>
/// 入库。。移动到库位点,升降轴到库位
/// 入库。。移动到库位点,升降轴到库位
/// </summary>
/// </summary>
...
@@ -291,15 +295,15 @@ namespace OnlineStore.DeviceLibrary
...
@@ -291,15 +295,15 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// <summary>
/// 入库。。叉子进入库位中, 进出轴至P4(库位取放料点)
/// 入库。。叉子进入库位中, 进出轴至P4(库位取放料点)
/// </summary>
/// </summary>
SI_11_
DeviceToBag
=
211
,
SI_11_
InoutToP4
=
211
,
/// <summary>
/// <summary>
/// 入库。。放下物品,轴2( 上下) 至P4( 库位入料缓冲点)
/// 入库。。放下物品,轴2( 上下) 至P4( 库位入料缓冲点)
/// </summary>
/// </summary>
SI_12_PutWare
ToBag
=
212
,
SI_12_PutWare
=
212
,
/// <summary>
/// <summary>
/// 入库。。叉子从库位中返回,轴3( 叉子) 动作至P1( 待机点)
/// 入库。。叉子从库位中返回,轴3( 叉子) 动作至P1( 待机点)
/// </summary>
/// </summary>
SI_13_
DeviceBackFromBag
=
213
,
SI_13_
InoutToP1
=
213
,
/// <summary>
/// <summary>
/// 入库。判断料叉物料检测信号是否消失
/// 入库。判断料叉物料检测信号是否消失
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论