Пример #1
0
 public void SetParameterList(DaneWalka walek, Lathe lathe, string cmc, List <List <QTurningTool> > turnings)
 {
     Walek    = walek;
     Lathe    = lathe;
     Cmc      = cmc;
     Turnings = turnings;
 }
Пример #2
0
        public void Calculate(DaneWalka walek, Lathe lathe, QTurningTool tool, string cmc)
        {
            Walek       = walek;
            Lathe       = lathe;
            Tool        = tool;
            Obrobka     = "";
            CmcMaterial = cmc;
            Stopien     = 0;

            for (int i = 0; i < Walek.Stopnie; i++)
            {
                RodzajObrobki();
                GlebokoscSkrawania();
                Posuw();
                PredkoscSkrawania();
                PredkoscObrotowa();
                WydajnoscObjetosciowa();
                GruboscWiora();
                OporWlasciwy();
                GlownaSilaSkrawania();
                DostepnaMoc();
                PotrzebnaMoc();
                CzasMaszynowy();
                Stopien++;
            }
        }
Пример #3
0
        public string GetCmcMaterial(DaneWalka walek)
        {
            var cmcMaterial = from m in db.Materials
                              where m.Idmat == walek.MaterialId
                              select m.Cmc;

            return(cmcMaterial.ToList().First());
        }
Пример #4
0
        //public double AP { get; set; } //glebokosc skrawania [mm]
        //public double F { get; set; } //posuw [mm/obr]
        //public double VC { get; set; } //predkosc skrawania [m/min]
        //public double N { get; set; } //predkosc obrotowa napedu obrabiarki [obr/min]
        //public double Q { get; set; } //wydajnosc objetosciowa [cm3/min]
        //public double TG { get; set; } //czas maszynowy obrobki [min]
        //public double T { get; set; } //okres trwalosci [min]
        //public double FC { get; private set; } //glowna sila skrawania [N]
        //public double KC { get; private set; } //opor wlasciwy skrawania
        //public double HM { get; private set; } //grubosc wiora
        //public double PC { get; private set; } //moc skrawania netto [kW]
        //public double PE { get; private set; } //dostepna moc [kW]

        internal void SetParameter(DaneWalka walek, Lathe lathe, QTurningTool tool, string cmc)
        {
            Walek       = walek;
            Lathe       = lathe;
            Tool        = tool;
            Obrobka     = "";
            CmcMaterial = cmc;
        }
Пример #5
0
 public void SetWalek(DaneWalka dane)
 {
     Image           = dane.Image;
     Srednica        = dane.Srednica;
     Dlugosc         = dane.Dlugosc;
     MaterialId      = dane.MaterialId;
     Stopnie         = dane.Stopnie;
     DlugoscStopnia  = dane.DlugoscStopnia;
     SrednicaStopnia = dane.SrednicaStopnia;
     KlasaTolerancji = dane.KlasaTolerancji;
     IloscPrzejsc    = dane.IloscPrzejsc;
     TPO             = new List <double>();
     KO    = new List <double>();
     IZ    = new List <int>();
     DFN   = new List <double>();
     DMT   = new List <double>();
     DRG   = new List <double>();
     APMAX = new List <double>();
 }
Пример #6
0
        //getting turnings base on data
        //LT = longitudal turning
        //FC = facing
        //PR = profiling
        //CH =
        public List <List <QTurningTool> > GetTurningTools(IEnumerable <TurnToolTab> tools, Lathe lathe, DaneWalka walek, List <string> grades, int iloscPrzejsc, int stopien)
        {
            var dlugosc   = Convert.ToDouble(lathe.Gniazdo.Substring(0, 2));
            var szerokosc = Convert.ToDouble(lathe.Gniazdo.Substring(3, 2));
            var ap        = Convert.ToDecimal(walek.APMAX.Max());
            var turnings  = new List <List <QTurningTool> >();

            if (stopien == 0)
            {
                var TurnRG = from l in db.QTurningTools
                             where l.B == dlugosc && l.H == szerokosc && l.MaxAp >= walek.APRGREAL.Max() &&
                             l.Kr <= 90 &&
                             l.Re <= (decimal)2.4 &&
                             l.Re >= (decimal)1.6 &&
                             l.Ht == "L" &&
                             l.OpA == "LT" &&
                             l.Geometry.Contains("PR")
                             select l;
                turnings.Add(TurnRG.ToList());
            }
            else
            {
                var list = walek.DMT.FindAll(elem => elem > walek.DMT[stopien - 1]);
                list.Add(walek.SRC);
                list.Sort();
                var apStopnia = (list.First() - walek.DMT[stopien - 1]) / 2 / iloscPrzejsc;

                var TurnRG = from l in db.QTurningTools
                             where l.B == dlugosc && l.H == szerokosc && l.MaxAp >= apStopnia &&
                             l.Kr < 90 &&
                             l.Re <= (decimal)2.4 &&
                             l.Re >= (decimal)1.6 &&
                             l.Ht == "L" &&
                             l.OpA == "LT" &&
                             l.Geometry.Contains("PR")
                             select l;
                turnings.Add(TurnRG.ToList());
            }

            var TurnMT = from l in db.QTurningTools
                         where l.B == dlugosc && l.H == szerokosc && l.MaxAp > walek.QMT &&
                         l.Kr >= 90 &&
                         l.Re <= (decimal)1.2 &&
                         l.Ht == "L" &&
                         l.OpA == "LT" &&
                         l.Geometry.Contains("PM")
                         select l;

            turnings.Add(TurnMT.ToList());

            var TurnFN = from l in db.QTurningTools
                         where l.B == dlugosc && l.H == szerokosc && l.MaxAp > walek.QFN &&
                         l.Kr > 90 &&
                         l.Re <= (decimal)0.4 &&
                         l.Ht == "L" &&
                         l.OpA == "LT" &&
                         l.Geometry.Contains("PF")
                         select l;

            turnings.Add(TurnFN.ToList());


            turnings = SortByGrade(grades, turnings);
            turnings = SortByMaxAp(turnings);
            if (turnings[0].Count == 0)
            {
                throw new ArgumentException("Nie odnaleziono narzędzi do obróbki zrubnej.");
            }
            return(turnings);
        }
Пример #7
0
 internal void SetWalekImage(DaneWalka walek)
 {
     ImageWalek = "/images/" + walek.Image;
 }
Пример #8
0
 internal void SetImages(Lathe lathe, List <List <Parameter> > lists, DaneWalka walek)
 {
     SetWalekImage(walek);
     SetLatheImage(lathe);
     SetParameterImage(lists);
 }