LIBRERIAS

EEPROM ETHERNET FIRMDATA GSM
LIQUIDCRYSTAL SD SERVO SPI
SOFTWARESERIAL STEPPER TFT WIFI
WIRE      

 

  Servo  
 

Esta librería Permite controlar diversos servos para aeromodelismo. Los servos estandar suelen girar 180º, pero hay otros tipos de servos que pùeden rotar 360º (más información).

la librería Servo soporta, en la mayoría de las placas arduino, hasta 12 motores. En arduino Mega la posibilidad se extiende a 48. En las placas diferentes a la Mega, la utilización de esta librería desactiva  analogWrite() (PWM) en los pines 9 y 10. En la Mega, hasta 12 servos pueden ser utilizados sin interferir con la funcionalidad PWM; uso de 12 a 23 motores desactivará PWM en los pines 11 y 12.

Funciones:

  • attach(). Vincula la variable Servo a una patilla.
    • Sintaxis: servo.attach(pin) y servo.attach(pin,min,max)
    • pin: Patilla a la que está conectada la señal de control del servo
    • min: Anchura de pulso en microsegundos que se corresponde con 0 grados. Por defecto está en 544.
    • max: Anchura de pulso en microsegundos que se corresponde con 180 grados. Por defecto está en 2.400.
  • write(). hace girar el eje del servo un número de grados (0º a 180º).
    • Sintaxis: servo.write(ángulo)
    • Ángulo: De 0 a 180
  • writeMicroseconds(). Indica la anchura de pulso (en microsegundos) al servo. Los parámetros para un servo estándar son: 1000 us para un desplazamiento total a la izquierda, 2000 para el tope a la derecha y 1500 para posicionarlo en medio. Si se quiere un control exacto habrá que estudiar las hojas de datos de cada servo (y del fabricante) para averiguar exactamente la correspondencia de valores entre microsegundos y posición. Ojo que no es directamente proporcional (no se puede hacer una regla de tres). Lo mejor es hacer un estudio con un osciloscopio.
    • Sintaxis: servo.writeMicroseconds(uS)
    • uS: Valor tipo entero (int) que indica los microsegundos.
  • read(). Devuelve el ángulo actual del servo (valor entero int). Es el último valor pasado a la función write().
    • Sintaxis: servo.read().
  • attached(). Chequea si la variable Servo está vinculada a una patilla y devuelve TRUE si lo está. En caso contrario devuelve FALSE.
    • Sintaxis: servo.attached()
  • detach(). Desvincula el servomotor de su patilla. Si todas las variables se desvinculan, los pines 9 y 10 pueden utilizarse para salidas PWM con analogWrite().
    • Sintaxis: servo.detach().


Ejemplos:

  • Knob: Controla el desplazamiento de un servo mediante el giro de un potenciómetro
  • Sweep: Realiza un barrido gardo a grado del giro de un servo (0º a 180º).
  •