Matematyka

Budowa układu i kod MATLAB oraz LaTeX

Przedmiot: Matematyka

Jasne, przedstawię kompleksowe rozwiązanie zadania 1 z instrukcji laboratoryjnej na temat analizy i projektowania regulatorów metodą Root Locus (linii pierwiastków). Skupiam się na wymaganiach: 1. Rozkład zagadnienia i obliczenie zakresu stabilności K 2. Szczegółową budowę układu do symulacji w Simulinku 3. Kod MATLAB do generacji wykresów, Root Locus i symulacji 4. Kod do LaTeX (do sprawozdania laboratoryjnego)

Przechodzimy po kolei przez wszystkie cztery przypadki transmitancji.

---

OGÓLNE ZAŁOŻENIA I JEDNOLITY PODZIAŁ

Schemat blokowy układu

Układ ma klasyczną strukturę: Wejście referencyjne r(t) → [–] —> błąd → C(s) → u(t) → G(s) → y(t).

Dla uproszczenia notacji: - C(s) – regulator: tu tylko K. - G(s) – odpowiednio podany obiekt (z four podpunktów). - Zamknięta pętla: \[ G_{z}(s) = \frac{C(s)G(s)}{1+C(s)G(s)} \]

---

1. OBLICZENIE ZAKRESU K DLA STABILNOŚCI – ROOT LOCUS

Dla każdego przypadku: - Wyznaczamy transmitancję otwartej pętli (L(s) = C(s)G(s)), - Budujemy równanie charakterystyczne: \( 1 + C(s)G(s) = \) - Linię pierwiastków (Root Locus) rysujemy w MATLAB.

---

A) Transmitancja: \( G(s) = \frac{(s+2)(s+6)}{s(s+8)(s+25)}, \quad C(s) = K \)

Równanie charakterystyczne:

\[ 1 + K \frac{(s+2)(s+6)}{s(s+8)(s+25)} = \] \[ s(s+8)(s+25) + K(s+2)(s+6) = \]

Kod MATLAB (Root Locus, wybór K):

```matlab % Definicja transmitancji num = conv([1 2],[1 6]); % (s+2)*(s+6) den = conv([1 ],conv([1 8],[1 25])); % s*(s+8)*(s+25) sys = tf(num,den);

% Root locus figure; rlocus(sys) title('A) Root locus G(s) = (s+2)(s+6)/s(s+8)(s+25)');

% Analiza zakresu K stabilności [kmin,kmax] = rlocfind(sys); % Interaktywnie wybierz na wykresie graniczny K (te kartki korzenie przechodzą do prawej półpłaszczyzny) ``` Zwykle dla tego typu obiektu \( K> \), stabilność do momentu aż jakieś pierwiastki nie przejdą na prawo; wartość K odczytujemy z wykresu, np. przez `rlocfind` w MATLAB.

Symulacja odpowiedzi układu zamkniętego (wybrany K):

Schemat Simulinka: - Source: *Step* - Block: *Gain* (wartość K) - Block: *Transfer Fcn* [numerator: `[1 8 12]`, denominator: `[1 33 200 ]` → rozwinąć] - Sumator: +, - - Block: *Scope* dla y(t) - Block: *Scope* na sygnał u(t) między K a G(s)

Aby uzyskać u(t), wypuścić sygnał po Gain K do osobnego wyjścia/scopa.

---

B) \( G(s) = \frac{s^2+6}{s^2+1},\ C(s)=K \)

Równanie charakterystyczne:

\[ 1 + K \frac{s^2+6}{s^2+1} = \implies s^2+1 + K(s^2+6) = \implies (1+K)s^2 + (1+6K) = \]

Typowa obliczona transmitancja: \[ sys = tf([1 6],[1 1]); \]

Kod Root Locus: ```matlab num = [1 6]; den = [1 1]; sys = tf(num,den); figure; rlocus(sys) title('B) Root locus G(s) = (s^2+6)/(s^2+1)'); ``` ---

C) \( G(s) = \frac{s^2+1}{s^2},\ C(s)=K \)

\[ L(s) = K \frac{s^2+1}{s^2} \quad 1 + K\frac{s^2+1}{s^2} = \] \[ s^2 + K(s^2+1) = \implies (1+K)s^2 + K = \]

Kod: ```matlab num = [1 1]; den = [1 ]; sys = tf(num,den); figure; rlocus(sys) title('C) Root locus G(s) = (s^2+1)/s^2'); ``` ---

D) \( G(s) = \frac{1}{(s+1)^3 (s+4)},\ C(s)=K \)

