Commit 24df0f91 LN

C1 SL横移

1 个父辈 46f0da7e
正在显示 37 个修改的文件 包含 2195 行增加776 行删除
......@@ -41,10 +41,8 @@
this.btnLocation_Up = new System.Windows.Forms.Button();
this.btnStopDown = new System.Windows.Forms.Button();
this.btnLineRun = new System.Windows.Forms.Button();
this.btnTopCylinder_UP = new System.Windows.Forms.Button();
this.btnTopCylinder_Up = new System.Windows.Forms.Button();
this.btnLineBackRun = new System.Windows.Forms.Button();
this.btnClampRelax = new System.Windows.Forms.Button();
this.btnLocation_Down = new System.Windows.Forms.Button();
this.chbDebug = new System.Windows.Forms.CheckBox();
this.lblThisSta = new System.Windows.Forms.Label();
this.lblStoreStatus = new System.Windows.Forms.Label();
......@@ -55,11 +53,9 @@
this.tabControl1 = new System.Windows.Forms.TabControl();
this.tabPage1 = new System.Windows.Forms.TabPage();
this.groupBox6 = new System.Windows.Forms.GroupBox();
this.lblHyInfo = new System.Windows.Forms.Label();
this.lblMoveInfo = new System.Windows.Forms.Label();
this.lblTrayNum = new System.Windows.Forms.Label();
this.lblInstoreList = new System.Windows.Forms.Label();
this.btnMoveGive = new System.Windows.Forms.Button();
this.btnUpDownUpbtnTopCylinder_Down = new System.Windows.Forms.Button();
this.tabPage2 = new System.Windows.Forms.TabPage();
this.groupDetial = new System.Windows.Forms.GroupBox();
this.btnDSave = new System.Windows.Forms.Button();
......@@ -116,9 +112,9 @@
this.groupBox1.Controls.Add(this.txtSlaveId);
this.groupBox1.Controls.Add(this.cmbWriteIO);
this.groupBox1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.groupBox1.Location = new System.Drawing.Point(497, 188);
this.groupBox1.Location = new System.Drawing.Point(6, 396);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(394, 156);
this.groupBox1.Size = new System.Drawing.Size(485, 111);
this.groupBox1.TabIndex = 105;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "DO写入";
......@@ -128,9 +124,9 @@
this.btnCloseAll.BackColor = System.Drawing.Color.White;
this.btnCloseAll.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnCloseAll.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnCloseAll.Location = new System.Drawing.Point(17, 107);
this.btnCloseAll.Location = new System.Drawing.Point(353, 24);
this.btnCloseAll.Name = "btnCloseAll";
this.btnCloseAll.Size = new System.Drawing.Size(140, 34);
this.btnCloseAll.Size = new System.Drawing.Size(100, 34);
this.btnCloseAll.TabIndex = 259;
this.btnCloseAll.Text = "关闭所有DO";
this.btnCloseAll.UseVisualStyleBackColor = false;
......@@ -140,7 +136,7 @@
//
this.txtDOIndex.Enabled = false;
this.txtDOIndex.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.txtDOIndex.Location = new System.Drawing.Point(191, 67);
this.txtDOIndex.Location = new System.Drawing.Point(59, 71);
this.txtDOIndex.MaxLength = 10;
this.txtDOIndex.Name = "txtDOIndex";
this.txtDOIndex.Size = new System.Drawing.Size(38, 23);
......@@ -151,31 +147,33 @@
//
this.txtDoName.Enabled = false;
this.txtDoName.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.txtDoName.Location = new System.Drawing.Point(72, 67);
this.txtDoName.Location = new System.Drawing.Point(59, 54);
this.txtDoName.MaxLength = 10;
this.txtDoName.Name = "txtDoName";
this.txtDoName.Size = new System.Drawing.Size(70, 23);
this.txtDoName.Size = new System.Drawing.Size(34, 23);
this.txtDoName.TabIndex = 283;
this.txtDoName.Text = "0";
this.txtDoName.Visible = false;
//
// label17
//
this.label17.AutoSize = true;
this.label17.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label17.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.label17.Location = new System.Drawing.Point(19, 70);
this.label17.Location = new System.Drawing.Point(20, 57);
this.label17.Name = "label17";
this.label17.Size = new System.Drawing.Size(46, 17);
this.label17.Size = new System.Drawing.Size(35, 17);
this.label17.TabIndex = 282;
this.label17.Text = "设备IP:";
this.label17.Text = "设备:";
this.label17.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
this.label17.Visible = false;
//
// label14
//
this.label14.AutoSize = true;
this.label14.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label14.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.label14.Location = new System.Drawing.Point(149, 70);
this.label14.Location = new System.Drawing.Point(20, 74);
this.label14.Name = "label14";
this.label14.Size = new System.Drawing.Size(35, 17);
this.label14.TabIndex = 281;
......@@ -187,7 +185,7 @@
this.btnOpenDo.BackColor = System.Drawing.Color.White;
this.btnOpenDo.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnOpenDo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnOpenDo.Location = new System.Drawing.Point(166, 107);
this.btnOpenDo.Location = new System.Drawing.Point(237, 65);
this.btnOpenDo.Name = "btnOpenDo";
this.btnOpenDo.Size = new System.Drawing.Size(100, 34);
this.btnOpenDo.TabIndex = 280;
......@@ -200,7 +198,7 @@
this.btnWriteSingleDO.BackColor = System.Drawing.Color.White;
this.btnWriteSingleDO.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnWriteSingleDO.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnWriteSingleDO.Location = new System.Drawing.Point(275, 107);
this.btnWriteSingleDO.Location = new System.Drawing.Point(353, 65);
this.btnWriteSingleDO.Name = "btnWriteSingleDO";
this.btnWriteSingleDO.Size = new System.Drawing.Size(100, 34);
this.btnWriteSingleDO.TabIndex = 277;
......@@ -211,7 +209,7 @@
// txtWriteTime
//
this.txtWriteTime.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.txtWriteTime.Location = new System.Drawing.Point(303, 67);
this.txtWriteTime.Location = new System.Drawing.Point(165, 71);
this.txtWriteTime.MaxLength = 10;
this.txtWriteTime.Name = "txtWriteTime";
this.txtWriteTime.Size = new System.Drawing.Size(66, 23);
......@@ -223,7 +221,7 @@
this.label5.AutoSize = true;
this.label5.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label5.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.label5.Location = new System.Drawing.Point(236, 70);
this.label5.Location = new System.Drawing.Point(101, 74);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(60, 17);
this.label5.TabIndex = 278;
......@@ -233,7 +231,7 @@
// txtSlaveId
//
this.txtSlaveId.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.txtSlaveId.Location = new System.Drawing.Point(417, 26);
this.txtSlaveId.Location = new System.Drawing.Point(338, 30);
this.txtSlaveId.MaxLength = 10;
this.txtSlaveId.Name = "txtSlaveId";
this.txtSlaveId.Size = new System.Drawing.Size(12, 23);
......@@ -251,7 +249,7 @@
this.cmbWriteIO.ItemHeight = 22;
this.cmbWriteIO.Location = new System.Drawing.Point(17, 25);
this.cmbWriteIO.Name = "cmbWriteIO";
this.cmbWriteIO.Size = new System.Drawing.Size(356, 28);
this.cmbWriteIO.Size = new System.Drawing.Size(315, 28);
this.cmbWriteIO.TabIndex = 234;
this.cmbWriteIO.ValueMember = "ProName";
this.cmbWriteIO.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.cmbWriteIO_DrawItem);
......@@ -264,7 +262,7 @@
this.groupBox4.Controls.Add(this.tableLayoutPanel2);
this.groupBox4.Location = new System.Drawing.Point(251, 6);
this.groupBox4.Name = "groupBox4";
this.groupBox4.Size = new System.Drawing.Size(240, 424);
this.groupBox4.Size = new System.Drawing.Size(240, 387);
this.groupBox4.TabIndex = 104;
this.groupBox4.TabStop = false;
this.groupBox4.Text = "DO列表";
......@@ -281,7 +279,7 @@
this.tableLayoutPanel2.RowCount = 2;
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel2.Size = new System.Drawing.Size(229, 404);
this.tableLayoutPanel2.Size = new System.Drawing.Size(229, 367);
this.tableLayoutPanel2.TabIndex = 103;
//
// groupBox3
......@@ -291,7 +289,7 @@
this.groupBox3.Controls.Add(this.tableLayoutPanel1);
this.groupBox3.Location = new System.Drawing.Point(6, 6);
this.groupBox3.Name = "groupBox3";
this.groupBox3.Size = new System.Drawing.Size(240, 424);
this.groupBox3.Size = new System.Drawing.Size(240, 387);
this.groupBox3.TabIndex = 103;
this.groupBox3.TabStop = false;
this.groupBox3.Text = "DI列表";
......@@ -308,24 +306,22 @@
this.tableLayoutPanel1.RowCount = 2;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 17F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(229, 404);
this.tableLayoutPanel1.Size = new System.Drawing.Size(229, 367);
this.tableLayoutPanel1.TabIndex = 102;
//
// groupBox5
//
this.groupBox5.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.groupBox5.Controls.Add(this.btnClampWork);
this.groupBox5.Controls.Add(this.btnMoveTake);
this.groupBox5.Controls.Add(this.btnFrontStopDown);
this.groupBox5.Controls.Add(this.btnLocation_Up);
this.groupBox5.Controls.Add(this.btnStopDown);
this.groupBox5.Controls.Add(this.btnLineRun);
this.groupBox5.Controls.Add(this.btnTopCylinder_UP);
this.groupBox5.Controls.Add(this.btnTopCylinder_Up);
this.groupBox5.Controls.Add(this.btnLineBackRun);
this.groupBox5.Location = new System.Drawing.Point(897, 188);
this.groupBox5.Location = new System.Drawing.Point(497, 190);
this.groupBox5.Name = "groupBox5";
this.groupBox5.Size = new System.Drawing.Size(332, 321);
this.groupBox5.Size = new System.Drawing.Size(400, 317);
this.groupBox5.TabIndex = 255;
this.groupBox5.TabStop = false;
this.groupBox5.Text = "IO操作测试";
......@@ -335,7 +331,7 @@
this.btnClampWork.BackColor = System.Drawing.Color.White;
this.btnClampWork.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnClampWork.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnClampWork.Location = new System.Drawing.Point(175, 140);
this.btnClampWork.Location = new System.Drawing.Point(173, 140);
this.btnClampWork.Name = "btnClampWork";
this.btnClampWork.Size = new System.Drawing.Size(140, 34);
this.btnClampWork.TabIndex = 265;
......@@ -348,7 +344,7 @@
this.btnMoveTake.BackColor = System.Drawing.Color.White;
this.btnMoveTake.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnMoveTake.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnMoveTake.Location = new System.Drawing.Point(17, 140);
this.btnMoveTake.Location = new System.Drawing.Point(173, 101);
this.btnMoveTake.Name = "btnMoveTake";
this.btnMoveTake.Size = new System.Drawing.Size(140, 34);
this.btnMoveTake.TabIndex = 263;
......@@ -361,7 +357,7 @@
this.btnFrontStopDown.BackColor = System.Drawing.Color.White;
this.btnFrontStopDown.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnFrontStopDown.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnFrontStopDown.Location = new System.Drawing.Point(175, 62);
this.btnFrontStopDown.Location = new System.Drawing.Point(173, 61);
this.btnFrontStopDown.Name = "btnFrontStopDown";
this.btnFrontStopDown.Size = new System.Drawing.Size(140, 34);
this.btnFrontStopDown.TabIndex = 261;
......@@ -374,7 +370,7 @@
this.btnLocation_Up.BackColor = System.Drawing.Color.White;
this.btnLocation_Up.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnLocation_Up.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnLocation_Up.Location = new System.Drawing.Point(175, 100);
this.btnLocation_Up.Location = new System.Drawing.Point(17, 140);
this.btnLocation_Up.Name = "btnLocation_Up";
this.btnLocation_Up.Size = new System.Drawing.Size(140, 34);
this.btnLocation_Up.TabIndex = 260;
......@@ -387,7 +383,7 @@
this.btnStopDown.BackColor = System.Drawing.Color.White;
this.btnStopDown.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnStopDown.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnStopDown.Location = new System.Drawing.Point(175, 22);
this.btnStopDown.Location = new System.Drawing.Point(173, 22);
this.btnStopDown.Name = "btnStopDown";
this.btnStopDown.Size = new System.Drawing.Size(140, 34);
this.btnStopDown.TabIndex = 258;
......@@ -408,18 +404,18 @@
this.btnLineRun.UseVisualStyleBackColor = false;
this.btnLineRun.Click += new System.EventHandler(this.btnLineRun_Click);
//
// btnTopCylinder_UP
// btnTopCylinder_Up
//
this.btnTopCylinder_UP.BackColor = System.Drawing.Color.White;
this.btnTopCylinder_UP.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnTopCylinder_UP.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnTopCylinder_UP.Location = new System.Drawing.Point(17, 100);
this.btnTopCylinder_UP.Name = "btnTopCylinder_UP";
this.btnTopCylinder_UP.Size = new System.Drawing.Size(140, 34);
this.btnTopCylinder_UP.TabIndex = 255;
this.btnTopCylinder_UP.Text = "横移顶升上升";
this.btnTopCylinder_UP.UseVisualStyleBackColor = false;
this.btnTopCylinder_UP.Click += new System.EventHandler(this.btnTopCylinder_UP_Click);
this.btnTopCylinder_Up.BackColor = System.Drawing.Color.White;
this.btnTopCylinder_Up.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnTopCylinder_Up.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnTopCylinder_Up.Location = new System.Drawing.Point(17, 101);
this.btnTopCylinder_Up.Name = "btnTopCylinder_Up";
this.btnTopCylinder_Up.Size = new System.Drawing.Size(140, 34);
this.btnTopCylinder_Up.TabIndex = 255;
this.btnTopCylinder_Up.Text = "横移顶升上升";
this.btnTopCylinder_Up.UseVisualStyleBackColor = false;
this.btnTopCylinder_Up.Click += new System.EventHandler(this.btnTopCylinder_Up_Click);
//
// btnLineBackRun
//
......@@ -434,32 +430,6 @@
this.btnLineBackRun.UseVisualStyleBackColor = false;
this.btnLineBackRun.Click += new System.EventHandler(this.btnLineBackRun_Click);
//
// btnClampRelax
//
this.btnClampRelax.BackColor = System.Drawing.Color.White;
this.btnClampRelax.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnClampRelax.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnClampRelax.Location = new System.Drawing.Point(699, 419);
this.btnClampRelax.Name = "btnClampRelax";
this.btnClampRelax.Size = new System.Drawing.Size(140, 34);
this.btnClampRelax.TabIndex = 264;
this.btnClampRelax.Text = "夹料气缸放松";
this.btnClampRelax.UseVisualStyleBackColor = false;
this.btnClampRelax.Visible = false;
//
// btnLocation_Down
//
this.btnLocation_Down.BackColor = System.Drawing.Color.White;
this.btnLocation_Down.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnLocation_Down.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnLocation_Down.Location = new System.Drawing.Point(699, 379);
this.btnLocation_Down.Name = "btnLocation_Down";
this.btnLocation_Down.Size = new System.Drawing.Size(140, 34);
this.btnLocation_Down.TabIndex = 259;
this.btnLocation_Down.Text = "横移定位下降";
this.btnLocation_Down.UseVisualStyleBackColor = false;
this.btnLocation_Down.Visible = false;
//
// chbDebug
//
this.chbDebug.AutoSize = true;
......@@ -482,7 +452,7 @@
this.lblThisSta.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblThisSta.Location = new System.Drawing.Point(255, 13);
this.lblThisSta.Name = "lblThisSta";
this.lblThisSta.Size = new System.Drawing.Size(470, 158);
this.lblThisSta.Size = new System.Drawing.Size(470, 153);
this.lblThisSta.TabIndex = 246;
this.lblThisSta.Text = "等待启动";
this.lblThisSta.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
......@@ -569,14 +539,11 @@
// tabPage1
//
this.tabPage1.Controls.Add(this.groupBox6);
this.tabPage1.Controls.Add(this.btnClampRelax);
this.tabPage1.Controls.Add(this.lblMoveInfo);
this.tabPage1.Controls.Add(this.groupBox3);
this.tabPage1.Controls.Add(this.groupBox4);
this.tabPage1.Controls.Add(this.btnMoveGive);
this.tabPage1.Controls.Add(this.groupBox5);
this.tabPage1.Controls.Add(this.groupBox1);
this.tabPage1.Controls.Add(this.btnUpDownUpbtnTopCylinder_Down);
this.tabPage1.Controls.Add(this.btnLocation_Down);
this.tabPage1.Location = new System.Drawing.Point(4, 26);
this.tabPage1.Name = "tabPage1";
this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
......@@ -590,23 +557,33 @@
this.groupBox6.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.groupBox6.Controls.Add(this.lblMoveInfo);
this.groupBox6.Controls.Add(this.lblHyInfo);
this.groupBox6.Controls.Add(this.lblTrayNum);
this.groupBox6.Controls.Add(this.lblInstoreList);
this.groupBox6.Controls.Add(this.lblThisSta);
this.groupBox6.Location = new System.Drawing.Point(497, 6);
this.groupBox6.Name = "groupBox6";
this.groupBox6.Size = new System.Drawing.Size(731, 176);
this.groupBox6.Size = new System.Drawing.Size(731, 178);
this.groupBox6.TabIndex = 278;
this.groupBox6.TabStop = false;
this.groupBox6.Text = "消息";
//
// lblHyInfo
//
this.lblHyInfo.AutoSize = true;
this.lblHyInfo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblHyInfo.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblHyInfo.Location = new System.Drawing.Point(16, 19);
this.lblHyInfo.Name = "lblHyInfo";
this.lblHyInfo.Size = new System.Drawing.Size(68, 17);
this.lblHyInfo.TabIndex = 281;
this.lblHyInfo.Text = "运动信息:";
//
// lblMoveInfo
//
this.lblMoveInfo.AutoSize = true;
this.lblMoveInfo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblMoveInfo.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblMoveInfo.Location = new System.Drawing.Point(18, 29);
this.lblMoveInfo.Location = new System.Drawing.Point(914, 215);
this.lblMoveInfo.Name = "lblMoveInfo";
this.lblMoveInfo.Size = new System.Drawing.Size(68, 17);
this.lblMoveInfo.TabIndex = 280;
......@@ -623,45 +600,6 @@
this.lblTrayNum.TabIndex = 276;
this.lblTrayNum.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// lblInstoreList
//
this.lblInstoreList.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.lblInstoreList.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblInstoreList.ForeColor = System.Drawing.Color.Green;
this.lblInstoreList.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblInstoreList.Location = new System.Drawing.Point(255, 177);
this.lblInstoreList.Name = "lblInstoreList";
this.lblInstoreList.Size = new System.Drawing.Size(470, 184);
this.lblInstoreList.TabIndex = 277;
//
// btnMoveGive
//
this.btnMoveGive.BackColor = System.Drawing.Color.White;
this.btnMoveGive.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnMoveGive.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnMoveGive.Location = new System.Drawing.Point(541, 419);
this.btnMoveGive.Name = "btnMoveGive";
this.btnMoveGive.Size = new System.Drawing.Size(140, 34);
this.btnMoveGive.TabIndex = 262;
this.btnMoveGive.Text = "接驳台放料";
this.btnMoveGive.UseVisualStyleBackColor = false;
this.btnMoveGive.Visible = false;
//
// btnUpDownUpbtnTopCylinder_Down
//
this.btnUpDownUpbtnTopCylinder_Down.BackColor = System.Drawing.Color.White;
this.btnUpDownUpbtnTopCylinder_Down.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnUpDownUpbtnTopCylinder_Down.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.btnUpDownUpbtnTopCylinder_Down.Location = new System.Drawing.Point(541, 379);
this.btnUpDownUpbtnTopCylinder_Down.Name = "btnUpDownUpbtnTopCylinder_Down";
this.btnUpDownUpbtnTopCylinder_Down.Size = new System.Drawing.Size(140, 34);
this.btnUpDownUpbtnTopCylinder_Down.TabIndex = 252;
this.btnUpDownUpbtnTopCylinder_Down.Text = "横移顶升下降";
this.btnUpDownUpbtnTopCylinder_Down.UseVisualStyleBackColor = false;
this.btnUpDownUpbtnTopCylinder_Down.Visible = false;
this.btnUpDownUpbtnTopCylinder_Down.Click += new System.EventHandler(this.btnUpDownUp_Click);
//
// tabPage2
//
this.tabPage2.Controls.Add(this.groupDetial);
......@@ -1002,6 +940,7 @@
this.groupBox5.ResumeLayout(false);
this.tabControl1.ResumeLayout(false);
this.tabPage1.ResumeLayout(false);
this.tabPage1.PerformLayout();
this.groupBox6.ResumeLayout(false);
this.groupBox6.PerformLayout();
this.tabPage2.ResumeLayout(false);
......@@ -1026,7 +965,7 @@
private System.Windows.Forms.ComboBox cmbWriteIO;
private System.Windows.Forms.TextBox txtSlaveId;
private System.Windows.Forms.GroupBox groupBox5;
private System.Windows.Forms.Button btnTopCylinder_UP;
private System.Windows.Forms.Button btnTopCylinder_Up;
private System.Windows.Forms.Button btnLineBackRun;
private System.Windows.Forms.Label lblThisSta;
private System.Windows.Forms.Label lblStoreStatus;
......@@ -1043,7 +982,6 @@
private System.Windows.Forms.Button btnCloseAll;
private System.Windows.Forms.Label lblTrayNum;
private System.Windows.Forms.GroupBox groupBox6;
private System.Windows.Forms.Label lblInstoreList;
private System.Windows.Forms.TextBox txtDOIndex;
private System.Windows.Forms.TextBox txtDoName;
private System.Windows.Forms.Label label17;
......@@ -1077,13 +1015,10 @@
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Button btnClose;
private System.Windows.Forms.Button btnLocation_Up;
private System.Windows.Forms.Button btnLocation_Down;
private System.Windows.Forms.Button btnFrontStopDown;
private System.Windows.Forms.Button btnClampWork;
private System.Windows.Forms.Button btnClampRelax;
private System.Windows.Forms.Button btnMoveTake;
private System.Windows.Forms.Button btnMoveGive;
private System.Windows.Forms.Button btnUpDownUpbtnTopCylinder_Down;
private System.Windows.Forms.Label lblHyInfo;
}
}
......@@ -43,13 +43,11 @@ namespace OnlineStore.AssemblyLine
{
cmbSizeList.Items.Add(heigth);
}
cmbSizeList.SelectedIndex = 0;
btnUpDownUpbtnTopCylinder_Down.Visible = false;
cmbSizeList.SelectedIndex = 0;
}
else
{
tabControl1.TabPages.Remove(tabPage2);
btnUpDownUpbtnTopCylinder_Down.Visible = true;
tabControl1.TabPages.Remove(tabPage2);
}
LoadDP2();
chbDebug.Checked = equipBean.IsDebug;
......@@ -59,6 +57,7 @@ namespace OnlineStore.AssemblyLine
lblName.Text = equipBean.Name;
this.Text = equipBean.Name;
txtP1.Text = equipBean.Config.UpDownAxisP1.ToString();
lblHyInfo.Text = equipBean.GetHYDesc();
IsLoad = true;
}
......@@ -334,13 +333,10 @@ namespace OnlineStore.AssemblyLine
{
BtnMove(btnLineBackRun, "横移电机反转<<", "横移电机停止", IO_Type.HY_LineBackRun);
}
private void btnUpDownUp_Click(object sender, EventArgs e)
private void btnTopCylinder_Up_Click(object sender, EventArgs e)
{
BtnMove(btnUpDownUpbtnTopCylinder_Down, "升降上升", "升降下降", IO_Type.UpDownCylinder_Down, IO_Type.UpDownCylinder_Up);
}
private void btnTopCylinder_UP_Click(object sender, EventArgs e)
{
BtnMove(btnTopCylinder_UP, "横移顶升上升", "横移顶升下降", IO_Type.HY_TopCylinder_Down, IO_Type.HY_TopCylinder_UP);
BtnMove(btnTopCylinder_Up, "横移顶升上升", "横移顶升下降", IO_Type.HY_TopCylinder_Down, IO_Type.HY_TopCylinder_Up);
}
private void btnFrontStopDown_Click(object sender, EventArgs e)
{
......@@ -349,7 +345,7 @@ namespace OnlineStore.AssemblyLine
private void btnLocation_Up_Click(object sender, EventArgs e)
{
BtnMove(btnLocation_Up, "横移定位上升", "横移定位下降", IO_Type.HY_LocationCylinder_Down, IO_Type.HY_LocationCylinder_UP);
BtnMove(btnLocation_Up, "横移定位上升", "横移定位下降", IO_Type.HY_LocationCylinder_Down, IO_Type.HY_LocationCylinder_Up);
}
private void btnMoveTake_Click(object sender, EventArgs e)
......
......@@ -19,17 +19,39 @@
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmIOTest));
this.timer1 = new System.Windows.Forms.Timer(this.components);
this.panel1 = new System.Windows.Forms.Panel();
this.groupBox3 = new System.Windows.Forms.GroupBox();
this.panel4 = new System.Windows.Forms.Panel();
this.comboBox3 = new System.Windows.Forms.ComboBox();
this.lblDO3 = new System.Windows.Forms.Label();
this.lblDI3 = new System.Windows.Forms.Label();
this.groupBox4 = new System.Windows.Forms.GroupBox();
this.panel5 = new System.Windows.Forms.Panel();
this.comboBox4 = new System.Windows.Forms.ComboBox();
this.lblDO4 = new System.Windows.Forms.Label();
this.lblDI4 = new System.Windows.Forms.Label();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.label3 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.panel2 = new System.Windows.Forms.Panel();
this.comboBox2 = new System.Windows.Forms.ComboBox();
this.lblDO2 = new System.Windows.Forms.Label();
this.lblDI2 = new System.Windows.Forms.Label();
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.label2 = new System.Windows.Forms.Label();
this.label1 = new System.Windows.Forms.Label();
this.panel3 = new System.Windows.Forms.Panel();
this.comboBox1 = new System.Windows.Forms.ComboBox();
this.lblDO1 = new System.Windows.Forms.Label();
this.lblDI1 = new System.Windows.Forms.Label();
this.lblDes1 = new System.Windows.Forms.Label();
this.lblDes2 = new System.Windows.Forms.Label();
this.lblDes4 = new System.Windows.Forms.Label();
this.lblDes3 = new System.Windows.Forms.Label();
this.panel1.SuspendLayout();
this.groupBox3.SuspendLayout();
this.panel4.SuspendLayout();
this.groupBox4.SuspendLayout();
this.panel5.SuspendLayout();
this.groupBox2.SuspendLayout();
this.panel2.SuspendLayout();
this.groupBox1.SuspendLayout();
this.panel3.SuspendLayout();
this.SuspendLayout();
//
// timer1
......@@ -39,45 +61,152 @@
// panel1
//
this.panel1.AutoScroll = true;
this.panel1.Controls.Add(this.groupBox3);
this.panel1.Controls.Add(this.groupBox4);
this.panel1.Controls.Add(this.groupBox2);
this.panel1.Controls.Add(this.groupBox1);
this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(1316, 571);
this.panel1.Size = new System.Drawing.Size(1748, 791);
this.panel1.TabIndex = 248;
//
// groupBox3
//
this.groupBox3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)));
this.groupBox3.Controls.Add(this.panel4);
this.groupBox3.Location = new System.Drawing.Point(876, 376);
this.groupBox3.Name = "groupBox3";
this.groupBox3.Size = new System.Drawing.Size(861, 407);
this.groupBox3.TabIndex = 293;
this.groupBox3.TabStop = false;
this.groupBox3.Text = "设备IO列表对比";
//
// panel4
//
this.panel4.AutoScroll = true;
this.panel4.Controls.Add(this.lblDes3);
this.panel4.Controls.Add(this.comboBox3);
this.panel4.Controls.Add(this.lblDO3);
this.panel4.Controls.Add(this.lblDI3);
this.panel4.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel4.Location = new System.Drawing.Point(3, 19);
this.panel4.Name = "panel4";
this.panel4.Size = new System.Drawing.Size(855, 385);
this.panel4.TabIndex = 294;
//
// comboBox3
//
this.comboBox3.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBox3.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.comboBox3.FormattingEnabled = true;
this.comboBox3.ItemHeight = 17;
this.comboBox3.Location = new System.Drawing.Point(14, 3);
this.comboBox3.Name = "comboBox3";
this.comboBox3.Size = new System.Drawing.Size(318, 25);
this.comboBox3.TabIndex = 289;
this.comboBox3.SelectedIndexChanged += new System.EventHandler(this.comboBox3_SelectedIndexChanged);
//
// lblDO3
//
this.lblDO3.AutoSize = true;
this.lblDO3.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblDO3.Location = new System.Drawing.Point(353, 34);
this.lblDO3.Name = "lblDO3";
this.lblDO3.Size = new System.Drawing.Size(31, 17);
this.lblDO3.TabIndex = 293;
this.lblDO3.Text = "DIO";
//
// lblDI3
//
this.lblDI3.AutoSize = true;
this.lblDI3.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblDI3.Location = new System.Drawing.Point(5, 34);
this.lblDI3.Name = "lblDI3";
this.lblDI3.Size = new System.Drawing.Size(31, 17);
this.lblDI3.TabIndex = 292;
this.lblDI3.Text = "DIO";
//
// groupBox4
//
this.groupBox4.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)));
this.groupBox4.Controls.Add(this.panel5);
this.groupBox4.Location = new System.Drawing.Point(5, 376);
this.groupBox4.Name = "groupBox4";
this.groupBox4.Size = new System.Drawing.Size(861, 407);
this.groupBox4.TabIndex = 292;
this.groupBox4.TabStop = false;
this.groupBox4.Text = "设备IO列表";
//
// panel5
//
this.panel5.AutoScroll = true;
this.panel5.Controls.Add(this.lblDes4);
this.panel5.Controls.Add(this.comboBox4);
this.panel5.Controls.Add(this.lblDO4);
this.panel5.Controls.Add(this.lblDI4);
this.panel5.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel5.Location = new System.Drawing.Point(3, 19);
this.panel5.Name = "panel5";
this.panel5.Size = new System.Drawing.Size(855, 385);
this.panel5.TabIndex = 292;
//
// comboBox4
//
this.comboBox4.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBox4.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.comboBox4.FormattingEnabled = true;
this.comboBox4.ItemHeight = 17;
this.comboBox4.Location = new System.Drawing.Point(14, 3);
this.comboBox4.Name = "comboBox4";
this.comboBox4.Size = new System.Drawing.Size(318, 25);
this.comboBox4.TabIndex = 289;
this.comboBox4.SelectedIndexChanged += new System.EventHandler(this.comboBox4_SelectedIndexChanged);
//
// lblDO4
//
this.lblDO4.AutoSize = true;
this.lblDO4.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblDO4.Location = new System.Drawing.Point(353, 35);
this.lblDO4.Name = "lblDO4";
this.lblDO4.Size = new System.Drawing.Size(31, 17);
this.lblDO4.TabIndex = 291;
this.lblDO4.Text = "DIO";
//
// lblDI4
//
this.lblDI4.AutoSize = true;
this.lblDI4.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblDI4.Location = new System.Drawing.Point(5, 35);
this.lblDI4.Name = "lblDI4";
this.lblDI4.Size = new System.Drawing.Size(31, 17);
this.lblDI4.TabIndex = 290;
this.lblDI4.Text = "DIO";
//
// groupBox2
//
this.groupBox2.Controls.Add(this.label3);
this.groupBox2.Controls.Add(this.label4);
this.groupBox2.Controls.Add(this.comboBox2);
this.groupBox2.Location = new System.Drawing.Point(617, 4);
this.groupBox2.Controls.Add(this.panel2);
this.groupBox2.Location = new System.Drawing.Point(875, 4);
this.groupBox2.Name = "groupBox2";
this.groupBox2.Size = new System.Drawing.Size(684, 564);
this.groupBox2.Size = new System.Drawing.Size(861, 369);
this.groupBox2.TabIndex = 291;
this.groupBox2.TabStop = false;
this.groupBox2.Text = "设备IO列表对比";
//
// label3
// panel2
//
this.label3.AutoSize = true;
this.label3.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label3.Location = new System.Drawing.Point(313, 47);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(31, 17);
this.label3.TabIndex = 293;
this.label3.Text = "DIO";
//
// label4
//
this.label4.AutoSize = true;
this.label4.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label4.Location = new System.Drawing.Point(23, 47);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(31, 17);
this.label4.TabIndex = 292;
this.label4.Text = "DIO";
this.panel2.AutoScroll = true;
this.panel2.Controls.Add(this.lblDes2);
this.panel2.Controls.Add(this.comboBox2);
this.panel2.Controls.Add(this.lblDO2);
this.panel2.Controls.Add(this.lblDI2);
this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel2.Location = new System.Drawing.Point(3, 19);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(855, 347);
this.panel2.TabIndex = 294;
//
// comboBox2
//
......@@ -85,43 +214,54 @@
this.comboBox2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.comboBox2.FormattingEnabled = true;
this.comboBox2.ItemHeight = 17;
this.comboBox2.Location = new System.Drawing.Point(26, 16);
this.comboBox2.Location = new System.Drawing.Point(14, 3);
this.comboBox2.Name = "comboBox2";
this.comboBox2.Size = new System.Drawing.Size(318, 25);
this.comboBox2.TabIndex = 289;
this.comboBox2.SelectedIndexChanged += new System.EventHandler(this.comboBox2_SelectedIndexChanged);
//
// lblDO2
//
this.lblDO2.AutoSize = true;
this.lblDO2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblDO2.Location = new System.Drawing.Point(353, 34);
this.lblDO2.Name = "lblDO2";
this.lblDO2.Size = new System.Drawing.Size(31, 17);
this.lblDO2.TabIndex = 293;
this.lblDO2.Text = "DIO";
//
// lblDI2
//
this.lblDI2.AutoSize = true;
this.lblDI2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblDI2.Location = new System.Drawing.Point(5, 34);
this.lblDI2.Name = "lblDI2";
this.lblDI2.Size = new System.Drawing.Size(31, 17);
this.lblDI2.TabIndex = 292;
this.lblDI2.Text = "DIO";
//
// groupBox1
//
this.groupBox1.Controls.Add(this.label2);
this.groupBox1.Controls.Add(this.label1);
this.groupBox1.Controls.Add(this.comboBox1);
this.groupBox1.Controls.Add(this.panel3);
this.groupBox1.Location = new System.Drawing.Point(4, 4);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(606, 564);
this.groupBox1.Size = new System.Drawing.Size(861, 369);
this.groupBox1.TabIndex = 290;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "设备IO列表";
//
// label2
//
this.label2.AutoSize = true;
this.label2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label2.Location = new System.Drawing.Point(313, 47);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(31, 17);
this.label2.TabIndex = 291;
this.label2.Text = "DIO";
//
// label1
// panel3
//
this.label1.AutoSize = true;
this.label1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.label1.Location = new System.Drawing.Point(23, 47);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(31, 17);
this.label1.TabIndex = 290;
this.label1.Text = "DIO";
this.panel3.AutoScroll = true;
this.panel3.Controls.Add(this.lblDes1);
this.panel3.Controls.Add(this.comboBox1);
this.panel3.Controls.Add(this.lblDO1);
this.panel3.Controls.Add(this.lblDI1);
this.panel3.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel3.Location = new System.Drawing.Point(3, 19);
this.panel3.Name = "panel3";
this.panel3.Size = new System.Drawing.Size(855, 347);
this.panel3.TabIndex = 292;
//
// comboBox1
//
......@@ -129,17 +269,77 @@
this.comboBox1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.comboBox1.FormattingEnabled = true;
this.comboBox1.ItemHeight = 17;
this.comboBox1.Location = new System.Drawing.Point(26, 15);
this.comboBox1.Location = new System.Drawing.Point(14, 3);
this.comboBox1.Name = "comboBox1";
this.comboBox1.Size = new System.Drawing.Size(318, 25);
this.comboBox1.TabIndex = 289;
this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.comboBox1_SelectedIndexChanged);
//
// lblDO1
//
this.lblDO1.AutoSize = true;
this.lblDO1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblDO1.Location = new System.Drawing.Point(353, 35);
this.lblDO1.Name = "lblDO1";
this.lblDO1.Size = new System.Drawing.Size(31, 17);
this.lblDO1.TabIndex = 291;
this.lblDO1.Text = "DIO";
//
// lblDI1
//
this.lblDI1.AutoSize = true;
this.lblDI1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblDI1.Location = new System.Drawing.Point(5, 35);
this.lblDI1.Name = "lblDI1";
this.lblDI1.Size = new System.Drawing.Size(31, 17);
this.lblDI1.TabIndex = 290;
this.lblDI1.Text = "DIO";
//
// lblDes1
//
this.lblDes1.AutoSize = true;
this.lblDes1.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblDes1.Location = new System.Drawing.Point(697, 35);
this.lblDes1.Name = "lblDes1";
this.lblDes1.Size = new System.Drawing.Size(51, 17);
this.lblDes1.TabIndex = 292;
this.lblDes1.Text = "lblDes1";
//
// lblDes2
//
this.lblDes2.AutoSize = true;
this.lblDes2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblDes2.Location = new System.Drawing.Point(720, 35);
this.lblDes2.Name = "lblDes2";
this.lblDes2.Size = new System.Drawing.Size(43, 17);
this.lblDes2.TabIndex = 294;
this.lblDes2.Text = "label1";
//
// lblDes4
//
this.lblDes4.AutoSize = true;
this.lblDes4.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblDes4.Location = new System.Drawing.Point(696, 35);
this.lblDes4.Name = "lblDes4";
this.lblDes4.Size = new System.Drawing.Size(43, 17);
this.lblDes4.TabIndex = 295;
this.lblDes4.Text = "label2";
//
// lblDes3
//
this.lblDes3.AutoSize = true;
this.lblDes3.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.lblDes3.Location = new System.Drawing.Point(719, 35);
this.lblDes3.Name = "lblDes3";
this.lblDes3.Size = new System.Drawing.Size(43, 17);
this.lblDes3.TabIndex = 296;
this.lblDes3.Text = "label3";
//
// FrmIOTest
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1316, 571);
this.ClientSize = new System.Drawing.Size(1748, 791);
this.Controls.Add(this.panel1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
......@@ -150,10 +350,18 @@
this.Load += new System.EventHandler(this.FrmStoreIOStatus_Load);
this.Shown += new System.EventHandler(this.FrmIOStatus_Shown);
this.panel1.ResumeLayout(false);
this.groupBox3.ResumeLayout(false);
this.panel4.ResumeLayout(false);
this.panel4.PerformLayout();
this.groupBox4.ResumeLayout(false);
this.panel5.ResumeLayout(false);
this.panel5.PerformLayout();
this.groupBox2.ResumeLayout(false);
this.groupBox2.PerformLayout();
this.panel2.ResumeLayout(false);
this.panel2.PerformLayout();
this.groupBox1.ResumeLayout(false);
this.groupBox1.PerformLayout();
this.panel3.ResumeLayout(false);
this.panel3.PerformLayout();
this.ResumeLayout(false);
}
......@@ -166,10 +374,26 @@
private System.Windows.Forms.GroupBox groupBox2;
private System.Windows.Forms.ComboBox comboBox2;
private System.Windows.Forms.GroupBox groupBox1;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label lblDO2;
private System.Windows.Forms.Label lblDI2;
private System.Windows.Forms.Label lblDO1;
private System.Windows.Forms.Label lblDI1;
private System.Windows.Forms.GroupBox groupBox3;
private System.Windows.Forms.Label lblDO3;
private System.Windows.Forms.Label lblDI3;
private System.Windows.Forms.ComboBox comboBox3;
private System.Windows.Forms.GroupBox groupBox4;
private System.Windows.Forms.Label lblDO4;
private System.Windows.Forms.Label lblDI4;
private System.Windows.Forms.ComboBox comboBox4;
private System.Windows.Forms.Panel panel2;
private System.Windows.Forms.Panel panel4;
private System.Windows.Forms.Panel panel5;
private System.Windows.Forms.Panel panel3;
private System.Windows.Forms.Label lblDes3;
private System.Windows.Forms.Label lblDes4;
private System.Windows.Forms.Label lblDes2;
private System.Windows.Forms.Label lblDes1;
}
}
......@@ -28,7 +28,7 @@ namespace OnlineStore.AssemblyLine
InitializeComponent();
}
private void LoadIOList(int subType)
private void LoadIOList(int subType,Label lblDI,Label lblDO,Label lblDes)
{
List<ConfigIO> DIList = new List<ConfigIO>();
List<ConfigIO> DOList = new List<ConfigIO>();
......@@ -36,42 +36,31 @@ namespace OnlineStore.AssemblyLine
DOList = new List<ConfigIO>(DeviceConfig.SubDOList[subType].Values);
label1.Text = "";
label2.Text = "";
lblDI.Text = "";
lblDO.Text = "";
foreach (ConfigIO ioValue in DIList)
{
label1.Text+= ioValue.ElectricalDefinition + "_" + ioValue.Explain +"_"+ioValue.ProName+"\r\n";
lblDI.Text+= ioValue.ElectricalDefinition + "_" + ioValue.Explain +"_"+ioValue.ProName+"\r\n";
}
foreach (ConfigIO ioValue in DOList)
{
label2.Text += ioValue.ElectricalDefinition + "_" + ioValue.Explain + "_" + ioValue.ProName + "\r\n";
lblDO.Text += ioValue.ElectricalDefinition + "_" + ioValue.Explain + "_" + ioValue.ProName + "\r\n";
}
this.SuspendLayout(); //此处为不闪屏,一定要有的!
}
private void LoadIOList2(int subType)
{
List<ConfigIO> DIList = new List<ConfigIO>();
List<ConfigIO> DOList = new List<ConfigIO>();
DIList = new List<ConfigIO>(DeviceConfig.SubDIList[subType].Values);
DOList = new List<ConfigIO>(DeviceConfig.SubDOList[subType].Values);
label3.Text = "";
label4.Text = "";
foreach (ConfigIO ioValue in DIList)
if (LineManager.Line.HYEquipMap.ContainsKey(subType))
{
label4.Text += ioValue.ElectricalDefinition + "_" + ioValue.Explain + "_" + ioValue.ProName + "\r\n";
lblDes.Text = LineManager.Line.HYEquipMap[subType].GetHYDesc();
}
foreach (ConfigIO ioValue in DOList)
else
{
label3.Text += ioValue.ElectricalDefinition + "_" + ioValue.Explain + "_" + ioValue.ProName + "\r\n";
lblDes.Text = "";
}
this.SuspendLayout(); //此处为不闪屏,一定要有的!
}
private void FrmTest_FormClosing(object sender, FormClosingEventArgs e)
{
......@@ -89,8 +78,8 @@ namespace OnlineStore.AssemblyLine
LogUtil.error("",ex);
}
}
private Dictionary<int, string> deviceList = new Dictionary<int, string>();
private Dictionary<int, string> deviceList = new Dictionary<int, string>();
private void FrmStoreIOStatus_Load(object sender, EventArgs e)
{
// KNDAIManager.NeedShow = true;
......@@ -132,12 +121,18 @@ namespace OnlineStore.AssemblyLine
{
comboBox1.Items.Add(key);
comboBox2.Items.Add(key);
comboBox3.Items.Add(key);
comboBox4.Items.Add(key);
}
comboBox1.SelectedIndex = 0;
LoadIOList(0);
comboBox1.SelectedIndex = 0;
comboBox2.SelectedIndex = 1;
comboBox3.SelectedIndex = 2;
comboBox4.SelectedIndex = 3;
comboBox2.SelectedIndex = 0;
LoadIOList2(0);
LoadIOList(0,lblDI1,lblDO1,lblDes1);
LoadIOList(1, lblDI2, lblDO2,lblDes2);
LoadIOList(2, lblDI3, lblDO3,lblDes3);
LoadIOList(3, lblDI4, lblDO4,lblDes4);
}
......@@ -153,7 +148,7 @@ namespace OnlineStore.AssemblyLine
{
List<int> list = new List<int>(deviceList.Keys);
int subType = list[comboBox1.SelectedIndex];
LoadIOList(subType);
LoadIOList(subType,lblDI1,lblDO1, lblDes1);
}
}
......@@ -163,8 +158,29 @@ namespace OnlineStore.AssemblyLine
{
List<int> list = new List<int>(deviceList.Keys);
int subType = list[comboBox2.SelectedIndex];
LoadIOList2(subType);
LoadIOList(subType,lblDI2,lblDO2, lblDes2);
}
}
private void comboBox4_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox4.SelectedIndex >= 0)
{
List<int> list = new List<int>(deviceList.Keys);
int subType = list[comboBox4.SelectedIndex];
LoadIOList(subType, lblDI4, lblDO4, lblDes4);
}
}
private void comboBox3_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox3.SelectedIndex >= 0)
{
List<int> list = new List<int>(deviceList.Keys);
int subType = list[comboBox3.SelectedIndex];
LoadIOList(subType, lblDI3, lblDO3, lblDes3);
}
}
}
}
......@@ -289,7 +289,7 @@ namespace OnlineStore.AssemblyLine
private void btnSWRun_Click(object sender, EventArgs e)
{
BtnMove(btnTopDown, "T3-C1顶升上升", "T3-C1顶升下降", IO_Type.HY_TopCylinder_Down,IO_Type.HY_TopCylinder_UP );
BtnMove(btnTopDown, "T3-C1顶升上升", "T3-C1顶升下降", IO_Type.HY_TopCylinder_Down,IO_Type.HY_TopCylinder_Up );
}
......
......@@ -423,7 +423,7 @@
this.lblThisSta.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblThisSta.Location = new System.Drawing.Point(274, 64);
this.lblThisSta.Name = "lblThisSta";
this.lblThisSta.Size = new System.Drawing.Size(378, 132);
this.lblThisSta.Size = new System.Drawing.Size(372, 132);
this.lblThisSta.TabIndex = 246;
this.lblThisSta.Text = "等待启动";
this.lblThisSta.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
......@@ -532,7 +532,7 @@
this.groupBox6.Controls.Add(this.lblThisSta);
this.groupBox6.Location = new System.Drawing.Point(498, 161);
this.groupBox6.Name = "groupBox6";
this.groupBox6.Size = new System.Drawing.Size(658, 352);
this.groupBox6.Size = new System.Drawing.Size(652, 352);
this.groupBox6.TabIndex = 278;
this.groupBox6.TabStop = false;
this.groupBox6.Text = "消息";
......@@ -544,7 +544,7 @@
this.lblInoutInfo.ForeColor = System.Drawing.Color.Green;
this.lblInoutInfo.Location = new System.Drawing.Point(13, 16);
this.lblInoutInfo.Name = "lblInoutInfo";
this.lblInoutInfo.Size = new System.Drawing.Size(639, 42);
this.lblInoutInfo.Size = new System.Drawing.Size(633, 42);
this.lblInoutInfo.TabIndex = 281;
this.lblInoutInfo.Text = "当前出入库:";
//
......@@ -568,7 +568,7 @@
this.lblInstoreList.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;
this.lblInstoreList.Location = new System.Drawing.Point(274, 180);
this.lblInstoreList.Name = "lblInstoreList";
this.lblInstoreList.Size = new System.Drawing.Size(378, 115);
this.lblInstoreList.Size = new System.Drawing.Size(372, 115);
this.lblInstoreList.TabIndex = 277;
//
// tabPage2
......
......@@ -401,7 +401,7 @@ namespace OnlineStore.AssemblyLine
private void btnTopUp_Click(object sender, EventArgs e)
{
BtnMove(btnTopUp, "顶升上升", "顶升下降", IO_Type.TopCylinder_Down, IO_Type.TopCylinder_UP);
BtnMove(btnTopUp, "顶升上升", "顶升下降", IO_Type.TopCylinder_Down, IO_Type.TopCylinder_Up);
}
private void btnBeforeAfterBefore_Click(object sender, EventArgs e)
......
......@@ -21,19 +21,65 @@
上料机构,入料判断托盘是否到位,放行托盘,从lineBean里调用
紧急出料,开始紧急出库横移主动调用开始 托盘出库方法。放行从lineBean里调用
HY,T3C1,只使用MoveInfo,SecondMoveInfo暂不使用,托盘处理MoveType=CheckFixture;
出料与托盘关联
四楼环形线问题:
移栽入库过程中报警,导致托盘信息未清除。
托盘 [35] [23:36:12] [有料] [入料: [35] [R00922020101502653] [4D1206CC0018] [7x8],InStoreNg [False],urgentReel [False],cutReel [False],smallReel [False],rfid [B25],rfidLoc [0]]
[2020-11-04 23:39:41,242][167]ERROR [_进仓_12-Move][InStore][MI_06_CylinderDown]等待 [X434-进仓12升降下降端-UpDownCylinder_Down=HIGH]超时[151.5]秒[2020-11-04 23:39:42,024][1]INFO _进仓_12 点击:复位
[2020-11-04 23:39:42,024][1]INFO _进仓_12 点击 :复位
[2020-11-04 23:39:42,024][1]INFO _进仓_12 停止运动:上下气缸上升端,阻挡气缸上升
[2020-11-04 23:39:42,133][1]INFO _进仓_12 开始重置: 升降轴回原点,阻挡气缸上升
[2020-11-05 11:45:14,568][1]INFO 托盘 [36] [23:40:59] [有料] [入料: [36] [R0080820200910E1123] [4D0117CC0019] [7x8],InStoreNg [False],urgentReel [False],cutReel [False],smallReel [False],rfid [B7],rfidLoc [0]]
[2020-11-04 23:41:36,352][159]ERROR [_进仓_01-Move][_进仓_01-Move][InStore][MI_11_CylinderDown] 等待 [X284-进仓1升降下降端-UpDownCylinder_Down=HIGH] 超时 986.3秒
[2020-11-04 23:41:44,016][1]INFO _进仓_01 点击:复位
[2020-11-04 23:41:44,016][1]INFO _进仓_01 点击 :复位
[2020-11-04 23:41:44,016][1]INFO _进仓_01 停止运动:上下气缸上升端,阻挡气缸上升
[2020-11-04 23:41:44,110][150]INFO _入料_2 [3256] IP [192.168.210.110] [33] 当前托盘 [23]
[2020-11-04 23:41:44,126][1]INFO _进仓_01 开始重置: 升降轴回原点,阻挡气缸上升
[2020-11-05 11:45:14,537][1]INFO 托盘 [2] [16:59:10] [有料] [入料: [2] [R04192020092750364] [4D1704CC0020] [7x8],InStoreNg [False],urgentReel [False],cutReel [False],smallReel [False],rfid [B16],rfidLoc [0]]
[2020-11-05 11:45:14,537][1]INFO 托盘 [3] [18:21:53] [有料] [入料: [3] [R04192020083152252] [4D1403AA0023] [7x8],InStoreNg [False],urgentReel [False],cutReel [False],smallReel [False],rfid [B14],rfidLoc [0]]
[2020-11-05 11:45:14,537][1]INFO 托盘 [15] [8:18:43] [有料] [入料: [15] [R008062020082601596] [4D0808BB0003] [7x8],InStoreNg [False],urgentReel [False],cutReel [False],smallReel [False],rfid [B24],rfidLoc [0]]
[2020-11-04 17:01:17,688][169]INFO _进仓_17 *******托盘2需要入库【 [2] [R04192020092750364] [4D1704CC0020] [7x8],InStoreNg [False],urgentReel [False],cutReel [False],smallReel [False],rfid [B16],rfidLoc [0]】 ,开始入库移栽
[2020-11-04 17:03:16,242][124]ERROR [_进仓_17-Move][_进仓_17-Move][InStore][MI_06_CylinderDown] 等待 [X540-进仓17升降下降端-UpDownCylinder_Down=HIGH] 超时 117秒
[2020-11-04 17:03:17,792][1]INFO _进仓_17 点击:复位
[2020-11-04 17:03:17,792][1]INFO _进仓_17 点击 :复位
[2020-11-04 17:03:17,792][1]INFO _进仓_17 停止运动:上下气缸上升端,阻挡气缸上升
[2020-11-04 18:23:39,676][152]INFO _进仓_14 *******托盘3需要入库【 [3] [R04192020083152252] [4D1403AA0023] [7x8],InStoreNg [False],urgentReel [False],cutReel [False],smallReel [False],rfid [B14],rfidLoc [0]】 ,开始入库移栽
[2020-11-04 18:23:39,679][152]INFO _进仓_14 23980*************** 托盘【3】,有对应的入库任务,等待移栽
[2020-11-04 18:25:38,330][162]ERROR [_进仓_14-Move][_进仓_14-Move][InStore][MI_11_CylinderDown] 等待 [X474-进仓14升降下降端-UpDownCylinder_Down=HIGH] 超时 322.6秒
[2020-11-04 18:25:38,330][162]ERROR [_进仓_14-Move][InStore][MI_11_CylinderDown]等待 [X474-进仓14升降下降端-UpDownCylinder_Down=HIGH]超时[322.6]秒
Line 467047: [2020-11-04 18:30:49,333][1]INFO _进仓_14 点击:复位
Line 467048: [2020-11-04 18:30:49,333][1]INFO _进仓_14 点击 :复位
Line 467049: [2020-11-04 18:30:49,333][1]INFO _进仓_14 停止运动:上下气缸上升端,阻挡气缸上升
Line 467050: [2020-11-04 18:30:49,420][1]INFO _进仓_14 开始重置: 升降轴回原点,阻挡气缸上升
Line 219740: [2020-11-05 08:19:09,983][139]INFO _进仓_08 *******托盘15需要入库【 [15] [R008062020082601596] [4D0808BB0003] [7x8],InStoreNg [False],urgentReel [False],cutReel [False],smallReel [False],rfid [B24],rfidLoc [0]】 ,开始入库移栽
Line 220403: [2020-11-05 08:21:08,589][139]ERROR [_进仓_08-Move][_进仓_08-Move][InStore][MI_06_CylinderDown] 等待 [X376-进仓8升降下降端-UpDownCylinder_Down=HIGH] 超时 117秒
Line 220403: [2020-11-05 08:21:08,589][139]ERROR [_进仓_08-Move][_进仓_08-Move][InStore][MI_06_CylinderDown] 等待 [X376-进仓8升降下降端-UpDownCylinder_Down=HIGH] 超时 117秒
Line 220427: [2020-11-05 08:21:18,680][1]INFO _进仓_08 点击:复位
Line 220428: [2020-11-05 08:21:18,680][1]INFO _进仓_08 点击 :复位
Line 220429: [2020-11-05 08:21:18,680][1]INFO _进仓_08 停止运动:上下气缸上升端,阻挡气缸上升
......
......@@ -3,8 +3,8 @@ PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,1,,
PRO,0,当多久没操作时流水线休眠(秒),Sleep_MSeconds,600,,
PRO,0,气压检测信号关闭需要持续的时间,AirCheckSeconds,600,,
PRO,0,IO信号超时时间(秒),IOSingle_TimerOut,15,,
PRO,0,IO模块对应的DI数量,IO_DILength,192.168.111.33#8;192.168.111.35#8;192.168.111.37#16;192.168.111.39#8;192.168.111.41#16;,,
PRO,0,模块对应的DO数量,IO_DOLength,192.168.111.33#8;192.168.111.35#8;192.168.111.37#16;192.168.111.39#8;192.168.111.41#16;,,
,0,IO模块对应的DI数量,IO_DILength,,,
,0,模块对应的DO数量,IO_DOLength,,,
,,,,,,
,,,,,,
PRO,0,D1-1移栽1-托盘-RFID-IP,PRO_RFIP_001,192.168.210.138,,
......@@ -66,9 +66,9 @@ DI,217,C7-HY17阻挡托盘检测,HY_StopTray_Check,3,HC,X03
DI,217,HY17横移托盘检测,HY_TrayCheck,4,HC,X04
DI,217,HY17横移顶升上升端,HY_TopCylinder_UP,5,HC,X05
DI,217,HY17横移顶升下降端,HY_TopCylinder_Down,6,HC,X06
DI,217,HY17横移定位1上升端,HY_LocationCylinder_UP1,7,HC,X07
DI,217,HY17横移定位1上升端,HY_LocationCylinder_Up1,7,HC,X07
DI,217,HY17横移定位1下降端,HY_LocationCylinder_Down1,8,HC,X08
DI,217,HY17横移定位2上升端,HY_LocationCylinder_UP2,9,HC,X09
DI,217,HY17横移定位2上升端,HY_LocationCylinder_Up2,9,HC,X09
DI,217,HY17横移定位2下降端,HY_LocationCylinder_Down2,10,HC,X10
DI,217,HY17接驳台气缸取料端,HY_MoveCylinder_Take,11,HC,X11
DI,217,HY17接驳台气缸放料端,HY_MoveCylinder_Give,12,HC,X12
......@@ -83,9 +83,9 @@ DO,0,故障状态(蜂鸣器),Alarm_Buzzer,3,HC,Y03
DO,0,C6/C7/C9线体运转,MotorRun_679,4,HC,Y04
DO,217,HY17横移电机正转,HY_LineRun,5,HC,Y05
DO,217,HY17阻挡下降,HY_StopDown,6,HC,Y06
DO,217,HY17横移顶升上升,HY_TopCylinder_UP,7,HC,Y07
DO,217,HY17横移顶升上升,HY_TopCylinder_Up,7,HC,Y07
DO,217,HY17横移顶升下降,HY_TopCylinder_Down,8,HC,Y08
DO,217,HY17横移定位上升,HY_LocationCylinder_UP,9,HC,Y09
DO,217,HY17横移定位上升,HY_LocationCylinder_Up,9,HC,Y09
DO,217,HY17横移定位下降,HY_LocationCylinder_Down,10,HC,Y10
DO,217,HY17接驳台气缸取料,HY_MoveCylinder_Take,11,HC,Y11
DO,217,HY17接驳台气缸放料,HY_MoveCylinder_Give,12,HC,Y12
......@@ -97,7 +97,7 @@ DO,217,HY17夹料气缸放松,HY_ClampCylinder_Relax,14,HC,Y14
,,D11&D12&HY15,D11&D12&HY15,,,
DI,22,D11-1阻挡1托盘检测,StopCheck1,16,HC,X16
DI,22,D11-1阻挡2托盘检测,StopCheck2,17,HC,X17
DI,22,D11-1顶升上升端,TopCylinder_UP,18,HC,X18
DI,22,D11-1顶升上升端,TopCylinder_Up,18,HC,X18
DI,22,D11-1顶升下降端,TopCylinder_Down,19,HC,X19
DI,22,D11-1横移前进端,BeforeAfterCylinder_Before,20,HC,X20
DI,22,D11-1横移后退端,BeforeAfterCylinder_After,21,HC,X21
......@@ -107,7 +107,7 @@ DI,22,D11-1升降上升端,UpDownCylinder_Up,24,HC,X24
DI,22,D11-1升降下降端,UpDownCylinder_Down,25,HC,X25
DI,21,D11-2阻挡1托盘检测,StopCheck1,26,HC,X26
DI,21,D11-2阻挡2托盘检测,StopCheck2,27,HC,X27
DI,21,D11-2顶升上升端,TopCylinder_UP,28,HC,X28
DI,21,D11-2顶升上升端,TopCylinder_Up,28,HC,X28
DI,21,D11-2顶升下降端,TopCylinder_Down,29,HC,X29
DI,21,D11-2横移前进端,BeforeAfterCylinder_Before,30,HC,X30
DI,21,D11-2横移后退端,BeforeAfterCylinder_After,31,HC,X31
......@@ -117,7 +117,7 @@ DI,21,D11-2升降上升端,UpDownCylinder_Up,34,HC,X34
DI,21,D11-2升降下降端,UpDownCylinder_Down,35,HC,X35
DI,24,D12-1阻挡1托盘检测,StopCheck1,36,HC,X36
DI,24,D12-1阻挡2托盘检测,StopCheck2,37,HC,X37
DI,24,D12-1顶升上升端,TopCylinder_UP,38,HC,X38
DI,24,D12-1顶升上升端,TopCylinder_Up,38,HC,X38
DI,24,D12-1顶升下降端,TopCylinder_Down,39,HC,X39
DI,24,D12-1横移前进端,BeforeAfterCylinder_Before,40,HC,X40
DI,24,D12-1横移后退端,BeforeAfterCylinder_After,41,HC,X41
......@@ -125,7 +125,7 @@ DI,24,D12-1夹料气缸料盘检测,ClampCylinder_Check,42,HC,X42
DI,24,D12-1夹料放松端,ClampCylinder_Relax,43,HC,X43
DI,23,D12-2阻挡1托盘检测,StopCheck1,44,HC,X44
DI,23,D12-2阻挡2托盘检测,StopCheck2,45,HC,X45
DI,23,D12-2顶升上升端,TopCylinder_UP,46,HC,X46
DI,23,D12-2顶升上升端,TopCylinder_Up,46,HC,X46
DI,23,D12-2顶升下降端,TopCylinder_Down,47,HC,X47
DI,23,D12-2横移前进端,BeforeAfterCylinder_Before,48,HC,X48
DI,23,D12-2横移后退端,BeforeAfterCylinder_After,49,HC,X49
......@@ -133,7 +133,7 @@ DI,23,D12-2夹料气缸料盘检测,ClampCylinder_Check,50,HC,X50
DI,23,D12-2夹料放松端,ClampCylinder_Relax,51,HC,X51
DI,216,HY16前阻挡托盘检测,HY_FrontStopCheck,52,HC,X52
DI,216,HY16横移托盘检测,HY_TrayCheck,53,HC,X53
DI,216,HY16横移顶升上升端,HY_TopCylinder_UP,54,HC,X54
DI,216,HY16横移顶升上升端,HY_TopCylinder_Up,54,HC,X54
DI,216,HY16横移顶升下降端,HY_TopCylinder_Down,55,HC,X55
DI,216,HY16-C7阻挡上升端,HY_StopCylinder_Up,56,HC,X56
DI,216,HY16-C7阻挡下降端,HY_StopCylinder_Down,57,HC,X57
......@@ -147,7 +147,7 @@ DI,217,C7-HY17满料检测,HY_TrayImpletion_Check,58,HC,X58
,,,,,,
DO,22,D11-1阻挡1下降,StopDown1,16,HC,Y16
DO,22,D11-1阻挡2下降,StopDown2,17,HC,Y17
DO,22,D11-1顶升上升,TopCylinder_UP,18,HC,Y18
DO,22,D11-1顶升上升,TopCylinder_Up,18,HC,Y18
DO,22,D11-1顶升下降,TopCylinder_Down,19,HC,Y19
DO,22,D11-1横移前进,BeforeAfterCylinder_Before,20,HC,Y20
DO,22,D11-1横移后退,BeforeAfterCylinder_After,21,HC,Y21
......@@ -157,7 +157,7 @@ DO,22,D11-1升降上升,UpDownCylinder_Up,24,HC,Y24
DO,22,D11-1升降下降,UpDownCylinder_Down,25,HC,Y25
DO,21,D11-2阻挡1下降,StopDown1,26,HC,Y26
DO,21,D11-2阻挡2下降,StopDown2,27,HC,Y27
DO,21,D11-2顶升上升,TopCylinder_UP,28,HC,Y28
DO,21,D11-2顶升上升,TopCylinder_Up,28,HC,Y28
DO,21,D11-2顶升下降,TopCylinder_Down,29,HC,Y29
DO,21,D11-2横移前进,BeforeAfterCylinder_Before,30,HC,Y30
DO,21,D11-2横移后退,BeforeAfterCylinder_After,31,HC,Y31
......@@ -167,7 +167,7 @@ DO,21,D11-2升降上升,UpDownCylinder_Up,34,HC,Y34
DO,21,D11-2升降下降,UpDownCylinder_Down,35,HC,Y35
DO,24,D12-1阻挡1下降,StopDown1,36,HC,Y36
DO,24,D12-1阻挡2下降,StopDown2,37,HC,Y37
DO,24,D12-1顶升上升,TopCylinder_UP,38,HC,Y38
DO,24,D12-1顶升上升,TopCylinder_Up,38,HC,Y38
DO,24,D12-1顶升下降,TopCylinder_Down,39,HC,Y39
DO,24,D12-1横移前进,BeforeAfterCylinder_Before,40,HC,Y40
DO,24,D12-1横移后退,BeforeAfterCylinder_After,41,HC,Y41
......@@ -175,14 +175,14 @@ DO,24,D12-1夹料夹紧,ClampCylinder_Work,42,HC,Y42
DO,24,D12-1夹料放松,ClampCylinder_Relax,43,HC,Y43
DO,23,D12-2阻挡1下降,StopDown1,44,HC,Y44
DO,23,D12-2阻挡2下降,StopDown2,45,HC,Y45
DO,23,D12-2顶升上升,TopCylinder_UP,46,HC,Y46
DO,23,D12-2顶升上升,TopCylinder_Up,46,HC,Y46
DO,23,D12-2顶升下降,TopCylinder_Down,47,HC,Y47
DO,23,D12-2横移前进,BeforeAfterCylinder_Before,48,HC,Y48
DO,23,D12-2横移后退,BeforeAfterCylinder_After,49,HC,Y49
DO,23,D12-2夹料夹紧,ClampCylinder_Work,50,HC,Y50
DO,23,D12-2夹料放松,ClampCylinder_Relax,51,HC,Y51
DO,216,HY16横移电机正转,HY_LineRun,52,HC,Y52
DO,216,HY16横移顶升上升,HY_TopCylinder_UP,53,HC,Y53
DO,216,HY16横移顶升上升,HY_TopCylinder_Up,53,HC,Y53
DO,216,HY16横移顶升下降,HY_TopCylinder_Down,54,HC,Y54
DO,216,HY16前阻挡下降,HY_FrontStopDown,55,HC,Y55
DO,216,HY16阻挡下降,HY_StopDown,56,HC,Y56
......@@ -231,14 +231,14 @@ DI,105,T5上料气缸料盘检测,SL_ClampCylinder_Check,92,HC,X92
,,,,,,
DI,219,HY19前阻挡托盘检测,HY_FrontStopCheck,96,HC,X96
DI,219,HY19横移托盘检测,HY_TrayCheck,97,HC,X97
DI,219,HY19横移顶升上升端,HY_TopCylinder_UP,98,HC,X98
DI,219,HY19横移顶升上升端,HY_TopCylinder_Up,98,HC,X98
DI,219,HY19横移顶升下降端,HY_TopCylinder_Down,99,HC,X99
DI,221,HY21横移托盘检测,HY_TrayCheck,100,HC,X100
DI,221,HY21横移顶升上升端,HY_TopCylinder_UP,101,HC,X101
DI,221,HY21横移顶升上升端,HY_TopCylinder_Up,101,HC,X101
DI,221,HY21横移顶升下降端,HY_TopCylinder_Down,102,HC,X102
DI,221,HY21横移定位1上升端,HY_LocationCylinder_UP1,103,HC,X103
DI,221,HY21横移定位1上升端,HY_LocationCylinder_Up1,103,HC,X103
DI,221,HY21横移定位1下降端,HY_LocationCylinder_Down1,104,HC,X104
DI,221,HY21横移定位2上升端,HY_LocationCylinder_UP2,105,HC,X105
DI,221,HY21横移定位2上升端,HY_LocationCylinder_Up2,105,HC,X105
DI,221,HY21横移定位2下降端,HY_LocationCylinder_Down2,106,HC,X106
,,,,107,HC,X107
,,,,108,HC,X108
......@@ -268,13 +268,13 @@ DO,105,T5上料气缸放松,SL_ClampCylinder_Relax,82,HC,Y82
DO,105,T5上料气缸夹紧,SL_ClampCylinder_Work,83,HC,Y83
DO,105,T5托盘定位气缸前进,SL_TrayLocation_Before,84,HC,Y84
DO,105,T5托盘定位气缸后退,SL_TrayLocation_After,85,HC,Y85
DO,219,HY19横移顶升上升,HY_TopCylinder_UP,86,HC,Y86
DO,219,HY19横移顶升上升,HY_TopCylinder_Up,86,HC,Y86
DO,219,HY19横移顶升下降,HY_TopCylinder_Down,87,HC,Y87
DO,219,HY19前阻挡下降,HY_FrontStopDown,88,HC,Y88
DO,219,HY19阻挡下降,HY_StopDown,89,HC,Y89
DO,221,HY21横移顶升上升,HY_TopCylinder_UP,90,HC,Y90
DO,221,HY21横移顶升上升,HY_TopCylinder_Up,90,HC,Y90
DO,221,HY21横移顶升下降,HY_TopCylinder_Down,91,HC,Y91
DO,221,HY21横移定位上升,HY_LocationCylinder_UP,92,HC,Y92
DO,221,HY21横移定位上升,HY_LocationCylinder_Up,92,HC,Y92
DO,221,HY21横移定位下降,HY_LocationCylinder_Down,93,HC,Y93
,,,,94,HC,Y94
,,,,95,HC,Y95
......@@ -316,14 +316,14 @@ DI,104,T4出口检测,SL_OutLine_Check,141,HC,X141
,,,,143,HC,X143
DI,218,HY18前阻挡托盘检测,HY_FrontStopCheck,144,HC,X144
DI,218,HY18横移托盘检测,HY_TrayCheck,145,HC,X145
DI,218,HY18横移顶升上升端,HY_TopCylinder_UP,146,HC,X146
DI,218,HY18横移顶升上升端,HY_TopCylinder_Up,146,HC,X146
DI,218,HY18横移顶升下降端,HY_TopCylinder_Down,147,HC,X147
DI,220,HY20横移托盘检测,HY_TrayCheck,148,HC,X148
DI,220,HY20横移顶升上升端,HY_TopCylinder_UP,149,HC,X149
DI,220,HY20横移顶升上升端,HY_TopCylinder_Up,149,HC,X149
DI,220,HY20横移顶升下降端,HY_TopCylinder_Down,150,HC,X150
DI,220,HY20横移定位1上升端,HY_LocationCylinder_UP1,151,HC,X151
DI,220,HY20横移定位1上升端,HY_LocationCylinder_Up1,151,HC,X151
DI,220,HY20横移定位1下降端,HY_LocationCylinder_Down1,152,HC,X152
DI,220,HY20横移定位2上升端,HY_LocationCylinder_UP2,153,HC,X153
DI,220,HY20横移定位2上升端,HY_LocationCylinder_Up2,153,HC,X153
DI,220,HY20横移定位2下降端,HY_LocationCylinder_Down2,154,HC,X154
,,,,155,HC,X155
,,,,156,HC,X156
......@@ -355,20 +355,20 @@ DO,104,T4上料气缸放松,SL_ClampCylinder_Relax,116,HC,Y116
DO,104,T4上料气缸夹紧,SL_ClampCylinder_Work,117,HC,Y117
DO,104,T4托盘定位气缸前进,SL_TrayLocation_Before,118,HC,Y118
DO,104,T4托盘定位气缸后退,SL_TrayLocation_After,119,HC,Y119
DO,218,HY18横移顶升上升,HY_TopCylinder_UP,120,HC,Y120
DO,218,HY18横移顶升上升,HY_TopCylinder_Up,120,HC,Y120
DO,218,HY18横移顶升下降,HY_TopCylinder_Down,121,HC,Y121
DO,218,HY18前阻挡下降,HY_FrontStopDown,122,HC,Y122
DO,218,HY18阻挡下降,HY_StopDown,123,HC,Y123
DO,220,HY20横移顶升上升,HY_TopCylinder_UP,124,HC,Y124
DO,220,HY20横移顶升上升,HY_TopCylinder_Up,124,HC,Y124
DO,220,HY20横移顶升下降,HY_TopCylinder_Down,125,HC,Y125
DO,220,HY20横移定位上升,HY_LocationCylinder_UP,126,HC,Y126
DO,220,HY20横移定位上升,HY_LocationCylinder_Up,126,HC,Y126
DO,220,HY20横移定位下降,HY_LocationCylinder_Down,127,HC,Y127
,,,,,,
,,XT3,XT3,,,
,,D6&HY15,D6&HY15,,,
DI,11,D6-1阻挡1托盘检测,StopCheck1,160,HC,X160
DI,11,D6-1阻挡2托盘检测,StopCheck2,161,HC,X161
DI,11,D6-1顶升上升端,TopCylinder_UP,162,HC,X162
DI,11,D6-1顶升上升端,TopCylinder_Up,162,HC,X162
DI,11,D6-1顶升下降端,TopCylinder_Down,163,HC,X163
DI,11,D6-1横移前进端,BeforeAfterCylinder_Before,164,HC,X164
DI,11,D6-1横移后退端,BeforeAfterCylinder_After,165,HC,X165
......@@ -378,7 +378,7 @@ DI,11,D6-1升降上升端,UpDownCylinder_Up,168,HC,X168
DI,11,D6-1升降下降端,UpDownCylinder_Down,169,HC,X169
DI,12,D6-2阻挡1托盘检测,StopCheck1,170,HC,X170
DI,12,D6-2阻挡2托盘检测,StopCheck2,171,HC,X171
DI,12,D6-2顶升上升端,TopCylinder_UP,172,HC,X172
DI,12,D6-2顶升上升端,TopCylinder_Up,172,HC,X172
DI,12,D6-2顶升下降端,TopCylinder_Down,173,HC,X173
DI,12,D6-2横移前进端,BeforeAfterCylinder_Before,174,HC,X174
DI,12,D6-2横移后退端,BeforeAfterCylinder_After,175,HC,X175
......@@ -388,7 +388,7 @@ DI,12,D6-2升降上升端,UpDownCylinder_Up,178,HC,X178
DI,12,D6-2升降下降端,UpDownCylinder_Down,179,HC,X179
DI,215,HY15前阻挡托盘检测,HY_FrontStopCheck,180,HC,X180
DI,215,HY15横移托盘检测,HY_TrayCheck,181,HC,X181
DI,215,HY15横移顶升上升端,HY_TopCylinder_UP,182,HC,X182
DI,215,HY15横移顶升上升端,HY_TopCylinder_Up,182,HC,X182
DI,215,HY15横移顶升下降端,HY_TopCylinder_Down,183,HC,X183
,,,,184,HC,X184
,,,,185,HC,X185
......@@ -401,7 +401,7 @@ DI,215,HY15横移顶升下降端,HY_TopCylinder_Down,183,HC,X183
,,,,,,
DO,11,D6-1阻挡1下降,StopDown1,128,HC,Y128
DO,11,D6-1阻挡2下降,StopDown2,129,HC,Y129
DO,11,D6-1顶升上升,TopCylinder_UP,130,HC,Y130
DO,11,D6-1顶升上升,TopCylinder_Up,130,HC,Y130
DO,11,D6-1顶升下降,TopCylinder_Down,131,HC,Y131
DO,11,D6-1横移前进,BeforeAfterCylinder_Before,132,HC,Y132
DO,11,D6-1横移后退,BeforeAfterCylinder_After,133,HC,Y133
......@@ -411,7 +411,7 @@ DO,11,D6-1升降上升,UpDownCylinder_Up,136,HC,Y136
DO,11,D6-1升降下降,UpDownCylinder_Down,137,HC,Y137
DO,12,D6-2阻挡1下降,StopDown1,138,HC,Y138
DO,12,D6-2阻挡2下降,StopDown2,139,HC,Y139
DO,12,D6-2顶升上升,TopCylinder_UP,140,HC,Y140
DO,12,D6-2顶升上升,TopCylinder_Up,140,HC,Y140
DO,12,D6-2顶升下降,TopCylinder_Down,141,HC,Y141
DO,12,D6-2横移前进,BeforeAfterCylinder_Before,142,HC,Y142
DO,12,D6-2横移后退,BeforeAfterCylinder_After,143,HC,Y143
......@@ -420,7 +420,7 @@ DO,12,D6-2夹料放松,ClampCylinder_Relax,145,HC,Y145
DO,12,D6-2升降上升,UpDownCylinder_Up,146,HC,Y146
DO,12,D6-2升降下降,UpDownCylinder_Down,147,HC,Y147
DO,215,HY15横移电机正转,HY_LineRun,148,HC,Y148
DO,215,HY15横移顶升上升,HY_TopCylinder_UP,149,HC,Y149
DO,215,HY15横移顶升上升,HY_TopCylinder_Up,149,HC,Y149
DO,215,HY15横移顶升下降,HY_TopCylinder_Down,150,HC,Y150
DO,215,HY15前阻挡下降,HY_FrontStopDown,151,HC,Y151
DO,215,HY15阻挡下降,HY_StopDown,152,HC,Y152
......@@ -437,7 +437,7 @@ DO,215,HY15阻挡下降,HY_StopDown,152,HC,Y152
,,D4&D5&HY13,D4&D5&HY13,,,
DI,7,D4-1阻挡1托盘检测,StopCheck1,192,HC,X192
DI,7,D4-1阻挡2托盘检测,StopCheck2,193,HC,X193
DI,7,D4-1顶升上升端,TopCylinder_UP,194,HC,X194
DI,7,D4-1顶升上升端,TopCylinder_Up,194,HC,X194
DI,7,D4-1顶升下降端,TopCylinder_Down,195,HC,X195
DI,7,D4-1横移前进端,BeforeAfterCylinder_Before,196,HC,X196
DI,7,D4-1横移后退端,BeforeAfterCylinder_After,197,HC,X197
......@@ -447,7 +447,7 @@ DI,7,D4-1升降上升端,UpDownCylinder_Up,200,HC,X200
DI,7,D4-1升降下降端,UpDownCylinder_Down,201,HC,X201
DI,8,D4-2阻挡1托盘检测,StopCheck1,202,HC,X202
DI,8,D4-2阻挡2托盘检测,StopCheck2,203,HC,X203
DI,8,D4-2顶升上升端,TopCylinder_UP,204,HC,X204
DI,8,D4-2顶升上升端,TopCylinder_Up,204,HC,X204
DI,8,D4-2顶升下降端,TopCylinder_Down,205,HC,X205
DI,8,D4-2横移前进端,BeforeAfterCylinder_Before,206,HC,X206
DI,8,D4-2横移后退端,BeforeAfterCylinder_After,207,HC,X207
......@@ -457,7 +457,7 @@ DI,8,D4-2升降上升端,UpDownCylinder_Up,210,HC,X210
DI,8,D4-2升降下降端,UpDownCylinder_Down,211,HC,X211
DI,9,D5-1阻挡1托盘检测,StopCheck1,212,HC,X212
DI,9,D5-1阻挡2托盘检测,StopCheck2,213,HC,X213
DI,9,D5-1顶升上升端,TopCylinder_UP,214,HC,X214
DI,9,D5-1顶升上升端,TopCylinder_Up,214,HC,X214
DI,9,D5-1顶升下降端,TopCylinder_Down,215,HC,X215
DI,9,D5-1横移前进端,BeforeAfterCylinder_Before,216,HC,X216
DI,9,D5-1横移后退端,BeforeAfterCylinder_After,217,HC,X217
......@@ -465,7 +465,7 @@ DI,9,D5-1夹料气缸料盘检测,ClampCylinder_Check,218,HC,X218
DI,9,D5-1夹料放松端,ClampCylinder_Relax,219,HC,X219
DI,10,D5-2阻挡1托盘检测,StopCheck1,220,HC,X220
DI,10,D5-2阻挡2托盘检测,StopCheck2,221,HC,X221
DI,10,D5-2顶升上升端,TopCylinder_UP,222,HC,X222
DI,10,D5-2顶升上升端,TopCylinder_Up,222,HC,X222
DI,10,D5-2顶升下降端,TopCylinder_Down,223,HC,X223
,,,,,,
DI,10,D5-2横移前进端,BeforeAfterCylinder_Before,224,HC,X224
......@@ -474,7 +474,7 @@ DI,10,D5-2夹料气缸料盘检测,ClampCylinder_Check,226,HC,X226
DI,10,D5-2夹料放松端,ClampCylinder_Relax,227,HC,X227
DI,213,HY13前阻挡托盘检测,HY_FrontStopCheck,228,HC,X228
DI,213,HY13横移托盘检测,HY_TrayCheck,229,HC,X229
DI,213,HY13横移顶升上升端,HY_TopCylinder_UP,230,HC,X230
DI,213,HY13横移顶升上升端,HY_TopCylinder_Up,230,HC,X230
DI,213,HY13横移顶升下降端,HY_TopCylinder_Down,231,HC,X231
DI,213,C6线体HY13侧满料检测,HY_TrayImpletion_Check,232,HC,X232
,,,,233,HC,X233
......@@ -487,7 +487,7 @@ DI,213,C6线体HY13侧满料检测,HY_TrayImpletion_Check,232,HC,X232
,,,,,,
DO,7,D4-1阻挡1下降,StopDown1,160,HC,Y160
DO,7,D4-1阻挡2下降,StopDown2,161,HC,Y161
DO,7,D4-1顶升上升,TopCylinder_UP,162,HC,Y162
DO,7,D4-1顶升上升,TopCylinder_Up,162,HC,Y162
DO,7,D4-1顶升下降,TopCylinder_Down,163,HC,Y163
DO,7,D4-1横移前进,BeforeAfterCylinder_Before,164,HC,Y164
DO,7,D4-1横移后退,BeforeAfterCylinder_After,165,HC,Y165
......@@ -497,7 +497,7 @@ DO,7,D4-1升降上升,UpDownCylinder_Up,168,HC,Y168
DO,7,D4-1升降下降,UpDownCylinder_Down,169,HC,Y169
DO,8,D4-2阻挡1下降,StopDown1,170,HC,Y170
DO,8,D4-2阻挡2下降,StopDown2,171,HC,Y171
DO,8,D4-2顶升上升,TopCylinder_UP,172,HC,Y172
DO,8,D4-2顶升上升,TopCylinder_Up,172,HC,Y172
DO,8,D4-2顶升下降,TopCylinder_Down,173,HC,Y173
DO,8,D4-2横移前进,BeforeAfterCylinder_Before,174,HC,Y174
DO,8,D4-2横移后退,BeforeAfterCylinder_After,175,HC,Y175
......@@ -507,7 +507,7 @@ DO,8,D4-2升降上升,UpDownCylinder_Up,178,HC,Y178
DO,8,D4-2升降下降,UpDownCylinder_Down,179,HC,Y179
DO,9,D5-1阻挡1下降,StopDown1,180,HC,Y180
DO,9,D5-1阻挡2下降,StopDown2,181,HC,Y181
DO,9,D5-1顶升上升,TopCylinder_UP,182,HC,Y182
DO,9,D5-1顶升上升,TopCylinder_Up,182,HC,Y182
DO,9,D5-1顶升下降,TopCylinder_Down,183,HC,Y183
DO,9,D5-1横移前进,BeforeAfterCylinder_Before,184,HC,Y184
DO,9,D5-1横移后退,BeforeAfterCylinder_After,185,HC,Y185
......@@ -515,7 +515,7 @@ DO,9,D5-1夹料夹紧,ClampCylinder_Work,186,HC,Y186
DO,9,D5-1夹料放松,ClampCylinder_Relax,187,HC,Y187
DO,10,D5-2阻挡1下降,StopDown1,188,HC,Y188
DO,10,D5-2阻挡2下降,StopDown2,189,HC,Y189
DO,10,D5-2顶升上升,TopCylinder_UP,190,HC,Y190
DO,10,D5-2顶升上升,TopCylinder_Up,190,HC,Y190
DO,10,D5-2顶升下降,TopCylinder_Down,191,HC,Y191
,,,,,,
DO,10,D5-2横移前进,BeforeAfterCylinder_Before,192,HC,Y192
......@@ -523,7 +523,7 @@ DO,10,D5-2横移后退,BeforeAfterCylinder_After,193,HC,Y193
DO,10,D5-2夹料夹紧,ClampCylinder_Work,194,HC,Y194
DO,10,D5-2夹料放松,ClampCylinder_Relax,195,HC,Y195
DO,213,HY13横移电机正转,HY_LineRun,196,HC,Y196
DO,213,HY13横移顶升上升,HY_TopCylinder_UP,197,HC,Y197
DO,213,HY13横移顶升上升,HY_TopCylinder_Up,197,HC,Y197
DO,213,HY13横移顶升下降,HY_TopCylinder_Down,198,HC,Y198
DO,213,HY13前阻挡下降,HY_FrontStopDown,199,HC,Y199
DO,213,HY13阻挡下降,HY_StopDown,200,HC,Y200
......@@ -607,7 +607,7 @@ DO,103,T3托盘定位气缸后退,SL_TrayLocation_After,229,HC,Y229
,,D3&HY8&HY9,D3&HY8&HY9,,,
DI,5,D3-1阻挡1托盘检测,StopCheck1,272,HC,X272
DI,5,D3-1阻挡2托盘检测,StopCheck2,273,HC,X273
DI,5,D3-1顶升上升端,TopCylinder_UP,274,HC,X274
DI,5,D3-1顶升上升端,TopCylinder_Up,274,HC,X274
DI,5,D3-1顶升下降端,TopCylinder_Down,275,HC,X275
DI,5,D3-1横移前进端,BeforeAfterCylinder_Before,276,HC,X276
DI,5,D3-1横移后退端,BeforeAfterCylinder_After,277,HC,X277
......@@ -617,7 +617,7 @@ DI,5,D3-1升降上升端,UpDownCylinder_Up,280,HC,X280
DI,5,D3-1升降下降端,UpDownCylinder_Down,281,HC,X281
DI,6,D3-2阻挡1托盘检测,StopCheck1,282,HC,X282
DI,6,D3-2阻挡2托盘检测,StopCheck2,283,HC,X283
DI,6,D3-2顶升上升端,TopCylinder_UP,284,HC,X284
DI,6,D3-2顶升上升端,TopCylinder_Up,284,HC,X284
DI,6,D3-2顶升下降端,TopCylinder_Down,285,HC,X285
DI,6,D3-2横移前进端,BeforeAfterCylinder_Before,286,HC,X286
DI,6,D3-2横移后退端,BeforeAfterCylinder_After,287,HC,X287
......@@ -626,13 +626,13 @@ DI,6,D3-2夹料放松端,ClampCylinder_Relax,289,HC,X289
DI,6,D3-2升降上升端,UpDownCylinder_Up,290,HC,X290
DI,6,D3-2升降下降端,UpDownCylinder_Down,291,HC,X291
DI,208,HY8横移托盘检测,HY_TrayCheck,292,HC,X292
DI,208,HY8横移顶升上升端,HY_TopCylinder_UP,293,HC,X293
DI,208,HY8横移顶升上升端,HY_TopCylinder_Up,293,HC,X293
DI,208,HY8横移顶升下降端,HY_TopCylinder_Down,294,HC,X294
DI,208,HY8-HY9阻挡上升端,HY_StopCylinder_Up,295,HC,X295
DI,208,HY8-HY9阻挡下降端,HY_StopCylinder_Down,296,HC,X296
DI,209,HY9前阻挡托盘检测,HY_FrontStopCheck,297,HC,X297
DI,209,HY9横移托盘检测,HY_TrayCheck,298,HC,X298
DI,209,HY9横移顶升上升端,HY_TopCylinder_UP,299,HC,X299
DI,209,HY9横移顶升上升端,HY_TopCylinder_Up,299,HC,X299
DI,209,HY9横移顶升下降端,HY_TopCylinder_Down,300,HC,X300
DI,209,C4-HY9阻挡上升端,HY_StopCylinder_Up,301,HC,X301
DI,209,C4-HY9阻挡下降端,HY_StopCylinder_Down,302,HC,X302
......@@ -641,7 +641,7 @@ DI,209,C4-HY9阻挡托盘检测,HY_StopTray_Check,303,HC,X303
,,,,,,
DO,5,D3-1阻挡1下降,StopDown1,240,HC,Y240
DO,5,D3-1阻挡2下降,StopDown2,241,HC,Y241
DO,5,D3-1顶升上升,TopCylinder_UP,242,HC,Y242
DO,5,D3-1顶升上升,TopCylinder_Up,242,HC,Y242
DO,5,D3-1顶升下降,TopCylinder_Down,243,HC,Y243
DO,5,D3-1横移前进,BeforeAfterCylinder_Before,244,HC,Y244
DO,5,D3-1横移后退,BeforeAfterCylinder_After,245,HC,Y245
......@@ -651,7 +651,7 @@ DO,5,D3-1升降上升,UpDownCylinder_Up,248,HC,Y248
DO,5,D3-1升降下降,UpDownCylinder_Down,249,HC,Y249
DO,6,D3-2阻挡1下降,StopDown1,250,HC,Y250
DO,6,D3-2阻挡2下降,StopDown2,251,HC,Y251
DO,6,D3-2顶升上升,TopCylinder_UP,252,HC,Y252
DO,6,D3-2顶升上升,TopCylinder_Up,252,HC,Y252
DO,6,D3-2顶升下降,TopCylinder_Down,253,HC,Y253
DO,6,D3-2横移前进,BeforeAfterCylinder_Before,254,HC,Y254
DO,6,D3-2横移后退,BeforeAfterCylinder_After,255,HC,Y255
......@@ -661,7 +661,7 @@ DO,6,D3-2升降上升,UpDownCylinder_Up,258,HC,Y258
DO,6,D3-2升降下降,UpDownCylinder_Down,259,HC,Y259
DO,208,HY8横移电机正转,HY_LineRun,260,HC,Y260
DO,208,HY8横移电机反转,HY_LineBackRun,261,HC,Y261
DO,208,HY8横移顶升上升,HY_TopCylinder_UP,262,HC,Y262
DO,208,HY8横移顶升上升,HY_TopCylinder_Up,262,HC,Y262
DO,208,HY8横移顶升下降,HY_TopCylinder_Down,263,HC,Y263
DO,208,HY8阻挡下降,HY_StopDown,264,HC,Y264
DO,208,HY8-HY9阻挡上升,HY_StopCylinder_Up,265,HC,Y265
......@@ -677,7 +677,7 @@ DO,209,HY9横移电机反转,HY_LineBackRun,268,HC,Y268
,,D1&D2&HY6,D1&D2&HY6,,,
DI,1,D1-1阻挡1托盘检测,StopCheck1,304,HC,X304
DI,1,D1-1阻挡2托盘检测,StopCheck2,305,HC,X305
DI,1,D1-1顶升上升端,TopCylinder_UP,306,HC,X306
DI,1,D1-1顶升上升端,TopCylinder_Up,306,HC,X306
DI,1,D1-1顶升下降端,TopCylinder_Down,307,HC,X307
DI,1,D1-1横移前进端,BeforeAfterCylinder_Before,308,HC,X308
DI,1,D1-1横移后退端,BeforeAfterCylinder_After,309,HC,X309
......@@ -687,7 +687,7 @@ DI,1,D1-1升降上升端,UpDownCylinder_Up,312,HC,X312
DI,1,D1-1升降下降端,UpDownCylinder_Down,313,HC,X313
DI,2,D1-2阻挡1托盘检测,StopCheck1,314,HC,X314
DI,2,D1-2阻挡2托盘检测,StopCheck2,315,HC,X315
DI,2,D1-2顶升上升端,TopCylinder_UP,316,HC,X316
DI,2,D1-2顶升上升端,TopCylinder_Up,316,HC,X316
DI,2,D1-2顶升下降端,TopCylinder_Down,317,HC,X317
DI,2,D1-2横移前进端,BeforeAfterCylinder_Before,318,HC,X318
DI,2,D1-2横移后退端,BeforeAfterCylinder_After,319,HC,X319
......@@ -697,7 +697,7 @@ DI,2,D1-2升降上升端,UpDownCylinder_Up,322,HC,X322
DI,2,D1-2升降下降端,UpDownCylinder_Down,323,HC,X323
DI,3,D2-1阻挡1托盘检测,StopCheck1,324,HC,X324
DI,3,D2-1阻挡2托盘检测,StopCheck2,325,HC,X325
DI,3,D2-1顶升上升端,TopCylinder_UP,326,HC,X326
DI,3,D2-1顶升上升端,TopCylinder_Up,326,HC,X326
DI,3,D2-1顶升下降端,TopCylinder_Down,327,HC,X327
DI,3,D2-1横移前进端,BeforeAfterCylinder_Before,328,HC,X328
DI,3,D2-1横移后退端,BeforeAfterCylinder_After,329,HC,X329
......@@ -707,7 +707,7 @@ DI,3,D2-1升降上升端,UpDownCylinder_Up,332,HC,X332
DI,3,D2-1升降下降端,UpDownCylinder_Down,333,HC,X333
DI,4,D2-2阻挡1托盘检测,StopCheck1,334,HC,X334
DI,4,D2-2阻挡2托盘检测,StopCheck2,335,HC,X335
DI,4,D2-2顶升上升端,TopCylinder_UP,336,HC,X336
DI,4,D2-2顶升上升端,TopCylinder_Up,336,HC,X336
DI,4,D2-2顶升下降端,TopCylinder_Down,337,HC,X337
DI,4,D2-2横移前进端,BeforeAfterCylinder_Before,338,HC,X338
DI,4,D2-2横移后退端,BeforeAfterCylinder_After,339,HC,X339
......@@ -717,7 +717,7 @@ DI,4,D2-2升降上升端,UpDownCylinder_Up,342,HC,X342
DI,4,D2-2升降下降端,UpDownCylinder_Down,343,HC,X343
DI,206,HY6前阻挡托盘检测,HY_FrontStopCheck,344,HC,X344
DI,206,HY6横移托盘检测,HY_TrayCheck,345,HC,X345
DI,206,HY6横移顶升上升端,HY_TopCylinder_UP,346,HC,X346
DI,206,HY6横移顶升上升端,HY_TopCylinder_Up,346,HC,X346
DI,206,HY6横移顶升下降端,HY_TopCylinder_Down,347,HC,X347
DI,206,C3线体HY6侧满料检测,HY_TrayImpletion_Check,348,HC,X348
,,,,349,HC,X349
......@@ -726,7 +726,7 @@ DI,206,C3线体HY6侧满料检测,HY_TrayImpletion_Check,348,HC,X348
,,,,,,
DO,1,D1-1阻挡1下降,StopDown1,272,HC,Y272
DO,1,D1-1阻挡2下降,StopDown2,273,HC,Y273
DO,1,D1-1顶升上升,TopCylinder_UP,274,HC,Y274
DO,1,D1-1顶升上升,TopCylinder_Up,274,HC,Y274
DO,1,D1-1顶升下降,TopCylinder_Down,275,HC,Y275
DO,1,D1-1横移前进,BeforeAfterCylinder_Before,276,HC,Y276
DO,1,D1-1横移后退,BeforeAfterCylinder_After,277,HC,Y277
......@@ -736,7 +736,7 @@ DO,1,D1-1升降上升,UpDownCylinder_Up,280,HC,Y280
DO,1,D1-1升降下降,UpDownCylinder_Down,281,HC,Y281
DO,2,D1-2阻挡1下降,StopDown1,282,HC,Y282
DO,2,D1-2阻挡2下降,StopDown2,283,HC,Y283
DO,2,D1-2顶升上升,TopCylinder_UP,284,HC,Y284
DO,2,D1-2顶升上升,TopCylinder_Up,284,HC,Y284
DO,2,D1-2顶升下降,TopCylinder_Down,285,HC,Y285
DO,2,D1-2横移前进,BeforeAfterCylinder_Before,286,HC,Y286
DO,2,D1-2横移后退,BeforeAfterCylinder_After,287,HC,Y287
......@@ -746,7 +746,7 @@ DO,2,D1-2升降上升,UpDownCylinder_Up,290,HC,Y290
DO,2,D1-2升降下降,UpDownCylinder_Down,291,HC,Y291
DO,3,D2-1阻挡1下降,StopDown1,292,HC,Y292
DO,3,D2-1阻挡2下降,StopDown2,293,HC,Y293
DO,3,D2-1顶升上升,TopCylinder_UP,294,HC,Y294
DO,3,D2-1顶升上升,TopCylinder_Up,294,HC,Y294
DO,3,D2-1顶升下降,TopCylinder_Down,295,HC,Y295
DO,3,D2-1横移前进,BeforeAfterCylinder_Before,296,HC,Y296
DO,3,D2-1横移后退,BeforeAfterCylinder_After,297,HC,Y297
......@@ -756,7 +756,7 @@ DO,3,D2-1升降上升,UpDownCylinder_Up,300,HC,Y300
DO,3,D2-1升降下降,UpDownCylinder_Down,301,HC,Y301
DO,4,D2-2阻挡1下降,StopDown1,302,HC,Y302
DO,4,D2-2阻挡2下降,StopDown2,303,HC,Y303
DO,4,D2-2顶升上升,TopCylinder_UP,304,HC,Y304
DO,4,D2-2顶升上升,TopCylinder_Up,304,HC,Y304
DO,4,D2-2顶升下降,TopCylinder_Down,305,HC,Y305
DO,4,D2-2横移前进,BeforeAfterCylinder_Before,306,HC,Y306
DO,4,D2-2横移后退,BeforeAfterCylinder_After,307,HC,Y307
......@@ -767,7 +767,7 @@ DO,4,D2-2升降下降,UpDownCylinder_Down,311,HC,Y311
DO,206,HY6横移电机正转,HY_LineRun,312,HC,Y312
DO,206,HY6前阻挡下降,HY_FrontStopDown,313,HC,Y313
DO,206,HY6阻挡下降,HY_StopDown,314,HC,Y314
DO,206,HY6横移顶升上升,HY_TopCylinder_UP,315,HC,Y315
DO,206,HY6横移顶升上升,HY_TopCylinder_Up,315,HC,Y315
DO,206,HY6横移顶升下降,HY_TopCylinder_Down,316,HC,Y316
,,,,317,HC,Y317
,,,,318,HC,Y318
......@@ -809,15 +809,15 @@ DI,101,T1上料气缸料盘检测,SL_ClampCylinder_Check,380,HC,X380
,,,,383,HC,X383
,,,,,,
DI,201,HY1横移托盘检测,HY_TrayCheck,384,HC,X384
DI,201,HY1横移顶升上升端,HY_TopCylinder_UP,385,HC,X385
DI,201,HY1横移顶升上升端,HY_TopCylinder_Up,385,HC,X385
DI,201,HY1横移顶升下降端,HY_TopCylinder_Down,386,HC,X386
DI,201,HY1横移定位1上升端,HY_LocationCylinder_UP1,387,HC,X387
DI,201,HY1横移定位1上升端,HY_LocationCylinder_Up1,387,HC,X387
DI,201,HY1横移定位1下降端,HY_LocationCylinder_Down1,388,HC,X388
DI,201,HY1横移定位2上升端,HY_LocationCylinder_UP2,389,HC,X389
DI,201,HY1横移定位2上升端,HY_LocationCylinder_Up2,389,HC,X389
DI,201,HY1横移定位2下降端,HY_LocationCylinder_Down2,390,HC,X390
DI,203,HY3前阻挡托盘检测,HY_FrontStopCheck,391,HC,X391
DI,203,HY3横移托盘检测,HY_TrayCheck,392,HC,X392
DI,203,HY3横移顶升上升端,HY_TopCylinder_UP,393,HC,X393
DI,203,HY3横移顶升上升端,HY_TopCylinder_Up,393,HC,X393
DI,203,HY3横移顶升下降端,HY_TopCylinder_Down,394,HC,X394
,,,,395,HC,X395
,,,,396,HC,X396
......@@ -847,11 +847,11 @@ DO,101,T1上料气缸放松,SL_ClampCylinder_Relax,338,HC,Y338
DO,101,T1上料气缸夹紧,SL_ClampCylinder_Work,339,HC,Y339
DO,101,T1托盘定位气缸前进,SL_TrayLocation_Before,340,HC,Y340
DO,101,T1托盘定位气缸后退,SL_TrayLocation_After,341,HC,Y341
DO,201,HY1横移顶升上升,HY_TopCylinder_UP,342,HC,Y342
DO,201,HY1横移顶升上升,HY_TopCylinder_Up,342,HC,Y342
DO,201,HY1横移顶升下降,HY_TopCylinder_Down,343,HC,Y343
DO,201,HY1横移定位上升,HY_LocationCylinder_UP,344,HC,Y344
DO,201,HY1横移定位上升,HY_LocationCylinder_Up,344,HC,Y344
DO,201,HY1横移定位下降,HY_LocationCylinder_Down,345,HC,Y345
DO,203,HY3横移顶升上升,HY_TopCylinder_UP,346,HC,Y346
DO,203,HY3横移顶升上升,HY_TopCylinder_Up,346,HC,Y346
DO,203,HY3横移顶升下降,HY_TopCylinder_Down,347,HC,Y347
DO,203,HY3前阻挡下降,HY_FrontStopDown,348,HC,Y348
DO,203,HY3阻挡下降,HY_StopDown,349,HC,Y349
......@@ -896,14 +896,14 @@ DI,102,T2上料气缸料盘检测,SL_ClampCylinder_Check,428,HC,X428
,,,,,,
DI,202,HY2前阻挡托盘检测,HY_FrontStopCheck,432,HC,X432
DI,202,HY2横移托盘检测,HY_TrayCheck,433,HC,X433
DI,202,HY2横移顶升上升端,HY_TopCylinder_UP,434,HC,X434
DI,202,HY2横移顶升上升端,HY_TopCylinder_Up,434,HC,X434
DI,202,HY2横移顶升下降端,HY_TopCylinder_Down,435,HC,X435
DI,202,HY2横移定位1上升端,HY_LocationCylinder_UP1,436,HC,X436
DI,202,HY2横移定位1上升端,HY_LocationCylinder_Up1,436,HC,X436
DI,202,HY2横移定位1下降端,HY_LocationCylinder_Down1,437,HC,X437
DI,202,HY2横移定位2上升端,HY_LocationCylinder_UP2,438,HC,X438
DI,202,HY2横移定位2上升端,HY_LocationCylinder_Up2,438,HC,X438
DI,202,HY2横移定位2下降端,HY_LocationCylinder_Down2,439,HC,X439
DI,204,HY4横移托盘检测,HY_TrayCheck,440,HC,X440
DI,204,HY4横移顶升上升端,HY_TopCylinder_UP,441,HC,X441
DI,204,HY4横移顶升上升端,HY_TopCylinder_Up,441,HC,X441
DI,204,HY4横移顶升下降端,HY_TopCylinder_Down,442,HC,X442
DI,204,C2线体HY4侧满料检测,HY_TrayImpletion_Check,443,HC,X443
,,,,444,HC,X444
......@@ -934,12 +934,12 @@ DO,102,T2上料气缸放松,SL_ClampCylinder_Relax,371,HC,Y371
DO,102,T2上料气缸夹紧,SL_ClampCylinder_Work,372,HC,Y372
DO,102,T2托盘定位气缸前进,SL_TrayLocation_Before,373,HC,Y373
DO,102,T2托盘定位气缸后退,SL_TrayLocation_After,374,HC,Y374
DO,202,HY2横移顶升上升,HY_TopCylinder_UP,375,HC,Y375
DO,202,HY2横移顶升上升,HY_TopCylinder_Up,375,HC,Y375
DO,202,HY2横移顶升下降,HY_TopCylinder_Down,376,HC,Y376
DO,202,HY2横移定位上升,HY_LocationCylinder_UP,377,HC,Y377
DO,202,HY2横移定位上升,HY_LocationCylinder_Up,377,HC,Y377
DO,202,HY2横移定位下降,HY_LocationCylinder_Down,378,HC,Y378
DO,202,HY2前阻挡下降,HY_FrontStopDown,379,HC,Y379
DO,204,HY4横移顶升上升,HY_TopCylinder_UP,380,HC,Y380
DO,204,HY4横移顶升上升,HY_TopCylinder_Up,380,HC,Y380
DO,204,HY4横移顶升下降,HY_TopCylinder_Down,381,HC,Y381
DO,204,HY4前阻挡下降,HY_FrontStopDown,382,HC,Y382
DO,204,HY4阻挡下降,HY_StopDown,383,HC,Y383
......@@ -948,7 +948,7 @@ DO,204,HY4阻挡下降,HY_StopDown,383,HC,Y383
,,D7&D8,D7&D8,,,
DI,14,D7-1阻挡1托盘检测,StopCheck1,448,HC,X448
DI,14,D7-1阻挡2托盘检测,StopCheck2,449,HC,X449
DI,14,D7-1顶升上升端,TopCylinder_UP,450,HC,X450
DI,14,D7-1顶升上升端,TopCylinder_Up,450,HC,X450
DI,14,D7-1顶升下降端,TopCylinder_Down,451,HC,X451
DI,14,D7-1横移前进端,BeforeAfterCylinder_Before,452,HC,X452
DI,14,D7-1横移后退端,BeforeAfterCylinder_After,453,HC,X453
......@@ -956,7 +956,7 @@ DI,14,D7-1夹料气缸料盘检测,ClampCylinder_Check,454,HC,X454
DI,14,D7-1夹料放松端,ClampCylinder_Relax,455,HC,X455
DI,13,D7-2阻挡1托盘检测,StopCheck1,456,HC,X456
DI,13,D7-2阻挡2托盘检测,StopCheck2,457,HC,X457
DI,13,D7-2顶升上升端,TopCylinder_UP,458,HC,X458
DI,13,D7-2顶升上升端,TopCylinder_Up,458,HC,X458
DI,13,D7-2顶升下降端,TopCylinder_Down,459,HC,X459
DI,13,D7-2横移前进端,BeforeAfterCylinder_Before,460,HC,X460
DI,13,D7-2横移后退端,BeforeAfterCylinder_After,461,HC,X461
......@@ -964,7 +964,7 @@ DI,13,D7-2夹料气缸料盘检测,ClampCylinder_Check,462,HC,X462
DI,13,D7-2夹料放松端,ClampCylinder_Relax,463,HC,X463
DI,16,D8-1阻挡1托盘检测,StopCheck1,464,HC,X464
DI,16,D8-1阻挡2托盘检测,StopCheck2,465,HC,X465
DI,16,D8-1顶升上升端,TopCylinder_UP,466,HC,X466
DI,16,D8-1顶升上升端,TopCylinder_Up,466,HC,X466
DI,16,D8-1顶升下降端,TopCylinder_Down,467,HC,X467
DI,16,D8-1横移前进端,BeforeAfterCylinder_Before,468,HC,X468
DI,16,D8-1横移后退端,BeforeAfterCylinder_After,469,HC,X469
......@@ -972,7 +972,7 @@ DI,16,D8-1夹料气缸料盘检测,ClampCylinder_Check,470,HC,X470
DI,16,D8-1夹料放松端,ClampCylinder_Relax,471,HC,X471
DI,15,D8-2阻挡1托盘检测,StopCheck1,472,HC,X472
DI,15,D8-2阻挡2托盘检测,StopCheck2,473,HC,X473
DI,15,D8-2顶升上升端,TopCylinder_UP,474,HC,X474
DI,15,D8-2顶升上升端,TopCylinder_Up,474,HC,X474
DI,15,D8-2顶升下降端,TopCylinder_Down,475,HC,X475
DI,15,D8-2横移前进端,BeforeAfterCylinder_Before,476,HC,X476
DI,15,D8-2横移后退端,BeforeAfterCylinder_After,477,HC,X477
......@@ -981,7 +981,7 @@ DI,15,D8-2夹料放松端,ClampCylinder_Relax,479,HC,X479
,,,,,,
DO,14,D7-1阻挡1下降,StopDown1,384,HC,Y384
DO,14,D7-1阻挡2下降,StopDown2,385,HC,Y385
DO,14,D7-1顶升上升,TopCylinder_UP,386,HC,Y386
DO,14,D7-1顶升上升,TopCylinder_Up,386,HC,Y386
DO,14,D7-1顶升下降,TopCylinder_Down,387,HC,Y387
DO,14,D7-1横移前进,BeforeAfterCylinder_Before,388,HC,Y388
DO,14,D7-1横移后退,BeforeAfterCylinder_After,389,HC,Y389
......@@ -989,7 +989,7 @@ DO,14,D7-1夹料夹紧,ClampCylinder_Work,390,HC,Y390
DO,14,D7-1夹料放松,ClampCylinder_Relax,391,HC,Y391
DO,13,D7-2阻挡1下降,StopDown1,392,HC,Y392
DO,13,D7-2阻挡2下降,StopDown2,393,HC,Y393
DO,13,D7-2顶升上升,TopCylinder_UP,394,HC,Y394
DO,13,D7-2顶升上升,TopCylinder_Up,394,HC,Y394
DO,13,D7-2顶升下降,TopCylinder_Down,395,HC,Y395
DO,13,D7-2横移前进,BeforeAfterCylinder_Before,396,HC,Y396
DO,13,D7-2横移后退,BeforeAfterCylinder_After,397,HC,Y397
......@@ -997,7 +997,7 @@ DO,13,D7-2夹料夹紧,ClampCylinder_Work,398,HC,Y398
DO,13,D7-2夹料放松,ClampCylinder_Relax,399,HC,Y399
DO,16,D8-1阻挡1下降,StopDown1,400,HC,Y400
DO,16,D8-1阻挡2下降,StopDown2,401,HC,Y401
DO,16,D8-1顶升上升,TopCylinder_UP,402,HC,Y402
DO,16,D8-1顶升上升,TopCylinder_Up,402,HC,Y402
DO,16,D8-1顶升下降,TopCylinder_Down,403,HC,Y403
DO,16,D8-1横移前进,BeforeAfterCylinder_Before,404,HC,Y404
DO,16,D8-1横移后退,BeforeAfterCylinder_After,405,HC,Y405
......@@ -1005,7 +1005,7 @@ DO,16,D8-1夹料夹紧,ClampCylinder_Work,406,HC,Y406
DO,16,D8-1夹料放松,ClampCylinder_Relax,407,HC,Y407
DO,15,D8-2阻挡1下降,StopDown1,408,HC,Y408
DO,15,D8-2阻挡2下降,StopDown2,409,HC,Y409
DO,15,D8-2顶升上升,TopCylinder_UP,410,HC,Y410
DO,15,D8-2顶升上升,TopCylinder_Up,410,HC,Y410
DO,15,D8-2顶升下降,TopCylinder_Down,411,HC,Y411
DO,15,D8-2横移前进,BeforeAfterCylinder_Before,412,HC,Y412
DO,15,D8-2横移后退,BeforeAfterCylinder_After,413,HC,Y413
......@@ -1017,11 +1017,11 @@ DO,15,D8-2夹料放松,ClampCylinder_Relax,415,HC,Y415
,,HY5&HY7&HY10&J1,HY5&HY7&HY10&J1,,,
DI,205,C2-HY5阻挡托盘检测,HY_StopTray_Check,480,HC,X480
DI,205,HY5横移托盘检测,HY_TrayCheck,481,HC,X481
DI,205,HY5横移顶升上升端,HY_TopCylinder_UP,482,HC,X482
DI,205,HY5横移顶升上升端,HY_TopCylinder_Up,482,HC,X482
DI,205,HY5横移顶升下降端,HY_TopCylinder_Down,483,HC,X483
DI,205,C8线体HY5侧满料检测,HY_TrayImpletion_Check,484,HC,X484
DI,207,HY7横移托盘检测,HY_TrayCheck,485,HC,X485
DI,207,HY7横移顶升上升端,HY_TopCylinder_UP,486,HC,X486
DI,207,HY7横移顶升上升端,HY_TopCylinder_Up,486,HC,X486
DI,207,HY7横移顶升下降端,HY_TopCylinder_Down,487,HC,X487
DI,207,C3-HY7阻挡托盘检测,HY_StopTray_Check,488,HC,X488
DI,207,C8-HY7阻挡托盘检测,HY_StopTray_Check2,489,HC,X489
......@@ -1029,11 +1029,11 @@ DI,207,C8线体HY7侧满料检测,HY_TrayImpletion_Check,490,HC,X490
DI,209,C4-HY9满料检测,HY_TrayImpletion_Check,491,HC,X491
DI,210,HY10前阻挡托盘检测,HY_FrontStopCheck,492,HC,X492
DI,210,HY10横移托盘检测,HY_TrayCheck,493,HC,X493
DI,210,HY10横移顶升上升端,HY_TopCylinder_UP,494,HC,X494
DI,210,HY10横移顶升上升端,HY_TopCylinder_Up,494,HC,X494
DI,210,HY10横移顶升下降端,HY_TopCylinder_Down,495,HC,X495
DI,210,HY10横移定位1上升端,HY_LocationCylinder_UP1,496,HC,X496
DI,210,HY10横移定位1上升端,HY_LocationCylinder_Up1,496,HC,X496
DI,210,HY10横移定位1下降端,HY_LocationCylinder_Down1,497,HC,X497
DI,210,HY10横移定位2上升端,HY_LocationCylinder_UP2,498,HC,X498
DI,210,HY10横移定位2上升端,HY_LocationCylinder_Up2,498,HC,X498
DI,210,HY10横移定位2下降端,HY_LocationCylinder_Down2,499,HC,X499
DI,210,HY10接驳台气缸取料端,HY_MoveCylinder_Take,500,HC,X500
DI,210,HY10接驳台气缸放料端,HY_MoveCylinder_Give,501,HC,X501
......@@ -1052,25 +1052,25 @@ DI,210,HY10接驳台料盘检测15寸,HY_TrayCheck4,507,HC,X507
DO,0,C1线体电机4启动,MotorRun_C1_4,416,HC,Y416
DO,0,C2/C3/C4/C5/C8线体运转,MotorRun_23458,417,HC,Y417
DO,205,HY5横移电机正转,HY_LineRun,418,HC,Y418
DO,205,HY5横移顶升上升,HY_TopCylinder_UP,419,HC,Y419
DO,205,HY5横移顶升上升,HY_TopCylinder_Up,419,HC,Y419
DO,205,HY5横移顶升下降,HY_TopCylinder_Down,420,HC,Y420
DO,205,C2-HY5阻挡下降,HY_StopDown,421,HC,Y421
DO,207,HY7横移电机正转,HY_LineRun,422,HC,Y422
DO,207,HY7横移顶升上升,HY_TopCylinder_UP,423,HC,Y423
DO,207,HY7横移顶升上升,HY_TopCylinder_Up,423,HC,Y423
DO,207,HY7横移顶升下降,HY_TopCylinder_Down,424,HC,Y424
DO,207,C3-HY7阻挡下降,HY_StopDown,425,HC,Y425
DO,207,C8-HY7阻挡下降,HY_SideStopDown,426,HC,Y426
DO,210,HY10横移电机正转,HY_LineRun,427,HC,Y427
DO,210,HY10前阻挡下降,HY_FrontStopDown,428,HC,Y428
DO,210,HY10横移顶升上升,HY_TopCylinder_UP,429,HC,Y429
DO,210,HY10横移顶升上升,HY_TopCylinder_Up,429,HC,Y429
DO,210,HY10横移顶升下降,HY_TopCylinder_Down,430,HC,Y430
DO,210,HY10横移定位上升,HY_LocationCylinder_UP,431,HC,Y431
DO,210,HY10横移定位上升,HY_LocationCylinder_Up,431,HC,Y431
DO,210,HY10横移定位下降,HY_LocationCylinder_Down,432,HC,Y432
DO,210,HY10接驳台气缸取料,HY_MoveCylinder_Take,433,HC,Y433
DO,210,HY10接驳台气缸放料,HY_MoveCylinder_Give,434,HC,Y434
DO,210,HY10夹料气缸夹紧,HY_ClampCylinder_Work,435,HC,Y435
DO,210,HY10夹料气缸放松,HY_ClampCylinder_Relax,436,HC,Y436
DO,209,HY9横移顶升上升,HY_TopCylinder_UP,437,HC,Y437
DO,209,HY9横移顶升上升,HY_TopCylinder_Up,437,HC,Y437
DO,209,HY9横移顶升下降,HY_TopCylinder_Down,438,HC,Y438
DO,209,HY9前阻挡下降,HY_FrontStopDown,439,HC,Y439
DO,209,HY9阻挡下降,HY_StopDown,440,HC,Y440
......@@ -1086,7 +1086,7 @@ DO,209,C4-HY9阻挡下降,HY_StopCylinder_Down,442,HC,Y442
,,D9&D10&HY11&T3-C1,D9&D10&HY11&T3-C1,,,
DI,18,D9-1阻挡1托盘检测,StopCheck1,512,HC,X512
DI,18,D9-1阻挡2托盘检测,StopCheck2,513,HC,X513
DI,18,D9-1顶升上升端,TopCylinder_UP,514,HC,X514
DI,18,D9-1顶升上升端,TopCylinder_Up,514,HC,X514
DI,18,D9-1顶升下降端,TopCylinder_Down,515,HC,X515
DI,18,D9-1横移前进端,BeforeAfterCylinder_Before,516,HC,X516
DI,18,D9-1横移后退端,BeforeAfterCylinder_After,517,HC,X517
......@@ -1094,7 +1094,7 @@ DI,18,D9-1夹料气缸料盘检测,ClampCylinder_Check,518,HC,X518
DI,18,D9-1夹料放松端,ClampCylinder_Relax,519,HC,X519
DI,17,D9-2阻挡1托盘检测,StopCheck1,520,HC,X520
DI,17,D9-2阻挡2托盘检测,StopCheck2,521,HC,X521
DI,17,D9-2顶升上升端,TopCylinder_UP,522,HC,X522
DI,17,D9-2顶升上升端,TopCylinder_Up,522,HC,X522
DI,17,D9-2顶升下降端,TopCylinder_Down,523,HC,X523
DI,17,D9-2横移前进端,BeforeAfterCylinder_Before,524,HC,X524
DI,17,D9-2横移后退端,BeforeAfterCylinder_After,525,HC,X525
......@@ -1103,7 +1103,7 @@ DI,17,D9-2夹料放松端,ClampCylinder_Relax,527,HC,X527
DI,17,D9-2升降上升端,UpDownCylinder_Up,528,HC,X528
DI,17,D9-2升降下降端,UpDownCylinder_Down,529,HC,X529
DI,20,D10-1阻挡1托盘检测,StopCheck2,530,HC,X530
DI,20,D10-1阻挡2托盘检测,TopCylinder_UP,531,HC,X531
DI,20,D10-1阻挡2托盘检测,TopCylinder_Up,531,HC,X531
DI,20,D10-1顶升上升端,TopCylinder_Up,532,HC,X532
DI,20,D10-1顶升下降端,TopCylinder_Down,533,HC,X533
DI,20,D10-1横移前进端,BeforeAfterCylinder_Before,534,HC,X534
......@@ -1114,7 +1114,7 @@ DI,20,D10-1升降上升端,UpDownCylinder_Up,538,HC,X538
DI,20,D10-1升降下降端,UpDownCylinder_Down,539,HC,X539
DI,19,D10-2阻挡1托盘检测,StopCheck1,540,HC,X540
DI,19,D10-2阻挡2托盘检测,StopCheck2,541,HC,X541
DI,19,D10-2顶升上升端,TopCylinder_UP,542,HC,X542
DI,19,D10-2顶升上升端,TopCylinder_Up,542,HC,X542
DI,19,D10-2顶升下降端,TopCylinder_Down,543,HC,X543
,,,,,,
DI,19,D10-2横移前进端,BeforeAfterCylinder_Before,544,HC,X544
......@@ -1125,18 +1125,18 @@ DI,19,D10-2升降上升端,UpDownCylinder_Up,548,HC,X548
DI,19,D10-2升降下降端,UpDownCylinder_Down,549,HC,X549
DI,211,HY11前阻挡托盘检测,HY_FrontStopCheck,550,HC,X550
DI,211,HY11横移托盘检测,HY_TrayCheck,551,HC,X551
DI,211,HY11横移顶升上升端,HY_TopCylinder_UP,552,HC,X552
DI,211,HY11横移顶升上升端,HY_TopCylinder_Up,552,HC,X552
DI,211,HY11横移顶升下降端,HY_TopCylinder_Down,553,HC,X553
DI,211,C5-HY11阻挡托盘检测,HY_StopTray_Check,554,HC,X554
DI,0,T3-C1前阻挡托盘检测,HY_FrontStopCheck,555,HC,X555
DI,0,T3-C1阻挡托盘检测,HY_TrayCheck,556,HC,X556
DI,0,T3-C1顶升上升端,HY_TopCylinder_UP,557,HC,X557
DI,0,T3-C1顶升上升端,HY_TopCylinder_Up,557,HC,X557
DI,0,T3-C1顶升下降端,HY_TopCylinder_Down,558,HC,X558
,,,,559,HC,X559
,,,,,,
DO,18,D9-1阻挡1下降,StopDown1,448,HC,Y448
DO,18,D9-1阻挡2下降,StopDown2,449,HC,Y449
DO,18,D9-1顶升上升,TopCylinder_UP,450,HC,Y450
DO,18,D9-1顶升上升,TopCylinder_Up,450,HC,Y450
DO,18,D9-1顶升下降,TopCylinder_Down,451,HC,Y451
DO,18,D9-1横移前进,BeforeAfterCylinder_Before,452,HC,Y452
DO,18,D9-1横移后退,BeforeAfterCylinder_After,453,HC,Y453
......@@ -1144,7 +1144,7 @@ DO,18,D9-1夹料夹紧,ClampCylinder_Work,454,HC,Y454
DO,18,D9-1夹料放松,ClampCylinder_Relax,455,HC,Y455
DO,17,D9-2阻挡1下降,StopDown1,456,HC,Y456
DO,17,D9-2阻挡2下降,StopDown2,457,HC,Y457
DO,17,D9-2顶升上升,TopCylinder_UP,458,HC,Y458
DO,17,D9-2顶升上升,TopCylinder_Up,458,HC,Y458
DO,17,D9-2顶升下降,TopCylinder_Down,459,HC,Y459
DO,17,D9-2横移前进,BeforeAfterCylinder_Before,460,HC,Y460
DO,17,D9-2横移后退,BeforeAfterCylinder_After,461,HC,Y461
......@@ -1154,7 +1154,7 @@ DO,17,D9-2升降上升,UpDownCylinder_Up,464,HC,Y464
DO,17,D9-2升降下降,UpDownCylinder_Down,465,HC,Y465
DO,20,D10-1阻挡1下降,StopDown1,466,HC,Y466
DO,20,D10-1阻挡2下降,StopDown2,467,HC,Y467
DO,20,D10-1顶升上升,TopCylinder_UP,468,HC,Y468
DO,20,D10-1顶升上升,TopCylinder_Up,468,HC,Y468
DO,20,D10-1顶升下降,TopCylinder_Down,469,HC,Y469
DO,20,D10-1横移前进,BeforeAfterCylinder_Before,470,HC,Y470
DO,20,D10-1横移后退,BeforeAfterCylinder_After,471,HC,Y471
......@@ -1164,7 +1164,7 @@ DO,20,D10-1升降上升,UpDownCylinder_Up,474,HC,Y474
DO,20,D10-1升降下降,UpDownCylinder_Down,475,HC,Y475
DO,19,D10-2阻挡1下降,StopDown1,476,HC,Y476
DO,19,D10-2阻挡2下降,StopDown2,477,HC,Y477
DO,19,D10-2顶升上升,TopCylinder_UP,478,HC,Y478
DO,19,D10-2顶升上升,TopCylinder_Up,478,HC,Y478
DO,19,D10-2顶升下降,TopCylinder_Down,479,HC,Y479
,,,,,,
DO,19,D10-2横移前进,BeforeAfterCylinder_Before,480,HC,Y480
......@@ -1174,14 +1174,14 @@ DO,19,D10-2夹料放松,ClampCylinder_Relax,483,HC,Y483
DO,19,D10-2升降上升,UpDownCylinder_Up,484,HC,Y484
DO,19,D10-2升降下降,UpDownCylinder_Down,485,HC,Y485
DO,211,HY11横移电机正转,HY_LineRun,486,HC,Y486
DO,211,HY11横移顶升上升,HY_TopCylinder_UP,487,HC,Y487
DO,211,HY11横移顶升上升,HY_TopCylinder_Up,487,HC,Y487
DO,211,HY11横移顶升下降,HY_TopCylinder_Down,488,HC,Y488
DO,211,HY11前阻挡下降,HY_FrontStopDown,489,HC,Y489
DO,211,HY11阻挡下降,HY_StopDown,490,HC,Y490
DO,211,C5-HY11阻挡下降,HY_SideStopDown,491,HC,Y491
DO,0,T3-C1前阻挡下降,HY_FrontStopDown,492,HC,Y492
DO,0,T3-C1阻挡下降,HY_StopDown,493,HC,Y493
DO,0,T3-C1顶升上升,HY_TopCylinder_UP,494,HC,Y494
DO,0,T3-C1顶升上升,HY_TopCylinder_Up,494,HC,Y494
DO,0,T3-C1顶升下降,HY_TopCylinder_Down,495,HC,Y495
,,,,,,
,,,,,,
......@@ -1191,16 +1191,16 @@ DO,0,T3-C1顶升下降,HY_TopCylinder_Down,495,HC,Y495
DI,214,C6-HY14阻挡托盘检测,HY_StopTray_Check,560,HC,X560
DI,214,HY14横移托盘检测,HY_TrayCheck,561,HC,X561
DI,214,C9-HY14阻挡托盘检测,HY_StopTray_Check2,562,HC,X562
DI,214,HY14横移顶升上升端,HY_TopCylinder_UP,563,HC,X563
DI,214,HY14横移顶升上升端,HY_TopCylinder_Up,563,HC,X563
DI,214,HY14横移顶升下降端,HY_TopCylinder_Down,564,HC,X564
DI,211,C5-HY11满料检测,HY_TrayImpletion_Check,565,HC,X565
DI,212,C9-HY12阻挡托盘检测,HY_StopTray_Check,566,HC,X566
DI,212,HY12横移托盘检测,HY_TrayCheck,567,HC,X567
DI,212,HY12横移顶升上升端,HY_TopCylinder_UP,568,HC,X568
DI,212,HY12横移顶升上升端,HY_TopCylinder_Up,568,HC,X568
DI,212,HY12横移顶升下降端,HY_TopCylinder_Down,569,HC,X569
DI,212,HY12横移定位1上升端,HY_LocationCylinder_UP1,570,HC,X570
DI,212,HY12横移定位1上升端,HY_LocationCylinder_Up1,570,HC,X570
DI,212,HY12横移定位1下降端,HY_LocationCylinder_Down1,571,HC,X571
DI,212,HY12横移定位2上升端,HY_LocationCylinder_UP2,572,HC,X572
DI,212,HY12横移定位2上升端,HY_LocationCylinder_Up2,572,HC,X572
DI,212,HY12横移定位2下降端,HY_LocationCylinder_Down2,573,HC,X573
DI,212,HY12接驳台气缸取料端,HY_MoveCylinder_Take,574,HC,X574
DI,212,HY12接驳台气缸放料端,HY_MoveCylinder_Give,575,HC,X575
......@@ -1224,13 +1224,13 @@ DI,212,HY12接驳台料盘检测15寸,HY_TrayCheck4,581,HC,X581
DO,214,C6-HY14阻挡下降,HY_StopCylinder_Up,496,HC,Y496
DO,214,C9-HY14阻挡下降,HY_StopCylinder_Down,497,HC,Y497
DO,214,HY14横移电机正转,HY_LineRun,498,HC,Y498
DO,214,HY14横移顶升上升,HY_TopCylinder_UP,499,HC,Y499
DO,214,HY14横移顶升上升,HY_TopCylinder_Up,499,HC,Y499
DO,214,HY14横移顶升下降,HY_TopCylinder_Down,500,HC,Y500
DO,212,HY12横移电机正转,HY_LineRun,501,HC,Y501
DO,212,HY12前阻挡下降,HY_FrontStopDown,502,HC,Y502
DO,212,HY12横移顶升上升,HY_TopCylinder_UP,503,HC,Y503
DO,212,HY12横移顶升上升,HY_TopCylinder_Up,503,HC,Y503
DO,212,HY12横移顶升下降,HY_TopCylinder_Down,504,HC,Y504
DO,212,HY12横移定位上升,HY_LocationCylinder_UP,505,HC,Y505
DO,212,HY12横移定位上升,HY_LocationCylinder_Up,505,HC,Y505
DO,212,HY12横移定位下降,HY_LocationCylinder_Down,506,HC,Y506
DO,212,HY12接驳台气缸取料,HY_MoveCylinder_Take,507,HC,Y507
DO,212,HY12接驳台气缸放料,HY_MoveCylinder_Give,508,HC,Y508
......
......@@ -3,8 +3,8 @@ PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,
PRO,0,是否使用伺服,UpDownUseAxis,0,,
PRO,0,HY所在流水线,LineName,C1,,
PRO,0,HY工位对应的取放料设备,WorkDevice,101,,
PRO,0,HY是否是托盘横移入口,IsSideWayIn,1,,
PRO,0,HY是否是托盘横移出口,IsSideWayOut,0,,
PRO,0,HY是否是托盘横移入口,IsSideWayIn,0,,
PRO,0,HY是否是托盘横移出口,IsSideWayOut,1,,
PRO,0,HY是否是托盘进入出料线入口,IsOutLineIn,0,,
PRO,0,HY是否是托盘离开出料线出口,IsOutLineOut,0,,
,,,,,,
......
......@@ -3,8 +3,8 @@ PRO,0,设备是否处于调试状态(1=调试,0=正常),IsDebug,0,,
PRO,0,是否使用伺服,UpDownUseAxis,0,,
PRO,0,HY所在流水线,LineName,C1,,
PRO,0,HY工位对应的取放料设备,WorkDevice,102,,
PRO,0,HY是否是托盘横移入口,IsSideWayIn,0,,
PRO,0,HY是否是托盘横移出口,IsSideWayOut,1,,
PRO,0,HY是否是托盘横移入口,IsSideWayIn,1,,
PRO,0,HY是否是托盘横移出口,IsSideWayOut,0,,
PRO,0,HY是否是托盘进入出料线入口,IsOutLineIn,0,,
PRO,0,HY是否是托盘离开出料线出口,IsOutLineOut,0,,
,,,,,,
......
......@@ -249,13 +249,11 @@ namespace OnlineStore.DeviceLibrary
}
}
/// <summary>
/// 下降所有阻挡气缸
/// </summary>
internal virtual void OpenStopCylinder()
{
preRWTime = DateTime.Now;
if (baseConfig.DType.Equals(DeviceType.MoveEquip) || baseConfig.DType.Equals(DeviceType.HYEquip))
if (baseConfig.DType.Equals(DeviceType.MoveEquip) )
{
LogInfo("OpenStopCylinder: 下降阻挡气缸,上下气缸上升,顶升气缸下降");
IOMove(IO_Type.StopDown1, IO_VALUE.HIGH);
......@@ -266,14 +264,17 @@ namespace OnlineStore.DeviceLibrary
CylinderMove(null, IO_Type.UpDownCylinder_Down, IO_Type.UpDownCylinder_Up);
}
//顶升气缸下降
CylinderMove(null, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
CylinderMove(null, IO_Type.TopCylinder_Up, IO_Type.TopCylinder_Down);
Thread.Sleep(30);
}
} else if (baseConfig.DType.Equals(DeviceType.FeedingEquip))
{
}
}
internal virtual bool OpenStopCylinderOk(TimeSpan span)
{
TimeSpan rwSpan = DateTime.Now - preRWTime;
if (baseConfig.DType.Equals(DeviceType.MoveEquip) || baseConfig.DType.Equals(DeviceType.HYEquip))
if (baseConfig.DType.Equals(DeviceType.MoveEquip) )
{
if (IOValue(IO_Type.StopDown1).Equals(IO_VALUE.HIGH) &&
IOValue(IO_Type.StopDown2).Equals(IO_VALUE.HIGH))
......@@ -287,32 +288,15 @@ namespace OnlineStore.DeviceLibrary
IOMove(IO_Type.StopDown2, IO_VALUE.HIGH);
}
}
else if (baseConfig.DType.Equals(DeviceType.FeedingEquip))
{
if (DeviceID.Equals(102))
{
// if (IOValue(IO_Type.FL_StopCylinder_Down1).Equals(IO_VALUE.HIGH) &&
//IOValue(IO_Type.FL_StopCylinder_Down2).Equals(IO_VALUE.HIGH))
// {
// return true;
// }
// else if (rwSpan.TotalSeconds > 5 && span.TotalSeconds > 6 && span.TotalSeconds < LineManager.Config.IOSingle_TimerOut * 2)
// {
// IOMove(IO_Type.FL_StopCylinder_Down1, IO_VALUE.HIGH);
// IOMove(IO_Type.FL_StopCylinder_Down2, IO_VALUE.HIGH);
// }
}
else
{
return true;
}
return true;
}
return false;
}
internal virtual void CloseCylinderStop()
{
if (baseConfig.DType.Equals(DeviceType.MoveEquip) || baseConfig.DType.Equals(DeviceType.HYEquip))
if (baseConfig.DType.Equals(DeviceType.MoveEquip) )
{
LogInfo("CloseCylinderStop: 上升阻挡气缸,关闭上下气缸,顶升气缸IO");
......@@ -325,10 +309,14 @@ namespace OnlineStore.DeviceLibrary
IOMove(IO_Type.UpDownCylinder_Up, IO_VALUE.LOW);
}
//顶升气缸下降
IOMove(IO_Type.TopCylinder_UP, IO_VALUE.LOW);
IOMove(IO_Type.TopCylinder_Up, IO_VALUE.LOW);
IOMove(IO_Type.TopCylinder_Down, IO_VALUE.LOW);
Thread.Sleep(30);
}
}
else if (baseConfig.DType.Equals(DeviceType.FeedingEquip))
{
}
}
internal bool UpdateTrayNum()
......
......@@ -7,10 +7,18 @@ using System.Threading.Tasks;
namespace OnlineStore.DeviceLibrary
{
public class HYEquipBase : EquipBase
public abstract class HYEquipBase : EquipBase
{
public HYEquip_Config Config;
/// <summary>
/// 当前设备对应的横移出口的设备ID
/// </summary>
private int HyOutDeviceId = 0;
/// <summary>
/// 当前设备对应的横移入口的设备ID
/// </summary>
private int HyInDeviceId = 0;
public static HYEquipBase GetHY(string cid, HYEquip_Config config)
{
int hynum = (config.Id % 100);
......@@ -43,47 +51,139 @@ namespace OnlineStore.DeviceLibrary
this.Config = config;
baseConfig = config;
IsDebug = config.IsDebug.Equals(1);
Name = ( "_HY" + (DeviceID%100).ToString().PadLeft(2, '0') + "_").ToUpper();
Name = ("_HY" + (DeviceID % 100).ToString().PadLeft(2, '0') + "_").ToUpper();
Init();
MoveInfo = new LineMoveInfo(DeviceID, "[" + Name.Trim() + "-Move]");
SecondMoveInfo = new LineMoveInfo(DeviceID, "[" + Name.Trim() + "-SMove]");
UseAxis = config.UpDownUseAxis.Equals(1);
//if (UseAxis)
//{
if (UseAxis)
{
UpdownAxis = new AxisBean(config.UpDown_Axis, Name);
}
HyOutDeviceId = 0;
HyInDeviceId = 0;
// Config.UpDown_Axis.ServerOnDO = IO_Type.UpDownAxis_ServoOn;
// Config.UpDown_Axis.BreakOnDO = IO_Type.UpDownAxis_BreakOn;
//}
UpdownAxis = new AxisBean(config.UpDown_Axis, Name);
if (DeviceID.Equals(201))
{
HyInDeviceId = 202;
}
else if (DeviceID.Equals(202))
{
HyOutDeviceId = 201;
}
else if (DeviceID.Equals(220))
{
HyOutDeviceId = 221;
}
else if (DeviceID.Equals(221))
{
HyInDeviceId = 220;
}
else if (DeviceID.Equals(204))
{
HyOutDeviceId = 203;
}
else if (DeviceID.Equals(203))
{
HyInDeviceId = 204;
}
else if (DeviceID.Equals(209))
{
HyOutDeviceId = 208;
}
else if (DeviceID.Equals(208))
{
HyInDeviceId = 209;
}
else if (DeviceID.Equals(215))
{
HyOutDeviceId = 216;
}
else if (DeviceID.Equals(216))
{
HyInDeviceId = 215;
}
else if (DeviceID.Equals(218))
{
HyOutDeviceId = 219;
}
else if (DeviceID.Equals(219))
{
HyInDeviceId = 218;
}
}
public override bool StartRun(bool isDebug = false)
public string GetHYDesc()
{
return false;
StringBuilder buf = new StringBuilder();
buf.Append(" 所在流水线:" + Config.LineName+"\r\n");
string dName = "暂无";
if (Config.WorkDevice>0&&LineManager.Line.AllEquipMap.ContainsKey(Config.WorkDevice))
{
dName = LineManager.Line.AllEquipMap[Config.WorkDevice].Name;
}
buf.Append(" 取放料设备:" + dName + "\r\n");
if (Config.IsSideWayIn.Equals(1))
{
buf.Append("C1线横移入口:✔" + "\r\n");
}
if (Config.IsSideWayOut.Equals(1))
{
buf.Append("C1线横移出口:✔" + "\r\n");
}
if (Config.IsOutLineIn.Equals(1))
{
buf.Append(" 出料托盘入口:✔" + "\r\n");
}
if (Config.IsOutLineOut.Equals(1))
{
buf.Append(" 出料托盘出口:✔" + "\r\n");
}
int hynum = (this.Config.Id % 100);
List<int> jNumList = new List<int>() { 10, 12, 17 };
if (hynum.Equals(17))
{
buf.Append(" NG料工位:✔" + "\r\n");
}
else if (jNumList.Contains(hynum))
{
buf.Append(" 接驳台工位:✔" + "\r\n");
}
return buf.ToString();
}
public override bool Reset()
protected HYEquipBase GetHyOutEquip()
{
return false;
if (HyOutDeviceId > 0)
{
return LineManager.Line.HYEquipMap[HyOutDeviceId];
}
return null;
}
protected override void ResetProcess()
protected HYEquipBase GetHyInEquip()
{
if (HyInDeviceId > 0)
{
return LineManager.Line.HYEquipMap[HyInDeviceId];
}
return null;
}
internal override void StopMove()
internal virtual bool TrayIsReady()
{
}
public override void StopRun()
{
return false;
}
protected override void BaseTimerProcess()
{
}
internal virtual void TrayCanLeave()
{
}
public override bool StartInStoreMove(InOutParam param)
......@@ -94,11 +194,7 @@ namespace OnlineStore.DeviceLibrary
public override bool StartOutStoreMove(InOutParam param)
{
return false;
}
protected override void CheckFixtureProcess()
{
}
}
protected override void InStoreProcess()
{
}
......
using OnlineStore.LoadCSVLibrary;
using OnlineStore.Common;
using OnlineStore.LoadCSVLibrary;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace OnlineStore.DeviceLibrary
......@@ -19,35 +22,22 @@ namespace OnlineStore.DeviceLibrary
if (CanStartRun().Equals(false))
{
return false;
}
if (!RunAxis(true, UpdownAxis))
{
return false;
}
}
mainTimer.Enabled = false;
MoveInfo.EndMove();
SecondMoveInfo.EndMove();
runStatus = LineRunStatus.HomeMoving;
LogInfo("开始 原点返回 ");
runStatus = LineRunStatus.HomeMoving;
MoveInfo.NewMove(LineMoveType.ReturnHome);
StartReset();
if (isDebug)
{
mainTimer.Enabled = true;
}
return true;
return true;
}
public override bool Reset()
{
StopMove();
if (!RunAxis(true, UpdownAxis))
{
return false;
}
LogInfo("开始重置: 升降轴回原点,阻挡气缸上升 ");
StopMove();
runStatus = LineRunStatus.Reset;
SecondMoveInfo.EndMove();
MoveInfo.NewMove(LineMoveType.Reset);
......@@ -59,34 +49,23 @@ namespace OnlineStore.DeviceLibrary
{
ResetClearData();
lineStatus = LineStatus.ResetMove;
SecondMoveInfo.EndMove();
MoveInfo.NextMoveStep(LineMoveStep.HY_R_01StopMove);
if (IsDebug)
{
IOMove(IO_Type.StopDown1, IO_VALUE.HIGH);
IOMove(IO_Type.StopDown2, IO_VALUE.HIGH);
}
else
{
IOMove(IO_Type.StopDown1, IO_VALUE.LOW);
IOMove(IO_Type.StopDown2, IO_VALUE.LOW);
}
LogInfo("开始"+MoveInfo.MoveType+": 横移线体停止,阻挡上升,侧挡气缸上升 ");
if (IsDebug)
{
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.HIGH);
IOMove(IO_Type.HY_SideStopDown, IO_VALUE.HIGH);
IOMove(IO_Type.HY_StopDown, IO_VALUE.HIGH);
}
else
{
{
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
IOMove(IO_Type.HY_SideStopDown, IO_VALUE.LOW);
IOMove(IO_Type.HY_StopDown, IO_VALUE.LOW);
}
IOMove(IO_Type.HY_LineRun, IO_VALUE.LOW);
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_UP, IO_Type.HY_TopCylinder_Down);
CylinderMove(MoveInfo, IO_Type.HY_LocationCylinder_UP, IO_Type.HY_LocationCylinder_Down);
CylinderMove(MoveInfo, IO_Type.HY_StopCylinder_Down, IO_Type.HY_StopCylinder_Up);
CylinderMove(null, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
//LocationCylinderDown(null);
isInPro = false;
}
......@@ -96,64 +75,56 @@ namespace OnlineStore.DeviceLibrary
{
CheckWait(MoveInfo);
}
else if (SecondMoveInfo.IsInWait)
{
CheckWait(SecondMoveInfo);
}
if (!MoveInfo.IsInWait && !SecondMoveInfo.IsInWait)
if (!MoveInfo.IsInWait)
{
//流水线各装置复原位,夹料气缸状态不变
//阻挡气缸全部=0
//上下气缸上升,、
//上升到位,顶升气缸下降,前后气缸回退
//复位时夹紧气缸需要发送,不然后面出入库会有问题
switch (MoveInfo.MoveStep)
if (MoveInfo.IsStep(LineMoveStep.HY_R_01StopMove))
{
case LineMoveStep.HY_R_01StopMove:
MoveInfo.NextMoveStep(LineMoveStep.HY_R_02StopMove);
LogInfo(MoveInfo.MoveType + " 完成!");
runStatus = LineRunStatus.Runing;
MoveInfo.EndMove();
SecondMoveInfo.EndMove();
if (IsDebug)
{
lineStatus = LineStatus.Debugging;
}
else
{
lineStatus = LineStatus.StoreOnline;
}
break;
default: break;
DebugInfo(MoveInfo.MoveType + " : 顶升气缸下降,定位气缸下降");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
//LocationCylinderDown(MoveInfo);
isInPro = false;
}
else if (MoveInfo.IsStep(LineMoveStep.HY_R_02StopMove))
{
LogInfo(MoveInfo.MoveType + " 完成!");
runStatus = LineRunStatus.Runing;
MoveInfo.EndMove();
SecondMoveInfo.EndMove();
if (IsDebug)
{
lineStatus = LineStatus.Debugging;
}
else
{
lineStatus = LineStatus.StoreOnline;
}
}
}
}
/// <summary>
/// 停止运动
/// </summary>
internal override void StopMove()
{
//trayCheck2LowWait.Stop();
//trayCheckWait.Stop();
//如果正在出库中,需要减去托盘号
if (MoveInfo.MoveType.Equals(LineMoveType.OutStore))
{
DebugInfo("停止运动时出库执行中,减去托盘数;");
//减去需要的盘数
// TrayManager.DelNeedEmptyTrayNum();
MoveInfo.EndMove();
}
runStatus = LineRunStatus.Busy;
MoveInfo.EndMove();
SecondMoveInfo.EndMove();
LogInfo("停止运动:上下气缸上升端,阻挡气缸上升 ");
LogInfo("停止运动:横移线体停止,阻挡上升,顶升气缸下降,定位气缸下降 ");
//UpdownUpMove();
CylinderMove(MoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
IOMove(IO_Type.StopDown1, IO_VALUE.LOW);
IOMove(IO_Type.StopDown2, IO_VALUE.LOW);
if (IsDebug)
{
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.HIGH);
IOMove(IO_Type.HY_StopDown, IO_VALUE.HIGH);
}
else
{
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
IOMove(IO_Type.HY_StopDown, IO_VALUE.LOW);
}
CylinderMove(null, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
//LocationCylinderDown(null);
}
......@@ -164,20 +135,7 @@ namespace OnlineStore.DeviceLibrary
mainTimer.Enabled = false;
}
StopMove();
//停止运行时,把所有IO 置零
CheckAndMove(IO_Type.StopDown1, IO_VALUE.LOW);
CheckAndMove(IO_Type.StopDown2, IO_VALUE.LOW);
CheckAndMove(IO_Type.TopCylinder_UP, IO_VALUE.LOW);
CheckAndMove(IO_Type.TopCylinder_Down, IO_VALUE.LOW);
CheckAndMove(IO_Type.BeforeAfterCylinder_Before, IO_VALUE.LOW);
CheckAndMove(IO_Type.BeforeAfterCylinder_After, IO_VALUE.LOW);
if (UseAxis.Equals(false))
{
CheckAndMove(IO_Type.UpDownCylinder_Up, IO_VALUE.LOW);
CheckAndMove(IO_Type.UpDownCylinder_Down, IO_VALUE.LOW);
}
CheckAndMove(IO_Type.ClampCylinder_Work, IO_VALUE.LOW);
CheckAndMove(IO_Type.ClampCylinder_Relax, IO_VALUE.LOW);
runStatus = LineRunStatus.Wait;
}
......@@ -188,41 +146,450 @@ namespace OnlineStore.DeviceLibrary
{
return;
}
BusyMoveProcess();
IOTimeOutProcess();
//判断流水线打开了才可以运行
if (SecondMoveInfo.MoveType.Equals(LineMoveType.None))
{
if (LineManager.Line.CanProcessLine())
{
// LogUtil.info("StartCheckFixture");
//StartCheckFixture();
StartCheckFixture();
}
}
//OutStoreListPro();
else
{
if (IOValue(IO_Type.HY_TrayCheck).Equals(IO_VALUE.HIGH))
{
trayCheck2LowWait.Stop();
}
else
{
TrayManager.checkWatch(trayCheck2LowWait, 30000, false);
}
CheckFixtureProcess();
}
}
public override bool StartInStoreMove(InOutParam param)
private Stopwatch trayCheckWait = new Stopwatch();
private Stopwatch trayCheck2LowWait = new Stopwatch();
private object lockObj = "";
private void StartCheckFixture()
{
return false;
if (Monitor.TryEnter(lockObj, 100))
{
try
{
if (MoveInfo.MoveType.Equals(LineMoveType.None).Equals(false))
{
LogUtil.error(Name + " StartCheckFixture " + " 不在空闲中,直接返回 ");
return;
}
if (MoveInfo.MoveType.Equals(LineMoveType.None))
{
if (IOValue(IO_Type.HY_TrayCheck).Equals(IO_VALUE.HIGH))
{
trayCheck2LowWait.Stop();
if (TrayManager.checkWatch(trayCheckWait, TrayManager.SwTrayWaitTime, true))
{
MoveInfo.NewMove(LineMoveType.CheckFixture);
if (Config.IsSideWayIn.Equals(1))
{
MoveInfo.NextMoveStep(LineMoveStep.HY03_FrontStopUp);
LogInfo("检测托盘," + MoveInfo.SLog + " ,阻挡上升");
UpdateTrayNum();
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_FrontStopCheck, IO_VALUE.LOW));
IOMove(IO_Type.HY_StopDown, IO_VALUE.LOW);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.HY56_CheckWait);
LogInfo("检测托盘," + MoveInfo.SLog + " ,阻挡上升,等待托盘检测");
UpdateTrayNum();
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
IOMove(IO_Type.HY_StopDown, IO_VALUE.LOW);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
}
}
else
{
bool check2IsOk = TrayManager.checkWatch(trayCheck2LowWait, TrayManager.SwTrayWaitTime, false);
if (IOValue(IO_Type.HY_FrontStopCheck).Equals(IO_VALUE.HIGH))
{
if (TrayManager.checkWatch(trayCheckWait, TrayManager.SwTrayWaitTime, false) && check2IsOk)
{
trayCheckWait.Stop();
trayCheck2LowWait.Stop();
//托盘在第一个阻挡处
MoveInfo.NewMove(LineMoveType.CheckFixture);
MoveInfo.NextMoveStep(LineMoveStep.HY02_FrontStopDown);
LogInfo(" 托盘检测:" + MoveInfo.SLog + ",检测到前阻挡托盘检测,前阻挡下降,清理托盘RFID");
ClearTrayRFID();
IOMove(IO_Type.HY_FrontStopCheck, IO_VALUE.HIGH, 1200);
MoveInfo.OneWaitCanEndStep = true;
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_FrontStopCheck, IO_VALUE.LOW));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
}
else
{
trayCheckWait.Stop();
}
}
}
}
catch (Exception ex)
{
LogUtil.error(Name + " StartCheckFixture " + " 出错:" + ex.ToString());
}
finally
{
Monitor.Exit(lockObj);
}
}
else
{
LogUtil.error(Name + " StartCheckFixture " + "失败,未得到锁");
}
}
public override bool StartOutStoreMove(InOutParam param)
protected override void CheckFixtureProcess()
{
return false;
if (MoveInfo.IsInWait)
{
CheckWait(MoveInfo);
}
if (MoveInfo.IsInWait)
{
return;
}
#region 横移入口托盘处理
if (MoveInfo.IsStep(LineMoveStep.HY02_FrontStopDown))
{
MoveInfo.NextMoveStep(LineMoveStep.HY03_FrontStopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 托盘检测到信号,前阻挡上升");
CheckAndMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(LineMoveStep.HY03_FrontStopUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY04_WaitTime);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(LineMoveStep.HY04_WaitTime))
{
//判断是否需要横移托盘,或者取放料
UpdateTrayNum();
MoveInfo.NextMoveStep(LineMoveStep.HY05_TrayCheck);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
if (TrayNeed(currTrayNum))
{
MoveInfo.NextMoveStep(LineMoveStep.HY06_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 需要拦截托盘,顶升上升");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.TopCylinder_Up);
}
else
{
HY11_TopUpToHY();
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY06_TopUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY07_LocationUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 需要拦截托盘,定位上升");
//LocationCylinderUp(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY07_LocationUp))
{
if (TrayNeed(currTrayNum))
{
//如果是出库,且盘高大于30,暂不顶升
MoveInfo.NextMoveStep(LineMoveStep.HY08_WaitProcessReel);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待料盘放入或料盘离开 ");
}
else
{
HY11_TopUpToHY();
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY09_ReelProEnd))
{
HY11_TopUpToHY();
}
else if (MoveInfo.IsStep(LineMoveStep.HY11_TopUpToHY))
{
MoveInfo.NextMoveStep(LineMoveStep.HY12_WaitHY2Free);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待HY2空闲,可以开始横移 ");
}
else if (MoveInfo.IsStep(LineMoveStep.HY12_WaitHY2Free))
{
if (GetHyOutEquip().MoveInfo.MoveType.Equals(LineMoveType.None))
{
MoveInfo.NextMoveStep(LineMoveStep.HY13_WaitHY2Ready);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待HY2准备完成(顶升上升,定位下降) ");
GetHyOutEquip().MoveInfo.NewMove(LineMoveType.CheckFixture);
GetHyOutEquip().MoveInfo.NextMoveStep(LineMoveStep.HY51_WaitFree);
}
else if (MoveInfo.IsTimeOut())
{
WarnMsg = MoveInfo.Name + "[" + MoveInfo.MoveType + "][" + MoveInfo.SLog + "]等待横移出口可以横移超时[" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒";
LogUtil.error(WarnMsg, DeviceID * 1000 + 22);
Alarm(LineAlarmType.IoSingleTimeOut);
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY13_WaitHY2Ready))
{
bool result = GetHyOutEquip().MoveInfo.MoveStep >= LineMoveStep.HY54_HY2Ready;
if (result)
{
MoveInfo.NextMoveStep(LineMoveStep.HY14_HYLineRun);
CheckLog("托盘横移" + MoveInfo.SLog + " ,横移电机转动 ");
IOMove(IO_Type.HY_LineRun, IO_VALUE.HIGH);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_LineRun, IO_VALUE.HIGH));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.LOW));
}
else if (MoveInfo.IsTimeOut())
{
WarnMsg = MoveInfo.Name + "[" + MoveInfo.MoveType + "][" + MoveInfo.SLog + "]等待横移出口顶升上升完成超时[" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒";
LogUtil.error(WarnMsg, DeviceID * 1000 + 22);
Alarm(LineAlarmType.IoSingleTimeOut);
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY14_HYLineRun))
{
MoveInfo.NextMoveStep(LineMoveStep.HY15_WaitOutCheck);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待托盘到达HY2 ");
}
else if (MoveInfo.IsStep(LineMoveStep.HY15_WaitOutCheck))
{
bool result = GetHyOutEquip().MoveInfo.MoveStep >= LineMoveStep.HY55_WaitTrayCheck;
if (result)
{
MoveInfo.NextMoveStep(LineMoveStep.HY16_WatOutFixture2);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待托盘到达HY2持续一段时间 ");
}
else if (MoveInfo.IsTimeOut())
{
WarnMsg = MoveInfo.Name + "[" + MoveInfo.MoveType + "][" + MoveInfo.SLog + "]等待托盘到达横移出口超时[" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒";
LogUtil.error(WarnMsg, DeviceID * 1000 + 22);
Alarm(LineAlarmType.IoSingleTimeOut);
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY16_WatOutFixture2))
{
bool result = GetHyOutEquip().MoveInfo.MoveStep >= LineMoveStep.HY56_CheckWait;
if (result)
{
MoveInfo.NextMoveStep(LineMoveStep.HY17_TopDown);
CheckLog("托盘横移" + MoveInfo.SLog + " ,横移电机停止,顶升下降,定位下降 ");
IOMove(IO_Type.HY_LineRun, IO_VALUE.LOW);
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
//LocationCylinderDown(MoveInfo);
}
else if (MoveInfo.IsTimeOut())
{
WarnMsg = MoveInfo.Name + "[" + MoveInfo.MoveType + "][" + MoveInfo.SLog + "]等待托盘到达横移出口[" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒";
LogUtil.error(WarnMsg, DeviceID * 1000 + 22);
Alarm(LineAlarmType.IoSingleTimeOut);
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY17_TopDown))
{
CheckLog("托盘横移" + MoveInfo.SLog + " ,结束横移处理 ");
MoveInfo.EndMove();
}
#endregion
#region 横移出口托盘处理
else if (MoveInfo.IsStep(LineMoveStep.HY51_WaitFree))
{
MoveInfo.NextMoveStep(LineMoveStep.HY52_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升上升,定位下降");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.TopCylinder_Up);
//LocationCylinderDown(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY52_TopUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY53_LineRun);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 横移电机开始转动");
IOMove(IO_Type.HY_LineRun, IO_VALUE.HIGH);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_LineRun, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(LineMoveStep.HY53_LineRun))
{
MoveInfo.NextMoveStep(LineMoveStep.HY54_HY2Ready);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 准备接收横移托盘完成");
}
else if (MoveInfo.IsStep(LineMoveStep.HY54_HY2Ready))
{
MoveInfo.NextMoveStep(LineMoveStep.HY55_WaitTrayCheck);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待检测到托盘信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(LineMoveStep.HY55_WaitTrayCheck))
{
MoveInfo.NextMoveStep(LineMoveStep.HY56_CheckWait);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(LineMoveStep.HY56_CheckWait))
{
//托盘已到位,更新托盘号,判断是否需要取放料
UpdateTrayNum();
if (TrayNeed(currTrayNum))
{
MoveInfo.NextMoveStep(LineMoveStep.HY57_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升上升 ");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.TopCylinder_Up);
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.HY61_TopDown);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升下降 ");
CylinderMove(MoveInfo, IO_Type.TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY57_TopUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY58_LocationUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 是出入库需要的空托盘,定位上升");
//LocationCylinderUp(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY58_LocationUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY59_WaitProcessReel);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待料盘放入或料盘离开");
}
else if (MoveInfo.IsStep(LineMoveStep.HY60_ReelProEnd))
{
MoveInfo.NextMoveStep(LineMoveStep.HY61_TopDown);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升下降 ");
CylinderMove(MoveInfo, IO_Type.TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
}
else if (MoveInfo.IsStep(LineMoveStep.HY61_TopDown))
{
MoveInfo.NextMoveStep(LineMoveStep.HY62_LocationDown);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 定位下降");
//LocationCylinderDown(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY62_LocationDown))
{
MoveInfo.NextMoveStep(LineMoveStep.HY63_WaitTrayGo);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待托盘检测信号消失");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.LOW));
}
else if (MoveInfo.IsStep(LineMoveStep.HY63_WaitTrayGo))
{
MoveInfo.NextMoveStep(LineMoveStep.HY64_CheckWait);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待托盘检测信号消失500");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.LOW));
}
else if (MoveInfo.IsStep(LineMoveStep.HY64_CheckWait))
{
MoveInfo.NextMoveStep(LineMoveStep.HY65_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升提前上升");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.TopCylinder_Up);
}
else if (MoveInfo.IsStep(LineMoveStep.HY65_TopUp))
{
MoveInfo.EndMove();
CheckLog("托盘阻挡" + MoveInfo.SLog + " 处理完成");
}
#endregion
}
protected override void CheckFixtureProcess()
private void HY11_TopUpToHY()
{
MoveInfo.NextMoveStep(LineMoveStep.HY11_TopUpToHY);
CheckLog("托盘横移" + MoveInfo.SLog + " 不需要拦截托盘,开始横移,顶升上升,定位下降");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.TopCylinder_Up);
//LocationCylinderDown(MoveInfo);
}
private bool TrayNeed(int trayNum)
{
try
{
if (Config.WorkDevice > 0)
{
TrayInfo trayInfo = TrayManager.GetTrayInfo(trayNum);
if (trayInfo.IsFull)
{
return false;
}
//判断T3是否在入库等待托盘
FeedingEquip feedT3 = LineManager.Line.FeedingEquipMap[Config.WorkDevice];
if (feedT3.CurrTrayIsNeed(currTrayNum, false))
{
LogInfo(" " + feedT3.Name + "拦截托盘【" + currTrayNum + "】");
return true;
}
}
}
catch (Exception ex)
{
LogUtil.error("TrayNeed 出错:" + ex.ToString());
}
return false;
}
protected override void InStoreProcess()
internal override bool TrayIsReady()
{
if (Config.IsSideWayIn.Equals(1))
{
if (MoveInfo.MoveType.Equals(LineMoveType.CheckFixture) && MoveInfo.IsStep(LineMoveStep.HY08_WaitProcessReel))
{
return true;
}
}
else
{
if (MoveInfo.MoveType.Equals(LineMoveType.CheckFixture) && MoveInfo.IsStep(LineMoveStep.HY59_WaitProcessReel))
{
return true;
}
}
return false;
}
protected override void OutStoreProcess()
internal override void TrayCanLeave()
{
if (TrayIsReady())
{
if (Config.IsSideWayIn.Equals(1))
{
MoveInfo.NextMoveStep(LineMoveStep.HY09_ReelProEnd);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 料盘处理完成,开始横移或放行");
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.HY60_ReelProEnd);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 料盘处理完成,开始横移或放行");
}
}
else
{
LogUtil.error(Name + "TrayCanLeave :当前托盘不在等待中,不需要处理");
}
}
}
......
using OnlineStore.LoadCSVLibrary;
using OnlineStore.Common;
using OnlineStore.LoadCSVLibrary;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace OnlineStore.DeviceLibrary
{
public class HY_C1_SLStation : HYEquipBase
/// <summary>
/// 此类对应HY1,HY2,HY20,HY21
/// </summary>
public class HY_C1_SLStation : HYEquipBase
{
public HY_C1_SLStation(string cid, HYEquip_Config config) : base(cid, config)
{
......@@ -19,25 +25,19 @@ namespace OnlineStore.DeviceLibrary
if (CanStartRun().Equals(false))
{
return false;
}
if (!RunAxis(true, UpdownAxis))
{
return false;
}
}
mainTimer.Enabled = false;
MoveInfo.EndMove();
SecondMoveInfo.EndMove();
runStatus = LineRunStatus.HomeMoving;
LogInfo("开始 原点返回 ");
runStatus = LineRunStatus.HomeMoving;
MoveInfo.NewMove(LineMoveType.ReturnHome);
StartReset();
if (isDebug)
{
mainTimer.Enabled = true;
}
return true;
return true;
}
public override bool Reset()
{
......@@ -45,9 +45,7 @@ namespace OnlineStore.DeviceLibrary
if (!RunAxis(true, UpdownAxis))
{
return false;
}
LogInfo("开始重置: 升降轴回原点,阻挡气缸上升 ");
}
runStatus = LineRunStatus.Reset;
SecondMoveInfo.EndMove();
MoveInfo.NewMove(LineMoveType.Reset);
......@@ -59,34 +57,23 @@ namespace OnlineStore.DeviceLibrary
{
ResetClearData();
lineStatus = LineStatus.ResetMove;
SecondMoveInfo.EndMove();
MoveInfo.NextMoveStep(LineMoveStep.HY_R_01StopMove);
if (IsDebug)
{
IOMove(IO_Type.StopDown1, IO_VALUE.HIGH);
IOMove(IO_Type.StopDown2, IO_VALUE.HIGH);
}
else
{
IOMove(IO_Type.StopDown1, IO_VALUE.LOW);
IOMove(IO_Type.StopDown2, IO_VALUE.LOW);
}
LogInfo("开始"+MoveInfo.MoveType+": 横移线体停止,阻挡气缸上升 ");
if (IsDebug)
{
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.HIGH);
IOMove(IO_Type.HY_SideStopDown, IO_VALUE.HIGH);
IOMove(IO_Type.HY_StopDown, IO_VALUE.HIGH);
}
else
{
{
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
IOMove(IO_Type.HY_SideStopDown, IO_VALUE.LOW);
IOMove(IO_Type.HY_StopDown, IO_VALUE.LOW);
}
IOMove(IO_Type.HY_LineRun, IO_VALUE.LOW);
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_UP, IO_Type.HY_TopCylinder_Down);
CylinderMove(MoveInfo, IO_Type.HY_LocationCylinder_UP, IO_Type.HY_LocationCylinder_Down);
CylinderMove(MoveInfo, IO_Type.HY_StopCylinder_Down, IO_Type.HY_StopCylinder_Up);
CylinderMove(null , IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
LocationCylinderDown(null);
isInPro = false;
}
......@@ -96,64 +83,56 @@ namespace OnlineStore.DeviceLibrary
{
CheckWait(MoveInfo);
}
else if (SecondMoveInfo.IsInWait)
{
CheckWait(SecondMoveInfo);
}
if (!MoveInfo.IsInWait && !SecondMoveInfo.IsInWait)
if (!MoveInfo.IsInWait)
{
//流水线各装置复原位,夹料气缸状态不变
//阻挡气缸全部=0
//上下气缸上升,、
//上升到位,顶升气缸下降,前后气缸回退
//复位时夹紧气缸需要发送,不然后面出入库会有问题
switch (MoveInfo.MoveStep)
if (MoveInfo.IsStep(LineMoveStep.HY_R_01StopMove))
{
case LineMoveStep.HY_R_01StopMove:
MoveInfo.NextMoveStep(LineMoveStep.HY_R_02StopMove);
LogInfo(MoveInfo.MoveType + " 完成!");
runStatus = LineRunStatus.Runing;
MoveInfo.EndMove();
SecondMoveInfo.EndMove();
if (IsDebug)
{
lineStatus = LineStatus.Debugging;
}
else
{
lineStatus = LineStatus.StoreOnline;
}
break;
default: break;
DebugInfo(MoveInfo.MoveType + " : 顶升气缸下降,定位气缸下降");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
LocationCylinderDown(MoveInfo);
isInPro = false;
}
else if (MoveInfo.IsStep(LineMoveStep.HY_R_02StopMove))
{
LogInfo(MoveInfo.MoveType + " 完成!");
runStatus = LineRunStatus.Runing;
MoveInfo.EndMove();
SecondMoveInfo.EndMove();
if (IsDebug)
{
lineStatus = LineStatus.Debugging;
}
else
{
lineStatus = LineStatus.StoreOnline;
}
}
}
}
/// <summary>
/// 停止运动
/// </summary>
internal override void StopMove()
{
//trayCheck2LowWait.Stop();
//trayCheckWait.Stop();
//如果正在出库中,需要减去托盘号
if (MoveInfo.MoveType.Equals(LineMoveType.OutStore))
{
DebugInfo("停止运动时出库执行中,减去托盘数;");
//减去需要的盘数
// TrayManager.DelNeedEmptyTrayNum();
MoveInfo.EndMove();
}
runStatus = LineRunStatus.Busy;
{
MoveInfo.EndMove();
SecondMoveInfo.EndMove();
LogInfo("停止运动:上下气缸上升端,阻挡气缸上升 ");
LogInfo("停止运动:横移线体停止,阻挡上升,顶升气缸下降,定位气缸下降 ");
//UpdownUpMove();
CylinderMove(MoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
IOMove(IO_Type.StopDown1, IO_VALUE.LOW);
IOMove(IO_Type.StopDown2, IO_VALUE.LOW);
if (IsDebug)
{
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.HIGH);
IOMove(IO_Type.HY_StopDown, IO_VALUE.HIGH);
}
else
{
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
IOMove(IO_Type.HY_StopDown, IO_VALUE.LOW);
}
CylinderMove( null , IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
LocationCylinderDown(null);
}
......@@ -164,20 +143,7 @@ namespace OnlineStore.DeviceLibrary
mainTimer.Enabled = false;
}
StopMove();
//停止运行时,把所有IO 置零
CheckAndMove(IO_Type.StopDown1, IO_VALUE.LOW);
CheckAndMove(IO_Type.StopDown2, IO_VALUE.LOW);
CheckAndMove(IO_Type.TopCylinder_UP, IO_VALUE.LOW);
CheckAndMove(IO_Type.TopCylinder_Down, IO_VALUE.LOW);
CheckAndMove(IO_Type.BeforeAfterCylinder_Before, IO_VALUE.LOW);
CheckAndMove(IO_Type.BeforeAfterCylinder_After, IO_VALUE.LOW);
if (UseAxis.Equals(false))
{
CheckAndMove(IO_Type.UpDownCylinder_Up, IO_VALUE.LOW);
CheckAndMove(IO_Type.UpDownCylinder_Down, IO_VALUE.LOW);
}
CheckAndMove(IO_Type.ClampCylinder_Work, IO_VALUE.LOW);
CheckAndMove(IO_Type.ClampCylinder_Relax, IO_VALUE.LOW);
runStatus = LineRunStatus.Wait;
}
......@@ -187,43 +153,519 @@ namespace OnlineStore.DeviceLibrary
if (isInSuddenDown || isNoAirCheck)
{
return;
}
BusyMoveProcess();
}
IOTimeOutProcess();
//判断流水线打开了才可以运行
if (SecondMoveInfo.MoveType.Equals(LineMoveType.None))
{
if (LineManager.Line.CanProcessLine())
{
StartCheckFixture();
}
}
else
{
if (IOValue(IO_Type.HY_TrayCheck).Equals(IO_VALUE.HIGH))
{
trayCheck2LowWait.Stop();
}
else
{
TrayManager.checkWatch(trayCheck2LowWait, 30000, false);
}
CheckFixtureProcess();
}
}
private Stopwatch trayCheckWait = new Stopwatch();
private Stopwatch trayCheck2LowWait = new Stopwatch();
private object lockObj = "";
private void StartCheckFixture()
{
if (Monitor.TryEnter(lockObj, 100))
{
try
{
// LogUtil.info("StartCheckFixture");
//StartCheckFixture();
if (MoveInfo.MoveType.Equals(LineMoveType.None).Equals(false))
{
LogUtil.error(Name + " StartCheckFixture " + " 不在空闲中,直接返回 ");
return;
}
if (MoveInfo.MoveType.Equals(LineMoveType.None))
{
if (IOValue(IO_Type.HY_TrayCheck).Equals(IO_VALUE.HIGH))
{
trayCheck2LowWait.Stop();
if (TrayManager.checkWatch(trayCheckWait, TrayManager.SwTrayWaitTime, true))
{
MoveInfo.NewMove(LineMoveType.CheckFixture);
if (Config.IsSideWayIn.Equals(1))
{
MoveInfo.NextMoveStep(LineMoveStep.HY03_FrontStopUp);
LogInfo("检测托盘," + MoveInfo.SLog + " ,阻挡上升");
UpdateTrayNum();
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_FrontStopCheck, IO_VALUE.LOW));
IOMove(IO_Type.HY_StopDown, IO_VALUE.LOW);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.HY56_CheckWait);
LogInfo("检测托盘," + MoveInfo.SLog + " ,阻挡上升,等待托盘检测");
UpdateTrayNum();
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
IOMove(IO_Type.HY_StopDown, IO_VALUE.LOW);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
}
}
else
{
bool check2IsOk = TrayManager.checkWatch(trayCheck2LowWait, TrayManager.SwTrayWaitTime, false);
if (IOValue(IO_Type.HY_FrontStopCheck).Equals(IO_VALUE.HIGH))
{
if (TrayManager.checkWatch(trayCheckWait, TrayManager.SwTrayWaitTime, false) && check2IsOk)
{
trayCheckWait.Stop();
trayCheck2LowWait.Stop();
//托盘在第一个阻挡处
MoveInfo.NewMove(LineMoveType.CheckFixture);
MoveInfo.NextMoveStep(LineMoveStep.HY02_FrontStopDown);
LogInfo(" 托盘检测:" + MoveInfo.SLog + ",检测到前阻挡托盘检测,前阻挡下降,清理托盘RFID");
ClearTrayRFID();
IOMove(IO_Type.HY_FrontStopCheck, IO_VALUE.HIGH, 1200);
MoveInfo.OneWaitCanEndStep = true;
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_FrontStopCheck, IO_VALUE.LOW));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
}
else
{
trayCheckWait.Stop();
}
}
}
}
catch (Exception ex)
{
LogUtil.error(Name + " StartCheckFixture " + " 出错:" + ex.ToString());
}
finally
{
Monitor.Exit(lockObj);
}
}
else
{
LogUtil.error(Name + " StartCheckFixture " + "失败,未得到锁");
}
//OutStoreListPro();
}
protected override void CheckFixtureProcess()
{
if (MoveInfo.IsInWait)
{
CheckWait(MoveInfo);
}
if (MoveInfo.IsInWait)
{
return;
}
#region 横移入口托盘处理
if (MoveInfo.IsStep(LineMoveStep.HY02_FrontStopDown))
{
MoveInfo.NextMoveStep(LineMoveStep.HY03_FrontStopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 托盘检测到信号,前阻挡上升");
CheckAndMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(LineMoveStep.HY03_FrontStopUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY04_WaitTime);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(LineMoveStep.HY04_WaitTime))
{
//判断是否需要横移托盘,或者取放料
UpdateTrayNum();
MoveInfo.NextMoveStep(LineMoveStep.HY05_TrayCheck);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(3000));
if (TrayNeed(currTrayNum))
{
MoveInfo.NextMoveStep(LineMoveStep.HY06_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 需要拦截托盘,顶升上升");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.TopCylinder_Up);
}
else
{
HY11_TopUpToHY();
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY06_TopUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY07_LocationUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 需要拦截托盘,定位上升");
LocationCylinderUp(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY07_LocationUp))
{
if (TrayNeed(currTrayNum))
{
//如果是出库,且盘高大于30,暂不顶升
MoveInfo.NextMoveStep(LineMoveStep.HY08_WaitProcessReel);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待料盘放入或料盘离开 ");
}
else
{
HY11_TopUpToHY();
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY09_ReelProEnd))
{
HY11_TopUpToHY();
}
else if (MoveInfo.IsStep(LineMoveStep.HY11_TopUpToHY))
{
MoveInfo.NextMoveStep(LineMoveStep.HY12_WaitHY2Free);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待HY2空闲,可以开始横移 ");
}
else if (MoveInfo.IsStep(LineMoveStep.HY12_WaitHY2Free))
{
if (GetHyOutEquip().MoveInfo.MoveType.Equals(LineMoveType.None))
{
MoveInfo.NextMoveStep(LineMoveStep.HY13_WaitHY2Ready);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待HY2准备完成(顶升上升,定位下降) ");
GetHyOutEquip().MoveInfo.NewMove(LineMoveType.CheckFixture);
GetHyOutEquip().MoveInfo.NextMoveStep(LineMoveStep.HY51_WaitFree);
}
else if (MoveInfo.IsTimeOut())
{
WarnMsg = MoveInfo.Name + "[" + MoveInfo.MoveType + "][" + MoveInfo.SLog + "]等待横移出口可以横移超时[" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒";
LogUtil.error(WarnMsg, DeviceID * 1000 + 22);
Alarm(LineAlarmType.IoSingleTimeOut);
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY13_WaitHY2Ready))
{
bool result = GetHyOutEquip().MoveInfo.MoveStep >= LineMoveStep.HY54_HY2Ready;
if (result)
{
MoveInfo.NextMoveStep(LineMoveStep.HY14_HYLineRun);
CheckLog("托盘横移" + MoveInfo.SLog + " ,横移电机转动 ");
IOMove(IO_Type.HY_LineRun, IO_VALUE.HIGH);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_LineRun, IO_VALUE.HIGH));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.LOW));
}
else if (MoveInfo.IsTimeOut())
{
WarnMsg = MoveInfo.Name + "[" + MoveInfo.MoveType + "][" + MoveInfo.SLog + "]等待横移出口顶升上升完成超时[" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒";
LogUtil.error(WarnMsg, DeviceID * 1000 + 22);
Alarm(LineAlarmType.IoSingleTimeOut);
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY14_HYLineRun))
{
MoveInfo.NextMoveStep(LineMoveStep.HY15_WaitOutCheck);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待托盘到达HY2 ");
}
else if (MoveInfo.IsStep(LineMoveStep.HY15_WaitOutCheck))
{
bool result = GetHyOutEquip().MoveInfo.MoveStep >= LineMoveStep.HY55_WaitTrayCheck;
if (result)
{
MoveInfo.NextMoveStep(LineMoveStep.HY16_WatOutFixture2);
CheckLog("托盘横移" + MoveInfo.SLog + " ,等待托盘到达HY2持续一段时间 ");
}
else if (MoveInfo.IsTimeOut())
{
WarnMsg = MoveInfo.Name + "[" + MoveInfo.MoveType + "][" + MoveInfo.SLog + "]等待托盘到达横移出口超时[" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒";
LogUtil.error(WarnMsg, DeviceID * 1000 + 22);
Alarm(LineAlarmType.IoSingleTimeOut);
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY16_WatOutFixture2))
{
bool result = GetHyOutEquip().MoveInfo.MoveStep >= LineMoveStep.HY56_CheckWait;
if (result)
{
MoveInfo.NextMoveStep(LineMoveStep.HY17_TopDown);
CheckLog("托盘横移" + MoveInfo.SLog + " ,横移电机停止,顶升下降,定位下降 ");
IOMove(IO_Type.HY_LineRun, IO_VALUE.LOW);
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
LocationCylinderDown(MoveInfo);
}
else if (MoveInfo.IsTimeOut())
{
WarnMsg = MoveInfo.Name + "[" + MoveInfo.MoveType + "][" + MoveInfo.SLog + "]等待托盘到达横移出口[" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒";
LogUtil.error(WarnMsg, DeviceID * 1000 + 22);
Alarm(LineAlarmType.IoSingleTimeOut);
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY17_TopDown))
{
CheckLog("托盘横移" + MoveInfo.SLog + " ,结束横移处理 ");
MoveInfo.EndMove();
}
#endregion
#region 横移出口托盘处理
else if (MoveInfo.IsStep(LineMoveStep.HY51_WaitFree))
{
MoveInfo.NextMoveStep(LineMoveStep.HY52_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升上升,定位下降");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.TopCylinder_Up);
LocationCylinderDown(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY52_TopUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY53_LineRun);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 横移电机开始转动");
IOMove(IO_Type.HY_LineRun, IO_VALUE.HIGH);
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_LineRun, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(LineMoveStep.HY53_LineRun))
{
MoveInfo.NextMoveStep(LineMoveStep.HY54_HY2Ready);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 准备接收横移托盘完成");
}
else if (MoveInfo.IsStep(LineMoveStep.HY54_HY2Ready))
{
MoveInfo.NextMoveStep(LineMoveStep.HY55_WaitTrayCheck);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待检测到托盘信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(LineMoveStep.HY55_WaitTrayCheck))
{
MoveInfo.NextMoveStep(LineMoveStep.HY56_CheckWait);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 再次等待托盘信号");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else if (MoveInfo.IsStep(LineMoveStep.HY56_CheckWait))
{
//托盘已到位,更新托盘号,判断是否需要取放料
UpdateTrayNum();
if (TrayNeed(currTrayNum))
{
MoveInfo.NextMoveStep(LineMoveStep.HY57_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升上升 ");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.TopCylinder_Up);
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.HY61_TopDown);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升下降 ");
CylinderMove(MoveInfo, IO_Type.TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
}
}
else if (MoveInfo.IsStep(LineMoveStep.HY57_TopUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY58_LocationUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 是出入库需要的空托盘,定位上升");
LocationCylinderUp(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY58_LocationUp))
{
MoveInfo.NextMoveStep(LineMoveStep.HY59_WaitProcessReel);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待料盘放入或料盘离开");
}
else if (MoveInfo.IsStep(LineMoveStep.HY60_ReelProEnd))
{
MoveInfo.NextMoveStep(LineMoveStep.HY61_TopDown);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升下降 ");
CylinderMove(MoveInfo, IO_Type.TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
}
else if (MoveInfo.IsStep(LineMoveStep.HY61_TopDown))
{
MoveInfo.NextMoveStep(LineMoveStep.HY62_LocationDown);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 定位下降");
LocationCylinderDown(MoveInfo);
}
else if (MoveInfo.IsStep(LineMoveStep.HY62_LocationDown))
{
MoveInfo.NextMoveStep(LineMoveStep.HY63_WaitTrayGo);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待托盘检测信号消失");
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.LOW));
}
else if (MoveInfo.IsStep(LineMoveStep.HY63_WaitTrayGo))
{
MoveInfo.NextMoveStep(LineMoveStep.HY64_CheckWait);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 等待托盘检测信号消失500");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(500));
MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.LOW));
}
else if (MoveInfo.IsStep(LineMoveStep.HY64_CheckWait))
{
MoveInfo.NextMoveStep(LineMoveStep.HY65_TopUp);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 顶升提前上升");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.TopCylinder_Up);
}
else if (MoveInfo.IsStep(LineMoveStep.HY65_TopUp))
{
MoveInfo.EndMove();
CheckLog("托盘阻挡" + MoveInfo.SLog + " 处理完成");
}
#endregion
}
private void HY11_TopUpToHY( )
{
MoveInfo.NextMoveStep(LineMoveStep.HY11_TopUpToHY);
CheckLog("托盘横移" + MoveInfo.SLog + " 不需要拦截托盘,开始横移,顶升上升,定位下降");
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.TopCylinder_Up);
LocationCylinderDown(MoveInfo);
}
public override bool StartInStoreMove(InOutParam param)
private bool TrayNeed(int trayNum)
{
try
{
if (Config.WorkDevice > 0)
{
TrayInfo trayInfo = TrayManager.GetTrayInfo(trayNum);
if (trayInfo.IsFull)
{
return false;
}
//判断T3是否在入库等待托盘
FeedingEquip feedT3 = LineManager.Line.FeedingEquipMap[Config.WorkDevice];
if (feedT3.CurrTrayIsNeed(currTrayNum, false))
{
LogInfo(" " + feedT3.Name + "拦截托盘【" + currTrayNum + "】");
return true;
}
}
}
catch (Exception ex)
{
LogUtil.error("TrayNeed 出错:" + ex.ToString());
}
return false;
}
public override bool StartOutStoreMove(InOutParam param)
internal override bool TrayIsReady()
{
if (Config.IsSideWayIn.Equals(1))
{
if (MoveInfo.MoveType.Equals(LineMoveType.CheckFixture) && MoveInfo.IsStep(LineMoveStep.HY08_WaitProcessReel))
{
return true;
}
}
else
{
if (MoveInfo.MoveType.Equals(LineMoveType.CheckFixture) && MoveInfo.IsStep(LineMoveStep.HY59_WaitProcessReel))
{
return true;
}
}
return false;
}
protected override void CheckFixtureProcess()
internal override void TrayCanLeave()
{
if (TrayIsReady())
{
if (Config.IsSideWayIn.Equals(1))
{
MoveInfo.NextMoveStep(LineMoveStep.HY09_ReelProEnd);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 料盘处理完成,开始横移或放行");
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.HY60_ReelProEnd);
CheckLog("托盘阻挡" + MoveInfo.SLog + " 料盘处理完成,开始横移或放行");
}
}
else
{
LogUtil.error(Name + "TrayCanLeave :当前托盘不在等待中,不需要处理");
}
}
#region 气缸处理
public void LocationCylinderUp(LineMoveInfo moveinfo = null)
{
IOMove(IO_Type.HY_LocationCylinder_Down, IO_VALUE.LOW);
IOMove(IO_Type.HY_LocationCylinder_Up, IO_VALUE.HIGH);
if (moveinfo != null)
{
moveinfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_LocationCylinder_Down1, IO_VALUE.LOW));
moveinfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_LocationCylinder_Up1, IO_VALUE.HIGH));
moveinfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_LocationCylinder_Down2, IO_VALUE.LOW));
moveinfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_LocationCylinder_Up2, IO_VALUE.HIGH));
}
}
protected override void InStoreProcess()
public void LocationCylinderDown(LineMoveInfo moveinfo = null)
{
IOMove(IO_Type.HY_LocationCylinder_Up, IO_VALUE.LOW);
IOMove(IO_Type.HY_LocationCylinder_Down, IO_VALUE.HIGH);
if (moveinfo != null)
{
moveinfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_LocationCylinder_Up1, IO_VALUE.LOW));
moveinfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_LocationCylinder_Down1, IO_VALUE.HIGH));
moveinfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_LocationCylinder_Up2, IO_VALUE.LOW));
moveinfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_LocationCylinder_Down2, IO_VALUE.HIGH));
}
}
internal override void OpenStopCylinder()
{
preRWTime = DateTime.Now;
protected override void OutStoreProcess()
LogInfo("OpenStopCylinder: 下降阻挡气缸,上下气缸上升,顶升气缸下降");
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.HIGH);
IOMove(IO_Type.HY_StopDown, IO_VALUE.HIGH);
CylinderMove(null, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
CylinderMove(null, IO_Type.HY_LocationCylinder_Up, IO_Type.HY_LocationCylinder_Down);
}
internal override bool OpenStopCylinderOk(TimeSpan span)
{
TimeSpan rwSpan = DateTime.Now - preRWTime;
bool frontIsOk = !Config.DOList.ContainsKey(IO_Type.HY_FrontStopDown) || IOValue(IO_Type.HY_FrontStopDown).Equals(IO_VALUE.HIGH);
if (frontIsOk &&
IOValue(IO_Type.HY_StopDown).Equals(IO_VALUE.HIGH)
&& CylinderIsOk(IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down)
&& CylinderIsOk(IO_Type.HY_LocationCylinder_Up, IO_Type.HY_LocationCylinder_Down))
{
return true;
}
else if (rwSpan.TotalSeconds > 5 && span.TotalSeconds > 6 && span.TotalSeconds < LineManager.Config.IOSingle_TimerOut * 2)
{
preRWTime = DateTime.Now;
OpenStopCylinder();
}
return false;
}
internal override void CloseCylinderStop()
{
LogInfo("CloseCylinderStop: 上升阻挡气缸,上下气缸上升,顶升气缸下降");
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
IOMove(IO_Type.HY_StopDown, IO_VALUE.LOW);
CylinderMove(null, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
CylinderMove(null, IO_Type.HY_LocationCylinder_Up, IO_Type.HY_LocationCylinder_Down);
}
#endregion
}
}
......@@ -14,50 +14,200 @@ namespace OnlineStore.DeviceLibrary
Name = ("_接驳台HY" + (DeviceID % 100).ToString().PadLeft(2, '0') + "_").ToUpper();
}
public override bool StartRun(bool isDebug = false)
{
return false;
if (CanStartRun().Equals(false))
{
return false;
}
if (!RunAxis(true, UpdownAxis))
{
return false;
}
mainTimer.Enabled = false;
MoveInfo.EndMove();
SecondMoveInfo.EndMove();
runStatus = LineRunStatus.HomeMoving;
LogInfo("开始 原点返回 ");
MoveInfo.NewMove(LineMoveType.ReturnHome);
StartReset();
if (isDebug)
{
mainTimer.Enabled = true;
}
return true;
}
public override bool Reset()
{
return false;
StopMove();
if (!RunAxis(true, UpdownAxis))
{
return false;
}
LogInfo("开始重置: 升降轴回原点,阻挡气缸上升 ");
runStatus = LineRunStatus.Reset;
SecondMoveInfo.EndMove();
MoveInfo.NewMove(LineMoveType.Reset);
StartReset();
return true;
}
private void StartReset()
{
ResetClearData();
lineStatus = LineStatus.ResetMove;
MoveInfo.NextMoveStep(LineMoveStep.HY_R_01StopMove);
if (IsDebug)
{
IOMove(IO_Type.StopDown1, IO_VALUE.HIGH);
IOMove(IO_Type.StopDown2, IO_VALUE.HIGH);
}
else
{
IOMove(IO_Type.StopDown1, IO_VALUE.LOW);
IOMove(IO_Type.StopDown2, IO_VALUE.LOW);
}
if (IsDebug)
{
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.HIGH);
IOMove(IO_Type.HY_SideStopDown, IO_VALUE.HIGH);
IOMove(IO_Type.HY_StopDown, IO_VALUE.HIGH);
}
else
{
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
IOMove(IO_Type.HY_SideStopDown, IO_VALUE.LOW);
IOMove(IO_Type.HY_StopDown, IO_VALUE.LOW);
}
IOMove(IO_Type.HY_LineRun, IO_VALUE.LOW);
CylinderMove(MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
CylinderMove(MoveInfo, IO_Type.HY_LocationCylinder_Up, IO_Type.HY_LocationCylinder_Down);
CylinderMove(MoveInfo, IO_Type.HY_StopCylinder_Down, IO_Type.HY_StopCylinder_Up);
isInPro = false;
}
protected override void ResetProcess()
{
if (MoveInfo.IsInWait)
{
CheckWait(MoveInfo);
}
else if (SecondMoveInfo.IsInWait)
{
CheckWait(SecondMoveInfo);
}
if (!MoveInfo.IsInWait && !SecondMoveInfo.IsInWait)
{
//流水线各装置复原位,夹料气缸状态不变
//阻挡气缸全部=0
//上下气缸上升,、
//上升到位,顶升气缸下降,前后气缸回退
//复位时夹紧气缸需要发送,不然后面出入库会有问题
switch (MoveInfo.MoveStep)
{
case LineMoveStep.HY_R_01StopMove:
LogInfo(MoveInfo.MoveType + " 完成!");
runStatus = LineRunStatus.Runing;
MoveInfo.EndMove();
SecondMoveInfo.EndMove();
if (IsDebug)
{
lineStatus = LineStatus.Debugging;
}
else
{
lineStatus = LineStatus.StoreOnline;
}
break;
default: break;
}
}
}
/// <summary>
/// 停止运动
/// </summary>
internal override void StopMove()
{
//trayCheck2LowWait.Stop();
//trayCheckWait.Stop();
//如果正在出库中,需要减去托盘号
if (MoveInfo.MoveType.Equals(LineMoveType.OutStore))
{
DebugInfo("停止运动时出库执行中,减去托盘数;");
//减去需要的盘数
// TrayManager.DelNeedEmptyTrayNum();
MoveInfo.EndMove();
}
runStatus = LineRunStatus.Busy;
SecondMoveInfo.EndMove();
LogInfo("停止运动:上下气缸上升端,阻挡气缸上升 ");
//UpdownUpMove();
CylinderMove(MoveInfo, IO_Type.TopCylinder_Up, IO_Type.TopCylinder_Down);
IOMove(IO_Type.StopDown1, IO_VALUE.LOW);
IOMove(IO_Type.StopDown2, IO_VALUE.LOW);
}
public override void StopRun()
{
if (mainTimer != null)
{
mainTimer.Enabled = false;
}
StopMove();
//停止运行时,把所有IO 置零
CheckAndMove(IO_Type.StopDown1, IO_VALUE.LOW);
CheckAndMove(IO_Type.StopDown2, IO_VALUE.LOW);
CheckAndMove(IO_Type.TopCylinder_Up, IO_VALUE.LOW);
CheckAndMove(IO_Type.TopCylinder_Down, IO_VALUE.LOW);
CheckAndMove(IO_Type.BeforeAfterCylinder_Before, IO_VALUE.LOW);
CheckAndMove(IO_Type.BeforeAfterCylinder_After, IO_VALUE.LOW);
if (UseAxis.Equals(false))
{
CheckAndMove(IO_Type.UpDownCylinder_Up, IO_VALUE.LOW);
CheckAndMove(IO_Type.UpDownCylinder_Down, IO_VALUE.LOW);
}
CheckAndMove(IO_Type.ClampCylinder_Work, IO_VALUE.LOW);
CheckAndMove(IO_Type.ClampCylinder_Relax, IO_VALUE.LOW);
runStatus = LineRunStatus.Wait;
}
protected override void BaseTimerProcess()
{
if (isInSuddenDown || isNoAirCheck)
{
return;
}
BusyMoveProcess();
IOTimeOutProcess();
//判断流水线打开了才可以运行
if (SecondMoveInfo.MoveType.Equals(LineMoveType.None))
{
if (LineManager.Line.CanProcessLine())
{
// LogUtil.info("StartCheckFixture");
StartCheckFixture();
}
}
//OutStoreListPro();
}
public override bool StartInStoreMove(InOutParam param)
private void StartCheckFixture()
{
return false;
}
public override bool StartOutStoreMove(InOutParam param)
{
return false;
}
protected override void CheckFixtureProcess()
{
}
protected override void InStoreProcess()
{
}
protected override void OutStoreProcess()
{
}
}
}
......@@ -36,28 +36,10 @@ namespace OnlineStore.DeviceLibrary
protected override void BaseTimerProcess()
{
}
public override bool StartInStoreMove(InOutParam param)
{
return false;
}
public override bool StartOutStoreMove(InOutParam param)
{
return false;
}
protected override void CheckFixtureProcess()
{
}
protected override void InStoreProcess()
{
}
protected override void OutStoreProcess()
{
}
}
}
}
......@@ -19,8 +19,7 @@ namespace OnlineStore.DeviceLibrary
/// </summary>
public partial class LineBean : KTK_Store
{
public bool IsDebug = false;
// public bool UseAgvClient = false;
public bool IsDebug = false;
/// <summary>
/// 灯闪烁定时器
/// </summary>
......@@ -38,8 +37,7 @@ namespace OnlineStore.DeviceLibrary
public Dictionary<int, MoveEquip> MoveEquipMap { get; set; }
public Dictionary<int, FeedingEquip> FeedingEquipMap { get; set; }
public Dictionary<int, HYEquipBase> HYEquipMap { get; set; }
//public Dictionary<int, DischargeLine> DisLineMap { get; set; }
public Dictionary<int, HYEquipBase> HYEquipMap { get; set; }
public Dictionary<int, EquipBase> AllEquipMap { get; set; }
/// <summary>
......@@ -48,8 +46,7 @@ namespace OnlineStore.DeviceLibrary
public Line_Config Config { get; set; }
#region 初始化
public List<string> cioList = new List<string>();
// public List<string> rfidList = new List<string>();
public List<string> cioList = new List<string>();
private bool canStart = false;
public LineBean(Line_Config lineConfig, Dictionary<int, MoveEquip_Config> configList, Dictionary<int, FeedingEquip_Config> feedMap,
......@@ -111,14 +108,7 @@ namespace OnlineStore.DeviceLibrary
AllEquipMap.Add(config.Id, equip);
//equip.TrayPEndEvent += Equip_TrayPEndEvent;
}
//foreach (DischargeLine_Config config in disLineMap.Values)
//{
// DischargeLine equip = new DischargeLine(lineConfig.CID, config);
// AddDeviceName(ioList, config.IOIPList);
// DisLineMap.Add(config.Id, equip);
// AllEquipMap.Add(config.Id, equip);
//}
//先初始化设备
IOManager.Init();
AxisManager.Init();
......@@ -148,12 +138,7 @@ namespace OnlineStore.DeviceLibrary
{
HYEquipBase feed = HYEquipMap[id];
cioList.AddRange(feed.Config.IOIPList);
}
//else if (DisLineMap.ContainsKey(id))
//{
// DischargeLine feed = DisLineMap[id];
// cioList.AddRange(feed.Config.IOIPList);
//}
}
else if (MoveEquipMap.ContainsKey(id))
{
MoveEquip equip = MoveEquipMap[id];
......@@ -903,13 +888,13 @@ namespace OnlineStore.DeviceLibrary
}
#endregion
internal override void StopMove( )
internal override void StopMove()
{
foreach (EquipBase equip in this.AllEquipMap.Values)
{
if (!equip.IsDebug)
{
{
equip.StopMove();
}
else
......@@ -941,48 +926,48 @@ namespace OnlineStore.DeviceLibrary
string msg = "";
//判断是否所有的已经返回完成
TimeSpan span = DateTime.Now - MoveInfo.LastSetpTime;
foreach (EquipBase moveEquip in this.AllEquipMap.Values)
foreach (EquipBase equip in this.AllEquipMap.Values)
{
if (moveEquip.IsDebug)
if (equip.IsDebug)
{
if (!moveEquip.OpenStopCylinderOk(span))
if (!equip.OpenStopCylinderOk(span))
{
msg = moveEquip.Name + "下降阻挡气缸";
msg = equip.Name + "下降阻挡气缸";
TimeSpan rwSpan = DateTime.Now - preRWTime;
if (span.TotalSeconds > LineManager.Config.IOSingle_TimerOut * 2)
{
SetWarnMsg(moveEquip.Name + "下降阻挡气缸超时,已等待" + FormUtil.GetSpanStr(span));
LogUtil.error(moveEquip.Name + "下降阻挡气缸超时,已等待" + FormUtil.GetSpanStr(span), 902);
SetWarnMsg(equip.Name + "下降阻挡气缸超时,已等待" + FormUtil.GetSpanStr(span));
LogUtil.error(equip.Name + "下降阻挡气缸超时,已等待" + FormUtil.GetSpanStr(span), 902);
}
else if (rwSpan.TotalSeconds > 5 && span.TotalSeconds > 6 && span.TotalSeconds < LineManager.Config.IOSingle_TimerOut * 2)
{
preRWTime = DateTime.Now;
LogUtil.error(Name + "复位中:等待" + msg + "已【" + FormUtil.GetSpanStr(span) + "】重新调用OpenStopCylinder方法");
moveEquip.OpenStopCylinder();
equip.OpenStopCylinder();
}
isOk = false;
break;
}
continue;
}
if (moveEquip.runStatus.Equals(LineRunStatus.HomeMoving) || moveEquip.runStatus.Equals(LineRunStatus.Reset) || moveEquip.runStatus.Equals(LineRunStatus.Wait))
if (equip.runStatus.Equals(LineRunStatus.HomeMoving) || equip.runStatus.Equals(LineRunStatus.Reset) || equip.runStatus.Equals(LineRunStatus.Wait))
{
if (moveEquip.NoAlarm())
if (equip.NoAlarm())
{
if (moveEquip.baseConfig.DType.Equals(DeviceType.FeedingEquip) && moveEquip.MoveInfo.MoveStep >= LineMoveStep.FR_11_BatchAxisHome)
if (equip.baseConfig.DType.Equals(DeviceType.FeedingEquip) && equip.MoveInfo.MoveStep >= LineMoveStep.FR_11_BatchAxisHome)
{
continue;
}
msg = moveEquip.Name + "复位结束";
msg = equip.Name + "复位结束";
isOk = false;
break;
}
else
{
//SetWarnMsg(moveEquip.Name + "在复位过程中报警,需要重新复位");
LogUtil.error(Name + " " + moveEquip.Name + "在复位过程中报警,需要重新复位,调用 moveEquip.Reset();");
moveEquip.Reset();
LogUtil.error(Name + " " + equip.Name + "在复位过程中报警,需要重新复位,调用 moveEquip.Reset();");
equip.Reset();
//如果小于80秒,继续等待
if (span.TotalSeconds < 80)
{
......
......@@ -210,7 +210,7 @@ namespace OnlineStore.DeviceLibrary
#endregion
#region 出库
#region
public override bool StartOutStoreMove(InOutParam param)
{
......@@ -218,11 +218,7 @@ namespace OnlineStore.DeviceLibrary
}
protected override void OutStoreProcess()
{
}
#endregion
#region 入库
}
public override bool StartInStoreMove(InOutParam param)
{
return true;
......@@ -384,18 +380,31 @@ namespace OnlineStore.DeviceLibrary
/// 上料机构,判断对应的空托盘是否准备完成
/// </summary>
/// <param name="deviceID">上料机构ID</param>
/// <param name="currTrayNum">空托盘号</param>
/// <param name="trayNum">空托盘号</param>
/// <returns></returns>
internal bool TrayIsReady(int deviceID,out int currTrayNum)
internal bool TrayIsReady(int deviceID,out int trayNum)
{
currTrayNum = -1;
trayNum = -1;
if (deviceID.Equals(103))
{
if (T3C1_MoveInfo.MoveType.Equals(LineMoveType.CheckFixture) && T3C1_MoveInfo.IsStep(LineMoveStep.MO_11_CodeRember))
{
currTrayNum = T3C1_TrayNum;
trayNum = T3C1_TrayNum;
return true;
}
}else
{
foreach(HYEquipBase hy in HYEquipMap.Values)
{
if (hy.Config.WorkDevice.Equals(deviceID))
{
if(hy.TrayIsReady())
{
trayNum = hy.currTrayNum;
return true;
}
}
}
}
return false;
}
......@@ -409,6 +418,17 @@ namespace OnlineStore.DeviceLibrary
{
MO_16_Stop2Down();
}
else
{
foreach (HYEquipBase hy in HYEquipMap.Values)
{
if (hy.Config.WorkDevice.Equals(deviceID))
{
hy.TrayCanLeave();
break;
}
}
}
}
#endregion
......
......@@ -28,7 +28,7 @@ namespace OnlineStore.DeviceLibrary
T3C1_MoveInfo.EndMove();
IOMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
IOMove(IO_Type.HY_StopDown, IO_VALUE.LOW);
CylinderMove(moveInfo, IO_Type.HY_TopCylinder_UP, IO_Type.HY_TopCylinder_Down);
CylinderMove(moveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
}
private void T3C1_TimerProcess()
......@@ -54,6 +54,14 @@ namespace OnlineStore.DeviceLibrary
}
else
{
if (IOValue(IO_Type.HY_TrayCheck).Equals(IO_VALUE.HIGH))
{
trayCheck2LowWait.Stop();
}
else
{
TrayManager.checkWatch(trayCheck2LowWait, 30000, false);
}
T3C1_BusyProcess();
}
}
......@@ -75,14 +83,6 @@ namespace OnlineStore.DeviceLibrary
{
if (T3C1_MoveInfo.MoveType.Equals(LineMoveType.None).Equals(false))
{
if (IOValue(IO_Type.HY_TrayCheck).Equals(IO_VALUE.HIGH))
{
trayCheck2LowWait.Stop();
}
else
{
TrayManager.checkWatch(trayCheck2LowWait, 30000, false);
}
LogUtil.error(Name + " T3C1_CheckFixture " + " 不在空闲中,直接返回 ");
return;
}
......@@ -161,6 +161,7 @@ namespace OnlineStore.DeviceLibrary
{
T3C1_MoveInfo.NextMoveStep(LineMoveStep.MIO_01_TrayCheck);
T3C1_Log("托盘阻挡" + T3C1_MoveInfo.SLog + " 前阻挡上升,等待 阻挡托盘检测=1");
IOMove(IO_Type.HY_FrontStopCheck, IO_VALUE.LOW);
T3C1_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else if (T3C1_MoveInfo.IsStep(LineMoveStep.MIO_01_TrayCheck))
......@@ -172,8 +173,7 @@ namespace OnlineStore.DeviceLibrary
else if (T3C1_MoveInfo.IsStep(LineMoveStep.MIO_03_StopUp))
{
T3C1_MoveInfo.NextMoveStep(LineMoveStep.MIO_04_Wait);
T3C1_Log("托盘阻挡" + T3C1_MoveInfo.SLog + " ,等待编码信号稳定 HY_TrayCheck=1");
CheckAndMove(IO_Type.HY_FrontStopDown, IO_VALUE.LOW);
T3C1_Log("托盘阻挡" + T3C1_MoveInfo.SLog + " ,等待编码信号稳定 HY_TrayCheck=1");
T3C1_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_TrayCheck, IO_VALUE.HIGH));
}
else if (T3C1_MoveInfo.IsStep(LineMoveStep.MIO_04_Wait))
......@@ -205,7 +205,7 @@ namespace OnlineStore.DeviceLibrary
//如果是出库,且盘高大于30,暂不顶升
T3C1_MoveInfo.NextMoveStep(LineMoveStep.MIO_06_TopUp);
T3C1_Log("托盘阻挡" + T3C1_MoveInfo.SLog + " 顶升气缸上 升 )");
CylinderMove(T3C1_MoveInfo, IO_Type.TopCylinder_Down, IO_Type.TopCylinder_UP);
CylinderMove(T3C1_MoveInfo, IO_Type.HY_TopCylinder_Down, IO_Type.HY_TopCylinder_Up);
}
else if (T3C1_MoveInfo.IsStep(LineMoveStep.MIO_06_TopUp))
{
......@@ -223,7 +223,7 @@ namespace OnlineStore.DeviceLibrary
{
T3C1_MoveInfo.NextMoveStep(LineMoveStep.MO_14_TopDown);
T3C1_Log("托盘检测" + T3C1_MoveInfo.SLog + " ,托盘号【" + T3C1_TrayNum + "】,直接放盘通过,顶升气缸下降 ");
CylinderMove(T3C1_MoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
CylinderMove(T3C1_MoveInfo, IO_Type.HY_TopCylinder_Up, IO_Type.HY_TopCylinder_Down);
}
}
......@@ -254,9 +254,9 @@ namespace OnlineStore.DeviceLibrary
{
T3C1_MoveInfo.NextMoveStep(LineMoveStep.MO_19_StopUp);
T3C1_Log("托盘放行" + T3C1_MoveInfo.SLog + " , 阻挡气缸1-2上升 )");
IOMove(IO_Type.StopDown2, IO_VALUE.LOW);
IOMove(IO_Type.HY_StopDown, IO_VALUE.LOW);
T3C1_MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(100));
T3C1_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.StopDown2, IO_VALUE.LOW));
T3C1_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.HY_StopDown, IO_VALUE.LOW));
}
else if (T3C1_MoveInfo.IsStep(LineMoveStep.MO_19_StopUp))
{
......
......@@ -149,7 +149,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(LineMoveStep.MH_03_OtherBack);
DebugInfo(MoveInfo.MoveType + " : 上升气缸到位,顶升气缸下降,前后气缸后退,夹紧气缸放松");
CylinderMove(MoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
CylinderMove(MoveInfo, IO_Type.TopCylinder_Up, IO_Type.TopCylinder_Down);
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_Before, IO_Type.BeforeAfterCylinder_After);
CylinderMove(MoveInfo, IO_Type.ClampCylinder_Work, IO_Type.ClampCylinder_Relax);
break;
......@@ -200,7 +200,7 @@ namespace OnlineStore.DeviceLibrary
LogInfo("停止运动:上下气缸上升端,阻挡气缸上升 ");
UpdownUpMove();
CylinderMove(MoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
CylinderMove(MoveInfo, IO_Type.TopCylinder_Up, IO_Type.TopCylinder_Down);
IOMove(IO_Type.StopDown1, IO_VALUE.LOW);
IOMove(IO_Type.StopDown2, IO_VALUE.LOW);
}
......@@ -216,7 +216,7 @@ namespace OnlineStore.DeviceLibrary
//停止运行时,把所有IO 置零
CheckAndMove(IO_Type.StopDown1, IO_VALUE.LOW);
CheckAndMove(IO_Type.StopDown2, IO_VALUE.LOW);
CheckAndMove(IO_Type.TopCylinder_UP, IO_VALUE.LOW);
CheckAndMove(IO_Type.TopCylinder_Up, IO_VALUE.LOW);
CheckAndMove(IO_Type.TopCylinder_Down, IO_VALUE.LOW);
CheckAndMove(IO_Type.BeforeAfterCylinder_Before, IO_VALUE.LOW);
CheckAndMove(IO_Type.BeforeAfterCylinder_After, IO_VALUE.LOW);
......
......@@ -177,7 +177,7 @@ namespace OnlineStore.DeviceLibrary
//更新料盘位置
SServerManager.UpdateTrayLoc(Name, MoveInfo.MoveParam.WareCode, LocStatus.INLINE, "E" + trayNum.ToString().PadLeft(2, '0'));
UpdownDownP2Move(MoveInfo.MoveParam.PlateH, MoveInfo.MoveParam.PlateW);
CylinderMove(MoveInfo, IO_Type.TopCylinder_Down, IO_Type.TopCylinder_UP);
CylinderMove(MoveInfo, IO_Type.TopCylinder_Down, IO_Type.TopCylinder_Up);
}
}
}
......@@ -196,7 +196,7 @@ namespace OnlineStore.DeviceLibrary
this.MoveInfo.NextMoveStep(LineMoveStep.MO_60_CylinderUp);
OutLog("出库 " + MoveInfo.SLog + ": 上下气缸上升,同时顶升气缸先下降");
UpdownUpMove();
CylinderMove(null, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
CylinderMove(null, IO_Type.TopCylinder_Up, IO_Type.TopCylinder_Down);
}
else if (MoveInfo.IsStep(LineMoveStep.MO_60_CylinderUp))
{
......@@ -205,7 +205,7 @@ namespace OnlineStore.DeviceLibrary
SOutLog("出库 :移栽完成,放行托盘");
SecondMoveInfo.NewMove(LineMoveType.CheckFixture);
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_14_TopDown);
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_Up, IO_Type.TopCylinder_Down);
OutLog("出库处理结束!");
MoveEndS();
......@@ -301,7 +301,7 @@ namespace OnlineStore.DeviceLibrary
InLog("入库 " + MoveInfo.SLog + ": 升降下降,顶升上升");
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
UpdownDownP2Move(MoveInfo.MoveParam.PlateH, MoveInfo.MoveParam.PlateW);
CylinderMove(MoveInfo, IO_Type.TopCylinder_Down, IO_Type.TopCylinder_UP);
CylinderMove(MoveInfo, IO_Type.TopCylinder_Down, IO_Type.TopCylinder_Up);
}
else if (MoveInfo.IsStep(LineMoveStep.MI_03_CylinderDown))
{
......@@ -321,7 +321,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(LineMoveStep.MI_06_CylinderUp);
InLog("入库 " + MoveInfo.SLog + ": 上下气缸上升");
UpdownUpMove();
CylinderMove(null, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
CylinderMove(null, IO_Type.TopCylinder_Up, IO_Type.TopCylinder_Down);
}
else if (MoveInfo.IsStep(LineMoveStep.MI_06_CylinderUp))
{
......@@ -339,7 +339,7 @@ namespace OnlineStore.DeviceLibrary
InLog("放托盘(放开阻挡): " + MoveInfo.SLog + " 物品已移走,顶升气缸1下降");
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_14_TopDown);
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_Up, IO_Type.TopCylinder_Down);
}
else if (MoveInfo.IsStep(LineMoveStep.MI_10_WaitBox))
{
......@@ -792,7 +792,7 @@ namespace OnlineStore.DeviceLibrary
else
{
CheckLog("托盘阻挡" + SecondMoveInfo.SLog + " 顶升气缸上 升 )");
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_Down, IO_Type.TopCylinder_UP);
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_Down, IO_Type.TopCylinder_Up);
}
}
else if (SecondMoveInfo.IsStep(LineMoveStep.MIO_06_TopUp))
......@@ -831,7 +831,7 @@ namespace OnlineStore.DeviceLibrary
}
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_14_TopDown);
CheckLog("托盘检测" + SecondMoveInfo.SLog + " ,托盘号【" + currTrayNum + "】,直接放盘通过,顶升气缸下降 ");
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_Up, IO_Type.TopCylinder_Down);
}
}
......
......@@ -572,11 +572,18 @@ namespace OnlineStore.DeviceLibrary
/// 重置
/// </summary>
Reset = 4,
/// <summary>
/// 夹具检测处理
/// </summary>
CheckFixture = 5,
/// <summary>
/// 移栽装置的停止,需要先远点返回,然后停止
/// </summary>
StopMove = 5,
StopMove = 6,
/// <summary>
/// 夹具横移处理
/// </summary>
HY=7,
///// <summary>
///// 移栽检测托盘
///// </summary>
......
......@@ -202,12 +202,12 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
///移载装置入库处理,横移气缸到流水线上方
/// </summary>
MI_02_ToLineUp ,
MI_02_ToLineUp,
/// <summary>
///移载装置入库处理,编码与仓位一致,上下气缸1下降
/// </summary>
MI_03_CylinderDown ,
MI_03_CylinderDown,
/// <summary>
///移载装置入库处理,编码与仓位一致,上下气缸1下降后,等待0.3秒,防止没有 下降到位就夹紧
/// </summary>
......@@ -595,7 +595,7 @@ namespace OnlineStore.DeviceLibrary
/// 上料模块复位:检测夹爪料盘检测信号无料
/// </summary>
FR_17_ClampCheck,
#endregion
......@@ -635,7 +635,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// 入料流程:升降盘定位气缸后退
/// </summary>
FI_02_TrayLocation_After ,
FI_02_TrayLocation_After,
/// <summary>
/// 入料流程:定位气缸下降
/// </summary>
......@@ -785,7 +785,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// 上料完成,升降盘定位气缸后退
/// </summary>
FI_52_TrayLocation_After,
FI_52_TrayLocation_After,
/// <summary>
/// 上料完成,提升伺服到P1点,定位气缸下降
......@@ -896,7 +896,7 @@ namespace OnlineStore.DeviceLibrary
/// <summary>
/// 紧急出料移栽:上料轴下降指定的高度,同时升降轴回待机点
/// </summary>
FO_21_AxisDownMove=12021,
FO_21_AxisDownMove = 12021,
/// <summary>
/// 紧急出料移栽:上料横移机构取料端
......@@ -1251,10 +1251,181 @@ namespace OnlineStore.DeviceLibrary
#endregion
#region MyRegion 80000开始
HY_R_01StopMove = 80001,
#region 横移模块 50000开始
#region 横移模块复位,50001
/// <summary>
/// 横移模块复位:横移线体 停止,全部阻挡上升
/// </summary>
HY_R_01StopMove = 50001,
/// <summary>
/// 横移模块复位:顶升气缸下降,定位气缸下降
/// </summary>
HY_R_02StopMove,
#endregion
#region 上料横移入口(HY2 ,HY20)托盘处理,51001
HY01_Wait = 51001,
/// <summary>
/// 横移入口托盘处理:检测到前阻挡托盘检测,前阻挡下降
/// </summary>
HY02_FrontStopDown,
/// <summary>
/// 横移入口托盘处理:托盘检测到信号,前阻挡上升
/// </summary>
HY03_FrontStopUp,
/// <summary>
/// 横移入口托盘处理:等待横移托盘检测信号,需要持续一段时间
/// </summary>
HY04_WaitTime,
/// <summary>
/// 横移入口托盘处理:托盘已到位,判断是否需要使用托盘, 是否开始横移
/// </summary>
HY05_TrayCheck,
/// <summary>
/// 横移入口托盘处理:是入库需要的空托盘,顶升上升
/// </summary>
HY06_TopUp,
/// <summary>
/// 横移入口托盘处理:是入库需要的空托盘,定位上升
/// </summary>
HY07_LocationUp,
/// <summary>
/// 横移入口托盘处理:等待料盘放入或料盘离开
/// </summary>
HY08_WaitProcessReel,
/// <summary>
/// 横移入口托盘处理:料盘处理完成,开始横移或放行
/// </summary>
HY09_ReelProEnd,
/// <summary>
/// 横移入口托盘处理:开始横移,顶升上升,定位下降
/// </summary>
HY11_TopUpToHY,
/// <summary>
/// 横移入口托盘处理:开始横移,等待HY2空闲,可以开始横移
/// </summary>
HY12_WaitHY2Free,
/// <summary>
/// 横移入口托盘处理:开始横移,等待HY2准备完成(顶升上升,定位下降)
/// </summary>
HY13_WaitHY2Ready,
/// <summary>
/// 横移入口托盘处理:横移电机转动
/// </summary>
HY14_HYLineRun,
/// <summary>
/// 横移入口托盘处理:等待托盘到达HY2
/// </summary>
HY15_WaitOutCheck,
/// <summary>
/// 横移入口托盘处理:等待托盘到达HY2持续一段时间
/// </summary>
HY16_WatOutFixture2,
/// <summary>
/// 横移入口托盘处理:横移电机停止,顶升下降,定位下降
/// </summary>
HY17_TopDown,
/// <summary>
/// 横移入口托盘处理:结束横移处理
/// </summary>
HY18_HYEnd,
#endregion
#region 上料横移出口(HY1 ,HY21)托盘处理,51051
/// <summary>
/// 横移出口托盘处理:当前无托盘
/// </summary>
HY51_WaitFree = 51051,
/// <summary>
/// 横移出口托盘处理:顶升上升,定位下降
/// </summary>
HY52_TopUp,
/// <summary>
/// 横移出口托盘处理:横移电机开始转动
/// </summary>
HY53_LineRun,
/// <summary>
/// 横移出口托盘处理:准备接收横移托盘完成
/// </summary>
HY54_HY2Ready,
/// <summary>
/// 横移出口托盘处理:等待检测到托盘信号
/// </summary>
HY55_WaitTrayCheck,
/// <summary>
/// 横移出口托盘处理:再次等待托盘信号,并持续 一段时间
/// </summary>
HY56_CheckWait,
/// <summary>
/// 横移出口托盘处理:是入库需要的空托盘,顶升上升
/// </summary>
HY57_TopUp,
/// <summary>
/// 横移出口托盘处理:是入库需要的空托盘,定位上升
/// </summary>
HY58_LocationUp,
/// <summary>
/// 横移出口托盘处理:等待料盘放入或料盘离开
/// </summary>
HY59_WaitProcessReel,
/// <summary>
/// 横移出口托盘处理:料盘处理完成,开始横移或放行
/// </summary>
HY60_ReelProEnd,
/// <summary>
/// 横移出口托盘处理:托盘可以离开,定位下降
/// </summary>
HY61_TopDown,
/// <summary>
/// 横移出口托盘处理:托盘可以离开,顶升下降
/// </summary>
HY62_LocationDown,
/// <summary>
/// 横移出口托盘处理:等待托盘检测信号消失
/// </summary>
HY63_WaitTrayGo,
/// <summary>
/// 横移出口托盘处理:再次检测托盘检测信号消失,持续一段时间
/// </summary>
HY64_CheckWait,
/// <summary>
/// 横移出口托盘处理:托盘已离开,顶升默认上升
/// </summary>
HY65_TopUp,
/// <summary>
/// 横移出口托盘处理:结束横移处理
/// </summary>
HY66_HYEnd,
#endregion
#endregion
}
public enum LineAlarmType
......
......@@ -62,22 +62,22 @@
<Content Include="device_config.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="huichuan\x64\IMC_API_x64.dll">
<Content Include="huichuan_x64\IMC_API_x64.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="huichuan\x64\msvcr100.dll">
<Content Include="huichuan_x64\msvcr100.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="huichuan\x64\msvcr100d.dll">
<Content Include="huichuan_x64\msvcr100d.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="huichuan\x86\IMC_API_x86.dll">
<Content Include="huichuan_x86\IMC_API_x86.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="huichuan\x86\msvcr100.dll">
<Content Include="huichuan_x86\msvcr100.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="huichuan\x86\msvcr100d.dll">
<Content Include="huichuan_x86\msvcr100d.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="system_config.xml">
......@@ -85,12 +85,12 @@
</Content>
</ItemGroup>
<ItemGroup>
<Content Include="huichuan\x64\IMC_API_x64.lib">
<Content Include="huichuan_x64\IMC_API_x64.lib">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<Content Include="huichuan\x86\IMC_API_x86.lib">
<Content Include="huichuan_x86\IMC_API_x86.lib">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
......
......@@ -24,9 +24,9 @@ namespace HuichuanLibrary
{
#region STATIC
#if MACHINE_X86
public const string EtherCATConfigApiDllName = @"\huichuan\x86\IMC_API_x86.dll";
public const string EtherCATConfigApiDllName = @"\huichuan_x86\IMC_API_x86.dll";
#else
public const string EtherCATConfigApiDllName = @"\huichuan\x64\IMC_API_x64.dll";
public const string EtherCATConfigApiDllName = @"\huichuan_x64\IMC_API_x64.dll";
#endif
#endregion
......
......@@ -41,7 +41,7 @@ namespace OnlineStore.LoadCSVLibrary
/// PRO,0,HY工位对应的取放料设备,WorkDevice,105,,
/// </summary>
[ConfigProAttribute("WorkDevice")]
public string WorkDevice { get; set; }
public int WorkDevice { get; set; }
/// <summary>
/// PRO,0,HY是否是托盘横移入口,IsSideWayIn,0,,
/// </summary>
......
......@@ -49,25 +49,25 @@ namespace OnlineStore.LoadCSVLibrary
/// </summary>
public static string HY_TrayCheck = "HY_TrayCheck";
/// <summary>
/// DI,217,HY17横移顶升上升端,HY_TopCylinder_UP,5,HC,X05
/// DI,217,HY17横移顶升上升端,HY_TopCylinder_Up,5,HC,X05
/// </summary>
public static string HY_TopCylinder_UP = "HY_TopCylinder_UP";
public static string HY_TopCylinder_Up = "HY_TopCylinder_Up";
/// <summary>
/// DI,217,HY17横移顶升下降端,HY_TopCylinder_Down,6,HC,X06
/// </summary>
public static string HY_TopCylinder_Down = "HY_TopCylinder_Down";
/// <summary>
/// DI,217,HY17横移定位1上升端,HY_LocationCylinder_UP1,7,HC,X07
/// DI,217,HY17横移定位1上升端,HY_LocationCylinder_Up1,7,HC,X07
/// </summary>
public static string HY_LocationCylinder_UP1 = "HY_LocationCylinder_UP1";
public static string HY_LocationCylinder_Up1 = "HY_LocationCylinder_Up1";
/// <summary>
/// DI,217,HY17横移定位1下降端,HY_LocationCylinder_Down1,8,HC,X08
/// </summary>
public static string HY_LocationCylinder_Down1 = "HY_LocationCylinder_Down1";
/// <summary>
/// DI,217,HY17横移定位2上升端,HY_LocationCylinder_UP2,9,HC,X09
/// DI,217,HY17横移定位2上升端,HY_LocationCylinder_Up2,9,HC,X09
/// </summary>
public static string HY_LocationCylinder_UP2 = "HY_LocationCylinder_UP2";
public static string HY_LocationCylinder_Up2 = "HY_LocationCylinder_Up2";
/// <summary>
/// DI,217,HY17横移定位2下降端,HY_LocationCylinder_Down2,10,HC,X10
/// </summary>
......@@ -117,9 +117,9 @@ namespace OnlineStore.LoadCSVLibrary
/// </summary>
public static string HY_StopDown = "HY_StopDown";
/// <summary>
/// DO,217,HY17横移定位上升,HY_LocationCylinder_UP,9,HC,Y09
/// DO,217,HY17横移定位上升,HY_LocationCylinder_Up,9,HC,Y09
/// </summary>
public static string HY_LocationCylinder_UP = "HY_LocationCylinder_UP";
public static string HY_LocationCylinder_Up = "HY_LocationCylinder_Up";
/// <summary>
/// DO,217,HY17横移定位下降,HY_LocationCylinder_Down,10,HC,Y10
/// </summary>
......@@ -137,9 +137,9 @@ namespace OnlineStore.LoadCSVLibrary
/// </summary>
public static string StopCheck2 = "StopCheck2";
/// <summary>
/// DI,22,D11-1顶升上升端,TopCylinder_UP,18,HC,X18
/// DI,22,D11-1顶升上升端,TopCylinder_Up,18,HC,X18
/// </summary>
public static string TopCylinder_UP = "TopCylinder_UP";
public static string TopCylinder_Up = "TopCylinder_Up";
/// <summary>
/// DI,22,D11-1顶升下降端,TopCylinder_Down,19,HC,X19
/// </summary>
......@@ -428,10 +428,10 @@ namespace OnlineStore.LoadCSVLibrary
/// DO,207,C8-HY7阻挡下降,HY_SideStopDown,426,HC,Y426
/// </summary>
public static string HY_SideStopDown = "HY_SideStopDown";
/// <summary>
/// DI,20,D10-1顶升上升端,TopCylinder_Up,532,HC,X532
/// </summary>
public static string TopCylinder_Up = "TopCylinder_Up";
///// <summary>
///// DI,20,D10-1顶升上升端,TopCylinder_Up,532,HC,X532
///// </summary>
//public static string TopCylinder_Up = "TopCylinder_Up";
......
......@@ -17,13 +17,7 @@ namespace OnlineStore.LoadCSVLibrary
: base()
{
}
/// <summary>
/// 流水线配置
/// </summary>
/// <param name="id">ID</param>
/// <param name="cid">CID</param>
/// <param name="type">类型</param>
/// <param name="filepath">配置文件</param>
public Line_Config(int id, string cid, string type, string filepath)
: base(id, cid, LoadCSVLibrary.DeviceType.Line, filepath)
{
......@@ -57,12 +51,12 @@ namespace OnlineStore.LoadCSVLibrary
/// <summary>
/// PRO IO模块对应的DI数量 IO_DILength 192.168.200.10#16;192.168.200.11#4
/// </summary>
[ConfigProAttribute("IO_DILength")]
[ConfigProAttribute("IO_DILength",false )]
public string IO_DILength { get; set; }
/// <summary>
/// PRO 模块对应的DO数量 IO_DOLength 192.168.200.10#16;192.168.200.11#4
/// </summary>
[ConfigProAttribute("IO_DOLength")]
[ConfigProAttribute("IO_DOLength",false )]
public string IO_DOLength { get; set; }
......@@ -142,7 +136,7 @@ namespace OnlineStore.LoadCSVLibrary
MustHaveDIList.Add(IO_Type.Airpressure_Check);
//MustHaveDIList.Add(IO_Type.NGCylinder_Before);
//MustHaveDIList.Add(IO_Type.NGCylinder_After);
MustHaveDIList.Add(IO_Type.TopCylinder_UP);
MustHaveDIList.Add(IO_Type.TopCylinder_Up);
MustHaveDIList.Add(IO_Type.TopCylinder_Down);
......@@ -157,7 +151,7 @@ namespace OnlineStore.LoadCSVLibrary
//MustHaveDOList.Add(IO_Type.SW4_MotorRun);
//MustHaveDOList.Add(IO_Type.NGCylinder_Before);
//MustHaveDOList.Add(IO_Type.NGCylinder_After);
MustHaveDOList.Add(IO_Type.TopCylinder_UP);
MustHaveDOList.Add(IO_Type.TopCylinder_Up);
MustHaveDOList.Add(IO_Type.TopCylinder_Down);
}
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!