Máquina de estados: termo de CLP explicado de forma simples
SequênciasComo o seletor de uma máquina de lavar roupa: lavar, enxaguar, centrifugar, cada um com o seu trabalho. Uma máquina de estados lembra em que etapa um trabalho está e só faz o que essa etapa permite.
Um programa que lembra em que parte de um trabalho está. Define comandos e mudanças permitidas para cada parte.
Máquina de estados em uma máquina real
Uma máquina de estados é um programa que lembra em que parte de um trabalho está, usando um único valor guardado. Esse valor é o estado. Em cada estado o programa sabe que comandos dar e quais mudanças são permitidas.
Ela costuma ser escrita em texto, com CASE e um número como State. 10 pode significar Running e 30 Held. O número é só um código, não uma duração de tempo.
É outro jeito de escrever uma sequência. Um diagrama a desenha, e uma máquina de estados a mantém em código. Antes de escrever uma, liste os comandos de cada estado e as suas saídas permitidas.
Máquina de estados: um exemplo resolvido
Uma batelada pode estar Running, Held ou Complete. Aperte Hold enquanto ela está em Running e o estado passa para Held, em que os comandos ficam desligados. Cada estado tem comandos diferentes, então o programa não consegue misturá-los.
Máquina de estados: um erro comum
Mudar o estado de todo lugar do programa. Mantenha as saídas de cada estado no seu próprio ramo, para poder conferi-las em um só lugar.
Ainda com dúvida sobre este? Pergunte no Vestiário.