ESP8266 - Atuador
Este tutorial ensina você a usar o ESP8266 para controlar um Atuador Linear. Em detalhes, vamos aprender:
- Como um atuador linear funciona
- Como programar o ESP8266 para fazer um atuador linear estender ou retrair
- Como programar o ESP8266 para controlar a velocidade de um atuador linear
Existem dois tipos de atuadores lineares:
- Atuadores lineares sem feedback: normalmente são usados para se mover até o ponto mais distante e não podem ser controlados para parar em uma posição específica.
- Atuadores lineares com feedback: podem ser controlados para se mover até uma posição específica porque têm um sinal de feedback.
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.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Atuador Linear

Pinagem do Atuador Linear
Um Atuador Linear tem dois fios:
- O fio positivo geralmente é vermelho.
- O fio negativo geralmente é preto.

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 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

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.

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.
- Retrai o Atuador Linear A
※ 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
- Define os pinos IN1 e IN2 com o mesmo valor, LOW ou HIGH.
- Ou
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.
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
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.