Motores tipo servo e de passos
Anderson M. Amaral
Agosto - 2017
 
 
Motor DC
Servo motor
Servo
#include <Servo.h>servo.attach(pin): Indica qual o pino de comunicação com o Servoservo.write(angle): Informa a nova posição para o servoservo.read(angle): Recebe o último ângulo informadoExemplos\Servo\Sweep#include <Servo.h>
Servo myservo;  // Armazena as informações do servo
int pos = 0;    // Variável global para manipular a posição
void setup() {
  myservo.attach(9);  // Indica que o servo está no pino 9
}
void loop() {
  for (pos = 0; pos <= 180; pos += 1) { // Vai de 0 a 180 graus em passos de 1 grau
    myservo.write(pos);                 // Nova posição
    delay(15);                          // Aguarda um tempo para o servo atingir a posição final
  }
  for (pos = 180; pos >= 0; pos -= 1) { // Move-se no sentido inverso ao anterior
    myservo.write(pos);
    delay(15);
  }
}
 
#include <Stepper.h>stepper.Stepper(steps, pin1, pin2, pin3, pin4): Número de passos por volta e pinos utilizadosstepper.setSpeed(rpm): Ajuste da velocidade de rotação em RPMstepper.step(steps): Dá um determinado número de passosExemplos\Stepper\stepper_oneStepAtATime#include <Stepper.h>
const int stepsPerRevolution = 500;
Stepper myStepper(stepsPerRevolution, 8, 10, 9, 11);
int stepCount = 0;         // number of steps the motor has taken
void setup() {
  Serial.begin(9600);
  myStepper.setSpeed(25);
}
void loop() {
  // step one step:
  myStepper.step(1);
  Serial.print("steps:");
  Serial.println(stepCount);
  stepCount++;
  delay(50);
}