ESP8266 - Atuador

Este tutorial ensina você a usar o ESP8266 para controlar um Atuador Linear. Em detalhes, vamos aprender:

Existem dois tipos de atuadores lineares:

Este tutorial é para atuador linear sem feedback. Se você tem interesse em aprender sobre atuador linear com feedback, consulte o tutorial ESP8266 - Atuador com Feedback.

Sobre o Atuador Linear

Atuador linear estende e retrai

Pinagem do Atuador Linear

Um Atuador Linear tem dois fios:

  • O fio positivo geralmente é vermelho.
  • O fio negativo geralmente é preto.
Pinagem do atuador linear

Como Funciona

Ao comprar um atuador linear, é essencial saber a tensão de que ele precisa para funcionar. Por exemplo, vamos considerar um atuador linear de 12V.

Quando você alimenta o atuador linear de 12V com uma fonte de 12V:

  • Conecte 12V e GND ao fio positivo e ao fio negativo, respectivamente: o atuador linear vai estender na velocidade máxima até chegar ao limite.
  • Conecte 12V e GND ao fio negativo e ao fio positivo, respectivamente: o atuador linear vai retrair na velocidade máxima até chegar ao limite.

Se a alimentação do atuador for cortada, o processo de extensão ou retração será interrompido.

※ Nota:

Em motores DC, servo motores e motores de passo sem redução, quando há uma carga, se a alimentação for cortada, eles não mantêm a posição. Em contraste, um atuador pode manter a posição mesmo quando a alimentação é removida enquanto carrega uma carga.

Se a tensão da fonte de alimentação dos atuadores lineares for menor que 12V, o atuador linear ainda vai estender/retrair, mas não na velocidade máxima. Isso significa que mudar a tensão da fonte pode afetar a velocidade do atuador linear. No entanto, essa abordagem não é muito usada devido à dificuldade de controlar a tensão da fonte. Por isso, a tensão da fonte é mantida constante, e a velocidade do atuador linear é regulada por um sinal PWM. Quanto maior o ciclo de trabalho do PWM, mais rápido o atuador linear estende/retrai.

Como controlar o atuador linear

Como controlar um atuador linear usando o ESP8266

Gerenciar um atuador linear envolve:

  • Estender o atuador linear na sua taxa máxima.
  • Retrair o atuador linear na sua taxa máxima.
  • (Opcional) Ajustar a velocidade de extensão e retração.

O ESP8266 consegue gerar um sinal que pode ser usado para controlar um atuador linear, no entanto, a tensão e a corrente desse sinal são baixas demais para serem usadas como estão. Por isso, é preciso usar um driver de hardware para fazer a ponte entre o ESP8266 e o atuador linear. O driver tem duas funções:

  • Amplificar o sinal de controle do ESP8266 (tanto em tensão quanto em corrente)
  • Receber outro sinal de controle do ESP8266 para inverter a polaridade da fonte de alimentação, permitindo assim o controle da direção.

※ Nota:

  • Este tutorial pode ser usado para todos os atuadores lineares, sendo o atuador linear de 12V apenas um exemplo.
  • Ao controlar um atuador linear de 5V, mesmo que o pino do ESP8266 envie 5V (que é a mesma tensão do atuador linear), você ainda precisa de um driver entre o ESP8266 e o atuador linear, porque o pino do ESP8266 não fornece corrente suficiente para o atuador linear.

Existem vários tipos de chips e módulos disponíveis para drivers de atuador linear. Para este tutorial, vamos usar o driver L298N.

Sobre o Driver L298N

O Driver L298N pode ser usado para controlar atuador linear, motor DC e motor de passo. Este tutorial ensina você a usá-lo para regular o atuador linear.

Pinagem do Driver L298N

Pinagem do driver L298N

