Laborka 4(1).doc

(43 KB) Pobierz
Uniwersytet Warmińsko – Mazurski

Uniwersytet Warmińsko – Mazurski

Wydział Nauk Technicznych

Katedra Elektrotechniki i Energtyki

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

                  Instrukcje pomocnicze do laboratorium z przedmiotu „Podstawy automatyki”

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

Uniwersytet Warmińsko – Mazurski

Wydział Nauk Technicznych

Katedra Elektrotechniki i Energtyki

 

 

 

 

 

 

 

 

Ćwiczenie Nr3

 

BADANIE UKŁADÓW LINIOWYCH DYNAMICZNYCH W DZIEDZINIE CZĘSTOTLIWOŚCI. CĘŚĆ II.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Funkcje i instrukcje pakietu SCILAB.  Elementy składni języka wysokiego poziomu SCILAB.

 

Instrukcje języka SCILAB:

 

-          instrukcje warunkowe,

 

Składnia:

if expr1 then statements

  elseif expri then statements

    ....

  else  statements

  end

 

Opis:

if – jest instrukcją warunkową (ang. jeżeli). Instrukcja ta sprawdza wyrażenie logiczne (expr1) jeżeli wyrażenie logiczne jest prawdziwe wtedy wykonywana są instrukcje (statements) występujące po słowie kluczowym then (ang. wtedy), w przeciwnym wypadku tzn. gdy wyrażenie logiczne (expr1) jest fałszem wtedy sprawdzane jest wyrażenie warunkowe (expri). Jeżeli jest ono prawdą wykonywane są instrukcje (statements) po słowie kluczowym then jeśli jest fałszem to są wykonywane instrukcje po słowie kluczowym else (ang. w przeciwnym razie). Całość kończymy słowem kluczowym end (ang. koniec)

    

     Przykład:

     i=2

     for j = 1:3,

        if i == j then

          a(i,j) = 2;

        elseif abs(i-j) == 1 then

          a(i,j) = -1;

        else a(i,j) = 0;

        end,

     end

 

-          instrukcje iteracyjne,

 

instrukcja for

 

Składnia:

for variable=expression ,

instruction, ,

instruction,

end

 

for variable=n1:step:n2,  ...,end

 

 

 

Opis:

Instrukcja for (ang. od) jest instrukcją iteracyjną (pętlą) wykonywaną od n1 do n2 razy z krokiem step opcjonalnie.

 

Przykład:

n=5;

      for i = 1:n,

        for j = 1:n,

            a(i,j) = 1/(i+j-1);

        end;

     end

 

    instrukcja while

 

    Składnia:

    while expr ,instructions,...[,else instructions], end

 

    while expr do instructions,...[,else instructions], end

 

    while expr then instructions,...[,else instructions], end Notes:

    Opis:             

    while – jest to instrukcja iteracyjna (pętla) wykonywana dopóki wyrażenie warunkowe      expr jest prawdziwe. Dodatkowo wystąpienie (opcjonalnie) słowa kluczowego else powoduje,   że w przypadku gdy wyrażenie warunkowe expr jest fałszywe to zostanie wykonana instrukcja po słowie kluczowym else.

 

    Przykład:

    while a<>b then

         c=a+b;

     end   

   

 

-          instrukcje wyboru,

instrukcja select

 

Składnia:

select expr,

     case expr1 then instructions1,

     case expr2 then instructions2,

     ...

     case exprn then instructionsn,

     [else instructions],

   end

 

Opis:

  Instrukcja select jest instrukcją wyboru za pomocą której można wybrać grupę instrukcji do wykonania w zależności od wartości jaką aktualnie posiada zmienna występująca po słowie kluczowym select. W przypadku gdy wartość zmiennej nie odpowiada żadnej z wartości występującej po słowie kluczowym case są wykonywana instrukcje występujące po słowie kluczowym else. 

Przykład:

while %t do

    n=input(„podaj liczbę”)

    select n

    case 0 then

      disp(0)

    case 1 then

      disp(1)

    else

      break

    end

  end

 

-          instrukcje pomocnicze,

  

    instrukcja break

   Opis:

   Instrukcja break powoduje wyjście z pętli po zajściu  zdarzenia zdefiniowanego w pętli (patrz przykład)

      

   Przykład:

k=0;

while 1==1,

   k=k+1;

   if k > 100 then 

      break,

  end;

end

 

Funkcje języka SCILAB pomocne do wykonania ćwiczenia:

 

Funkcja input()

Wywołanie funkcji:

[x]=input(message,["string"])

Opis:

Funkcja ta pozwala wprowadzić łańcuch lub liczbę do aktualnie wykonywanego pliku funkcyjnego lub skryptowego z rozszerzeniem *.sci. Jeżeli wprowadzamy liczbę wtedy drugi argument funkcji jest niepotrzebny ("string"). Natomiast gdy chcemy wprowadzić łańcuch znakowy lub znak jako drugi parametr musimy poinformować o tym wywoływaną funkcje wprowadzając „string”

 

Przykład:

 

x=input("How many iterations?")  //pobiera liczbę i przypisuje zmiennej x

x=input("What is your name?","string") //pobiera znak lub łańcuch znaków i przypisuje zmiennej x

 

Funkcja disp() wywołana z pliku funkcyjnego wyświetla w oknie SCILAB tekst lub zmienne, aby wyświetlić tekst wywołujemy w następujący sposób: disp(‘próba funkcji disp’)

 

 

CZĘŚĆ II ZADANIA DO WYKONANIA

 

1.      Dla podanych transmitancji podstawowych członów dynamicznych zawartych w tabeli 1.1, określić współczynniki wzmocnienia – K, oraz stałą czasową – T. Następnie wykreślić charakterystyki Nyquista i Bode poszczególnych członów oraz zbadać  jaki wpływ na przebieg charakterystyki ma zmiana stałych transmitancji.

 

Tabela 1.1

 

 

K

T1

T2

Człon inercyjny

I rzędu

10

4

-

Człon inercyjny

II rzędu

100

4

2

Człon różniczkujący rzeczywisty

10

...
Zgłoś jeśli naruszono regulamin