Przekazywanie danych pomiędzy pętlami

Tematy związane z tworzeniem dużych aplikacji. Zaganiednia dotyczące architektury oraz zasad tworzenia optymalnych rozwiązań.
Awatar użytkownika
mnawotka
Posty: 55
Rejestracja: 15 lut 2016 20:13
Wersja środowiska: LabVIEW 2017

Przekazywanie danych pomiędzy pętlami

Post autor: mnawotka »

Cześć forumowicze.

Zagwostka taka nad rozwiązaniem optymalnym. Odczyt danych z 4 urządzęń (po rs232), rozbite na 4 pętle, obrótka danych w pętli nr 5. Nie są to pomiary dynamiczne, odczyt co 1-2 sekundy. Dane do 5 pętli przekazywać ?

- 4 kolejki do piątej pętli ?
- global variable ?
- channels ? (nie wykorzystywałem ich jeszcze)
- jakiś lepszy sposób ?
matowc1991
Posty: 5
Rejestracja: 20 gru 2018 10:54
Wersja środowiska: LabVIEW 2019

Re: Przekazywanie danych pomiędzy pętlami

Post autor: matowc1991 »

Kolejki wydają się zasadniczo dobrym pomysłem, global variables odradzam, a channele w większości to też kolejki, tylko że w interesującym opakowaniu :)
Nie znam szczegółów aplikacji, ale skłaniałbym się ku channelom, choćby ze względu na to, że byłaby okazja je poznać.
Pieczywo
Posty: 19
Rejestracja: 03 paź 2018 20:57
Wersja środowiska: LabVIEW 2017

Re: Przekazywanie danych pomiędzy pętlami

Post autor: Pieczywo »

Ciężko bez wymagań wydajnościowych określić co będzie najlepszym rozwiązaniem. Jeśli interesuje nas ostatnia wartość bo odczyt jest dużo częstszy od wyniku przetwarzania to kierowałbym się w stronę zmiennych lokalnych/globalnych (globalnych używasz tylko w przypadku gdy to niezbędne tj z kilku plików vi bez opcji przekazania danych do nich w inny sposób. Jeśli odczyty są rzadkie, przetwarzanie szybkie i zależy nam na przetworzeniu wszystkich odczytanych wartości to kolejki.
szyms
OptiNav
Posty: 1
Rejestracja: 22 sty 2020 08:16
Wersja środowiska: LabVIEW 2019

Re: Przekazywanie danych pomiędzy pętlami

Post autor: szyms »

A czemu nie jedna kolejka do piątej pętli?
pawhan11
Posty: 67
Rejestracja: 21 wrz 2011 16:25
Wersja środowiska: LabVIEW 2012

Re: Przekazywanie danych pomiędzy pętlami

Post autor: pawhan11 »

Zależy od pętli analizującej dane.
- Jeżeli analiza dopuszcza zgubienie/zdublowanie jakiejś próbki może być global variable albo notifier
- Jeżeli zgubienie próbki nie wchodzi w grę to kolejki lub UE. Czy 4 kolejki/UE czy 1 kolejka/UE zależy od preferencji i logiki w pętli przetwarzającej dane. Przy odczycie rzędu 1-2 sek rozważania co będzie bardziej optymalne nie mają sensu.
CLS - Certified LabVIEW Student
ODPOWIEDZ