Tarjeta de Adquisicion de Datos
-
Upload
cesar-barrios-campos -
Category
Documents
-
view
226 -
download
8
description
Transcript of Tarjeta de Adquisicion de Datos
TARJETA DE ADQUISICION DE DATOS Y CONTROL DE UN MOTOR DC CONTROLADO POR PIC 16F877A E INTERFAS LABVIEW 8.6
(Inclinometro, Temperatura, Voltaje y LDR)
Cesar Barrios, Rodrigo Garcia
UNIVERSIDAD DE PAMPLONA
21-05-2010
RESUMEN
El presente artículo, trata desarrollos de fácil implementación y reducido costo de inversión, con la intención especifica de acercar a todos los sectores innovaciones tecnológicas para mejora de la competitividad. Es una buena opción, el emplear al Software de programación LabVIEW y el uso de PCs, en aplicación a la electrónica en sus campos de puertos. Se implemento una tarjeta de adquisición o una DAQ serial utilizando componentes electrónicos de gama media como lo es el microcontrolador pic16f877 y algunos componentes estándar del PC como lo es su puerto serie o su paralelo. El LabVIEW brinda posibilidades de desarrollar equipos propios de electrónica de bajo costo con registro, visualización, cuantificación, recepción y transmisión de datos para una PC. También se emplea esta tecnología para actualizar equipos preexistentes y determinar qué apoyos se pueden utilizar a la hora de actualizarnos electrónicamente.
ABSTRACT
The present article, treats developments of easy implementation and reduced investment cost, with the intention it specifies of bringing near to all the sectors technological innovations for improvement of the competitiveness. It is a good option, using to the programming Software LabVIEW and the use of PCs, in application to the electronics in their fields of ports. You implements a card of acquisition or a serial DAQ using electronic components of half range as it is it the uController pic16f877 and some standard components of the PC like it is it their port series or their parallel one. The LabVIEW offers possibilities to develop teams characteristic of electronic of low cost with registration, visualization, quantification, reception and transmission of data for a PC. This technology is also used to modernize teams preexistents and to determine what supports they can be used when modernizing us electronically.
PALABRAS CLAVES:
LabVIEW, Microcontrolador, DAQ, Analogo-Digital, Puerto Serial.
INTRODUCCION
La electrónica se valió por décadas de instrumentos o entornos que la tecnología le iba proporcionando, tales como: lenguajes de programación de bajo y alto nivel y otros lenguajes o entornos de programación que en un principio fueron muy limitados. Con el
avance constante de la tecnología, nos encontramos que estos todos estos entornos fueron aumentando sus cualidades, y cambiando sus medios de programación ocasionando la argumentación de lenguajes como labview que en la actualidad es lo
máximo en programador y simulaciones electro-industriales.
Hoy es una realidad simular o hablar de envió de datos por medio de tarjetas de adquisición es como decir o referirnos es sumamente breve por contamos con labview.
La forma en que en estos tiempos se utiliza los datos, da la forma de crearnos sistemas más útiles de adquirir estos ya sea para un sistema sencillo como para un sistema muy complejo.
RELATANDO EL TRABAJO
El laboratorio realizado consiste en diseñar un sistema de adquisición para 4 datos brindados por medio de las siguientes aplicaciones un Inclinometro, un medidor de Temperatura, un medidor de Voltaje y un medidor de Luminosidad por medio de una LDR), para ello se utilizo la recepción y transmisión serial del microcontrolador PIC 16f877a y además el conversor análogo-digital de 10 bits para obtener los datos y luego enviarlos al PC por medio del puerto serie, y recogerlos por la interfaz LABVIEW que es la encargada realizar todas las conversiones y mostrar de una forma grafica cada una de las variables medidas.
MANEJANDO LABVIEW
LabVIEW (Laboratory Virtual Instrument Engineering Workbench) es un lenguaje de programación gráfico para el diseño de sistemas de adquisición de datos, instrumentación y control. Labview permite diseñar interfaces de usuario mediante una consola interactivo basado en software. Usted puede diseñar especificando su sistema funcional, su diagrama de bloques o una notación de diseño de ingeniería. Labview es a la vez compatible con herramientas de desarrollo similares y puede trabajar con programas de otra área de aplicación, como por ejemplo Matlab. Tiene la ventaja de que permite una fácil integración con hardware, específicamente
con tarjetas de medición, adquisición y procesamiento de datos (incluyendo adquisición de imágenes).
La interfaz manejada en este laboratorio se enfatiza en recibir los datos de los 4 AD del microcontrolador, realizarles el escalamiento y mostrarlo con cada uno de sus diferentes módulos o formas de entregar datos.
PANEL FRONTAL
En esta imagen podemos apreciar cada una de las diferentes formas de mostrar cada una de nuestras variables y representar el valor del Knob para el control del motor.
DIAGRAMA DE BLOQUES
Aquí podemos definir los bloques utilizados para el manejo del puerto a manejar que en nuestro caso es el serial al cual se le definen características como velocidad de transmisión, data bits, paridad entre otros los cuales me definen el control exacto de este, así como la conversión de escalamiento para cada una de las variables manejadas y el envió de los datos al PIC para el control del motor.
PROGRAMACION DEL PIC
La programación fue realizada en PicBasic la cual nos entrega una forma muy fácil y sutil de realizar la programación interna de este.
El cual está diseñado para recibir el dato de la interfaz LABVIEW y la procesa para así colocarlo en la salida PWM del microcontrolador.
Programación del PIC (Ver anexo 3)
DIAGRAMA ESQUEMATICO
La simulación fue realizada en ISIS Proteus, el da las herramientas suficientes para detectar diferentes errores que pueden ser ocurridos en tiempo de ejecución.
CONCLUSIONES
Aunque el manejo de una DAQ es fácil, se ven complicaciones en el tiempo de envió de los datos los cuales no son totalmente en tiempo real. Ya que los datos se envían uno detrás de otro y en forma de string, lo que determina pérdida de tiempo.
La lectura de las entradas análogas gastan tiempo en estabilizar la señal, así como las limitaciones en el cristal utilizado para el microcontrolador, lo que pierde tiempo muy valioso a la hora de registrar datos.
La interfaz LabVIEW da una forma representativa, grafica y fácil de entender a la hora de entender cada una de las variables a manejar en
este laboratorio, así como también la representación grafica del manejo de motor.
ANEXO 1: FRONT PANEL DEL DAQ Y CONTROL DEL MOTOR
ANEXO 2: BLOCK DIAGRAM DEL DAQ Y CONTROL DEL MOTOR
ANEXO 3: PROGRAMACION EN PICBASIC DEL MICROCONTROLADOR
'****************************************************************'* Name : labview_lab3.BAS *'* Author : [select VIEW...EDITOR OPTIONS] *'* Notice : Copyright (c) 2010 [select VIEW...EDITOR OPTIONS] *'* : All Rights Reserved *'* Date : 13/05/2010 *'* Version : 1.0 *'* Notes : *'* : *'**************************************************************** Device= 16F877AXTAL= 4
HSERIAL_BAUD = 9600 ' Set baud rate to 9600HSERIAL_RCSTA = %10010000 ' Enable serial port and
continuous receiveHSERIAL_TXSTA = %10100100 ' Enable transmit and
asynchronous mode
Declare ADIN_RES 10 Declare ADIN_TAD FRC
Declare ADIN_STIME 100 Declare CCP1_PIN PORTC.2 Dim ADC1 As Word Dim ADC2 As Word Dim ADC3 As Word Dim ADC4 As Word Dim CARREC As Byte Dim C As Byte Dim XX[3] As Byte Dim ENVIO As Byte Dim POS As Float Dim POS1 As Byte Dim I As Byte Dim V As Byte
TRISA = %00000111TRISB = %00000000TRISC = %10000000INTCON= %11000000ADCON1= %10000000
PIE1.5 = 1ENVIO = 0CARREC = 0
On Interrupt GoTo INTERRUPCION
PRINCIPAL: If ENVIO = 1 Then
POS1 = Val(XX,Dec) For I=0 To 3
XX[I] = 0Next POS = 2.55 * POS1 POS1 = POS HPWM 1,POS1,2000
ADC1 = ADIn 0 DelayUS 30 ADC2 = ADIn 1 DelayUS 30 ADC3 = ADIn 2 DelayUS 30 ADC4 = ADIn 5 DelayUS 30 HRSOut DEC4 ADC1,DEC4 ADC2,DEC4 ADC3,DEC4 ADC4 'DELAYMS 10 End If GoTo PRINCIPAL
DisableINTERRUPCION:
If PIR1.5 = 1 Then C = HRSin XX[CARREC] = C If C = "E" Then ENVIO = 1 CARREC = 0 Else CARREC = CARREC + 1 End IfEnd IfResumeEnable
ANEXO 4: DIAGRAMA ESQUEMATICO
ANEXO 5: FOTOS DEL MONTAJE REALIZADO EN PROTOBOARD