O Driver L298N tem dois canais, rotulados A e B. Isso significa que ele pode controlar de forma independente dois atuadores lineares ao mesmo tempo. Suponha que o atuador linear A esteja conectado ao canal A e o atuador linear B esteja conectado ao canal B. O Driver L298N tem treze pinos.

Os pinos comuns aos dois canais:

  • Pino VCC: este pino fornece energia ao atuador linear e pode ir de 5 a 35V.
  • Pino GND: este é um pino de terra que deve ser conectado a 0V (GND).
  • Pino 5V: este pino fornece energia ao módulo L298N e pode vir da saída de 5V de um ESP8266.

Pinos do canal A:

  • Pinos ENA: estes pinos são usados para controlar a velocidade do atuador linear A. Removendo o jumper e conectando este pino a uma entrada PWM, podemos controlar a velocidade com que o atuador linear estende e retrai.
  • Pinos IN1 e IN2: estes pinos são usados para controlar a direção de um atuador linear. Quando um deles é colocado em HIGH e o outro em LOW, o atuador linear vai estender ou retrair. Se as duas entradas estiverem em HIGH ou em LOW, o atuador linear vai parar.
  • Pinos OUT1 e OUT2: estes pinos são conectados ao atuador linear A.

Pinos do canal B:

  • Pinos ENB: são usados para regular a velocidade do atuador linear B. Retirar o jumper e conectar este pino a uma entrada PWM nos permitirá controlar a velocidade de extensão/retração do atuador linear B.
  • Pinos IN3 e IN4: são utilizados para controlar a direção de movimento de um atuador linear. Quando um deles está em HIGH e o outro em LOW, o um atuador linear vai estender ou retrair. Se as duas entradas estiverem em HIGH ou em LOW, o atuador linear vai cessar.
  • Pinos OUT3 e OUT4: são conectados a um atuador linear.

O driver L298N tem duas alimentações de entrada:

  • Uma para o atuador linear, com faixa de tensão de 5 a 35V, conectada aos pinos VCC e GND.
  • Uma para a operação interna do módulo L298N, com faixa de tensão de 5 a 7V, conectada aos pinos 5V e GND.

Remova todos os jumpers do driver L298N para simplificar.

Podemos gerenciar dois atuadores lineares de forma independente e simultânea com a ajuda de um ESP8266 e de um Driver L298N. Apenas três pinos do ESP8266 são necessários para controlar cada atuador linear.

※ Nota:

O restante deste tutorial vai focar no controle de um atuador linear pelo Canal A. O processo para controlar o outro atuador linear é semelhante.

Como Controlar o Atuador Linear

Vamos estudar a técnica de gerenciar um Atuador Linear com a ajuda de um driver L298N.

Diagrama de Ligação

Retire os três jumpers do módulo L298N antes de conectá-lo.

Diagrama de ligação do atuador linear com driver L298N e ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

Para mais informações, veja Pinagem do ESP8266 e como alimentar o ESP8266 e outros componentes.

Como Fazer o Atuador Linear Estender/Retrair

A direção de movimento do Atuador Linear pode ser gerenciada aplicando um nível lógico HIGH ou LOW aos pinos IN1 e IN2. A tabela abaixo mostra como gerenciar a direção nos dois canais.

Pino IN1 Pino IN2 Direção
LOW LOW Atuador Linear A para
HIGH HIGH Atuador Linear A para
HIGH LOW Atuador Linear A estende
LOW HIGH Atuador Linear A retrai
  • Estende o Atuador Linear A.
digitalWrite(IN1_PIN, HIGH); digitalWrite(IN2_PIN, LOW);
  • Retrai o Atuador Linear A
digitalWrite(IN1_PIN, LOW); digitalWrite(IN2_PIN, HIGH);

※ Nota:

A orientação do atuador linear pode ser mudada conectando os pinos OUT1 e OUT2 em outra ordem. Para isso, é necessário trocar os pinos OUT1 e OUT2 ou alterar o sinal de controle nos pinos IN1 e IN2 no código.

