Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
李娜
/
SO664-AssemblyLine
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit ce5d6044
由
LN
编写于
2020-12-11 17:47:14 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
调试bug修改,rfid,板卡 dll更新
1 个父辈
b7cdeae1
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
22 个修改的文件
包含
188 行增加
和
50 行删除
dll/RFID/Asa.RFID.HiStation.dll
dll/RFID/Asa.RFID.IReadAll.dll
source/AssemblyLineClient/FrmHYEquip.Designer.cs
source/AssemblyLineClient/FrmHYEquip.cs
source/AssemblyLineClient/FrmLineIO.Designer.cs
source/AssemblyLineClient/FrmMoveEquip.Designer.cs
source/DeviceLibrary/assemblyLine/EquipBase.cs
source/DeviceLibrary/assemblyLine/FeedingEquip.cs
source/DeviceLibrary/assemblyLine/HY/HY_C1Line.cs
source/DeviceLibrary/assemblyLine/HY/HY_C1_SLStation.cs
source/DeviceLibrary/assemblyLine/HY/HY_Coveryor.cs
source/DeviceLibrary/assemblyLine/HY/HY_Coveryor_Partial.cs
source/DeviceLibrary/assemblyLine/HY/HY_OutLine.cs
source/DeviceLibrary/assemblyLine/LineBean_Partial.cs
source/DeviceLibrary/assemblymanager/SServerManager.cs
source/DeviceLibrary/model/KTK_Store.cs
source/HuichuanLibrary/device_config.xml
source/HuichuanLibrary/huichuan_x64/IMC_API_x64.dll
source/HuichuanLibrary/huichuan_x64/IMC_API_x64.lib
source/HuichuanLibrary/huichuan_x86/IMC_API_x86.dll
source/HuichuanLibrary/huichuan_x86/IMC_API_x86.lib
source/HuichuanLibrary/system_config.xml
dll/RFID/Asa.RFID.HiStation.dll
查看文件 @
ce5d604
此文件类型无法预览
dll/RFID/Asa.RFID.IReadAll.dll
查看文件 @
ce5d604
此文件类型无法预览
source/AssemblyLineClient/FrmHYEquip.Designer.cs
查看文件 @
ce5d604
...
...
@@ -622,12 +622,12 @@
this
.
lblThisSta
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)((((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Bottom
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Right
)));
this
.
lblThisSta
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
10.5
F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
lblThisSta
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
9
F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
lblThisSta
.
ForeColor
=
System
.
Drawing
.
Color
.
Red
;
this
.
lblThisSta
.
ImageAlign
=
System
.
Drawing
.
ContentAlignment
.
MiddleRight
;
this
.
lblThisSta
.
Location
=
new
System
.
Drawing
.
Point
(
255
,
52
);
this
.
lblThisSta
.
Location
=
new
System
.
Drawing
.
Point
(
6
,
103
);
this
.
lblThisSta
.
Name
=
"lblThisSta"
;
this
.
lblThisSta
.
Size
=
new
System
.
Drawing
.
Size
(
470
,
122
);
this
.
lblThisSta
.
Size
=
new
System
.
Drawing
.
Size
(
719
,
71
);
this
.
lblThisSta
.
TabIndex
=
246
;
this
.
lblThisSta
.
Text
=
"等待启动"
;
this
.
lblThisSta
.
TextAlign
=
System
.
Drawing
.
ContentAlignment
.
MiddleCenter
;
...
...
@@ -681,7 +681,7 @@
this
.
lblHyInfo
.
AutoSize
=
true
;
this
.
lblHyInfo
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
9F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
lblHyInfo
.
ImageAlign
=
System
.
Drawing
.
ContentAlignment
.
MiddleRight
;
this
.
lblHyInfo
.
Location
=
new
System
.
Drawing
.
Point
(
6
,
117
);
this
.
lblHyInfo
.
Location
=
new
System
.
Drawing
.
Point
(
444
,
19
);
this
.
lblHyInfo
.
Name
=
"lblHyInfo"
;
this
.
lblHyInfo
.
Size
=
new
System
.
Drawing
.
Size
(
68
,
17
);
this
.
lblHyInfo
.
TabIndex
=
281
;
...
...
source/AssemblyLineClient/FrmHYEquip.cs
查看文件 @
ce5d604
...
...
@@ -237,10 +237,18 @@ namespace OnlineStore.AssemblyLine
internal
override
void
FormStatus
(
bool
isStart
)
{
btnStart
.
Enabled
=
!
isStart
;
btnStart
.
Enabled
=
true
;
btnStop
.
Enabled
=
true
;
//btnInStore.Enabled = isStart;
btnOutStore
.
Enabled
=
isStart
;
btnOutStore
.
Enabled
=
isStart
;
if
(
isStart
)
{
btnStart
.
Text
=
"复位"
;
}
else
{
btnStart
.
Text
=
"启动调试"
;
}
}
private
void
FrmIOStatus_Shown
(
object
sender
,
EventArgs
e
)
...
...
source/AssemblyLineClient/FrmLineIO.Designer.cs
查看文件 @
ce5d604
...
...
@@ -228,7 +228,7 @@
this
.
groupBox4
.
Controls
.
Add
(
this
.
tableLayoutPanel2
);
this
.
groupBox4
.
Location
=
new
System
.
Drawing
.
Point
(
289
,
3
);
this
.
groupBox4
.
Name
=
"groupBox4"
;
this
.
groupBox4
.
Size
=
new
System
.
Drawing
.
Size
(
276
,
600
);
this
.
groupBox4
.
Size
=
new
System
.
Drawing
.
Size
(
276
,
468
);
this
.
groupBox4
.
TabIndex
=
104
;
this
.
groupBox4
.
TabStop
=
false
;
this
.
groupBox4
.
Text
=
"DO列表"
;
...
...
@@ -246,7 +246,7 @@
this
.
tableLayoutPanel2
.
RowCount
=
2
;
this
.
tableLayoutPanel2
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Absolute
,
17F
));
this
.
tableLayoutPanel2
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Absolute
,
17F
));
this
.
tableLayoutPanel2
.
Size
=
new
System
.
Drawing
.
Size
(
265
,
580
);
this
.
tableLayoutPanel2
.
Size
=
new
System
.
Drawing
.
Size
(
265
,
448
);
this
.
tableLayoutPanel2
.
TabIndex
=
103
;
//
// groupBox3
...
...
@@ -256,7 +256,7 @@
this
.
groupBox3
.
Controls
.
Add
(
this
.
tableLayoutPanel1
);
this
.
groupBox3
.
Location
=
new
System
.
Drawing
.
Point
(
6
,
3
);
this
.
groupBox3
.
Name
=
"groupBox3"
;
this
.
groupBox3
.
Size
=
new
System
.
Drawing
.
Size
(
276
,
600
);
this
.
groupBox3
.
Size
=
new
System
.
Drawing
.
Size
(
276
,
468
);
this
.
groupBox3
.
TabIndex
=
103
;
this
.
groupBox3
.
TabStop
=
false
;
this
.
groupBox3
.
Text
=
"DI列表"
;
...
...
@@ -274,7 +274,7 @@
this
.
tableLayoutPanel1
.
RowCount
=
2
;
this
.
tableLayoutPanel1
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Absolute
,
17F
));
this
.
tableLayoutPanel1
.
RowStyles
.
Add
(
new
System
.
Windows
.
Forms
.
RowStyle
(
System
.
Windows
.
Forms
.
SizeType
.
Absolute
,
17F
));
this
.
tableLayoutPanel1
.
Size
=
new
System
.
Drawing
.
Size
(
265
,
580
);
this
.
tableLayoutPanel1
.
Size
=
new
System
.
Drawing
.
Size
(
265
,
448
);
this
.
tableLayoutPanel1
.
TabIndex
=
102
;
//
// groupBox2
...
...
@@ -428,9 +428,9 @@
//
this
.
lblMsg
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
9F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
lblMsg
.
ForeColor
=
System
.
Drawing
.
Color
.
Red
;
this
.
lblMsg
.
Location
=
new
System
.
Drawing
.
Point
(
821
,
522
);
this
.
lblMsg
.
Location
=
new
System
.
Drawing
.
Point
(
3
,
476
);
this
.
lblMsg
.
Name
=
"lblMsg"
;
this
.
lblMsg
.
Size
=
new
System
.
Drawing
.
Size
(
234
,
80
);
this
.
lblMsg
.
Size
=
new
System
.
Drawing
.
Size
(
562
,
131
);
this
.
lblMsg
.
TabIndex
=
279
;
this
.
lblMsg
.
Text
=
"CID"
;
//
...
...
source/AssemblyLineClient/FrmMoveEquip.Designer.cs
查看文件 @
ce5d604
...
...
@@ -491,12 +491,12 @@
//
this
.
lblThisSta
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)(((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Left
)
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Right
)));
this
.
lblThisSta
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
10.5
F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
lblThisSta
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
9
F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
lblThisSta
.
ForeColor
=
System
.
Drawing
.
Color
.
Red
;
this
.
lblThisSta
.
ImageAlign
=
System
.
Drawing
.
ContentAlignment
.
MiddleRight
;
this
.
lblThisSta
.
Location
=
new
System
.
Drawing
.
Point
(
147
,
68
);
this
.
lblThisSta
.
Location
=
new
System
.
Drawing
.
Point
(
4
,
181
);
this
.
lblThisSta
.
Name
=
"lblThisSta"
;
this
.
lblThisSta
.
Size
=
new
System
.
Drawing
.
Size
(
511
,
62
);
this
.
lblThisSta
.
Size
=
new
System
.
Drawing
.
Size
(
652
,
84
);
this
.
lblThisSta
.
TabIndex
=
246
;
this
.
lblThisSta
.
Text
=
"等待启动"
;
this
.
lblThisSta
.
TextAlign
=
System
.
Drawing
.
ContentAlignment
.
MiddleCenter
;
...
...
@@ -574,10 +574,10 @@
this
.
lblInstoreList
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
9F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
lblInstoreList
.
ForeColor
=
System
.
Drawing
.
Color
.
Green
;
this
.
lblInstoreList
.
ImageAlign
=
System
.
Drawing
.
ContentAlignment
.
MiddleRight
;
this
.
lblInstoreList
.
Location
=
new
System
.
Drawing
.
Point
(
149
,
139
);
this
.
lblInstoreList
.
Location
=
new
System
.
Drawing
.
Point
(
249
,
65
);
this
.
lblInstoreList
.
Name
=
"lblInstoreList"
;
this
.
lblInstoreList
.
Size
=
new
System
.
Drawing
.
Size
(
507
,
119
);
this
.
lblInstoreList
.
TabIndex
=
277
;
this
.
lblInstoreList
.
Size
=
new
System
.
Drawing
.
Size
(
407
,
96
);
this
.
lblInstoreList
.
TabIndex
=
277
;
//
// tabPage2
//
...
...
source/DeviceLibrary/assemblyLine/EquipBase.cs
查看文件 @
ce5d604
...
...
@@ -439,7 +439,7 @@ namespace OnlineStore.DeviceLibrary
ConfigIO
io
=
baseConfig
.
getWaitIO
(
wait
.
IoType
);
WarnMsg
=
moveInfo
.
Name
+
"["
+
moveInfo
.
MoveType
+
"]["
+
moveInfo
.
MoveStep
+
"] 等待"
+
NotOkMsg
+
" 超时 "
+
Math
.
Round
(
span
.
TotalSeconds
,
1
)
+
"秒"
;
LogUtil
.
error
(
MoveInfo
.
Name
+
WarnMsg
,
DeviceID
*
1000
+
13
);
LogUtil
.
error
(
WarnMsg
,
DeviceID
*
1000
+
13
);
if
(
NoAlarm
())
{
Alarm
(
LineAlarmType
.
IoSingleTimeOut
);
...
...
source/DeviceLibrary/assemblyLine/FeedingEquip.cs
查看文件 @
ce5d604
...
...
@@ -117,7 +117,7 @@ namespace OnlineStore.DeviceLibrary
IOMove
(
IO_Type
.
SL_Buffer_StopDown
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
SL_Out_StopDown
,
IO_VALUE
.
LOW
);
//夹紧气缸放松
CylinderMove
(
null
,
IO_Type
.
SL_ClampCylinder_
Relax
,
IO_Type
.
SL_ClampCylinder_Work
);
CylinderMove
(
null
,
IO_Type
.
SL_ClampCylinder_
Work
,
IO_Type
.
SL_ClampCylinder_Relax
);
if
(
Config
.
DOList
.
ContainsKey
(
IO_Type
.
SL_RollerLine_Run
))
{
IOMove
(
IO_Type
.
SL_RollerLine_Run
,
IO_VALUE
.
LOW
);
...
...
@@ -256,7 +256,7 @@ namespace OnlineStore.DeviceLibrary
case
LineMoveStep
.
FR_16_BatchAxisToP1
:
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
FR_17_ClampCheck
);
DebugInfo
(
MoveInfo
.
MoveType
+
" : 等待夹爪料盘检测信号无料"
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
ClampCylinder_Check
,
IO_VALUE
.
LOW
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_
ClampCylinder_Check
,
IO_VALUE
.
LOW
));
break
;
case
LineMoveStep
.
FR_17_ClampCheck
:
...
...
@@ -307,10 +307,7 @@ namespace OnlineStore.DeviceLibrary
CheckAndMove
(
IO_Type
.
SL_Buffer_StopDown
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
SL_Out_StopDown
,
IO_VALUE
.
LOW
);
}
/// <summary>
/// 停止运行
/// </summary>
public
override
void
StopRun
()
{
runStatus
=
LineRunStatus
.
Wait
;
...
...
@@ -319,7 +316,7 @@ namespace OnlineStore.DeviceLibrary
mainTimer
.
Enabled
=
false
;
}
StopMove
();
CloseLed
();
AgvClient
.
SetStatus
(
Config
.
AgvInName
,
""
,
ClientAction
.
None
,
ClientLevel
.
Low
,
true
);
AgvClient
.
SetStatus
(
Config
.
AgvOutName
,
""
,
ClientAction
.
None
,
ClientLevel
.
Low
,
true
);
}
...
...
@@ -439,16 +436,100 @@ namespace OnlineStore.DeviceLibrary
needEnterWatch
.
Stop
();
AgvClient
.
SetToNone
(
Config
.
AgvInName
);
}
LedProcess
();
}
private
Stopwatch
needEnterWatch
=
new
Stopwatch
();
private
Stopwatch
needLeaveWatch
=
new
Stopwatch
();
private
void
CloseLed
()
{
CheckAndMove
(
IO_Type
.
SL_AlarmLed
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
SL_HddLed
,
IO_VALUE
.
LOW
);
}
private
DateTime
lastProLedTime
=
DateTime
.
Now
;
private
void
LedProcess
()
{
try
{
TimeSpan
span
=
DateTime
.
Now
-
lastProLedTime
;
if
(
span
.
TotalSeconds
<
1
)
{
return
;
}
lastProLedTime
=
DateTime
.
Now
;
if
(
runStatus
<=
LineRunStatus
.
Wait
)
{
CloseLed
();
return
;
}
//报警时红灯闪烁,待机时绿灯亮,复位时绿灯闪烁 忙碌时绿灯闪烁
bool
isNeedAlarmLed
=
false
;
bool
isBusy
=
false
;
if
(
runStatus
.
Equals
(
LineRunStatus
.
HomeMoving
)
||
runStatus
.
Equals
(
LineRunStatus
.
Reset
))
{
isBusy
=
true
;
}
if
(
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
InStore
)
||
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
OutStore
))
{
isBusy
=
true
;
}
if
(
isInSuddenDown
||
isNoAirCheck
||
alarmType
>
LineAlarmType
.
AxisAlarm
||
(!
alarmType
.
Equals
(
LineAlarmType
.
None
)))
{
isNeedAlarmLed
=
true
;
}
// 忙碌中,绿灯闪烁
if
(
isBusy
)
{
if
(
IOValue
(
IO_Type
.
SL_HddLed
).
Equals
(
IO_VALUE
.
LOW
))
{
IOMove
(
IO_Type
.
SL_HddLed
,
IO_VALUE
.
HIGH
);
}
else
{
IOMove
(
IO_Type
.
SL_HddLed
,
IO_VALUE
.
LOW
);
}
}
else
if
(
IOValue
(
IO_Type
.
SL_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
{
IOMove
(
IO_Type
.
SL_HddLed
,
IO_VALUE
.
LOW
);
}
// 报警中 ,红灯闪烁
if
(
isNeedAlarmLed
)
{
if
(
IOValue
(
IO_Type
.
SL_AlarmLed
).
Equals
(
IO_VALUE
.
LOW
))
{
IOMove
(
IO_Type
.
SL_AlarmLed
,
IO_VALUE
.
HIGH
);
}
else
{
IOMove
(
IO_Type
.
SL_AlarmLed
,
IO_VALUE
.
LOW
);
}
}
else
if
(
IOValue
(
IO_Type
.
SL_AlarmLed
).
Equals
(
IO_VALUE
.
HIGH
))
{
IOMove
(
IO_Type
.
SL_AlarmLed
,
IO_VALUE
.
LOW
);
}
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
Name
+
"灯处理定时器出错:"
,
ex
);
}
Thread
.
Sleep
(
5
);
}
#
region
气缸判断及动作
public
void
TopCylinderUp
(
LineMoveInfo
moveinfo
=
null
)
{
CylinderMove
(
moveinfo
,
IO_Type
.
SL_TopCylinder_Down
,
IO_Type
.
TopCylinder_Up
);
CylinderMove
(
moveinfo
,
IO_Type
.
SL_TopCylinder_Down
,
IO_Type
.
SL_
TopCylinder_Up
);
if
(
moveinfo
!=
null
)
{
moveinfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
SL_OutTopCylinder_Down
,
IO_VALUE
.
LOW
));
...
...
source/DeviceLibrary/assemblyLine/HY/HY_C1Line.cs
查看文件 @
ce5d604
...
...
@@ -21,6 +21,8 @@ namespace OnlineStore.DeviceLibrary
public
HY_C1Line
(
string
cid
,
HYEquip_Config
config
)
:
base
(
cid
,
config
)
{
Name
=
(
" C1HY"
+
(
DeviceID
%
100
).
ToString
().
PadLeft
(
2
,
'0'
)
+
" "
).
ToUpper
();
MoveInfo
.
Name
=
Name
;
SecondMoveInfo
.
Name
=
Name
;
}
public
override
bool
StartRun
(
bool
isDebug
=
false
)
...
...
@@ -108,6 +110,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo
.
EndMove
();
SecondMoveInfo
.
EndMove
();
runStatus
=
LineRunStatus
.
Runing
;
LogInfo
(
"停止运动:横移线体停止,阻挡上升,顶升气缸下降,定位气缸下降 "
);
LineStop
();
if
(
IsDebug
)
...
...
@@ -201,10 +204,14 @@ namespace OnlineStore.DeviceLibrary
{
//托盘在工位阻挡处
MoveInfo
.
NewMove
(
LineMoveType
.
CheckFixture
);
runStatus
=
LineRunStatus
.
Busy
;
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
HY03_FrontStopUp
);
LogInfo
(
"检测托盘,"
+
MoveInfo
.
SLog
+
" ,阻挡上升"
);
IOMove
(
IO_Type
.
HY_FrontStopDown
,
IO_VALUE
.
LOW
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_FrontStopCheck
,
IO_VALUE
.
LOW
));
if
(
Config
.
DOList
.
ContainsKey
(
IO_Type
.
HY_FrontStopDown
))
{
IOMove
(
IO_Type
.
HY_FrontStopDown
,
IO_VALUE
.
LOW
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_FrontStopDown
,
IO_VALUE
.
LOW
));
}
IOMove
(
IO_Type
.
HY_StopDown
,
IO_VALUE
.
LOW
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_TrayCheck
,
IO_VALUE
.
HIGH
));
IOMove
(
IO_Type
.
HY_OL_StopDown
,
IO_VALUE
.
LOW
);
...
...
@@ -219,10 +226,11 @@ namespace OnlineStore.DeviceLibrary
trayCheckWait
.
Stop
();
trayCheck2LowWait
.
Stop
();
MoveInfo
.
NewMove
(
LineMoveType
.
CheckFixture
);
runStatus
=
LineRunStatus
.
Busy
;
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
HY02_FrontStopDown
);
LogInfo
(
" 托盘检测:"
+
MoveInfo
.
SLog
+
",检测到前阻挡托盘 ,前阻挡下降,清理托盘RFID,顶升气缸下降"
);
ClearTrayRFID
();
IOMove
(
IO_Type
.
HY_FrontStop
Check
,
IO_VALUE
.
HIGH
,
1200
);
IOMove
(
IO_Type
.
HY_FrontStop
Down
,
IO_VALUE
.
HIGH
,
1200
);
MoveInfo
.
OneWaitCanEndStep
=
true
;
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_FrontStopCheck
,
IO_VALUE
.
LOW
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_TrayCheck
,
IO_VALUE
.
HIGH
));
...
...
@@ -239,6 +247,7 @@ namespace OnlineStore.DeviceLibrary
trayCheckWait
.
Stop
();
trayCheck2LowWait
.
Stop
();
MoveInfo
.
NewMove
(
LineMoveType
.
CheckFixture
);
runStatus
=
LineRunStatus
.
Busy
;
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
HY71_OL_Wait
);
LogInfo
(
" 托盘检测:"
+
MoveInfo
.
SLog
+
",检测到出料线托盘 "
);
ClearTrayRFID
();
...
...
@@ -369,6 +378,7 @@ namespace OnlineStore.DeviceLibrary
{
CheckLog
(
"C1线->出料线"
+
MoveInfo
.
SLog
+
" ,结束处理 "
);
MoveInfo
.
EndMove
();
runStatus
=
LineRunStatus
.
Runing
;
}
#
endregion
...
...
@@ -384,11 +394,12 @@ namespace OnlineStore.DeviceLibrary
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
HY12_WaitHY2Free
))
{
HYEquipBase
hyout
=
GetHyOutEquip
();
if
(
hyout
.
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
))
if
(
hyout
.
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
)
&&
hyout
.
runStatus
.
Equals
(
LineRunStatus
.
Runing
)
)
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
HY13_WaitHY2Ready
);
CheckLog
(
"托盘横移"
+
MoveInfo
.
SLog
+
" ,等待"
+
hyout
.
Name
+
" 准备完成(顶升上升,定位下降) "
);
hyout
.
MoveInfo
.
NewMove
(
LineMoveType
.
CheckFixture
);
hyout
.
runStatus
=
LineRunStatus
.
Busy
;
hyout
.
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
HY51_WaitFree
);
ClearTimeoutAlarm
(
"等待"
+
hyout
.
Name
+
"可以横移超时"
);
}
...
...
@@ -460,6 +471,7 @@ namespace OnlineStore.DeviceLibrary
{
CheckLog
(
"托盘横移"
+
MoveInfo
.
SLog
+
" ,结束横移处理 "
);
MoveInfo
.
EndMove
();
runStatus
=
LineRunStatus
.
Runing
;
}
#
endregion
...
...
@@ -633,6 +645,7 @@ namespace OnlineStore.DeviceLibrary
{
CheckLog
(
" 结束托盘处理 "
);
MoveInfo
.
EndMove
();
runStatus
=
LineRunStatus
.
Runing
;
}
#
endregion
...
...
source/DeviceLibrary/assemblyLine/HY/HY_C1_SLStation.cs
查看文件 @
ce5d604
...
...
@@ -18,6 +18,8 @@ namespace OnlineStore.DeviceLibrary
public
HY_C1_SLStation
(
string
cid
,
HYEquip_Config
config
)
:
base
(
cid
,
config
)
{
Name
=
(
" C1HY"
+
(
DeviceID
%
100
).
ToString
().
PadLeft
(
2
,
'0'
)
+
" "
).
ToUpper
();
MoveInfo
.
Name
=
Name
;
SecondMoveInfo
.
Name
=
Name
;
}
public
override
bool
StartRun
(
bool
isDebug
=
false
)
...
...
@@ -105,6 +107,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo
.
EndMove
();
SecondMoveInfo
.
EndMove
();
runStatus
=
LineRunStatus
.
Runing
;
LogInfo
(
"停止运动:横移线体停止,阻挡上升,顶升气缸下降,定位气缸下降 "
);
if
(
IsDebug
)
...
...
@@ -196,6 +199,7 @@ namespace OnlineStore.DeviceLibrary
if
(
CheckStopWatch
(
trayCheckWait
,
TrayWaitTime
,
true
))
{
MoveInfo
.
NewMove
(
LineMoveType
.
CheckFixture
);
runStatus
=
LineRunStatus
.
Busy
;
if
(
Config
.
IsSideWayIn
)
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
HY03_FrontStopUp
);
...
...
@@ -228,6 +232,7 @@ namespace OnlineStore.DeviceLibrary
trayCheck2LowWait
.
Stop
();
//托盘在第一个阻挡处
MoveInfo
.
NewMove
(
LineMoveType
.
CheckFixture
);
runStatus
=
LineRunStatus
.
Busy
;
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
HY02_FrontStopDown
);
LogInfo
(
" 托盘检测:"
+
MoveInfo
.
SLog
+
",检测到前阻挡托盘检测,前阻挡下降,清理托盘RFID"
);
ClearTrayRFID
();
...
...
@@ -358,7 +363,7 @@ namespace OnlineStore.DeviceLibrary
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
HY12_WaitHY2Free
))
{
HYEquipBase
hyOut
=
GetHyOutEquip
();
if
(
hyOut
.
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
))
if
(
hyOut
.
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
)
&&
hyOut
.
runStatus
.
Equals
(
LineRunStatus
.
Runing
)
)
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
HY13_WaitHY2Ready
);
CheckLog
(
"托盘横移"
+
MoveInfo
.
SLog
+
" ,等待"
+
hyOut
.
Name
+
"准备完成(顶升上升,定位下降) "
);
...
...
@@ -432,6 +437,7 @@ namespace OnlineStore.DeviceLibrary
{
CheckLog
(
"托盘横移"
+
MoveInfo
.
SLog
+
" ,结束横移处理 "
);
MoveInfo
.
EndMove
();
runStatus
=
LineRunStatus
.
Runing
;
}
#
endregion
...
...
@@ -532,6 +538,7 @@ namespace OnlineStore.DeviceLibrary
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
HY65_TopUp
))
{
MoveInfo
.
EndMove
();
runStatus
=
LineRunStatus
.
Runing
;
CheckLog
(
"托盘阻挡"
+
MoveInfo
.
SLog
+
" 处理完成"
);
}
else
...
...
source/DeviceLibrary/assemblyLine/HY/HY_Coveryor.cs
查看文件 @
ce5d604
...
...
@@ -29,6 +29,8 @@ namespace OnlineStore.DeviceLibrary
{
Name
=
(
" J3HY"
+
(
DeviceID
%
100
).
ToString
().
PadLeft
(
2
,
'0'
)
+
" "
).
ToUpper
();
}
MoveInfo
.
Name
=
Name
;
SecondMoveInfo
.
Name
=
Name
;
}
public
override
bool
StartRun
(
bool
isDebug
=
false
)
...
...
@@ -112,7 +114,7 @@ namespace OnlineStore.DeviceLibrary
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
JHY_R05_ClampCheck
);
LogInfo
(
MoveInfo
.
MoveType
+
" "
+
MoveInfo
.
MoveStep
+
": 等待夹爪无信号"
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
ClampCylinder_Check
,
IO_VALUE
.
LOW
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_
ClampCylinder_Check
,
IO_VALUE
.
LOW
));
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
JHY_R05_ClampCheck
))
{
...
...
@@ -173,7 +175,7 @@ namespace OnlineStore.DeviceLibrary
BusyMoveProcess
();
if
(
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
)
&&
(!
MoveStop
))
{
if
(
LineManager
.
Line
.
CanProcess
Line
())
if
(
LineManager
.
Line
.
OutHyCanPro
Line
())
{
CheckFixture
();
}
...
...
source/DeviceLibrary/assemblyLine/HY/HY_Coveryor_Partial.cs
查看文件 @
ce5d604
...
...
@@ -103,7 +103,7 @@ namespace OnlineStore.DeviceLibrary
}
protected
override
void
FixtureProcess
()
{
if
(!
LineManager
.
Line
.
CanProcess
Line
())
if
(!
LineManager
.
Line
.
OutHyCanPro
Line
())
{
return
;
}
...
...
source/DeviceLibrary/assemblyLine/HY/HY_OutLine.cs
查看文件 @
ce5d604
...
...
@@ -15,6 +15,8 @@ namespace OnlineStore.DeviceLibrary
public
HY_OutLine
(
string
cid
,
HYEquip_Config
config
)
:
base
(
cid
,
config
)
{
Name
=
(
" "
+
config
.
LineName
+
"HY"
+
(
DeviceID
%
100
).
ToString
().
PadLeft
(
2
,
'0'
)
+
" "
).
ToUpper
();
MoveInfo
.
Name
=
Name
;
SecondMoveInfo
.
Name
=
Name
;
}
public
override
bool
StartRun
(
bool
isDebug
=
false
)
{
...
...
@@ -114,7 +116,7 @@ namespace OnlineStore.DeviceLibrary
{
if
(
MoveInfo
.
MoveType
.
Equals
(
LineMoveType
.
None
))
{
if
(
LineManager
.
Line
.
CanProcess
Line
())
if
(
LineManager
.
Line
.
OutHyCanPro
Line
())
{
CheckFixture
();
}
...
...
@@ -191,7 +193,7 @@ namespace OnlineStore.DeviceLibrary
trayCheckWait
.
Stop
();
trayCheck2LowWait
.
Stop
();
MoveInfo
.
NewMove
(
LineMoveType
.
CheckFixture
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
OHY
01_Long
LCheck
);
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
OHY
11_Short
LCheck
);
LogInfo
(
" 出料线横移(长线):"
+
MoveInfo
.
SLog
+
",短线阻挡检测到托盘"
);
ClearTrayRFID
();
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
HY_ShortL_StopCheck
,
IO_VALUE
.
HIGH
));
...
...
@@ -244,7 +246,7 @@ namespace OnlineStore.DeviceLibrary
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
OHY02_TopDown
))
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
OHY03_LongLStopDown
);
CheckLog
(
"出料线横移(长线)"
+
MoveInfo
.
SLog
+
" 长线体阻挡下降"
);
CheckLog
(
"出料线横移(长线)"
+
MoveInfo
.
SLog
+
" 长线体阻挡下降
1200
"
);
IOMove
(
IO_Type
.
HY_LongL_StopDown
,
IO_VALUE
.
HIGH
,
1200
);
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
OHY03_LongLStopDown
))
...
...
@@ -303,8 +305,9 @@ namespace OnlineStore.DeviceLibrary
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
OHY15_TrayCheck
))
{
MoveInfo
.
NextMoveStep
(
LineMoveStep
.
OHY16_TopDown
);
CheckLog
(
"出料线横移(短线)"
+
MoveInfo
.
SLog
+
" 顶升气缸下降"
);
CheckLog
(
"出料线横移(短线)"
+
MoveInfo
.
SLog
+
" 顶升气缸下降
,线体停止
"
);
CylinderMove
(
MoveInfo
,
IO_Type
.
HY_TopCylinder_Up
,
IO_Type
.
HY_TopCylinder_Down
);
LineStop
(
MoveInfo
);
}
else
if
(
MoveInfo
.
IsStep
(
LineMoveStep
.
OHY16_TopDown
))
{
...
...
source/DeviceLibrary/assemblyLine/LineBean_Partial.cs
查看文件 @
ce5d604
...
...
@@ -17,10 +17,10 @@ namespace OnlineStore.DeviceLibrary
public
bool
CanProcessLine
(
bool
isCheckSleep
=
true
)
{
if
(
runStatus
<=
LineRunStatus
.
Wait
)
{
return
false
;
}
//
if (runStatus <= LineRunStatus.Wait)
//
{
//
return false ;
//
}
if
(
IOManager
.
IOValue
(
IO_Type
.
MotorRun_C1_123
,
0
).
Equals
(
IO_VALUE
.
HIGH
)
&&
IOManager
.
IOValue
(
IO_Type
.
MotorRun_C1_4
,
0
).
Equals
(
IO_VALUE
.
HIGH
)
&&
IOManager
.
IOValue
(
IO_Type
.
MotorRun_679
,
0
).
Equals
(
IO_VALUE
.
HIGH
)
&&
...
...
@@ -30,7 +30,15 @@ namespace OnlineStore.DeviceLibrary
}
return
false
;
}
public
bool
OutHyCanProLine
()
{
if
(
IOManager
.
IOValue
(
IO_Type
.
MotorRun_679
,
0
).
Equals
(
IO_VALUE
.
HIGH
)
||
IOManager
.
IOValue
(
IO_Type
.
MotorRun_23458
,
0
).
Equals
(
IO_VALUE
.
HIGH
))
{
return
true
;
}
return
false
;
}
private
DateTime
preIoTimerOutTime
=
DateTime
.
Now
;
private
void
IOTimeOutProcess
()
...
...
@@ -100,9 +108,9 @@ namespace OnlineStore.DeviceLibrary
if
(
span
.
TotalSeconds
>
LineManager
.
Config
.
IOSingle_TimerOut
&&
NoAlarm
())
{
ConfigIO
io
=
baseConfig
.
getWaitIO
(
wait
.
IoType
);
WarnMsg
=
Name
+
"["
+
checkWaitInfo
.
MoveStep
+
"]等待"
+
NotOkMsg
+
" 超时"
;
WarnMsg
=
checkWaitInfo
.
Name
+
"["
+
checkWaitInfo
.
MoveStep
+
"]等待"
+
NotOkMsg
+
" 超时"
;
Alarm
(
LineAlarmType
.
IoSingleTimeOut
);
LogUtil
.
error
(
MoveInfo
.
Name
+
WarnMsg
,
901
);
LogUtil
.
error
(
WarnMsg
,
901
);
}
//超过报警时长
else
if
(
rwSpan
.
TotalSeconds
>
5
&&
span
.
TotalSeconds
>
6
&&
span
.
TotalSeconds
<
LineManager
.
Config
.
IOSingle_TimerOut
*
2
)
...
...
source/DeviceLibrary/assemblymanager/SServerManager.cs
查看文件 @
ce5d604
...
...
@@ -563,6 +563,10 @@ namespace OnlineStore.DeviceLibrary
string
msg
=
""
;
try
{
if
(
string
.
IsNullOrEmpty
(
serverAddr
))
{
return
msg
;
}
Dictionary
<
string
,
string
>
paramMap
=
new
Dictionary
<
string
,
string
>();
string
msgListStr
=
JsonHelper
.
SerializeObject
(
msgList
);
paramMap
.
Add
(
"deviceAlarmList"
,
msgListStr
);
...
...
source/DeviceLibrary/model/KTK_Store.cs
查看文件 @
ce5d604
...
...
@@ -414,20 +414,20 @@ namespace OnlineStore.DeviceLibrary
if
(
IoHighType
.
Equals
(
IO_Type
.
ClampCylinder_Work
)
||
IoHighType
.
Equals
(
IO_Type
.
ClampCylinder_Relax
)
||
IoHighType
.
Equals
(
IO_Type
.
UpDownCylinder_Down
)
||
IoHighType
.
Equals
(
IO_Type
.
UpDownCylinder_Up
)||
IoHighType
.
Equals
(
IO_Type
.
UpDownCylinder_Down
)
||
IoHighType
.
Equals
(
IO_Type
.
UpDownCylinder_Up
)
||
IoHighType
.
Equals
(
IO_Type
.
BeforeAfterCylinder_After
)
||
IoHighType
.
Equals
(
IO_Type
.
BeforeAfterCylinder_Before
)
)
{
moveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
300
));
}
}
//如果是进仓门口 夹紧
if
(
baseConfig
.
DType
.
Equals
(
DeviceType
.
Move
Equip
)
&&
(
IoHighType
.
Equals
(
IO_Type
.
SL_ClampCylinder_Work
)))
if
(
baseConfig
.
DType
.
Equals
(
DeviceType
.
Feeding
Equip
)
&&
(
IoHighType
.
Equals
(
IO_Type
.
SL_ClampCylinder_Work
)))
{
//夹爪夹紧
moveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
500
));
moveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IoLowType
,
IO_VALUE
.
LOW
));
}
if
(
baseConfig
.
DType
.
Equals
(
DeviceType
.
Move
Equip
)
&&
(
IoHighType
.
Equals
(
IO_Type
.
SL_ClampCylinder_Relax
)))
else
if
(
baseConfig
.
DType
.
Equals
(
DeviceType
.
Feeding
Equip
)
&&
(
IoHighType
.
Equals
(
IO_Type
.
SL_ClampCylinder_Relax
)))
{
//夹爪放松
moveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
500
));
...
...
@@ -445,6 +445,18 @@ namespace OnlineStore.DeviceLibrary
moveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
500
));
moveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IoLowType
,
IO_VALUE
.
LOW
));
}
else
if
(
baseConfig
.
DType
.
Equals
(
DeviceType
.
HYEquip
)
&&
(
IoHighType
.
Equals
(
IO_Type
.
HY_ClampCylinder_Relax
)))
{
//夹爪放松
moveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
500
));
moveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IoHighType
,
IO_VALUE
.
HIGH
));
}
else
if
(
baseConfig
.
DType
.
Equals
(
DeviceType
.
HYEquip
)
&&
(
IoHighType
.
Equals
(
IO_Type
.
HY_ClampCylinder_Work
)))
{
//夹爪夹紧
moveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
500
));
moveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IoLowType
,
IO_VALUE
.
LOW
));
}
else
{
moveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IoLowType
,
IO_VALUE
.
LOW
));
...
...
source/HuichuanLibrary/device_config.xml
查看文件 @
ce5d604
此文件的差异太大,无法显示。
source/HuichuanLibrary/huichuan_x64/IMC_API_x64.dll
查看文件 @
ce5d604
此文件类型无法预览
source/HuichuanLibrary/huichuan_x64/IMC_API_x64.lib
查看文件 @
ce5d604
此文件类型无法预览
source/HuichuanLibrary/huichuan_x86/IMC_API_x86.dll
查看文件 @
ce5d604
此文件类型无法预览
source/HuichuanLibrary/huichuan_x86/IMC_API_x86.lib
查看文件 @
ce5d604
此文件类型无法预览
source/HuichuanLibrary/system_config.xml
查看文件 @
ce5d604
此文件的差异被折叠,
点击展开。
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论