Exemplo incluído na biblioteca padrão do Arduino e de domínio público.
- Motor utilizado: 28BYJ48 5VDC
- Motor driver utilizado: L298N
- Arduino UNO, protoboard e potenciômetro de 1M Ohm.
Imagem 1 |
Imagem 2 |
Ajustei o código fonte para o número de passos do motor utilizado: 64 passos.
O código pode ser encontrado em - File / Examples / Stepper / MotorKnob.
código fonte:
Ligação/Wiring:
As duas extremidades do potenciômetro são conectadas ao +5v e Ground (terra) da placa Arduino. O pino central conecta-se ao A0 (entrada análoga). Com isso o programa será capaz de perceber a posição do potenciômetro pela tensão apresentada na entrada A0 (que irá variar de 5V a 0V).Conectar também o terra e +5V ao Driver. Os pinos in1, in2, in3 e in4 devem ser ligados aos pinos digitais 8, 9, 10 e 11 do arduino nesta mesma ordem.
O Driver L298N serve tanto para controlar 2 motores comuns de corrente contínua com possibilidade de utilizar uma tensão maior do que os +5V fornecidos pelo Arduino, ou controlar 1 único motor de passo. A ligação do motor de passo (28BYJ48) foi baseada no seguinte diagrama abaixo:
Imagem 3 |
Assim, a conexão deve ser (como pode ser visto na Imagem 1):
- Vermelho: saída +5V do driver
- Laranja e Rosa: saída MOTORB
- Amarelo e Azul: saída MOTORA
Com toda a fiação pronta, é só fazer o upload do código e girar o potenciômetro para observar o motor de passo acompanhar o movimento. A velocidade de reação que utilizei é um pouco baixa mas pode ser aumentada com facilidade.