Sei sulla pagina 1di 3

Programa Arduino

Figura 13. Arduino y Servomotor conectados


Figura 14. Programa

Descripción del programa en Arduino

Primeramente, es importante mencionar que el servomotor es una salida analógica,


debido a que éste no consta simplemente de dos estados, sino que, puede tener distintos
valores en los que se le puede variar tanto su velocidad, sentido y grados de giro.

Arduino no contiene salidas analógicas, pero para esto, se utilizó una salida "PWM",
ésta salida es un modulador de ancho de pulso, la cual que hace que a partir de una salida
digital se genere una salida analógica para que el servo realice lo que sea necesario.

Un botón, por el contrario, es una salida digital que solo cuenta con dos estados de
acción: cuando esta presionado y cuando no.

Esto fue importante para saber dónde conectar tanto el servomotor como el botón
en el arduino.

Una vez dicho esto, se puede proceder con la explicación del programa:

Primero, se tuvo que incluir una librería, la que se puede apreciar al principio del
código como: "VarspeedServo.h", la cual se encarga específicamente de controlar tanto la
velocidad y la posición del servomotor.

Luego, se define qué componente se va a controlar con esa librería, en este caso se
llamó al servomotor: "servom"
Después se declararon las variables. Como podemos ver, la primera variable
corresponde al botón, el cual se indica que está conectado al pin 2 de las salidas digitales.
También se declara la variable "lectura" la cual representa el estado del botón (si éste está
presionado o no).

Luego en la sección "void setup" es donde se declara qué es lo que se tiene y como
va a ser usado, en este caso se declaró que se va a tener un componente llamado "servom",
el cual se le añade la función "attach" que proviene de la librería previamente definida, este
componente estará conectado en el pin 3, que corresponde a un pin "PWM"

La función "Pin mode" sirve para comunicarle al arduino como es que se va a


comportar un componente, sobre todo cuando son componentes digitales (como lo es el
botón), se tiene que especificar si éste se va a comportar como una entrada o una salida, en
este caso se comportará como una entrada , ya que el movimiento del servo motor va a
depender del valor que tomará este botón, entonces se ingresa la palabra “input”. Si el valor
es 1 significa que está presionado y si es 0, que no está presionado.

En la parte de "void loop” se incluye la estructura del programa, en la cual se incluye


todo lo que va a estar sucediendo. Un void loop es un ciclo que va a estar repitiéndose y
evaluándose constantemente.

En esta sección primeramente se incluye la función "Digital Read" la cual interpreta


que valor está tomando un componente, en este caso el botón, el cual al estar presionado
es un 1 y cuando no es un 0, en este caso es “high” y “Low” respectivamente.

Por último, se establecen las condiciones con "if" las cuales nos dicen:

Si el botón registra un valor "high" (el cual significa presionado), éste se moverá 180
grados a una velocidad de 100 revoluciones por minuto.

Y también que si el botón registra un valor "low" (sin presionar), este regresará hacia
la posición de 0 grados con la misma velocidad de 100 revoluciones por minuto .

Potrebbero piacerti anche