Neste exemplo, controlaremos a velocidade de um atuador linear com um Arduino e driver de motor.
Nota: Este tutorial pressupõe conhecimento prévio com princípios eletrônicos básicos, hardware e software Arduino. Se esta é a primeira vez que usa o Arduino, sugerimos aprender o básico de um dos muitos excelentes tutoriais para iniciantes disponíveis nas pesquisas do Google e do YouTube. Esteja ciente de que não temos os recursos para fornecer suporte técnico para aplicativos personalizados e não depuraremos, editaremos, forneceremos código ou diagramas de fiação fora desses tutoriais disponíveis publicamente.
Componentes
- 12V Linear Atuador
- Fonte de alimentação 12V
- Arduino
- Motorista
- Potenciômetro (opcional)
- Fios elétricos para fazer conexões e ferramenta de crimpagem ou ferro de solda
Fiação
Visão geral de hardware e software
Os motores DC em atuadores lineares requerem uma corrente alta (até 5A), se fôssemos conectar o atuador linear diretamente ao Arduino, esse consumo de alta corrente destruiria os pinos digitais do Arduino, pois eles são classificados apenas para 40mA cada. Portanto, usamos um driver de motor que pode receber um sinal PWM (modulação por largura de pulso) de baixa corrente da placa Arduino e emitir um sinal PWM de alta corrente para o atuador linear.
O driver do motor é conectado a dois pinos digitais PWM (pinos 10 e 11 no Arduino Uno). Definindo um desses pinos como LOW e o outro HIGH (consulte as linhas 18 e 19 no código abaixo), podemos estender o atuador na velocidade máxima. Para parar o atuador, definimos ambos os pinos para BAIXO (consulte as linhas 21 e 22 no código abaixo) e para inverter a direção do movimento podemos inverter a ordem dos pinos ALTO e BAIXO (consulte as linhas 24 e 25 no código abaixo). Também podemos ajustar a velocidade alterando a variável “Velocidade” para qualquer valor no intervalo [0, 255]; consulte a linha 17 no código abaixo.
Código
https://gist.github.com/Will-Firgelli/c0ef0871dc1946d75257e0c29dccae2a
Controle de velocidade variável com um potenciômetro
No exemplo acima, definimos manualmente a velocidade na linha 17 do código. No entanto, podem surgir situações em que queremos variar a velocidade do atuador no tempo. O método mais fácil de conseguir isso é usando um potenciômetro. UMA potenciômetro éum resistor variável de três terminais que pode atuar como um divisor de tensão. Girando o botão do potenciômetro, a voltagem de saída irá variar e podemos conectá-la ao pino analógico em um Arduino para definir uma velocidade variável.
Fiação
Visão geral de hardware e software
Conforme mencionado acima, um potenciômetro é um dispositivo rotativo que altera a resistência quando o botão é girado. Ao conectar os dois pinos externos do potenciômetro a 5V e GND, e o pino do meio ao pino analógico do Arduino, A0, um divisor de tensão é criado. Conforme o botão é girado, o Arduino irá ler leituras analógicas variando de [0, 1023].
Para valores na faixa [512, 1023], queremos que o atuador se estenda e para os valores [0, 511], queremos que o atuador se retraia, isso pode ser alcançado com uma instrução if () / else simples nas linhas 22 e 28 em o código abaixo. Então, usando a função map () (linhas 23 e 29 no código abaixo), podemos converter isso em um sinal PWM que controlará a velocidade e a direção do atuador.
Código
https://gist.github.com/Will-Firgelli/d2cdf69edc829974885984b3fb8e4856