Witam
Mam problem z eventem, która zależna jest od przycisku kalibracja. Dopóki robiłem kalibracje silnika w whilu po za eventem to działało wszystko ok, a jak wrzuciłem to w eventa na value change, to kalibracja się robi, ale nie mogę robić nic innego w programie. Dopiero jak kalibracja się zakończy, to program jakby się odwiesza. Wydaje mi się, że jest to spowodowane tym, że poszczególne kroki w kalibracji sa robione w whilach, i jak program do nich wchodzi, to nie widzi co sie dzieje poza tym whilem, a nie mam pomysłu jak to obejść.
Pozdrawiam
problem z eventem
-
- Posty: 5
- Rejestracja: 07 lis 2009 11:15
- Wersja środowiska: LabVIEW 8.5
problem z eventem
- Załączniki
-
- kal4 (SubVI).vi
- (91.16 KiB) Pobrany 187 razy
- smiga
- Administrator
- Posty: 817
- Rejestracja: 04 paź 2009 12:41
- Wersja środowiska: LabVIEW 2019
- Lokalizacja: Słupsk
Re: problem z eventem
Nie widzę żadnego event'a i przycisku kalibracja w tym kodzie ... ale do wielu SubVI'i nie mam dostępu (bo ich nie załączyłeś) - może tam coś siedzi.
Patrząc na diagram ... mało czytelny - muszę przewijać w pionie i w poziomie.
Na podstawie samego opisu (bo jak wcześniej wspomniałem w nieczytelnym kodzie nie znajduje event'a) podejrzewam, że kalibracja zajmuje troszkę czasu, a całość wrzuciłeś do środka struktury event ... więc do momentu kiedy nie skończy obsługi tego event'a, nie zrobi nic więcej. Polecam skorzystanie z architektury producent/konsument. Event'y są w pętli producenta i tam wykonywane są tylko podstawowe operacji. To konsument zajmuje się poważnym liczeniem i on powinien zająć się kalibracją. W tym czasie aktywne są inne elementy panelu (guziki), których akcje mogą obsłużone przez strukturę event i kolejkowane.
Mam nadzieję, że w miarę jasno to opisałem i odpowiada to rzeczywistej sytuacji.
Patrząc na diagram ... mało czytelny - muszę przewijać w pionie i w poziomie.
Na podstawie samego opisu (bo jak wcześniej wspomniałem w nieczytelnym kodzie nie znajduje event'a) podejrzewam, że kalibracja zajmuje troszkę czasu, a całość wrzuciłeś do środka struktury event ... więc do momentu kiedy nie skończy obsługi tego event'a, nie zrobi nic więcej. Polecam skorzystanie z architektury producent/konsument. Event'y są w pętli producenta i tam wykonywane są tylko podstawowe operacji. To konsument zajmuje się poważnym liczeniem i on powinien zająć się kalibracją. W tym czasie aktywne są inne elementy panelu (guziki), których akcje mogą obsłużone przez strukturę event i kolejkowane.
Mam nadzieję, że w miarę jasno to opisałem i odpowiada to rzeczywistej sytuacji.
-
- Posty: 5
- Rejestracja: 07 lis 2009 11:15
- Wersja środowiska: LabVIEW 8.5
Re: problem z eventem
W załączniku przesyłam cały mój program razem z wszystkimi klockami. Mam nadzieje, że to coś pomoże. Dziękuje za wszelką pomoc.
Pozdrawiam
Pozdrawiam
- Załączniki
-
- program.vi
- (330.25 KiB) Pobrany 199 razy
-
- kal4 (SubVI).vi
- (91.16 KiB) Pobrany 195 razy
-
- Posty: 2
- Rejestracja: 27 gru 2008 11:37
- Wersja środowiska: LabVIEW 2010
- Lokalizacja: Biłgoraj
- Kontakt:
problem z eventem
Zachowanie normalne
umieść procedurę kalibracja poza pętlą i uruchom z poziomu referencji do podprogramu. Warunek ze nie masz kolizji z wykonywaniem kilku zadań na karcie.
GP
umieść procedurę kalibracja poza pętlą i uruchom z poziomu referencji do podprogramu. Warunek ze nie masz kolizji z wykonywaniem kilku zadań na karcie.
GP