Strona 1 z 1
Funkcja wykładnicza, exp ()
: 11 gru 2011 10:35
autor: pavloo88
Witam,
Chciałbym przedstawić wam mój problem i prosić o wskazówki jego rozwiązania.
Moim zadaniem jest stworzenie modelu "rekuperatora" w LabView. Problemem jaki napotkałem jest wygenerowanie funkcji wykładniczej
f(x)=5*(1-exp(-(1/5)*x)). Po dość sporych poszukiwaniach udało mi się znaleźć przykładowe rozwiązanie, niestety jest ono nie kompletne i nie wiem jak je skończyć. Chodzi o to jak wypełnić w
"Case structure" pole
"False". Schemat zamieszczam w załączniku, w ramce beżowej jest pole
"False". W załączniku zamieszczam też wykres funkcji który chciałbym osiągnąć w LabView.
Prosiłbym o pomoc w rozwiązaniu, wskazówki lub pomysły jak można to inaczej wykonać. Z góry dziękuję za pomoc.
Re: Funkcja wykładnicza, exp ()
: 11 gru 2011 14:16
autor: smiga
Rozumiem, że znalazłeś taki przykład z case'em. Pytanie czy ten case jest Ci do czegoś potrzebny (jeżeli tak to co jest w combobox?) - podejrzewam, że nie. Kliknij na case'a w widoku True prawym myszy i Remove Case Structure.
Re: Funkcja wykładnicza, exp ()
: 11 gru 2011 16:52
autor: pavloo88
Dokładnie taki znalazłem przykład i chciałem go odwzorować nie znając się na jego działaniu. Twoja wskazówka okazała się strzałem w 10 i otrzymałem zamierzony cel
Więc bardzo dziękuję.
Jak by ktoś poszukiwał, zamieszczam w załączniku rozwiązanie do rysowania funkcji exp().
Re: Funkcja wykładnicza, exp ()
: 11 gru 2011 18:12
autor: smiga
Te dwie właściwości visible u góry z lewej też możesz wyrzucić - podejrzewam, że nie wykorzystujesz ich do niczego.
Funkcja wykładnicza, exp ()
: 11 gru 2011 19:40
autor: pavloo88
No racja, bez tego też działa. Mógłbyś tak w skrócie, w dwóch zdaniach powiedzieć czemu one służą?
Re: Funkcja wykładnicza, exp ()
: 11 gru 2011 20:06
autor: smiga
Skrót klawiszowy CTR+H - wyświetli okienko help'a kontekstowego. Najeżdżając na kontrolki zobaczysz informacje o nich.
Wspomniana właściwość Visible służy, jak sama nazwa wskazuje, do pokazywania lub ukrywania kontrolki. Zmień wartość stałej przy niej na False i zobacz co się stanie - zniknie.
Re: Funkcja wykładnicza, exp ()
: 23 gru 2011 22:10
autor: pavloo88
Zostałem zmuszony do ponownego reaktywowania tego tematu. Drążąc dalej temat funkcji exp(), doktor polecił mi wykonanie tego zamiast pętli for, użyć "Control & Simulation Loop", problem jaki napotkałem tutaj to jak uzyskać wartość t, która ma wartość czasu. Nie wiem co i jak podpiąć pod x żeby pojawił mi się wykres. Proszę o wskazówki, dziękuje z góry za pomoc
Re: Funkcja wykładnicza, exp ()
: 30 gru 2011 16:20
autor: pavloo88
Udało mi się rozgryźć ten problem, lecz pojawił się kolejny. (Może tym razem mi ktoś pomoże). Chciałbym aby funkcja, która znajduje się w obszarze Controls&Simulation była rysowana w czasie np 20sec z krokiem co 1 sec, tak żebym mógł widzieć jak powstaje. Aktualnie po włączeniu symulacji wykres pojawia mi się jako gotowy w ułamku sekundy. Czy ktoś jest w stanie mi pomóc? W załącznikach zamieszczam schemat blokowy i ekran.
Re: Funkcja wykładnicza, exp ()
: 30 gru 2011 22:03
autor: smiga
Niestety nie mam tego modułu więc nie mogę sprawdzić, ale podejrzewam, że "winowajcą" jest XY Graph, to znaczy ten typ wykresu "namaluje" wszystko od razu i nie historii tak jak Chart. Rozwiązaniem jest wstawienie rejestru i dopisywanie nowych wyników do tablicy za każdym krokiem pętli (mam nadzieję, że w tego rodzaju pętlach rejestry działają jak w każdej innej ;) )
Zerknij w przykładach (Find Examples) - Mask and limit testing of XY Graph
Re: Funkcja wykładnicza, exp ()
: 30 gru 2011 23:42
autor: PiDi
Rzecz w tym, że te opcje "Initial Time", "Step Size" i "Final Time", które tam sobie podpiąłeś, to są parametry symulacji, a nie rzeczywisty timing pętli. To symulacja wykonuje Ci się w ułamku sekundy;)
Kliknij dwa razy na tą pętlę symulacji. Pojawią Ci się opcje, wybierz zakładkę Timing Parameters. Tam wybierz sobie Synchronize Loop to Timing Source. Teraz możesz sobie okreslić, jaki ma być rzeczywisty okres tej pętli.
Do uwag smigi - tym razem "educated guess" się nie udał ;) W pętli symulacyjnej są tylko feedback nody, nie ma rejestrów. A do wykresów i tak nie są potrzebne, bo jest bloczek - Buffer XY Graph. Jest tam wstawiony przed wykresem i sam sobie buforuje próbki (jest też dostępny drugi, który od razu rysuje zależność od czasu). Dwuklik na tym bloczku wywołuje opcje (można ustawić decymację i wielkość bufora), co też polecam koledze pavloo.
Re: Funkcja wykładnicza, exp ()
: 30 gru 2011 23:58
autor: smiga
Jednak wróżenie nie wychodzi mi za dobrze ;) ... następnym razem będę sprawdzał jak to działa ... jak oczywiście będę miał taką możliwość.
Dzięki PiDi za sprostowanie i edukację.
Korzystając z okazji życzę sukcesów w Nowym Roku
Re: Funkcja wykładnicza, exp ()
: 02 sty 2012 23:23
autor: pavloo88
Dziękuję
Udało mi się zrealizować kolejny etap
Teraz po załączeniu rysuje mi się ładnie wykres, jednak znalazłem kolejny mankament, którego nie potrafię rozgryźć.
Zauważyłem, że gdy zadam pewne wartości funkcja rysowana jest prawidłowo, jak na "Wykresie 1", ale gdy puszczam ją jeszcze raz i w trakcie zmienię wartości nagle mam prawie pionowy spadek o jakąś wartość "Wykres 2" a chciałbym żeby spadała ona po zmianie tak jak na "Wykres 3". Da się tak zrobić? Mi do głowy przychodzi sprzężenie zwrotne z bloczka EXP (z jego wyjścia na wejście) tylko nie wiem jak to zrealizować i czy to zadziała. Może macie jakiś pomysł?