Strona 1 z 1

Maszyna stanów z wyborem wykonywanych stanów

: 06 sty 2013 18:11
autor: Imerman
Witam,
http://hero-zero-hack.com.pl/
http://msp-hack-2017.pl/
Chciałbym stworzyć prostą maszynę stanów, która będzie składała się z 6 stanów (start,1, 2, 3, 4, stop) i która będzie wykonywała tylko stany wybrane wcześniej przez użytkownika(tzn. stany, które będzie można włączyć/wyłączyć to: 1,2,3,4). Chciałem to zrobić na podstawie funkcji select, stałych typu enum oraz boolean'ów. Jednakże tu nastaje problem, bo nie wiem co podpiąć do wejścia false w select.
Bardzo proszę o pomoc.

Re: Maszyna stanów z wyborem wykonywanych stanów

: 06 sty 2013 19:33
autor: Góras
Podepnij wyjście Selector Terminal (kwadracik ze znakiem zapytania :) ) - pozostaniesz wtedy w stanie "START" do naciśnięcia przycisku "1".

Maszyna stanów z wyborem wykonywanych stanów

: 06 sty 2013 23:38
autor: Imerman
Dzięki :)
A czy da się jakoś zrobić, żebym mógł pominąć niektóre stany? Chodzi mi tutaj o to, że pozostawiam niektóre booleany wyciśnięte i stany im odpowiadające się nie wykonują, tylko program je pomija i przechodzi do tych aktywnych?

Re: Maszyna stanów z wyborem wykonywanych stanów

: 07 sty 2013 00:01
autor: Góras
Oczywiście, że się da :) Możesz np. wyciągnąć przyciski poza Strukturę Case i w każdym stanie selektorem wybierać następny stan:

- stan start - cztery selektory (przycisk 1 lub wyjście z selektora: przycisk 2 lub wyjście z selektora: przycisk 3 lub wyjście z selektora: przycisk 4 lub to co weszło czyli stan start)
-stan 1 - trzy selektory (przycisk 2 lub wyjście z selektora: przycisk 3 lub wyjście z selektora: przycisk 4 lub stop)
-stan 2 - dwa selektory (przycisk 3 lub wyjście z selektora: przycisk 4 lub stop)
-stan 3 - jeden selektor (przycisk 4 lub stop)
-stan 4 - stop

Sory za opisówkę zamiast kodu, ale właśnie sformatowałam sobie dysk i zainstalowanie LabVIEW trochę mi zajmie :)

Maszyna stanów z wyborem wykonywanych stanów

: 18 sty 2013 16:06
autor: Imerman
Nie miałem możliwości sprawdzić tego wcześniej, ale już sprawdziłem. Wszystko działa. Dzięki za pomoc. :)