Scilab

Rozdział 9 XCOS-Nareszcie!

Rozdział 9.1 Wstęp
Skąd to “Nareszcie”? A czytał, albo przeglądał chociaż kurs “Podstawy Automatyki”? Tam wszystkie eksperymenty oparte są  na Scilabie. Np. zamodelowałem odpowiedź na skok jednostkowy członu oscylacyjnego i nagrałem ją programem ActivePresenter. Dzięki temu Szanowny Czytelnik nie musi nic programować, klika tylko trójkącik video i obserwuje reakcję. Za to biedny Autor męczył się Scilabem, a ściślej jego aplikacją graficzną Xcosem. Nie użyłem tam żadnych instrukcji Scilaba typu if…then…else…while czy for. Nic nie programowałem w klasycznym ujęciu tego słowa. A poszło mi to łatwo, bo wiem co to jest transmitancja. Jest to podstawowe pojęcie teorii regulacji, szerzej automatyki. Jeżeli czujesz co robi człon inercyjny, całkujący różniczkujący… itd, to trochę przesadzę, ale nie musisz znać różniczkowania i całkowania! Wystarczy, że w programie Xcos narysujesz schemat blokowy*(—>patrz uwaga) z regulatorem PID, kilkoma transmitancjami, skokiem jednostkowym jako wejście i zakłócenie i co? I widzisz odpowiedź jak na dłoni. Możesz teraz zmieniać nastawy regulatora PID i szukać “ładniejszej” odpowiedzi. Tak stroisz regulator PID, aż odpowiedź będzie “najładniejsza”, czyli optymalna. A tak przy okazji, to ten i następne rozdziały, możesz traktować jak minikurs automatyki. 
Wniosek. 
Jeżeli wiesz co to jest transmitancja, to modelowanie Xcos-em będzie dla Ciebie jak bułka z masłem. A do samego Scilaba, którego częścią jest Xcos-a będziesz rzadko zaglądał. Tu polecam rozdziały 1…10 kursu “Podstawy Automatyki”, gdzie transmitancja ujęta jest głównie intuicyjnie. 

*Uwaga 
do “narysujesz schemat blokowy”
Przekonasz się, że zrobisz to tak łatwo, jak w windowsowym programie Paint.
Zwłaszcza, że pobierasz gotowe bloki z tzw. palety.
W rozdziałach 9…12 dokładnie pokazałem w animacjach video jak w Xcosie
1. Rysować schematy blokowe
2. Testować schematy podając na wejście skok jednostkowy lub inny sygnał
3. Zapisywać je jako pliki.zcos
Dzięki animacjom będziesz umiał tworzyć schematy blokowe Xcosa. Wystarczy, że wywołasz Xcosa i samodzielnie narysujesz schematy dokładnie tak, jak w animacjach.
W rozdziałach 13…14 schematy są trudniejsze i dlatego ograniczyłem się tylko do animacji z odpowiedziami na sygnał wejściowy. Może zbyt optymistycznie założyłem, że czytelnik samodzielnie stworzy schematy blokowe. Dlatego na wszelki wypadek zapisałem w internecie wszystkie schematy blokowe.  Możesz je ściągnąć i samodzielnie bawić się nimi w Xcosie. W rozdziale 15 pokazałem jak to zrobić.

Rozdział 9.2  “Hello world” czyli Xcos wita.
“Hello World”
albo 2+2=4 obliczone Xcosem. Czyli nie instrukcją Scilaba typu 2+2 Enter, ale programem graficznym jak poniżej.

Rys. 9-1 
2+2=4 obliczone Xcosem
Operacja graficznego dodawania 2+2=4.0 jest tak oczywista, że oszczędzę komentarza. Animacja pokaże, jak to zrobiłem. Ale najpierw ustawię Xcos-a oraz Przeglądarkę Palet obok siebie.

Rozdział 9.3 Jak ustawić obok siebie Xcosa i Przeglądarkę Palet?
Po to by łatwo tworzyć różne schematy blokowe, czyli programować w Xcosie.
Ale najpierw bardzo ważna uwaga, może prośba albo wręcz nakaz.
Poniżej zobaczysz animację jak ustawić Xcosa i Przeglądarkę Palet obok siebie. Dokładnie przeanalizuj ją.
Gdy wiesz o co biega to POWTÓRZ TO NA SWOIM Xcosie
UWAGA DOTYCZY WSZYSTKICH ANIMACJI W KURSIE.
Proponuję nawet nadgorliwość. Pobaw się parametrami badanych bloków. Np. Zmień amplitudę skoku, przesunięcie czasowe, klikając prawą myszą blok.


Rys.9-2
Okna Przeglądarki Palet i Xcosa
Po kliknięciu “trójkąta” video zobaczysz kolejne etapy animacji.
1. Kliknięcie w oknie konsoli Scilaba ikony Xcosa
2. 
Powinny ustawić się okna XcosaPrzeglądarki Palet. Tu nie wiem dlaczego tylko Xcos. Dlatego w oknie Xcos-a kliknąłem Widok/Przeglądarka Palet. 
3. Pojawiła się Przeglądarka Palet w nieciekawym miejscu. Dlatego kliknąłem ją, potem wciskam jednocześnie klawisz Windowsa (inaczej Winkey, Start,Superklawisz) i klawisz dolny strzałki kursora ← (przesuń w lewo). Przeglądarka Palet elegancko ustawiła się w lewej połowie ekranu i Xcos-a po prawej. Czasami po prawej może być otwartych kilka mniejszych okien, w tym Xcos. Wtedy kliknij go.
4.Teraz mamy Przeglądarkę Palet i Xcos-a obok siebie.
Możemy przystąpić do tworzenia schematów blokowych. Zaczniemy od najprostszego z Rys.9-1.

