Witam serdecznie,
pewnie macie powyżej uszu tematów zakładanych przez ludzi, którzy o LabView nie mają pojęcia, a muszą zrealizować jakieś zadanie jednorazowo na uczelnie, czy coś w ten deseń... niestety znalazłem się w podobnej sytuacji Nie chce poświęcać godzin przeglądając tutoriale i dokumentacje, bo to prawdopodobnie moje jedyne spotkanie z LabView w życiu, a muszę zrealizować dość proste zadanie.
Konkretniej, mam stworzyć program, który niczym nie będzie się różnił w działaniu od tego z załącznika o nazwie stoper.
Załączam też to, co samemu udało mi się wyprodukować metodą prób i błędów oraz "na chłopski rozum" - generalnie jest wyświetlacz z dwoma wskazówkami, odliczanie czasu działa, reset działa, kończenie działa, zostało mi pauzowanie/wznawianie. Brakuje mi już pomysłu jak to ugryźć. Zapewne albo istnieje jakiś bloczek czy opcja pauzy, którego nie udało mi się znaleźć, albo zabieram się do problemu od kompletnie złej strony
Dość podstawowym problemem, który mi przeszkadza przy realizacji jest fakt, że w pętli while nie działają mi poprawnie przyciski bistabilne. W razie gdyby to był jakiś problem nie do obejścia (w co zresztą wątpię) mogę użyć jakiś toggle switchy, które działały dobrze, może prowadzący nie będzie aż tak dociekliwy.
Generalnie najbardziej brakuje mi czegoś takiego, jak po prostu zmienna, gdzie bym sobie mógł prosto wrzucić czas naciśnięcia pauzy, a potem go odczytać i użyć przy wznowieniu...
Prosiłbym o jakieś wskazówki, za pomocą jakich elementów czy w jaki sposób mogę zrealizować taką funkcjonalność. Będę naprawdę wdzięczny i obiecuję w ramach rekompensaty, że jeżeli na którymś z for o bliższej mi tematyce gdzie się udzielam ktoś zada równie podstawowe pytanie, poświęcić trochę czasu i podzielić się wiedzą ;)
Z góry dziękuję i przepraszam, jeżeli pytam w złym dziale czy coś podobnego (w regulaminie forum przejrzałem tylko punkty tyczące się zadawania pytań, całość wygląda nieco zaporowo ;) )
Problem przy tworzeniu stopera z opcją pauzy/kontynuacji
Problem przy tworzeniu stopera z opcją pauzy/kontynuacji
- Załączniki
-
- Untitled 1.vi
- Moje "wypociny"
- (25.09 KiB) Pobrany 397 razy
-
- stoper.rar
- Program wzorcowy
- (126.71 KiB) Pobrany 359 razy
Ostatnio zmieniony 24 sty 2013 00:00 przez Cerberus, łącznie zmieniany 1 raz.
-
- Posty: 103
- Rejestracja: 17 gru 2011 21:33
- Wersja środowiska: LabVIEW 2011
Re: Problem przy tworzeniu stopera z opcją pauzy/kontynuacji
Jak możesz to zapisz to we wcześniejszej wersji.
- skrzatswat
- Posty: 21
- Rejestracja: 13 lut 2012 16:26
- Wersja środowiska: LabVIEW 2011
Re: Problem przy tworzeniu stopera z opcją pauzy/kontynuacji
@dzojstik22 - Wrzucam w załączniku.
@skrzatswat - Dzięki za zainteresowanie tematem Niestety Twój program nie przybliża mnie za bardzo do rozwiązania problemu, bo nie potrafię zrozumieć w jaki sposób jest tam zrobiony ten mechanizm pauzy/wznowienia, dlaczego to działa... :/
Generalnie to brakuje mi po prostu wrzucenia sobie czasu zatrzymania do zmiennej i potem korzystania z niego, mając to już bym sobie myślę poradził. Nie wiem, czy da się to jakoś prosto uzyskać...?
@skrzatswat - Dzięki za zainteresowanie tematem Niestety Twój program nie przybliża mnie za bardzo do rozwiązania problemu, bo nie potrafię zrozumieć w jaki sposób jest tam zrobiony ten mechanizm pauzy/wznowienia, dlaczego to działa... :/
Generalnie to brakuje mi po prostu wrzucenia sobie czasu zatrzymania do zmiennej i potem korzystania z niego, mając to już bym sobie myślę poradził. Nie wiem, czy da się to jakoś prosto uzyskać...?
- Załączniki
-
- Untitled 1.vi
- Zapisane w zgodności ze starszymi wersjami (10.0)
- (23.03 KiB) Pobrany 335 razy
Re: Problem przy tworzeniu stopera z opcją pauzy/kontynuacji
Czas zatrzymania krąży w rejestrze przesuwnym (tym pomarańczowym ) - dodałam Ci jeszcze czas wznowienia - może się przydać.
Generalnie program zwiększył się o dwie struktury Case - stan True zewnętrznej jest związany ze zmianą stanu przycisku (z True na False lub z False na True) - porównywanie z wartością poprzednią (Feedback Node). Wewnętrzny Case zależy od stanu przycisku - w True do rejestru przesuwnego wpisywany jest czas wciśnięcia przycisku Pauza, w stanie False do rejestru wpisywana jest poprzednia wartość z rejestru, czyli wcześniej zapamiętany czas wciśnięcia Pauzy.
Generalnie program zwiększył się o dwie struktury Case - stan True zewnętrznej jest związany ze zmianą stanu przycisku (z True na False lub z False na True) - porównywanie z wartością poprzednią (Feedback Node). Wewnętrzny Case zależy od stanu przycisku - w True do rejestru przesuwnego wpisywany jest czas wciśnięcia przycisku Pauza, w stanie False do rejestru wpisywana jest poprzednia wartość z rejestru, czyli wcześniej zapamiętany czas wciśnięcia Pauzy.
- Załączniki
-
- Untitled 1.vi
- (27.54 KiB) Pobrany 387 razy
Re: Problem przy tworzeniu stopera z opcją pauzy/kontynuacji
Dzięki Góras, jak sobie przeanalizowałem Twój układ i to co napisałeś, to byłem w stanie sobie sam zrobić to jak chciałem
Moja koncepcja jest taka, że w dwóch rejestrach przesuwnych krąży sumaryczny czas spędzony na pauzie i czas spędzony na liczeniu. Czas spędzony na pauzie wyliczam zawsze jako całościowy czas od rozpoczęcia programu odjąć czas liczenia. Czas liczenia, jeżeli timer jest zastopowany, przepisuję bez zmian, a jeżeli nie jest zastopowany, to wyliczam tak: aktualny czas liczenia = delta czasu dodać aktualny czas liczenia i od tego odjąć czas pauzy.
Jeszcze raz dzięki za pomoc!
Moja koncepcja jest taka, że w dwóch rejestrach przesuwnych krąży sumaryczny czas spędzony na pauzie i czas spędzony na liczeniu. Czas spędzony na pauzie wyliczam zawsze jako całościowy czas od rozpoczęcia programu odjąć czas liczenia. Czas liczenia, jeżeli timer jest zastopowany, przepisuję bez zmian, a jeżeli nie jest zastopowany, to wyliczam tak: aktualny czas liczenia = delta czasu dodać aktualny czas liczenia i od tego odjąć czas pauzy.
Jeszcze raz dzięki za pomoc!
- Załączniki
-
- Untitled 1.vi
- (41.7 KiB) Pobrany 400 razy