\[ num = 1; den = conv([1 1 1 1],[1 4]); % (s+1)^3*(s+4) sys = tf(num,den); figure; rlocus(sys) title('D) Root locus G(s) = 1/((s+1)^3(s+4))'); ```

---

2. BUDOWA UKŁADU W SIMULINK

1. Source: „Step” – sygnał wejściowy 2. Sumator: (–) 3. Gain: wartość K (według zakresu stabilności) 4. Transfer Function: Numery/den wprost jak w MATLAB 5. Scope: - Jeden Scope dla wyjścia y(t) - Drugi Scope do zanotowania sygnału sterującego u(t) (między Gain a G(s)) ![](https://i.imgur.com/dpbVuFK.png) – przykład schematu, dostosuj do własnego Simulinka

Konfiguracja bloków: - Transfer Function – wprowadź wektor licz i mianownika (jak w kodach wyżej) - Gain – wpisz wybrane K.

---

3. KOD MATLAB: Generowanie wykresów i symulacji w Simulink

Przykład dla przypadku A:

```matlab % Parametry transmitancji numG = conv([1 2],[1 6]); denG = conv([1 ], conv([1 8],[1 25])); sysG = tf(numG,denG);

% Root Locus figure; rlocus(sysG) title('Root Locus dla G(s)');

% Zakres K % [Z Root Locus wyznacz K np. poprzez kliknięcie na graniczny pierwiastek] K = 5; % Przykład; dopasuj wg analizy

% Układ zamknięty sysCL = feedback(K*sysG,1);

% Symulacja odpowiedzi na skok t = :.01:10; [y,t,x] = step(sysCL, t);

figure; plot(t, y); ylabel('Odpowiedź wyjściowa y(t)'); xlabel('Czas [s]'); title('Odpowiedź układu zamkniętego');

% Przebieg sygnału sterującego (u(t)) % r(t) - y(t) -> e(t), u(t) = K*e(t) r = ones(size(t)); % wejście skokowe 1 e = r - y'; u = K * e;

figure; plot(t, u); ylabel('Sygnał sterujący u(t)'); xlabel('Czas [s]'); title('Sygnał sterujący w czasie'); ```

---

4. KOD DO LaTeX (raport/sprawozdanie)

Przykładowy szablon do sprawozdania (dołącz jeszcze wykresy, szczegółowe opisy):

```latex \documentclass[12pt]{article} \usepackage{amsmath} \usepackage{graphicx}

\begin{document} \section*{Projekt regulatora metoda Root Locus}

\subsection*{Założenia} Transmitancja obiektu: \[ G(s) = \frac{(s+2)(s+6)}{s(s+8)(s+25)} \] Regulator: wzmocnienie $K$.

\subsection*{Wyznaczenie zakresu stabilności K} Równanie charakterystyczne układu zamkniętego: \[ 1 + K \frac{(s+2)(s+6)}{s(s+8)(s+25)} = \implies s(s+8)(s+25) + K(s+2)(s+6) = \] Linia pierwiastków (Root Locus) została uzyskana w środowisku MATLAB.

\subsection*{Model układu w Simulinku} Schemat blokowy zgodnie z rysunkiem instrukcji: \begin{center} \includegraphics[width=.6\textwidth]{schemat.png} \end{center} Wejście - błąd - wzmocnienie K - G(s) - wyjście. Dodatkowo sygnał sterujący $u(t)$ rejestrujemy pomiędzy blokami $K$ oraz $G(s)$.

\subsection*{Kod MATLAB} \begin{verbatim} num = conv([1 2],[1 6]); den = conv([1 ],conv([1 8],[1 25])); sys = tf(num,den);

figure; rlocus(sys) K = 5; % wybrana wartość (dostosuj) sys_cl = feedback(K*sys,1);

t = :.01:10; [y, t] = step(sys_cl, t);

r = ones(size(t)); e = r - y'; u = K * e;

plot(t, y); % odpowiedź plot(t, u); % sygnał sterujący \end{verbatim}

\subsection*{Wyniki symulacji} Dołączyć wykresy: \\ -- Odpowiedź skokowa $y(t)$\\ -- Przebieg sygnału sterującego $u(t)$\\ -- Porównanie amplitud sygnału sterującego i wyjściowego

\end{document} ``` ---

WSKAZÓWKI

- Każdą transmitancję rozwiąż analogicznie. - W Simulinku wystarczy zmieniać odpowiednio transmitancję i K. - W MATLAB podmieniasz `num` i `den` + analizujesz zakres K poprzez Root Locus. - W LaTeX zawsze opisujesz metodę, równanie charakterystyczne, wykres RL, metodę uzyskania odpowiedzi i porównanie amplitud.

---

PODSUMOWANIE

- Wszystko musisz rozrysować i obliczyć samodzielnie dla każdego podpunktu! - K dobieraj zgodnie z Root Locus – tylko dla stabilnego układu. - W Simulinku zbuduj układ wg opisu, rejestrując u(t) i y(t). - Uzupełnij sprawozdanie o kody, wykresy i opis uzyskanego rezultatu.

Jeśli chcesz, przygotuję pełne listingi MATLAB oraz gotowe pliki do LaTeX dla każdego szczegółowego przypadku – daj znać, który podpunkt chcesz jako pierwszy!

Wyjaśnij dowolne zadanie Matematyka

Tagi:

Oceń:

Zaloguj się aby ocenić pracę.

Zaloguj się