Como Impedir o Atuador Linear de Estender ou Retrair

O atuador linear vai parar de estender/retrair quando chegar ao limite. Além disso, podemos programá-lo para parar de estender/retrair antes de chegar ao limite.

Existem dois métodos para parar um atuador linear:

  • Reduzir a velocidade a 0
  • Desconectar a fonte de alimentação
analogWrite(ENA_PIN, 0);
  • Define os pinos IN1 e IN2 com o mesmo valor, LOW ou HIGH.
digitalWrite(IN1_PIN, LOW); digitalWrite(IN2_PIN, LOW);
  • Ou
digitalWrite(IN1_PIN, HIGH); digitalWrite(IN2_PIN, HIGH);

Como Controlar a Velocidade do Atuador Linear pelo Driver L298N

É fácil regular a velocidade do atuador linear. Em vez de colocar o pino ENA em HIGH, podemos produzir um sinal PWM no pino ENA. Isso pode ser feito:

  • Conectando um pino do ESP8266 ao ENA do L298N
  • Gerando um sinal PWM no pino ENA usando a função analogWrite(). O Driver L298N amplifica o sinal PWM para o atuador linear.
analogWrite(ENA_PIN, speed); // speed is a value from 0 to 255

A velocidade é um valor que vai de 0 a 255. Quando a velocidade é 0, o atuador linear para. Na velocidade 255, o atuador linear estende/retrai na sua velocidade máxima.

Código de Exemplo ESP8266

O código abaixo:

  • Aumenta o atuador linear até a sua velocidade máxima
  • Para o atuador linear
  • Diminui o atuador linear até a sua velocidade máxima
  • Para o atuador linear novamente
/* * Este código de ESP8266 NodeMCU foi desenvolvido por pt.newbiely.com * Este código de ESP8266 NodeMCU é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/esp8266/esp8266-actuator */ #define ENA_PIN 7 // The ESP8266 pin connected to the EN1 pin L298N #define IN1_PIN 6 // The ESP8266 pin connected to the IN1 pin L298N #define IN2_PIN 5 // The ESP8266 pin connected to the IN2 pin L298N // The setup function runs once on reset or power-up void setup() { // initialize digital pins as outputs. pinMode(ENA_PIN, OUTPUT); pinMode(IN1_PIN, OUTPUT); pinMode(IN2_PIN, OUTPUT); digitalWrite(ENA_PIN, HIGH); } // The loop function repeats indefinitely void loop() { // extend the actuator digitalWrite(IN1_PIN, HIGH); digitalWrite(IN2_PIN, LOW); delay(20000); // actuator will stop extending automatically when reaching the limit // retracts the actuator digitalWrite(IN1_PIN, LOW); digitalWrite(IN2_PIN, HIGH); delay(20000); // actuator will stop retracting automatically when reaching the limit }

Passos Rápidos

Para começar com o ESP8266 no Arduino IDE, siga estes passos:

  • Confira o tutorial como configurar o ambiente para o ESP8266 no Arduino IDE se esta for sua primeira vez usando o ESP8266.
  • Faça a ligação dos componentes como mostrado no diagrama.
  • Conecte a placa ESP8266 ao seu computador usando um cabo USB.
  • Abra o Arduino IDE no seu computador.
  • Escolha a placa ESP8266 correta, como (por exemplo, NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.

Retire os três jumpers do módulo L298N.

Copie o código acima e abra-o no Arduino IDE.

Clique no botão Upload no Arduino IDE para fazer o upload do código para o ESP8266.

Você vai observar:

  • O atuador linear vai estender até chegar ao limite, depois vai parar.
  • O atuador linear vai ficar nessa posição por um certo tempo.
  • O atuador linear vai retrair até chegar ao limite, depois vai parar.
  • O atuador linear vai ficar nessa posição por um certo tempo.
  • Esse processo será repetido continuamente.

Vídeo

Referências de Funções

Tutoriais Relacionados

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!