Commit 87d44079 LN

皮带线456需要提前扫码,扫码后缓存,送料逻辑修改

1 个父辈 62da7271
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
</configSections> </configSections>
<appSettings> <appSettings>
<!--是否开机自动启动料仓--> <!--是否开机自动启动料仓-->
<add key="App_AutoRun" value="1" /> <add key="App_AutoRun" value="0" />
<add key="App_Title" value="流水线客户端" /> <add key="App_Title" value="流水线客户端" />
<!--Server address--> <!--Server address-->
<!--<add key="http.server" value="http://localhost/myproject/service/store/emptyPosForPutin"/>--> <!--<add key="http.server" value="http://localhost/myproject/service/store/emptyPosForPutin"/>-->
...@@ -50,7 +50,7 @@ ...@@ -50,7 +50,7 @@
<add key ="OpenRFIDWrite" value ="1"/> <add key ="OpenRFIDWrite" value ="1"/>
<add key="DefaultPWD" value ="123456"/> <add key="DefaultPWD" value ="123456"/>
<!--当前调试的设备ID,分号分割--> <!--当前调试的设备ID,分号分割-->
<add key ="DebugDeviceId" value ="301"/> <add key ="DebugDeviceId" value ="302"/>
<add key ="Server_Log_Open" value ="0"/> <add key ="Server_Log_Open" value ="0"/>
<add key ="CodeCount" value ="3"/> <add key ="CodeCount" value ="3"/>
<add key ="DefaultTrayNum" value ="0"/> <add key ="DefaultTrayNum" value ="0"/>
......
...@@ -351,20 +351,7 @@ namespace OnlineStore.AssemblyLine ...@@ -351,20 +351,7 @@ namespace OnlineStore.AssemblyLine
private void btnSRun_Click(object sender, EventArgs e) private void btnSRun_Click(object sender, EventArgs e)
{ {
LogUtil.info(equipBase.Name + "点击【" + btnSRun.Text + "】 "); LogUtil.info(equipBase.Name + "点击【" + btnSRun.Text + "】 ");
if (btnSRun.Text.Equals("分盘装置电机正转")) equipBean.SeparateLineRun();
{
equipBean.SeparateLineRun();
btnSRun.Text = "分盘装置电机反转";
btnSRun.BackColor = Color.Aqua;
}
else
{
equipBean.SeparateBackRun();
btnSRun.Text = "分盘装置电机正转";
btnSRun.BackColor = Color.SkyBlue;
}
//BtnMove(btnSRun, "分盘装置电机驱动", "分盘装置电机停止", IO_Type.SeparateDevice_Run);
} }
private void btnStrart_Click(object sender, EventArgs e) private void btnStrart_Click(object sender, EventArgs e)
...@@ -446,37 +433,49 @@ namespace OnlineStore.AssemblyLine ...@@ -446,37 +433,49 @@ namespace OnlineStore.AssemblyLine
//判断line2是否停止 //判断line2是否停止
if (equipBase.IOValue(IO_Type.DLine_Run2).Equals(IO_VALUE.LOW)) if (equipBase.IOValue(IO_Type.DLine_Run2).Equals(IO_VALUE.LOW))
{ {
BtnMove(btnNgMove, "NG气缸前进", "NG气缸后退", IO_Type.NGCylinder_After, IO_Type.NGCylinder_Before); BtnMove(btnNgMove, "入库NG气缸前进", "入库NG气缸后退", IO_Type.NGCylinder_After, IO_Type.NGCylinder_Before);
} }
else else
{ {
MessageBox.Show(line2Name+"运转中,NG气缸不能动作"); MessageBox.Show(line2Name+"运转中,入库NG气缸不能动作");
} }
} }
private void button1_Click(object sender, EventArgs e) private void button1_Click(object sender, EventArgs e)
{ {
LogUtil.info(equipBase.Name + "点击【" + button1.Text + "】 "); LogUtil.info(equipBase.Name + "点击【" + button1.Text + "】 ");
equipBean.SeparateStopRun(); equipBean.SeparateStopRun();
btnSRun.BackColor = Color.White;
} }
private void btnScanCylinder_Click(object sender, EventArgs e) private void btnScanCylinder_Click(object sender, EventArgs e)
{ {
LogUtil.info(equipBase.Name + "点击【" + btnScanCylinder.Text + "】 "); if (equipBase.IOValue(IO_Type.DLine_Run3).Equals(IO_VALUE.LOW))
if (btnScanCylinder.Text.Equals("扫码NG气缸前进"))
{ {
equipBean.ScanNgForward(null); LogUtil.info(equipBase.Name + "点击【" + btnScanCylinder.Text + "】 ");
btnScanCylinder.Text = "扫码NG气缸后退"; if (btnScanCylinder.Text.Equals("扫码NG气缸前进"))
btnScanCylinder.BackColor = Color.Aqua; {
} equipBean.ScanNgForward(null);
btnScanCylinder.Text = "扫码NG气缸后退";
btnScanCylinder.BackColor = Color.Aqua;
}
else
{
equipBean.ScanNgBack(null);
btnScanCylinder.Text = "扫码NG气缸前进";
btnScanCylinder.BackColor = Color.SkyBlue;
}
}
else else
{ {
equipBean.ScanNgBack(null); MessageBox.Show(line2Name + "运转中,扫码NG气缸不能动作");
btnScanCylinder.Text = "扫码NG气缸前进";
btnScanCylinder.BackColor = Color.SkyBlue;
} }
} }
private void button2_Click(object sender, EventArgs e)
{
LogUtil.info(equipBase.Name + "点击【" + button2.Text + "】 ");
equipBean.SeparateStopRun();
}
} }
} }
......
...@@ -246,8 +246,10 @@ PRO,0,移栽上下轴流水线取放料详细位置P2,UpDownP2DetialList,0X0=800 ...@@ -246,8 +246,10 @@ PRO,0,移栽上下轴流水线取放料详细位置P2,UpDownP2DetialList,0X0=800
皮带线扫码NG修改,皮带线123NG时转动到接驳台并倒转。 皮带线扫码NG修改,皮带线123NG时转动到接驳台并倒转。
皮带线456扫码提前一个工位,NG时转动到下一个工位并NG气缸推出。 皮带线456扫码提前一个工位,NG时转动到下一个工位并NG气缸推出。
20200305:皮带线逻辑修改:
皮带线456需要提前扫码,扫码后缓存,送料逻辑修改。
皮带线456需要提前扫码,扫码后缓存。
......
...@@ -623,8 +623,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -623,8 +623,8 @@ namespace OnlineStore.DeviceLibrary
//收到复位信号后启动 //收到复位信号后启动
if (isAutoStart && fuweiValue.Equals(IO_VALUE.HIGH) && lastFuwei.Equals(IO_VALUE.LOW)) if (isAutoStart && fuweiValue.Equals(IO_VALUE.HIGH) && lastFuwei.Equals(IO_VALUE.LOW))
{ {
//没有启动时收到复位按钮,相当于启动按钮 //没有启动时收到启动按钮
LogUtil.info( Name + "没有启动时收到复位按钮,相当于启动按钮,开始调用启动方法!"); LogUtil.info( Name + "没有启动时收到启动按钮,开始调用启动方法!");
bool isOk = StartRun(); bool isOk = StartRun();
if (!isOk) if (!isOk)
{ {
......
...@@ -450,7 +450,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -450,7 +450,7 @@ namespace OnlineStore.DeviceLibrary
if (result.Equals("")) if (result.Equals(""))
{ {
if (span.TotalSeconds >= 4 && span.TotalSeconds <= 5) if (span.TotalSeconds >= 4 && span.TotalSeconds <= 5)
{ {
LogUtil.debug(subType + "停止运动:[" + moveDO + "] [" + checkDI + "] 耗时 [" + FormUtil.GetSpanStr(span) + "][" + canWhileCount + "]"); LogUtil.debug(subType + "停止运动:[" + moveDO + "] [" + checkDI + "] 耗时 [" + FormUtil.GetSpanStr(span) + "][" + canWhileCount + "]");
} }
else else
...@@ -464,7 +464,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -464,7 +464,10 @@ namespace OnlineStore.DeviceLibrary
} }
LastEndTime = DateTime.Now; LastEndTime = DateTime.Now;
IOManager.IOMove(moveDO, IO_VALUE.LOW, subType); IOManager.IOMove(moveDO, IO_VALUE.LOW, subType);
turnEnd?.Invoke(result.Equals("")); Task.Factory.StartNew(delegate
{
turnEnd?.Invoke(result.Equals(""));
});
InTurn = false; InTurn = false;
return result; return result;
} }
......
...@@ -145,22 +145,36 @@ namespace OnlineStore.DeviceLibrary ...@@ -145,22 +145,36 @@ namespace OnlineStore.DeviceLibrary
} }
return ""; return "";
} }
public static string GetTraySize(string deviceName, int robotIndex, List<string> codeList, out int outSize) public static string ProcessCodeList(List<string> codeList)
{
string codeStr = "";
List<string> list = new List<string>();
foreach (string str in codeList)
{
if (list.Contains(str.Trim()) || String.IsNullOrEmpty(str.Trim()))
{
continue;
}
codeStr = codeStr + str.Trim() + spiltStr;
}
return codeStr;
}
public static string GetTraySize(string deviceName, int robotIndex, string codeStr, out int outSize)
{ {
outSize = 0; outSize = 0;
string msg = ""; string msg = "";
try try
{ {
string codeStr = ""; //string codeStr = "";
List<string> list = new List<string>(); //List<string> list = new List<string>();
foreach (string str in codeList) //foreach (string str in codeList)
{ //{
if (list.Contains(str.Trim()) || String.IsNullOrEmpty(str.Trim())) // if (list.Contains(str.Trim()) || String.IsNullOrEmpty(str.Trim()))
{ // {
continue; // continue;
} // }
codeStr = codeStr + str.Trim() + spiltStr; // codeStr = codeStr + str.Trim() + spiltStr;
} //}
if (String.IsNullOrEmpty(codeStr)) if (String.IsNullOrEmpty(codeStr))
{ {
return msg = deviceName + "未扫到条码"; return msg = deviceName + "未扫到条码";
......
...@@ -117,7 +117,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -117,7 +117,7 @@ namespace OnlineStore.DeviceLibrary
if (balserNameList.Contains(cameraName)) if (balserNameList.Contains(cameraName))
{ {
bool result = BaslerCamera.Instance.Open(cameraName); bool result = BaslerCamera.Instance.Open(cameraName);
// LogUtil.info("打开相机:" + cameraName + "(" + result + ")"); LogUtil.info("相机【" + cameraName + "】打开:" + result + "");
if (result) if (result)
{ {
BaslerCamera.Instance.GrabOne(); BaslerCamera.Instance.GrabOne();
...@@ -183,20 +183,21 @@ namespace OnlineStore.DeviceLibrary ...@@ -183,20 +183,21 @@ namespace OnlineStore.DeviceLibrary
{ {
continue; continue;
} }
LogUtil.info(" 摄像机【" + cameraName + "】开始获取图片"); LogUtil.info(" 相机【" + cameraName + "】开始打开相机获取图片");
using (Bitmap bitmap = GetCamerImage(cameraName)) using (Bitmap bitmap = GetCamerImage(cameraName))
{ {
if (bitmap == null) if (bitmap == null)
{ {
LogUtil.error(" 摄像机【" + cameraName + "】获取图片失败,关闭相机"); LogUtil.error(" 机【" + cameraName + "】获取图片失败,关闭相机");
CloseCamera(); CloseCamera();
continue; continue;
} }
LogUtil.info(" 【" + cameraName + "】获取图片完成,开始转换图片"); LogUtil.info("相机 【" + cameraName + "】获取图片完成,开始转换图片,并扫码");
System.Threading.Thread.Sleep(1); System.Threading.Thread.Sleep(1);
//转换托盘大概100-150ms,不打印日志
HalconDotNet.HObject ho_Image = HDCodeHelper.Bitmap2HObjectBpp24(bitmap); HalconDotNet.HObject ho_Image = HDCodeHelper.Bitmap2HObjectBpp24(bitmap);
LogUtil.info(" 【" + cameraName + "】转换图片完成,开始扫码"); // LogUtil.info(" 相机【" + cameraName + "】转换图片完成,开始扫码");
List<CodeInfo> cc = new List<CodeInfo>(); List<CodeInfo> cc = new List<CodeInfo>();
string r = ""; string r = "";
foreach (string codeType in codeTypeList) foreach (string codeType in codeTypeList)
...@@ -216,10 +217,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -216,10 +217,10 @@ namespace OnlineStore.DeviceLibrary
codeList.Add(str); codeList.Add(str);
r = r + "##" + str; r = r + "##" + str;
} }
LogUtil.debug(" 【" + cameraName + "】【" + codeType + "】扫码完成:" + r); // LogUtil.debug(" 相机【" + cameraName + "】【" + codeType + "】扫码完成:" + r);
} }
LogUtil.info("【" + cameraName + "】扫码完成:" + r); LogUtil.info("相机【" + cameraName + "】扫码完成:" + r);
ho_Image.Dispose(); ho_Image.Dispose();
bitmap.Dispose(); bitmap.Dispose();
} }
......
...@@ -1040,6 +1040,50 @@ namespace OnlineStore.DeviceLibrary ...@@ -1040,6 +1040,50 @@ namespace OnlineStore.DeviceLibrary
DO_18_SeparateRun = 30218, DO_18_SeparateRun = 30218,
#endregion #endregion
#region 皮带线3送出料盘新处理,增加NG推出气缸后的处理
/// <summary>
/// 送料盘到双层线:NG气缸后退,等待100后处理,
/// </summary>
DON_01_WaitTime = 30401,
/// <summary>
/// 送料盘到双层线:根据二维码从服务器获取料盘尺寸
/// </summary>
DON_03_GetTraySize = 30403,
/// <summary>
/// 送料盘到双层线:上升或下降分盘定位气缸
/// </summary>
DON_04_SUpDownMove = 30404,
/// <summary>
/// 送料盘到双层线:转动皮带线,同时转动分盘装置
/// </summary>
DON_05_LineRun = 30405,
/// <summary>
/// 送料盘到双层线:等待料盘到达分盘装置位置
/// </summary>
DON_07_SeparateCheck = 30407,
/// <summary>
/// 送料盘到双层线:到达后再转动500
/// </summary>
DON_08_CRun = 30408,
/// <summary>
/// 横移NG料:NG气缸前进
/// </summary>
DON_12_NGCylinderForward = 30412,
/// <summary>
/// 横移NG料:NG气缸前进后等待1000ms
/// </summary>
DON_13_NGCylinderWait = 30413,
/// <summary>
/// 横移NG料:NG气缸后退
/// </summary>
DON_14_NGCylinderBack = 30414,
#endregion
#region 皮带线12接收料盘并转动处理 #region 皮带线12接收料盘并转动处理
/// <summary> /// <summary>
/// 皮带线12处理料盘:需要放入料盘,等待入口无料盘 /// 皮带线12处理料盘:需要放入料盘,等待入口无料盘
...@@ -1089,6 +1133,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -1089,6 +1133,8 @@ namespace OnlineStore.DeviceLibrary
DLO_11_ExitNoTray DLO_11_ExitNoTray
#endregion #endregion
#endregion #endregion
} }
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!