Commit a6fb11bc LN

信号超时报警也需要响蜂鸣器。短皮带线二增加相机检测功能。

1 个父辈 aeef4f9d
......@@ -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);
......
......@@ -606,4 +606,10 @@ PRO,0,是否存放的大料盘,IsBigTray,1,,,,,
需要修改:
需要关机时,先判断所有横移都无托盘时再关机。
横移先记录状态,需要关机时横移不移托盘,等所有横移都无托盘时关机
\ No newline at end of file
横移先记录状态,需要关机时横移不移托盘,等所有横移都无托盘时关机
20221121修改:
信号超时报警也需要响蜂鸣器。短皮带线二增加相机检测功能。
Config_DischargeLine_1.csv 需要增加一行配置(r_camera_2需要改为为真实相机名称):
PRO,0,短皮带线2监控相机,CameraName_2,r_camera_2,,,,,
\ No newline at end of file
......@@ -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>
......
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
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
......
......@@ -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;
}
......
......@@ -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);
......
......@@ -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];
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!