Este artigo é o quarto de uma série que faz uso do PC em aplicações mecatrônicas. Conforme dissemos nos anteriores (MEC289 e MEC290 e MEC292) ele foi escrito em 2002 quando os computadores ainda tinham portas paralelas. Se você tem um velho computador com porta paralela pode aproveitar os projetos e ensinamentos desta série de artigos.
Agora que sabemos como controlar uma saída e analisar uma entrada da porta paralela, iremos neste artigo exercitar um pouco da programação LOGO no controle de um motor de corrente contínua.
Antes de começarmos o assunto novo, vamos analisar as questões que deixamos em aberto no ultimo artigo:
Questão 1
Fazer um programa onde: ao se pressionar a chave na placa, o LED acende, e quando se solta, ele se apaga.
Basicamente, modificamos o nosso último programa retirando os botões de Liga/Desliga, deixando somente o botão de Fim. Na função Vechave acrescentamos os procedimentos LIGA LED e DESLIGA LED. Na figura 1 temos o fluxograma e, na sequência, o código do programa.
Questão 2
Fazer um programa onde, ao se pressionar a Chave na placa, o LED se acende e quando se solta, a chave e o LED permanecem acesos; se pressionar a chave novamente, o LED se apaga, e assim sucessivamente.
Aqui, utilizamos a mesma estrutura anterior, com a diferença que agora introduzimos as variáveis “COND_LED” e COND_CHAVE que indicam a condição do LED (Aceso/Apagado) e a condição da última leitura da chave (pressionada/ não pressionada). Quando houver uma transição de chave não pressionada para pressionada, muda-se a condição do LED: se estiver aceso, se apaga, e vice-versa. Na figura 2 temos o fluxograma e na sequência o código do programa.
A figura 3 ilustra a aparência dos programas das questões 1 e 2.
Neste ponto, vamos começar um assunto novo que é o controle de um motor de corrente contínua, onde utilizaremos tudo o que aprendemos até aqui e mais algumas funções do LOGO. Antes de sair programando, vamos analisar como acionar um motor de corrente contínua.
Na figura 4 temos um motor do tipo empregado em brinquedos. Note que temos dois terminais para a alimentação do motor.
Ligando uma pilha ao motor (figura 5), ele irá girar constantemente em um sentido, por exemplo, no sentido horário. Para inverter a ligação, é só inverter a conexão que é mostrada na figura 6.
Em vez de utilizar a mão para conectar a alimentação ao motor (figura 5) podemos empregar 2 relés como ilustra a figura 7.
Vamos usar um relé com contatos normalmente aberto (NA) e normalmente fechado (NF), e para acionar sua bobina, através da porta paralela do PC, utilizaremos um transistor NPN. Observe no esquema do controle da mesma figura. Como no acionamento do LED, usaremos as linhas de dados D1 e D2, sendo que a linha de dado D1 aciona o relé 1 e a linha de dado D2 aciona o relé 2.
Empregando essas duas linhas, teremos 4 possibilidades de acionamento como mostra a tabela 1.
Para exemplificar, verifique a sequência dessas 4 alternativas na figura 8.
A figura 9 apresenta uma sugestão de montagem para o circuito.
Note que agora estamos utilizando um suporte para 4 pilhas, e isso foi necessário porque usamos relés e motor de 6 V.
Teste o circuito antes de conectar ao PC, lembrando sempre que ligações erradas podem danificar a porta paralela. Colocando-se uma tensão positiva (+6 V) no pino 3 do D8-25, o motor deverá ligar o relé 1 e girar em uma determinada direção, esquerda por exemplo; mas se colocarmos a tensão no pino 4 do DB-25, irá ligar o relé 2 e o motor irá, girar na direção oposta, no nosso exemplo para a direita.
Ótimo! Agora que temos certeza que o hardware funciona, vamos ligá-lo ao PC.
Inicie o ambiente do LOGO para podermos testar o funcionamento do motor.
Antes disso, vamos fazer a conversão binário para decimal para termos os valores correspondentes às possibilidades de acionamento, conforme ilustra a tabela 1.
Os acionamentos dos relés estão nas linhas D1 e D2, e para acionar o relé 1 temos que escrever 1 na linha D1 e o mesmo acontece para o relé 2 escrevendo na linha Dz. Não esquecendo que na linha D0 temos conectado o nosso LED que, nesse caso, estará sempre apagado.
Com isso, chegamos a tabela 2 que apresenta os valores em decimal.
Agora, na linha de comando do LOGO, teste os comandos da tabela 2 e veja o resultado.
Excelente! Já temos o nosso circuito funcionando e controlado pelo PC, vamos agora executar o programa abaixo:
Teremos como resultado a figura 10. Observe que utilizamos os comandos criecaixalistagem e adicionenacaixalistagem para criar uma lista de opções de comandos de acionamento do motor.
Quando apertamos o botão de “Executa”, o procedimento EXECUTA irá verificar qual opção da caixa de listagem está selecionada através dos comandos se e são iguais, e acionando o motor.
Caro leitor, com este artigo terminamos mais uma etapa.
Enquanto você se prepara para acessar o próximo, tente modificar o programa de controle do motor para colocar mais uma opção na lista, algo que faça com que o motor se alterne entre rodar para a direita e para a esquerda em um intervalo de 2 segundos.
Como sugestão, utilize o comando de temporizador.