7.12. Control de Servos
En este ejemplo vamos a realizar el control de dos servos en tino Io haremos
modificando la velocidad de giro y en otro el éngulo girado
ro
pein
Sa
Angulo maximo
En Ja imagen vemos como quedara el panel de control. Se podré seleccionar el mimero
de servos a controlar, cerrar el canal de comunicacién y luego controlar cada uno de los
servos.
Servo 0: Se controlara la velocidad y el anulo maximo girado
Servo 1: Se controlard el angulo girado.
Para el desarrollo del diagrama funcional tenemos que contar con cuatro nuevos tipos de
bloques de fanciéa de la libreria Arduino.
Inicializar la conexién a la placa Arduino. Si no se conecta a la entrada de recursos
VISA del bloque “Init” imtentard auto conectarse a la placa Arduino. Para acelerar la
conexién o para conectarse de forma inalmbrica utilizar un recurso VISA constante
para especificar el puerto COM a utilizar
Establecer el mimero de servos a utilizar. Esto crea una matriz de cero indice de los
servos en el Arduino. Después de especificar el ntimero de servos que desea utilizar se
puede hacer referencia a ellos por el mimero (comenzando con 0).
Configuracién de los dos servos digitales asigndndoles pines I/ 0 (10. 11)4. Eceribir un énguto de 0 servo bacado en la repeticién dal bucle. Servo 0 barre desde los
0 grados en el éngulo de usuario y la repeticiéa. Este éngulo también se lee desde el
servo y ae muestra en el panel froata.
5. Ajuste manualmente el angulo de servo 2. Este angulo también se lee desde el servo y_
‘se muestra en el panel frontal
6. Cierra la conexién con el Arduinc
7. Controlar los errores
Para empezar, una ver. que hemos colocado el bloque de funcién “Init” se procede a
cconfigucar los servos, Primero debemos decir cndntos son los servos que se van a tener
cen cuenta: “Set Numbers of servos” se levard a la entrada ua valor elemento de
control que genere un numero de tipo Integer se hace pulsada el botén derecho sobre la
entrada y seleccionando Create-Control en el meni contextual que aparece. Asi
cseamos la caja de seleccién “Numero de servos”
Set Sumber of Servos
[Labitew interface for Arduino ivhb:set Sumber of Servos.)
nota ee
A continuaciéa pondremos dos bloques del tipo “Configure Servo” uno para cada uno
¢ los dos servos que vamos a gobernar. Este objeto debe parametrizarse con el numero:
‘eteney apne de ne tizatner alos dene Sve ner} DIO
&
Configure Servo
[Labview interfece fr Arduino IvibConfigure Serva.)
‘Arduino Resource Prdino Recourse
votusnbe
10 Fin) error cut
enerPondremos.
Serve 0 nel PINT
Servo 1 enel PIN IL
Una vez dentro del bloque de control controlaremos los servos de la manera siguiente.
En primer lugar escribiremos en el Servo 0 mediante el bloque de fianci6n “Servo
Write Angle” mediante un control el “Angulo” a girar en grados
Servo write Angle
[LabvICW Interface for Arduino lvit:Servo Write Angle.vi
Arduino Resource m= BEBE) Arne Resource
Servo Rumer ~-— aid}
angle (bearees)
ror out
Velocidad
wie
La seflal creada se lleva a la entrada “Angle” del bloque
El siguiente bloque “Servo Read Angle” sirve para leer la posicion del Servo
devolviendo el valor en “Angle Degrees)” que se lleva a un indicador analégico
“Servo 0”
Servo Read Angle
[LabVIEW Interface for Arduino.ivibsServo Read Angle.vi]
‘Arduino Resource Arduine Resource
Servo Number sigle (egrees)
‘worn ror out
El Scrvo 1 se gobemnaré de la misma forma que cl anterior con un bloque de tipo “Servo
Write Angle” cuya entrada conectamos a un control de tipo analégico al que hemos
denominado “Angulo”
Finalmente se colocard un bloque “Servo Read Angle” que nos ind:cara la posicién del
servo ¥ la mostraremos con un instrumento analégico denominado “Sarvo 1”