WOJSKOWA AKADEMIA TECHNICZNA
WYDZIAŁ MECHATRONIKI
Ćwiczenie laboratoryjne nr 1:
MODELOWANIE WYBRANEGO LINIOWEGO UKŁADU DYNAMICZNEGO
Grupa:
Prowadzący:
ppłk. dr inż. Krzysztof MOTYL
Data wykonania ćwiczenia:
16.05.2013
W danym ćwiczeniu dla wykonania zadania korzystaliśmy z oprogramowania SIMULINK.
SIMULINK jest pakietem oprogramowania służącym do modelowania, symulacji i analizowania układów dynamicznych. Można implementować w nim zarówno układy liniowe jak i nieliniowe modelowane w czasie ciągłym, dyskretnym lub w hybrydowym. SIMULINK wyposażony jest w interfejs graficzny pozwalający w łatwy sposób budować modele w postaci schematów blokowych.
SIMULINK zawiera biblioteki źródeł i rejestratorów sygnału, elementów liniowych i nieliniowych oraz połączeń między nimi. Po zdefiniowaniu modelu można przeprowadzać symulacje z użyciem wybranej metody całkowania z poziomu menu SIMULINKA lub po wpisaniu odpowiednich poleceń w oknie komend MATLABA.
Pierwszą częścią ćwiczenia było zbudowanie modelu który wyznacza odpowiedź skokową układu z członem oscylacyjnym o transmitancji:
Przykład nr 1.
, dla oraz
Przy tworzeniu modelu korzystaliśmy z biblioteki SIMULINKA , umieszczając w oknie poszczególne elementy, przeciągając je z biblioteki na okno. Używaliśmy następujących elementów:
- Step – impuls skokowy,
- Transfer Fcn – blok do wprowadzenia transmitancji,
- Mux – multiplekser,
- Scope – oscyloskop.
Po wprowadzeniu parametrów dla poszczególnych elementów, nasz układ wyglądał następująco:
Odpowiedź skokowa układu:
Drugą część zadania wyglądała w bardzo podobny sposób z drobnymi zmianami.
Przykład nr 2.
Należało wyznaczyć odpowiedź skokową układu o transmitancji:
dla oraz .
Czas trwania symulacji 10 sekund.
W tym przykładzie zmianie uległa transmitancja, zamieściliśmy także dodatkowe bloki:
- To Workspace - zapis danych do przestrzeni roboczej MATLABA,
- To File - zapis danych do pliku binarnego.
Zmieniliśmy parametry w powyżej podanych elementach.
Uzyskany model zapisaliśmy pod nazwą uklad_IIrz.mdl. Po wyświetleniu wyników symulacji, należało zapisać je w przestrzeni roboczej MATLABA , w tablicy pod nazwą wyniki oraz na dysku pod nazwą plik_wyniki.mat
Odczyt wyników symulacji zapisanych w plikach dyskowych i przedstawienie tych danych na wykresie, uzyskaliśmy poprzez napisanie następującego kodu programu.
ta=wyniki(:,1);
ua=wyniki(:,2);
ya=wyniki(:,3);
figure(1)
plot(ta,ua,'r-')
xlabel('t[s]')
ylabel('y(t)')
title('Wymuszenie od czasu')
grid
axis([0 10 0 2])
figure(1)
figure(2)
plot(ta,ya,'g')
xlabel('t[s]')
ylabel('y(t)')
title('Odpowiedz skokowa')
grid
figure(2)
figure(3)
plot(ta,ua,'b',ta,ya,'y')
xlabel('t[s]')
ylabel('y(t)')
title('Wymuszenie i Odpowiedџ skokowa w zależności od czasu')
grid
figure(3)
Aby sterować pracą SIMULINKA z poziomu MATLABA, należało napisać skrypt umożliwiający sterowanie wykonywaniem symulacji w SIMULINKU. A przedtem dokonać modyfikacji, zastępując wartości liczbowe parametrów transmitancji - zmiennymi (w bloku Transfer Fcn).
Skrypt:
clc
clear all % Wyczyszczenie pamięci roboczej Matlaba
wn = 2 % Wartość częstotliwości drgań własnych
zeta = 0.6 % Wartość współczynników tłumienia
tmax = 6; % Zakres czasowy wykonywanej symulacji
open_system('uklad_IIrz') % Otwarcie modelu Simulinka
sim('uklad_IIrz', tmax) % Wykonanie symulacji w zadanym odcinku czasu
SIMULINK jest oprogramowaniem łatwym w obsłudze, odpowiednim do symulacji prostych i skomplikowanych układów liniowych i nieliniowych, układów automatycznej regulacji. Dzięki niemu można obejść standardowe oprzyrządowanie, jakie jest potrzebne do badania pracy układów i wykreślania ich charakterystyk. Wystarczy mieć komputer i program , aby symulować pracę poszczególnych układów. Ta właściwość jest główną zaletą programu SIMULINK.