Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
RC1250-AssemblyLine
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 9278303c
由
LN
编写于
2020-03-07 12:59:50 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
横移3和横移1提前顶升
1 个父辈
7f829544
隐藏空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
75 行增加
和
41 行删除
source/AssemblyLineClient/FrmLineStore.cs
source/DeviceLibrary/LineConfig/Config_Line.csv
source/DeviceLibrary/assemblyLine/EquipBase.cs
source/DeviceLibrary/assemblyLine/FeedingEquip_InStore.cs
source/DeviceLibrary/assemblyLine/LineBean.cs
source/DeviceLibrary/assemblyLine/LineBean_Partial.cs
source/DeviceLibrary/assemblyLine/ProvidingEquip_Partial.cs
source/DeviceLibrary/model/KTK_Store.cs
source/AssemblyLineClient/FrmLineStore.cs
查看文件 @
9278303
...
...
@@ -486,7 +486,15 @@ namespace OnlineStore.AssemblyLine
{
if
(
move
.
WarnMsg
.
Equals
(
""
).
Equals
(
false
))
{
warnMsg
+=
move
.
WarnMsg
+
"\r\n"
;
if
(
move
.
alarmType
.
Equals
(
LineAlarmType
.
None
).
Equals
(
false
))
{
warnMsg
+=
move
.
LastAlarmTime
.
ToLongTimeString
()+
" "
+
move
.
WarnMsg
+
"\r\n"
;
}
else
{
warnMsg
+=
move
.
WarnMsg
+
"\r\n"
;
}
}
}
...
...
source/DeviceLibrary/LineConfig/Config_Line.csv
查看文件 @
9278303
...
...
@@ -88,9 +88,9 @@ DI,0,环形线横移4定位下降端,SW4_LocationCylinder_Down,7,PRO_AOI_IP_1,0,环形线横移
,0,,,14,PRO_AOI_IP_1,0,,X015,X015
,0,,,15,PRO_AOI_IP_1,0,,X016,X016
,,,,,,,,,
DO,0,待机状态(
指示灯),AutoRun_HddLed,0,PRO_AOI_IP_1,0,待机状态(指示
灯),Y001,Y001
DO,0,运行状态(
指示灯),RunSign_HddLed,1,PRO_AOI_IP_1,0,运行状态(指示
灯),Y002,Y002
DO,0,故障状态(
指示灯),Alarm_HddLed,2,PRO_AOI_IP_1,0,故障状态(指示
灯),Y003,Y003
DO,0,待机状态(
黄灯),AutoRun_HddLed,0,PRO_AOI_IP_1,0,待机状态(黄
灯),Y001,Y001
DO,0,运行状态(
绿灯),RunSign_HddLed,1,PRO_AOI_IP_1,0,运行状态(绿
灯),Y002,Y002
DO,0,故障状态(
红灯),Alarm_HddLed,2,PRO_AOI_IP_1,0,故障状态(红
灯),Y003,Y003
DO,0,故障状态(蜂鸣器),Alarm_Buzzer,3,PRO_AOI_IP_1,0,故障状态(蜂鸣器),Y004,Y004
DO,0,驱动电机1正转,DriveMotor_Run1,4,PRO_AOI_IP_1,0,驱动电机1正转,Y005,Y005
DO,0,驱动电机2正转,DriveMotor_Run2,5,PRO_AOI_IP_1,0,驱动电机2正转,Y006,Y006
...
...
source/DeviceLibrary/assemblyLine/EquipBase.cs
查看文件 @
9278303
...
...
@@ -47,9 +47,13 @@ namespace OnlineStore.DeviceLibrary
{
TimerProcess
();
}
public
DateTime
LastAlarmTime
=
DateTime
.
Now
;
public
override
void
Alarm
(
LineAlarmType
alarmType
)
{
{
if
(
alarmType
.
Equals
(
LineAlarmType
.
None
).
Equals
(
false
))
{
LastAlarmTime
=
DateTime
.
Now
;
}
if
(
this
.
alarmType
.
Equals
(
alarmType
))
{
return
;
...
...
@@ -343,7 +347,8 @@ namespace OnlineStore.DeviceLibrary
IOMove
(
axis
.
Config
.
BreakOnDO
,
IO_VALUE
.
HIGH
);
return
true
;
}
WarnMsg
=
Name
+
msg
;
SetWarnMsg
(
Name
+
msg
);
//WarnMsg = DateTime.Now.ToLongTimeString() + " " + Name + msg;
Alarm
(
LineAlarmType
.
AxisAlarm
);
return
false
;
}
...
...
@@ -510,17 +515,20 @@ namespace OnlineStore.DeviceLibrary
{
WarnMsg
=
moveInfo
.
Name
+
"["
+
moveInfo
.
MoveType
+
"]["
+
moveInfo
.
MoveStep
+
"]等待"
+
NotOkMsg
+
"超时["
+
Math
.
Round
(
span
.
TotalSeconds
,
1
)
+
"]秒"
;
int
ms
=
10
;
int
second
=
10
;
if
(
IsLowAlarm
(
moveInfo
))
{
ms
=
30
;
second
=
30
;
}
ms
=
(
int
)(
MoveInfo
.
TimeOutSeconds
/
span
.
TotalSeconds
);
if
(
ms
>
120
)
second
=
(
int
)(
MoveInfo
.
TimeOutSeconds
/
span
.
TotalSeconds
)*
10
;
if
(
second
>
120
)
{
second
=
120
;
}
else
if
(
second
<
10
)
{
ms
=
12
0
;
second
=
1
0
;
}
LogUtil
.
error
(
WarnMsg
,
DeviceID
+
15
,
ms
);
LogUtil
.
error
(
WarnMsg
,
DeviceID
+
15
,
second
);
Alarm
(
LineAlarmType
.
IoSingleTimeOut
);
}
}
...
...
@@ -624,7 +632,7 @@ namespace OnlineStore.DeviceLibrary
msg
+=
"runS: "
+
runStatus
+
"\n"
;
msg
+=
"lineS: "
+
lineStatus
+
"\n"
;
msg
+=
"alarm: "
+
alarmType
+
"\n"
;
msg
+=
"alarm: "
+
alarmType
+
" "
+
LastAlarmTime
.
ToLongTimeString
()+
"\n"
;
msg
+=
"MoveT:"
+
MoveInfo
.
MoveType
+
"\n"
;
msg
+=
"MoveS :"
+
MoveInfo
.
SLog
+
"\n"
;
msg
+=
"SMoveT:"
+
SecondMoveInfo
.
MoveType
+
"\n"
;
...
...
source/DeviceLibrary/assemblyLine/FeedingEquip_InStore.cs
查看文件 @
9278303
...
...
@@ -250,8 +250,17 @@ namespace OnlineStore.DeviceLibrary
}
else
{
CheckLog
(
"托盘检测:"
+
SecondMoveInfo
.
SLog
+
" 需要此托盘,横移顶升气缸上 升 )"
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
SW_TopCylinder_Down
,
IO_Type
.
SW_TopCylinder_Up
);
if
(
Config
.
SidesWayNum
.
Equals
(
2
)
&&
LineManager
.
Line
.
SwCanUpMove
(
3
))
{
CheckLog
(
"托盘检测:"
+
SecondMoveInfo
.
SLog
+
" 需要此托盘,横移顶升气缸上升,同时横移3处的顶升也可以上升 "
);
LineManager
.
Line
.
CylinderMove
(
null
,
IO_Type
.
SW3_TopCylinder_Down
,
IO_Type
.
SW3_TopCylinder_Up
);
}
else
{
CheckLog
(
"托盘检测:"
+
SecondMoveInfo
.
SLog
+
" 需要此托盘,横移顶升气缸上 升 "
);
}
}
}
else
...
...
source/DeviceLibrary/assemblyLine/LineBean.cs
查看文件 @
9278303
...
...
@@ -485,7 +485,7 @@ namespace OnlineStore.DeviceLibrary
yellowShanShuo
=
true
;
}
foreach
(
MoveEquip
moveEquip
in
Move
EquipMap
.
Values
)
foreach
(
EquipBase
moveEquip
in
All
EquipMap
.
Values
)
{
if
(
moveEquip
.
isNoAirCheck
||
moveEquip
.
isInSuddenDown
||
moveEquip
.
alarmType
>
LineAlarmType
.
AxisAlarm
)
{
...
...
source/DeviceLibrary/assemblyLine/LineBean_Partial.cs
查看文件 @
9278303
...
...
@@ -105,7 +105,7 @@ namespace OnlineStore.DeviceLibrary
if
(
span
.
TotalSeconds
>
LineManager
.
Config
.
IOSingle_TimerOut
&&
NoAlarm
())
{
ConfigIO
io
=
baseConfig
.
getWaitIO
(
wait
.
IoType
);
WarnMsg
=
Name
+
"等待"
+
NotOkMsg
+
" 超时"
;
WarnMsg
=
Name
+
"
["
+
checkWaitInfo
.
MoveStep
+
"]
等待"
+
NotOkMsg
+
" 超时"
;
Alarm
(
LineAlarmType
.
IoSingleTimeOut
);
LogUtil
.
error
(
MoveInfo
.
Name
+
WarnMsg
,
DeviceID
+
13
);
}
...
...
@@ -350,9 +350,9 @@ namespace OnlineStore.DeviceLibrary
}
if
(
sidesWayNum
.
Equals
(
3
))
{
TimeSpan
span
=
DateTime
.
Now
-
FeedingEquipMap
[
104
].
lastStopDown
;
//
TimeSpan span = DateTime.Now - FeedingEquipMap[104].lastStopDown;
LineMoveInfo
moveInfo
=
FeedingEquipMap
[
104
].
SecondMoveInfo
;
if
(
moveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
)
&&
span
.
TotalSeconds
>
3
)
if
(
IOValue
(
IO_Type
.
SW3_TrayCheck
).
Equals
(
IO_VALUE
.
LOW
)
&&
moveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
)
)
{
return
true
;
}
...
...
@@ -361,8 +361,8 @@ namespace OnlineStore.DeviceLibrary
{
LineMoveInfo
moveInfo
=
FeedingEquipMap
[
101
].
SecondMoveInfo
;
TimeSpan
span
=
DateTime
.
Now
-
FeedingEquipMap
[
101
].
lastStopDown
;
if
(
moveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
)
&&
span
.
TotalSeconds
>
3
)
//
TimeSpan span = DateTime.Now - FeedingEquipMap[101].lastStopDown;
if
(
IOValue
(
IO_Type
.
SW1_TrayCheck
).
Equals
(
IO_VALUE
.
LOW
)
&&
moveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
)
)
{
return
true
;
}
...
...
source/DeviceLibrary/assemblyLine/ProvidingEquip_Partial.cs
查看文件 @
9278303
...
...
@@ -241,7 +241,7 @@ namespace OnlineStore.DeviceLibrary
{
TimeSpan
span
=
DateTime
.
Now
-
SecondMoveInfo
.
LastSetpTime
;
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_01_FixtureCheck
);
LogUtil
.
debug
(
Name
+
"托盘阻挡"
+
SecondMoveInfo
.
SLog
+
" 阻挡气缸上升,下降耗时("
+
FormUtil
.
GetSpanStr
(
span
)+
"),等待 阻挡2托盘检测=1)"
);
LogUtil
.
debug
(
Name
+
"托盘阻挡"
+
SecondMoveInfo
.
SLog
+
" 阻挡气缸上升,下降耗时("
+
FormUtil
.
GetSpanStr
(
span
)
+
"),等待 阻挡2托盘检测=1)"
);
IOMove
(
IO_Type
.
StopCylinder_Down1
,
IO_VALUE
.
LOW
);
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Check2
,
IO_VALUE
.
HIGH
));
}
...
...
@@ -250,17 +250,17 @@ namespace OnlineStore.DeviceLibrary
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_03_Stop2Down
);
CheckLog
(
"托盘阻挡"
+
SecondMoveInfo
.
SLog
+
" 再次检测料盘信号"
);
//CheckLog("托盘阻挡" + SecondMoveInfo.SLog + " 等待" + TrayManager.SwTrayWaitTime + ",再次检测料盘信号");
IOMove
(
IO_Type
.
StopCylinder_Down1
,
IO_VALUE
.
LOW
);
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Check2
,
IO_VALUE
.
HIGH
));
IOMove
(
IO_Type
.
StopCylinder_Down1
,
IO_VALUE
.
LOW
);
SecondMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
StopCylinder_Check2
,
IO_VALUE
.
HIGH
));
}
else
if
(
SecondMoveInfo
.
MoveStep
.
Equals
(
LineMoveStep
.
MIO_03_Stop2Down
))
{
// CheckLog("托盘阻挡" + SecondMoveInfo.SLog + " ,等待编码信号稳定StopCylinder_Check2=1");
// SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_04_Wait);
// SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.StopCylinder_Check2, IO_VALUE.HIGH));
//}
//else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_04_Wait))
//{
{
// CheckLog("托盘阻挡" + SecondMoveInfo.SLog + " ,等待编码信号稳定StopCylinder_Check2=1");
// SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_04_Wait);
// SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.StopCylinder_Check2, IO_VALUE.HIGH));
//}
//else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_04_Wait))
//{
UpdateTrayNum
();
if
(
TrayManager
.
RightTrayCode
(
currTrayNum
,
preTrayNum
,
false
))
{
...
...
@@ -283,7 +283,7 @@ namespace OnlineStore.DeviceLibrary
}
else
{
// SecondMoveInfo.NewMove(LineMoveType.CheckFixture);
// SecondMoveInfo.NewMove(LineMoveType.CheckFixture);
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MO_14_TopDown
);
CheckLog
(
"放托盘(放开阻挡)"
+
MoveInfo
.
SLog
+
" 托盘 【"
+
currTrayNum
+
"】直接放行"
);
if
(
Config
.
SidesWayNum
<=
0
)
...
...
@@ -303,9 +303,18 @@ namespace OnlineStore.DeviceLibrary
}
else
if
(
SecondMoveInfo
.
MoveStep
.
Equals
(
LineMoveStep
.
MIO_05_WaitTime
))
{
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_06_TopUp
);
CheckLog
(
"托盘阻挡 "
+
SecondMoveInfo
.
SLog
+
" 顶升气缸上升 "
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
TopCylinder_Down
,
IO_Type
.
TopCylinder_UP
);
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MIO_06_TopUp
);
CylinderMove
(
SecondMoveInfo
,
IO_Type
.
TopCylinder_Down
,
IO_Type
.
TopCylinder_UP
);
if
(
Config
.
SidesWayNum
.
Equals
(
4
)
&&
LineManager
.
Line
.
SwCanUpMove
(
1
))
{
CheckLog
(
"托盘阻挡 "
+
SecondMoveInfo
.
SLog
+
" 顶升气缸上升,同时横移1处的顶升也可以上升 "
);
LineManager
.
Line
.
CylinderMove
(
null
,
IO_Type
.
SW1_TopCylinder_Down
,
IO_Type
.
SW1_TopCylinder_Up
);
}
else
{
CheckLog
(
"托盘阻挡 "
+
SecondMoveInfo
.
SLog
+
" 顶升气缸上升 "
);
}
}
else
if
(
SecondMoveInfo
.
MoveStep
.
Equals
(
LineMoveStep
.
MIO_06_TopUp
))
{
...
...
@@ -334,8 +343,8 @@ namespace OnlineStore.DeviceLibrary
else
{
SecondMoveInfo
.
NextMoveStep
(
LineMoveStep
.
MO_15_WaitCanGo
);
CheckLog
(
"托盘放行 "
+
SecondMoveInfo
.
SLog
+
" ,等待 NextStopCheck=0"
);
// SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.NextStopCheck, IO_VALUE.LOW));
CheckLog
(
"托盘放行 "
+
SecondMoveInfo
.
SLog
+
" ,等待 NextStopCheck=0"
);
// SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.NextStopCheck, IO_VALUE.LOW));
}
}
...
...
@@ -415,7 +424,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
PO_01_CylinderDown
);
OutLog
(
" "
+
MoveInfo
.
SLog
+
" : 上下气缸下降"
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1000
));
UpdownDownP2Move
(
MoveInfo
.
MoveParam
.
PlateH
,
MoveInfo
.
MoveParam
.
PlateW
);
UpdownDownP2Move
(
MoveInfo
.
MoveParam
.
PlateH
,
MoveInfo
.
MoveParam
.
PlateW
);
}
else
if
(
MoveInfo
.
MoveStep
.
Equals
(
LineMoveStep
.
PO_01_CylinderDown
))
{
...
...
source/DeviceLibrary/model/KTK_Store.cs
查看文件 @
9278303
...
...
@@ -272,7 +272,7 @@ namespace OnlineStore.DeviceLibrary
protected
abstract
void
InStoreProcess
();
#
endregion
public
void
SetWarnMsg
(
string
msg
=
""
)
public
void
SetWarnMsg
(
string
msg
=
""
)
{
if
(
String
.
IsNullOrEmpty
(
msg
).
Equals
(
false
))
{
...
...
@@ -290,7 +290,7 @@ namespace OnlineStore.DeviceLibrary
else
{
if
(
msg
.
StartsWith
(
Name
))
{
{
LogUtil
.
error
(
msg
);
}
else
...
...
@@ -299,7 +299,7 @@ namespace OnlineStore.DeviceLibrary
}
}
}
WarnMsg
=
msg
;
}
public
static
string
GetRunStr
(
LineStatus
ls
,
LineRunStatus
runs
)
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论