Funkcja wykładnicza, exp ()

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
pavloo88
Posty: 10
Rejestracja: 10 gru 2011 21:28
Wersja środowiska: LabVIEW 2011

Funkcja wykładnicza, exp ()

Post 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. :)
Załączniki
Wykres funkcji f(x).
Wykres funkcji f(x).
Schemat.
Schemat.
Awatar użytkownika
smiga
Administrator
Posty: 817
Rejestracja: 04 paź 2009 12:41
Wersja środowiska: LabVIEW 2019
Lokalizacja: Słupsk

Re: Funkcja wykładnicza, exp ()

Post 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.
__ Arkadiusz Śmigielski, tel. 662 01 01 74___
ObrazekObrazekObrazek
Pomogłem ... postaw kawę: https://buycoffee.to/smiga
pavloo88
Posty: 10
Rejestracja: 10 gru 2011 21:28
Wersja środowiska: LabVIEW 2011

Re: Funkcja wykładnicza, exp ()

Post 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().
Załączniki
Schemat do rysowania funkcji exp ().
Schemat do rysowania funkcji exp ().
Wykres funkcji f(x)=A*(1-exp(-(1/m)*x)).
Wykres funkcji f(x)=A*(1-exp(-(1/m)*x)).
Awatar użytkownika
smiga
Administrator
Posty: 817
Rejestracja: 04 paź 2009 12:41
Wersja środowiska: LabVIEW 2019
Lokalizacja: Słupsk

Re: Funkcja wykładnicza, exp ()

Post 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.
__ Arkadiusz Śmigielski, tel. 662 01 01 74___
ObrazekObrazekObrazek
Pomogłem ... postaw kawę: https://buycoffee.to/smiga
pavloo88
Posty: 10
Rejestracja: 10 gru 2011 21:28
Wersja środowiska: LabVIEW 2011

Funkcja wykładnicza, exp ()

Post 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żą? :)
Awatar użytkownika
smiga
Administrator
Posty: 817
Rejestracja: 04 paź 2009 12:41
Wersja środowiska: LabVIEW 2019
Lokalizacja: Słupsk

Re: Funkcja wykładnicza, exp ()

Post 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.
__ Arkadiusz Śmigielski, tel. 662 01 01 74___
ObrazekObrazekObrazek
Pomogłem ... postaw kawę: https://buycoffee.to/smiga
pavloo88
Posty: 10
Rejestracja: 10 gru 2011 21:28
Wersja środowiska: LabVIEW 2011

Re: Funkcja wykładnicza, exp ()

Post 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 :)
Załączniki
Control & Simulation Loop
Control & Simulation Loop
pavloo88
Posty: 10
Rejestracja: 10 gru 2011 21:28
Wersja środowiska: LabVIEW 2011

Re: Funkcja wykładnicza, exp ()

Post 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.
Załączniki
schemat blokowy.jpg
ekran.jpg
Awatar użytkownika
smiga
Administrator
Posty: 817
Rejestracja: 04 paź 2009 12:41
Wersja środowiska: LabVIEW 2019
Lokalizacja: Słupsk

Re: Funkcja wykładnicza, exp ()

Post 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
__ Arkadiusz Śmigielski, tel. 662 01 01 74___
ObrazekObrazekObrazek
Pomogłem ... postaw kawę: https://buycoffee.to/smiga
PiDi
Posty: 641
Rejestracja: 31 gru 2010 01:36
Wersja środowiska: LabVIEW 2017
Lokalizacja: Katowice

Re: Funkcja wykładnicza, exp ()

Post 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.
ObrazekObrazekObrazekObrazek
Awatar użytkownika
smiga
Administrator
Posty: 817
Rejestracja: 04 paź 2009 12:41
Wersja środowiska: LabVIEW 2019
Lokalizacja: Słupsk

Re: Funkcja wykładnicza, exp ()

Post 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
__ Arkadiusz Śmigielski, tel. 662 01 01 74___
ObrazekObrazekObrazek
Pomogłem ... postaw kawę: https://buycoffee.to/smiga
pavloo88
Posty: 10
Rejestracja: 10 gru 2011 21:28
Wersja środowiska: LabVIEW 2011

Re: Funkcja wykładnicza, exp ()

Post 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ł? :)
Załączniki
Schemat blokowy
Schemat blokowy
Wykres 3
Wykres 3
Wykres 2
Wykres 2
Wykres 1
Wykres 1
ODPOWIEDZ