Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
李娜
/
SO908-XLRStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit b6054b76
由
LN
编写于
2021-08-22 14:10:37 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
1.出料时料串多下降。2.入库旋转和上升可以一起动作。3.增加复位键启动功能
1 个父辈
4e3d775d
隐藏空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
68 行增加
和
23 行删除
source/DeviceLibrary/storeBean/EquipBase.cs
source/DeviceLibrary/storeBean/XLRStoreBean.cs
source/DeviceLibrary/storeBean/inputBean/BatchMoveBean_Partial.cs
source/DeviceLibrary/storeBean/inputBean/InputEquip.cs
source/DeviceLibrary/storeBean/inputBean/InputEquip_InStore.cs
source/XLRStoreClient/inputForm/FrmInputEquip.cs
source/DeviceLibrary/storeBean/EquipBase.cs
查看文件 @
b6054b7
...
...
@@ -32,7 +32,6 @@ namespace OnlineStore.DeviceLibrary
protected
override
void
mainTimer_Elapsed
(
object
sender
,
System
.
Timers
.
ElapsedEventArgs
e
)
{
AutoStartProcess
();
TimerProcess
();
}
...
...
@@ -130,7 +129,7 @@ namespace OnlineStore.DeviceLibrary
}
}
protected
void
AutoStartProcess
()
internal
void
AutoStartProcess
()
{
DateTime
time
=
DateTime
.
Now
;
if
(
runStatus
.
Equals
(
RunStatus
.
Wait
))
...
...
source/DeviceLibrary/storeBean/XLRStoreBean.cs
查看文件 @
b6054b7
...
...
@@ -294,6 +294,9 @@ namespace OnlineStore.DeviceLibrary
break
;
default
:
break
;
}
inputEquip
.
AutoStartProcess
();
boxEquip
.
AutoStartProcess
();
}
catch
(
Exception
ex
)
{
...
...
source/DeviceLibrary/storeBean/inputBean/BatchMoveBean_Partial.cs
查看文件 @
b6054b7
...
...
@@ -556,8 +556,16 @@ namespace OnlineStore.DeviceLibrary
UpdateShelf
(
2
,
xnRfid
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
IS12_AxisDown
);
MoveInfo
.
MoveParam
.
PosInfo
=
posInfo
;
//如果料盘检测信号亮或者是上料目标位置,需要多下降20mm
int
downValueMM
=
4
;
if
(
Robot
.
IOValue
(
Config
.
IO_ReelCheck
).
Equals
(
IO_VALUE
.
HIGH
)
||
BatchAxis
.
IsInPosition
(
Config
.
BatchAxisP2
))
{
downValueMM
=
20
;
}
int
currPositon
=
BatchAxis
.
GetAclPosition
();
int
downValue
=
Robot
.
Config
.
Height_ChangeValue
*
(
posInfo
.
PlateH
+
2
);
int
downValue
=
Robot
.
Config
.
Height_ChangeValue
*
(
posInfo
.
PlateH
+
downValueMM
);
int
batchTP
=
currPositon
-
downValue
;
if
(
batchTP
<=
Config
.
BatchAxisP1
)
{
...
...
@@ -588,9 +596,9 @@ namespace OnlineStore.DeviceLibrary
}
private
void
CheckShelfIsFull
()
{
{
int
currPositon
=
BatchAxis
.
GetAclPosition
();
int
nextP
=
currPositon
-
Robot
.
Config
.
Height_ChangeValue
*
(
8
+
2
);
int
nextP
=
currPositon
-
Robot
.
Config
.
Height_ChangeValue
*
(
8
+
2
0
);
if
(
nextP
<=
Config
.
BatchAxisP1
)
{
if
(
Robot
.
IOValue
(
Config
.
IO_ReelCheck
).
Equals
(
IO_VALUE
.
HIGH
))
...
...
source/DeviceLibrary/storeBean/inputBean/InputEquip.cs
查看文件 @
b6054b7
...
...
@@ -340,7 +340,6 @@ namespace OnlineStore.DeviceLibrary
AgvClient
.
SetStatus
(
Config
.
AgvName_A
);
AgvClient
.
SetStatus
(
Config
.
AgvName_B
);
runStatus
=
RunStatus
.
Wait
;
MoveInfo
.
EndMove
();
BatchMove_A
.
StopMove
();
...
...
source/DeviceLibrary/storeBean/inputBean/InputEquip_InStore.cs
查看文件 @
b6054b7
...
...
@@ -244,11 +244,19 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
II41_MiddleTWaitP4
))
{
TrayHasLeave
();
MoveInfo
.
NextMoveStep
(
StepEnum
.
II42_WaitNoReel
);
MoveLog
(
$
"入库取料{shelf}{MoveInfo.SLog}: 等待A上暂存区无料"
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
UpperArea_Check_A
,
IO_VALUE
.
LOW
));
{
if
(
UpdownAxis
.
IsInPosition
(
Config
.
Updown_P4_AUpperH
))
{
TrayHasLeave
();
MoveInfo
.
NextMoveStep
(
StepEnum
.
II42_WaitNoReel
);
MoveLog
(
$
"入库取料{shelf}{MoveInfo.SLog}: 等待A上暂存区无料"
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
UpperArea_Check_A
,
IO_VALUE
.
LOW
));
}
else
{
II41_MiddleTWaitP4
();
}
}
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
II42_WaitNoReel
))
{
...
...
@@ -333,10 +341,17 @@ namespace OnlineStore.DeviceLibrary
}
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
II61_MiddleToWaitP5
))
{
TrayHasLeave
();
MoveInfo
.
NextMoveStep
(
StepEnum
.
II62_WaitNoReel
);
MoveLog
(
$
"入库取料{shelf}{MoveInfo.SLog}: 等待B上暂存区无料"
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
UpperArea_Check_B
,
IO_VALUE
.
LOW
));
if
(
UpdownAxis
.
IsInPosition
(
Config
.
Updown_P10_BUpperH
))
{
TrayHasLeave
();
MoveInfo
.
NextMoveStep
(
StepEnum
.
II62_WaitNoReel
);
MoveLog
(
$
"入库取料{shelf}{MoveInfo.SLog}: 等待B上暂存区无料"
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
UpperArea_Check_B
,
IO_VALUE
.
LOW
));
}
else
{
II61_MiddleToWaitP5
();
}
}
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
II62_WaitNoReel
))
{
...
...
@@ -499,20 +514,40 @@ namespace OnlineStore.DeviceLibrary
}
else
if
(
lastPosInfo
.
GetPosSide
().
Equals
(
"A"
))
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
II40_UpdownToP4
);
MoveLog
(
$
" 入料->A侧 {MoveInfo.SLog}: A侧入库料{lastPosInfo.ToStr()}, 升降轴 到P4(A上暂存区放料高点){Config.Updown_P4_AUpperH}"
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
Updown_P4_AUpperH
,
Config
.
Updown_P4_Speed
);
//MoveInfo.NextMoveStep(StepEnum.II40_UpdownToP4);
//MoveLog($" 入料->A侧 {MoveInfo.SLog}: A侧入库料{lastPosInfo.ToStr()}, 升降轴 到P4(A上暂存区放料高点){Config.Updown_P4_AUpperH}");
//UpdownAxis.AbsMove(MoveInfo, Config.Updown_P4_AUpperH, Config.Updown_P4_Speed);
II41_MiddleTWaitP4
();
}
else
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
II60_UpdownToP10
);
MoveLog
(
$
" 入料->B侧 {MoveInfo.SLog}: B侧入库料{lastPosInfo.ToStr()} ,升降轴 到P10(B上暂存区放料高点){Config.Updown_P10_BUpperH}"
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
Updown_P10_BUpperH
,
Config
.
Updown_P10_Speed
);
//
MoveInfo.NextMoveStep(StepEnum.II60_UpdownToP10);
//
MoveLog($" 入料->B侧 {MoveInfo.SLog}: B侧入库料{lastPosInfo.ToStr()} ,升降轴 到P10(B上暂存区放料高点){Config.Updown_P10_BUpperH}");
//
UpdownAxis.AbsMove(MoveInfo, Config.Updown_P10_BUpperH, Config.Updown_P10_Speed);
II61_MiddleToWaitP5
();
}
}
private
void
II61_MiddleToWaitP5
()
{
int
targetValue
=
Config
.
Middle_P5_BUpper
+
Config
.
MiddleOffsetValue
;
MoveInfo
.
NextMoveStep
(
StepEnum
.
II61_MiddleToWaitP5
);
MoveLog
(
$
" 入料->B侧 {MoveInfo.SLog}: 暂存区有料,升降轴 到P10(B上暂存区放料高点){Config.Updown_P10_BUpperH}, 旋转轴 到P5{Config.Middle_P5_BUpper}-{Config.MiddleOffsetValue}=目标{targetValue}位置等待暂存区无料"
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
Updown_P10_BUpperH
,
Config
.
Updown_P10_Speed
);
MiddleAxis
.
AbsMove
(
MoveInfo
,
targetValue
,
Config
.
Middle_P5_Speed
);
}
private
void
II41_MiddleTWaitP4
()
{
int
targetV
=
Config
.
Middle_P4_AUpper
-
Config
.
MiddleOffsetValue
;
MoveInfo
.
NextMoveStep
(
StepEnum
.
II41_MiddleTWaitP4
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
Updown_P4_AUpperH
,
Config
.
Updown_P4_Speed
);
MoveLog
(
$
" 入料->A侧 {MoveInfo.SLog}: 暂存区有料,升降轴 到P4(A上暂存区放料高点){Config.Updown_P4_AUpperH}, 旋转轴 到P4{Config.Middle_P4_AUpper}-{Config.MiddleOffsetValue}=目标{targetV}位置等待暂存区无料"
);
UpdownAxis
.
AbsMove
(
MoveInfo
,
Config
.
Updown_P4_AUpperH
,
Config
.
Updown_P4_Speed
);
MiddleAxis
.
AbsMove
(
MoveInfo
,
targetV
,
Config
.
Middle_P4_Speed
);
}
private
Task
getPosTask
=
null
;
private
InOutPosInfo
LastPosInfo
=
null
;
private
int
LastResult
=
0
;
...
...
source/XLRStoreClient/inputForm/FrmInputEquip.cs
查看文件 @
b6054b7
...
...
@@ -186,6 +186,7 @@ namespace OnlineStore.XLRStore
clampJawControl1
.
UpdateSta
();
ReadIOList
();
lblName
.
BackColor
=
inputEquip
.
GetShowColor
();
lblStoreStatus
.
Text
=
inputEquip
.
GetRunStr
();
if
(
inputEquip
.
runStatus
>
RunStatus
.
Wait
)
{
if
(
btnStart
.
Enabled
)
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论