Commit e85583ea 张东亮

0226

1 个父辈 7dc4d387
......@@ -8,7 +8,7 @@
<add key="App_AutoRun" value="1" />
<add key="App_Title" value="分盘线" />
<!--Server address-->
<add key="http.server" value="http://10.85.160.25/myproject/" />
<add key="http.server" value="http://10.85.162.124/myproject/" />
<!--storeType-->
<add key="store_count" value="1" />
<!--start one store config-->
......@@ -21,7 +21,7 @@
<!--AGV调度服务器地址-->
<add key="AgvServerIp" value="10.85.162.40" />
<!--是否调试状态-->
<add key="IsInDebug" value="1" />
<add key="IsInDebug" value="0" />
<add key ="Agv_Log_Open" value ="1"/>
</appSettings>
<log4net>
......
......@@ -485,6 +485,7 @@
//
// lblWarnMsg
//
this.lblWarnMsg.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.lblWarnMsg.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblWarnMsg.ForeColor = System.Drawing.Color.Red;
this.lblWarnMsg.Location = new System.Drawing.Point(267, 66);
......@@ -495,7 +496,8 @@
//
// panel1
//
this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.panel1.Controls.Add(this.chbMoveStop);
this.panel1.Controls.Add(this.lblInfo);
......@@ -525,7 +527,7 @@
// lblInfo
//
this.lblInfo.AutoSize = true;
this.lblInfo.Location = new System.Drawing.Point(277, 5);
this.lblInfo.Location = new System.Drawing.Point(277, 3);
this.lblInfo.Name = "lblInfo";
this.lblInfo.Size = new System.Drawing.Size(56, 17);
this.lblInfo.TabIndex = 273;
......
类型,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义,SlaveID,
PRO,IO模块对应的DI数量,IO_DILength,10.85.197.124#8,,,,,,,
PRO,模块对应的DO数量,IO_DOLength,10.85.197.124#8,,,,,,,
PRO,IO模块对应的DI数量,IO_DILength,10.85.197.5#8,,,,,,,
PRO,模块对应的DO数量,IO_DOLength,10.85.197.5#8,,,,,,,
PRO,IO模块IP,PRO_AOI_IP_1,10.85.197.4,,,,,,,
PRO,IO模块IP,PRO_AOI_IP_2,10.85.197.124,,,,,,,
PRO,IO模块IP,PRO_AOI_IP_2,10.85.197.5,,,,,,,
,,,,,,,,,,
DI,急停,SuddenStop_BTN,0,PRO_AOI_IP_1,0,急停,X01,DI-01,0,
DI,复位,Reset_BTN,1,PRO_AOI_IP_1,0,复位,X02,DI-02,0,
......
......@@ -31,7 +31,7 @@ namespace OnlineStore.DeviceLibrary
{
read = new ReadAll("TheRFID");
read.Received += Read_Received;
read.Start(13001);
read.Start(13002);
IsOpen = true;
}
catch (Exception ex)
......
......@@ -113,6 +113,7 @@ namespace OnlineStore.DeviceLibrary
IOManager.IOMove(IO_Type.L3_Traverse_Down_SOL, IO_VALUE.HIGH);
AgvClient.SetStatus(Config.L2_AgvName);
AgvClient.SetStatus(Config.L1_AgvName);
AgvClient.SetStatus(Config.L3_AgvName);
mainTimer.Enabled = true;
serverConnectTimer.Enabled = true;
}
......@@ -244,7 +245,7 @@ namespace OnlineStore.DeviceLibrary
InProcess = true;
stopwatch.Restart();
IoCheckProcess();
LedProcess();
if (runStatus >= RunStatus.HomeMoving)
{
try
......@@ -381,7 +382,7 @@ namespace OnlineStore.DeviceLibrary
//StopIOMove(IO_Type.InL_OutStopDown, StopDownMS);
LogUtil.info(" 出料线体出口有料架" + LastOutShelfId + ",呼叫agv小车[" + Config.L2_AgvName + "] [NeedLeave] ");
AgvClient.NeedLeave(Config.L2_AgvName, LastOutShelfId);
AgvClient.NeedLeave(Config.L2_AgvName, "B#");
}
}
}
......@@ -417,7 +418,7 @@ namespace OnlineStore.DeviceLibrary
//StopIOMove(IO_Type.InL_OutStopDown, StopDownMS);
LogUtil.info(" 空料串线体出口有料架" + LastOutShelfId + ",呼叫agv小车[" + Config.L3_AgvName + "] [NeedLeave] ");
AgvClient.NeedLeave(Config.L3_AgvName, LastOutShelfId);
AgvClient.NeedLeave(Config.L3_AgvName, "B#");
}
}
}
......@@ -442,41 +443,37 @@ namespace OnlineStore.DeviceLibrary
}
}
//private void LedProcess()
//{
// try
// {
// if (runStatus >= RunStatus.HomeMoving)
// {
// if (alarmType.Equals(AlarmType.None).Equals(false) && IOManager.IOValue(IO_Type.Alarm_HddLed).Equals(IO_VALUE.LOW))
// {
// IOManager.IOMove(IO_Type.Alarm_HddLed, IO_VALUE.HIGH);
// }
// else if (IOManager.IOValue(IO_Type.Alarm_HddLed).Equals(IO_VALUE.LOW))
// {
// IOManager.IOMove(IO_Type.Alarm_HddLed, IO_VALUE.LOW);
// }
private void LedProcess()
{
try
{
if (runStatus >= RunStatus.HomeMoving)
{
if (alarmType.Equals(AlarmType.None).Equals(false) && IOManager.IOValue(IO_Type.Run_Status_Light).Equals(IO_VALUE.LOW))
{
IOManager.IOMove(IO_Type.Run_Status_Light, IO_VALUE.HIGH);
}
else if (alarmType.Equals(AlarmType.None).Equals(false) && IOManager.IOValue(IO_Type.Run_Status_Light).Equals(IO_VALUE.HIGH))
{
IOManager.IOMove(IO_Type.Run_Status_Light, IO_VALUE.LOW);
}
// if (alarmType.Equals(AlarmType.None))
// {
// if (IOManager.IOValue(IO_Type.Alarm_HddLed).Equals(IO_VALUE.LOW))
// {
// IOManager.IOMove(IO_Type.Alarm_HddLed, IO_VALUE.HIGH);
// }
// else
// {
// IOManager.IOMove(IO_Type.Alarm_HddLed, IO_VALUE.LOW);
// }
// }
// }
// }
// catch (Exception ex)
// {
// LogUtil.error(Name + "灯处理定时器出错:", ex);
// }
//}
if (alarmType.Equals(AlarmType.None))
{
if (IOManager.IOValue(IO_Type.Run_Status_Light).Equals(IO_VALUE.LOW))
{
IOManager.IOMove(IO_Type.Run_Status_Light, IO_VALUE.HIGH);
}
}
}
}
catch (Exception ex)
{
LogUtil.error(Name + "灯处理定时器出错:", ex);
}
}
//private IO_VALUE LastResetValue = IO_VALUE.LOW;
private IO_VALUE LastResetValue = IO_VALUE.LOW;
public DeviceLibrary.bean.RunStepInfo tranverseStep = new bean.RunStepInfo();
public void TranverseProcess()
......@@ -498,28 +495,28 @@ namespace OnlineStore.DeviceLibrary
{
DateTime time = DateTime.Now;
//if (runStatus.Equals(RunStatus.Wait))
//{
// //获取新的Io状态
// IO_VALUE autoSingle = IOManager.IOValue(IO_Type.Reset_BTN);
// if (ConfigAppSettings.GetIntValue(Setting_Init.App_AutoRun).Equals(1))
// {
// if (autoSingle.Equals(IO_VALUE.HIGH) && LastResetValue.Equals(IO_VALUE.LOW))
// {
// //没有启动时收到复位按钮,相当于启动按钮
// LogUtil.info(Name + "没有启动时收到复位按钮,相当于启动按钮,开始调用启动方法!");
// bool result = StartRun();
// if (result.Equals(false))
// {
// LogUtil.error("分盘流水线启动失败,继续等待下次启动!");
// mainTimer.Enabled = true;
// }
// }
// LastResetValue = autoSingle;
// return;
// }
// LastResetValue = autoSingle;
//}
if (runStatus.Equals(RunStatus.Wait))
{
//获取新的Io状态
IO_VALUE autoSingle = IOManager.IOValue(IO_Type.Reset_BTN);
if (ConfigAppSettings.GetIntValue(Setting_Init.App_AutoRun).Equals(1))
{
if (autoSingle.Equals(IO_VALUE.HIGH) && LastResetValue.Equals(IO_VALUE.LOW))
{
//没有启动时收到复位按钮,相当于启动按钮
LogUtil.info(Name + "没有启动时收到复位按钮,相当于启动按钮,开始调用启动方法!");
bool result = StartRun();
if (result.Equals(false))
{
LogUtil.error("分盘流水线启动失败,继续等待下次启动!");
mainTimer.Enabled = true;
}
}
LastResetValue = autoSingle;
return;
}
LastResetValue = autoSingle;
}
//判断急停
if (runStatus >= RunStatus.HomeMoving)
{ //判断急停
......@@ -533,27 +530,27 @@ namespace OnlineStore.DeviceLibrary
Alarm(AlarmType.SuddenStop);
}
}
//else if (IOManager.IOValue(IO_Type.SuddenStop_BTN).Equals(IO_VALUE.HIGH) && IOManager.IOValue(IO_Type.Reset_BTN).Equals(IO_VALUE.HIGH))
//{
// //收到复位信号,若报警直接复位,若不报警且无操作,回到待机点
// if (alarmType.Equals(AlarmType.None) && isInSuddenDown.Equals(false))
// {
// if (MoveInfo.MoveType.Equals(LineMoveType.None))
// {
// LogUtil.info("收到复位信号,当前无报警,暂不复位");
// }
// else
// {
// LogUtil.info("收到复位信号,当前无报警, 在" + MoveInfo.MoveType + "处理中,暂不复位");
// }
// }
// else
// {
// //收到复位信号
// LogUtil.info("收到复位信号,自动复位");
// Reset();
// }
//}
else if (IOManager.IOValue(IO_Type.SuddenStop_BTN).Equals(IO_VALUE.HIGH) && IOManager.IOValue(IO_Type.Reset_BTN).Equals(IO_VALUE.HIGH))
{
//收到复位信号,若报警直接复位,若不报警且无操作,回到待机点
if (alarmType.Equals(AlarmType.None) && isInSuddenDown.Equals(false))
{
if (MoveInfo.MoveType.Equals(LineMoveType.None))
{
LogUtil.info("收到复位信号,当前无报警,暂不复位");
}
else
{
LogUtil.info("收到复位信号,当前无报警, 在" + MoveInfo.MoveType + "处理中,暂不复位");
}
}
else
{
//收到复位信号
LogUtil.info("收到复位信号,自动复位");
Reset();
}
}
}
}
......
......@@ -155,6 +155,36 @@ namespace OnlineStore.DeviceLibrary
SetStatus(id, "", ClientAction.None, ClientLevel.High);
}
}
else if (id.Equals(LineManager.Config.L3_AgvName))
{
string shefId = LineManager.DISTLine.LastOutShelfId;
if (IOManager.IOValue(IO_Type.L3_OutCheck).Equals(IO_VALUE.HIGH))
{
LineManager.DISTLine.UpdateSleep(false);
LineManager.DISTLine.StopIOMove(IO_Type.L3_OutStopDown, 1500);
//agvClient.MayLeave(id);
SetStatus(id, shefId, ClientAction.MayLeave);
LogUtil.info(logName + "下降 L3_OutStopDown , " + shefId);
Task.Factory.StartNew(delegate
{
//两秒后改为离开状态
Thread.Sleep(5000);
LogUtil.info(logName + " ,调用 FinishLeave " + shefId);
SetStatus(id, shefId, ClientAction.FinishLeave);
Thread.Sleep(5000);
LogUtil.info(logName + " ,处理结束 更新状态为None ");
SetStatus(id, "", ClientAction.None);
});
}
else
{
LogUtil.error(logName + " L3_OutCheck 未检测到料架,无法将料架进入AGV");
SetStatus(id, "", ClientAction.None, ClientLevel.High);
}
}
}
private static void AgvClient_Arrive(string id, string rfid)
{
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!