/// <summary> /// Funkcja inicjalizujaca sygnaly i ich wykresy dla lab5 dla demodulacji FSK /// </summary> private void initialize_Lab5_FSK() { Demodulation demodul = new Demodulation(); string word = "10101011"; courseGraph1 = new CourseGraph(10, 24, 150, 500, word); courseGraph2 = new CourseGraph(10, 184, 150, 500, "Kod FSK"); courseGraph3 = new CourseGraph(10, 344, 150, 500, "Kod cyfrowy"); digital = new DigitalSignal(word, 1000, 0.0625); //informacja // s. zmodulowany AnalogSignal FSK = new AnalogSignal(10, 0, 1000, 0.5).GenerateSinusSignal(); FSK.FSK(digital, 2); // Rysowanie przebiegów: // Sygnał nośny courseGraph1.Signal = digital; courseGraph1.Limit(5000); courseGraph1.DrawGraph(); //sygnal zmodulowany FSK courseGraph2.Signal = FSK; courseGraph2.Limit(5000); courseGraph2.DrawGraph(); //Kod cyfrowy courseGraph3.Signal = demodul.demodulationFSK(FSK, 0.0625, 2); // demodulacja courseGraph3.Limit(5000); courseGraph3.DrawGraph(); }
/// <summary> /// Funkcja inicjalizujaca sygnaly i ich wykresy dla lab4 dla modulacji ASK /// </summary> private void initialize_Lab4_ASK() { // inicjalizacja obiektow klasy wykresow przebiegu sygnalu courseGraph1 = new CourseGraph(10, 24, 150, 500, "Sygnał Cyfrowy"); courseGraph2 = new CourseGraph(10, 184, 150, 500, "Nosna"); courseGraph3 = new CourseGraph(10, 344, 150, 500, "ASK"); // inicjalizacja obiektow klasy wykresow widma spectrumGraph2 = new SpectrumGraph(520, 184, 150, 500, "Nośna"); spectrumGraph3 = new SpectrumGraph(520, 344, 150, 500, "ASK"); // inicjalizacja obiektow klasy sygnalow signal1 = new AnalogSignal(50, 100, 1000, 1); // nośna digital = new DigitalSignal("10101011", 1000, 0.125); // Generowanie sygnalow na podstawie // podanych w konstruktorze parametrow signal1.GenerateSinusSignal(); // rysowanie wykresow sygnalu 2. courseGraph1.Signal = digital; courseGraph1.Limit(5000); courseGraph1.DrawGraph(); // rysowanie wykresow sygnalu 1. courseGraph2.Signal = signal1; courseGraph2.DrawGraph(); spectrumGraph2.setSignal(signal1); spectrumGraph2.Autoscale(); spectrumGraph2.DrawGraph(); // deklaracja i inicjalizacja obiektu sygnału zmodulowanego ASK AnalogSignal ASK = new AnalogSignal(signal1); ASK.ASK(signal1, digital); //rysowanie wykresów ASK courseGraph3.Signal = ASK; courseGraph3.DrawGraph(); spectrumGraph3.setSignal(ASK); spectrumGraph3.Autoscale(); spectrumGraph3.DrawGraph(); }
/// <summary> /// Funkcja inicjalizująca zadanie z przedstawieniem przebiegów prostokątnego, piłokształtnego oraz trójkątnego /// </summary> private void initialize_SquareTriangleSaw() { signal1 = new AnalogSignal(20, 10, 1000, 0.5).GenerateSquareSignal(10); courseGraph1 = new CourseGraph(5, 24, 200, 500, "Przebieg prostokątny"); courseGraph1.Signal = signal1; courseGraph1.Limit(100); // 100% courseGraph1.DrawGraph(); signal2 = new AnalogSignal(10, 10, 1000, 0.5).GenerateTriangleSignal(10); courseGraph2 = new CourseGraph(5, 234, 200, 500, "Przebieg trójkątny"); courseGraph2.Signal = signal2; courseGraph2.Limit(100); // 100% courseGraph2.DrawGraph(); signal3 = new AnalogSignal(10, 10, 1000, 0.5).GenerateSawSignal(10); courseGraph3 = new CourseGraph(5, 444, 200, 500, "Przebieg piłokształtny"); courseGraph3.Signal = signal3; courseGraph3.Limit(100); // 100% courseGraph3.DrawGraph(); spectrumGraph1 = new SpectrumGraph(520, 24, 200, 500, "Widmo prostokątnego"); spectrumGraph2 = new SpectrumGraph(520, 234, 200, 500, "Widmo trójkątnego"); spectrumGraph3 = new SpectrumGraph(520, 444, 200, 500, "Widmo piłokształtnego"); spectrumGraph1.Signal = signal1; spectrumGraph1.Autoscale(); spectrumGraph1.DFT(); spectrumGraph1.DrawGraph(); spectrumGraph2.Signal = signal2; spectrumGraph2.Autoscale(); spectrumGraph2.DFT(); spectrumGraph2.DrawGraph(); spectrumGraph3.Signal = signal3; spectrumGraph3.Autoscale(); spectrumGraph3.DFT(); spectrumGraph3.DrawGraph(); }