Rozdział 9.4 Jak Xcos oblicza 2+2=4?
Czyli jak zaprogramowałem schemat z Rys.9-1?

Rys.9-3
Jak stworzyłem schemat z Rys.9-1 wykonujący dodawanie 2+2=4?
Po lewej stronie mamy zbiór podstawowych bloków zgrupowanych w tzw. paletach. Dobrałem z nich potrzebne bloki i umieściłem je na prawej stronie Xcosa. Potem narysowałem linie łączące bloki oraz zmieniłem parametry bloków, np. ustawiając 2 w blokach const. Na tym polega programowanie. 
Obserwując animację zidentyfikuj poniższe etapy.
1. “Przenieś i upuść” (“drag and drop”) 2 bloki const z palety Źródła do okna Xcos.
2. “Przenieś i upuść” blok SUMMATION (“Sumator”) z palety Operacje matematyczne do okna Xcos.
3. “Przenieś i upuść” blok AFFICHE_m (“Wyświetlacz cyfrowy”) z palety Sinks 
4. “Przenieś i upuść” blok CLOCK_c (“Zegar”) z palety Obsługa Zdarzeń. O zegarze wspomnę później. Na razie uwierz na słowo, że jest konieczny.
5. Lewą myszą narysowałem linie łączące bloki.
6. Zauważ, że przeniosłem nie sumator lecz “odejmator”(symbol “-“), który odejmuje . Dlatego prawą myszą zmieniłem [1;-1] na [1;1] tworząc sumator.
7. Kliknąłem prawą myszą na blok const i zmieniłem 1–>2. 
8. 
Kliknąłem ikonkę trójkącik startującą program. Efektem jest na wyświetlaczu cyfrowym. Zwycięstwo–> 2+2=4. Program graficzny działa!
9. Zmieniłem bloki 2>3 i 2>4 to okaże się,  że 3+4=4. A  powinno być 7! Zgadnij dlaczego? Po prostu nie wcisnąłem trójkąta “start”.
10. Po naciśnięciu trójkąta “start” jest prawidłowo 3+4=7.  
11.  Efekt swojej pracy zapisałem w folderze jako plik ..Schems/Scilab9-3.zcos. Ty możesz zapisać sobie w dowolnym miejscu. Przekonasz się, że się jeszcze przyda. 
Wniosek
Grafika z Rys.9-1 jest programem, który jak każdy  ma początek “start” i i koniec “end”.  Zmieniając 2>3 i 2>4 zmieniłem tylko program. Dopiero po wykonaniu go będzie 3+4=7. Xcos jest taki mądry, że zmieni grafikę na na klasyczny program z instrukcjami Scilaba. Tu akurat nie widać przewagi grafiki nad instrukcją  2+2 napisaną na konsoli. To wyjdzie dopiero przy bardziej skomplikowanych blokach. Np. Układ Regulacji Automatycznej z regulatorem PID i zakłóceniami! Dla każdego automatyka schemat będzie oczywisty. A odpowiedni tekstowy program Scilaba? Lepiej nie mówić. Zwłaszcza, że są tam funkcje ODE z całkowaniem.
Radzę samemu zrealizować schemat i obliczyć np. 3+5=8

Rozdział 9.5 Jak Xcos oblicza 3×4=12?
Zmodyfikujemy schemat z Rys.9-1 na poniższy

Rys. 9-4
Schemat obliczający 3×4=12
Wystarczy podmienić sumator z Rys.9-1 na człon mnożący tak jak w animacji.

Rys.9-5
Modyfikacja schematu z Rys.9-1 na Rys.9-5
1. 
Pobranie pliku Scilab9-1 z miejsca gdzie go zapisałeś w p.11 pod Rys.9-4
2. 
Usunięcie sumatora
3. “Przenieś i upuść” blok Product (“Mnożenie”) z palety Operacje matematyczne do okna Xcos
5. Na bloku jest symbol “÷”. Czyli wbrew nazwie, realizuje dzielenie. Dlatego kliknąłem go prawą myszą i [1;-1] zmieniłem na [1;1]. Dopiero teraz mnoży.
6. Narysowałem linie łączące i kliknąłem trójkąt “Start”. Schemat, a właściwie związany z nim “niewidoczny” program, obliczył 3×4=12.

Rozdział 9.6 Jak Xcos oblicza 3:4=0.750?

Rys.9-6
Schemat obliczający3:4=0.750


Rys.9-7
Schemat obliczający3:4=0.750
1. Pobranie pliku Scilab9-1 z miejsca gdzie go zapisałeś w p.11 pod Rys.9-4
2. 
Usunięcie sumatora
3. “Przenieś i upuść” blok Product (“Mnożenie”) z palety Operacje matematyczne do okna Xcos
4. Blok ten mimo nazwy realizuje dzielenie! (symbol “÷” na bloku ). Dlatego nic nie muszę robić.
5. Narysowałem linie łączące i kliknąłem trójkąt “Start”. Schemat, a właściwie związany z nim “niewidoczny” program, obliczył 3:4=0.8. Chyba zrobił to z przybliżeniem, bo powinno być 0.75. Znajdźmy przyczynę.
6. Klikam prawą myszą blok AFFICH_m (“wyświetlacz cyfrowy”). Tu w ustawieniach widzę 5 cyfr przed przecinkiem, ale tylko za.
Dlatego było 3:4=0.8–>zaokrąglenie 0.75 w górę. Ustawiłem 3 cyfry “za”.
7. Po kliknięciu trójkąta “Start” schemat-program obliczył prawidłowo 3:4=0.750 

Scroll to Top