Symulacja rzeczywistości

Matlaba jako platformę do rozwiązywania zadań z dowolnych dziedzin, środowisko do budowy aplikacji oraz potężny silnik obliczeniowy współpracujący z innymi elementami złożonych systemów informatycznych przedstawiliśmy już w poprzednim wydaniu PCWK. Teraz przyjrzymy się bliżej dodatkowej funkcjonalności, jaką do Matlaba wprowadza Symbolic Math Toolbox, oraz przedstawimy środowisko Simulink do symulacji układów dynamicznych.

Matlaba jako platformę do rozwiązywania zadań z dowolnych dziedzin, środowisko do budowy aplikacji oraz potężny silnik obliczeniowy współpracujący z innymi elementami złożonych systemów informatycznych przedstawiliśmy już w poprzednim wydaniu PCWK. Teraz przyjrzymy się bliżej dodatkowej funkcjonalności, jaką do Matlaba wprowadza Symbolic Math Toolbox, oraz przedstawimy środowisko Simulink do symulacji układów dynamicznych.

Automatyczna skrzynia biegów: model, logika, sterowanie i obroty silnika.

Automatyczna skrzynia biegów: model, logika, sterowanie i obroty silnika.

Symbolic Math Toolbox pozwala potężnemu silnikowi obliczeniowemu Matlaba wykonywać operacje ze 100-procentową dokładnością - w przeciwieństwie do numerycznych obliczeń Matlaba, które dają wyniki przybliżone, a ich precyzja wynika z reprezentowania danych w komputerze za pomocą skończonej liczby bitów. Symbolic Math Toolbox został zbudowany na podstawie sprawdzonego i stale rozwijanego silnika obliczeniowego Maple firmy Waterloo Maple Inc, który stanowi również bazę innego produktu tej firmy - programu matematycznego Maple, obecnie w wersji 9.

Dzięki Symbolic Math Toolbox można wykonywać operacje symboliczne, czyli na wzorach: całkować, różniczkować, wyznaczać granice, rozwijać w szeregi i rozwiązywać równania różniczkowe. Dostępne są także funkcje do przekształceń całkowych (transformata Fouriera, Laplace'a i z) oraz typowe operacje algebry liniowej, jak wyznaczanie wartości własnych czy odwracanie macierzy. Oddzielne funkcje służą do konwersji zapisów symbolicznych, przekształcania wzorów w wartości, a nawet prowadzenia obliczeń już co prawda numerycznych, ale za to ze zmienną, regulowaną precyzją - niezależną od sprzętowej dokładności reprezentacji danych. Symbolic Math Toolbox pozwala więc uzyskać bardziej wiarygodne wyniki i przeprowadzać symulacje jeszcze bliższe rzeczywistości.

Symulacje są specjalnością Simulinka. Jest to interaktywne środowisko do modelowania, symulacji ciągłych i dyskretnych układów dynamicznych, a tym samym do projektowania urządzeń i testowania prototypów bez rozpoczynania produkcji. Simulink to rozszerzenie Matlaba, jednak odmiennie się go obsługuje. Wyposażony jest bowiem w graficzny interfejs i obsługuje się go myszą - w odróżnieniu od Matlaba, którym steruje się z wiersza poleceń.

Odpowiednikiem programu w Matlabie jest w Simulinku model układu, który projektuje się graficznie, przeciągając gotowe bloki funkcjonalne z biblioteki elementów oraz łącząc je ze sobą - definiując tym samym ścieżki sygnału. Bibliotekę elementów można rozbudowywać za pomocą dodatkowych zestawów bloków (blocksets), podobnie jak biblioteka funkcji Matlaba, może być rozszerzana za pomocą toolbox. Możliwe jest też definiowanie własnych bloków w postaci tzw. S-funkcji, które mogą przyjmować postać M-plików Matlaba lub MEX-plików napisanych w zewnętrznych językach (C, C++, Ada, Fortran), skompilowanych i połączonych z odpowiednimi bibliotekami.

Porównanie skuteczności trzech metod analizy częstotliwości oraz bloki funkcjonalne do cyfrowego przetwarzania sygnałów.

Porównanie skuteczności trzech metod analizy częstotliwości oraz bloki funkcjonalne do cyfrowego przetwarzania sygnałów.

Podstawowe bloki Simulinka to różnorodne źródła sygnału, ich odbiorniki oraz elementy pośredniczące w przekazywaniu sygnału z wejścia na wyjście układu. čródła to przede wszystkim generatory sygnałów różnych kształtów, zegary sterujące oraz interfejsy do pobierania danych z zewnętrznych urządzeń, plików dyskowych lub z przestrzeni roboczej Matlaba. Odbiorniki służą natomiast do wizualizowania efektów symulacji. Znajdzie się tu więc oscyloskop, port wyjściowy przekazujący sygnały do urządzenia zewnętrznego, wskaźnik cyfrowy, wykres XY oraz bloki zapisujące dane w pliku lub przestrzeni roboczej.

Do układów ciągłych dostępne są podstawowe człony dynamiczne: całkujący, różniczkujący i opóźniający, a także dowolny człon zdefiniowany za pomocą funkcji transmitancji, macierzy zmiennych stanu albo zer i biegunów układu. Odpowiednie wersje tych elementów oraz filtry cyfrowe dostępne są także do układów dyskretnych. Dodatkowe zestawy bloków pozwalają modelować układy mechaniczne oraz urządzenia elektryczne, a także symulować procesy w atmosferze ziemskiej, projektować systemy komunikacyjne i układy do cyfrowego przetwarzania sygnałów. Natomiast dzięki modułowi Stateflow możliwe jest symulowanie układów sekwencyjnych oraz procesów w systemach czasu rzeczywistego sterowanych zdarzeniami, a w połączeniu z generatorami kodu również eksportowanie logiki układu do rzeczywistych urządzeń.

Informacje: Oprogramowanie Naukowo-Techniczne, tel. (12) 6323260

http://www.ont.com.pl


Zobacz również