Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
张东亮
/
SO1057-XLRStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 66be7140
由
张东亮
编写于
2023-01-06 16:37:25 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
动作优化
1 个父辈
b9941654
隐藏空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
317 行增加
和
14 行删除
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 @@
<Compile Include="storeBean\boxBean\BoxEquip_ConnectServerTimer.cs" />
<Compile Include="storeBean\boxBean\AutoInoutInfo.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_PosDebug.cs" />
<Compile Include="storeBean\boxBean\Humiture\HumitureBean.cs" />
...
...
source/DeviceLibrary/manager/model/DeviceStep.cs
查看文件 @
66be714
...
...
@@ -458,6 +458,55 @@ namespace OnlineStore.DeviceLibrary
/// 料仓入库:如果上料机构入料口有料,则去待机点
/// </summary>
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
#
region
存储机构自动对位功能
400
开始
...
...
source/DeviceLibrary/storeBean/boxBean/BoxEquip.cs
查看文件 @
66be714
...
...
@@ -313,9 +313,9 @@ namespace OnlineStore.DeviceLibrary
}
private
void
StartReset
()
{
if
(
HasDrawerInHook
())
if
(
HasDrawerInHook
())
{
System
.
Windows
.
Forms
.
MessageBox
.
Show
(
"检测到拉取机构上的拉钩检测信号亮,不允许复位!"
,
"警告"
);
System
.
Windows
.
Forms
.
MessageBox
.
Show
(
"检测到拉取机构上的拉钩检测信号亮,不允许复位!"
,
"警告"
);
return
;
}
if
(!
CanReset
())
...
...
@@ -746,11 +746,21 @@ namespace OnlineStore.DeviceLibrary
ClearSpecifiedAlarm
(
"B下出料暂存区有料盘,但信号未亮"
);
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上暂存区是否有料盘
if
(
IOValue
(
IO_Type
.
FeedingA_Instore_UpperArea_ReelCheck
).
Equals
(
IO_VALUE
.
HIGH
))
{
if
(
timeSpanA
.
TotalSeconds
>=
SigLastTime
)
{
StartInstore
(
new
InOutParam
(
BufferDataManager
.
AInStoreInfo
));
return
;
}
}
else
{
...
...
@@ -761,7 +771,10 @@ namespace OnlineStore.DeviceLibrary
if
(
IOValue
(
IO_Type
.
FeedingB_Instore_UpperArea_ReelCheck
).
Equals
(
IO_VALUE
.
HIGH
))
{
if
(
timeSpanB
.
TotalSeconds
>=
SigLastTime
)
{
StartInstore
(
new
InOutParam
(
BufferDataManager
.
BInStoreInfo
));
return
;
}
}
else
{
...
...
@@ -784,7 +797,7 @@ namespace OnlineStore.DeviceLibrary
bool
result
=
waitAOutStoreList
.
TryDequeue
(
out
param
);
if
(
result
&&
param
!=
null
)
{
LogInfo
(
"执行A面排队的出库【"
+
param
.
PosInfo
.
ToStr
()
+
"】"
);
//
LogInfo("执行A面排队的出库【" + param.PosInfo.ToStr() + "】");
StartExecuctOut
(
param
);
return
;
}
...
...
@@ -795,7 +808,7 @@ namespace OnlineStore.DeviceLibrary
bool
result
=
waitAOutStoreList
.
TryDequeue
(
out
param
);
if
(
result
&&
param
!=
null
)
{
LogInfo
(
"执行A面排队的出库【"
+
param
.
PosInfo
.
ToStr
()
+
"】"
);
//
LogInfo("执行A面排队的出库【" + param.PosInfo.ToStr() + "】");
StartExecuctOut
(
param
);
return
;
}
...
...
@@ -1013,7 +1026,7 @@ namespace OnlineStore.DeviceLibrary
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
(
"空气阀打开,设备暂停"
);
}
...
...
@@ -1036,7 +1049,7 @@ namespace OnlineStore.DeviceLibrary
IOValue
(
IO_Type
.
RightDoor_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
();
}
}
...
...
source/DeviceLibrary/storeBean/boxBean/BoxEquip_InExecute.cs
查看文件 @
66be714
...
...
@@ -89,6 +89,18 @@ namespace OnlineStore.DeviceLibrary
{
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
;
}
...
...
@@ -200,7 +212,8 @@ namespace OnlineStore.DeviceLibrary
UpdownAxisTo_P3_P9
();
ComAxis_To_P2
();
MiddleAxis_To_P2
();
XAxis_To_P1
();
//XAxis_To_P1();
BothXAxis_To_P1
();
break
;
case
StepEnum
.
SI_01_MoveAxis_Ready
:
MoveInfo
.
NextMoveStep
(
StepEnum
.
SI_02_ToBufferArea
);
...
...
@@ -451,7 +464,7 @@ namespace OnlineStore.DeviceLibrary
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
SI_07_MiddleToP3
);
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
.
MoveP
=
new
LineMoveP
(
Config
,
MoveInfo
.
MoveParam
.
PosInfo
.
PosId
);
MoveInfo
.
MoveParam
.
PosInfoBack
=
null
;
...
...
source/DeviceLibrary/storeBean/boxBean/BoxEquip_InExecute_Partial.cs
0 → 100644
查看文件 @
66be714
using
CodeLibrary
;
using
OnlineStore.Common
;
using
OnlineStore.LoadCSVLibrary
;
using
System
;
using
System.Collections.Generic
;
using
System.Diagnostics
;
using
System.Drawing
;
using
System.Linq
;
using
System.Text
;
using
System.Threading
;
using
System.Threading.Tasks
;
using
System.Windows.Forms.VisualStyles
;
namespace
OnlineStore.DeviceLibrary
{
partial
class
BoxEquip
{
#
region
入库
,
两侧都有料
private
void
BothComAxis_To_P2
(
bool
isdebugSpeed
=
false
)
{
if
(
isdebugSpeed
)
{
ComAxis_A
.
AbsMove
(
MoveInfo
,
MoveInfo
.
MoveParam
.
MoveP
.
ComAxis_AB_P2
,
Config
.
ComAxis_FindPosSpeed
);
ComAxis_B
.
AbsMove
(
MoveInfo
,
MoveInfo
.
MoveParam
.
MoveP
.
ComAxis_AB_P2
,
Config
.
ComAxis_FindPosSpeed
);
}
else
{
ComAxis_A
.
AbsMove
(
MoveInfo
,
MoveInfo
.
MoveParam
.
MoveP
.
ComAxis_AB_P2
,
Config
.
ComAxis_A_P2_Speed
);
ComAxis_B
.
AbsMove
(
MoveInfo
,
MoveInfo
.
MoveParam
.
MoveP
.
ComAxis_AB_P2
,
Config
.
ComAxis_B_P2_Speed
);
}
}
private
void
BothMiddleAxis_To_P2
(
bool
isdebugSpeed
=
false
)
{
MiddleAxis_A
.
AbsMove
(
MoveInfo
,
Config
.
MiddleAxis_A_P2
,
Config
.
MiddleAxis_A_P2_Speed
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
AHorizontal_Check
,
IO_VALUE
.
HIGH
));
MiddleAxis_B
.
AbsMove
(
MoveInfo
,
Config
.
MiddleAxis_B_P2
,
Config
.
MiddleAxis_B_P2_Speed
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
BHorizontal_Check
,
IO_VALUE
.
HIGH
));
}
private
void
BothXAxis_To_P1
(
bool
isdebugSpeed
=
false
)
{
if
(!
XAxis_A
.
IsInPosition
(
Config
.
XAxis_A_P1
))
{
if
(
isdebugSpeed
)
XAxis_A
.
AbsMove
(
MoveInfo
,
Config
.
XAxis_A_P1
,
Config
.
XAxis_FindPosSpeed
);
else
XAxis_A
.
AbsMove
(
MoveInfo
,
Config
.
XAxis_A_P1
,
Config
.
XAxis_A_P1_Speed
);
}
if
(!
XAxis_B
.
IsInPosition
(
Config
.
XAxis_B_P1
))
{
if
(
isdebugSpeed
)
XAxis_B
.
AbsMove
(
MoveInfo
,
Config
.
XAxis_B_P1
,
Config
.
XAxis_FindPosSpeed
);
else
XAxis_B
.
AbsMove
(
MoveInfo
,
Config
.
XAxis_B_P1
,
Config
.
XAxis_B_P1_Speed
);
}
}
private
bool
InDoorBothCheck
(
InOutParam
param
)
{
if
(
param
.
PosInfo
==
null
)
return
false
;
if
(
param
.
PosInfoBack
==
null
)
return
false
;
if
(
param
.
PosInfo
!=
null
)
{
if
(
param
.
PosInfoBack
!=
null
)
{
return
true
;
}
}
return
false
;
}
private
void
BothXAxis_To_P2
(
bool
isdebugSpeed
=
false
)
{
if
(
isdebugSpeed
)
XAxis_B
.
AbsMove
(
MoveInfo
,
Config
.
XAxis_B_P2
,
Config
.
XAxis_FindPosSpeed
);
else
XAxis_B
.
AbsMove
(
MoveInfo
,
Config
.
XAxis_B_P2
,
Config
.
XAxis_B_P2_Speed
);
if
(
isdebugSpeed
)
XAxis_A
.
AbsMove
(
MoveInfo
,
Config
.
XAxis_A_P2
,
Config
.
XAxis_FindPosSpeed
);
else
XAxis_A
.
AbsMove
(
MoveInfo
,
Config
.
XAxis_A_P2
,
Config
.
XAxis_A_P2_Speed
);
}
private
void
AddBothReelCheck
(
bool
hasReel
)
{
//if (CheckASide())
//{
// MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.ForkA_Tray_Check, hasReel ? IO_VALUE.HIGH : IO_VALUE.LOW));
//}
//else
//{
// MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.ForkB_Tray_Check, hasReel ? IO_VALUE.HIGH : IO_VALUE.LOW));
//}
}
private
void
BothComAxis_To_P3
(
bool
isdebugSpeed
=
false
)
{
LineMoveP
movep
=
new
LineMoveP
(
Config
,
MoveInfo
.
MoveParam
.
PosInfoBack
.
PosId
);
if
(
isdebugSpeed
)
ComAxis_A
.
AbsMove
(
MoveInfo
,
MoveInfo
.
MoveParam
.
MoveP
.
ComAxis_AB_P3
,
Config
.
ComAxis_FindPosSpeed
);
else
ComAxis_A
.
AbsMove
(
MoveInfo
,
MoveInfo
.
MoveParam
.
MoveP
.
ComAxis_AB_P3
,
Config
.
ComAxis_A_P3_Speed
);
if
(
isdebugSpeed
)
ComAxis_B
.
AbsMove
(
MoveInfo
,
movep
.
ComAxis_AB_P3
,
Config
.
ComAxis_FindPosSpeed
);
else
ComAxis_B
.
AbsMove
(
MoveInfo
,
movep
.
ComAxis_AB_P3
,
Config
.
ComAxis_B_P3_Speed
);
}
private
void
BothXAxis_To_P3
(
bool
isdebugSpeed
=
false
)
{
if
(
isdebugSpeed
)
XAxis_A
.
AbsMove
(
MoveInfo
,
MoveInfo
.
MoveParam
.
MoveP
.
XAxis_AB_P3
,
Config
.
XAxis_FindPosSpeed
);
else
XAxis_A
.
AbsMove
(
MoveInfo
,
MoveInfo
.
MoveParam
.
MoveP
.
XAxis_AB_P3
,
Config
.
XAxis_A_P3_Speed
);
if
(
isdebugSpeed
)
XAxis_B
.
AbsMove
(
MoveInfo
,
MoveInfo
.
MoveParam
.
MoveP
.
XAxis_AB_P3
,
Config
.
XAxis_FindPosSpeed
);
else
XAxis_B
.
AbsMove
(
MoveInfo
,
MoveInfo
.
MoveParam
.
MoveP
.
XAxis_AB_P3
,
Config
.
XAxis_B_P3_Speed
);
}
private
void
ClearInDoorBothBuffer
()
{
BufferDataManager
.
AInStoreInfo
=
null
;
BufferDataManager
.
BInStoreInfo
=
null
;
LogInfo
(
$
"入库 {MoveInfo.SLog}:取料完成,清除该暂存区的料盘信息[barcode={MoveInfo.MoveParam.PosInfo.barcode}][barcode={MoveInfo.MoveParam.PosInfoBack.barcode}]"
);
}
private
void
InstoreBothSideExecute
()
{
switch
(
MoveInfo
.
MoveStep
)
{
case
StepEnum
.
SIB_00_StartInstore
:
PullAxisToP1
(
"入库"
);
break
;
case
StepEnum
.
SIB_01_PullAxis_Ready
:
SetBoxStatus
(
DeviceStatus
.
InStoreExecute
,
RunStatus
.
Busy
,
MoveInfo
.
MoveParam
.
PosInfo
.
PosId
,
MoveInfo
.
MoveParam
.
PosInfo
.
barcode
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
SIB_01_Pull_Updown_ToPosition
);
if
(!
IsMoveAxisInSafePos
())
{
MoveAxisToSafePos
();
LogInfo
(
$
"入库 {MoveInfo.SLog}:行走机构不在安全位置,先到安全位置={Config.MoveAxis_SafePos}。当前位置{MoveAxis.GetAclPosition()}"
);
}
break
;
case
StepEnum
.
SIB_01_Pull_Updown_ToPosition
:
MoveInfo
.
NextMoveStep
(
StepEnum
.
SIB_01_MoveAxis_Ready
);
LogInfo
(
$
"入库 {MoveInfo.SLog}:到暂存区入料口,"
+
$
"行走机构到待机点P1,料斗升降轴到P1点,移栽升降轴到上暂存区入库取料低点P3/P9,移栽压紧轴到压紧前点P2,移栽旋转轴到取放料水平点P2,移栽X轴到P1,料斗升降轴到P1点[{MoveInfo.MoveParam.PosInfo.GetPosSide()}面]"
);
MoveAxisToP1
();
PullAxis_UpdownToP1
();
UpdownAxisTo_P3_P9
();
BothComAxis_To_P2
();
BothMiddleAxis_To_P2
();
BothXAxis_To_P1
();
break
;
case
StepEnum
.
SIB_01_MoveAxis_Ready
:
MoveInfo
.
NextMoveStep
(
StepEnum
.
SIB_02_ToBufferArea
);
startTime
=
DateTime
.
Now
;
break
;
case
StepEnum
.
SIB_02_ToBufferArea
:
if
(!
InDoorBothCheck
(
MoveInfo
.
MoveParam
))
{
BuffAreaInstoreDoor
(
false
);
SetWarnMsg
(
$
"入库 {MoveInfo.SLog}:AB入口料盘无入库信息, 任务取消"
);
LogInfo
(
$
"入库 {MoveInfo.SLog}:AB入口料盘因无入库信息,结束入库"
);
SetBoxStatus
(
DeviceStatus
.
StoreOnline
,
RunStatus
.
Runing
);
MoveInfo
.
EndMove
();
}
else
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
SIB_03_VerifyBufferState
);
BuffAreaInstoreDoor
(
true
);
LogInfo
(
$
"入库 {MoveInfo.SLog}:AB入料口入库信息确认,[barcode={MoveInfo.MoveParam.PosInfo.barcode},posId={MoveInfo.MoveParam.PosInfo.PosId}][barcode={MoveInfo.MoveParam.PosInfoBack.barcode},posId={MoveInfo.MoveParam.PosInfoBack.PosId}],开始取料"
);
}
break
;
case
StepEnum
.
SIB_03_VerifyBufferState
:
if
(!
CheckInputMiddleAxisInBuff
())
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
SIB_04_InOutToBuff
);
LogInfo
(
$
"入库 {MoveInfo.SLog}:移栽X轴到暂存区取放点P2,行走机构到取放点P2"
);
BothXAxis_To_P2
();
MoveAxisToP2
();
}
else
if
(
MoveInfo
.
IsTimeOut
())
{
SetWarnMsg
(
$
"等待上料机构旋转轴离开暂存区超时"
);
}
break
;
case
StepEnum
.
SIB_04_InOutToBuff
:
MoveInfo
.
NextMoveStep
(
StepEnum
.
SIB_05_GetReel
);
LogInfo
(
$
"入库 {MoveInfo.SLog}:取料盘,移栽升降轴到上暂存区入库取料高点P2/P8,移栽压紧轴到压紧点P3"
);
AddBothReelCheck
(
true
);
UpdownAxisTo_P2_P8
();
BothComAxis_To_P3
();
break
;
case
StepEnum
.
SIB_05_GetReel
:
MoveInfo
.
NextMoveStep
(
StepEnum
.
SIB_06_InOutBackToP1FromBuff
);
LogInfo
(
$
"入库 {MoveInfo.SLog}:移栽X轴到库位取放点P3,行走机构到待机点P1"
);
// XAxis_To_P1();
BothXAxis_To_P3
();
MoveAxisToP1
();
break
;
case
StepEnum
.
SIB_06_InOutBackToP1FromBuff
:
MoveInfo
.
NextMoveStep
(
StepEnum
.
SIB_06_ClearBuffInfo
);
//LogInfo($"入库 {MoveInfo.SLog}:移栽X轴到料屉库位取放料点P3[{MoveInfo.MoveParam.PosInfo.GetPosSide()}面]");
//清空暂存区料盘信息
ClearInDoorBothBuffer
();
break
;
case
StepEnum
.
SIB_06_ClearBuffInfo
:
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
SI_07_MiddleToP3
);
//MiddleAxis_To_P3();
BuffAreaInstoreDoor
(
false
);
LogInfo
(
$
"入库 {MoveInfo.SLog}:对两侧料盘进行入库"
);
//移栽旋转轴到料屉库位垂直取放料点P3
}
break
;
}
}
#
endregion
}
}
source/DeviceLibrary/storeBean/boxBean/BoxEquip_Partial.cs
查看文件 @
66be714
...
...
@@ -899,6 +899,10 @@ namespace OnlineStore.DeviceLibrary
{
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
))
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
SO_01_PullAxis_Ready
);
...
...
@@ -908,10 +912,10 @@ namespace OnlineStore.DeviceLibrary
MoveInfo
.
NextMoveStep
(
StepEnum
.
SP_00_2_PullAxisReady
);
}
if
(!
PullAxis_Updown
.
IsInPosition
(
Config
.
PullAxis_Updown_P1
))
{
PullAxis_Updown
.
AbsMove
(
MoveInfo
,
Config
.
PullAxis_Updown_P1
,
Config
.
PullAxis_Updown_P1_Speed
);
}
//
if (!PullAxis_Updown.IsInPosition(Config.PullAxis_Updown_P1))
//
{
//
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
)
||
PullAxis_Inout
.
IsInPosition
(
Config
.
PullAxis_Inout_P1
))
{
...
...
@@ -928,7 +932,7 @@ namespace OnlineStore.DeviceLibrary
PullAxis_Inout
.
AbsMove
(
MoveInfo
,
Config
.
PullAxis_Inout_CamB
,
Config
.
PullAxis_Inout_P1_Speed
);
}
}
LogInfo
(
$
"{InOutType} {MoveInfo.SLog}:料屉拉取
升降轴到待机点P1、料屉拉取进出轴到拍照点"
);
LogInfo
(
$
"{InOutType} {MoveInfo.SLog}:料屉拉取
进出轴到拍照点"
);
//料屉拉取升降轴到待机点P1、
}
/// <summary>
/// 判断行走机构是否在安全位置
...
...
@@ -966,7 +970,10 @@ namespace OnlineStore.DeviceLibrary
///开始记录
StartRecord
();
SetBoxStatus
(
DeviceStatus
.
InStoreExecute
,
RunStatus
.
Busy
,
param
.
PosInfo
.
PosId
,
param
.
PosInfo
.
barcode
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
SI_00_StartInstore
);
if
(
param
.
PosInfoBack
!=
null
)
MoveInfo
.
NextMoveStep
(
StepEnum
.
SIB_00_StartInstore
);
else
MoveInfo
.
NextMoveStep
(
StepEnum
.
SI_00_StartInstore
);
AxisAlarmFlag
=
false
;
return
true
;
}
...
...
@@ -1036,6 +1043,7 @@ namespace OnlineStore.DeviceLibrary
{
return
;
}
InstoreBothSideExecute
();
InstoreExecute
();
}
/// <summary>
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论