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-IN x1 corresponde a leitura em apenas um canal.
Soma e subtração de pulsos com sentido estabelecido
Devemos realizar (com exceçã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-In 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 quadruplicado e sentido estabelecido.
Devemos realizar (com exceçã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-In x1 fará com que o mesmo ocupe dois canais. Lendo em fase, porém, em duas linhas.
Soma e subtração com o número de pulsos quadruplicados e sentido estabelecido.
Devemos realizar (com exceçã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 uma 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 Vallue - permite que o valor atual da variável em quantidade de pulsos seja alterado para o inserido por essa word.
Exemplo:
Comparação:
Armazenar o último valor de contagem: