Inny sposób na opóźnienie czasowe iteracji pętli

Tematy związane z tworzeniem dużych aplikacji. Zaganiednia dotyczące architektury oraz zasad tworzenia optymalnych rozwiązań.
draqo
Posty: 13
Rejestracja: 09 maja 2011 15:09
Wersja środowiska: LabVIEW 2010

Inny sposób na opóźnienie czasowe iteracji pętli

Post autor: draqo »

Witam,
czy jest inny sposób na opóźnienie iteracji w pętli while? Do licznika iteracji w jednej pętli mam podpięte dwa warunki i chciałbym, żeby dla jednego licznik iteracji "chodził" szybciej a dla drugiego wolniej. Jest jakaś opcja na rozwiązanie tego problemu?
PiDi
Posty: 641
Rejestracja: 31 gru 2010 01:36
Wersja środowiska: LabVIEW 2017
Lokalizacja: Katowice

Re: Inny sposób na opóźnienie czasowe iteracji pętli

Post autor: PiDi »

Użycie różnych wartości opóźnienia w zależności od warunku - o to chodzi?
Załączniki
szybkowolny.vi
(7.66 KiB) Pobrany 460 razy
ObrazekObrazekObrazekObrazek
draqo
Posty: 13
Rejestracja: 09 maja 2011 15:09
Wersja środowiska: LabVIEW 2010

Inny sposób na opóźnienie czasowe iteracji pętli

Post autor: draqo »

Bardziej chodzi mi o dwa różne opóźnienia w jednej pętli while. Mogą być dwa case'y w środku, jednak działają one w tym samym czasie, a to jest największy problem, żeby zrobić dwa różne opóźnienia dla każdego z case'ów w tym samym czasie.
smiglo
Posty: 110
Rejestracja: 18 sty 2006 00:00
Wersja środowiska: LabVIEW 2010
Lokalizacja: Bydgoszcz

Re: Inny sposób na opóźnienie czasowe iteracji pętli

Post autor: smiglo »

Wydawało mi się, że to rozwiązanie Pidiego to jest to o co chodzi...
Czy może chodzi o coś takiego, że masz dwa zadania, które chciałbyś z różną częstotliwością obsługiwać w jednej pętli WHILE??
Jeśli tak, to wstaw jakąś podstawę czasową np. 100 ms i licznik na shift registerze, przy doliczeniu do pewnej wartości również wykonujemy to drugie zadanie.
Załączniki
zagadka.JPG
smiglo
draqo
Posty: 13
Rejestracja: 09 maja 2011 15:09
Wersja środowiska: LabVIEW 2010

Inny sposób na opóźnienie czasowe iteracji pętli

Post autor: draqo »

Myślałem, że to rozwiązanie zda egzamin, jednak potrzebuję czegoś innego. Chodzi mi bardziej o to, żeby pociągnąć iterację do dwóch case'ów i na każdym drucie prędkość iteracji ma być inna. Całość w jednej pętli while. Druga funkcja musi się wykonywać cały czas, jednak wolniej. Coś jakby w jednej pętli while umieścić dwa liczniki, jeden będzie liczył szybciej, drugi wolniej. Oczywiście w tym samym czasie. Da radę coś takiego wymodzić w Labview?
smiglo
Posty: 110
Rejestracja: 18 sty 2006 00:00
Wersja środowiska: LabVIEW 2010
Lokalizacja: Bydgoszcz

Re: Inny sposób na opóźnienie czasowe iteracji pętli

Post autor: smiglo »

To rozwiązanie, które pokazałem działa w ten sposób, że co 100 ms wykonywane jest jedno zadanie, a co wielokrotność tego czasu (np. 500 ms) wykonywane jest zadanie drugie. Czyli de facto tak jakby były dwie pętle WHILE z dwoma różnymi opóźnieniami. Co to znaczy, że funkcja ma się wykonywać cały czas? - po wykonaniu funkcji będzie pauza itd.
Załączniki
zagadka2.JPG
smiglo
ODPOWIEDZ