sexta-feira, 27 de junho de 2014

Uso de encoder no CLP


Encoder

Soma de pulsos independente do sentido de giro

Com o XG5000 aberto, criamos um novo projeto.

Inserimos uma flag (chave NO) para que o processo esteja sempre ligado, F99.


Inserimos uma função que moverá o valor lido do encoder para ser armazenado em uma variável.
Observação: o nome da flag responsável por ler esses pulsos do encoder é a K262.


Após isso o programa deverá estar como no exemplo abaixo:


Habilitamos o canal 0.


Inserimos a função end.

Vamos até Embedded Parameter e clicamos duas vezes sobre a aba HSC.


Configuramos como mostra abaixo:


Observação: 1-Phs 1-ln x1 corresponde a leitura em apenas em um canal.


Soma e subtração de pulsos com sentido estabelecido
Devemos realizar (com excessão do último passo) todos os processos anteriores para subtrair em um sentido e somar no outro.
A configuração do último passo é:


Sendo que, ao selecionar 1-Ph 2-ln x1 fará com que o mesmo ocupe dois canais. Lendo em 1 fase, porém, em duas linhas.

Soma e subtração com o número de pulsos quadriplicado e sentido estabelecido
Devemos realizar (com excessão do último passo) todos os passos do primeiro processo para subtrair em um sentido e somar no outro e multiplicar em 4 vezes o número de pulsos.
A configuração do último passo é:


Sendo que, ao selecionar 1-Ph 2-ln x1 fará com que o mesmo ocupe dois canais. Lendo em 1 fase, porém, em duas linhas.

Soma e subtração com o número de pulsos quadriplicado e sentido estabelecido
Devemos realizar (com excessão do último passo) todos os passos do primeiro processo para subtrair em um sentido e somar no outro e multiplicar em 4 vezes o número de pulsos.
A configuração do último passo é:


Dessa forma ele usará as duas fases e multiplicará ambas por 4, isso fará com que o número de pulsos por revolução no encoder se torne 4 vezes maiores a cada revolução.


Flags dentro da função HSC:
Counter Enable – Habilita o canal;
Counter Internal Preset Enable – reseta o valor de contagem;
Comparador Output Enable – armazena o número de pulsos em um flag própria para que possa ser comparada;
Latch – Retém o valor de pulsos da última contagem do encoder após ter sido desligado e ligado;
Internal Preset Settings Value – permite que o valor atual da variável em quantidade de pulsos seja alterado para o inserido por essa word.


Exemplos:
Comparação:


Armazenar o último valor de contagem:






Nenhum comentário:

Postar um comentário