Académique Documents
Professionnel Documents
Culture Documents
INGENIERADEPARTAMENTO DE CONTROL Y
ROBTICAINSTRUMENTACIN VIRTUALPROYECTO FINAL:
VIs de LabVIEW atravs de una conexin serial. Esto le ayuda a mover informacin
rpidamente desde pines Arduino a LabVIEW sinajustar la comunicacin, la
sincronizacin o incluso una sola lnea de cdigo C. Al usar Open, Read/Write, Close
enLabVIEW, usted puede tener acceso a las seales digitales, analgicas, moduladas
por ancho de pulso, I2C y SPI delmicrocontrolador Arduino. Para aprender cmo opera
la funcionalidad para que pueda modificar o extenderla, busqueen los subVIs o abra el
boceto Arduino.
Nota:
El microcontrolador Arduino debe estar conectado a la PC con LabVIEW a travs de un
enlace USB, serial,Bluetooth o XBee. Este juego de herramientas no hace posible una
operacin autnoma.
A partir de la versin 2009 de Labview, National Instruments ofrece la
posibilidad de integrar almicrocontrolador Arduino a su ambiente de
trabajo, lo cul nos pueda ayudar en muchosaspectos, claro est sin llegar a
las grandes capacidades de las DAQ propias de NationalInstruments, pero
cmo realizar esta integracin?. A continuacin se presenta una breve
gua.1)
Descargar y/ o tener instalado el software Labview 2009 o posteriores.2)
Contar con el IDE y el microcontrolador Arduino ( www.arduino.cc) 3)
Descargar de la pagina de National Instruments el ToolKit para
Arduino(http://sine.ni.com/nips/cds/view/p/lang/es/nid/209835 ) 4)
Instalar el Toolkit para Arduino en nuestra computadora.5)
Programar Arduino con el firmware desarrollado por National Instruments
mediante el IDEde Arduino, generalmente este Firmware se encuentra
ubicado en la siguiente ruta:
8)
Ahora solo nos resta verificar que dentro de LabView tengas habilitados los
VI de Arduino,listos para ser programados y realizar nuestros instrumentos
virtuales con la interfazArduino.
** NOTA IMPORTANTE:
En el Case
USB/Serial
Debajo de la leyenda
1000
2000
Fcil acceso para DIO Arduino, AI, PWM, I2C y SPI desde Labview
El boceto abierto Arduino y los VIs del juego de herramientas le ayudan a personalizar
la funcionalidad
para el giro sobre su propio eje (1).A continuacin se muestra una imagen del
brazo y sus articulaciones.
Cmo funcionan los servomotores?
Un Servo es un dispositivo pequeo que tiene un eje de rendimiento
controlado. Este puede serllevado a posiciones angulares especficas al
enviar una seal codificada. Con tal de que una sealcodificada exista en la
lnea de entrada, el servo mantendr la posicin angular del
engranaje.Cuando la seal codificada cambia, la posicin angular de los
piones cambia. En la prctica, seusan servos para posicionar superficies de
control como el movimiento de palancas, pequeosascensores y timones.
Ellos tambin se usan en radio control, tteres, y por supuesto, en
robots.Los Servos son sumamente tiles en robtica. Un servo, por
consiguiente, no consume muchaenerga. El servomotor tiene 3 cables de
conexin externa. Uno es para alimentacin Vcc(+5volts), conexin a tierra
GND y el alambre de control.El motor del servo tiene algunos circuitos de
control y un potencimetro (una resistencia variable)esta es conectada al
eje central del servo motor. En la figura se puede observar al lado derecho
delcircuito. Este potencimetro permite a la circuitera de control,
supervisar el ngulo actual delservo motor. Si el eje est en el ngulo
correcto, entonces el motor est apagado. Si el circuitochequea que el
ngulo no es el correcto, el motor girar en la direccin adecuada hasta
llegar alngulo correcto. El eje del servo es capaz de llegar alrededor de los
180 grados. Normalmente, enalgunos llega a los 210 grados, pero vara segn
el fabricante. Un servo normal se usa paracontrolar un movimiento angular
de entre 0 y 180 grados. Un servo normal no es mecnicamentecapaz de
retornar a su lugar, si hay un mayor peso que el sugerido por las
especificaciones delfabricante.El cable de control se usa para comunicar el
ngulo. El ngulo est determinado por la duracin deun pulso que se aplica
al alambre de control. A esto se le llama PCM Modulacin codificada
dePulsos. El servo espera ver un pulso cada 20 milisegundos (.02 segundos).
La longitud del pulso
determinar los giros de motor. Un pulso de 1.5 ms., por ejemplo, har que el
motor se torne a laposicin de 90 grados (llamado la posicin neutra). Si el
pulso es menor de 1.5 ms., entonces elmotor se acercar a los 0 grados. Si el
pulso es mayor de 1.5ms, el eje se acercar a los 180grados.Servomotores
utilizados en el brazo:1 Servo marca Vigor de 1.5Kg de Torque para la
articulacin que contiene al eslabn terminal.1 Servo marca Vigor de 3Kg de
Torque para la articulacin que contiene al eslabn entre elhombro y el
codo.1 Servo marca Vigor de 3Kg de Torque para el giro completo del brazo
sobre su propio eje.
Conexin de los Servomotores a la tarjeta Arduino.
panel frontal cuenta con un botn de paro para detener la ejecucin del
programa.
DIAGRAMA DE BLOQUES
El primer paso para indicar a Labview que utilizaremos la interfaz con el
microcontrolador Arduinoes el bloque Init, con el cul estaremos iniciando la
comunicacin entre ambos, cabe mencionarque debemos agregar una
constante o control para indicar el puerto de comunicaciones utilizadopor
Arduino, el cual se verifico previamente mediante MAX.Bloque InitEl toolkit
de Arduino para Labview nos da la posibilidad de trabajar directamente
conservomotores, mediante bloques que son sencillos de trabajar.El
siguiente bloque que se debe agregar para indicar el nmero de servos a
utilizar, en mi caso sontres, por lo que basta con agregar una constante para
indicarlo.Ahora debemos de incializar los servomotores, ponerles un nombre
y decir en que pines deArduino estn conectados, para ello agregamos
constantes en las terminales
ServoNumber
Pin
que contienela iteraciones del ciclo while y dividir ste resultado entre el
valor de los grados que el usuariodesee que el brazo gire. Con ste resultado
final podemos indicar el bloque
escribir en el servo
del programa as como el clster de error, que nos indicar el posible error
en caso de encontraralgn fallo en la ejecucin del programa.Finalmente
debemos indicar que el trabajo de Arduino ha terminado mediante el bloque
Close. El cul debe colocarse fuera el ciclo while y agregar el bloque de
error simple para queLabview sea capaz de indicarnos de manera explcita el
estado del clster de error.