Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
张东亮
/
SO1057-XLRStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 66be7140
由
张东亮
编写于
2023-01-06 16:37:25 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
动作优化
1 个父辈
b9941654
全部展开
显示空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
97 行增加
和
13 行删除
source/DeviceLibrary/DeviceLibrary.csproj
source/DeviceLibrary/manager/model/DeviceStep.cs
source/DeviceLibrary/storeBean/boxBean/BoxEquip.cs
source/DeviceLibrary/storeBean/boxBean/BoxEquip_InExecute.cs
source/DeviceLibrary/storeBean/boxBean/BoxEquip_InExecute_Partial.cs
source/DeviceLibrary/storeBean/boxBean/BoxEquip_Partial.cs
source/DeviceLibrary/DeviceLibrary.csproj
查看文件 @
66be714
...
@@ -86,6 +86,7 @@
...
@@ -86,6 +86,7 @@
<Compile Include="storeBean\boxBean\BoxEquip_ConnectServerTimer.cs" />
<Compile Include="storeBean\boxBean\BoxEquip_ConnectServerTimer.cs" />
<Compile Include="storeBean\boxBean\AutoInoutInfo.cs" />
<Compile Include="storeBean\boxBean\AutoInoutInfo.cs" />
<Compile Include="storeBean\boxBean\BoxEquip_InExecute.cs" />
<Compile Include="storeBean\boxBean\BoxEquip_InExecute.cs" />
<Compile Include="storeBean\boxBean\BoxEquip_InExecute_Partial.cs" />
<Compile Include="storeBean\boxBean\BoxEquip_OutExecute.cs" />
<Compile Include="storeBean\boxBean\BoxEquip_OutExecute.cs" />
<Compile Include="storeBean\boxBean\BoxEquip_PosDebug.cs" />
<Compile Include="storeBean\boxBean\BoxEquip_PosDebug.cs" />
<Compile Include="storeBean\boxBean\Humiture\HumitureBean.cs" />
<Compile Include="storeBean\boxBean\Humiture\HumitureBean.cs" />
...
...
source/DeviceLibrary/manager/model/DeviceStep.cs
查看文件 @
66be714
...
@@ -458,6 +458,55 @@ namespace OnlineStore.DeviceLibrary
...
@@ -458,6 +458,55 @@ namespace OnlineStore.DeviceLibrary
/// 料仓入库:如果上料机构入料口有料,则去待机点
/// 料仓入库:如果上料机构入料口有料,则去待机点
/// </summary>
/// </summary>
SI_20_ToStandby
,
SI_20_ToStandby
,
#
region
两侧同时进行取料
SIB_00_StartInstore
,
/// <summary>
///料仓入库:料斗拉取进出轴先运动到P1
/// </summary>
SIB_01_PullAxis_Ready
,
/// <summary>
///料仓入库:未在安全位置,行走机构先运动到P1
/// </summary>
SIB_01_MoveAxis_Ready
,
/// <summary>
///料仓入库:移栽升降轴到上暂存区取料低点P3/P9
/// </summary>
SIB_01_Pull_Updown_ToPosition
,
/// <summary>
/// 料仓入库:到料盘暂存区
/// 1. 行走机构到P2(进出料机构取放点)
/// 2. 移栽升降轴到P3(A上暂存区取料低点)
/// 3. A/B面移栽压紧轴到P2(压紧前点)
/// 4. A面移栽旋转轴到P2(进出料暂存区取放料水平点),同时检测X02=1
/// 或者 B面移栽旋转轴到P2(进出料暂存区取放料水平点),同时检测X03=1
/// </summary>
SIB_02_ToBufferArea
,
/// <summary>
/// 料仓入库:确保暂存区有料盘
/// 如果无料盘则报警
/// </summary>
SIB_03_VerifyBufferState
,
/// <summary>
/// 料仓入库:A/B面移栽X轴到P2(A/B进出料暂存区取放点)
/// </summary>
SIB_04_InOutToBuff
,
/// <summary>
/// 料仓入库:取料盘
/// 1. 移栽升降轴到P2(A上暂存区取料高点)
/// 2. A/B面移栽压紧轴到P3压紧点
/// </summary>
SIB_05_GetReel
,
/// <summary>
/// 料仓入库:A/B面移栽X轴到P1
/// </summary>
SIB_06_InOutBackToP1FromBuff
,
/// <summary>
/// 料仓入库:清除缓存
/// </summary>
SIB_06_ClearBuffInfo
,
#
endregion
#
endregion
#
endregion
#
region
存储机构自动对位功能
400
开始
#
region
存储机构自动对位功能
400
开始
...
...
source/DeviceLibrary/storeBean/boxBean/BoxEquip.cs
查看文件 @
66be714
...
@@ -313,9 +313,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -313,9 +313,9 @@ namespace OnlineStore.DeviceLibrary
}
}
private
void
StartReset
()
private
void
StartReset
()
{
{
if
(
HasDrawerInHook
())
if
(
HasDrawerInHook
())
{
{
System
.
Windows
.
Forms
.
MessageBox
.
Show
(
"检测到拉取机构上的拉钩检测信号亮,不允许复位!"
,
"警告"
);
System
.
Windows
.
Forms
.
MessageBox
.
Show
(
"检测到拉取机构上的拉钩检测信号亮,不允许复位!"
,
"警告"
);
return
;
return
;
}
}
if
(!
CanReset
())
if
(!
CanReset
())
...
@@ -746,11 +746,21 @@ namespace OnlineStore.DeviceLibrary
...
@@ -746,11 +746,21 @@ namespace OnlineStore.DeviceLibrary
ClearSpecifiedAlarm
(
"B下出料暂存区有料盘,但信号未亮"
);
ClearSpecifiedAlarm
(
"B下出料暂存区有料盘,但信号未亮"
);
errUnderB
=
DateTime
.
Now
;
errUnderB
=
DateTime
.
Now
;
}
}
if
(
IOValue
(
IO_Type
.
FeedingA_Instore_UpperArea_ReelCheck
).
Equals
(
IO_VALUE
.
HIGH
)
&&
BufferDataManager
.
AInStoreInfo
!=
null
&&
IOValue
(
IO_Type
.
FeedingB_Instore_UpperArea_ReelCheck
).
Equals
(
IO_VALUE
.
HIGH
)
&&
BufferDataManager
.
BInStoreInfo
!=
null
)
{
StartInstore
(
new
InOutParam
()
{
PosInfo
=
BufferDataManager
.
AInStoreInfo
,
PosInfoBack
=
BufferDataManager
.
BInStoreInfo
});
return
;
}
//检测A上暂存区是否有料盘
//检测A上暂存区是否有料盘
if
(
IOValue
(
IO_Type
.
FeedingA_Instore_UpperArea_ReelCheck
).
Equals
(
IO_VALUE
.
HIGH
))
if
(
IOValue
(
IO_Type
.
FeedingA_Instore_UpperArea_ReelCheck
).
Equals
(
IO_VALUE
.
HIGH
))
{
{
if
(
timeSpanA
.
TotalSeconds
>=
SigLastTime
)
if
(
timeSpanA
.
TotalSeconds
>=
SigLastTime
)
{
StartInstore
(
new
InOutParam
(
BufferDataManager
.
AInStoreInfo
));
StartInstore
(
new
InOutParam
(
BufferDataManager
.
AInStoreInfo
));
return
;
}
}
}
else
else
{
{
...
@@ -761,7 +771,10 @@ namespace OnlineStore.DeviceLibrary
...
@@ -761,7 +771,10 @@ namespace OnlineStore.DeviceLibrary
if
(
IOValue
(
IO_Type
.
FeedingB_Instore_UpperArea_ReelCheck
).
Equals
(
IO_VALUE
.
HIGH
))
if
(
IOValue
(
IO_Type
.
FeedingB_Instore_UpperArea_ReelCheck
).
Equals
(
IO_VALUE
.
HIGH
))
{
{
if
(
timeSpanB
.
TotalSeconds
>=
SigLastTime
)
if
(
timeSpanB
.
TotalSeconds
>=
SigLastTime
)
{
StartInstore
(
new
InOutParam
(
BufferDataManager
.
BInStoreInfo
));
StartInstore
(
new
InOutParam
(
BufferDataManager
.
BInStoreInfo
));
return
;
}
}
}
else
else
{
{
...
@@ -784,7 +797,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -784,7 +797,7 @@ namespace OnlineStore.DeviceLibrary
bool
result
=
waitAOutStoreList
.
TryDequeue
(
out
param
);
bool
result
=
waitAOutStoreList
.
TryDequeue
(
out
param
);
if
(
result
&&
param
!=
null
)
if
(
result
&&
param
!=
null
)
{
{
LogInfo
(
"执行A面排队的出库【"
+
param
.
PosInfo
.
ToStr
()
+
"】"
);
//
LogInfo("执行A面排队的出库【" + param.PosInfo.ToStr() + "】");
StartExecuctOut
(
param
);
StartExecuctOut
(
param
);
return
;
return
;
}
}
...
@@ -795,7 +808,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -795,7 +808,7 @@ namespace OnlineStore.DeviceLibrary
bool
result
=
waitAOutStoreList
.
TryDequeue
(
out
param
);
bool
result
=
waitAOutStoreList
.
TryDequeue
(
out
param
);
if
(
result
&&
param
!=
null
)
if
(
result
&&
param
!=
null
)
{
{
LogInfo
(
"执行A面排队的出库【"
+
param
.
PosInfo
.
ToStr
()
+
"】"
);
//
LogInfo("执行A面排队的出库【" + param.PosInfo.ToStr() + "】");
StartExecuctOut
(
param
);
StartExecuctOut
(
param
);
return
;
return
;
}
}
...
@@ -1013,7 +1026,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -1013,7 +1026,7 @@ namespace OnlineStore.DeviceLibrary
if
(
StoreManager
.
DisBoxSecurityAccess
)
if
(
StoreManager
.
DisBoxSecurityAccess
)
{
{
}
}
else
if
(
IOManager
.
IOValue
(
IO_Type
.
Air_OpenValve
,
1
).
Equals
(
IO_VALUE
.
HIGH
))
else
if
(
IOManager
.
IOValue
(
IO_Type
.
Air_OpenValve
,
1
).
Equals
(
IO_VALUE
.
HIGH
))
{
{
SecurityAccessStop
(
"空气阀打开,设备暂停"
);
SecurityAccessStop
(
"空气阀打开,设备暂停"
);
}
}
...
@@ -1036,7 +1049,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -1036,7 +1049,7 @@ namespace OnlineStore.DeviceLibrary
IOValue
(
IO_Type
.
RightDoor_Limit
).
Equals
(
IO_VALUE
.
HIGH
)
&&
IOValue
(
IO_Type
.
RightDoor_Limit
).
Equals
(
IO_VALUE
.
HIGH
)
&&
IOValue
(
IO_Type
.
BackDoor_Limit
).
Equals
(
IO_VALUE
.
HIGH
))
IOValue
(
IO_Type
.
BackDoor_Limit
).
Equals
(
IO_VALUE
.
HIGH
))
{
{
IOManager
.
IOMove
(
IO_Type
.
SafeDoor_Close
,
IO_VALUE
.
HIGH
,
1
);
IOManager
.
IOMove
(
IO_Type
.
SafeDoor_Close
,
IO_VALUE
.
HIGH
,
1
);
SecurityAccessReset
();
SecurityAccessReset
();
}
}
}
}
...
...
source/DeviceLibrary/storeBean/boxBean/BoxEquip_InExecute.cs
查看文件 @
66be714
...
@@ -89,6 +89,18 @@ namespace OnlineStore.DeviceLibrary
...
@@ -89,6 +89,18 @@ namespace OnlineStore.DeviceLibrary
{
{
ClearSpecifiedAlarm
(
"入库验证失败"
);
ClearSpecifiedAlarm
(
"入库验证失败"
);
}
}
if
(
param
.
PosInfoBack
!=
null
)
{
if
(!
ReviceInStoreCMD
(
param
.
PosInfoBack
.
PosId
,
param
.
PosInfoBack
.
PlateH
,
param
.
PosInfoBack
.
PlateW
,
param
.
PosInfoBack
.
barcode
))
{
SetWarnMsg
(
$
" 入库验证失败:{param.PosInfoBack.ToStr()}"
);
return
false
;
}
else
{
ClearSpecifiedAlarm
(
"入库验证失败"
);
}
}
}
}
return
true
;
return
true
;
}
}
...
@@ -200,7 +212,8 @@ namespace OnlineStore.DeviceLibrary
...
@@ -200,7 +212,8 @@ namespace OnlineStore.DeviceLibrary
UpdownAxisTo_P3_P9
();
UpdownAxisTo_P3_P9
();
ComAxis_To_P2
();
ComAxis_To_P2
();
MiddleAxis_To_P2
();
MiddleAxis_To_P2
();
XAxis_To_P1
();
//XAxis_To_P1();
BothXAxis_To_P1
();
break
;
break
;
case
StepEnum
.
SI_01_MoveAxis_Ready
:
case
StepEnum
.
SI_01_MoveAxis_Ready
:
MoveInfo
.
NextMoveStep
(
StepEnum
.
SI_02_ToBufferArea
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
SI_02_ToBufferArea
);
...
@@ -451,7 +464,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -451,7 +464,7 @@ namespace OnlineStore.DeviceLibrary
{
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
SI_07_MiddleToP3
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
SI_07_MiddleToP3
);
LogInfo
(
$
"入库 {MoveInfo.SLog}:从{MoveInfo.MoveParam.PosInfo.GetPosSide()}面切换到另一面入库[{MoveInfo.MoveParam.PosInfoBack.barcode}]"
);
LogInfo
(
$
"入库 {MoveInfo.SLog}:从{MoveInfo.MoveParam.PosInfo.GetPosSide()}面切换到另一面入库[{MoveInfo.MoveParam.PosInfoBack.barcode}]"
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
10
00
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
5
00
));
MoveInfo
.
MoveParam
.
PosInfo
=
MoveInfo
.
MoveParam
.
PosInfoBack
.
ToCopy
();
MoveInfo
.
MoveParam
.
PosInfo
=
MoveInfo
.
MoveParam
.
PosInfoBack
.
ToCopy
();
MoveInfo
.
MoveParam
.
MoveP
=
new
LineMoveP
(
Config
,
MoveInfo
.
MoveParam
.
PosInfo
.
PosId
);
MoveInfo
.
MoveParam
.
MoveP
=
new
LineMoveP
(
Config
,
MoveInfo
.
MoveParam
.
PosInfo
.
PosId
);
MoveInfo
.
MoveParam
.
PosInfoBack
=
null
;
MoveInfo
.
MoveParam
.
PosInfoBack
=
null
;
...
...
source/DeviceLibrary/storeBean/boxBean/BoxEquip_InExecute_Partial.cs
0 → 100644
查看文件 @
66be714
此文件的差异被折叠,
点击展开。
source/DeviceLibrary/storeBean/boxBean/BoxEquip_Partial.cs
查看文件 @
66be714
...
@@ -899,6 +899,10 @@ namespace OnlineStore.DeviceLibrary
...
@@ -899,6 +899,10 @@ namespace OnlineStore.DeviceLibrary
{
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
SI_01_PullAxis_Ready
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
SI_01_PullAxis_Ready
);
}
}
if
(
MoveInfo
.
MoveStep
.
Equals
(
StepEnum
.
SIB_00_StartInstore
))
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
SIB_01_PullAxis_Ready
);
}
else
if
(
MoveInfo
.
MoveStep
.
Equals
(
StepEnum
.
SO_00_StartOutstore
))
else
if
(
MoveInfo
.
MoveStep
.
Equals
(
StepEnum
.
SO_00_StartOutstore
))
{
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
SO_01_PullAxis_Ready
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
SO_01_PullAxis_Ready
);
...
@@ -908,10 +912,10 @@ namespace OnlineStore.DeviceLibrary
...
@@ -908,10 +912,10 @@ namespace OnlineStore.DeviceLibrary
MoveInfo
.
NextMoveStep
(
StepEnum
.
SP_00_2_PullAxisReady
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
SP_00_2_PullAxisReady
);
}
}
if
(!
PullAxis_Updown
.
IsInPosition
(
Config
.
PullAxis_Updown_P1
))
//
if (!PullAxis_Updown.IsInPosition(Config.PullAxis_Updown_P1))
{
//
{
PullAxis_Updown
.
AbsMove
(
MoveInfo
,
Config
.
PullAxis_Updown_P1
,
Config
.
PullAxis_Updown_P1_Speed
);
//
PullAxis_Updown.AbsMove(MoveInfo, Config.PullAxis_Updown_P1, Config.PullAxis_Updown_P1_Speed);
}
//
}
if
(
PullAxis_Inout
.
IsInPosition
(
Config
.
PullAxis_Inout_CamA
)
||
PullAxis_Inout
.
IsInPosition
(
Config
.
PullAxis_Inout_CamB
)
if
(
PullAxis_Inout
.
IsInPosition
(
Config
.
PullAxis_Inout_CamA
)
||
PullAxis_Inout
.
IsInPosition
(
Config
.
PullAxis_Inout_CamB
)
||
PullAxis_Inout
.
IsInPosition
(
Config
.
PullAxis_Inout_P1
))
||
PullAxis_Inout
.
IsInPosition
(
Config
.
PullAxis_Inout_P1
))
{
{
...
@@ -928,7 +932,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -928,7 +932,7 @@ namespace OnlineStore.DeviceLibrary
PullAxis_Inout
.
AbsMove
(
MoveInfo
,
Config
.
PullAxis_Inout_CamB
,
Config
.
PullAxis_Inout_P1_Speed
);
PullAxis_Inout
.
AbsMove
(
MoveInfo
,
Config
.
PullAxis_Inout_CamB
,
Config
.
PullAxis_Inout_P1_Speed
);
}
}
}
}
LogInfo
(
$
"{InOutType} {MoveInfo.SLog}:料屉拉取
升降轴到待机点P1、料屉拉取进出轴到拍照点"
);
LogInfo
(
$
"{InOutType} {MoveInfo.SLog}:料屉拉取
进出轴到拍照点"
);
//料屉拉取升降轴到待机点P1、
}
}
/// <summary>
/// <summary>
/// 判断行走机构是否在安全位置
/// 判断行走机构是否在安全位置
...
@@ -966,6 +970,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -966,6 +970,9 @@ namespace OnlineStore.DeviceLibrary
///开始记录
///开始记录
StartRecord
();
StartRecord
();
SetBoxStatus
(
DeviceStatus
.
InStoreExecute
,
RunStatus
.
Busy
,
param
.
PosInfo
.
PosId
,
param
.
PosInfo
.
barcode
);
SetBoxStatus
(
DeviceStatus
.
InStoreExecute
,
RunStatus
.
Busy
,
param
.
PosInfo
.
PosId
,
param
.
PosInfo
.
barcode
);
if
(
param
.
PosInfoBack
!=
null
)
MoveInfo
.
NextMoveStep
(
StepEnum
.
SIB_00_StartInstore
);
else
MoveInfo
.
NextMoveStep
(
StepEnum
.
SI_00_StartInstore
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
SI_00_StartInstore
);
AxisAlarmFlag
=
false
;
AxisAlarmFlag
=
false
;
return
true
;
return
true
;
...
@@ -1036,6 +1043,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -1036,6 +1043,7 @@ namespace OnlineStore.DeviceLibrary
{
{
return
;
return
;
}
}
InstoreBothSideExecute
();
InstoreExecute
();
InstoreExecute
();
}
}
/// <summary>
/// <summary>
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论