123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228 |
- using Sunny.UI;
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- namespace HRT_Measure
- {
- public partial class FrmPLC_M03 : Sunny.UI.UIForm
- {
- public FrmPLC_M03()
- {
- InitializeComponent();
- }
- public List<UCCylinder> listCylinder = new List<UCCylinder>();
- public List<UCAxisPos> listAxisPos = new List<UCAxisPos>();
- public List<UCAxis> listAxis = new List<UCAxis>();
- private void FrmPLC_Load(object sender, EventArgs e)
- {
- uiSplitContainer1.SplitterDistance = this.Width / 2;
- LoadPLCValue();
- //LoadAxisPos();
- LoadAxis();
- tabControlAxis.SelectedIndex = 0;
- }
- private void LoadPLCValue()
- {
- listCylinder.Clear();
-
- for (int i = 0; i < PLCCylinder.listM03_整平工位.Count; i++)
- {
- UCCylinder uCCylinder = new UCCylinder("M03", PLCCylinder.listM03_整平工位[i], PLCCylinder.dictM03_整平工位);
- if(i < 11) uiTableLayoutPanel整平工位.Controls.Add(uCCylinder, 0, i);
- else uiTableLayoutPanel整平工位.Controls.Add(uCCylinder, 1, i - 11);
- listCylinder.Add(uCCylinder);
- //uCCylinder.timer1.Enabled = true;
- uCCylinder.thMonitor.Start();
- }
- for (int i = 0; i < PLCCylinder.listM03_装冲工位.Count; i++)
- {
- UCCylinder uCCylinder = new UCCylinder("M03", PLCCylinder.listM03_装冲工位[i], PLCCylinder.dictM03_装冲工位);
- if (i < 11) uiTableLayoutPanel装冲工位.Controls.Add(uCCylinder, 0, i);
- else uiTableLayoutPanel装冲工位.Controls.Add(uCCylinder, 1, i - 11);
- listCylinder.Add(uCCylinder);
- uCCylinder.thMonitor.Start();
- }
- for (int i = 0; i < PLCCylinder.listM03_压合工位.Count; i++)
- {
- UCCylinder uCCylinder = new UCCylinder("M03", PLCCylinder.listM03_压合工位[i], PLCCylinder.dictM03_压合工位);
- if (i < 11) uiTableLayoutPanel压合工位.Controls.Add(uCCylinder, 0, i);
- else uiTableLayoutPanel压合工位.Controls.Add(uCCylinder, 1, i - 11);
- listCylinder.Add(uCCylinder);
- uCCylinder.thMonitor.Start();
- }
- for (int i = 0; i < PLCCylinder.listM03_清洗工位.Count; i++)
- {
- UCCylinder uCCylinder = new UCCylinder("M03", PLCCylinder.listM03_清洗工位[i], PLCCylinder.dictM03_清洗工位);
- if (i < 11) uiTableLayoutPanel清洗工位.Controls.Add(uCCylinder, 0, i);
- else uiTableLayoutPanel清洗工位.Controls.Add(uCCylinder, 1, i - 11);
- listCylinder.Add(uCCylinder);
- uCCylinder.thMonitor.Start();
- }
- for (int i = 0; i < PLCCylinder.listM03_下流线工位.Count; i++)
- {
- UCCylinder uCCylinder = new UCCylinder("M03", PLCCylinder.listM03_下流线工位[i], PLCCylinder.dictM03_下流线工位);
- if (i < 11) uiTableLayoutPanel下流线工位.Controls.Add(uCCylinder, 0, i);
- else uiTableLayoutPanel下流线工位.Controls.Add(uCCylinder, 1, i - 11);
- listCylinder.Add(uCCylinder);
- uCCylinder.thMonitor.Start();
- }
- for (int i = 0; i < PLCCylinder.listM03_出料口工位.Count; i++)
- {
- UCCylinder uCCylinder = new UCCylinder("M03", PLCCylinder.listM03_出料口工位[i], PLCCylinder.dictM03_出料口工位);
- if (i < 11) uiTableLayoutPanel出料口工位.Controls.Add(uCCylinder, 0, i);
- else uiTableLayoutPanel出料口工位.Controls.Add(uCCylinder, 1, i - 11);
- listCylinder.Add(uCCylinder);
- uCCylinder.thMonitor.Start();
- }
- }
-
- private void LoadAxis()
- {
- listAxis.Clear();
- UCAxis uCAxis压机流线伺服 = new UCAxis("M03", "压机流线伺服", PLCAxis.listM03_轴[0], PLCAxis.dictM03_轴);
- panel取料X轴.Controls.Clear();
- panel取料X轴.Controls.Add(uCAxis压机流线伺服);
- //uCAxis压机流线伺服.timer1.Enabled = true;
- uCAxis压机流线伺服.thMonitor.Start();
- listAxis.Add(uCAxis压机流线伺服);
- UCAxis uCAxis压机前流线伺服 = new UCAxis("M03", "压机前流线伺服", PLCAxis.listM03_轴[1], PLCAxis.dictM03_轴);
- panel取料Y轴.Controls.Clear();
- panel取料Y轴.Controls.Add(uCAxis压机前流线伺服);
- //uCAxis压机前流线伺服.timer1.Enabled = true;
- uCAxis压机前流线伺服.thMonitor.Start();
- listAxis.Add(uCAxis压机前流线伺服);
- //UCAxis uCAxis取料X轴 = new UCAxis("M03", "取料X轴", PLCAxis.listM03_轴[0], PLCAxis.dictM03_轴);
- //panel取料X轴.Controls.Clear();
- //panel取料X轴.Controls.Add(uCAxis取料X轴);
- //uCAxis取料X轴.timer1.Enabled = true;
- //listAxis.Add(uCAxis取料X轴);
- //UCAxis uCAxis取料Y轴 = new UCAxis("M03", "取料Y轴", PLCAxis.listM03_轴[1], PLCAxis.dictM03_轴);
- //panel取料Y轴.Controls.Clear();
- //panel取料Y轴.Controls.Add(uCAxis取料Y轴);
- //uCAxis取料Y轴.timer1.Enabled = true;
- //listAxis.Add(uCAxis取料Y轴);
- //UCAxis uCAxis取料Z轴 = new UCAxis("M03", "取料Z轴", PLCAxis.listM03_轴[2], PLCAxis.dictM03_轴);
- //panel取料Z轴.Controls.Clear();
- //panel取料Z轴.Controls.Add(uCAxis取料Z轴);
- //uCAxis取料Z轴.timer1.Enabled = true;
- //listAxis.Add(uCAxis取料Z轴);
- //UCAxis uCAxis取料R轴 = new UCAxis("M03", "取料R轴", PLCAxis.listM03_轴[3], PLCAxis.dictM03_轴);
- //panel取料R轴.Controls.Clear();
- //panel取料R轴.Controls.Add(uCAxis取料R轴);
- //uCAxis取料R轴.timer1.Enabled = true;
- //listAxis.Add(uCAxis取料R轴);
- }
- private void Timer1_Tick(object sender, EventArgs e)
- {
-
- }
- private void FrmPLC_FormClosing(object sender, FormClosingEventArgs e)
- {
- timer1.Enabled = false;
- foreach (var item in listCylinder)
- {
- try
- {
- item.timer1.Enabled = false;
- item.thMonitor.Abort();
- }
- catch (Exception)
- {
- }
- }
- foreach (var item in listAxisPos)
- {
- try
- {
- item.timer1.Enabled = false;
- item.thMonitor.Abort();
- }
- catch (Exception)
- {
- }
- }
- foreach (var item in listAxis)
- {
- try
- {
- item.timer1.Enabled = false;
- item.thMonitor.Abort();
- }
- catch (Exception)
- {
- }
- }
- }
- private void tabControlM03_SelectedIndexChanged(object sender, EventArgs e)
- {
- ReadPLCHelp.iM03IOStation = tabControlM03.SelectedIndex;
- }
- private void tabControlAxis_SelectedIndexChanged(object sender, EventArgs e)
- {
- ReadPLCHelp.iM03AxisStation = tabControlAxis.SelectedIndex;
- //for (int i = 0; i < listAxis.Count; i++)
- //{
- // if (i == tabControlAxis.SelectedIndex) listAxis[tabControlAxis.SelectedIndex].Enabled = true;
- // else listAxis[tabControlAxis.SelectedIndex].Enabled = false;
- //}
- }
- private void LoadAxisPos()
- {
- //listAxisPos.Clear();
- //for (int i = 0; i < PLCAxisPos.dictM03_取料X轴.Count; i++)
- //{
- // UCAxisPos uCAxisPos = new UCAxisPos(PLCAxisPos.listM03_取料X轴[i], PLCAxisPos.dictM03_取料X轴);
- // if (i < 9) uiTableLayoutPanel取料X轴Pos.Controls.Add(uCAxisPos, 0, i);
- // else uiTableLayoutPanel取料X轴Pos.Controls.Add(uCAxisPos, 1, i - 9);
- // listAxisPos.Add(uCAxisPos);
- // uCAxisPos.timer1.Enabled = true;
- //}
- //for (int i = 0; i < PLCAxisPos.dictM03_取料Y轴.Count; i++)
- //{
- // UCAxisPos uCAxisPos = new UCAxisPos(PLCAxisPos.listM03_取料Y轴[i], PLCAxisPos.dictM03_取料Y轴);
- // if (i < 9) uiTableLayoutPanel1取料Y轴Pos.Controls.Add(uCAxisPos, 0, i);
- // else uiTableLayoutPanel1取料Y轴Pos.Controls.Add(uCAxisPos, 1, i - 9);
- // listAxisPos.Add(uCAxisPos);
- // uCAxisPos.timer1.Enabled = true;
- //}
- //for (int i = 0; i < PLCAxisPos.dictM03_取料Z轴.Count; i++)
- //{
- // UCAxisPos uCAxisPos = new UCAxisPos(PLCAxisPos.listM03_取料Z轴[i], PLCAxisPos.dictM03_取料Z轴);
- // if (i < 9) uiTableLayoutPanel取料Z轴Pos.Controls.Add(uCAxisPos, 0, i);
- // else uiTableLayoutPanel取料Z轴Pos.Controls.Add(uCAxisPos, 1, i - 9);
- // listAxisPos.Add(uCAxisPos);
- // uCAxisPos.timer1.Enabled = true;
- //}
- //for (int i = 0; i < PLCAxisPos.dictM03_取料R轴.Count; i++)
- //{
- // UCAxisPos uCAxisPos = new UCAxisPos(PLCAxisPos.listM03_取料R轴[i], PLCAxisPos.dictM03_取料R轴);
- // if (i < 9) uiTableLayoutPanel取料R轴Pos.Controls.Add(uCAxisPos, 0, i);
- // else uiTableLayoutPanel取料R轴Pos.Controls.Add(uCAxisPos, 1, i - 9);
- // listAxisPos.Add(uCAxisPos);
- // uCAxisPos.timer1.Enabled = true;
- //}
- }
- }
- }
|