Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Matlab/ Simulink - wykres Scope - otwieranie.

30 Paź 2010 19:33 8885 5
  • Poziom 2  
    Witam
    Mam problem z "uruchomieniem" wykresu Scope z pozycji Matlaba.
    Mój model w Simulinku ma zmieniane wartości dlatego ustawiam je w w M-pliku. Wykresy Scope są dobre, tylko nie otwierają się same i muszę wchodzić do modelu i otwierać Scopy.
    Proszę o podanie odpowiedniej komendy.
    Przyjmuję, że model nazywa się Mojmodel.mdl , a Scope ma nazwę Scope1
    Dzięki

    Marta
  • Poziom 11  
    Nie wiem czy jest możliwość otwarcia Scope'a poprzez m-plik, ale jest inne rozwiązanie.
    Można dodać bloczek "To Workspace" (znajduje się w Sinks), podłączyć go tak samo jak Scope'a.
    Następnie klikając na bloczek dwukrotnie można ustawić następujące elementy:
    Varible name - nazwa danych wyjściowych (np. "dane"),
    Limit ... - (nie zmieniałem tego wiec nie wiem jak działa),
    Decimation - (nie zmieniałem tego wiec nie wiem jak działa),
    Sample time - czas próbkowania,
    Save format - w jaki sposób dane mają być zapamiętane ( w celu łatwego dostępu do nich warto dać "array").

    Po wykonaniu symulacji zostanie wygenerowana tablica "dane", którą można zobrazować przy pomocy komendy "plot".
  • Poziom 2  
    Dzięki za odpowiedź

    Tylko jest jeden problem z tym plotem. Nie jest tak
    "płynny" jak Scope. Plot na podstawie danych z tablicy nie rysuje już tak dokładnie
  • Poziom 11  
    Na stronce www.mathworks.com znalazłem coś takiego:

    Code:

    blocks = find_system(bdroot,'BlockType','Scope');
    for i = 1:length(blocks)
      set_param(blocks{i},'Open','on')
    end


    Otwiera scope'y ostatnio generowanej symulacji modelu.
  • Poziom 21  
    gwiazdkamartunia napisał:
    Dzięki za odpowiedź

    Tylko jest jeden problem z tym plotem. Nie jest tak
    "płynny" jak Scope. Plot na podstawie danych z tablicy nie rysuje już tak dokładnie


    rysuje tak samo dokladnie (ma te same dane), ale nie jest czasem faktycznie płynny zalezy jak sie napisze m-file

    w ustawieniach modelu, poszukaj opcji aby probki samplował w czasie i nie ograniczal ilosci wyników

    w modelu, Simulation/COnfiguration parameters/Data import-export/ :
    ustaw np aby Time eksportował jako tout
    oraz odznacz "limit data points to last"

    pozniej jak plotujesz (w m-file) i masz wyprowadzony sygnał np x_out, to uzywasz tylko
    Code:
    plot(tout, x_out, 'color', 'r');

    i masz wykres wyskalowany tak samo jak scope (w czasie a nie w ilosci próbek)
  • Poziom 2  
    Dzięki wielkie, skorzystałam z metody Łaga i zadziałało - odrazu uruchamiają się 3 Scopy, które potrzebowałam. Teraz tylko pozostaje mie jeszcze automatycznie uruchomić Autoscale dla tych trzech Scopów.Jeśli macie ochotę to szukajcie ze mną:)

    Dzięki wielkie za pomoc!!!:D