Podstawowe obliczenia Excelowe w LV
-
- Posty: 188
- Rejestracja: 03 lut 2012 15:09
- Wersja środowiska: LabVIEW 2017
- Lokalizacja: Warszawa
- Kontakt:
Podstawowe obliczenia Excelowe w LV
Witam,
mam pewien problem i nie wiem jak to można rozwiązać. Mianowicie chcę wykonać podstawowe obliczenia na rejestrowanym sygnale w czasie rzeczywistym. Ogólna algebra jest banalna w LV, ale jak można zrobić coś takiego jak w Excelu, czyli blokowanie komórki poprzez $. Z tym, że nie jest to zwykła wartość constant, bo to ma być pierwsza z ciągu rejestrowanych wartości.
Mam nadzieje, że klarownie to przedstawiłem.
mam pewien problem i nie wiem jak to można rozwiązać. Mianowicie chcę wykonać podstawowe obliczenia na rejestrowanym sygnale w czasie rzeczywistym. Ogólna algebra jest banalna w LV, ale jak można zrobić coś takiego jak w Excelu, czyli blokowanie komórki poprzez $. Z tym, że nie jest to zwykła wartość constant, bo to ma być pierwsza z ciągu rejestrowanych wartości.
Mam nadzieje, że klarownie to przedstawiłem.
- Pitol
- Moderator
- Posty: 986
- Rejestracja: 19 lip 2007 00:00
- Wersja środowiska: LabVIEW 2019
- Lokalizacja: Kraków
Podstawowe obliczenia Excelowe w LV
Nie, nie przedstawiłeś tego klarownie...
Się postaraj bardziej bo nic z tego nie rozumiem. Wstaw może kawałek kodu (np. odczyt Twoich rzeczywistych danych), który nam choć trochę przybliży temat.
Się postaraj bardziej bo nic z tego nie rozumiem. Wstaw może kawałek kodu (np. odczyt Twoich rzeczywistych danych), który nam choć trochę przybliży temat.
-
- Posty: 188
- Rejestracja: 03 lut 2012 15:09
- Wersja środowiska: LabVIEW 2017
- Lokalizacja: Warszawa
- Kontakt:
Re: Podstawowe obliczenia Excelowe w LV
No to jeszcze raz.
Jak zrobić w LV kod, który robi dokładnie to samo co formuły w żółtych polach? Pod nimi sa kolumny z danymi liczone w ten właśnie sposób.
A ja chcę zrobić to samo tylko dla danych, które właśnie odczytuję z Targetu RT i potem je zapisać.
W chwili uruchomienia zapisu pierwsza zarejestrowana wartość jest tą, która jest blokowana poprzez $ i odejmowana od każdej kolejnej, która będzie zapisana.

Jak zrobić w LV kod, który robi dokładnie to samo co formuły w żółtych polach? Pod nimi sa kolumny z danymi liczone w ten właśnie sposób.
A ja chcę zrobić to samo tylko dla danych, które właśnie odczytuję z Targetu RT i potem je zapisać.
W chwili uruchomienia zapisu pierwsza zarejestrowana wartość jest tą, która jest blokowana poprzez $ i odejmowana od każdej kolejnej, która będzie zapisana.

-
- Posty: 188
- Rejestracja: 03 lut 2012 15:09
- Wersja środowiska: LabVIEW 2017
- Lokalizacja: Warszawa
- Kontakt:
Podstawowe obliczenia Excelowe w LV
Może coś źle robię, ale dla tak zrobionego sygnału ciągłego nie oddaje mi pojedynczej wartości tylko nadal sygnał ciągły.


Re: Podstawowe obliczenia Excelowe w LV
Ponieważ przy każdym obrocie pętli dostajesz coraz to większą tablicę danych, z których wybierasz pierwszą wartość. Następny obrót pętli - o jedną wartość większa tablica (wektor danych)...
- Załączniki
-
- forum.png (24.91 KiB) Przejrzano 16005 razy

-
- Posty: 188
- Rejestracja: 03 lut 2012 15:09
- Wersja środowiska: LabVIEW 2017
- Lokalizacja: Warszawa
- Kontakt:
Re: Podstawowe obliczenia Excelowe w LV
Wielkie dzięki za pomoc! Próbowałem jeszcze z użyciem tego:

Ale jednak Twoje rozwiązanie w moim przypadku sprawdzi się lepiej.

Ale jednak Twoje rozwiązanie w moim przypadku sprawdzi się lepiej.
Re: Podstawowe obliczenia Excelowe w LV
Normalizacja polega na znalezieniu wartości największej (bezwzględnej), potraktowanie jej jako wartość 1 i zeskalowaniu pozostałych wartości funkcji wg tej myśli. Zatem nie jest to operacja matematyczna, o ktorej wspomniałeś we wcześniejszym poście;)

