Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
李娜
/
AutoCountMachine
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 856fa861
由
刘韬
编写于
2021-04-21 10:55:10 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
一些bug修正
1 个父辈
81789272
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
25 个修改的文件
包含
622 行增加
和
137 行删除
RC1266-AutoCountMachine/source/AutoCountClient/FrmInputEquip.cs
RC1266-AutoCountMachine/source/AutoCountClient/FrmLearning.cs
RC1266-AutoCountMachine/source/AutoCountClient/FrmOutputEquip.Designer.cs
RC1266-AutoCountMachine/source/AutoCountClient/FrmOutputEquip.cs
RC1266-AutoCountMachine/source/AutoCountClient/FrmRobotMain.Designer.cs
RC1266-AutoCountMachine/source/AutoCountClient/FrmRobotMain.cs
RC1266-AutoCountMachine/source/CodeLibrary/CodeLibrary.csproj
RC1266-AutoCountMachine/source/CodeLibrary/camera/HIK.cs
RC1266-AutoCountMachine/source/CodeLibrary/eyemDecode.cs
RC1266-AutoCountMachine/source/DeviceLibrary/DeviceLibrary.csproj
RC1266-AutoCountMachine/source/DeviceLibrary/bean/BatchMoveBean_Partial.cs
RC1266-AutoCountMachine/source/DeviceLibrary/bean/EquipBase.cs
RC1266-AutoCountMachine/source/DeviceLibrary/bean/InputEquip_InStore.cs
RC1266-AutoCountMachine/source/DeviceLibrary/bean/OutputEquip.cs
RC1266-AutoCountMachine/source/DeviceLibrary/bean/OutputEquip_Partial.cs
RC1266-AutoCountMachine/source/DeviceLibrary/bean/RobotBean.cs
RC1266-AutoCountMachine/source/DeviceLibrary/bean/X_RAY_Equip.cs
RC1266-AutoCountMachine/source/DeviceLibrary/bean/X_RAY_Equip_Partial.cs
RC1266-AutoCountMachine/source/DeviceLibrary/deviceLibrary/TestPlate.cs
RC1266-AutoCountMachine/source/DeviceLibrary/deviceLibrary/halcon/CodeManager.cs
RC1266-AutoCountMachine/source/DeviceLibrary/manager/RobotManager.cs
RC1266-AutoCountMachine/source/DeviceLibrary/manager/SServerManager.cs
RC1266-AutoCountMachine/source/DeviceLibrary/model/MoveStep.cs
RC1266-AutoCountMachine/source/DeviceLibrary/model/WorkParam.cs
RC1266-AutoCountMachine/source/LoadCVSLibrary/storeConfig/config/AIO_Type.cs
RC1266-AutoCountMachine/source/AutoCountClient/FrmInputEquip.cs
查看文件 @
856fa86
...
@@ -510,7 +510,7 @@ namespace OnlineStore.AutoCountClient
...
@@ -510,7 +510,7 @@ namespace OnlineStore.AutoCountClient
{
{
equipBean
.
IOMove
(
IO_Type
.
Camera_Led
,
IO_VALUE
.
HIGH
);
equipBean
.
IOMove
(
IO_Type
.
Camera_Led
,
IO_VALUE
.
HIGH
);
List
<
string
>
LastCodeList
=
CodeManager
.
CameraScan
(
equipBean
.
Name
+
"测试"
,
equipBean
.
Config
.
LeftCamera
);
List
<
string
>
LastCodeList
=
CodeManager
.
CameraScan
(
equipBean
.
Name
+
"测试"
,
equipBean
.
Config
.
LeftCamera
);
string
msg
=
CodeManager
.
GetValidCode
(
LastCodeList
);
string
msg
=
CodeManager
.
GetValidCode
(
LastCodeList
,
out
_
);
equipBean
.
IOMove
(
IO_Type
.
Camera_Led
,
IO_VALUE
.
LOW
);
equipBean
.
IOMove
(
IO_Type
.
Camera_Led
,
IO_VALUE
.
LOW
);
LogUtil
.
info
(
equipBean
.
Name
+
"["
+
equipBean
.
Config
.
LeftCamera
+
"]扫码测试结果:\r\n"
+
msg
);
LogUtil
.
info
(
equipBean
.
Name
+
"["
+
equipBean
.
Config
.
LeftCamera
+
"]扫码测试结果:\r\n"
+
msg
);
MessageBox
.
Show
(
equipBean
.
Name
+
"["
+
equipBean
.
Config
.
LeftCamera
+
"]扫码测试结果:"
+
msg
);
MessageBox
.
Show
(
equipBean
.
Name
+
"["
+
equipBean
.
Config
.
LeftCamera
+
"]扫码测试结果:"
+
msg
);
...
@@ -645,7 +645,7 @@ namespace OnlineStore.AutoCountClient
...
@@ -645,7 +645,7 @@ namespace OnlineStore.AutoCountClient
{
{
equipBean
.
IOMove
(
IO_Type
.
Camera_Led
,
IO_VALUE
.
HIGH
);
equipBean
.
IOMove
(
IO_Type
.
Camera_Led
,
IO_VALUE
.
HIGH
);
List
<
string
>
LastCodeList
=
CodeManager
.
CameraScan
(
equipBean
.
Name
+
"测试"
,
equipBean
.
Config
.
RightCamera
);
List
<
string
>
LastCodeList
=
CodeManager
.
CameraScan
(
equipBean
.
Name
+
"测试"
,
equipBean
.
Config
.
RightCamera
);
string
msg
=
CodeManager
.
GetValidCode
(
LastCodeList
);
string
msg
=
CodeManager
.
GetValidCode
(
LastCodeList
,
out
_
);
equipBean
.
IOMove
(
IO_Type
.
Camera_Led
,
IO_VALUE
.
LOW
);
equipBean
.
IOMove
(
IO_Type
.
Camera_Led
,
IO_VALUE
.
LOW
);
LogUtil
.
info
(
equipBean
.
Name
+
"["
+
equipBean
.
Config
.
RightCamera
+
"]扫码测试结果:\r\n"
+
msg
);
LogUtil
.
info
(
equipBean
.
Name
+
"["
+
equipBean
.
Config
.
RightCamera
+
"]扫码测试结果:\r\n"
+
msg
);
MessageBox
.
Show
(
equipBean
.
Name
+
"["
+
equipBean
.
Config
.
RightCamera
+
"]扫码测试结果:"
+
msg
);
MessageBox
.
Show
(
equipBean
.
Name
+
"["
+
equipBean
.
Config
.
RightCamera
+
"]扫码测试结果:"
+
msg
);
...
...
RC1266-AutoCountMachine/source/AutoCountClient/FrmLearning.cs
查看文件 @
856fa86
...
@@ -107,7 +107,7 @@ namespace OnlineStore.AutoCountClient
...
@@ -107,7 +107,7 @@ namespace OnlineStore.AutoCountClient
string
filename
=
Path
.
GetFileNameWithoutExtension
(
fullFName
);
string
filename
=
Path
.
GetFileNameWithoutExtension
(
fullFName
);
string
[]
array
=
filename
.
Split
(
'-'
);
string
[]
array
=
filename
.
Split
(
new
char
[]
{
'-'
,
';'
}
);
CurrPN
=
array
[
0
];
CurrPN
=
array
[
0
];
groupBox4
.
Text
=
"["
+
CurrPN
+
"] 请选择参数:"
;
groupBox4
.
Text
=
"["
+
CurrPN
+
"] 请选择参数:"
;
...
...
RC1266-AutoCountMachine/source/AutoCountClient/FrmOutputEquip.Designer.cs
查看文件 @
856fa86
...
@@ -64,6 +64,7 @@
...
@@ -64,6 +64,7 @@
this
.
tabControl1
=
new
System
.
Windows
.
Forms
.
TabControl
();
this
.
tabControl1
=
new
System
.
Windows
.
Forms
.
TabControl
();
this
.
tabPage3
=
new
System
.
Windows
.
Forms
.
TabPage
();
this
.
tabPage3
=
new
System
.
Windows
.
Forms
.
TabPage
();
this
.
groupBox6
=
new
System
.
Windows
.
Forms
.
GroupBox
();
this
.
groupBox6
=
new
System
.
Windows
.
Forms
.
GroupBox
();
this
.
chbStickingPos
=
new
System
.
Windows
.
Forms
.
CheckBox
();
this
.
btnShelfReset
=
new
System
.
Windows
.
Forms
.
Button
();
this
.
btnShelfReset
=
new
System
.
Windows
.
Forms
.
Button
();
this
.
btnLabelReset
=
new
System
.
Windows
.
Forms
.
Button
();
this
.
btnLabelReset
=
new
System
.
Windows
.
Forms
.
Button
();
this
.
btnMoveReset
=
new
System
.
Windows
.
Forms
.
Button
();
this
.
btnMoveReset
=
new
System
.
Windows
.
Forms
.
Button
();
...
@@ -157,7 +158,7 @@
...
@@ -157,7 +158,7 @@
this
.
lblName
=
new
System
.
Windows
.
Forms
.
Label
();
this
.
lblName
=
new
System
.
Windows
.
Forms
.
Label
();
this
.
panel1
=
new
System
.
Windows
.
Forms
.
Panel
();
this
.
panel1
=
new
System
.
Windows
.
Forms
.
Panel
();
this
.
chbMoveStop
=
new
System
.
Windows
.
Forms
.
CheckBox
();
this
.
chbMoveStop
=
new
System
.
Windows
.
Forms
.
CheckBox
();
this
.
chbStickingPos
=
new
System
.
Windows
.
Forms
.
CheckBox
();
this
.
button1
=
new
System
.
Windows
.
Forms
.
Button
();
this
.
groupBox1
.
SuspendLayout
();
this
.
groupBox1
.
SuspendLayout
();
this
.
groupBox4
.
SuspendLayout
();
this
.
groupBox4
.
SuspendLayout
();
this
.
groupBox3
.
SuspendLayout
();
this
.
groupBox3
.
SuspendLayout
();
...
@@ -799,6 +800,7 @@
...
@@ -799,6 +800,7 @@
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Right
)));
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Right
)));
this
.
groupBox6
.
Controls
.
Add
(
this
.
chbStickingPos
);
this
.
groupBox6
.
Controls
.
Add
(
this
.
chbStickingPos
);
this
.
groupBox6
.
Controls
.
Add
(
this
.
btnShelfReset
);
this
.
groupBox6
.
Controls
.
Add
(
this
.
btnShelfReset
);
this
.
groupBox6
.
Controls
.
Add
(
this
.
button1
);
this
.
groupBox6
.
Controls
.
Add
(
this
.
btnLabelReset
);
this
.
groupBox6
.
Controls
.
Add
(
this
.
btnLabelReset
);
this
.
groupBox6
.
Controls
.
Add
(
this
.
btnMoveReset
);
this
.
groupBox6
.
Controls
.
Add
(
this
.
btnMoveReset
);
this
.
groupBox6
.
Controls
.
Add
(
this
.
lblAgvInfo
);
this
.
groupBox6
.
Controls
.
Add
(
this
.
lblAgvInfo
);
...
@@ -823,6 +825,18 @@
...
@@ -823,6 +825,18 @@
this
.
groupBox6
.
TabStop
=
false
;
this
.
groupBox6
.
TabStop
=
false
;
this
.
groupBox6
.
Text
=
"消息"
;
this
.
groupBox6
.
Text
=
"消息"
;
//
//
// chbStickingPos
//
this
.
chbStickingPos
.
AutoSize
=
true
;
this
.
chbStickingPos
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
10.5F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
chbStickingPos
.
Location
=
new
System
.
Drawing
.
Point
(
793
,
70
);
this
.
chbStickingPos
.
Name
=
"chbStickingPos"
;
this
.
chbStickingPos
.
Size
=
new
System
.
Drawing
.
Size
(
140
,
24
);
this
.
chbStickingPos
.
TabIndex
=
304
;
this
.
chbStickingPos
.
Text
=
"启用标签位置判断"
;
this
.
chbStickingPos
.
UseVisualStyleBackColor
=
true
;
this
.
chbStickingPos
.
CheckedChanged
+=
new
System
.
EventHandler
(
this
.
chbStickingPos_CheckedChanged
);
//
// btnShelfReset
// btnShelfReset
//
//
this
.
btnShelfReset
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Right
)));
this
.
btnShelfReset
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Right
)));
...
@@ -2163,17 +2177,19 @@
...
@@ -2163,17 +2177,19 @@
this
.
chbMoveStop
.
UseVisualStyleBackColor
=
true
;
this
.
chbMoveStop
.
UseVisualStyleBackColor
=
true
;
this
.
chbMoveStop
.
CheckedChanged
+=
new
System
.
EventHandler
(
this
.
chbMoveStop_CheckedChanged
);
this
.
chbMoveStop
.
CheckedChanged
+=
new
System
.
EventHandler
(
this
.
chbMoveStop_CheckedChanged
);
//
//
//
chbStickingPos
//
button1
//
//
this
.
chbStickingPos
.
AutoSize
=
true
;
this
.
button1
.
Anchor
=
((
System
.
Windows
.
Forms
.
AnchorStyles
)((
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
|
System
.
Windows
.
Forms
.
AnchorStyles
.
Right
)));
this
.
chbStickingPos
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
10.5F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
button1
.
BackColor
=
System
.
Drawing
.
Color
.
White
;
this
.
chbStickingPos
.
Location
=
new
System
.
Drawing
.
Point
(
793
,
70
);
this
.
button1
.
FlatStyle
=
System
.
Windows
.
Forms
.
FlatStyle
.
Flat
;
this
.
chbStickingPos
.
Name
=
"chbStickingPos"
;
this
.
button1
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
9F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
chbStickingPos
.
Size
=
new
System
.
Drawing
.
Size
(
140
,
24
);
this
.
button1
.
Location
=
new
System
.
Drawing
.
Point
(
1142
,
108
);
this
.
chbStickingPos
.
TabIndex
=
304
;
this
.
button1
.
Name
=
"button1"
;
this
.
chbStickingPos
.
Text
=
"启用标签位置判断"
;
this
.
button1
.
Size
=
new
System
.
Drawing
.
Size
(
126
,
40
);
this
.
chbStickingPos
.
UseVisualStyleBackColor
=
true
;
this
.
button1
.
TabIndex
=
302
;
this
.
chbStickingPos
.
CheckedChanged
+=
new
System
.
EventHandler
(
this
.
chbStickingPos_CheckedChanged
);
this
.
button1
.
Text
=
"复位打印机状态"
;
this
.
button1
.
UseVisualStyleBackColor
=
false
;
this
.
button1
.
Click
+=
new
System
.
EventHandler
(
this
.
button1_Click
);
//
//
// FrmOutputEquip
// FrmOutputEquip
//
//
...
@@ -2358,6 +2374,7 @@
...
@@ -2358,6 +2374,7 @@
internal
System
.
Windows
.
Forms
.
TextBox
txtYP4
;
internal
System
.
Windows
.
Forms
.
TextBox
txtYP4
;
private
System
.
Windows
.
Forms
.
Button
btnBsave2
;
private
System
.
Windows
.
Forms
.
Button
btnBsave2
;
private
System
.
Windows
.
Forms
.
CheckBox
chbStickingPos
;
private
System
.
Windows
.
Forms
.
CheckBox
chbStickingPos
;
private
System
.
Windows
.
Forms
.
Button
button1
;
}
}
}
}
RC1266-AutoCountMachine/source/AutoCountClient/FrmOutputEquip.cs
查看文件 @
856fa86
...
@@ -422,7 +422,7 @@ namespace OnlineStore.AutoCountClient
...
@@ -422,7 +422,7 @@ namespace OnlineStore.AutoCountClient
txtMZP2
.
Text
=
equipBean
.
Config
.
GetMoveZP2
(
size
).
ToString
();
txtMZP2
.
Text
=
equipBean
.
Config
.
GetMoveZP2
(
size
).
ToString
();
txtMZP3
.
Text
=
equipBean
.
Config
.
GetMoveZP3
(
size
).
ToString
();
txtMZP3
.
Text
=
equipBean
.
Config
.
GetMoveZP3
(
size
).
ToString
();
btnMZP2
.
Text
=
"取料Z轴-取料点P2-"
+
size
+
"mm"
;
btnMZP2
.
Text
=
"取料Z轴-取料点P2-"
+
size
+
"mm"
;
btnMZP3
.
Text
=
"取料Z轴-
取
料点P3-"
+
size
+
"mm"
;
btnMZP3
.
Text
=
"取料Z轴-
放
料点P3-"
+
size
+
"mm"
;
}
}
private
void
btnOpenAllAxis_Click
(
object
sender
,
EventArgs
e
)
private
void
btnOpenAllAxis_Click
(
object
sender
,
EventArgs
e
)
...
@@ -846,6 +846,10 @@ namespace OnlineStore.AutoCountClient
...
@@ -846,6 +846,10 @@ namespace OnlineStore.AutoCountClient
}
}
}
}
private
void
button1_Click
(
object
sender
,
EventArgs
e
)
{
RobotManager
.
LastPrintStatus
=
Asa
.
PrintLabel
.
PrinterStatus
.
Idle
;
}
}
}
}
}
...
...
RC1266-AutoCountMachine/source/AutoCountClient/FrmRobotMain.Designer.cs
查看文件 @
856fa86
...
@@ -91,6 +91,7 @@
...
@@ -91,6 +91,7 @@
this
.
启用贴标功能
ToolStripMenuItem
=
new
System
.
Windows
.
Forms
.
ToolStripMenuItem
();
this
.
启用贴标功能
ToolStripMenuItem
=
new
System
.
Windows
.
Forms
.
ToolStripMenuItem
();
this
.
lblXrayWork
=
new
System
.
Windows
.
Forms
.
Label
();
this
.
lblXrayWork
=
new
System
.
Windows
.
Forms
.
Label
();
this
.
folderBrowserDialog1
=
new
System
.
Windows
.
Forms
.
FolderBrowserDialog
();
this
.
folderBrowserDialog1
=
new
System
.
Windows
.
Forms
.
FolderBrowserDialog
();
this
.
CB_lookboard
=
new
System
.
Windows
.
Forms
.
CheckBox
();
this
.
tabControl1
.
SuspendLayout
();
this
.
tabControl1
.
SuspendLayout
();
this
.
tabPage1
.
SuspendLayout
();
this
.
tabPage1
.
SuspendLayout
();
this
.
panWork
.
SuspendLayout
();
this
.
panWork
.
SuspendLayout
();
...
@@ -367,7 +368,7 @@
...
@@ -367,7 +368,7 @@
this
.
批量
ToolStripMenuItem
,
this
.
批量
ToolStripMenuItem
,
this
.
单盘
ToolStripMenuItem
});
this
.
单盘
ToolStripMenuItem
});
this
.
元器件学习
ToolStripMenuItem
.
Name
=
"元器件学习ToolStripMenuItem"
;
this
.
元器件学习
ToolStripMenuItem
.
Name
=
"元器件学习ToolStripMenuItem"
;
this
.
元器件学习
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
8
0
,
26
);
this
.
元器件学习
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
6
0
,
26
);
this
.
元器件学习
ToolStripMenuItem
.
Text
=
"元器件学习"
;
this
.
元器件学习
ToolStripMenuItem
.
Text
=
"元器件学习"
;
this
.
元器件学习
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
元器件学习
ToolStripMenuItem_Click
);
this
.
元器件学习
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
元器件学习
ToolStripMenuItem_Click
);
//
//
...
@@ -388,24 +389,24 @@
...
@@ -388,24 +389,24 @@
// toolStripSeparator17
// toolStripSeparator17
//
//
this
.
toolStripSeparator17
.
Name
=
"toolStripSeparator17"
;
this
.
toolStripSeparator17
.
Name
=
"toolStripSeparator17"
;
this
.
toolStripSeparator17
.
Size
=
new
System
.
Drawing
.
Size
(
1
7
7
,
6
);
this
.
toolStripSeparator17
.
Size
=
new
System
.
Drawing
.
Size
(
1
5
7
,
6
);
//
//
// 二维码学习ToolStripMenuItem
// 二维码学习ToolStripMenuItem
//
//
this
.
二维码学习
ToolStripMenuItem
.
Name
=
"二维码学习ToolStripMenuItem"
;
this
.
二维码学习
ToolStripMenuItem
.
Name
=
"二维码学习ToolStripMenuItem"
;
this
.
二维码学习
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
8
0
,
26
);
this
.
二维码学习
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
6
0
,
26
);
this
.
二维码学习
ToolStripMenuItem
.
Text
=
"二维码学习"
;
this
.
二维码学习
ToolStripMenuItem
.
Text
=
"二维码学习"
;
this
.
二维码学习
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
二维码学习
ToolStripMenuItem_Click
);
this
.
二维码学习
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
二维码学习
ToolStripMenuItem_Click
);
//
//
// toolStripSeparator7
// toolStripSeparator7
//
//
this
.
toolStripSeparator7
.
Name
=
"toolStripSeparator7"
;
this
.
toolStripSeparator7
.
Name
=
"toolStripSeparator7"
;
this
.
toolStripSeparator7
.
Size
=
new
System
.
Drawing
.
Size
(
1
7
7
,
6
);
this
.
toolStripSeparator7
.
Size
=
new
System
.
Drawing
.
Size
(
1
5
7
,
6
);
//
//
// toolStripMenuItem2
// toolStripMenuItem2
//
//
this
.
toolStripMenuItem2
.
Name
=
"toolStripMenuItem2"
;
this
.
toolStripMenuItem2
.
Name
=
"toolStripMenuItem2"
;
this
.
toolStripMenuItem2
.
Size
=
new
System
.
Drawing
.
Size
(
1
8
0
,
26
);
this
.
toolStripMenuItem2
.
Size
=
new
System
.
Drawing
.
Size
(
1
6
0
,
26
);
this
.
toolStripMenuItem2
.
Text
=
"AGV调试"
;
this
.
toolStripMenuItem2
.
Text
=
"AGV调试"
;
this
.
toolStripMenuItem2
.
Visible
=
false
;
this
.
toolStripMenuItem2
.
Visible
=
false
;
this
.
toolStripMenuItem2
.
Click
+=
new
System
.
EventHandler
(
this
.
toolStripMenuItem2_Click
);
this
.
toolStripMenuItem2
.
Click
+=
new
System
.
EventHandler
(
this
.
toolStripMenuItem2_Click
);
...
@@ -413,13 +414,13 @@
...
@@ -413,13 +414,13 @@
// toolStripSeparator6
// toolStripSeparator6
//
//
this
.
toolStripSeparator6
.
Name
=
"toolStripSeparator6"
;
this
.
toolStripSeparator6
.
Name
=
"toolStripSeparator6"
;
this
.
toolStripSeparator6
.
Size
=
new
System
.
Drawing
.
Size
(
1
7
7
,
6
);
this
.
toolStripSeparator6
.
Size
=
new
System
.
Drawing
.
Size
(
1
5
7
,
6
);
this
.
toolStripSeparator6
.
Visible
=
false
;
this
.
toolStripSeparator6
.
Visible
=
false
;
//
//
// 标签编辑ToolStripMenuItem
// 标签编辑ToolStripMenuItem
//
//
this
.
标签编辑
ToolStripMenuItem
.
Name
=
"标签编辑ToolStripMenuItem"
;
this
.
标签编辑
ToolStripMenuItem
.
Name
=
"标签编辑ToolStripMenuItem"
;
this
.
标签编辑
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
8
0
,
26
);
this
.
标签编辑
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
6
0
,
26
);
this
.
标签编辑
ToolStripMenuItem
.
Text
=
"标签编辑"
;
this
.
标签编辑
ToolStripMenuItem
.
Text
=
"标签编辑"
;
this
.
标签编辑
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
标签编辑
ToolStripMenuItem_Click
);
this
.
标签编辑
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
标签编辑
ToolStripMenuItem_Click
);
//
//
...
@@ -442,19 +443,19 @@
...
@@ -442,19 +443,19 @@
// toolStripMenuItem3
// toolStripMenuItem3
//
//
this
.
toolStripMenuItem3
.
Name
=
"toolStripMenuItem3"
;
this
.
toolStripMenuItem3
.
Name
=
"toolStripMenuItem3"
;
this
.
toolStripMenuItem3
.
Size
=
new
System
.
Drawing
.
Size
(
1
80
,
26
);
this
.
toolStripMenuItem3
.
Size
=
new
System
.
Drawing
.
Size
(
1
44
,
26
);
this
.
toolStripMenuItem3
.
Text
=
"历史记录"
;
this
.
toolStripMenuItem3
.
Text
=
"历史记录"
;
this
.
toolStripMenuItem3
.
Click
+=
new
System
.
EventHandler
(
this
.
toolStripMenuItem3_Click
);
this
.
toolStripMenuItem3
.
Click
+=
new
System
.
EventHandler
(
this
.
toolStripMenuItem3_Click
);
//
//
// toolStripSeparator5
// toolStripSeparator5
//
//
this
.
toolStripSeparator5
.
Name
=
"toolStripSeparator5"
;
this
.
toolStripSeparator5
.
Name
=
"toolStripSeparator5"
;
this
.
toolStripSeparator5
.
Size
=
new
System
.
Drawing
.
Size
(
1
77
,
6
);
this
.
toolStripSeparator5
.
Size
=
new
System
.
Drawing
.
Size
(
1
41
,
6
);
//
//
// 元器件库ToolStripMenuItem
// 元器件库ToolStripMenuItem
//
//
this
.
元器件库
ToolStripMenuItem
.
Name
=
"元器件库ToolStripMenuItem"
;
this
.
元器件库
ToolStripMenuItem
.
Name
=
"元器件库ToolStripMenuItem"
;
this
.
元器件库
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
80
,
26
);
this
.
元器件库
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
44
,
26
);
this
.
元器件库
ToolStripMenuItem
.
Text
=
"元器件库"
;
this
.
元器件库
ToolStripMenuItem
.
Text
=
"元器件库"
;
this
.
元器件库
ToolStripMenuItem
.
Visible
=
false
;
this
.
元器件库
ToolStripMenuItem
.
Visible
=
false
;
this
.
元器件库
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
元器件库
ToolStripMenuItem_Click
);
this
.
元器件库
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
元器件库
ToolStripMenuItem_Click
);
...
@@ -462,37 +463,37 @@
...
@@ -462,37 +463,37 @@
// toolStripSeparator16
// toolStripSeparator16
//
//
this
.
toolStripSeparator16
.
Name
=
"toolStripSeparator16"
;
this
.
toolStripSeparator16
.
Name
=
"toolStripSeparator16"
;
this
.
toolStripSeparator16
.
Size
=
new
System
.
Drawing
.
Size
(
1
77
,
6
);
this
.
toolStripSeparator16
.
Size
=
new
System
.
Drawing
.
Size
(
1
41
,
6
);
this
.
toolStripSeparator16
.
Visible
=
false
;
this
.
toolStripSeparator16
.
Visible
=
false
;
//
//
// 清空日志ToolStripMenuItem
// 清空日志ToolStripMenuItem
//
//
this
.
清空日志
ToolStripMenuItem
.
Name
=
"清空日志ToolStripMenuItem"
;
this
.
清空日志
ToolStripMenuItem
.
Name
=
"清空日志ToolStripMenuItem"
;
this
.
清空日志
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
80
,
26
);
this
.
清空日志
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
44
,
26
);
this
.
清空日志
ToolStripMenuItem
.
Text
=
"清空日志"
;
this
.
清空日志
ToolStripMenuItem
.
Text
=
"清空日志"
;
this
.
清空日志
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
清空日志
ToolStripMenuItem_Click
);
this
.
清空日志
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
清空日志
ToolStripMenuItem_Click
);
//
//
// toolStripSeparator10
// toolStripSeparator10
//
//
this
.
toolStripSeparator10
.
Name
=
"toolStripSeparator10"
;
this
.
toolStripSeparator10
.
Name
=
"toolStripSeparator10"
;
this
.
toolStripSeparator10
.
Size
=
new
System
.
Drawing
.
Size
(
1
77
,
6
);
this
.
toolStripSeparator10
.
Size
=
new
System
.
Drawing
.
Size
(
1
41
,
6
);
//
//
// 复制日志ToolStripMenuItem
// 复制日志ToolStripMenuItem
//
//
this
.
复制日志
ToolStripMenuItem
.
Name
=
"复制日志ToolStripMenuItem"
;
this
.
复制日志
ToolStripMenuItem
.
Name
=
"复制日志ToolStripMenuItem"
;
this
.
复制日志
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
80
,
26
);
this
.
复制日志
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
44
,
26
);
this
.
复制日志
ToolStripMenuItem
.
Text
=
"复制日志"
;
this
.
复制日志
ToolStripMenuItem
.
Text
=
"复制日志"
;
this
.
复制日志
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
复制日志
ToolStripMenuItem_Click
);
this
.
复制日志
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
复制日志
ToolStripMenuItem_Click
);
//
//
// toolStripSeparator11
// toolStripSeparator11
//
//
this
.
toolStripSeparator11
.
Name
=
"toolStripSeparator11"
;
this
.
toolStripSeparator11
.
Name
=
"toolStripSeparator11"
;
this
.
toolStripSeparator11
.
Size
=
new
System
.
Drawing
.
Size
(
1
77
,
6
);
this
.
toolStripSeparator11
.
Size
=
new
System
.
Drawing
.
Size
(
1
41
,
6
);
//
//
// 版本号ToolStripMenuItem
// 版本号ToolStripMenuItem
//
//
this
.
版本号
ToolStripMenuItem
.
Name
=
"版本号ToolStripMenuItem"
;
this
.
版本号
ToolStripMenuItem
.
Name
=
"版本号ToolStripMenuItem"
;
this
.
版本号
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
80
,
26
);
this
.
版本号
ToolStripMenuItem
.
Size
=
new
System
.
Drawing
.
Size
(
1
44
,
26
);
this
.
版本号
ToolStripMenuItem
.
Text
=
"关于软件"
;
this
.
版本号
ToolStripMenuItem
.
Text
=
"关于软件"
;
this
.
版本号
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
版本号
ToolStripMenuItem_Click
);
this
.
版本号
ToolStripMenuItem
.
Click
+=
new
System
.
EventHandler
(
this
.
版本号
ToolStripMenuItem_Click
);
//
//
...
@@ -609,11 +610,24 @@
...
@@ -609,11 +610,24 @@
this
.
lblXrayWork
.
Text
=
"警告:点料过程中,请勿开门"
;
this
.
lblXrayWork
.
Text
=
"警告:点料过程中,请勿开门"
;
this
.
lblXrayWork
.
Visible
=
false
;
this
.
lblXrayWork
.
Visible
=
false
;
//
//
// CB_lookboard
//
this
.
CB_lookboard
.
AutoSize
=
true
;
this
.
CB_lookboard
.
Checked
=
true
;
this
.
CB_lookboard
.
CheckState
=
System
.
Windows
.
Forms
.
CheckState
.
Checked
;
this
.
CB_lookboard
.
Location
=
new
System
.
Drawing
.
Point
(
1190
,
5
);
this
.
CB_lookboard
.
Name
=
"CB_lookboard"
;
this
.
CB_lookboard
.
Size
=
new
System
.
Drawing
.
Size
(
154
,
24
);
this
.
CB_lookboard
.
TabIndex
=
198
;
this
.
CB_lookboard
.
Text
=
"提交错误信息到看板"
;
this
.
CB_lookboard
.
UseVisualStyleBackColor
=
true
;
//
// FrmRobotMain
// FrmRobotMain
//
//
this
.
AutoScaleMode
=
System
.
Windows
.
Forms
.
AutoScaleMode
.
None
;
this
.
AutoScaleMode
=
System
.
Windows
.
Forms
.
AutoScaleMode
.
None
;
this
.
BackColor
=
System
.
Drawing
.
Color
.
White
;
this
.
BackColor
=
System
.
Drawing
.
Color
.
White
;
this
.
ClientSize
=
new
System
.
Drawing
.
Size
(
1350
,
729
);
this
.
ClientSize
=
new
System
.
Drawing
.
Size
(
1350
,
729
);
this
.
Controls
.
Add
(
this
.
CB_lookboard
);
this
.
Controls
.
Add
(
this
.
lblWarnMsg
);
this
.
Controls
.
Add
(
this
.
lblWarnMsg
);
this
.
Controls
.
Add
(
this
.
lblXrayWork
);
this
.
Controls
.
Add
(
this
.
lblXrayWork
);
this
.
Controls
.
Add
(
this
.
tabControl1
);
this
.
Controls
.
Add
(
this
.
tabControl1
);
...
@@ -706,6 +720,7 @@
...
@@ -706,6 +720,7 @@
private
System
.
Windows
.
Forms
.
ToolStripMenuItem
启用贴标功能
ToolStripMenuItem
;
private
System
.
Windows
.
Forms
.
ToolStripMenuItem
启用贴标功能
ToolStripMenuItem
;
private
System
.
Windows
.
Forms
.
ToolStripMenuItem
批量
ToolStripMenuItem
;
private
System
.
Windows
.
Forms
.
ToolStripMenuItem
批量
ToolStripMenuItem
;
private
System
.
Windows
.
Forms
.
ToolStripMenuItem
单盘
ToolStripMenuItem
;
private
System
.
Windows
.
Forms
.
ToolStripMenuItem
单盘
ToolStripMenuItem
;
private
System
.
Windows
.
Forms
.
CheckBox
CB_lookboard
;
}
}
}
}
RC1266-AutoCountMachine/source/AutoCountClient/FrmRobotMain.cs
查看文件 @
856fa86
...
@@ -473,13 +473,14 @@ namespace OnlineStore.AutoCountClient
...
@@ -473,13 +473,14 @@ namespace OnlineStore.AutoCountClient
LogUtil
.
error
(
"LogM Error: "
,
ex
);
LogUtil
.
error
(
"LogM Error: "
,
ex
);
}
}
}
}
private
string
AddMsg
(
string
msg
,
string
warmsg
,
AlarmType
alarmType
,
DateTime
lastTime
)
private
string
AddMsg
(
string
msg
,
string
warmsg
,
AlarmType
alarmType
,
DateTime
lastTime
,
string
modulename
=
""
,
string
moduleid
=
""
)
{
{
if
(
warmsg
.
Equals
(
""
).
Equals
(
false
))
if
(
warmsg
.
Equals
(
""
).
Equals
(
false
))
{
{
if
(
alarmType
.
Equals
(
AlarmType
.
None
).
Equals
(
false
))
if
(
alarmType
.
Equals
(
AlarmType
.
None
).
Equals
(
false
))
{
{
msg
+=
lastTime
.
ToLongTimeString
()
+
" "
+
warmsg
+
"\r\n"
;
msg
+=
lastTime
.
ToLongTimeString
()
+
" "
+
warmsg
+
"\r\n"
;
msglist
.
Add
(
new
AlarmMsg
(
modulename
,
"doubleLine."
+
moduleid
,
warmsg
));
}
}
else
else
{
{
...
@@ -488,6 +489,7 @@ namespace OnlineStore.AutoCountClient
...
@@ -488,6 +489,7 @@ namespace OnlineStore.AutoCountClient
}
}
return
msg
;
return
msg
;
}
}
private
void
timer1_Tick
(
object
sender
,
EventArgs
e
)
private
void
timer1_Tick
(
object
sender
,
EventArgs
e
)
{
{
LogM
();
LogM
();
...
@@ -509,26 +511,29 @@ namespace OnlineStore.AutoCountClient
...
@@ -509,26 +511,29 @@ namespace OnlineStore.AutoCountClient
lblXrayWork
.
Text
=
"警告:点料过程中,请勿开门"
;
lblXrayWork
.
Text
=
"警告:点料过程中,请勿开门"
;
}
}
string
canScanCode
=
""
;
string
canScanCode
=
""
;
lblStatus
.
Text
=
robot
.
GetRunStr
()
+
canScanCode
;
lblStatus
.
Text
=
robot
.
GetRunStr
()
+
canScanCode
;
string
warnMsg
=
robot
.
WarnMsg
;
string
warnMsg
=
robot
.
WarnMsg
;
msglist
=
new
List
<
AlarmMsg
>();
//foreach (EquipBase move in robot.equipsMap.Values)
//foreach (EquipBase move in robot.equipsMap.Values)
//{
//{
warnMsg
=
AddMsg
(
warnMsg
,
robot
.
outputEquip
.
WarnMsg
,
robot
.
outputEquip
.
alarmType
,
robot
.
outputEquip
.
LastAlarmTime
);
warnMsg
=
AddMsg
(
warnMsg
,
robot
.
outputEquip
.
WarnMsg
,
robot
.
outputEquip
.
alarmType
,
robot
.
outputEquip
.
LastAlarmTime
,
"点料机-出料"
,
"outputEquip"
);
warnMsg
=
AddMsg
(
warnMsg
,
robot
.
XrayBean
.
WarnMsg
,
robot
.
XrayBean
.
alarmType
,
robot
.
XrayBean
.
LastAlarmTime
);
warnMsg
=
AddMsg
(
warnMsg
,
robot
.
inputEquip
.
WarnMsg
,
robot
.
inputEquip
.
alarmType
,
robot
.
inputEquip
.
LastAlarmTime
);
warnMsg
=
AddMsg
(
warnMsg
,
robot
.
XrayBean
.
WarnMsg
,
robot
.
XrayBean
.
alarmType
,
robot
.
XrayBean
.
LastAlarmTime
,
"点料机-点料"
,
"XrayBean"
);
warnMsg
=
AddMsg
(
warnMsg
,
robot
.
inputEquip
.
WarnMsg
,
robot
.
inputEquip
.
alarmType
,
robot
.
inputEquip
.
LastAlarmTime
,
"点料机-入料"
,
"inputEquip"
);
//if (move is InputEquip)
//if (move is InputEquip)
//{
//{
//BatchMoveBean bean = robot.inputEquip.LeftBatchMove;
//BatchMoveBean bean = robot.inputEquip.LeftBatchMove;
warnMsg
=
AddMsg
(
warnMsg
,
robot
.
inputEquip
.
LeftBatchMove
.
WarnMsg
,
robot
.
inputEquip
.
LeftBatchMove
.
alarmType
,
robot
.
inputEquip
.
LeftBatchMove
.
LastAlarmTime
);
warnMsg
=
AddMsg
(
warnMsg
,
robot
.
inputEquip
.
LeftBatchMove
.
WarnMsg
,
robot
.
inputEquip
.
LeftBatchMove
.
alarmType
,
robot
.
inputEquip
.
LeftBatchMove
.
LastAlarmTime
,
"点料机-左批量轴"
,
"LeftBatch"
);
warnMsg
=
AddMsg
(
warnMsg
,
robot
.
inputEquip
.
RightBatchMove
.
WarnMsg
,
robot
.
inputEquip
.
RightBatchMove
.
alarmType
,
robot
.
inputEquip
.
RightBatchMove
.
LastAlarmTime
);
warnMsg
=
AddMsg
(
warnMsg
,
robot
.
inputEquip
.
RightBatchMove
.
WarnMsg
,
robot
.
inputEquip
.
RightBatchMove
.
alarmType
,
robot
.
inputEquip
.
RightBatchMove
.
LastAlarmTime
,
"点料机-右批量轴"
,
"RightBatch"
);
//}
//}
//}
//}
lblOutTray
.
Text
=
"XRay出口处料盘:"
+
robot
.
XrayBean
.
Out_ReelInfo
.
ToStr
();
lblOutTray
.
Text
=
"XRay出口处料盘:"
+
robot
.
XrayBean
.
Out_ReelInfo
.
ToStr
();
lblCurrTray
.
Text
=
"XRay扫描区料盘:"
+
robot
.
XrayBean
.
Work_ReelInfo
.
ToStr
();
lblCurrTray
.
Text
=
"XRay扫描区料盘:"
+
robot
.
XrayBean
.
Work_ReelInfo
.
ToStr
();
lblWarnMsg
.
Text
=
warnMsg
;
lblWarnMsg
.
Text
=
warnMsg
;
updateDeviceAlarmMsg
(
msglist
);
if
(
robot
.
runStatus
>
RobotRunStatus
.
Wait
)
if
(
robot
.
runStatus
>
RobotRunStatus
.
Wait
)
{
{
if
(
启动
AToolStripMenuItem
.
Enabled
.
Equals
(
true
))
if
(
启动
AToolStripMenuItem
.
Enabled
.
Equals
(
true
))
...
@@ -1061,6 +1066,89 @@ namespace OnlineStore.AutoCountClient
...
@@ -1061,6 +1066,89 @@ namespace OnlineStore.AutoCountClient
LogUtil
.
info
(
Name
+
" 点击:"
+
启用贴标功能
ToolStripMenuItem
.
Text
);
LogUtil
.
info
(
Name
+
" 点击:"
+
启用贴标功能
ToolStripMenuItem
.
Text
);
}
}
private
static
string
Addr_updateDeviceAlarmMsg
=
"http://10.85.199.25/myproject/rest/api/qisda/device/updateDeviceAlarmMsg"
;
List
<
AlarmMsg
>
msglist
=
new
List
<
AlarmMsg
>();
MyWebClient
myWebClient
=
new
MyWebClient
(
1000
);
/// <summary>
/// 异常看板
/// </summary>
/// <param name="msgList"></param>
/// <returns></returns>
public
string
updateDeviceAlarmMsg
(
List
<
AlarmMsg
>
msgList
)
{
if
(
msgList
.
Count
==
0
||
!
CB_lookboard
.
Checked
)
{
return
""
;
}
string
msg
=
""
;
try
{
Dictionary
<
string
,
string
>
paramMap
=
new
Dictionary
<
string
,
string
>();
string
msgListStr
=
JsonHelper
.
SerializeObject
(
msgList
);
paramMap
.
Add
(
"deviceAlarmList"
,
msgListStr
);
string
param
=
GetAddr
(
paramMap
);
//DateTime startTime = DateTime.Now;
if
(
string
.
IsNullOrEmpty
(
myWebClient
.
Headers
[
"Content-Type"
]))
{
myWebClient
.
Headers
.
Add
(
"Content-Type"
,
"application/x-www-form-urlencoded"
);
}
myWebClient
.
UploadStringAsync
(
new
Uri
(
Addr_updateDeviceAlarmMsg
),
"POST"
,
param
);
//string resultStr = HttpHelper.Post(Addr_updateDeviceAlarmMsg, param, 1000);
//LogUtil.debug("updateDeviceAlarmMsg " + FormUtil.GetSpanStr(DateTime.Now - startTime) + " 【" + server + "】【" + resultStr + "】");
/*
RfidData data = JsonHelper.DeserializeJsonToObject<RfidData>(resultStr);
if (data == null)
{
return msg = " updateDeviceAlarmMsg 没有收到服务器反馈";
}
else if (data.code.Equals(0).Equals(false))
{
return msg = " updateDeviceAlarmMsg 【" + server + "】【" + resultStr + "】" + data.msg;
}
*/
return
""
;
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
" updateDeviceAlarmMsg Error: "
+
ex
.
ToString
());
}
return
msg
;
}
private
static
string
GetAddr
(
Dictionary
<
string
,
string
>
paramsMap
)
{
string
path
=
""
;
foreach
(
string
paramName
in
paramsMap
.
Keys
)
{
string
par
=
System
.
Net
.
WebUtility
.
UrlEncode
(
paramsMap
[
paramName
]);
path
+=
paramName
+
"="
+
par
+
"&"
;
}
path
=
path
.
Substring
(
0
,
path
.
Length
-
1
);
return
path
;
}
public
class
AlarmMsg
{
//>>>name : 异常位置名称
public
string
name
=
""
;
//>>>msgKey : 异常信息唯一标识
public
string
msgKey
=
""
;
//>>>msgValue : 异常信息
public
string
msgValue
=
""
;
/// <summary>
/// 异常信息
/// </summary>
/// <param name="name">异常位置名称</param>
/// <param name="key">异常信息唯一标识</param>
/// <param name="value">异常信息</param>
public
AlarmMsg
(
string
name
,
string
key
,
string
value
)
{
this
.
name
=
name
;
this
.
msgKey
=
key
;
this
.
msgValue
=
value
;
}
}
}
}
}
}
RC1266-AutoCountMachine/source/CodeLibrary/CodeLibrary.csproj
查看文件 @
856fa86
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>CodeLibrary</RootNamespace>
<RootNamespace>CodeLibrary</RootNamespace>
<AssemblyName>CodeLibrary</AssemblyName>
<AssemblyName>CodeLibrary</AssemblyName>
<TargetFrameworkVersion>v4.
5
</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.
6.1
</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<FileAlignment>512</FileAlignment>
<TargetFrameworkProfile />
<TargetFrameworkProfile />
</PropertyGroup>
</PropertyGroup>
...
@@ -34,6 +34,9 @@
...
@@ -34,6 +34,9 @@
<Prefer32Bit>false</Prefer32Bit>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
</PropertyGroup>
<ItemGroup>
<ItemGroup>
<Reference Include="Asa.CarerayImage">
<HintPath>..\..\..\..\CarerayImage\CarerayImage\bin\Debug\Asa.CarerayImage.dll</HintPath>
</Reference>
<Reference Include="Basler.Pylon, Version=1.0.0.0, Culture=neutral, PublicKeyToken=e389355f398382ab, processorArchitecture=x86">
<Reference Include="Basler.Pylon, Version=1.0.0.0, Culture=neutral, PublicKeyToken=e389355f398382ab, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\GeneralClassLibrary\CodeLibraryProject\CodeLibrary\bin\Debug\Basler.Pylon.dll</HintPath>
<HintPath>..\..\..\..\GeneralClassLibrary\CodeLibraryProject\CodeLibrary\bin\Debug\Basler.Pylon.dll</HintPath>
...
...
RC1266-AutoCountMachine/source/CodeLibrary/camera/HIK.cs
查看文件 @
856fa86
此文件的差异被折叠,
点击展开。
RC1266-AutoCountMachine/source/CodeLibrary/eyemDecode.cs
查看文件 @
856fa86
...
@@ -8,6 +8,7 @@ using System.Runtime.InteropServices;
...
@@ -8,6 +8,7 @@ using System.Runtime.InteropServices;
using
System.Text
;
using
System.Text
;
using
System.Text.RegularExpressions
;
using
System.Text.RegularExpressions
;
using
System.Threading.Tasks
;
using
System.Threading.Tasks
;
using
static
Asa
.
eyemLib
;
namespace
CodeLibrary
namespace
CodeLibrary
{
{
...
@@ -25,7 +26,7 @@ namespace CodeLibrary
...
@@ -25,7 +26,7 @@ namespace CodeLibrary
try
try
{
{
//创建图像引用
//创建图像引用
EyemImage
eyemImage
;
EyemImage
eyemImage
;
BitmapData
bitmapData
=
null
;
BitmapData
bitmapData
=
null
;
if
(
file
==
null
)
if
(
file
==
null
)
...
@@ -36,12 +37,14 @@ namespace CodeLibrary
...
@@ -36,12 +37,14 @@ namespace CodeLibrary
eyemImage
.
ucpImage
=
bitmapData
.
Scan0
;
eyemImage
.
ucpImage
=
bitmapData
.
Scan0
;
eyemImage
.
iWidth
=
rect
.
Width
;
eyemImage
.
iWidth
=
rect
.
Width
;
eyemImage
.
iHeight
=
rect
.
Height
;
eyemImage
.
iHeight
=
rect
.
Height
;
eyemImage
.
iChannel
=
0
;
//eyemImage.iChannel = 0;
eyemImage
.
iChannels
=
1
;
eyemImage
.
iDepth
=
0
;
}
}
else
{
else
{
eyemImageRead
(
file
,
3
,
out
eyemImage
);
eyemImageRead
(
file
,
-
1
,
out
eyemImage
);
}
}
//创建扫描区域
//创建扫描区域
EyemRect
eyemRect
=
new
EyemRect
();
EyemRect
eyemRect
=
new
EyemRect
();
eyemRect
.
iXs
=
0
;
eyemRect
.
iXs
=
0
;
...
@@ -74,7 +77,7 @@ namespace CodeLibrary
...
@@ -74,7 +77,7 @@ namespace CodeLibrary
if
(
bitmapData
!=
null
)
if
(
bitmapData
!=
null
)
bmap
.
UnlockBits
(
bitmapData
);
bmap
.
UnlockBits
(
bitmapData
);
if
(
file
!=
null
)
if
(
file
!=
null
)
eyemImageFree
(
eyemImage
.
ucp
Image
);
eyemImageFree
(
ref
eyem
Image
);
//bmap.Dispose();
//bmap.Dispose();
}
}
}
}
...
@@ -85,6 +88,7 @@ namespace CodeLibrary
...
@@ -85,6 +88,7 @@ namespace CodeLibrary
//eyemImageFree(eyemImage.ucpImage);
//eyemImageFree(eyemImage.ucpImage);
return
codelist
;
return
codelist
;
}
}
/*
//释放解码句柄
//释放解码句柄
private class DataCodeHandle : SafeHandleZeroOrMinusOneIsInvalid
private class DataCodeHandle : SafeHandleZeroOrMinusOneIsInvalid
{
{
...
@@ -112,7 +116,7 @@ namespace CodeLibrary
...
@@ -112,7 +116,7 @@ namespace CodeLibrary
/// </summary>
/// </summary>
/// <param name="ipImage"></param>
/// <param name="ipImage"></param>
[DllImport("eyemLib.dll", CharSet = CharSet.None, CallingConvention = CallingConvention.Cdecl)]
[DllImport("eyemLib.dll", CharSet = CharSet.None, CallingConvention = CallingConvention.Cdecl)]
private
static
extern
void
eyemImageFree
(
IntPtr
ip
Image
);
private static extern void eyemImageFree(
ref EyemImage eyem
Image);
//释放工具
//释放工具
[DllImport("eyemLib.dll", CharSet = CharSet.None, CallingConvention = CallingConvention.Cdecl)]
[DllImport("eyemLib.dll", CharSet = CharSet.None, CallingConvention = CallingConvention.Cdecl)]
...
@@ -124,7 +128,9 @@ namespace CodeLibrary
...
@@ -124,7 +128,9 @@ namespace CodeLibrary
public IntPtr ucpImage; // 地址
public IntPtr ucpImage; // 地址
public int iWidth; // 图像内存 x 方向大小
public int iWidth; // 图像内存 x 方向大小
public int iHeight; // 图像内存 y 方向大小
public int iHeight; // 图像内存 y 方向大小
public
int
iChannel
;
// 图像通道数
public int iDepth;
public int iChannels; // 图像通道数
}
}
[StructLayout(LayoutKind.Sequential)]
[StructLayout(LayoutKind.Sequential)]
public struct EyemRect
public struct EyemRect
...
@@ -142,7 +148,7 @@ namespace CodeLibrary
...
@@ -142,7 +148,7 @@ namespace CodeLibrary
public int iCenterY; // y坐标
public int iCenterY; // y坐标
public IntPtr hType; // 码类型
public IntPtr hType; // 码类型
public IntPtr hText; // 码内容
public IntPtr hText; // 码内容
}
}
*/
}
}
}
}
RC1266-AutoCountMachine/source/DeviceLibrary/DeviceLibrary.csproj
查看文件 @
856fa86
...
@@ -54,6 +54,9 @@
...
@@ -54,6 +54,9 @@
<Reference Include="Asa.RFID">
<Reference Include="Asa.RFID">
<HintPath>..\..\dll\RFID\Asa.RFID.dll</HintPath>
<HintPath>..\..\dll\RFID\Asa.RFID.dll</HintPath>
</Reference>
</Reference>
<Reference Include="Asa.Signal">
<HintPath>..\..\..\..\到位\到位信号\Asa.Signal.dll</HintPath>
</Reference>
<Reference Include="Client, Version=1.0.0.1, Culture=neutral, processorArchitecture=MSIL">
<Reference Include="Client, Version=1.0.0.1, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\dll\Client.dll</HintPath>
<HintPath>..\..\dll\Client.dll</HintPath>
...
@@ -96,6 +99,7 @@
...
@@ -96,6 +99,7 @@
<Compile Include="bean\BatchMoveBean_Partial.cs" />
<Compile Include="bean\BatchMoveBean_Partial.cs" />
<Compile Include="bean\BatchMoveBean.cs" />
<Compile Include="bean\BatchMoveBean.cs" />
<Compile Include="bean\OutputEquip_Shelf.cs" />
<Compile Include="bean\OutputEquip_Shelf.cs" />
<Compile Include="deviceLibrary\TestPlate.cs" />
<Compile Include="manager\ParamManager.cs" />
<Compile Include="manager\ParamManager.cs" />
<Compile Include="manager\RobotManager.cs" />
<Compile Include="manager\RobotManager.cs" />
<Compile Include="bean\OutputEquip_Partial.cs" />
<Compile Include="bean\OutputEquip_Partial.cs" />
...
...
RC1266-AutoCountMachine/source/DeviceLibrary/bean/BatchMoveBean_Partial.cs
查看文件 @
856fa86
...
@@ -189,11 +189,11 @@ namespace OnlineStore.DeviceLibrary
...
@@ -189,11 +189,11 @@ namespace OnlineStore.DeviceLibrary
{
{
WorkLog
(
"IB09_ScanCode"
);
WorkLog
(
"IB09_ScanCode"
);
MoveInfo
.
MoveParam
=
new
WorkParam
();
MoveInfo
.
MoveParam
=
new
WorkParam
();
MoveInfo
.
MoveParam
.
WareCode
=
CodeManager
.
GetValidCode
(
LastCodeList
);
MoveInfo
.
MoveParam
.
WareCode
=
CodeManager
.
GetValidCode
(
LastCodeList
,
out
string
msgs
);
if
(
String
.
IsNullOrEmpty
(
MoveInfo
.
MoveParam
.
WareCode
))
if
(
String
.
IsNullOrEmpty
(
MoveInfo
.
MoveParam
.
WareCode
))
{
{
MoveInfo
.
MoveParam
.
IsNgReel
=
true
;
MoveInfo
.
MoveParam
.
IsNgReel
=
true
;
MoveInfo
.
MoveParam
.
NgMsg
=
"无有效条码NG"
;
MoveInfo
.
MoveParam
.
NgMsg
=
msgs
;
MoveInfo
.
MoveParam
.
TargetPosType
=
1
;
MoveInfo
.
MoveParam
.
TargetPosType
=
1
;
WorkLog
(
" 无有效条码,从XRay放到NG箱:"
+
MoveInfo
.
MoveParam
.
ToStr
());
WorkLog
(
" 无有效条码,从XRay放到NG箱:"
+
MoveInfo
.
MoveParam
.
ToStr
());
}
}
...
@@ -215,6 +215,8 @@ namespace OnlineStore.DeviceLibrary
...
@@ -215,6 +215,8 @@ namespace OnlineStore.DeviceLibrary
MoveInfo
.
MoveParam
.
NgMsg
=
msg
;
MoveInfo
.
MoveParam
.
NgMsg
=
msg
;
//RobotManager.robot.sQLite.Insert(MoveInfo.MoveParam.WareCode, MoveInfo.MoveParam.PlateW, MoveInfo.MoveParam.PlateH, 0, MoveInfo.MoveParam.NgMsg);
//RobotManager.robot.sQLite.Insert(MoveInfo.MoveParam.WareCode, MoveInfo.MoveParam.PlateW, MoveInfo.MoveParam.PlateH, 0, MoveInfo.MoveParam.NgMsg);
}
}
}
}
else
{
else
{
MoveInfo
.
MoveParam
.
TargetPosType
=
1
;
MoveInfo
.
MoveParam
.
TargetPosType
=
1
;
...
@@ -273,18 +275,25 @@ namespace OnlineStore.DeviceLibrary
...
@@ -273,18 +275,25 @@ namespace OnlineStore.DeviceLibrary
#
endregion
#
endregion
}
}
public
void
GetTrayOK
()
public
int
GetTrayOK
()
{
{
if
(
MoveInfo
.
MoveType
.
Equals
(
RobotMoveType
.
Working
))
if
(
MoveInfo
.
MoveType
.
Equals
(
RobotMoveType
.
Working
))
{
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
IB11_TrayLeave
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
IB11_TrayLeave
);
WorkLog
(
"当前料盘已离开,清理高度,准备开始测高"
);
WorkLog
(
"当前料盘已离开,清理高度,准备开始测高"
);
LastHeight
=
0
;
LastHeight
=
0
;
if
(
SServerManager
.
GetReekinfo
(
MoveInfo
.
MoveParam
.
WareCode
,
out
ReelResult
reelResult
))
{
WorkLog
(
" 获取到高度:"
+
reelResult
.
h
);
return
reelResult
.
h
;
}
}
}
else
else
{
{
LogUtil
.
error
(
Name
+
"当前状态:"
+
MoveInfo
.
MoveType
+
",GetTrayOK暂不处理"
);
LogUtil
.
error
(
Name
+
"当前状态:"
+
MoveInfo
.
MoveType
+
",GetTrayOK暂不处理"
);
}
}
return
0
;
}
}
//internal string LCodeStr = "";
//internal string LCodeStr = "";
//internal string GetCurrCode()
//internal string GetCurrCode()
...
@@ -354,7 +363,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -354,7 +363,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
300
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
300
));
LastCodeList
=
new
List
<
string
>(
NextCodeList
);
LastCodeList
=
new
List
<
string
>(
NextCodeList
);
NextCodeList
=
new
List
<
string
>();
NextCodeList
=
new
List
<
string
>();
MoveInfo
.
MoveParam
.
WareCode
=
CodeManager
.
GetValidCode
(
LastCodeList
);
MoveInfo
.
MoveParam
.
WareCode
=
CodeManager
.
GetValidCode
(
LastCodeList
,
out
_
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
IB10_ScanOK
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
IB10_ScanOK
);
WorkLog
(
"料盘移栽 :使用预扫码【"
+
MoveInfo
.
MoveParam
.
WareCode
+
"】,等待取料机构来取料"
);
WorkLog
(
"料盘移栽 :使用预扫码【"
+
MoveInfo
.
MoveParam
.
WareCode
+
"】,等待取料机构来取料"
);
//WorkLog("料盘移栽 :上料横移取料端");
//WorkLog("料盘移栽 :上料横移取料端");
...
@@ -502,7 +511,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -502,7 +511,7 @@ namespace OnlineStore.DeviceLibrary
}
}
}
}
if
(
LastHeight
<=
8
)
{
LastHeight
=
8
;
}
if
(
LastHeight
<=
8
)
{
LastHeight
=
8
;
}
string
code
=
CodeManager
.
GetValidCode
(
LastCodeList
);
string
code
=
CodeManager
.
GetValidCode
(
LastCodeList
,
out
_
);
string
msg
=
Name
+
" 计算盘高:上升前 ["
+
StartMovePosition
+
"]实时[ "
+
EndMovePosition
+
"]差值["
+
(
EndMovePosition
-
StartMovePosition
)
+
"]系数["
+
AxisChangeValue
+
"] 计算后"
+
buchongStr
+
"["
+
height
+
"]"
+
",归类为【"
+
LastHeight
+
"mm】条码【"
+
code
+
"】"
;
string
msg
=
Name
+
" 计算盘高:上升前 ["
+
StartMovePosition
+
"]实时[ "
+
EndMovePosition
+
"]差值["
+
(
EndMovePosition
-
StartMovePosition
)
+
"]系数["
+
AxisChangeValue
+
"] 计算后"
+
buchongStr
+
"["
+
height
+
"]"
+
",归类为【"
+
LastHeight
+
"mm】条码【"
+
code
+
"】"
;
LogUtil
.
info
(
msg
);
LogUtil
.
info
(
msg
);
return
LastHeight
;
return
LastHeight
;
...
...
RC1266-AutoCountMachine/source/DeviceLibrary/bean/EquipBase.cs
查看文件 @
856fa86
...
@@ -18,7 +18,10 @@ namespace OnlineStore.DeviceLibrary
...
@@ -18,7 +18,10 @@ namespace OnlineStore.DeviceLibrary
public
RobotMoveInfo
SecMoveInfo
=
null
;
public
RobotMoveInfo
SecMoveInfo
=
null
;
public
bool
MoveStop
=
false
;
public
bool
MoveStop
=
false
;
protected
int
TimerMaxSeconds
=
3
;
protected
int
TimerMaxSeconds
=
3
;
/// <summary>
/// 手动报警
/// </summary>
public
bool
NeedAlarm
=
false
;
protected
void
SetAllTimer
(
bool
open
)
protected
void
SetAllTimer
(
bool
open
)
{
{
...
@@ -562,7 +565,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -562,7 +565,7 @@ namespace OnlineStore.DeviceLibrary
{
{
try
try
{
{
DateTime
time
=
DateTime
.
Now
;
//
DateTime time = DateTime.Now;
if
(
runStatus
<=
RobotRunStatus
.
Wait
)
if
(
runStatus
<=
RobotRunStatus
.
Wait
)
{
{
CloseLed
();
CloseLed
();
...
@@ -571,30 +574,25 @@ namespace OnlineStore.DeviceLibrary
...
@@ -571,30 +574,25 @@ namespace OnlineStore.DeviceLibrary
bool
isNeedAlarmLed
=
false
;
bool
isNeedAlarmLed
=
false
;
bool
isInOut
=
false
;
bool
isInOut
=
false
;
bool
yellowMove
=
false
;
bool
yellowMove
=
false
;
if
(
runStatus
.
Equals
(
RobotRunStatus
.
HomeMoving
)
||
runStatus
.
Equals
(
RobotRunStatus
.
Reset
))
{
isNeedAlarmLed
=
NeedAlarm
;
yellowMove
=
true
;
if
(
WarnMsg
.
IndexOf
(
"OS_"
)
>
0
&&
WarnMsg
.
IndexOf
(
"OS_20_ShelfReady"
)>
0
)
}
if
(
isInSuddenDown
||
isNoAirCheck
||
alarmType
>
AlarmType
.
AxisAlarm
)
{
{
isNeedAlarmLed
=
true
;
isNeedAlarmLed
=
true
;
}
}
else
if
(
alarmType
.
Equals
(
AlarmType
.
None
).
Equals
(
false
)
)
if
(
WarnMsg
.
IndexOf
(
"_AxisTrayCheck"
)
>
0
)
{
{
yellowMove
=
true
;
isNeedAlarmLed
=
true
;
}
}
if
(
isNoAirCheck
||
isInSuddenDown
||
alarmType
>
AlarmType
.
AxisAlarm
)
if
(
isNoAirCheck
||
isInSuddenDown
||
alarmType
>
=
AlarmType
.
AxisAlarm
)
{
{
isNeedAlarmLed
=
true
;
isNeedAlarmLed
=
true
;
}
}
else
if
(
alarmType
.
Equals
(
AlarmType
.
None
).
Equals
(
false
))
{
yellowMove
=
true
;
}
if
(
MoveInfo
.
MoveType
.
Equals
(
RobotMoveType
.
Working
)
||
MoveInfo
.
MoveType
.
Equals
(
RobotMoveType
.
Labelling
))
if
(
MoveInfo
.
MoveType
.
Equals
(
RobotMoveType
.
Working
)
||
MoveInfo
.
MoveType
.
Equals
(
RobotMoveType
.
Labelling
))
{
{
isInOut
=
true
;
//
isInOut = true;
}
}
...
@@ -603,37 +601,42 @@ namespace OnlineStore.DeviceLibrary
...
@@ -603,37 +601,42 @@ namespace OnlineStore.DeviceLibrary
if
(
yellowMove
)
if
(
yellowMove
)
{
{
//开机执行中时黄灯闪烁
//开机执行中时黄灯闪烁
if
(
IsDoValue
(
IO_Type
.
AutoRu
n_HddLed
,
IO_VALUE
.
HIGH
))
if
(
IsDoValue
(
IO_Type
.
RunSig
n_HddLed
,
IO_VALUE
.
HIGH
))
{
{
IOMove
(
IO_Type
.
AutoRu
n_HddLed
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
RunSig
n_HddLed
,
IO_VALUE
.
LOW
);
}
}
else
else
{
{
IOMove
(
IO_Type
.
AutoRu
n_HddLed
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
RunSig
n_HddLed
,
IO_VALUE
.
HIGH
);
}
}
}
}
else
if
(
IsDoValue
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
HIGH
))
else
{
{
IOMove
(
IO_Type
.
AutoRu
n_HddLed
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
RunSig
n_HddLed
,
IO_VALUE
.
LOW
);
}
}
//忙碌中,判断是否有移栽在出入库执行,绿灯闪烁
//忙碌中,判断是否有移栽在出入库执行,绿灯闪烁
if
(
isInOut
)
if
(
isInOut
)
{
{
if
(
IsDoValue
(
IO_Type
.
RunSig
n_HddLed
,
IO_VALUE
.
LOW
))
if
(
IsDoValue
(
IO_Type
.
AutoRu
n_HddLed
,
IO_VALUE
.
LOW
))
{
{
IOMove
(
IO_Type
.
RunSig
n_HddLed
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
AutoRu
n_HddLed
,
IO_VALUE
.
HIGH
);
}
}
else
else
{
{
IOMove
(
IO_Type
.
RunSig
n_HddLed
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
AutoRu
n_HddLed
,
IO_VALUE
.
LOW
);
}
}
}
}
else
if
(
IsDoValue
(
IO_Type
.
RunSign_HddLed
,
IO_VALUE
.
LOW
))
else
if
(
isNeedAlarmLed
)
{
CheckAndMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
LOW
);
}
else
{
{
//平常常亮绿灯
//平常常亮绿灯
IOMove
(
IO_Type
.
RunSig
n_HddLed
,
IO_VALUE
.
HIGH
);
CheckAndMove
(
IO_Type
.
AutoRu
n_HddLed
,
IO_VALUE
.
HIGH
);
}
}
//严重报警中 ,红灯闪烁
//严重报警中 ,红灯闪烁
if
(
isNeedAlarmLed
)
if
(
isNeedAlarmLed
)
{
{
...
@@ -646,10 +649,11 @@ namespace OnlineStore.DeviceLibrary
...
@@ -646,10 +649,11 @@ namespace OnlineStore.DeviceLibrary
IOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
}
}
}
}
else
if
(
IsDoValue
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
HIGH
))
else
{
{
IO
Move
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
CheckAnd
Move
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
}
}
if
(
isNeedAlarmLed
&&
RobotManager
.
UseBuzzer
)
if
(
isNeedAlarmLed
&&
RobotManager
.
UseBuzzer
)
{
{
CheckAndMove
(
IO_Type
.
Alarm_Buzzer
,
IO_VALUE
.
HIGH
);
CheckAndMove
(
IO_Type
.
Alarm_Buzzer
,
IO_VALUE
.
HIGH
);
...
@@ -658,13 +662,13 @@ namespace OnlineStore.DeviceLibrary
...
@@ -658,13 +662,13 @@ namespace OnlineStore.DeviceLibrary
{
{
CheckAndMove
(
IO_Type
.
Alarm_Buzzer
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
Alarm_Buzzer
,
IO_VALUE
.
LOW
);
}
}
//Thread.Sleep(900);
}
}
catch
(
Exception
ex
)
catch
(
Exception
ex
)
{
{
LogUtil
.
error
(
Name
+
"灯处理定时器出错:"
,
ex
);
LogUtil
.
error
(
Name
+
"灯处理定时器出错:"
,
ex
);
}
}
Thread
.
Sleep
(
5
);
}
}
...
...
RC1266-AutoCountMachine/source/DeviceLibrary/bean/InputEquip_InStore.cs
查看文件 @
856fa86
...
@@ -115,7 +115,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -115,7 +115,7 @@ namespace OnlineStore.DeviceLibrary
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
IW03_MiddleToP2
))
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
IW03_MiddleToP2
))
{
{
IW04_InoutToP2
();
IW04_InoutToP2
();
NeedAlarm
=
false
;
}
}
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
IW04_ReTry
))
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
IW04_ReTry
))
{
{
...
@@ -159,6 +159,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -159,6 +159,7 @@ namespace OnlineStore.DeviceLibrary
{
{
getretry
=
0
;
getretry
=
0
;
MoveInfo
.
NextMoveStep
(
StepEnum
.
IW08_WaitAxisCheck
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
IW08_WaitAxisCheck
);
NeedAlarm
=
false
;
}
}
else
if
(
MoveInfo
.
IsTimeOut
(
4
))
else
if
(
MoveInfo
.
IsTimeOut
(
4
))
{
{
...
@@ -168,6 +169,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -168,6 +169,7 @@ namespace OnlineStore.DeviceLibrary
WorkLog
(
"取料: 重试失败"
);
WorkLog
(
"取料: 重试失败"
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
IW08_WaitAxisCheck
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
IW08_WaitAxisCheck
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
it
,
IO_VALUE
.
LOW
));
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
it
,
IO_VALUE
.
LOW
));
NeedAlarm
=
true
;
}
}
else
else
{
{
...
@@ -185,15 +187,16 @@ namespace OnlineStore.DeviceLibrary
...
@@ -185,15 +187,16 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
IW08_WaitAxisCheck
))
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
IW08_WaitAxisCheck
))
{
{
NeedAlarm
=
false
;
getretry
=
0
;
getretry
=
0
;
MoveInfo
.
NextMoveStep
(
StepEnum
.
IW11_GetTargetPosition
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
IW11_GetTargetPosition
);
if
(
MoveInfo
.
MoveParam
.
InPosType
.
Equals
(
1
))
if
(
MoveInfo
.
MoveParam
.
InPosType
.
Equals
(
1
))
{
{
LeftBatchMove
.
GetTrayOK
();
MoveInfo
.
MoveParam
.
PlateH
=
LeftBatchMove
.
GetTrayOK
();
}
}
else
else
{
{
RightBatchMove
.
GetTrayOK
();
MoveInfo
.
MoveParam
.
PlateH
=
RightBatchMove
.
GetTrayOK
();
}
}
}
}
...
@@ -316,7 +319,8 @@ namespace OnlineStore.DeviceLibrary
...
@@ -316,7 +319,8 @@ namespace OnlineStore.DeviceLibrary
ClearTimeoutAlarm
(
"测高结束超时"
);
ClearTimeoutAlarm
(
"测高结束超时"
);
//MoveInfo.NextMoveStep(StepEnum.IW10_SaveSize);
//MoveInfo.NextMoveStep(StepEnum.IW10_SaveSize);
MoveInfo
.
NextMoveStep
(
StepEnum
.
IW23_InoutToP3
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
IW23_InoutToP3
);
MoveInfo
.
MoveParam
.
PlateH
=
moveBean
.
LastHeight
;
if
(
MoveInfo
.
MoveParam
.
PlateH
==
0
)
MoveInfo
.
MoveParam
.
PlateH
=
moveBean
.
LastHeight
;
MoveInfo
.
MoveParam
.
PlateW
=
GetWidth
();
MoveInfo
.
MoveParam
.
PlateW
=
GetWidth
();
WorkLog
(
"测高结束, 记录尺寸【"
+
MoveInfo
.
MoveParam
.
PlateW
+
"X"
+
MoveInfo
.
MoveParam
.
PlateH
+
"】,开始下一盘预扫码"
,
1
);
WorkLog
(
"测高结束, 记录尺寸【"
+
MoveInfo
.
MoveParam
.
PlateW
+
"X"
+
MoveInfo
.
MoveParam
.
PlateH
+
"】,开始下一盘预扫码"
,
1
);
...
...
RC1266-AutoCountMachine/source/DeviceLibrary/bean/OutputEquip.cs
查看文件 @
856fa86
...
@@ -159,13 +159,15 @@ namespace OnlineStore.DeviceLibrary
...
@@ -159,13 +159,15 @@ namespace OnlineStore.DeviceLibrary
}
}
public
void
SecMoveReset
()
public
void
SecMoveReset
()
{
{
SecMoveInfo
.
Ne
xtMoveStep
(
StepEnum
.
OLR01_LabelZHome
);
SecMoveInfo
.
Ne
wMove
(
RobotMoveType
.
Reset
,
StepEnum
.
OLR01_LabelZHome
);
RobotManager
.
LastPrintStatus
=
Asa
.
PrintLabel
.
PrinterStatus
.
Unknown
;
RobotManager
.
LastPrintStatus
=
Asa
.
PrintLabel
.
PrinterStatus
.
Unknown
;
SecMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1000
));
SecMoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitTime
(
1000
));
SecWorkLog
(
"贴标Z轴原点返回,标签吸码停止输出,贴标气缸后退"
);
SecWorkLog
(
"贴标Z轴原点返回,标签吸码停止输出,贴标气缸后退"
);
LabelZAxis
.
HomeMove
(
SecMoveInfo
);
LabelZAxis
.
HomeMove
(
SecMoveInfo
);
IOMove
(
IO_Type
.
Nozzle_Work
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
Nozzle_Work
,
IO_VALUE
.
LOW
);
CylinderMove
(
SecMoveInfo
,
IO_Type
.
LablePaste_Forward
,
IO_Type
.
LablePaste_Back
);
CylinderMove
(
SecMoveInfo
,
IO_Type
.
LablePaste_Forward
,
IO_Type
.
LablePaste_Back
);
//SecMoveInfo.moveType = RobotMoveType.Reset;
}
}
protected
override
void
ResetProcess
()
protected
override
void
ResetProcess
()
...
@@ -623,13 +625,18 @@ namespace OnlineStore.DeviceLibrary
...
@@ -623,13 +625,18 @@ namespace OnlineStore.DeviceLibrary
return
;
return
;
}
}
//若BOX和出料都没有在等待Io的过程中则此Io超时异常可能已经处理过
//若BOX和出料都没有在等待Io的过程中则此Io超时异常可能已经处理过
if
(
MoveInfo
.
IsInWait
.
Equals
(
false
)
&&
SecMoveInfo
.
IsInWait
.
Equals
(
false
)&&
ShelfMoveInfo
.
IsInWait
.
Equals
(
false
)
&&
RobotManager
.
LastPrintStatus
!=
Asa
.
PrintLabel
.
PrinterStatus
.
Printing
)
if
(
MoveInfo
.
IsInWait
.
Equals
(
false
)
&&
SecMoveInfo
.
IsInWait
.
Equals
(
false
)
&&
ShelfMoveInfo
.
IsInWait
.
Equals
(
false
)
&&
RobotManager
.
LastPrintStatus
!=
Asa
.
PrintLabel
.
PrinterStatus
.
Printing
)
{
{
LogUtil
.
info
(
Name
+
"清理信号超时报警【"
+
WarnMsg
+
"】 "
);
LogUtil
.
info
(
Name
+
"清理信号超时报警【"
+
WarnMsg
+
"】 "
);
alarmType
=
AlarmType
.
None
;
alarmType
=
AlarmType
.
None
;
SetWarnMsg
(
""
);
SetWarnMsg
(
""
);
NeedAlarm
=
false
;
}
}
}
else
{
NeedAlarm
=
true
;
}
}
else
NeedAlarm
=
false
;
}
}
catch
(
Exception
ex
)
catch
(
Exception
ex
)
{
{
...
@@ -694,7 +701,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -694,7 +701,7 @@ namespace OnlineStore.DeviceLibrary
else
if
(
SecMoveInfo
.
MoveType
.
Equals
(
RobotMoveType
.
Labelling
))
else
if
(
SecMoveInfo
.
MoveType
.
Equals
(
RobotMoveType
.
Labelling
))
{
{
msg
+=
"贴标料盘:"
+
SecMoveInfo
.
MoveParam
.
OutStr
()
+
" \r\n"
;
msg
+=
"贴标料盘:"
+
SecMoveInfo
.
MoveParam
.
OutStr
()
+
" \r\n"
;
}
}
return
msg
;
return
msg
;
}
}
...
...
RC1266-AutoCountMachine/source/DeviceLibrary/bean/OutputEquip_Partial.cs
查看文件 @
856fa86
...
@@ -190,9 +190,11 @@ namespace OnlineStore.DeviceLibrary
...
@@ -190,9 +190,11 @@ namespace OnlineStore.DeviceLibrary
}
}
}
}
bool
saveone
=
false
;
bool
saveone
=
false
;
bool
doubleplate
=
false
;
Task
getPic
=
null
;
Task
getPic
=
null
;
private
void
OT05_GetImage
()
private
void
OT05_GetImage
()
{
{
if
(
MoveInfo
.
MoveParam
.
IsNgReel
)
if
(
MoveInfo
.
MoveParam
.
IsNgReel
)
{
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT07_MoveZToP2
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT07_MoveZToP2
);
...
@@ -213,22 +215,40 @@ namespace OnlineStore.DeviceLibrary
...
@@ -213,22 +215,40 @@ namespace OnlineStore.DeviceLibrary
//var filename = "need";
//var filename = "need";
CodeManager
.
CameraScan
(
Name
,
out
cc
,
saveone
,
Config
.
CameraName
);
CodeManager
.
CameraScan
(
Name
,
out
cc
,
saveone
,
Config
.
CameraName
);
saveone
=
true
;
saveone
=
true
;
Task
.
Delay
(
1000
).
Wait
();
if
(
cc
.
Count
==
0
)
if
(
cc
.
Count
==
0
)
{
Task
.
Delay
(
1000
).
Wait
();
CodeManager
.
CameraScan
(
Name
,
out
cc
,
saveone
,
Config
.
CameraName
);
CodeManager
.
CameraScan
(
Name
,
out
cc
,
saveone
,
Config
.
CameraName
);
if
(
cc
.
Count
>
0
)
}
if
(
cc
.
Count
==
1
)
{
{
MoveInfo
.
MoveParam
.
codePointer
.
X
=
cc
[
0
].
X
;
MoveInfo
.
MoveParam
.
codePointer
.
X
=
cc
[
0
].
X
;
MoveInfo
.
MoveParam
.
codePointer
.
Y
=
cc
[
0
].
Y
;
MoveInfo
.
MoveParam
.
codePointer
.
Y
=
cc
[
0
].
Y
;
WorkLog
(
"取料:识别到二维码位置:X:"
+
MoveInfo
.
MoveParam
.
codePointer
.
X
+
",Y:"
+
MoveInfo
.
MoveParam
.
codePointer
.
Y
,
1
);
WorkLog
(
"取料:识别到二维码位置:X:"
+
MoveInfo
.
MoveParam
.
codePointer
.
X
+
",Y:"
+
MoveInfo
.
MoveParam
.
codePointer
.
Y
,
1
);
}
}
//else if (cc.Count > 1) {
// NeedAlarm = true;
//}
else
else
{
{
WorkLog
(
"取料:2次没有识别到二维码"
,
1
);
WorkLog
(
"取料:2次没有识别到二维码"
,
1
);
}
}
doubleplate
=
false
;
/*bool[] hasplate = TestPlate.TestIt(Config.CameraName);
if (hasplate[0] && hasplate[1])
{
doubleplate = true;
}
else
{
doubleplate = false;
}*/
});
});
}
}
}
}
/// <summary>
/// <summary>
/// 当前料串上的ReelID
/// 当前料串上的ReelID
...
@@ -248,6 +268,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -248,6 +268,7 @@ namespace OnlineStore.DeviceLibrary
if
(
MoveInfo
.
IsStep
(
StepEnum
.
OT01_WaitCheck
))
if
(
MoveInfo
.
IsStep
(
StepEnum
.
OT01_WaitCheck
))
{
{
OT02_MoveZToP1
();
OT02_MoveZToP1
();
if
(
TakeReelRetay
>
0
)
if
(
TakeReelRetay
>
0
)
IOMove
(
IO_Type
.
X_OLine_Run
,
IO_VALUE
.
LOW
);
IOMove
(
IO_Type
.
X_OLine_Run
,
IO_VALUE
.
LOW
);
...
@@ -258,6 +279,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -258,6 +279,7 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
OT03_MoveXToP2
))
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
OT03_MoveXToP2
))
{
{
NeedAlarm
=
false
;
if
(
TakeReelRetay
>
0
)
if
(
TakeReelRetay
>
0
)
{
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT05_GetImage
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT05_GetImage
);
...
@@ -275,6 +297,21 @@ namespace OnlineStore.DeviceLibrary
...
@@ -275,6 +297,21 @@ namespace OnlineStore.DeviceLibrary
return
;
return
;
}
}
getPic
=
null
;
getPic
=
null
;
if
(
TakeReelRetay
==
0
&&
doubleplate
)
{
NeedAlarm
=
true
;
if
(
MoveInfo
.
IsTimeOut
(
3
))
{
WorkLog
(
"取料:发现存在2盘料, 再次拍照检测"
);
WarnMsg
=
MoveInfo
.
Name
+
"发现存在2盘料"
;
Alarm
(
AlarmType
.
IoSingleTimeOut
);
OT05_GetImage
();
}
return
;
}
ClearTimeoutAlarm
(
"发现存在2盘料"
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT07_MoveZToP2
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT07_MoveZToP2
);
WorkLog
(
"取料:取料Z轴到P2 1 "
+
(
TakeReelRetay
>
0
?
TakeReelRetay
-
1
:
0
));
WorkLog
(
"取料:取料Z轴到P2 1 "
+
(
TakeReelRetay
>
0
?
TakeReelRetay
-
1
:
0
));
...
@@ -339,15 +376,29 @@ namespace OnlineStore.DeviceLibrary
...
@@ -339,15 +376,29 @@ namespace OnlineStore.DeviceLibrary
}
}
else
else
{
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT08_3_Wait_Out_TrayCheck
);
CylinderMove
(
MoveInfo
,
IO_Type
.
TakeT_Clamping_Work
,
IO_Type
.
TakeT_Clamping_Relax
);
WarnMsg
=
MoveInfo
.
Name
+
"[取料:取料失败,已重试3次,请手动取走料盘]"
;
WarnMsg
=
MoveInfo
.
Name
+
"[取料:取料失败,已重试3次,请手动取走料盘]"
;
WorkLog
(
WarnMsg
);
WorkLog
(
WarnMsg
);
Alarm
(
AlarmType
.
IoSingleTimeOut
);
CylinderMove
(
MoveInfo
,
IO_Type
.
TakeT_Clamping_Work
,
IO_Type
.
TakeT_Clamping_Relax
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT25_NG_NGBack
);
MoveInfo
.
WaitList
.
Add
(
WaitResultInfo
.
WaitIO
(
IO_Type
.
Out_TrayCheck
,
IO_VALUE
.
LOW
));
}
}
}
}
}
}
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
OT08_3_Wait_Out_TrayCheck
))
{
if
(
IOValue
(
IO_Type
.
Out_TrayCheck
).
Equals
(
IO_VALUE
.
LOW
))
{
ClearTimeoutAlarm
(
"取料失败"
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT25_NG_NGBack
);
NeedAlarm
=
false
;
}
else
{
WarnMsg
=
MoveInfo
.
Name
+
"[取料:取料失败,已重试3次,请手动取走料盘]"
;
//WorkLog(WarnMsg);
Alarm
(
AlarmType
.
IoSingleTimeOut
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT08_3_Wait_Out_TrayCheck
);
NeedAlarm
=
true
;
}
}
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
OT09_MoveZToP1
))
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
OT09_MoveZToP1
))
{
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT11_WaitShelfOk
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT11_WaitShelfOk
);
...
@@ -429,7 +480,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -429,7 +480,7 @@ namespace OnlineStore.DeviceLibrary
if
(
shelfOk
||
debugOk
)
if
(
shelfOk
||
debugOk
)
{
{
ClearTimeoutAlarm
(
"等待出料料串可放料"
);
ClearTimeoutAlarm
(
"等待出料料串可放料"
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT14_
Clamping_Relax
);
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT14_
a_Clamping_Clamp
);
WorkLog
(
"放料:取料气缸放松 "
,
0
);
WorkLog
(
"放料:取料气缸放松 "
,
0
);
CylinderMove
(
MoveInfo
,
IO_Type
.
TakeT_Clamping_Work
,
IO_Type
.
TakeT_Clamping_Relax
);
CylinderMove
(
MoveInfo
,
IO_Type
.
TakeT_Clamping_Work
,
IO_Type
.
TakeT_Clamping_Relax
);
CurrWareCode
=
MoveInfo
.
MoveParam
.
WareCode
;
CurrWareCode
=
MoveInfo
.
MoveParam
.
WareCode
;
...
@@ -442,6 +493,16 @@ namespace OnlineStore.DeviceLibrary
...
@@ -442,6 +493,16 @@ namespace OnlineStore.DeviceLibrary
}
}
CheckStartLabel
();
CheckStartLabel
();
}
}
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
OT14_a_Clamping_Clamp
))
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT14_b_Clamping_Relax
);
CylinderMove
(
MoveInfo
,
IO_Type
.
TakeT_Clamping_Relax
,
IO_Type
.
TakeT_Clamping_Work
);
}
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
OT14_b_Clamping_Relax
))
{
MoveInfo
.
NextMoveStep
(
StepEnum
.
OT14_Clamping_Relax
);
CylinderMove
(
MoveInfo
,
IO_Type
.
TakeT_Clamping_Work
,
IO_Type
.
TakeT_Clamping_Relax
);
}
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
OT14_Clamping_Relax
))
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
OT14_Clamping_Relax
))
{
{
bool
shelfOk
=
ShelfMoveInfo
.
MoveType
.
Equals
(
RobotMoveType
.
ShelfPro
)
&&
ShelfMoveInfo
.
IsStep
(
StepEnum
.
OS_22_WaitTray
);
bool
shelfOk
=
ShelfMoveInfo
.
MoveType
.
Equals
(
RobotMoveType
.
ShelfPro
)
&&
ShelfMoveInfo
.
IsStep
(
StepEnum
.
OS_22_WaitTray
);
...
@@ -519,6 +580,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -519,6 +580,7 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
OT25_NG_NGBack
))
else
if
(
MoveInfo
.
IsStep
(
StepEnum
.
OT25_NG_NGBack
))
{
{
NeedAlarm
=
false
;
TakeReelRetay
=
0
;
TakeReelRetay
=
0
;
TimeSpan
span
=
DateTime
.
Now
-
MoveInfo
.
MoveStartTime
;
TimeSpan
span
=
DateTime
.
Now
-
MoveInfo
.
MoveStartTime
;
TickLog
(
"出口NG,放料完成"
);
TickLog
(
"出口NG,放料完成"
);
...
@@ -568,6 +630,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -568,6 +630,7 @@ namespace OnlineStore.DeviceLibrary
}
}
if
(
SecMoveInfo
.
IsStep
(
StepEnum
.
OL01_Paste_Back
))
if
(
SecMoveInfo
.
IsStep
(
StepEnum
.
OL01_Paste_Back
))
{
{
NeedAlarm
=
false
;
SecMoveInfo
.
NextMoveStep
(
StepEnum
.
OL03_PrintLabel
);
SecMoveInfo
.
NextMoveStep
(
StepEnum
.
OL03_PrintLabel
);
RobotManager
.
LastPrintStatus
=
Asa
.
PrintLabel
.
PrinterStatus
.
Unknown
;
RobotManager
.
LastPrintStatus
=
Asa
.
PrintLabel
.
PrinterStatus
.
Unknown
;
try
try
...
@@ -598,7 +661,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -598,7 +661,7 @@ namespace OnlineStore.DeviceLibrary
else
if
(
SecMoveInfo
.
IsStep
(
StepEnum
.
OL03_PrintLabel
))
else
if
(
SecMoveInfo
.
IsStep
(
StepEnum
.
OL03_PrintLabel
))
{
{
bool
isPrintOk
=
RobotManager
.
LastPrintStatus
.
Equals
(
Asa
.
PrintLabel
.
PrinterStatus
.
Idle
);
bool
isPrintOk
=
RobotManager
.
LastPrintStatus
.
Equals
(
Asa
.
PrintLabel
.
PrinterStatus
.
Idle
);
bool
isTimeOut
=
SecMoveInfo
.
IsTimeOut
(
120
);
bool
isTimeOut
=
SecMoveInfo
.
IsTimeOut
(
120
00
);
if
(
printTask
==
null
||
printTask
.
IsCompleted
)
if
(
printTask
==
null
||
printTask
.
IsCompleted
)
{
{
if
(
isPrintOk
||
isTimeOut
||
(!
NeedPrint
))
if
(
isPrintOk
||
isTimeOut
||
(!
NeedPrint
))
...
@@ -607,23 +670,32 @@ namespace OnlineStore.DeviceLibrary
...
@@ -607,23 +670,32 @@ namespace OnlineStore.DeviceLibrary
SecMoveInfo
.
NextMoveStep
(
StepEnum
.
OL05_TakeBack
);
SecMoveInfo
.
NextMoveStep
(
StepEnum
.
OL05_TakeBack
);
SecWorkLog
(
"贴标: 打印结束["
+
RobotManager
.
LastPrintStatus
+
"]["
+
(
isTimeOut
?
"超时120秒"
:
""
)
+
"], "
);
SecWorkLog
(
"贴标: 打印结束["
+
RobotManager
.
LastPrintStatus
+
"]["
+
(
isTimeOut
?
"超时120秒"
:
""
)
+
"], "
);
//CylinderMove(SecMoveInfo, IO_Type.TakeCode_Forward, IO_Type.TakeCode_Back);
//CylinderMove(SecMoveInfo, IO_Type.TakeCode_Forward, IO_Type.TakeCode_Back);
NeedAlarm
=
false
;
printTask
=
null
;
printTask
=
null
;
SecMoveInfo
.
NextMoveStep
(
StepEnum
.
OL06_ZToP2
);
SecMoveInfo
.
NextMoveStep
(
StepEnum
.
OL06_ZToP2
);
SecWorkLog
(
"贴标: Z轴到取标签点P2"
);
SecWorkLog
(
"贴标: Z轴到取标签点P2"
);
IOMove
(
IO_Type
.
Nozzle_Work
,
IO_VALUE
.
HIGH
);
IOMove
(
IO_Type
.
Nozzle_Work
,
IO_VALUE
.
HIGH
);
LabelZAxis
.
AbsMove
(
SecMoveInfo
,
Config
.
LabelZ_P2
,
Config
.
LabelZ_P2Speed
);
LabelZAxis
.
AbsMove
(
SecMoveInfo
,
Config
.
LabelZ_P2
,
Config
.
LabelZ_P2Speed
);
}
}
else
if
(
MoveInfo
.
IsTimeOut
(
20
))
{
WarnMsg
=
SecMoveInfo
.
Name
+
"["
+
SecMoveInfo
.
MoveStep
+
"]"
+
"等待 打印标签状态完成(OL03_PrintLabel) 超时["
+
FormUtil
.
GetSpanStr
(
SecMoveInfo
.
StepSpan
())
+
"]"
;
LogUtil
.
error
(
WarnMsg
,
SecMoveInfo
.
ErrorLogType
,
SecMoveInfo
.
logSeconds
());
Alarm
(
AlarmType
.
IoSingleTimeOut
);
NeedAlarm
=
true
;
}
}
}
else
if
(
MoveInfo
.
IsTimeOut
(
12
0
))
else
if
(
MoveInfo
.
IsTimeOut
(
6
0
))
{
{
WarnMsg
=
SecMoveInfo
.
Name
+
"["
+
SecMoveInfo
.
MoveStep
+
"]"
+
"等待 打印标签完成(OL03_PrintLabel) 超时["
+
FormUtil
.
GetSpanStr
(
SecMoveInfo
.
StepSpan
())
+
"]"
;
WarnMsg
=
SecMoveInfo
.
Name
+
"["
+
SecMoveInfo
.
MoveStep
+
"]"
+
"等待 打印标签
任务
完成(OL03_PrintLabel) 超时["
+
FormUtil
.
GetSpanStr
(
SecMoveInfo
.
StepSpan
())
+
"]"
;
LogUtil
.
error
(
WarnMsg
,
SecMoveInfo
.
ErrorLogType
,
SecMoveInfo
.
logSeconds
());
LogUtil
.
error
(
WarnMsg
,
SecMoveInfo
.
ErrorLogType
,
SecMoveInfo
.
logSeconds
());
Alarm
(
AlarmType
.
IoSingleTimeOut
);
Alarm
(
AlarmType
.
IoSingleTimeOut
);
NeedAlarm
=
true
;
}
}
}
}
else
if
(
SecMoveInfo
.
IsStep
(
StepEnum
.
OL05_TakeBack
))
else
if
(
SecMoveInfo
.
IsStep
(
StepEnum
.
OL05_TakeBack
))
{
{
NeedAlarm
=
false
;
printTask
=
null
;
printTask
=
null
;
SecMoveInfo
.
NextMoveStep
(
StepEnum
.
OL06_ZToP2
);
SecMoveInfo
.
NextMoveStep
(
StepEnum
.
OL06_ZToP2
);
SecWorkLog
(
"贴标: Z轴到取标签点P2"
);
SecWorkLog
(
"贴标: Z轴到取标签点P2"
);
...
@@ -632,6 +704,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -632,6 +704,7 @@ namespace OnlineStore.DeviceLibrary
}
}
else
if
(
SecMoveInfo
.
IsStep
(
StepEnum
.
OL06_ZToP2
))
else
if
(
SecMoveInfo
.
IsStep
(
StepEnum
.
OL06_ZToP2
))
{
{
SecMoveInfo
.
NextMoveStep
(
StepEnum
.
OL07_Nozzle_Work
);
SecMoveInfo
.
NextMoveStep
(
StepEnum
.
OL07_Nozzle_Work
);
SecWorkLog
(
"贴标: 标签吸盘取码,等待吸盘信号到位 1.5s"
);
SecWorkLog
(
"贴标: 标签吸盘取码,等待吸盘信号到位 1.5s"
);
...
...
RC1266-AutoCountMachine/source/DeviceLibrary/bean/RobotBean.cs
查看文件 @
856fa86
...
@@ -48,6 +48,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -48,6 +48,7 @@ namespace OnlineStore.DeviceLibrary
IsDebug
=
Config
.
IsDebug
.
Equals
(
1
);
IsDebug
=
Config
.
IsDebug
.
Equals
(
1
);
ledProcessTimer
.
Elapsed
+=
LedProcessTimer_Elapsed
;
List
<
string
>
ioList
=
new
List
<
string
>();
List
<
string
>
ioList
=
new
List
<
string
>();
ioList
=
new
List
<
string
>(
DeviceConfig
.
ProIOIpMap
.
Values
);
ioList
=
new
List
<
string
>(
DeviceConfig
.
ProIOIpMap
.
Values
);
...
@@ -82,6 +83,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -82,6 +83,7 @@ namespace OnlineStore.DeviceLibrary
IOManager
.
instance
.
ConnectionIOList
(
ioList
);
IOManager
.
instance
.
ConnectionIOList
(
ioList
);
Thread
.
Sleep
(
3000
);
Thread
.
Sleep
(
3000
);
mainTimer
.
Enabled
=
true
;
mainTimer
.
Enabled
=
true
;
//ledProcessTimer.Enabled = true;
canStart
=
true
;
canStart
=
true
;
AgvClient
.
Init
();
AgvClient
.
Init
();
string
dataFile
=
Application
.
StartupPath
+
ConfigAppSettings
.
GetValue
(
Setting_Init
.
DataPath
);
string
dataFile
=
Application
.
StartupPath
+
ConfigAppSettings
.
GetValue
(
Setting_Init
.
DataPath
);
...
@@ -90,7 +92,128 @@ namespace OnlineStore.DeviceLibrary
...
@@ -90,7 +92,128 @@ namespace OnlineStore.DeviceLibrary
LogUtil
.
info
(
Name
+
"连接【"
+
dataFile
+
"】结果: "
+
result
+
","
+
sQLite
.
ErrInfo
);
LogUtil
.
info
(
Name
+
"连接【"
+
dataFile
+
"】结果: "
+
result
+
","
+
sQLite
.
ErrInfo
);
});
});
}
}
private
void
LedProcessTimer_Elapsed
(
object
sender
,
ElapsedEventArgs
e
)
{
try
{
//DateTime time = DateTime.Now;
if
(
runStatus
<=
RobotRunStatus
.
Wait
)
{
CloseLed
();
return
;
}
bool
isNeedAlarmLed
=
false
;
bool
isInOut
=
false
;
bool
yellowMove
=
true
;
// {inputEquip,XrayBean,outputEquip};
bool
NeedAlarm
=
inputEquip
.
NeedAlarm
||
XrayBean
.
NeedAlarm
||
outputEquip
.
NeedAlarm
;
if
(!
NeedAlarm
)
{
if
(
outputEquip
.
WarnMsg
.
IndexOf
(
"OS_"
)
>
0
)
{
NeedAlarm
=
true
;
}
}
isInOut
=
inputEquip
.
MoveInfo
.
MoveType
==
RobotMoveType
.
Working
||
XrayBean
.
MoveInfo
.
MoveType
==
RobotMoveType
.
Working
||
outputEquip
.
ShelfMoveInfo
.
MoveType
==
RobotMoveType
.
ShelfPro
||
outputEquip
.
MoveInfo
.
MoveType
==
RobotMoveType
.
Working
||
outputEquip
.
SecMoveInfo
.
MoveType
==
RobotMoveType
.
Labelling
;
if
(!
NeedAlarm
)
{
NeedAlarm
=
inputEquip
.
alarmType
>=
AlarmType
.
AxisAlarm
||
XrayBean
.
alarmType
>=
AlarmType
.
AxisAlarm
||
outputEquip
.
alarmType
>=
AlarmType
.
AxisAlarm
;
}
//if (inputEquip.runStatus<3)
//{
// yellowMove = true;
////}
if
(
isNoAirCheck
||
isInSuddenDown
||
NeedAlarm
)
{
isNeedAlarmLed
=
true
;
}
//黄灯
if
(
yellowMove
)
{
//开机执行中时黄灯闪烁
if
(
DOValue
(
IO_Type
.
AutoRun_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
{
IOMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
LOW
);
}
else
{
IOMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
HIGH
);
}
}
else
if
(
DOValue
(
IO_Type
.
AutoRun_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
{
IOMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
LOW
);
}
//忙碌中,判断是否有移栽在出入库执行,绿灯闪烁
if
(
isInOut
)
{
if
(
DOValue
(
IO_Type
.
RunSign_HddLed
).
Equals
(
IO_VALUE
.
LOW
))
{
IOMove
(
IO_Type
.
RunSign_HddLed
,
IO_VALUE
.
HIGH
);
}
else
{
IOMove
(
IO_Type
.
RunSign_HddLed
,
IO_VALUE
.
LOW
);
}
}
else
if
(
DOValue
(
IO_Type
.
RunSign_HddLed
).
Equals
(
IO_VALUE
.
LOW
))
{
//平常常亮绿灯
IOMove
(
IO_Type
.
RunSign_HddLed
,
IO_VALUE
.
HIGH
);
}
//严重报警中 ,红灯闪烁
if
(
isNeedAlarmLed
)
{
if
(
DOValue
(
IO_Type
.
Alarm_HddLed
).
Equals
(
IO_VALUE
.
LOW
))
{
IOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
HIGH
);
}
else
{
IOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
}
}
else
if
(
DOValue
(
IO_Type
.
Alarm_HddLed
).
Equals
(
IO_VALUE
.
HIGH
))
{
IOMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
}
if
(
isNeedAlarmLed
&&
RobotManager
.
UseBuzzer
)
{
CheckAndMove
(
IO_Type
.
Alarm_Buzzer
,
IO_VALUE
.
HIGH
);
}
else
{
CheckAndMove
(
IO_Type
.
Alarm_Buzzer
,
IO_VALUE
.
LOW
);
}
//Thread.Sleep(900);
}
catch
(
Exception
ex
)
{
LogUtil
.
error
(
Name
+
"灯处理定时器出错:"
,
ex
);
}
}
protected
void
CloseLed
()
{
CheckAndMove
(
IO_Type
.
AutoRun_HddLed
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
Alarm_HddLed
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
RunSign_HddLed
,
IO_VALUE
.
LOW
);
CheckAndMove
(
IO_Type
.
Alarm_Buzzer
,
IO_VALUE
.
LOW
);
}
#
endregion
#
endregion
public
string
CanStart
()
public
string
CanStart
()
...
...
RC1266-AutoCountMachine/source/DeviceLibrary/bean/X_RAY_Equip.cs
查看文件 @
856fa86
...
@@ -25,7 +25,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -25,7 +25,7 @@ namespace OnlineStore.DeviceLibrary
public
XRay
xRay
=
null
;
public
XRay
xRay
=
null
;
public
CarerayImage
care
rayImage
=
null
;
public
XrayImage
x
rayImage
=
null
;
public
bool
xRayCanStart
=
false
;
public
bool
xRayCanStart
=
false
;
public
string
LastXRayState
=
"未知"
;
public
string
LastXRayState
=
"未知"
;
...
@@ -35,6 +35,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -35,6 +35,7 @@ namespace OnlineStore.DeviceLibrary
private
int
ResultMinCount
=
-
1
;
private
int
ResultMinCount
=
-
1
;
private
string
path_XRAY
=
Application
.
StartupPath
+
@"\XRAY\"
;
private
string
path_XRAY
=
Application
.
StartupPath
+
@"\XRAY\"
;
private
string
path_XRAY_NGBck
=
Application
.
StartupPath
+
@"\XRAY\NGBck"
;
private
string
path1_tif
=
Application
.
StartupPath
+
@"\XRAY\tif"
;
private
string
path1_tif
=
Application
.
StartupPath
+
@"\XRAY\tif"
;
private
string
path2_out
=
Application
.
StartupPath
+
@"\XRAY\out\"
;
private
string
path2_out
=
Application
.
StartupPath
+
@"\XRAY\out\"
;
//private string path3_area = Application.StartupPath + @"\XRAY\area.txt";
//private string path3_area = Application.StartupPath + @"\XRAY\area.txt";
...
@@ -68,8 +69,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -68,8 +69,9 @@ namespace OnlineStore.DeviceLibrary
{
{
try
try
{
{
carerayImage
=
new
CarerayImage
(
"XRay"
);
xrayImage
=
new
XrayImage
(
"XRay"
,
XrayImage
.
DeviceType
.
CARREY
);
bool
cResult
=
carerayImage
.
Open
();
//xrayImage = new CarerayImage("XRay");
bool
cResult
=
xrayImage
.
Open
();
LogUtil
.
info
(
Name
+
"carerayImage.Open()="
+
cResult
);
LogUtil
.
info
(
Name
+
"carerayImage.Open()="
+
cResult
);
carerayImageError
=
!
cResult
;
carerayImageError
=
!
cResult
;
xRay
=
new
XRay
(
"XRay"
);
xRay
=
new
XRay
(
"XRay"
);
...
@@ -86,13 +88,13 @@ namespace OnlineStore.DeviceLibrary
...
@@ -86,13 +88,13 @@ namespace OnlineStore.DeviceLibrary
LastXRayState
=
"xRay.Open("
+
Config
.
XRay_Port
+
","
+
lastData
+
")="
+
xresult
;
LastXRayState
=
"xRay.Open("
+
Config
.
XRay_Port
+
","
+
lastData
+
")="
+
xresult
;
LogUtil
.
info
(
Name
+
"xRay.Open("
+
Config
.
XRay_Port
+
","
+
lastData
+
")="
+
xresult
);
LogUtil
.
info
(
Name
+
"xRay.Open("
+
Config
.
XRay_Port
+
","
+
lastData
+
")="
+
xresult
);
if
(!
System
.
IO
.
Directory
.
Exists
(
path1_tif
))
if
(!
Directory
.
Exists
(
path1_tif
))
{
{
System
.
IO
.
Directory
.
CreateDirectory
(
path1_tif
);
Directory
.
CreateDirectory
(
path1_tif
);
}
}
if
(!
System
.
IO
.
Directory
.
Exists
(
path2_out
))
if
(!
Directory
.
Exists
(
path2_out
))
{
{
System
.
IO
.
Directory
.
CreateDirectory
(
path2_out
);
Directory
.
CreateDirectory
(
path2_out
);
}
}
ParamManager
.
Init
();
ParamManager
.
Init
();
ResultMinCount
=
ConfigAppSettings
.
GetIntValue
(
Setting_Init
.
ResultMinCount
);
ResultMinCount
=
ConfigAppSettings
.
GetIntValue
(
Setting_Init
.
ResultMinCount
);
...
@@ -117,7 +119,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -117,7 +119,7 @@ namespace OnlineStore.DeviceLibrary
}
}
if
(
xRay
!=
null
)
if
(
xRay
!=
null
)
xRay
.
Close
();
xRay
.
Close
();
care
rayImage
.
Close
();
x
rayImage
.
Close
();
}
}
catch
(
Exception
ex
)
catch
(
Exception
ex
)
{
{
...
...
RC1266-AutoCountMachine/source/DeviceLibrary/bean/X_RAY_Equip_Partial.cs
查看文件 @
856fa86
此文件的差异被折叠,
点击展开。
RC1266-AutoCountMachine/source/DeviceLibrary/deviceLibrary/TestPlate.cs
0 → 100644
查看文件 @
856fa86
using
CodeLibrary
;
using
OnlineStore.Common
;
using
System
;
using
System.Collections.Generic
;
using
System.Drawing
;
using
System.Linq
;
using
System.Runtime.ExceptionServices
;
using
System.Text
;
using
System.Threading.Tasks
;
namespace
OnlineStore.DeviceLibrary
{
public
class
TestPlate
{
private
static
Asa
.
Signal
signal
;
static
string
deviceName
=
"出口相机"
;
static
TestPlate
()
{
string
path1
=
@"backgroundimage.png"
;
signal
=
new
Asa
.
Signal
();
//signal.ExistChanged += Signal_ExistChanged;
bool
rtn
=
signal
.
BgImage
(
path1
);
LogUtil
.
info
(
"出料图像识别背景图加载:"
+
rtn
);
signal
.
RegionAdd
(
new
Asa
.
Signal
.
EyemRegion
()
{
X
=
1773
,
Y
=
1097
,
Width
=
1125
,
Height
=
337
,
Ratio
=
0.2
});
signal
.
RegionAdd
(
new
Asa
.
Signal
.
EyemRegion
()
{
X
=
1773
,
Y
=
1889
,
Width
=
1125
,
Height
=
685
,
Ratio
=
0.2
});
//cameraName = Config.CameraName;
}
[
HandleProcessCorruptedStateExceptions
]
public
static
bool
[]
TestIt
(
string
cameraName
,
bool
needsaveone
=
false
)
{
HalconDotNet
.
HObject
ho_Image
=
null
;
Bitmap
bmp
=
null
;
try
{
ho_Image
=
Camera
.
_cam
.
CaptureOnImage
(
cameraName
,
out
bmp
);
if
(
ho_Image
==
null
)
{
LogUtil
.
error
(
deviceName
+
" 【"
+
cameraName
+
"】取图片失败["
+
Camera
.
_cam
.
ErrInfo
+
"],关闭相机"
);
Camera
.
_cam
.
Close
(
cameraName
);
Task
.
Delay
(
1000
).
Wait
();
ho_Image
=
Camera
.
_cam
.
CaptureOnImage
(
cameraName
,
out
bmp
);
if
(
ho_Image
==
null
)
{
LogUtil
.
error
(
deviceName
+
" 【"
+
cameraName
+
"】第2次取图片失败["
+
Camera
.
_cam
.
ErrInfo
+
"],关闭相机"
);
return
new
bool
[]
{
false
,
false
};
}
}
LogUtil
.
info
(
"开始图像识别料盘"
);
bool
rtn
=
signal
.
Compare
(
bmp
);
if
(
needsaveone
)
{
CodeManager
.
SaveImageToFile
(
"料盘识别"
,
cameraName
,
bmp
);
}
if
(
rtn
)
{
LogUtil
.
error
(
deviceName
+
$
" 图像匹配成功:[0]:{signal.IsExist[0]},[1]:{signal.IsExist[1]}"
);
return
signal
.
IsExist
;
}
else
{
LogUtil
.
error
(
deviceName
+
" 图像匹配失败"
);
return
new
bool
[]
{
false
,
false
};
}
}
catch
(
Exception
e
)
{
LogUtil
.
error
(
deviceName
+
" "
+
e
.
Message
);
}
finally
{
ho_Image
.
Dispose
();
if
(
bmp
!=
null
)
{
bmp
.
Dispose
();
}
}
return
new
bool
[]
{
false
,
false
};
}
}
}
RC1266-AutoCountMachine/source/DeviceLibrary/deviceLibrary/halcon/CodeManager.cs
查看文件 @
856fa86
...
@@ -20,13 +20,14 @@ namespace OnlineStore.DeviceLibrary
...
@@ -20,13 +20,14 @@ namespace OnlineStore.DeviceLibrary
public
static
List
<
string
>
codeTypeList
=
new
List
<
string
>();
public
static
List
<
string
>
codeTypeList
=
new
List
<
string
>();
public
static
List
<
string
>
balserNameList
=
new
List
<
string
>();
public
static
List
<
string
>
balserNameList
=
new
List
<
string
>();
public
static
List
<
string
>
hikNameList
=
new
List
<
string
>();
public
static
List
<
string
>
hikNameList
=
new
List
<
string
>();
private
static
char
spiltChar
=
'#'
;
private
static
char
spiltChar
=
'#'
;
/// <summary>
/// <summary>
/// 初始化摄像机名称和二维码类型
/// 初始化摄像机名称和二维码类型
/// </summary>
/// </summary>
public
static
void
LoadConfig
()
public
static
void
LoadConfig
()
{
{
string
codeStr
=
ConfigAppSettings
.
GetValue
(
Setting_Init
.
CodeType
);
string
codeStr
=
ConfigAppSettings
.
GetValue
(
Setting_Init
.
CodeType
);
codeTypeList
=
new
List
<
string
>();
codeTypeList
=
new
List
<
string
>();
HDLogUtil
.
LogName
=
"RollingLogFileAppender"
;
HDLogUtil
.
LogName
=
"RollingLogFileAppender"
;
...
@@ -158,9 +159,9 @@ namespace OnlineStore.DeviceLibrary
...
@@ -158,9 +159,9 @@ namespace OnlineStore.DeviceLibrary
if
(!
findRightCode
)
if
(!
findRightCode
)
{
{
findRightCode
=
HasRightCode
(
str
);
findRightCode
=
HasRightCode
(
str
);
if
(
findRightCode
)
ccall
.
Add
(
code
);
}
}
if
(
HasRightCode
(
str
)
&&
ccall
.
FindAll
(
x
=>
x
.
CodeStr
==
str
).
Count
()==
0
)
ccall
.
Add
(
code
);
}
}
}
}
...
@@ -185,16 +186,14 @@ namespace OnlineStore.DeviceLibrary
...
@@ -185,16 +186,14 @@ namespace OnlineStore.DeviceLibrary
{
{
codeList
.
Add
(
str
);
codeList
.
Add
(
str
);
r
=
r
+
"##Halcon|"
+
codeType
+
"|"
+
str
;
r
=
r
+
"##Halcon|"
+
codeType
+
"|"
+
str
;
if
(!
findRightCode
)
if
(!
findRightCode
)
{
{
findRightCode
=
HasRightCode
(
str
);
findRightCode
=
HasRightCode
(
str
);
if
(
findRightCode
)
ccall
.
Add
(
c
);
{
nosave
=
false
;
ccall
.
Add
(
c
);
//if (codeType == "QR Code")
nosave
=
false
;
}
}
}
//if (HasRightCode(str) && ccall.FindAll(x => x.CodeStr == str).Count() == 0)
}
}
}
}
}
}
...
@@ -271,7 +270,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -271,7 +270,7 @@ namespace OnlineStore.DeviceLibrary
}
}
return
dire
+
iamgeName
;
return
dire
+
iamgeName
;
}
}
p
rivate
static
void
SaveImageToFile
(
string
deviceName
,
string
cameraName
,
Bitmap
bitmap
)
p
ublic
static
void
SaveImageToFile
(
string
deviceName
,
string
cameraName
,
Bitmap
bitmap
)
{
{
string
date
=
deviceName
.
Trim
().
Replace
(
'_'
,
'-'
)
+
"-"
+
DateTime
.
Now
.
ToString
(
"yyyyMMdd-HHmmss"
)
+
"-"
+
DateTime
.
Now
.
Millisecond
.
ToString
().
PadLeft
(
4
,
'0'
);
string
date
=
deviceName
.
Trim
().
Replace
(
'_'
,
'-'
)
+
"-"
+
DateTime
.
Now
.
ToString
(
"yyyyMMdd-HHmmss"
)
+
"-"
+
DateTime
.
Now
.
Millisecond
.
ToString
().
PadLeft
(
4
,
'0'
);
string
dire
=
@"D:\image\" + deviceName.Trim().Replace('_', '-') + @"
\
" + cameraName.Trim().Replace('_', '-').Replace(':', '-') + @"
\
";
string
dire
=
@"D:\image\" + deviceName.Trim().Replace('_', '-') + @"
\
" + cameraName.Trim().Replace('_', '-').Replace(':', '-') + @"
\
";
...
@@ -374,9 +373,10 @@ namespace OnlineStore.DeviceLibrary
...
@@ -374,9 +373,10 @@ namespace OnlineStore.DeviceLibrary
}
}
return
ReplaceCode
(
code
);
return
ReplaceCode
(
code
);
}
}
public
static
string
GetValidCode
(
List
<
string
>
codeList
)
public
static
string
GetValidCode
(
List
<
string
>
codeList
,
out
string
msg
)
{
{
string
code
=
""
;
string
code
=
""
;
msg
=
""
;
List
<
string
>
targetCode
=
new
List
<
string
>();
List
<
string
>
targetCode
=
new
List
<
string
>();
foreach
(
string
cc
in
codeList
)
foreach
(
string
cc
in
codeList
)
{
{
...
@@ -427,10 +427,12 @@ namespace OnlineStore.DeviceLibrary
...
@@ -427,10 +427,12 @@ namespace OnlineStore.DeviceLibrary
else
if
(
targetCode
.
Count
<=
0
)
else
if
(
targetCode
.
Count
<=
0
)
{
{
LogUtil
.
info
(
"解析条码【"
+
code
+
"】失败:未找到有效条码"
);
LogUtil
.
info
(
"解析条码【"
+
code
+
"】失败:未找到有效条码"
);
msg
=
"无有效条码NG"
;
}
}
else
else
{
{
LogUtil
.
info
(
"解析条码【"
+
code
+
"】失败:有多个("
+
targetCode
.
Count
+
")有效条码"
);
LogUtil
.
info
(
"解析条码【"
+
code
+
"】失败:有多个("
+
targetCode
.
Count
+
")有效条码"
);
msg
=
"有("
+
targetCode
.
Count
+
")有效条码NG"
;
}
}
return
""
;
return
""
;
}
}
...
...
RC1266-AutoCountMachine/source/DeviceLibrary/manager/RobotManager.cs
查看文件 @
856fa86
...
@@ -216,7 +216,6 @@ namespace OnlineStore.DeviceLibrary
...
@@ -216,7 +216,6 @@ namespace OnlineStore.DeviceLibrary
string
labelName
=
ConfigAppSettings
.
GetValue
(
Setting_Init
.
LabelName
);
string
labelName
=
ConfigAppSettings
.
GetValue
(
Setting_Init
.
LabelName
);
PrintBean
.
LoadLabel
(
labelName
);
PrintBean
.
LoadLabel
(
labelName
);
PrintBean
.
Printer
(
PrintName
,
false
);
PrintBean
.
Printer
(
PrintName
,
false
);
LogUtil
.
info
(
"PrintLabel 打印机初始化完成【"
+
labelName
+
"】【"
+
PrintName
+
"】"
);
LogUtil
.
info
(
"PrintLabel 打印机初始化完成【"
+
labelName
+
"】【"
+
PrintName
+
"】"
);
System
.
Drawing
.
Printing
.
PrintDocument
print
=
new
System
.
Drawing
.
Printing
.
PrintDocument
();
System
.
Drawing
.
Printing
.
PrintDocument
print
=
new
System
.
Drawing
.
Printing
.
PrintDocument
();
...
...
RC1266-AutoCountMachine/source/DeviceLibrary/manager/SServerManager.cs
查看文件 @
856fa86
...
@@ -163,6 +163,25 @@ namespace OnlineStore.DeviceLibrary
...
@@ -163,6 +163,25 @@ namespace OnlineStore.DeviceLibrary
{
{
return
!
String
.
IsNullOrEmpty
(
server
);
return
!
String
.
IsNullOrEmpty
(
server
);
}
}
public
static
bool
GetReekinfo
(
string
codeStr
,
out
ReelResult
reelResult
)
{
string
[]
codeArray
=
codeStr
.
Split
(
';'
);
if
(
codeArray
.
Length
!=
2
)
{
reelResult
=
null
;
return
false
;
}
string
resultStr
=
HttpHelper
.
Get
(
"http://10.85.199.25/myproject/rest/api/qisda/device/resolveCode?code="
+
codeArray
[
1
],
Encoding
.
UTF8
,
1000
);
ServerResult
serverResult
=
JsonHelper
.
DeserializeJsonToObject
<
ServerResult
>(
resultStr
);
if
(
serverResult
.
code
==
0
)
{
reelResult
=
serverResult
.
data
;
return
true
;
}
else
{
reelResult
=
null
;
return
false
;
}
}
}
}
// http://10.85.17.233/ESMTCommonInterface/CommonService.asmx/VMICheckRLC?reelID=R014212020051100876&partNum=6C.R0034.1D1
// http://10.85.17.233/ESMTCommonInterface/CommonService.asmx/VMICheckRLC?reelID=R014212020051100876&partNum=6C.R0034.1D1
// {"data":{"IFneed":"需要","iftest":"未测值","component":"","msg":"未获取到测量RLC时间","status":1}}
// {"data":{"IFneed":"需要","iftest":"未测值","component":"","msg":"未获取到测量RLC时间","status":1}}
...
@@ -179,6 +198,19 @@ namespace OnlineStore.DeviceLibrary
...
@@ -179,6 +198,19 @@ namespace OnlineStore.DeviceLibrary
public
string
msg
{
get
;
set
;
}
public
string
msg
{
get
;
set
;
}
public
int
status
{
get
;
set
;
}
public
int
status
{
get
;
set
;
}
}
}
public
class
ServerResult
{
public
int
code
;
public
string
msg
;
public
ReelResult
data
;
}
public
class
ReelResult
{
public
int
qty
;
public
int
w
;
public
int
h
;
public
string
pn
;
}
}
}
RC1266-AutoCountMachine/source/DeviceLibrary/model/MoveStep.cs
查看文件 @
856fa86
...
@@ -584,6 +584,7 @@ namespace OnlineStore.DeviceLibrary
...
@@ -584,6 +584,7 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
/// </summary>
OT08_Clamping_Work
,
OT08_Clamping_Work
,
OT08_2_Wait_Out_TrayCheck
,
OT08_2_Wait_Out_TrayCheck
,
OT08_3_Wait_Out_TrayCheck
,
/// <summary>
/// <summary>
/// 取料: 取料Z轴返回P1
/// 取料: 取料Z轴返回P1
/// </summary>
/// </summary>
...
@@ -605,6 +606,14 @@ namespace OnlineStore.DeviceLibrary
...
@@ -605,6 +606,14 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// <summary>
/// 取料: 取料气缸放松
/// 取料: 取料气缸放松
/// </summary>
/// </summary>
OT14_a_Clamping_Clamp
,
/// <summary>
/// 取料: 取料气缸放松
/// </summary>
OT14_b_Clamping_Relax
,
/// <summary>
/// 取料: 取料气缸放松
/// </summary>
OT14_Clamping_Relax
,
OT14_Clamping_Relax
,
/// <summary>
/// <summary>
/// 取料: 取料Z轴回到P1
/// 取料: 取料Z轴回到P1
...
...
RC1266-AutoCountMachine/source/DeviceLibrary/model/WorkParam.cs
查看文件 @
856fa86
...
@@ -221,15 +221,20 @@ namespace OnlineStore.DeviceLibrary
...
@@ -221,15 +221,20 @@ namespace OnlineStore.DeviceLibrary
string
[]
codeArray
=
WareCode
.
Split
(
';'
);
string
[]
codeArray
=
WareCode
.
Split
(
';'
);
if
(
codeArray
.
Length
==
2
)
if
(
codeArray
.
Length
==
2
)
{
{
//string pnStr = codeArray[0];
pn
=
codeArray
[
0
];
//if (pnStr.Length >= 5)
reald
=
codeArray
[
1
];
//{
}
// pn = pnStr.Substring(0, 2) + pnStr.Substring(pnStr.Length - 3, 3);
return
pn
+
"-"
+
reald
+
timeName
;
//}
}
//else
public
string
GetRawName
()
//{
{
// pn = pnStr;
string
pn
=
""
;
//}
string
reald
=
""
;
string
timeName
=
"-"
+
DateTime
.
Now
.
ToString
(
"yyyyMMddHHmmss"
)
+
".raw"
;
string
[]
codeArray
=
WareCode
.
Split
(
';'
);
if
(
codeArray
.
Length
==
2
)
{
pn
=
codeArray
[
0
];
pn
=
codeArray
[
0
];
reald
=
codeArray
[
1
];
reald
=
codeArray
[
1
];
}
}
...
...
RC1266-AutoCountMachine/source/LoadCVSLibrary/storeConfig/config/AIO_Type.cs
查看文件 @
856fa86
...
@@ -56,11 +56,11 @@ namespace OnlineStore.LoadCSVLibrary
...
@@ -56,11 +56,11 @@ namespace OnlineStore.LoadCSVLibrary
/// </summary>
/// </summary>
public
static
string
R_In_Start
=
"R_In_Start"
;
public
static
string
R_In_Start
=
"R_In_Start"
;
/// <summary>
/// <summary>
/// DO,1,
黄
灯,,,,,,,,,,
/// DO,1,
绿
灯,,,,,,,,,,
/// </summary>
/// </summary>
public
static
string
AutoRun_HddLed
=
"AutoRun_HddLed"
;
public
static
string
AutoRun_HddLed
=
"AutoRun_HddLed"
;
/// <summary>
/// <summary>
/// DO,1,
绿
灯,,,,,,,,,,
/// DO,1,
黄
灯,,,,,,,,,,
/// </summary>
/// </summary>
public
static
string
RunSign_HddLed
=
"RunSign_HddLed"
;
public
static
string
RunSign_HddLed
=
"RunSign_HddLed"
;
/// <summary>
/// <summary>
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论