Witam,
http://hero-zero-hack.com.pl/
http://msp-hack-2017.pl/
Mam do wykonania pewien program symulujący, którego celem jest sterowanie stanami urządzenia do badania krwi.
Program ma posiadać kilka stanów pracy, których czas jest inny dla różnych trybów pracy.
Program ma pokazywać aktywne stany przez zapalające się odpowiednie diody. Dioda Power ON ma być włączona wtedy, gdy pokrętło trybów pracy ustawione jest na inne pozycje niż turn off.
Stan Centrifugation jest wykonywany tylko wtedy, gdy jest wciśnięty boolean Centrifugation (w innym wypadku stan jest pomijany).
W momencie wciśnięcia przycisku Lid Open, program pozostaje w aktualnym stanie do czasu wyciśnięcia w/w przycisku.
Zrobiłem taki programik. Jednakże nie działa on poprawnie.
Po pierwsze jest problem z przyciskami. Nie wiem co zrobić, aby program reagował na przyciski po jego uruchomieniu. Wiem, że powinienem je umieścić w pętli While, ale pętla While zawarta jest w pętli Case.
Po drugie w drugim wykonywanym stanie przepływ danych się zapętla i nie chcą one przejść do kolejnego stanu.
Bardzo proszę o pomoc.
Program sterujący stanami urządzenia do badania krwii
Program sterujący stanami urządzenia do badania krwii
- Załączniki
-
- Badanie krwi.vi
- (45.59 KiB) Pobrany 437 razy
Ostatnio zmieniony 20 wrz 2017 06:56 przez Imerman, łącznie zmieniany 1 raz.
-
- Posty: 96
- Rejestracja: 20 lut 2012 12:30
- Wersja środowiska: LabVIEW 2014
- Lokalizacja: Katowice / Ruda Śląska
Program sterujący stanami urządzenia do badania krwii
To jest jakieś przykładowe zadanko na egzamin CLD? Wszystkie zadania z CLD zasadniczo posiadają taki właśnie schemat funkcjonalny jak twoja aplikacja, więc polecam ściągnięcie sobie Preparation E-kitu do CLD z https://lumen.ni.com/nicif/us/ekitcldex ... tent.xhtml. Tam znajdziesz 4 przykładowe zadania z dokładnymi specyfikacjami, które możesz sobie podejrzeć jak działają, lub wręcz wykorzystać sporą część architektury programu.
Ostatnio zmieniony 19 sty 2013 02:00 przez may, łącznie zmieniany 1 raz.
Program sterujący stanami urządzenia do badania krwii
Hej co do architektury programu to po pierwsze dałeś za dużo pętli i za dużo struktur case. Wystarczy jedna pętla i jeden case. DO pętli while dodaje się shift rejestry które pamiętają wszystkie używane zmienne a kontrolki i indykatory powinny znajdować się w pętli ale nie w case. No i późnienie pętli potrzebne do oszczędzenie procesora. Proponuje indykatory pogrupować w klastry, a kontrolki włożyć do tablicy będzie łatwiej używać.
Wrzucam przykład opisanej struktury
.
Wrzucam przykład opisanej struktury
.
Extensa - certyfikowani programiści LabVIEW z Krakowa.
Program sterujący stanami urządzenia do badania krwii
Widzę, że nie tylko ja nad tym siedzę. Próbowałem zrobić ten program używając struktury Event, tylko z tego co udało mi się wyczytać. Kiedy już zarejestruje pierwszy event i program ruszy to jest nieczuły na kolejne. Miałby ktoś pomysł jak to zmodyfikować? Czy zupełnie odejść od Eventów? Wiem, że kod nie jest zbyt ładny itd ale to powiedzmy wersja robocza. Z góry dziękuje za pomoc!
Link do projektu:
https://www.dropbox.com/s/4ic6b2s49rtwb ... Device.rar
Link do projektu:
https://www.dropbox.com/s/4ic6b2s49rtwb ... Device.rar
Program sterujący stanami urządzenia do badania krwii
Hej jogo,
co do Twojego programu to uważam, ze architektura jest dobrze dobrana, tylko na Twoim miejscu zrezygnowałabym ze struktury event w stanie "wait for event" zamiast tego proponuje wstawić opóźnienie pętli i w tym stanie po prostu sprawdzać wartości przycisków
co do Twojego programu to uważam, ze architektura jest dobrze dobrana, tylko na Twoim miejscu zrezygnowałabym ze struktury event w stanie "wait for event" zamiast tego proponuje wstawić opóźnienie pętli i w tym stanie po prostu sprawdzać wartości przycisków
Extensa - certyfikowani programiści LabVIEW z Krakowa.
-
- Posty: 96
- Rejestracja: 20 lut 2012 12:30
- Wersja środowiska: LabVIEW 2014
- Lokalizacja: Katowice / Ruda Śląska
Re: Program sterujący stanami urządzenia do badania krwii
Tak z ciekawości, jakie są przeciwwskazania do użycia struktury Event w takim wypadku?
Program sterujący stanami urządzenia do badania krwii
Ponieważ w tym przypadku struktura event znajduje się w stanie "wait for event" do którego po wykonaniu zdarzenia (np. start) nigdy nie wraca,dlatego kolejne wygenerowane zdarzenia nie są obsługiwane, jednakże struktura event zbiera i kolejkuje wszystkie wygenerowane zdarzenia (co prawdopodobnie powoduje wieszanie się programu).
Extensa - certyfikowani programiści LabVIEW z Krakowa.