- Pitol
- Moderator
- Posty: 986
- Rejestracja: 19 lip 2007 00:00
- Wersja środowiska: LabVIEW 2019
- Lokalizacja: Kraków
Podstawowe obliczenia Excelowe w LV
No i jak zwykle problem rozbija się o definicję...
Na przyszłość kolego spalinowy - dokładny opis problemu ułatwi nam wszystkim pracę ;)
Na przyszłość kolego spalinowy - dokładny opis problemu ułatwi nam wszystkim pracę ;)
-
- Posty: 188
- Rejestracja: 03 lut 2012 15:09
- Wersja środowiska: LabVIEW 2017
- Lokalizacja: Warszawa
- Kontakt:
Podstawowe obliczenia Excelowe w LV
Bardzo dobrze zdaję sobie z tego sprawę. Jednak najtrudniej wyjaśnić oczywiste dla jednej osoby w sposób zrozumiały dla drugiej.Pitol pisze:No i jak zwykle problem rozbija się o definicję...
Na przyszłość kolego spalinowy - dokładny opis problemu ułatwi nam wszystkim pracę ;)
Dumałem jeszcze nad tą sprawą i wydumałem coś takiego:

Może się komuś przyda.
Re: Podstawowe obliczenia Excelowe w LV
Nie do końca widzę co chciałeś przekazać w tym rozwiązaniu.
Mamy dwie niezależne pętle, które kręcą się z różną prędkością (wait(ms) nie zagwarantuje synchronicznego działania). W jednej pętli odwołujesz się do wartości kontrolki, która ma wartość 0 (lub inną), do momentu kliknięcia kontrolki boolean (zmiany case) - sumujesz to z kolejnymi wartościami (ale dopiero jak zatwierdzisz drugą kontrolkę).
Nie ma szans by to działało jak opisujesz w pierwszym poście... Opisz co miałeś na myśli
Mamy dwie niezależne pętle, które kręcą się z różną prędkością (wait(ms) nie zagwarantuje synchronicznego działania). W jednej pętli odwołujesz się do wartości kontrolki, która ma wartość 0 (lub inną), do momentu kliknięcia kontrolki boolean (zmiany case) - sumujesz to z kolejnymi wartościami (ale dopiero jak zatwierdzisz drugą kontrolkę).
Nie ma szans by to działało jak opisujesz w pierwszym poście... Opisz co miałeś na myśli

-
- Posty: 188
- Rejestracja: 03 lut 2012 15:09
- Wersja środowiska: LabVIEW 2017
- Lokalizacja: Warszawa
- Kontakt:
Re: Podstawowe obliczenia Excelowe w LV
To jest ta sama pętla tylko z widoczną zawartością Case Structure.
Chodzi o to, że pętla normalnie pracuje i na False czyta wartości. Natomiast gdy przełączę na True, to mam tę ostatnią wartość zapamiętaną i jednocześnie stałą, która mogę sobie odejmować czy coś tam do wartości, które są rejestrowane.
Chodzi o to, że pętla normalnie pracuje i na False czyta wartości. Natomiast gdy przełączę na True, to mam tę ostatnią wartość zapamiętaną i jednocześnie stałą, która mogę sobie odejmować czy coś tam do wartości, które są rejestrowane.
Re: Podstawowe obliczenia Excelowe w LV
To w takim wypadku musisz zbudować tablicę i dodawać kolejne wartości - bo w tym momencie zastępujesz poprzednią wartość. Poza tym po przełączenia case structure nie będziesz odejmował pierwszej wartości od wszystkich pozostałych, a jedynie od wartości, które dopiero zaczynasz zbierać;)

-
- Posty: 188
- Rejestracja: 03 lut 2012 15:09
- Wersja środowiska: LabVIEW 2017
- Lokalizacja: Warszawa
- Kontakt:
Re: Podstawowe obliczenia Excelowe w LV
Jeśli chodzi o drugie Twoje zdanie, to to chciałem osiągnąć. Bo chcę właśnie wykonać drobne obliczenia w czasie rzeczywistym na sygnale, który będzie zarejestrowany zaraz po tych obliczeniach. Czyli oglądam sobie przebieg, przełączam z False (z jakąś wartością, która tam jest) na True i w niej jest robione jakieś działanie.aaddaas pisze:To w takim wypadku musisz zbudować tablicę i dodawać kolejne wartości - bo w tym momencie zastępujesz poprzednią wartość. Poza tym po przełączenia case structure nie będziesz odejmował pierwszej wartości od wszystkich pozostałych, a jedynie od wartości, które dopiero zaczynasz zbierać;)
Nie do końca rozumiem to zdanie. Ogólnie ta wartość w klatce False będzie za każdym razem inna gdy będę się bawił przełącznikiem, o co właśnie mi chodzi.aaddaas pisze:To w takim wypadku musisz zbudować tablicę i dodawać kolejne wartości - bo w tym momencie zastępujesz poprzednią wartość.
Re: Podstawowe obliczenia Excelowe w LV
Nie do końca rozumiem to zdanie. Ogólnie ta wartość w klatce False będzie za każdym razem inna gdy będę się bawił przełącznikiem, o co właśnie mi chodzi.[/quote]aaddaas pisze:To w takim wypadku musisz zbudować tablicę i dodawać kolejne wartości - bo w tym momencie zastępujesz poprzednią wartość.
Rozumiem, nie wyłapałem tego z treści problemu;) Pamiętaj tylko, że nie będziesz miał dostępu do poprzednich zmierzonych wartości, a dodatkowo nie sądzę by Ci się udało "złapać" pierwszą wartość zmierzoną - raczej będziesz dodawał (bądź odejmował) ostatnią wartość przed zmianą stanu case structure...
