Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
张东亮
/
DoubleLineClient_3D
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 9fc29e7c
由
LN
编写于
2023-01-13 16:03:16 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
X21信号亮后等待1秒再停线体。增加配置ShelfWaitTime
1 个父辈
511cfb61
隐藏空白字符变更
内嵌
并排
正在显示
5 个修改的文件
包含
69 行增加
和
8 行删除
source/DeviceLibrary/bean/MoveStep.cs
source/DeviceLibrary/deviceLibrary/IO/IOManager.cs
source/DeviceLibrary/doubleLine/DoubleLineBean.cs
source/DeviceLibrary/doubleLine/DoubleLineBean_S1Shelf.cs
source/DoubleLineClient_3D/App.config
source/DeviceLibrary/bean/MoveStep.cs
查看文件 @
9fc29e7
...
@@ -177,6 +177,10 @@ namespace OnlineStore.DeviceLibrary
...
@@ -177,6 +177,10 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
/// </summary>
S1_C04_DToLeft
,
S1_C04_DToLeft
,
/// <summary>
/// <summary>
/// C料架->S1::料架到达后再等待2秒
/// </summary>
S1_C04_DToLeft_Wait
,
/// <summary>
/// C料架->S1:判断S1是否有料架
/// C料架->S1:判断S1是否有料架
/// </summary>
/// </summary>
S1_C05_CheckS1
,
S1_C05_CheckS1
,
...
@@ -218,6 +222,11 @@ namespace OnlineStore.DeviceLibrary
...
@@ -218,6 +222,11 @@ namespace OnlineStore.DeviceLibrary
/// D料架->S1::等待料架到达左侧
/// D料架->S1::等待料架到达左侧
/// </summary>
/// </summary>
S1_D16_CToLeft
,
S1_D16_CToLeft
,
/// <summary>
/// D料架->S1::等待料架到达左侧后等待1秒
/// </summary>
S1_D16_CToLeft_Wait
,
/// <summary>
/// <summary>
/// D料架->S1:判断S1是否有料架
/// D料架->S1:判断S1是否有料架
/// </summary>
/// </summary>
...
...
source/DeviceLibrary/deviceLibrary/IO/IOManager.cs
查看文件 @
9fc29e7
...
@@ -28,9 +28,10 @@ namespace OnlineStore.DeviceLibrary
...
@@ -28,9 +28,10 @@ namespace OnlineStore.DeviceLibrary
//IO重写功能,过滤掉线体运转信号,其他信号重写
//IO重写功能,过滤掉线体运转信号,其他信号重写
//判断是否是线体运转信号
//判断是否是线体运转信号
string
Line
=
"Line"
;
string
Line
=
"Line"
;
if
(
ioType
.
Contains
(
Line
))
string
HddLed
=
"HddLed"
;
if
(
ioType
.
Contains
(
Line
)
||
ioType
.
Contains
(
HddLed
))
{
{
//线体和灯信号不重写
}
}
else
else
{
{
...
...
source/DeviceLibrary/doubleLine/DoubleLineBean.cs
查看文件 @
9fc29e7
...
@@ -58,6 +58,10 @@ namespace OnlineStore.DeviceLibrary
...
@@ -58,6 +58,10 @@ namespace OnlineStore.DeviceLibrary
Thread
.
Sleep
(
300
);
Thread
.
Sleep
(
300
);
IOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
LOW
);
if
(
ShelfWaitTime
<=
0
)
{
ShelfWaitTime
=
2000
;
}
}
}
...
...
source/DeviceLibrary/doubleLine/DoubleLineBean_S1Shelf.cs
查看文件 @
9fc29e7
...
@@ -13,6 +13,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -13,6 +13,7 @@ namespace OnlineStore.DeviceLibrary
{
{
partial
class
DoubleLineBean
partial
class
DoubleLineBean
{
{
private
int
ShelfWaitTime
=
ConfigAppSettings
.
GetIntValue
(
"ShelfWaitTime"
);
#
region
料架切换处理
#
region
料架切换处理
/// <summary>
/// <summary>
/// 工位S2是否可以放行左侧的料架
/// 工位S2是否可以放行左侧的料架
...
@@ -310,6 +311,20 @@ namespace OnlineStore.DeviceLibrary
...
@@ -310,6 +311,20 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
SOneMoveInfo
.
MoveStep
.
Equals
(
MoveStep
.
S1_C04_DToLeft
))
else
if
(
SOneMoveInfo
.
MoveStep
.
Equals
(
MoveStep
.
S1_C04_DToLeft
))
{
{
SOneMoveInfo
.
NextMoveStep
(
MoveStep
.
S1_C04_DToLeft_Wait
);
S1Log
(
"料架已到达左侧,"
+
ShelfWaitTime
+
"后 再次等待 X21"
);
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
ShelfWaitTime
));
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
PreS1_PosStopCheck
,
IO_VALUE
.
HIGH
));
}
else
if
(
SOneMoveInfo
.
MoveStep
.
Equals
(
MoveStep
.
S1_C04_DToLeft_Wait
))
{
if
(
IOValue
(
IO_Type
.
PreS1_PosStopCheck
).
Equals
(
IO_VALUE
.
LOW
))
{
SOneMoveInfo
.
NextMoveStep
(
MoveStep
.
S1_C04_DToLeft_Wait
);
S1Log
(
"料架已到达左侧,"
+
ShelfWaitTime
+
"后 再次等待 X21"
);
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
ShelfWaitTime
));
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
PreS1_PosStopCheck
,
IO_VALUE
.
HIGH
));
}
if
(
S1_CurrShelfId
.
Equals
(
""
))
if
(
S1_CurrShelfId
.
Equals
(
""
))
{
{
SOneMoveInfo
.
NextMoveStep
(
MoveStep
.
S1_C06_SaveLeft
);
SOneMoveInfo
.
NextMoveStep
(
MoveStep
.
S1_C06_SaveLeft
);
...
@@ -482,9 +497,23 @@ namespace OnlineStore.DeviceLibrary
...
@@ -482,9 +497,23 @@ namespace OnlineStore.DeviceLibrary
S1LineRun
(
SOneMoveInfo
);
S1LineRun
(
SOneMoveInfo
);
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
M_LeftStopCheck
,
IO_VALUE
.
LOW
));
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
M_LeftStopCheck
,
IO_VALUE
.
LOW
));
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
PreS1_PosStopCheck
,
IO_VALUE
.
HIGH
));
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
PreS1_PosStopCheck
,
IO_VALUE
.
HIGH
));
}
else
if
(
SOneMoveInfo
.
MoveStep
.
Equals
(
MoveStep
.
S1_D16_CToLeft
))
{
SOneMoveInfo
.
NextMoveStep
(
MoveStep
.
S1_D16_CToLeft_Wait
);
S1Log
(
"料架已到达左侧,"
+
ShelfWaitTime
+
" 后 再次等待 X21"
);
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
ShelfWaitTime
));
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
PreS1_PosStopCheck
,
IO_VALUE
.
HIGH
));
}
}
else
if
(
SOneMoveInfo
.
MoveStep
.
Equals
(
MoveStep
.
S1_D16_CToLeft
))
else
if
(
SOneMoveInfo
.
MoveStep
.
Equals
(
MoveStep
.
S1_D16_CToLeft
_Wait
))
{
{
if
(
IOValue
(
IO_Type
.
PreS1_PosStopCheck
).
Equals
(
IO_VALUE
.
LOW
))
{
SOneMoveInfo
.
NextMoveStep
(
MoveStep
.
S1_D16_CToLeft_Wait
);
S1Log
(
"料架已到达左侧,"
+
ShelfWaitTime
+
" 后 再次等待 X21"
);
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
ShelfWaitTime
));
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
PreS1_PosStopCheck
,
IO_VALUE
.
HIGH
));
}
if
(
S1_CurrShelfId
.
Equals
(
""
))
if
(
S1_CurrShelfId
.
Equals
(
""
))
{
{
SOneMoveInfo
.
NextMoveStep
(
MoveStep
.
S1_D18_SaveLeft
);
SOneMoveInfo
.
NextMoveStep
(
MoveStep
.
S1_D18_SaveLeft
);
...
@@ -613,18 +642,35 @@ namespace OnlineStore.DeviceLibrary
...
@@ -613,18 +642,35 @@ namespace OnlineStore.DeviceLibrary
else
else
{
{
SOneMoveInfo
.
NextMoveStep
(
MoveStep
.
S1_33_LeftOnS1
);
SOneMoveInfo
.
NextMoveStep
(
MoveStep
.
S1_33_LeftOnS1
);
S1Log
(
" 左->S1切换 :"
+
LeftSName
+
"到达S1,
停止链条转动,等待500
后顶升"
);
S1Log
(
" 左->S1切换 :"
+
LeftSName
+
"到达S1,
继续转动链条,等待 "
+
ShelfWaitTime
+
"
后顶升"
);
S1_CurrShelfId
=
S1_LeftShelfId
;
S1_CurrShelfId
=
S1_LeftShelfId
;
S1_LeftShelfId
=
""
;
S1_LeftShelfId
=
""
;
S1LineStop
(
SOneMoveInfo
);
//S1LineStop(SOneMoveInfo);
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
500
));
S1LineRun
();
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
ShelfWaitTime
));
}
}
}
}
else
if
(
SOneMoveInfo
.
MoveStep
.
Equals
(
MoveStep
.
S1_33_LeftOnS1
))
else
if
(
SOneMoveInfo
.
MoveStep
.
Equals
(
MoveStep
.
S1_33_LeftOnS1
))
{
{
S1Log
(
" 左->S1切换 :"
+
LeftSName
+
"到达S1"
);
//判断料架是否到位
S1_WaitTopUp
();
if
(
IOValue
(
IO_Type
.
S1_PosStopCheck
).
Equals
(
IO_VALUE
.
LOW
))
{
SOneMoveInfo
.
NextMoveStep
(
MoveStep
.
S1_33_LeftOnS1
);
S1Log
(
" 左->S1切换 :"
+
LeftSName
+
"到达S1,继续转动链条,等待 "
+
ShelfWaitTime
+
" 后顶升"
);
S1_CurrShelfId
=
S1_LeftShelfId
;
S1_LeftShelfId
=
""
;
//S1LineStop(SOneMoveInfo);
S1LineRun
();
SOneMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
ShelfWaitTime
));
}
else
{
S1Log
(
" 左->S1切换 :"
+
LeftSName
+
"到达S1,链条停止转动"
);
S1LineStop
();
S1_WaitTopUp
();
}
}
}
else
if
(
SOneMoveInfo
.
MoveStep
.
Equals
(
MoveStep
.
S1_40_WaitS1ToLeft
))
else
if
(
SOneMoveInfo
.
MoveStep
.
Equals
(
MoveStep
.
S1_40_WaitS1ToLeft
))
...
...
source/DoubleLineClient_3D/App.config
查看文件 @
9fc29e7
...
@@ -27,6 +27,7 @@
...
@@ -27,6 +27,7 @@
<!--
ABB
机器人服务器-->
<!--
ABB
机器人服务器-->
<
add
key
=
"ABBServerPort"
value
=
"10021"
/>
<
add
key
=
"ABBServerPort"
value
=
"10021"
/>
<
add
key
=
"DefaultSpeed"
value
=
"1000"
/>
<
add
key
=
"DefaultSpeed"
value
=
"1000"
/>
<
add
key
=
"ShelfWaitTime"
value
=
"2000"
/>
</
appSettings
>
</
appSettings
>
<
log4net
>
<
log4net
>
<
appender
name
=
"RollingLogFileAppender"
type
=
"log4net.Appender.RollingFileAppender"
>
<
appender
name
=
"RollingLogFileAppender"
type
=
"log4net.Appender.RollingFileAppender"
>
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论