sexta-feira, 30 de novembro de 2018

Micro Servo Motor 9g


Aprendendo a controlar um servo motor


       Nesse projeto, falarei um pouco sobre os servos, e mostrar seu funcionando. Os servos motores são usados em várias aplicações quando se deseja movimentar algo de forma precisa e controlada. Para isso, deve-se seguir as recomendações de seu datasheet, para não danificá-lo e usá-lo de forma adequada.

Micro servo 9g


Fonte: CFB Cursos

          Nessas imagens, está sendo apresentado o servo motor 9g e suas especificações, levando em conta esses dados, já podemos brincar um pouco com nossos servos. Para isso, siga as recomendações abaixo:

Material de apoio: 

Componentes: 
  • 1 Arduino
  • 1 Protoboard
  • Servo motor 9g
  • 1 Potenciômetro
  • 1 suporte para pilhas AA
  • 4 Pilhas AA
  • Fios Jumpers

Esquemático:


Fonte: Própria Autora

Exemplo 1: Servo controlado com potenciômetro

O servo será controlado com um potenciômetro, de acordo com as posições do potenciômetro, o servo irá rotacionar de 0º à 180º.





Código:

#include <Servo.h>

#define pot A0 //Potenciômetro

Servo s1; //Servo

int angS1; //Ângulo do servo
int a;

void setup() {
  s1.attach(2); //Porta de controle que o serve está ligado
  angS1=0; //Inicializa em 0
  s1.write(angS1); //0 a 180
  Serial.begin(9600);
}

void loop() {
  angS1=map(analogRead(pot),0,1023,0,180);
  s1.write(angS1);
  delay(100);
  
}

Exemplo 2: Servo Automático

O servo está funcionando de forma automática, sua rotação varia de 0º à 180º, apos isso, reinicia o processo.



Código:

#include <Servo.h>

#define pot A0 //Potenciômetro

Servo s1; //Servo

int angS1; //Ângulo do servo

void setup() {
  s1.attach(2); //Porta de controle que o serve está ligado
  angS1=0; //Inicializa em 0
  s1.write(angS1); //0 a 180
  Serial.begin(9600);
}

void loop() {
  angS1=0;
  s1.write(angS1);
  delay(3000);

  angS1=90;
  s1.write(angS1);
  delay(3000);

  angS1=180;
  s1.write(angS1);
  delay(3000);
}

Exemplo 3: Servo com leitura de posição e monitor serial

O monitor serial, mostrará as posições de atuação do servo, há uma leitura de posição de  de 0º , 90º e 180º a cada 3 segundos.



Código:

#include <Servo.h>

#define pot A0 //Potenciômetro

Servo s1; //Servo

int angS1; //Ângulo do servo
int a;

void setup() {
  s1.attach(2); //Porta de controle que o serve está ligado
  angS1=0; //Inicializa em 0
  s1.write(angS1); //0 a 180
  Serial.begin(9600);
}

void loop() {
  angS1=0;
  s1.write(angS1);
  a = s1.read();
  Serial.println(a);
  delay(3000);

  angS1=90;
  s1.write(angS1);
  a = s1.read();
  Serial.println(a);
  delay(3000);

  angS1=180;
  s1.write(angS1);
  a = s1.read();
  Serial.println(a);
  delay(3000);
}

2 comentários:

  1. Shoe de bola, parabéns, e essa música nos videos de quem é gostei?

    ResponderExcluir
    Respostas
    1. Obrigada! O nome é Eldar Kedem - Present Moment - You And Me

      Excluir

Micro Servo Motor 9g

Aprendendo a controlar um servo motor        Nesse projeto, falarei um pouco sobre os servos, e mostrar seu funcionando. Os servos mo...