示例#1
0
        private void buttonStart_Click(object sender, RoutedEventArgs e)
        {
            ProgramPrania program = ProgramPraniaStringToEnum[comboBoxProgramPrania.SelectedValue.ToString()];

            Task.Run(() => {
                sterowanie.Start(program).Wait();
                Dispatcher.Invoke(() => {
                    log("PanelSterowania", "Start(" + program + ")");
                });
            });
        }
示例#2
0
        public async Task Start(ProgramPrania programPrania)
        {
            if (!czyPierze)
            {
                Console.WriteLine("SterowanieDevice: Start, program = " + programPrania);
                symTask = Task.Run(async() => {
                    await symuluj(programPrania);
                });
            }

            await Task.CompletedTask;
        }
 public async Task Start(ProgramPrania programPrania)
 {
     await pDevice.Start(programPrania);
 }
 public async Task Start(ProgramPrania programPrania)
 {
     await pSterowanieSerwer.SendAsync("Start", programPrania);
 }
示例#5
0
        private async Task symuluj(ProgramPrania programPrania)
        {
            //sprawdź ciężar
            //sprawdź zamknięcie drzwi
            //zamknij drzwi

            czyPierze = true;

            drzwi.Zamknij().Wait();

            zawor.Otworz().Wait();
            Task.Delay(1000).Wait();
            zawor.Zamknij().Wait();

            int i = 0;

            while (czyPierze)
            {
                //Console.WriteLine("SterowanieDevice: Symulowanie");
                switch (i)
                {
                case 0:
                    await ustawEtapPrania(EtapPrania.Pranie);

                    Console.WriteLine("SterowanieDevice: EtapPrania.Pranie");

                    int predkosc = ProgramPraniaToPredkosc[programPrania];

                    silnik.UstawPredkoscKatowa(predkosc).Wait();
                    silnik.Zalacz().Wait();
                    break;

                case 5:
                    silnik.Wylacz().Wait();
                    await ustawEtapPrania(EtapPrania.Plukanie);

                    Console.WriteLine("SterowanieDevice: EtapPrania.Plukanie");
                    silnik.UstawPredkoscKatowa(8).Wait();
                    silnik.Zalacz().Wait();
                    break;

                case 10:
                    if (programPrania != ProgramPrania.BawelnaBezWirowania)
                    {
                        silnik.Wylacz().Wait();
                        await ustawEtapPrania(EtapPrania.Wirowanie);

                        Console.WriteLine("SterowanieDevice: EtapPrania.Wirowanie");
                        silnik.UstawPredkoscKatowa(50).Wait();
                        silnik.Zalacz().Wait();
                    }
                    break;

                case 12:
                    silnik.Wylacz().Wait();
                    silnik.UstawPredkoscKatowa(0).Wait();
                    await ustawEtapPrania(EtapPrania.Zakonczone);

                    Console.WriteLine("SterowanieDevice: EtapPrania.Zakonczone");
                    break;

                case 15:
                    czyPierze = false;
                    Console.WriteLine("SterowanieDevice: Koniec prania");
                    drzwi.Otworz().Wait();
                    break;

                default:
                    Console.Write(".");
                    break;
                }


                Task.Delay(1000).Wait();
                i++;
            }
        }