Commit 65acfca6 LN

增加与服务器通信接口

1 个父辈 115f1361
正在显示 39 个修改的文件 包含 297 行增加197 行删除
...@@ -283,12 +283,7 @@ ...@@ -283,12 +283,7 @@
this.cmbLineType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.cmbLineType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbLineType.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.cmbLineType.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.cmbLineType.FormattingEnabled = true; this.cmbLineType.FormattingEnabled = true;
this.cmbLineType.Items.AddRange(new object[] {
"皮带线1运转-入口定位测试",
"皮带线2运转-入口定位测试",
"皮带线3运转测试",
"皮带线1运转-出口定位测试",
"皮带线2运转-出口定位测试"});
this.cmbLineType.Location = new System.Drawing.Point(85, 25); this.cmbLineType.Location = new System.Drawing.Point(85, 25);
this.cmbLineType.Name = "cmbLineType"; this.cmbLineType.Name = "cmbLineType";
this.cmbLineType.Size = new System.Drawing.Size(231, 28); this.cmbLineType.Size = new System.Drawing.Size(231, 28);
...@@ -451,7 +446,7 @@ ...@@ -451,7 +446,7 @@
this.btnSRun.Name = "btnSRun"; this.btnSRun.Name = "btnSRun";
this.btnSRun.Size = new System.Drawing.Size(140, 34); this.btnSRun.Size = new System.Drawing.Size(140, 34);
this.btnSRun.TabIndex = 263; this.btnSRun.TabIndex = 263;
this.btnSRun.Text = "分盘装置电机1驱动"; this.btnSRun.Text = "分盘装置电机驱动";
this.btnSRun.UseVisualStyleBackColor = false; this.btnSRun.UseVisualStyleBackColor = false;
this.btnSRun.Click += new System.EventHandler(this.btnSRun_Click); this.btnSRun.Click += new System.EventHandler(this.btnSRun_Click);
// //
......
...@@ -24,6 +24,10 @@ namespace OnlineStore.AssemblyLine ...@@ -24,6 +24,10 @@ namespace OnlineStore.AssemblyLine
{ {
private bool IsLoad = false; private bool IsLoad = false;
private DischargeLine equipBean; private DischargeLine equipBean;
private string line1Name = "皮带线1";
private string line2Name = "皮带线2";
private string line3Name = "皮带线3";
internal FrmDischargeLine(DischargeLine moveEquip) internal FrmDischargeLine(DischargeLine moveEquip)
{ {
equipBase = moveEquip; equipBase = moveEquip;
...@@ -208,10 +212,27 @@ namespace OnlineStore.AssemblyLine ...@@ -208,10 +212,27 @@ namespace OnlineStore.AssemblyLine
private void FrmStoreIOStatus_Load(object sender, EventArgs e) private void FrmStoreIOStatus_Load(object sender, EventArgs e)
{ {
chbDebug.Checked = equipBean.IsDebug; chbDebug.Checked = equipBean.IsDebug;
cmbLineType.SelectedIndex = 2;
lblStoreStatus.Text = KTK_Store.GetRunStr(equipBean.lineStatus, equipBean.runStatus); lblStoreStatus.Text = KTK_Store.GetRunStr(equipBean.lineStatus, equipBean.runStatus);
lblThisSta.Text = equipBean.WarnMsg; lblThisSta.Text = equipBean.WarnMsg;
lblName.Text = equipBean.Name; lblName.Text = equipBean.Name;
if (equipBean.DeviceID.Equals(302))
{
line1Name = "皮带线4";
line2Name = "皮带线5";
line3Name = "皮带线6";
}
btnRun1.Text = line1Name + "运转";
btnRun2.Text = line2Name + "运转";
btnRun3.Text = line3Name + "运转";
btnLine1Test.Text = line1Name + "出库测试";
btnLine2Test.Text = line2Name + "出库测试";
this.cmbLineType.Items.AddRange(new object[] {
line1Name+"运转-入口定位测试",
line2Name+"运转-入口定位测试",
line3Name+"运转测试",
line1Name+"运转-出口定位测试",
line2Name+"运转-出口定位测试"});
cmbLineType.SelectedIndex = 2;
IsLoad = true; IsLoad = true;
} }
...@@ -304,7 +325,7 @@ namespace OnlineStore.AssemblyLine ...@@ -304,7 +325,7 @@ namespace OnlineStore.AssemblyLine
bool result = equipBean.TrayLine1.StartOut(new InOutParam(0, "CodeTest", "1#AC1_1_1", 8, 7)); bool result = equipBean.TrayLine1.StartOut(new InOutParam(0, "CodeTest", "1#AC1_1_1", 8, 7));
if (!result) if (!result)
{ {
MessageBox.Show("皮带线1出库测试失败"); MessageBox.Show(line1Name+"出库测试失败");
} }
} }
private void btnCloseAll_Click(object sender, EventArgs e) private void btnCloseAll_Click(object sender, EventArgs e)
...@@ -327,22 +348,22 @@ namespace OnlineStore.AssemblyLine ...@@ -327,22 +348,22 @@ namespace OnlineStore.AssemblyLine
} }
private void btnRun1_Click(object sender, EventArgs e) private void btnRun1_Click(object sender, EventArgs e)
{ {
BtnMove(btnRun1, "皮带线1运转", "皮带线1停止", IO_Type.DLine_Run1); BtnMove(btnRun1, line1Name+"运转", line1Name+"停止", IO_Type.DLine_Run1);
} }
private void btnRun2_Click(object sender, EventArgs e) private void btnRun2_Click(object sender, EventArgs e)
{ {
BtnMove(btnRun2, "皮带线2运转", "皮带线2停止", IO_Type.DLine_Run2); BtnMove(btnRun2, line2Name+"运转", line2Name+"停止", IO_Type.DLine_Run2);
} }
private void btnRun3_Click(object sender, EventArgs e) private void btnRun3_Click(object sender, EventArgs e)
{ {
BtnMove(btnRun3, "皮带线3运转", "皮带线3停止", IO_Type.DLine_Run3); BtnMove(btnRun3, line3Name+"运转", line3Name+"停止", IO_Type.DLine_Run3);
} }
private void btnSRun_Click(object sender, EventArgs e) private void btnSRun_Click(object sender, EventArgs e)
{ {
BtnMove(btnSRun, "分盘装置电机1驱动", "分盘装置电机1停止", IO_Type.SeparateDevice_Run); BtnMove(btnSRun, "分盘装置电机驱动", "分盘装置电机停止", IO_Type.SeparateDevice_Run);
} }
private void btnStrart_Click(object sender, EventArgs e) private void btnStrart_Click(object sender, EventArgs e)
...@@ -408,7 +429,7 @@ namespace OnlineStore.AssemblyLine ...@@ -408,7 +429,7 @@ namespace OnlineStore.AssemblyLine
bool result = equipBean.TrayLine2.StartOut(new InOutParam(0, "CodeTest", "2#AC2_2_2", 8, 7)); bool result = equipBean.TrayLine2.StartOut(new InOutParam(0, "CodeTest", "2#AC2_2_2", 8, 7));
if (!result) if (!result)
{ {
MessageBox.Show("皮带线2出库测试失败"); MessageBox.Show(line2Name+"出库测试失败");
} }
} }
} }
......
...@@ -249,7 +249,7 @@ namespace OnlineStore.AssemblyLine ...@@ -249,7 +249,7 @@ namespace OnlineStore.AssemblyLine
e.Cancel = true; e.Cancel = true;
HideForm(); HideForm();
} }
} }
private void ExitApp() private void ExitApp()
{ {
...@@ -277,10 +277,10 @@ namespace OnlineStore.AssemblyLine ...@@ -277,10 +277,10 @@ namespace OnlineStore.AssemblyLine
//AIManager.CloseConnect(); //AIManager.CloseConnect();
ACServerManager.CloseAllPort(); ACServerManager.CloseAllPort();
// CodeManager.CloseAllCamera(); // CodeManager.CloseAllCamera();
RFIDManager.Close(); // RFIDManager.Close();
System.Environment.Exit(System.Environment.ExitCode); System.Environment.Exit(System.Environment.ExitCode);
} }
catch(Exception ex) catch (Exception ex)
{ {
LogUtil.error("退出出错:" + ex.ToString()); LogUtil.error("退出出错:" + ex.ToString());
} }
......
...@@ -70,4 +70,23 @@ D2(上料模块出口) ...@@ -70,4 +70,23 @@ D2(上料模块出口)
入料模块先伺服动作,在气缸下降 入料模块先伺服动作,在气缸下降
入料一相机:GigE:MV-CE200-10GC (00D77519052)
入料二相机: GigE:MV-CE200-10GC (00D76546878)
入料三相机:GigE:MV-CE200-10GC (00D77519112)
皮带线1相机:GigE:MV-CE200-10GC (00D76546944)
皮带线2相机:GigE:MV-CE200-10GC (00D76546876)
...@@ -59,6 +59,7 @@ ...@@ -59,6 +59,7 @@
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.Core" /> <Reference Include="System.Core" />
<Reference Include="System.Drawing" /> <Reference Include="System.Drawing" />
<Reference Include="System.Web" />
<Reference Include="System.Windows.Forms" /> <Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml.Linq" /> <Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" /> <Reference Include="System.Data.DataSetExtensions" />
......
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义 类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,, PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,#,,,,, PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,GigE:MV-CE200-10GC (00D76546944),,,,,
,,,,,,,,, ,,,,,,,,,
DI,0,出料皮带线体1急停,DLine_SuddenStop,0,PRO_AOI_IP_2,0,出料皮带线体1急停,X021,X021 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 DI,0,出料皮带线体1复位,DLine_Reset,1,PRO_AOI_IP_2,0,出料皮带线体1复位,X022,X022
......
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义 类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,, PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,#,,,,, PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,GigE:MV-CE200-10GC (00D76546876),,,,,
,,,,,,,,, ,,,,,,,,,
DI,0,出料皮带线体2急停,DLine_SuddenStop,0,PRO_AOI_IP_3,0,出料皮带线体2急停,X041,X041 DI,0,出料皮带线体2急停,DLine_SuddenStop,0,PRO_AOI_IP_3,0,出料皮带线体2急停,X041,X041
DI,0,出料皮带线体2复位,DLine_Reset,1,PRO_AOI_IP_3,0,出料皮带线体2复位,X042,X042 DI,0,出料皮带线体2复位,DLine_Reset,1,PRO_AOI_IP_3,0,出料皮带线体2复位,X042,X042
......
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义 类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,, PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,Name1#Name1,,,,, PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,GigE:MV-CE200-10GC (00D77519052),,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,对应的横移模块,SidesWayNum,1,,,,, PRO,0,对应的横移模块,SidesWayNum,1,,,,,
PRO,0,是否是用来出料,IsCanOut,0,,,,, PRO,0,是否是用来出料,IsCanOut,0,,,,,
...@@ -8,9 +8,9 @@ PRO,0,上料流水线入口AGV小车站号名称,AgvInName,D5,,,,, ...@@ -8,9 +8,9 @@ PRO,0,上料流水线入口AGV小车站号名称,AgvInName,D5,,,,,
PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,D6,,,,, PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,D6,,,,,
,,,,,,,,, ,,,,,,,,,
AXIS,0,轴二提升上料轴,Batch_Axis,1,COM5,0,,, AXIS,0,轴二提升上料轴,Batch_Axis,1,COM5,0,,,
PRO,0,提升上料轴上升待机点 P1,BatchAxisP1,23400000,,,,, PRO,0,提升上料轴上升待机点 P1,BatchAxisP1,6504500,,,,,
PRO,0,提升上料轴下降位置P2,BatchAxisP2,0,,,,, PRO,0,提升上料轴下降位置P2,BatchAxisP2,0,,,,,
PRO,0,提升上料缓慢上升目标位置P3,BatchAxisP3,20930000,,,,, PRO,0,提升上料缓慢上升目标位置P3,BatchAxisP3,5741800,,,,,
PRO,0,提升上料轴目标速度,BatchAxis_TargetSpeed,1500,,,,, PRO,0,提升上料轴目标速度,BatchAxis_TargetSpeed,1500,,,,,
PRO,0,提升上料轴加速度,BatchAxis_AddSpeed,400,,,,, PRO,0,提升上料轴加速度,BatchAxis_AddSpeed,400,,,,,
PRO,0,提升上料轴减速度,BatchAxis_DelSpeed,400,,,,, PRO,0,提升上料轴减速度,BatchAxis_DelSpeed,400,,,,,
...@@ -23,9 +23,9 @@ PRO,0,提升上料轴P3速度,BatchAxis_P3Speed,1000,,,,, ...@@ -23,9 +23,9 @@ PRO,0,提升上料轴P3速度,BatchAxis_P3Speed,1000,,,,,
PRO,0,提升上料轴高度转换系数(1mm对应的脉冲),Height_ChangeValue,19000,,,,, PRO,0,提升上料轴高度转换系数(1mm对应的脉冲),Height_ChangeValue,19000,,,,,
,,,,,,,,, ,,,,,,,,,
AXIS,0,轴一移栽上下轴,UpDown_Axis,2,COM5,0,,, AXIS,0,轴一移栽上下轴,UpDown_Axis,2,COM5,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,, PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,69200,,,,,
PRO,0,移栽上下轴P2移栽机构下降位置,UpDownP2List,0=90000,,,,, PRO,0,移栽上下轴P2移栽机构下降位置,UpDownP2List,0=69200;8=69200;48=29000,,,,,
PRO,0,移栽上下轴P3取料位置,UpDownAxisP3,200000,,,,, PRO,0,移栽上下轴P3取料位置,UpDownAxisP3,293565,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,, PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,, PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,, PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
......
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义 类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,, PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,Name1#Name1,,,,, PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,GigE:MV-CE200-10GC (00D76546878),,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,对应的横移模块,SidesWayNum,0,,,,, PRO,0,对应的横移模块,SidesWayNum,0,,,,,
PRO,0,是否是用来出料,IsCanOut,0,,,,, PRO,0,是否是用来出料,IsCanOut,0,,,,,
...@@ -8,9 +8,9 @@ PRO,0,上料流水线入口AGV小车站号名称,AgvInName,D3,,,,, ...@@ -8,9 +8,9 @@ PRO,0,上料流水线入口AGV小车站号名称,AgvInName,D3,,,,,
PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,D4,,,,, PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,D4,,,,,
,,,,,,,,, ,,,,,,,,,
AXIS,0,轴二提升上料轴,Batch_Axis,3,COM5,0,,, AXIS,0,轴二提升上料轴,Batch_Axis,3,COM5,0,,,
PRO,0,提升上料轴上升待机点 P1,BatchAxisP1,12460000,,,,, PRO,0,提升上料轴上升待机点 P1,BatchAxisP1,6603500,,,,,
PRO,0,提升上料轴下降位置P2,BatchAxisP2,0,,,,, PRO,0,提升上料轴下降位置P2,BatchAxisP2,0,,,,,
PRO,0,提升上料缓慢上升目标位置P3,BatchAxisP3,11420750,,,,, PRO,0,提升上料缓慢上升目标位置P3,BatchAxisP3,6041800,,,,,
PRO,0,提升上料轴目标速度,BatchAxis_TargetSpeed,1500,,,,, PRO,0,提升上料轴目标速度,BatchAxis_TargetSpeed,1500,,,,,
PRO,0,提升上料轴加速度,BatchAxis_AddSpeed,400,,,,, PRO,0,提升上料轴加速度,BatchAxis_AddSpeed,400,,,,,
PRO,0,提升上料轴减速度,BatchAxis_DelSpeed,400,,,,, PRO,0,提升上料轴减速度,BatchAxis_DelSpeed,400,,,,,
...@@ -23,9 +23,9 @@ PRO,0,提升上料轴P3速度,BatchAxis_P3Speed,1000,,,,, ...@@ -23,9 +23,9 @@ PRO,0,提升上料轴P3速度,BatchAxis_P3Speed,1000,,,,,
PRO,0,提升上料轴高度转换系数(1mm对应的脉冲),Height_ChangeValue,19000,,,,, PRO,0,提升上料轴高度转换系数(1mm对应的脉冲),Height_ChangeValue,19000,,,,,
,,,,,,,,, ,,,,,,,,,
AXIS,0,轴一移栽上下轴,UpDown_Axis,4,COM5,0,,, AXIS,0,轴一移栽上下轴,UpDown_Axis,4,COM5,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,, PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,53800,,,,,
PRO,0,移栽上下轴P2移栽机构下降位置,UpDownP2List,0=40000;8=0,,,,, PRO,0,移栽上下轴P2移栽机构下降位置,UpDownP2List,0=-25000;8=90000;48=-23150;12=61900;16=63500;24=34880;32=23300;44=-7700,,,,,
PRO,0,移栽上下轴P3取料位置,UpDownAxisP3,258600,,,,, PRO,0,移栽上下轴P3取料位置,UpDownAxisP3,244000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,, PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,, PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,, PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
......
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义 类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,, PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,,,,
PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,GigE:MV-CE200-10GC (00D77519112),,,,, PRO,0,扫码的相机名称(多个用#分隔),CameraNameList,GigE:MV-CE200-10GC (00D77519112),,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
PRO,0,对应的横移模块,SidesWayNum,2,,,,, PRO,0,对应的横移模块,SidesWayNum,2,,,,,
...@@ -9,7 +9,7 @@ PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,D2,,,,, ...@@ -9,7 +9,7 @@ PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,D2,,,,,
,,,,,,,,, ,,,,,,,,,
AXIS,0,轴二提升上料轴,Batch_Axis,5,COM5,0,,, AXIS,0,轴二提升上料轴,Batch_Axis,5,COM5,0,,,
PRO,0,提升上料轴上升待机点 P1,BatchAxisP1,6488350,,,,, PRO,0,提升上料轴上升待机点 P1,BatchAxisP1,6488350,,,,,
PRO,0,提升上料轴下降位置P2,BatchAxisP2,-34000,,,,, PRO,0,提升上料轴下降位置P2,BatchAxisP2,0,,,,,
PRO,0,提升上料缓慢上升目标位置P3,BatchAxisP3,5893500,,,,, PRO,0,提升上料缓慢上升目标位置P3,BatchAxisP3,5893500,,,,,
PRO,0,提升上料轴目标速度,BatchAxis_TargetSpeed,1500,,,,, PRO,0,提升上料轴目标速度,BatchAxis_TargetSpeed,1500,,,,,
PRO,0,提升上料轴加速度,BatchAxis_AddSpeed,400,,,,, PRO,0,提升上料轴加速度,BatchAxis_AddSpeed,400,,,,,
...@@ -24,7 +24,7 @@ PRO,0,提升上料轴高度转换系数(1mm对应的脉冲),Height_ChangeValue,19000,,,,, ...@@ -24,7 +24,7 @@ PRO,0,提升上料轴高度转换系数(1mm对应的脉冲),Height_ChangeValue,19000,,,,,
,,,,,,,,, ,,,,,,,,,
AXIS,0,轴一移栽上下轴,UpDown_Axis,6,COM5,0,,, AXIS,0,轴一移栽上下轴,UpDown_Axis,6,COM5,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,126100,,,,, PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,126100,,,,,
PRO,0,移栽上下轴P2移栽机构下降位置,UpDownP2List,0=138340;8=138340,,,,, PRO,0,移栽上下轴P2移栽机构下降位置,UpDownP2List,0=138340;8=138340;12=116680;16=116750;24=105400;32=80540;44=55000;48=34800,,,,,
PRO,0,移栽上下轴P3取料位置,UpDownAxisP3,300000,,,,, PRO,0,移栽上下轴P3取料位置,UpDownAxisP3,300000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,, PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,, PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
......
...@@ -8,9 +8,9 @@ PRO,0,上料流水线入口AGV小车站号名称,AgvInName,D7,,,,, ...@@ -8,9 +8,9 @@ PRO,0,上料流水线入口AGV小车站号名称,AgvInName,D7,,,,,
PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,D8,,,,, PRO,0,上料流水线出口AGV小车站号名称,AgvOutName,D8,,,,,
,,,,,,,,, ,,,,,,,,,
AXIS,0,轴二提升上料轴,Batch_Axis,7,COM5,0,,, AXIS,0,轴二提升上料轴,Batch_Axis,7,COM5,0,,,
PRO,0,提升上料轴上升待机点 P1,BatchAxisP1,23400000,,,,, PRO,0,提升上料轴上升待机点 P1,BatchAxisP1,6630000,,,,,
PRO,0,提升上料轴下降位置P2,BatchAxisP2,0,,,,, PRO,0,提升上料轴下降位置P2,BatchAxisP2,0,,,,,
PRO,0,提升上料缓慢上升目标位置P3,BatchAxisP3,20450000,,,,, PRO,0,提升上料缓慢上升目标位置P3,BatchAxisP3,5863000,,,,,
PRO,0,提升上料轴目标速度,BatchAxis_TargetSpeed,1500,,,,, PRO,0,提升上料轴目标速度,BatchAxis_TargetSpeed,1500,,,,,
PRO,0,提升上料轴加速度,BatchAxis_AddSpeed,400,,,,, PRO,0,提升上料轴加速度,BatchAxis_AddSpeed,400,,,,,
PRO,0,提升上料轴减速度,BatchAxis_DelSpeed,400,,,,, PRO,0,提升上料轴减速度,BatchAxis_DelSpeed,400,,,,,
...@@ -23,9 +23,9 @@ PRO,0,提升上料轴P3速度,BatchAxis_P3Speed,2000,,,,, ...@@ -23,9 +23,9 @@ PRO,0,提升上料轴P3速度,BatchAxis_P3Speed,2000,,,,,
PRO,0,提升上料轴高度转换系数(1mm对应的脉冲),Height_ChangeValue,19000,,,,, PRO,0,提升上料轴高度转换系数(1mm对应的脉冲),Height_ChangeValue,19000,,,,,
,,,,,,,,, ,,,,,,,,,
AXIS,0,轴一移栽上下轴,UpDown_Axis,8,COM5,0,,, AXIS,0,轴一移栽上下轴,UpDown_Axis,8,COM5,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,, PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,91500,,,,,
PRO,0,移栽上下轴P2移栽机构下降位置,UpDownP2List,0=155000,,,,, PRO,0,移栽上下轴P2移栽机构下降位置,UpDownP2List,0=91500;24=105160;12=122700;16=121120;32=85510;44=65960;48=37800,,,,,
PRO,0,移栽上下轴P3放料位置,UpDownAxisP3,310000,,,,, PRO,0,移栽上下轴P3放料位置,UpDownAxisP3,315000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,, PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,, PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,, PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
......
...@@ -104,4 +104,3 @@ DO,0,环形线横移4定位下降SOL,SW4_LocationCylinder_Down,12,PRO_AOI_IP_1,0,环形线横 ...@@ -104,4 +104,3 @@ DO,0,环形线横移4定位下降SOL,SW4_LocationCylinder_Down,12,PRO_AOI_IP_1,0,环形线横
,0,,,13,PRO_AOI_IP_1,0,,Y014,Y014 ,0,,,13,PRO_AOI_IP_1,0,,Y014,Y014
,0,,,14,PRO_AOI_IP_1,0,,Y015,Y015 ,0,,,14,PRO_AOI_IP_1,0,,Y015,Y015
,0,,,15,PRO_AOI_IP_1,0,,Y016,Y016 ,0,,,15,PRO_AOI_IP_1,0,,Y016,Y016
,,,,,,,,,
\ No newline at end of file \ No newline at end of file
...@@ -3,9 +3,9 @@ PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,, ...@@ -3,9 +3,9 @@ PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,11,COM5,0,,, AXIS,0,移栽上下轴,UpDown_Axis,11,COM5,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,, PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,-5700,,,,,
PRO,0,移栽上下轴流水线上方位置P2,UpDownP2List,0=80000;,,,,, PRO,0,移栽上下轴流水线上方位置P2,UpDownP2List,0=80000;12=119200;48=28680;8=159300;44=62900;16=121250;24=105460;32=83900,,,,,
PRO,0,移栽上下轴料仓门口位置P3,UpDownP3List,0=90000;,,,,, PRO,0,移栽上下轴料仓门口位置P3,UpDownP3List,0=90000;12=90000;48=90000;8=90000;44=90000;16=90000;24=90000;32=90000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,, PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,, PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,, PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
......
...@@ -3,9 +3,9 @@ PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,, ...@@ -3,9 +3,9 @@ PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,12,COM5,0,,, AXIS,0,移栽上下轴,UpDown_Axis,12,COM5,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,, PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,-5700,,,,,
PRO,0,移栽上下轴流水线上方位置P2,UpDownP2List,0=80000;,,,,, PRO,0,移栽上下轴流水线上方位置P2,UpDownP2List,0=80000;12=136353;16=135900;24=116800;32=99000;44=73100;48=45350,,,,,
PRO,0,移栽上下轴料仓门口位置P3,UpDownP3List,0=90000;,,,,, PRO,0,移栽上下轴料仓门口位置P3,UpDownP3List,0=90000;12=90000;16=90000;24=90000;32=90000;44=90000;48=90000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,, PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,, PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,, PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
......
...@@ -3,9 +3,9 @@ PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,, ...@@ -3,9 +3,9 @@ PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,13,COM5,0,,, AXIS,0,移栽上下轴,UpDown_Axis,13,COM5,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,, PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,-5700,,,,,
PRO,0,移栽上下轴流水线上方位置P2,UpDownP2List,0=80000;,,,,, PRO,0,移栽上下轴流水线上方位置P2,UpDownP2List,0=80000;12=138500;16=137150;24=113980;32=101350;44=77580;48=51130,,,,,
PRO,0,移栽上下轴料仓门口位置P3,UpDownP3List,0=90000;,,,,, PRO,0,移栽上下轴料仓门口位置P3,UpDownP3List,0=90000;12=90000;16=90000;24=90000;32=90000;44=90000;48=90000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,, PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,, PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,, PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
......
...@@ -3,9 +3,9 @@ PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,, ...@@ -3,9 +3,9 @@ PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,14,COM5,0,,, AXIS,0,移栽上下轴,UpDown_Axis,14,COM5,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,, PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,-5700,,,,,
PRO,0,移栽上下轴流水线上方位置P2,UpDownP2List,0=80000;,,,,, PRO,0,移栽上下轴流水线上方位置P2,UpDownP2List,0=80000;12=144800;16=148000;24=123250;32=90890;44=59700,,,,,
PRO,0,移栽上下轴料仓门口位置P3,UpDownP3List,0=90000;,,,,, PRO,0,移栽上下轴料仓门口位置P3,UpDownP3List,0=90000;12=90000;16=90000;24=90000;32=90000;44=90000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,, PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,, PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,, PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
...@@ -14,4 +14,4 @@ PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,, ...@@ -14,4 +14,4 @@ PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,, PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴走到待机点P1速度,UpdownAxis_P1Speed,400,,,,, PRO,0,移栽上下轴走到待机点P1速度,UpdownAxis_P1Speed,400,,,,,
PRO,0,移栽上下轴P2速度,UpdownAxis_P2Speed,300,,,,, PRO,0,移栽上下轴P2速度,UpdownAxis_P2Speed,300,,,,,
PRO,0,移栽上下轴P3速度,UpdownAxis_P3Speed,300,,,,,
\ No newline at end of file \ No newline at end of file
PRO,0,移栽上下轴P3速度,UpdownAxis_P3Speed,300,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义 类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,,,, PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,7,COM2,0,,, AXIS,0,移栽上下轴,UpDown_Axis,7,COM2,0,,,
......
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义 类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,,,, PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,8,COM2,0,,, AXIS,0,移栽上下轴,UpDown_Axis,8,COM2,0,,,
......
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义 类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,,,, PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,17,COM5,0,,, AXIS,0,移栽上下轴,UpDown_Axis,17,COM5,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,, PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,-5700,,,,,
PRO,0,移栽上下轴流水线上方位置P2,UpDownP2List,0=80000;,,,,, PRO,0,移栽上下轴流水线上方位置P2,UpDownP2List,0=80000;12=158500;16=159200;24=140500;32=121500;44=102140;48=73700,,,,,
PRO,0,移栽上下轴料仓门口位置P3,UpDownP3List,0=90000;,,,,, PRO,0,移栽上下轴料仓门口位置P3,UpDownP3List,0=90000;12=90000;16=90000;24=90000;32=90000;44=90000;48=90000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,, PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,, PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,, PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
......
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义 类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,,,, PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,1,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,18,COM5,0,,, AXIS,0,移栽上下轴,UpDown_Axis,18,COM5,0,,,
PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,2000,,,,, PRO,0,移栽上下轴待机点 P1,UpDownAxisP1,-5700,,,,,
PRO,0,移栽上下轴流水线上方位置P2,UpDownP2List,0=80000;,,,,, PRO,0,移栽上下轴流水线上方位置P2,UpDownP2List,0=80000;12=159200;16=159300;24=139900;32=119980;44=98100;48=72100,,,,,
PRO,0,移栽上下轴料仓门口位置P3,UpDownP3List,0=90000;,,,,, PRO,0,移栽上下轴料仓门口位置P3,UpDownP3List,0=90000;12=90000;16=90000;24=90000;32=90000;44=90000;48=90000,,,,,
PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,, PRO,0,移栽上下轴目标速度,UpdownAxis_TargetSpeed,150,,,,,
PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,, PRO,0,移栽上下轴加速度,UpdownAxis_AddSpeed,400,,,,,
PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,, PRO,0,移栽上下轴减速度,UpdownAxis_DelSpeed,400,,,,,
......
...@@ -14,4 +14,4 @@ PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,, ...@@ -14,4 +14,4 @@ PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,, PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴走到待机点P1速度,UpdownAxis_P1Speed,400,,,,, PRO,0,移栽上下轴走到待机点P1速度,UpdownAxis_P1Speed,400,,,,,
PRO,0,移栽上下轴P2速度,UpdownAxis_P2Speed,300,,,,, PRO,0,移栽上下轴P2速度,UpdownAxis_P2Speed,300,,,,,
PRO,0,移栽上下轴P3速度,UpdownAxis_P3Speed,300,,,,,
\ No newline at end of file \ No newline at end of file
PRO,0,移栽上下轴P3速度,UpdownAxis_P3Speed,300,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义 类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,, PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM5,1,,, AXIS,0,移栽上下轴,UpDown_Axis,1,COM5,1,,,
......
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义 类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,, PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM5,1,,, AXIS,0,移栽上下轴,UpDown_Axis,1,COM5,1,,,
...@@ -14,4 +14,4 @@ PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,, ...@@ -14,4 +14,4 @@ PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,, PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴走到待机点P1速度,UpdownAxis_P1Speed,400,,,,, PRO,0,移栽上下轴走到待机点P1速度,UpdownAxis_P1Speed,400,,,,,
PRO,0,移栽上下轴P2速度,UpdownAxis_P2Speed,300,,,,, PRO,0,移栽上下轴P2速度,UpdownAxis_P2Speed,300,,,,,
PRO,0,移栽上下轴P3速度,UpdownAxis_P3Speed,300,,,,,
\ No newline at end of file \ No newline at end of file
PRO,0,移栽上下轴P3速度,UpdownAxis_P3Speed,300,,,,,
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义 类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,, PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM5,1,,, AXIS,0,移栽上下轴,UpDown_Axis,1,COM5,1,,,
......
类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义 类型,分类编号,说明,名称,属性值,设备名称,默认值,描述,电器定义,代码定义
PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,,,, PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,,,,
,,,,,,,,, ,,,,,,,,,
PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,, PRO,0,移栽上下运动是否使用伺服,UpDownUseAxis,0,,,,,
AXIS,0,移栽上下轴,UpDown_Axis,1,COM5,1,,, AXIS,0,移栽上下轴,UpDown_Axis,1,COM5,1,,,
......
...@@ -91,4 +91,4 @@ DO,1000,环形线横移4阻挡下降SOL,SW4_StopDown,4,PRO_AOI_IP_36,0,出料4阻挡1下降SOL, ...@@ -91,4 +91,4 @@ DO,1000,环形线横移4阻挡下降SOL,SW4_StopDown,4,PRO_AOI_IP_36,0,出料4阻挡1下降SOL,
,,,,,,,,, ,,,,,,,,,
DO,1000,环形线横移4顶升上升SOL,SW4_TopCylinder_Up,6,PRO_AOI_IP_36,0,环形线横移4顶升上升SOL,Y557,Y557 DO,1000,环形线横移4顶升上升SOL,SW4_TopCylinder_Up,6,PRO_AOI_IP_36,0,环形线横移4顶升上升SOL,Y557,Y557
DO,1000,环形线横移4顶升下降SOL,SW4_TopCylinder_Down,7,PRO_AOI_IP_36,0,环形线横移4顶升下降SOL,Y558,Y558 DO,1000,环形线横移4顶升下降SOL,SW4_TopCylinder_Down,7,PRO_AOI_IP_36,0,环形线横移4顶升下降SOL,Y558,Y558
,,,,,,,,,
\ No newline at end of file \ No newline at end of file
,,,,,,,,,
...@@ -14,4 +14,4 @@ PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,, ...@@ -14,4 +14,4 @@ PRO,0,移栽上下轴原点高速,UpdownAxis_HomeHighSpeed,200,,,,,
PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,, PRO,0,移栽上下轴原点加速度,UpdownAxis_HomeAddSpeed,200,,,,,
PRO,0,移栽上下轴走到待机点P1速度,UpdownAxis_P1Speed,400,,,,, PRO,0,移栽上下轴走到待机点P1速度,UpdownAxis_P1Speed,400,,,,,
PRO,0,移栽上下轴P2速度,UpdownAxis_P2Speed,300,,,,, PRO,0,移栽上下轴P2速度,UpdownAxis_P2Speed,300,,,,,
PRO,0,移栽上下轴P3速度,UpdownAxis_P3Speed,300,,,,,
\ No newline at end of file \ No newline at end of file
PRO,0,移栽上下轴P3速度,UpdownAxis_P3Speed,300,,,,,
...@@ -80,7 +80,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -80,7 +80,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(LineMoveStep.DO_01_WaitTime); MoveInfo.NextMoveStep(LineMoveStep.DO_01_WaitTime);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000)); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
LastCodeList = new List<string>(); LastCodeList = new List<string>();
LastHeight = 0; // LastHeight = 0;
LastWidth = 0; LastWidth = 0;
return true; return true;
} }
...@@ -91,7 +91,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -91,7 +91,7 @@ namespace OnlineStore.DeviceLibrary
} }
} }
private List<string> LastCodeList = new List<string>(); private List<string> LastCodeList = new List<string>();
private int LastHeight = 0; // private int LastHeight = 0;
private int LastWidth = 0; private int LastWidth = 0;
protected override void OutStoreProcess() protected override void OutStoreProcess()
{ {
...@@ -145,27 +145,33 @@ namespace OnlineStore.DeviceLibrary ...@@ -145,27 +145,33 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_02_ScanCode)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_02_ScanCode))
{ {
MoveInfo.NextMoveStep(LineMoveStep.DO_03_GetTraySize); MoveInfo.NextMoveStep(LineMoveStep.DO_03_GetTraySize);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
string lastCode = ""; string lastCode = "";
foreach (string code in LastCodeList) foreach (string code in LastCodeList)
{ {
lastCode += code; lastCode += code;
} }
//TODO LastWidth = 0;
LastWidth = 7; int robotIndex =1;
LastHeight = 8; if (DeviceID.Equals(301))
LogInfo("皮带3出口有料,二维码[" + lastCode + "] 获取料盘尺寸【" + LastWidth + "X" + LastHeight + "】"); {
robotIndex = 2;
}
SServerManager.GetTraySize(Name, robotIndex, LastCodeList, out LastWidth);
LogInfo("皮带3出口有料,二维码[" + lastCode + "] 获取料盘尺寸【" + LastWidth + "】");
MoveInfo.EndMove();
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_03_GetTraySize)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.DO_03_GetTraySize))
{ {
MoveInfo.NextMoveStep(LineMoveStep.DO_04_SeparateDeviceMove); MoveInfo.NextMoveStep(LineMoveStep.DO_04_SeparateDeviceMove);
if (LastWidth.Equals(7)) if (LastWidth.Equals(7))
{ {
LogInfo("皮带3出口有料,料盘尺寸【" + LastWidth + "X" + LastHeight + "】上升分盘定位气缸"); LogInfo("皮带3出口有料,料盘尺寸【" + LastWidth + "】上升分盘定位气缸");
CylinderMove(MoveInfo, IO_Type.SeparateDevice_Down, IO_Type.SeparateDevice_Up); CylinderMove(MoveInfo, IO_Type.SeparateDevice_Down, IO_Type.SeparateDevice_Up);
} }
else else
{ {
LogInfo("皮带3出口有料,料盘尺寸【" + LastWidth + "X" + LastHeight + "】下降分盘定位气缸"); LogInfo("皮带3出口有料,料盘尺寸【" + LastWidth + "】下降分盘定位气缸");
CylinderMove(MoveInfo, IO_Type.SeparateDevice_Up, IO_Type.SeparateDevice_Down); CylinderMove(MoveInfo, IO_Type.SeparateDevice_Up, IO_Type.SeparateDevice_Down);
} }
} }
......
...@@ -359,14 +359,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -359,14 +359,7 @@ namespace OnlineStore.DeviceLibrary
wait.IsEnd = IOValue(wait.IoType).Equals(wait.IoValue); wait.IsEnd = IOValue(wait.IoType).Equals(wait.IoValue);
if (!wait.IsEnd) if (!wait.IsEnd)
{ {
////屏蔽料盘检测信号
//if (wait.IoType.Equals(IO_Type.TrayCheck) && wait.IoValue.Equals(IO_VALUE.HIGH) && LineManager.Config.IsUse_Tray_Check.Equals(0))
//{
// LogUtil.debug(moveInfo.Name + "未检测到:IsUse_Tray_Check= " + wait.IoValue + ",直接跳过检测继续下一步");
//}
//夹紧按钮若果超过一秒钟还未收到,默认成功
if (wait.IoType.Equals(IO_Type.ClampCylinder_Slack) && wait.IoValue.Equals(IO_VALUE.HIGH) && span.TotalMilliseconds > 6000) if (wait.IoType.Equals(IO_Type.ClampCylinder_Slack) && wait.IoValue.Equals(IO_VALUE.HIGH) && span.TotalMilliseconds > 6000)
{ {
LogInfo("未检测到:ClampCylinder_Slack=HIGH,超过6秒钟,默认下一步骤"); LogInfo("未检测到:ClampCylinder_Slack=HIGH,超过6秒钟,默认下一步骤");
...@@ -388,25 +381,25 @@ namespace OnlineStore.DeviceLibrary ...@@ -388,25 +381,25 @@ namespace OnlineStore.DeviceLibrary
Alarm(LineAlarmType.IoSingleTimeOut); Alarm(LineAlarmType.IoSingleTimeOut);
LogUtil.error(MoveInfo.Name + WarnMsg, DeviceID + 13); LogUtil.error(MoveInfo.Name + WarnMsg, DeviceID + 13);
} }
else if (rwSpan.TotalSeconds > 5 && span.TotalSeconds > 6) //else if (rwSpan.TotalSeconds > 5 && span.TotalSeconds > 6)
{ //{
preRWTime = DateTime.Now; // preRWTime = DateTime.Now;
string msg = moveInfo.Name + " " + NotOkMsg + "已等待 " + Math.Abs(span.TotalSeconds) + "秒,重写DO:"; // string msg = moveInfo.Name + " " + NotOkMsg + "已等待 " + Math.Abs(span.TotalSeconds) + "秒,重写DO:";
bool isLog = false; // bool isLog = false;
foreach (WaitResultInfo ww in list) // foreach (WaitResultInfo ww in list)
{ // {
if (ww != null && ww.WaitType.Equals(2) && baseConfig.DOList.ContainsKey(ww.IoType)) // if (ww != null && ww.WaitType.Equals(2) && baseConfig.DOList.ContainsKey(ww.IoType))
{ // {
isLog = true; // isLog = true;
IOMove(ww.IoType, ww.IoValue); // IOMove(ww.IoType, ww.IoValue);
msg += ww.ToStr() + ","; // msg += ww.ToStr() + ",";
} // }
} // }
if (isLog) // if (isLog)
{ // {
LogUtil.error(msg); // LogUtil.error(msg);
} // }
} //}
isOk = false; isOk = false;
break; break;
} }
......
...@@ -18,6 +18,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -18,6 +18,7 @@ namespace OnlineStore.DeviceLibrary
{ {
public FeedingEquip_Config Config; public FeedingEquip_Config Config;
public bool OutEndSendShelfOut = false; public bool OutEndSendShelfOut = false;
public string CurrShelfId = "";//当前的料架ID
public AxisBean BatchAxis = null; public AxisBean BatchAxis = null;
public FeedingEquip(string cid, FeedingEquip_Config config) public FeedingEquip(string cid, FeedingEquip_Config config)
{ {
...@@ -103,6 +104,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -103,6 +104,7 @@ namespace OnlineStore.DeviceLibrary
} }
OutStoreHeight = -1; OutStoreHeight = -1;
//OutStoreCount = 0;
BatchAxisStopCheck(); BatchAxisStopCheck();
ResetClearData(); ResetClearData();
lineStatus = LineStatus.ResetMove; lineStatus = LineStatus.ResetMove;
...@@ -675,20 +677,32 @@ namespace OnlineStore.DeviceLibrary ...@@ -675,20 +677,32 @@ namespace OnlineStore.DeviceLibrary
} }
}); });
} }
internal void ShelfEnterProcess() private bool UpdateShelfId()
{ {
//判断料架的编码是否正确 try
RFIDData data = RFIDManager.GetShelfData(DeviceID);
if (data.Num <= 0)
{ {
MoveInfo.EndMove(); //判断料架的编码是否正确
runStatus = LineRunStatus.Runing; byte[] data = null;
LogUtil.info(" 入料检测有料架,获取不到正确的料架编号,入料结束"); CurrShelfId = RFIDManager.GetShelfId(DeviceID, out data);
return ; if (CurrShelfId.Equals(""))
} {
//发送料架信息给调度系统 //MoveInfo.EndMove();
AgvClient.SendRFID(Config.AgvInName, data.ToData()); //runStatus = LineRunStatus.Runing;
LogUtil.info(Name + "入料口读取到料架:" + data.ToStr()); LogUtil.info(" 定位工位料架检测到料架,获取料架号失败");
return false;
}
//发送料架信息给调度系统
AgvClient.SendRFID(Config.AgvInName, data);
LogUtil.info(Name + "定位工位料架编号:" + CurrShelfId);
}catch(Exception ex)
{
LogUtil.error(Name+ "UpdateShelfId出错:"+ex.ToString());
}
return true;
}
internal void ShelfEnterProcess()
{
Task.Factory.StartNew(delegate Task.Factory.StartNew(delegate
{ {
try try
......
...@@ -521,9 +521,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -521,9 +521,11 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.ShelfNoTray = false; MoveInfo.ShelfNoTray = false;
//定位工位有料架,直接开始入料 //定位工位有料架,直接开始入料
MoveInfo.NextMoveStep(LineMoveStep.FI_07_LocationCylinder_Up); MoveInfo.NextMoveStep(LineMoveStep.FI_07_LocationCylinder_Up);
InLog("定位工位检测到料架: " + MoveInfo.SLog + " 缓冲阻挡上升, 定位气缸上升"); InLog("定位工位检测到料架: " + MoveInfo.SLog + " 缓冲阻挡上升, 定位气缸上升,读取料架号");
IOMove(IO_Type.SL_Buffer_StopDown, IO_VALUE.LOW);//缓冲阻挡下降 IOMove(IO_Type.SL_Buffer_StopDown, IO_VALUE.LOW);//缓冲阻挡下降
CylinderMove(MoveInfo, IO_Type.SL_LocationCylinder_Down, IO_Type.SW4_LocationCylinder_Up); CylinderMove(MoveInfo, IO_Type.SL_LocationCylinder_Down, IO_Type.SW4_LocationCylinder_Up);
UpdateShelfId();
} }
else else
{ {
......
...@@ -12,6 +12,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -12,6 +12,8 @@ namespace OnlineStore.DeviceLibrary
{ {
#region 出料流程 #region 出料流程
private int OutStoreHeight = -1; private int OutStoreHeight = -1;
private int OutStoreCount = -1;
private ShelfData serverShelfData = null;
internal bool CanStartCheckOut(int trayNum) internal bool CanStartCheckOut(int trayNum)
{ {
preTrayNum = currTrayNum; preTrayNum = currTrayNum;
...@@ -196,9 +198,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -196,9 +198,11 @@ namespace OnlineStore.DeviceLibrary
{ {
//定位工位有料架,直接开始入料 //定位工位有料架,直接开始入料
MoveInfo.NextMoveStep(LineMoveStep.FO_05_LocationCylinder_Up); MoveInfo.NextMoveStep(LineMoveStep.FO_05_LocationCylinder_Up);
OutLog("定位工位检测到料架: " + MoveInfo.SLog + " 缓冲阻挡下降, 定位气缸上升"); OutLog("定位工位检测到料架: " + MoveInfo.SLog + " 缓冲阻挡下降, 定位气缸上升,读取料架号");
IOMove(IO_Type.SL_Buffer_StopDown, IO_VALUE.LOW);//缓冲阻挡下降 IOMove(IO_Type.SL_Buffer_StopDown, IO_VALUE.LOW);//缓冲阻挡下降
CylinderMove(MoveInfo, IO_Type.SL_LocationCylinder_Down, IO_Type.SW4_LocationCylinder_Up); CylinderMove(MoveInfo, IO_Type.SL_LocationCylinder_Down, IO_Type.SW4_LocationCylinder_Up);
UpdateShelfId();
} }
else else
{ {
...@@ -235,6 +239,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -235,6 +239,7 @@ namespace OnlineStore.DeviceLibrary
if (IOValue(IO_Type.SL_AxisLocationCheck).Equals(IO_VALUE.LOW)) if (IOValue(IO_Type.SL_AxisLocationCheck).Equals(IO_VALUE.LOW))
{ {
OutStoreHeight = 0; OutStoreHeight = 0;
OutStoreCount = 0;
//如果再出库中直接出库 //如果再出库中直接出库
MoveInfo.EndMove(); MoveInfo.EndMove();
runStatus = LineRunStatus.Runing; runStatus = LineRunStatus.Runing;
...@@ -274,6 +279,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -274,6 +279,7 @@ namespace OnlineStore.DeviceLibrary
OutLog("出料完成 " + MoveInfo.SLog + ": 升降盘定位气缸后退,重置OutEndSendShelfOut=fasle,OutStoreHeight = -1"); OutLog("出料完成 " + MoveInfo.SLog + ": 升降盘定位气缸后退,重置OutEndSendShelfOut=fasle,OutStoreHeight = -1");
OutEndSendShelfOut = false; OutEndSendShelfOut = false;
OutStoreHeight = -1; OutStoreHeight = -1;
OutStoreCount = 0;
TrayLCylinderAfter(MoveInfo); TrayLCylinderAfter(MoveInfo);
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_32_TrayLocationCylinder_After)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_32_TrayLocationCylinder_After))
...@@ -420,34 +426,66 @@ namespace OnlineStore.DeviceLibrary ...@@ -420,34 +426,66 @@ namespace OnlineStore.DeviceLibrary
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_219_UpdownAxisToP3)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_219_UpdownAxisToP3))
{ {
OutStoreHeight += MoveInfo.MoveParam.PlateH;
OutStoreCount++;
MoveInfo.NextMoveStep(LineMoveStep.FO_220_MoveCylinder_Slack); MoveInfo.NextMoveStep(LineMoveStep.FO_220_MoveCylinder_Slack);
OutLog("紧急出料移栽 " + MoveInfo.SLog + ":出料横移机构放松"); OutLog("紧急出料移栽 " + MoveInfo.SLog + ":出料横移机构放松,累积出库【" + OutStoreCount + "】盘【" + OutStoreHeight + "】mm");
CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Tighten, IO_Type.SL_MoveCylinder_Slack); CylinderMove(MoveInfo, IO_Type.SL_MoveCylinder_Tighten, IO_Type.SL_MoveCylinder_Slack);
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_220_MoveCylinder_Slack)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_220_MoveCylinder_Slack))
{ {
MoveInfo.NextMoveStep(LineMoveStep.FO_221_UpdownAxisToP1); MoveInfo.NextMoveStep(LineMoveStep.FO_221_UpdownAxisToP1);
OutLog("紧急出料移栽 " + MoveInfo.SLog + ":移栽伺服上升到待机点P1"); MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
OutLog("紧急出料移栽 " + MoveInfo.SLog + ":移栽伺服上升到待机点P1,通知服务器PutShelfFinished");
UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed); UpdownAxis.AbsMove(MoveInfo, Config.UpDownAxisP1, Config.UpdownAxis_P1Speed);
Task.Factory.StartNew(delegate
{
string msg = SServerManager.PutShelfFinished(Name, MoveInfo.MoveParam.WareCode, CurrShelfId, OutStoreCount.ToString(), out serverShelfData);
if (String.IsNullOrEmpty(msg).Equals(false))
{
LogUtil.error(Name + "【"+MoveInfo.MoveParam.WareCode+"】【"+CurrShelfId+"】【"+OutStoreCount.ToString()+"】PutShelfFinished 结果:" + msg);
serverShelfData = null;
}
});
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_221_UpdownAxisToP1)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.FO_221_UpdownAxisToP1))
{ {
//出库结束 TODO //出库结束 TODO
// bool isNeedSendShelf = false; // bool isNeedSendShelf = false;
if (OutEndSendShelfOut) //判断料架是否满了
int currPositon = BatchAxis.GetAclPosition();
int tp = currPositon - Config.Height_ChangeValue * 10;
if (tp < Config.BatchAxisP2)
{ {
MoveInfo.NextMoveStep(LineMoveStep.FO_31_BatchAxisToP2); SendOutShelfOut("当前提升轴位置:" + currPositon + ",料架已满,需要送出料架");
OutLog("紧急出料移栽 " + MoveInfo.SLog + ":需要将料架送出,提升伺服到P2点"); }
BatchAxis.AbsMove(MoveInfo, Config.BatchAxisP2, Config.BatchAxis_P2Speed); else if (OutEndSendShelfOut)
{
SendOutShelfOut("当前提升轴位置:" + currPositon + ",OutEndSendShelfOut,需要送出料架");
} }
else else
{ {
OutLog("紧急出料移栽 " + MoveInfo.SLog + ":出料结束"); //判断是否需要送出料架
MoveInfo.EndMove(); if (serverShelfData != null && serverShelfData.cutTask <= 0)
runStatus = LineRunStatus.Runing; {
SendOutShelfOut("服务器返回cutTask="+serverShelfData.cutTask+",需要送出料架");
}
else
{
OutLog("紧急出料移栽 " + MoveInfo.SLog + ":出料结束");
MoveInfo.EndMove();
runStatus = LineRunStatus.Runing;
}
} }
} }
} }
private void SendOutShelfOut(string msg="")
{
MoveInfo.NextMoveStep(LineMoveStep.FO_31_BatchAxisToP2);
OutLog("紧急出料移栽 " + MoveInfo.SLog + ":"+msg+ ",提升伺服到P2点");
BatchAxis.AbsMove(MoveInfo, Config.BatchAxisP2, Config.BatchAxis_P2Speed);
}
#endregion #endregion
} }
} }
...@@ -171,16 +171,11 @@ namespace OnlineStore.DeviceLibrary ...@@ -171,16 +171,11 @@ namespace OnlineStore.DeviceLibrary
Task.Factory.StartNew(delegate Task.Factory.StartNew(delegate
{ {
IOManager.instance.ConnectionIOList(cioList); IOManager.instance.ConnectionIOList(cioList);
Thread.Sleep(5); //Thread.Sleep(5);
Task.Factory.StartNew(delegate //Task.Factory.StartNew(delegate
{ //{
//string path = Application.StartupPath + @"\logs\rfid\"; // RFIDManager.Open(rfidList.ToArray());
//RFIDManager.RfidReader.LogPath = path; //});
//string[] rfidArray = rfidList.ToArray();
////连接rfip
//RFIDManager.RfidReader.Open(rfidArray);
RFIDManager.Open(rfidList.ToArray());
});
addLastDI(IO_Type.Airpressure_Check, IOValue(IO_Type.Airpressure_Check)); addLastDI(IO_Type.Airpressure_Check, IOValue(IO_Type.Airpressure_Check));
addLastDI(IO_Type.SuddenStop_BTN, IOValue(IO_Type.SuddenStop_BTN)); addLastDI(IO_Type.SuddenStop_BTN, IOValue(IO_Type.SuddenStop_BTN));
addLastDI(IO_Type.Reset_BTN, IOValue(IO_Type.Reset_BTN)); addLastDI(IO_Type.Reset_BTN, IOValue(IO_Type.Reset_BTN));
...@@ -269,7 +264,13 @@ namespace OnlineStore.DeviceLibrary ...@@ -269,7 +264,13 @@ namespace OnlineStore.DeviceLibrary
runStatus = LineRunStatus.HomeMoving; runStatus = LineRunStatus.HomeMoving;
StartTime = DateTime.Now; StartTime = DateTime.Now;
LogUtil.info(Name + "开始启动,启动时间:" + StartTime.ToString()); LogUtil.info(Name + "开始启动,启动时间:" + StartTime.ToString());
Task.Factory.StartNew(delegate
{
LogUtil.info(Name + "RFIDManager.Open");
RFIDManager.Open(rfidList.ToArray());
});
Thread.Sleep(5);
//连接AGV调度 //连接AGV调度
if (!AgvClient.ISConnected()) if (!AgvClient.ISConnected())
{ {
...@@ -422,6 +423,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -422,6 +423,8 @@ namespace OnlineStore.DeviceLibrary
runStatus = LineRunStatus.Wait; runStatus = LineRunStatus.Wait;
LineServer.StopServer(); LineServer.StopServer();
LogUtil.info(Name + "RFIDManager.Close");
RFIDManager.Close();
TimeSpan span = DateTime.Now - StartTime; TimeSpan span = DateTime.Now - StartTime;
LogUtil.info( Name + ",停止运行,总运行时间:" + span.ToString()); LogUtil.info( Name + ",停止运行,总运行时间:" + span.ToString());
} }
......
...@@ -206,25 +206,25 @@ namespace OnlineStore.DeviceLibrary ...@@ -206,25 +206,25 @@ namespace OnlineStore.DeviceLibrary
Alarm(LineAlarmType.IoSingleTimeOut); Alarm(LineAlarmType.IoSingleTimeOut);
LogUtil.error(MoveInfo.Name + WarnMsg, DeviceID + 13); LogUtil.error(MoveInfo.Name + WarnMsg, DeviceID + 13);
} }
else if (rwSpan.TotalSeconds > 5 && span.TotalSeconds > 6) //else if (rwSpan.TotalSeconds > 5 && span.TotalSeconds > 6)
{ //{
preRWTime = DateTime.Now; // preRWTime = DateTime.Now;
string msg = checkWaitInfo.Name + " " + NotOkMsg + "已等待 " + Math.Abs(span.TotalSeconds) + "秒,重写DO:"; // string msg = checkWaitInfo.Name + " " + NotOkMsg + "已等待 " + Math.Abs(span.TotalSeconds) + "秒,重写DO:";
bool isLog = false; // bool isLog = false;
foreach (WaitResultInfo ww in list) // foreach (WaitResultInfo ww in list)
{ // {
if (ww != null && ww.WaitType.Equals(2) && baseConfig.DOList.ContainsKey(ww.IoType)) // if (ww != null && ww.WaitType.Equals(2) && baseConfig.DOList.ContainsKey(ww.IoType))
{ // {
isLog = true; // isLog = true;
IOMove(ww.IoType, ww.IoValue); // IOMove(ww.IoType, ww.IoValue);
msg += ww.ToStr() + ","; // msg += ww.ToStr() + ",";
} // }
} // }
if (isLog) // if (isLog)
{ // {
LogUtil.error(msg); // LogUtil.error(msg);
} // }
} //}
isOk = false; isOk = false;
break; break;
} }
......
...@@ -82,8 +82,12 @@ namespace OnlineStore.DeviceLibrary ...@@ -82,8 +82,12 @@ namespace OnlineStore.DeviceLibrary
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_53_UpDownCylinderDownWait)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_53_UpDownCylinderDownWait))
{ {
MoveInfo.NextMoveStep(LineMoveStep.MO_54_ClampCylinderSlack); MoveInfo.NextMoveStep(LineMoveStep.MO_54_ClampCylinderSlack);
OutLog("出库 " + MoveInfo.SLog + ": 夹料气缸1夹紧)"); OutLog("出库 " + MoveInfo.SLog + ": 夹料气缸1夹紧,更新料盘位置【"+MoveInfo.MoveParam.WareCode+"】【MOVING】【"+DeviceID+"】");
CylinderMove(MoveInfo, IO_Type.ClampCylinder_Tighten, IO_Type.ClampCylinder_Slack); CylinderMove(MoveInfo, IO_Type.ClampCylinder_Tighten, IO_Type.ClampCylinder_Slack);
//更新料盘位置
SServerManager.UpdateTrayLoc(Name, MoveInfo.MoveParam.WareCode, LocStatus.MOVING, DeviceID);
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_54_ClampCylinderSlack)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_54_ClampCylinderSlack))
{ {
...@@ -106,17 +110,21 @@ namespace OnlineStore.DeviceLibrary ...@@ -106,17 +110,21 @@ namespace OnlineStore.DeviceLibrary
&& MoveInfo.MoveStep.Equals(LineMoveStep.MO_56_BeforeAfterCylinderAfter) && MoveInfo.MoveStep.Equals(LineMoveStep.MO_56_BeforeAfterCylinderAfter)
&& !SecondMoveInfo.IsInWait) && !SecondMoveInfo.IsInWait)
{ {
int trayNum = SecondMoveInfo.MoveParam.TrayNumber;
//去掉直接丢盘处理 //去掉直接丢盘处理
MoveInfo.NextMoveStep(LineMoveStep.MO_58_UpDownCylinderDown); MoveInfo.NextMoveStep(LineMoveStep.MO_58_UpDownCylinderDown);
OutLog("出库 " + MoveInfo.SLog + ": 夹具检测编码完成, 上下气缸1下降 "); OutLog("出库 " + MoveInfo.SLog + ": 夹具检测编码完成, 上下气缸1下降 ,更新料盘位置【" + MoveInfo.MoveParam.WareCode + "】【INLINE】【" + trayNum + "】");
if (MoveInfo.MoveParam != null) if (MoveInfo.MoveParam != null)
{ {
MoveInfo.MoveParam.TrayNumber = SecondMoveInfo.MoveParam.TrayNumber; MoveInfo.MoveParam.TrayNumber = trayNum;
} }
else else
{ {
MoveInfo.MoveParam = SecondMoveInfo.MoveParam; MoveInfo.MoveParam = SecondMoveInfo.MoveParam;
} }
//更新料盘位置
SServerManager.UpdateTrayLoc(Name, MoveInfo.MoveParam.WareCode, LocStatus.INLINE, trayNum);
UpdownDownP2Move(MoveInfo.MoveParam.PlateH); UpdownDownP2Move(MoveInfo.MoveParam.PlateH);
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_58_UpDownCylinderDown)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_58_UpDownCylinderDown))
...@@ -550,7 +558,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -550,7 +558,7 @@ namespace OnlineStore.DeviceLibrary
TrayManager.UpdateTrayNumError(-1, ""); TrayManager.UpdateTrayNumError(-1, "");
} }
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_14_TopCylinder_Down); SecondMoveInfo.NextMoveStep(LineMoveStep.MO_14_TopCylinder_Down);
CheckLog("托盘检测" + SecondMoveInfo.SLog + " ,托盘号【" + currTrayNum + "】,直接放盘通过,顶升气缸下降"); CheckLog("托盘检测" + SecondMoveInfo.SLog + " ,托盘号【" + currTrayNum + "】,直接放盘通过,顶升气缸下降 ");
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down); CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
} }
...@@ -567,7 +575,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -567,7 +575,7 @@ namespace OnlineStore.DeviceLibrary
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MO_14_TopCylinder_Down)) else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MO_14_TopCylinder_Down))
{ {
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_15_WaitCanGo); SecondMoveInfo.NextMoveStep(LineMoveStep.MO_15_WaitCanGo);
CheckLog("托盘放行" + SecondMoveInfo.SLog + " ,移栽2,需要判断是否可以放盘通过,最多等待10000"); CheckLog("托盘放行" + SecondMoveInfo.SLog + " ,移栽2,需要判断是否可以放盘通过,最多等待10000 ");
if (DeviceID.Equals(2)) if (DeviceID.Equals(2))
{ {
SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(10000)); SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(10000));
......
...@@ -60,7 +60,7 @@ namespace OnlineStore.DeviceLibrary ...@@ -60,7 +60,7 @@ namespace OnlineStore.DeviceLibrary
private string posId = ""; private string posId = "";
public bool StartOut(InOutParam moveParam ) public bool StartOut(InOutParam moveParam )
{ {
if (MoveInfo.MoveType.Equals(LineMoveType.None)) if (MoveInfo.MoveType.Equals(LineMoveType.None)&& equipBean.runStatus>LineRunStatus.HomeMoving)
{ {
MoveInfo.MoveParam = moveParam; MoveInfo.MoveParam = moveParam;
MoveInfo.NewMove(LineMoveType.OutStore); MoveInfo.NewMove(LineMoveType.OutStore);
......
...@@ -156,9 +156,10 @@ namespace OnlineStore.DeviceLibrary ...@@ -156,9 +156,10 @@ namespace OnlineStore.DeviceLibrary
{ {
TrayInfo trayInfo = TrayManager.GetTrayInfo(currTrayNum); TrayInfo trayInfo = TrayManager.GetTrayInfo(currTrayNum);
InOutParam param = new InOutParam(currTrayNum, trayInfo.WareCode, trayInfo.PosId, trayInfo.PlateH, trayInfo.PlateW,trayInfo.InStoreNG); InOutParam param = new InOutParam(currTrayNum, trayInfo.WareCode, trayInfo.PosId, trayInfo.PlateH, trayInfo.PlateW,trayInfo.InStoreNG);
CheckLog("托盘阻挡是需要出库" + param.ToStr() + ":" + SecondMoveInfo.SLog + "等待1秒后顶升上升 )");
SecondMoveInfo.MoveParam = param; SecondMoveInfo.MoveParam = param;
SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_05_WaitTime); SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_05_WaitTime);
CheckLog("托盘阻挡需要出库" + SecondMoveInfo.SLog + ":" + param.ToStr() + " 等待1秒后顶升上升 )");
SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000)); SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitProvidingEquipCanOut());//等待 SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitProvidingEquipCanOut());//等待
...@@ -167,10 +168,6 @@ namespace OnlineStore.DeviceLibrary ...@@ -167,10 +168,6 @@ namespace OnlineStore.DeviceLibrary
else else
{ {
MO_14_TopCylinder_Down(); MO_14_TopCylinder_Down();
//bool isFull = TrayManager.TrayIsFull(currTrayNum);
//SecondMoveInfo.NextMoveStep(LineMoveStep.MO_15_WaitCanGo);
//LogInfo(SecondMoveInfo.MoveNum + "***************上个托盘号【" + preTrayNum + "】,当前" + (isFull ? "有料托盘" : "空托盘") + "【" + currTrayNum + "】没有出入料任务,放盘通过~");
//CheckLog("托盘放行 " + SecondMoveInfo.SLog + " ,移栽2,需要判断是否可以放盘通过,最多等待10000)");
} }
} }
else else
...@@ -184,37 +181,26 @@ namespace OnlineStore.DeviceLibrary ...@@ -184,37 +181,26 @@ namespace OnlineStore.DeviceLibrary
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_05_WaitTime)) else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_05_WaitTime))
{ {
SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_06_TopCylinderUp); SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_06_TopCylinderUp);
CheckLog("托盘阻挡 " + SecondMoveInfo.SLog + " 顶升气缸上 升 )"); CheckLog("托盘阻挡 " + SecondMoveInfo.SLog + " 顶升气缸上升 ");
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_Down, IO_Type.TopCylinder_UP); CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_Down, IO_Type.TopCylinder_UP);
//移栽开始出库
LogInfo("开始新的出库任务~" + SecondMoveInfo.MoveParam.ToStr());
bool result = StartOutStoreMove(SecondMoveInfo.MoveParam);
} }
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_06_TopCylinderUp)) else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_06_TopCylinderUp))
{ {
SecondMoveInfo.MoveParam = new InOutParam(currTrayNum);
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_11_CodeRember); SecondMoveInfo.NextMoveStep(LineMoveStep.MO_11_CodeRember);
LogInfo(SecondMoveInfo.MoveNum + " 托盘号【" + currTrayNum + "】等待移栽料盘"); LogInfo(SecondMoveInfo.MoveNum + " 托盘号【" + currTrayNum + "】等待移栽料盘");
SecondMoveInfo.EndStepWait(); SecondMoveInfo.EndStepWait();
} }
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MIO_08_WaitInStore) && MoveInfo.MoveType.Equals(LineMoveType.None)) else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MO_11_CodeRember) && MoveInfo.MoveType.Equals(LineMoveType.None))
{ {
StartOutStoreMove(SecondMoveInfo.MoveParam);
SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_09_WaitLetFixtureGo); SecondMoveInfo.NextMoveStep(LineMoveStep.MIO_09_WaitLetFixtureGo);
CheckLog("托盘放行 " + SecondMoveInfo.SLog + ",等待移栽完成后放开阻挡)"); CheckLog("托盘放行 " + SecondMoveInfo.SLog + "开始新的出库任务~" + SecondMoveInfo.MoveParam.ToStr()+",等待移栽完成后放开阻挡)");
bool result = StartOutStoreMove(SecondMoveInfo.MoveParam);
} }
#endregion #endregion
#region 不需要出出料,直接放行 #region 不需要出出料,直接放行
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MO_14_TopCylinder_Down)) else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MO_14_TopCylinder_Down))
{ {
//SecondMoveInfo.NextMoveStep(LineMoveStep.MO_15_WaitCanGo);
//CheckLog("托盘放行 " + SecondMoveInfo.SLog + ",需要判断是否可以放盘通过,最多等待10000)");
////更新横移托盘已处理完成
////TODO 阻挡气缸是否需要处理
//TrayManager.UpdateSWState(Config.SidesWayNum, 1);
if (Config.SidesWayNum > 0) if (Config.SidesWayNum > 0)
{ {
SecondMoveInfo.EndMove(); SecondMoveInfo.EndMove();
...@@ -323,9 +309,17 @@ namespace OnlineStore.DeviceLibrary ...@@ -323,9 +309,17 @@ namespace OnlineStore.DeviceLibrary
//只有当BOX可以进行出出料时,移栽物品,防止卡住 //只有当BOX可以进行出出料时,移栽物品,防止卡住
else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_02_UpDownCylinderDownWait)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_02_UpDownCylinderDownWait))
{ {
int lineId = 1;
if (DeviceID > 102)
{
lineId = 2;
}
MoveInfo.NextMoveStep(LineMoveStep.PO_03_ClampCylinderSlack); MoveInfo.NextMoveStep(LineMoveStep.PO_03_ClampCylinderSlack);
OutLog("出库 " + MoveInfo.SLog + " : 夹料气缸夹紧"); OutLog("出库 " + MoveInfo.SLog + " : 夹料气缸夹紧,更新料盘位置【"+ MoveInfo.MoveParam.WareCode + "】【INBELT】【"+ lineId + "】");
CylinderMove(MoveInfo, IO_Type.ClampCylinder_Tighten, IO_Type.ClampCylinder_Slack); CylinderMove(MoveInfo, IO_Type.ClampCylinder_Tighten, IO_Type.ClampCylinder_Slack);
//更新料盘位置
SServerManager.UpdateTrayLoc(Name, MoveInfo.MoveParam.WareCode, LocStatus.INBELT, lineId);
} }
else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_03_ClampCylinderSlack)) else if (MoveInfo.MoveStep.Equals(LineMoveStep.PO_03_ClampCylinderSlack))
{ {
......
...@@ -72,13 +72,21 @@ namespace OnlineStore.DeviceLibrary ...@@ -72,13 +72,21 @@ namespace OnlineStore.DeviceLibrary
return 0; return 0;
} }
public static RFIDData GetShelfData(int subType) public static string GetShelfId(int subType,out byte[] bytedata)
{ {
string ip = GetRFIP(subType, 1); string ip = GetRFIP(subType, 1);
return ReadRFID(ip); RFIDData data= ReadRFID(ip);
bytedata = data.ToData();
if (data.RFType.Equals('B'))
{
return data.RFType.ToString() + "" + data.Num.ToString().PadLeft(2, '0');
}else if (data.Num > 0)
{
LogUtil.error("RFID [ " + ip + " ] 读到数据 " + data.ToStr() + " 返回料架号为空");
}
return "";
} }
public static RFIDData ReadRFID(string ip, bool isClear = false) public static RFIDData ReadRFID(string ip, bool isClear = false)
{ {
try try
...@@ -158,9 +166,8 @@ namespace OnlineStore.DeviceLibrary ...@@ -158,9 +166,8 @@ namespace OnlineStore.DeviceLibrary
} }
public string ToStr() public string ToStr()
{ {
return " [" + RFType + "],[" + Num + "] "; return "" + RFType + "" + ((int)Num).ToString().PadLeft(2, '0');
} //return " [" + RFType + "],[" + Num + "] ";
}
} }
} }
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!