Controlando um Servo.

article featured image

Esta aula tem como objetivo controlar um servo através da utilização de um potenciómetro.

Mas afinal o que é um servo?

Em primeiro lugar, não podemos confundir um servo com um motor. Enquanto um motor gira o seu veio central 360º consecutivamente, um servo tem, normalmente, um ângulo de viragem de apenas 180º.

Para  que serve?

O uso deste pode ser muito diversificado, podem ser usados para abrir ou fechar uma janela, uma porta, fazer o deslocamento de um sensor de movimento (radar)...

Um servo é constituído por três fios: preto, correspondente ao neutro; vermelho, será o positivo; e branco/amarelo/laranja que serve para receber os dados, neste caso do nosso Arduíno.

Mas vamos ver o circuito e o material que vamos precisar para a aula de hoje: Arduíno,  breadboard, potenciómetro, servo e 8 jumpers.

Depois de termos ligado o nosso circuito, vamos passar à programação do mesmo.

Como sempre, vamos começar pela definição de algumas variáveis que vão ser necessárias para o desenrolar do nosso projeto e chamo a atenção para o uso de uma biblioteca (servo.h) necessária para conseguirmos comunicar com o servo;

No void setup() vamos inicializar o monitor série, que nos vai permitir controlar alguns valores importantes, dizer ao nosso servo (apontador) qual a porta que este vai usar e identificar o tipo de pinMode do potenciómetro;

Neste momento há a necessidade de verificar os pontos de viragem do nosso servo, isto é, verificar qual a posição mínima e máxima à qual o nosso servo responde e isto varia de servo para servo. Assim sendo, vamos ter que indicar posições ao nosso servo para achar estes pontos e o melhor processo é utilizar o monitor série e ir dizendo valores até verificarmos que o nosso servo não responde a um novo valor mais pequeno, posição mínima, ou a um valor maior, posição máxima;

Depois de achados estes dois pontos podemos fazer uma experiência que é posicionar o nosso servo desde o valor mínimo até ao valor máximo e vice-versa;

Agora que já sabemos como está a funcionar o nosso servo vamos colocá-lo a funcionar com o potenciómetro. Como vimos na aula 10, a leitura feita ao potenciómetro é entre 0 (0V) e 1023 (5V). Portanto, vamos ter de pegar neste valor e transformá-lo numa escala entre o valor mínimo e máximo do nosso servo, no meu caso o valor mínimo é 21 e o valor máximo é 180. Vejamos como:

É um projeto bastante interessante que poderá ter diversos fins.

Espero que tenham gostado de mais esta aula e cá vos espero na próxima. Obrigado.