Maszyna stanów - problem z przejściem w strukturze Case

Tematy związane z tworzeniem dużych aplikacji. Zaganiednia dotyczące architektury oraz zasad tworzenia optymalnych rozwiązań.
madalek121
Posty: 2
Rejestracja: 30 cze 2017 13:05
Wersja środowiska: LabVIEW 2016

Maszyna stanów - problem z przejściem w strukturze Case

Post autor: madalek121 »

Witam,
mam problem z rozwiązaniem przejścia do wyboru produktu. Chodzi mi o to że jak dojdę do wartości 1zł będę mógł wybrać produkt, ale też jeszcze wpłacać pieniądze (gdyż posiadam produkty jeszcze o wartości 1,5zł i 3zł). Teraz ten program jak dojdzie do 1zł przechodzi do wybierania produktu, lecz da się wybrać tylko ten produkt za 1zł i nie da się dopłacać pieniędzy.
Załączniki
produkty.vi
(11.77 KiB) Pobrany 412 razy
Kasa.vi
(12.14 KiB) Pobrany 415 razy
Maszyna.vi
(31.19 KiB) Pobrany 389 razy
Maszyna stanów.png
Awatar użytkownika
Pitol
Moderator
Posty: 984
Rejestracja: 19 lip 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Kraków

Maszyna stanów - problem z przejściem w strukturze Case

Post autor: Pitol »

Jak warunek większy/równy od 1 zostanie spełniony to Twoja maszyna stanów od razu przechodzi to stanu Wybierz produkt.

Jeśli możesz, to wstaw jeden stan "Idle", w którym masz strukturę Event. Każdy przycisk będzie generował jakąś akcję (np. wciśnięcie przycisku z kwotą powoduje przejście do stanu "Przelicz Hajs", a wciśnięcie produktu przejdzie do stanu "Wydaj Produkt") a po tej akcji następuje powrót do "Idle".

Jeśli jednak chciałbyś zrobić tę maszynę stanów bez struktury Event to musisz po pierwsze przyciski do wyboru produktu mieć na zewnątrz Case, aby reagować na nie przed wejściem w odpowiedni stan. Wewnątrz stanu "1 - wpłać" musisz zrobić warunek, że jak jakiś produkt jest naciśnięty to ma sprawdzić czy hajs się zgadza i wydać albo nic nie robić i wrócić do stanu "1 - wpłać".

PS. To wszystko pisałem bez zaglądania do kodu bo nie mam LV16 :)
ObrazekObrazekObrazek
Chcesz taki podpis? Zajrzyj tutaj
Awatar użytkownika
micard
Posty: 207
Rejestracja: 30 wrz 2011 11:28
Wersja środowiska: LabVIEW 2017
Kontakt:

Maszyna stanów - problem z przejściem w strukturze Case

Post autor: micard »

spróbuj maszyny stanów od JKI:
http://sine.ni.com/nips/cds/view/p/lang/da/nid/209025
https://www.youtube.com/watch?v=XJFujhIuZdU

łatwo, miło i przyjemnie, a do tego spora rzesza wspierających to ludzi.
madalek121
Posty: 2
Rejestracja: 30 cze 2017 13:05
Wersja środowiska: LabVIEW 2016

Maszyna stanów - problem z przejściem w strukturze Case

Post autor: madalek121 »

Dzięki za pomoc, zrobiłem to z strukturą Event - jak polecał Pitol.
Program działa, choć musiałem trochę pozmieniać w nim.

Temat do zamknięcia.
ODPOWIEDZ