Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
RC1250-AssemblyLine
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit a6fb11bc
由
LN
编写于
2022-11-23 09:10:53 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
信号超时报警也需要响蜂鸣器。短皮带线二增加相机检测功能。
1 个父辈
aeef4f9d
显示空白字符变更
内嵌
并排
正在显示
9 个修改的文件
包含
40 行增加
和
6 行删除
source/AssemblyLineClient/FrmDischargeLine.cs
source/AssemblyLineClient/记录.txt
source/DeviceLibrary/DeviceLibrary.csproj
source/DeviceLibrary/LineConfig/Config_DischargeLine_1.csv
source/DeviceLibrary/assemblyLine/LineBean.cs
source/DeviceLibrary/assemblyLine/OutTrayLineBean.cs
source/DeviceLibrary/deviceLibrary/reelCheck/ReelCheckUtil.cs
source/DeviceLibrary/eyemLib.dll
source/DeviceLibrary/mask2.png
source/AssemblyLineClient/FrmDischargeLine.cs
查看文件 @
a6fb11b
...
...
@@ -496,7 +496,7 @@ namespace OnlineStore.AssemblyLine
return
;
}
string
imgName
=
""
;
int
[]
result
=
ReelCheckUtil
.
ReelCheck
(
cameraName
,
out
imgName
);
int
[]
result
=
ReelCheckUtil
.
ReelCheck
(
equipBase
.
DeviceID
,
cameraName
,
out
imgName
);
if
(
result
!=
null
&&
result
.
Length
==
2
)
{
MessageBox
.
Show
(
"相机["
+
cameraName
+
"]检测料盘结果:["
+
result
[
0
]
+
"]["
+
result
[
1
]
+
"],图片:"
+
imgName
,
text
+
"结果"
,
MessageBoxButtons
.
OK
,
MessageBoxIcon
.
Information
);
...
...
source/AssemblyLineClient/记录.txt
查看文件 @
a6fb11b
...
...
@@ -607,3 +607,9 @@ PRO,0,是否存放的大料盘,IsBigTray,1,,,,,
需要修改:
需要关机时,先判断所有横移都无托盘时再关机。
横移先记录状态,需要关机时横移不移托盘,等所有横移都无托盘时关机
20221121修改:
信号超时报警也需要响蜂鸣器。短皮带线二增加相机检测功能。
Config_DischargeLine_1.csv 需要增加一行配置(r_camera_2需要改为为真实相机名称):
PRO,0,短皮带线2监控相机,CameraName_2,r_camera_2,,,,,
\ No newline at end of file
source/DeviceLibrary/DeviceLibrary.csproj
查看文件 @
a6fb11b
...
...
@@ -148,6 +148,9 @@
<Content Include="mask.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="mask2.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="MvCameraControl.Net.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
...
...
source/DeviceLibrary/LineConfig/Config_DischargeLine_1.csv
查看文件 @
a6fb11b
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,,,,
PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,GigE:MV-CE200-10GC (00D76546944),,,,,
PRO,0,短皮带线2监控相机,CameraName_2,r_camera_2,,,,,
,,,,,,,,,
DI,0,出料皮带线体1急停,DLine_SuddenStop,0,PRO_AOI_IP_2,0,出料皮带线体1急停,X021,X021
DI,0,出料皮带线体1复位,DLine_Reset,1,PRO_AOI_IP_2,0,出料皮带线体1复位,X022,X022
...
...
source/DeviceLibrary/assemblyLine/LineBean.cs
查看文件 @
a6fb11b
...
...
@@ -614,7 +614,7 @@ namespace OnlineStore.DeviceLibrary
foreach
(
EquipBase
moveEquip
in
AllEquipMap
.
Values
)
{
if
(
moveEquip
.
isNoAirCheck
||
moveEquip
.
isInSuddenDown
||
moveEquip
.
alarmType
>
LineAlarmType
.
AxisAlarm
)
if
(
moveEquip
.
isNoAirCheck
||
moveEquip
.
isInSuddenDown
||
moveEquip
.
alarmType
>
=
LineAlarmType
.
IoSingleTimeOut
)
{
isNeedAlarmLed
=
true
;
}
...
...
source/DeviceLibrary/assemblyLine/OutTrayLineBean.cs
查看文件 @
a6fb11b
...
...
@@ -336,7 +336,7 @@ namespace OnlineStore.DeviceLibrary
//如果有监控相机
if
(!
cameraName
.
Equals
(
""
))
{
int
[]
results
=
ReelCheckUtil
.
ReelCheck
(
cameraName
,
out
imgName
);
int
[]
results
=
ReelCheckUtil
.
ReelCheck
(
equipBean
.
DeviceID
,
cameraName
,
out
imgName
);
if
(
results
!=
null
&&
results
.
Length
==
2
)
{
exitHasTray
=
(
results
[
0
]
==
1
);
...
...
source/DeviceLibrary/deviceLibrary/reelCheck/ReelCheckUtil.cs
查看文件 @
a6fb11b
...
...
@@ -71,7 +71,7 @@ dMinorStep 步进,默认1.0。
///////////////////使用///////////////////
public
static
int
[]
ReelCheck
(
string
cameraName
,
out
string
imgName
)
public
static
int
[]
ReelCheck
(
int
deviceID
,
string
cameraName
,
out
string
imgName
)
{
imgName
=
""
;
if
(
String
.
IsNullOrEmpty
(
cameraName
))
...
...
@@ -107,9 +107,17 @@ dMinorStep 步进,默认1.0。
//tpHsvModel.dpRangeL = new double[] { 55, 10, 35 }; tpHsvModel.dpRangeU = new double[] { 100, 255, 255 };
//tpHsvModel.dpRangeLExt = new double[] { 0, 0, 0 }; tpHsvModel.dpRangeUExt = new double[] { 0, 0, 0 };
//短皮带线三
tpHsvModel
.
dpRangeL
=
new
double
[]
{
78
,
10
,
60
};
tpHsvModel
.
dpRangeU
=
new
double
[]
{
100
,
255
,
255
};
tpHsvModel
.
dpRangeLExt
=
new
double
[]
{
0
,
0
,
0
};
tpHsvModel
.
dpRangeUExt
=
new
double
[]
{
0
,
0
,
0
};
if
(
deviceID
.
Equals
(
301
))
{
//短皮带线二
tpHsvModel
.
dpRangeL
=
new
double
[]
{
57
,
15
,
0
};
tpHsvModel
.
dpRangeU
=
new
double
[]
{
93
,
255
,
255
};
tpHsvModel
.
dpRangeLExt
=
new
double
[]
{
0
,
0
,
0
};
tpHsvModel
.
dpRangeUExt
=
new
double
[]
{
0
,
0
,
0
};
}
//裁剪区域
EyemRect
tpRoi
=
new
EyemRect
();
tpRoi
.
iXs
=
0
;
tpRoi
.
iYs
=
0
;
...
...
@@ -123,18 +131,34 @@ dMinorStep 步进,默认1.0。
//EyemRect roi2 = new EyemRect();
//roi2.iXs = 900; roi2.iYs = 137; roi2.iWidth = 240; roi2.iHeight = 197;
EyemRect
roi1
=
new
EyemRect
();
roi1
.
iXs
=
470
;
roi1
.
iYs
=
143
;
roi1
.
iWidth
=
411
;
roi1
.
iHeight
=
387
;
EyemRect
roi2
=
new
EyemRect
();
roi1
.
iXs
=
470
;
roi1
.
iYs
=
143
;
roi1
.
iWidth
=
411
;
roi1
.
iHeight
=
387
;
roi2
.
iXs
=
882
;
roi2
.
iYs
=
84
;
roi2
.
iWidth
=
317
;
roi2
.
iHeight
=
251
;
//短皮带线三
if
(
deviceID
.
Equals
(
301
))
{
//短皮带线二
roi1
.
iXs
=
1120
;
roi1
.
iYs
=
737
;
roi1
.
iWidth
=
296
;
roi1
.
iHeight
=
282
;
roi2
.
iXs
=
1405
;
roi2
.
iYs
=
611
;
roi2
.
iWidth
=
236
;
roi2
.
iHeight
=
202
;
}
tpRois
.
Add
(
roi1
);
tpRois
.
Add
(
roi2
);
//转指针
IntPtr
hGlobal
=
eyemStructArray2IntPtr
(
tpRois
.
ToArray
());
//短皮带线三
string
maskName
=
"mask.png"
;
if
(
deviceID
.
Equals
(
301
))
{
//短皮带线二
maskName
=
"mask2.png"
;
}
//加载mask
EyemImage
mask
;
eyemImageRead
(
"mask.png"
,
-
1
,
out
mask
);
eyemImageRead
(
maskName
,
-
1
,
out
mask
);
//检测
int
[]
ipResults
=
new
int
[
tpRois
.
Count
];
...
...
source/DeviceLibrary/eyemLib.dll
查看文件 @
a6fb11b
此文件类型无法预览
source/DeviceLibrary/mask2.png
0 → 100644
查看文件 @
a6fb11b
10.2 KB
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论