Funkcja wykładnicza, exp ()
Funkcja wykładnicza, exp ()
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.
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.
- smiga
- Administrator
- Posty: 817
- Rejestracja: 04 paź 2009 12:41
- Wersja środowiska: LabVIEW 2019
- Lokalizacja: Słupsk
Re: Funkcja wykładnicza, exp ()
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 ()
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().
Jak by ktoś poszukiwał, zamieszczam w załączniku rozwiązanie do rysowania funkcji exp().
- smiga
- Administrator
- Posty: 817
- Rejestracja: 04 paź 2009 12:41
- Wersja środowiska: LabVIEW 2019
- Lokalizacja: Słupsk
Re: Funkcja wykładnicza, exp ()
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 ()
No racja, bez tego też działa. Mógłbyś tak w skrócie, w dwóch zdaniach powiedzieć czemu one służą?
- smiga
- Administrator
- Posty: 817
- Rejestracja: 04 paź 2009 12:41
- Wersja środowiska: LabVIEW 2019
- Lokalizacja: Słupsk
Re: Funkcja wykładnicza, exp ()
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.
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 ()
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 ()
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.
- smiga
- Administrator
- Posty: 817
- Rejestracja: 04 paź 2009 12:41
- Wersja środowiska: LabVIEW 2019
- Lokalizacja: Słupsk
Re: Funkcja wykładnicza, exp ()
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
Zerknij w przykładach (Find Examples) - Mask and limit testing of XY Graph
-
- Posty: 641
- Rejestracja: 31 gru 2010 01:36
- Wersja środowiska: LabVIEW 2017
- Lokalizacja: Katowice
Re: Funkcja wykładnicza, exp ()
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.
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.
- smiga
- Administrator
- Posty: 817
- Rejestracja: 04 paź 2009 12:41
- Wersja środowiska: LabVIEW 2019
- Lokalizacja: Słupsk
Re: Funkcja wykładnicza, exp ()
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
Dzięki PiDi za sprostowanie i edukację.
Korzystając z okazji życzę sukcesów w Nowym Roku
Re: Funkcja wykładnicza, exp ()
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ł?
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ł?