practicas labview

download practicas labview

of 50

Transcript of practicas labview

Practica 1 While LoopEl VI permite ingresar dos valores numricos A y B en punto flotante mediante controles y realiza las operaciones bsicas de Suma, Resta, Mutiplicacin y Divisin. Muestra los respectivos resultados usando indicadores. El VI espera a que haya actividad en el panel frontal antes de volver a repetir el bucle While.

stop Se presiona este botn para salir. A Aqu se ingresa el nmero A. B Aqu se ingresa el nmero B. Suma Muestra la Suma: A + B. Resta Muestra la Resta: A - B. Divisin Muestra la Divisin: A / B. Multiplicacin Muestra la Multiplicacin: A x B.

Practica 2 Estructura secuencialEl VI enciende un array de 5 LEDs de forma secuencial, utilizando la estructura Flat Sequence. En la primera etapa se asegura de que estn todos apagados menos el primero. Espera 1 segundo (1000ms) y pasa a la siguiente etapa. En la segunda y dems etapas apaga el led de la etapa anterior al mismo tiempo que enciende el de la etapa actual. Tambin espera 1 segundo antes de pasar a la siguiente etapa. Se utilizaron variables locales de la segunda etapa en adelante.

Stop Presionando este botn se sale del programa. Como la lectura de este botn solamente se produce al finalizar la secuencia, no importa cuando uno presione el botn, el programa recin terminar cuando termine la secuencia. LED 1 LED 2 LED 3 LED 4 LED 5

Practica 3 CasePermite seleccionar que operacin (suma, resta, multiplicacin o divisin) realizar entre A y B. En el caso de que la operacin sea Divisin, y B sea igual a cero, se muestra el indicador Error. Esto se logra insertando un TRUE a la propiedad Visible de tal indicador. De lo contrario se le inserta unFALSE. Por otro lado, el resultado no se muestra directamente en un indicador numrico. Porque en el caso de una divisin por cero el resultado debe decir Infinito. Para eso se forma un array de cadenas de texto. La primera es el nmero resultante de la operacin, formateado a una cadena. La segunda es una cadena constante que dice "Infinito". Luego se indexa el primer o segundo elemento de ese array para mostrarlo como Resultado. Esto se hace tomando el valor booleano que vale TRUE si hubo divisin por cero y FALSE si no. Se convierten estos valores booleanos a un 0 o un 1 respectivamente y se utiliza este valor numrico para indexar el array.

Salir Presionando este botn se sale del programa.

A Primer operando. B Segundo Operando. Operacin Este control relaciona la operacin Sumar con un 0, Restar con un 1, Multiplicar con un 2 y Dividir con un 3. Estos valores numricos son insertados en el CASE para determinar que operacin se realizar. Resultado Muestra el resultado de la operacin. Error Este indicador siempre muestra el texto Divisin por cero. Pero est siempre invisible, excepto cuando ocurre una divisin por cero.

Practica 4 Estructura FOR1- Dentro del bucle FOR simplemente se muestra, en el indicador Cuenta, el valor i+1. La variable i incrementa su valor en cada ciclo, empezando de cero y terminando en Contar hasta - 1. La estructuraFOR tambin contiene un retardo de 100ms para que el ojo pueda apreciar el incremento de la cuenta. 2- Dentro del bucle WHILE se espera a que se presione el botn Contar, para volver a contar hasta el valor indicado por el control Contar hasta, o hasta que se presione SALIR. En este ltimo caso no se vuelve a repetir el bucle WHILE principal, terminando el programa. Las lecturas de los botones Contar y SALIR solo se realizan cuando ocurre un cambio en el panel frontal. Esto para que este bucle no est leyendo innecesariamente, ocupando as el procesador.

Contar hasta Establece hasta que valor se contar. SALIR Presionando este botn se sale del programa. Contar Hay que presionar este botn para volver a contar. Cuenta Muestra el valor actual del contador.

Practica 5 Shift RegisterEl VI efecta un promedio con una cantidad Muestras de nmeros aleatorios entre 0 y Rango. Para ello se utiliza la siguiente frmula: Promedio[i]=(i/(i+1)) x ( (i x Promedio[i-1]) + ValorActual) Dentro del bucle principal, un bucle WHILE, hay un bucle FOR y un bucle WHILE: 1- Dentro del bucle FOR, que se repite Muestras veces, se genera un nmero aleatorio entre 0 y 1. Luego se lo multiplica por Rango para que est entre 0 y Rango. Este valor equivale a ValorActual en la frmula. El valor Promedio[i-1] se obtiene del shift register, que en el primer ciclo vale cero. Con estos dos valores aplicamos la frmula y obtenemos Promedio[i], que se guarda en el shift register. Esto se repite en cada ciclo. Al salir del bucle FOR se toma el valor Promedio[i] y se lo muestra en el indicador Promedio. 2- Dentro del bucle WHILE se espera a que se presione el botn Calcular, para volver a calcular el promedio, o hasta que se presione SALIR, para salir del programa. En este ltimo caso no se vuelve a repetir el bucle WHILE principal, terminando as el programa. Las lecturas de los botones Calcular y SALIR solo se realizan cuando ocurre un cambio en el panel frontal. Esto para que este bucle no est leyendo innecesariamente, ocupando as el procesador.

SALIR Cuando se presiona sale del bucle WHILE principal, terminando as el programa. Muestras Nmero de muestras a tomar para promediar. Rango Se generarn muestras con valores aleatorios entre cero y Rango. Calcular Cuando se presiona, se vuelve a tomar los datos de los controles Muestras y Rango, se calcula, y se muestra el resultado en el indicador Promedio. Promedio Muestra el promedio final.

1.2.6.1.vi Elementos adicionales en los Shift Registers.El VI efecta un promedio con una cantidad Muestras de nmeros aleatorios entre 0 y Rango. Para ello se utiliza la siguiente frmula: Promedio[i]=(i/(i+1)) x ( (i x Promedio[i-1]) + ValorActual) Dentro del bucle principal, un bucle WHILE, hay un bucle FOR y un bucle WHILE: 1- Dentro del bucle FOR, que se repite Muestras veces, se genera un nmero aleatorio entre 0 y 1. Luego se lo multiplica por Rango para que est entre 0 y Rango. Este valor equivale a ValorActual en la frmula. El valor Promedio[i-1] se obtiene del shift register, que en el primer ciclo vale cero. Con estos dos valores aplicamos la frmula y obtenemos Promedio[i], que se guarda en el shift register. Esto se repite en cada

ciclo. Al salir del bucle FOR se toma el valor Promedio[i] y se lo muestra en el indicador Promedio. Tambin muestra el valor de Promedio[i-1] obtenindolo directamente del shift register (antes de procesar todo) y hace uso de un elemento adicional en el shift register para mostrar el valor de Promedio[i-2]. 2- Dentro del bucle WHILE se espera a que se presione el botn Calcular, para volver a calcular el promedio, o hasta que se presione SALIR, para salir del programa. En este ltimo caso no se vuelve a repetir el bucle WHILE principal, terminando as el programa. Las lecturas de los botones Calcular y SALIR solo se realizan cuando ocurre un cambio en el panel frontal. Esto para que este bucle no est leyendo innecesariamente, ocupando as el procesador

SALIR Cuando se presiona, sale del bucle WHILE principal, terminando as el programa. Muestras Nmero de muestras a tomar para promediar. Rango Se generarn muestras con valores aleatorios entre cero y Rango. Calcular Cuando se presiona, se vuelve a tomar los datos de los controles Muestras y Rango, se calcula, y se muestran los resultados en los indicadores Promedio, Promedio i-1 y Promedio i-2. Promedio Muestra el promedio final. Promedio i-1 Muestra el promedio parcial antes de haber tomado la ltima muestra. Promedio i-2 Muestra el promedio parcial antes de haber tomado las ltimas dos muestras.

Practica 5 Waveform Chart.El VI efecta un promedio con una cantidad Muestras de nmeros aleatorios entre 0 y Rango. Tambin grafica los promedios parciales en un Waveform Chart. Para el promedio se utiliza la siguiente frmula: Promedio[i]=(i/(i+1)) x ( (i x Promedio[i-1]) + ValorActual) Dentro del bucle principal, un bucle WHILE, hay una estructura Flat Sequence que primero elimina los datos del Waveform Chart y luego pasa a un bucle FOR que vuelve a tomar los datos. Tambin hay un bucle WHILE: 1- Dentro del bucle FOR, que se repite Muestras veces, se genera un nmero aleatorio entre 0 y 1. Luego se lo multiplica por Rango para que est entre 0 y Rango. Este valor equivale a ValorActual en la frmula. El valor Promedio[i-1] se obtiene del shift register, que en el primer ciclo vale cero. Con estos dos valores aplicamos la frmula y obtenemos Promedio[i], que se enva al Waveform Chart y tambin se guarda en el shift register. Esto se repite en cada ciclo. Al salir del bucle FOR se toma el valor Promedio[i] y se lo muestra en el indicador Promedio. El Waveform Chart ya tiene la grfica para ese entonces. 2- Dentro del bucle WHILE se espera a que se presione el botn Calcular, para volver a calcular el promedio, o hasta que se presione SALIR, para salir del programa. En este ltimo caso no se vuelve a repetir el bucle WHILE principal, terminando as el programa. Las lecturas de los botones Calcular y SALIR solo se realizan cuando ocurre un cambio en el panel frontal. Esto para que este bucle no est leyendo innecesariamente, ocupando as el procesador.

SALIR Cuando se presiona, sale del bucle WHILE principla, teminando as el programa. Calcular Cuando se presiona, se vuelve a tomar las muestras y mostralas en el Waveform Chart y actualizar el valor final del Promedio. Muestras Nmero de muestras a tomar para promediar. Rango Se generarn muestras con valores aleatorios entre cero y Rango. Waveform Chart Grafica todas las muestras que se obtuvieron en el proceso. Promedio Muestra el promedio final.

Practica 6 ClusterEl VI efecta un promedio con una cantidad Muestras de nmeros aleatorios entre 0 y Rango. Tambin grafica las muestras y promedios parciales en un Waveform Chart a travs de un cluster. Para el promedio se utiliza la siguiente frmula: Promedio[i]=(i/(i+1)) x ( (i x Promedio[i-1]) + ValorActual) Dentro del bucle principal, un bucle WHILE, hay una estructura Flat Sequence que primero elimina los datos del Waveform Chart y luego pasa a un bucle FOR que vuelve a tomar los datos. Tambin hay un bucle WHILE: 1- Dentro del bucle FOR, que se repite Muestras veces, se genera un nmero aleatorio entre 0 y 1. Luego se lo multiplica por Rango para que est entre 0 y Rango. Este valor equivale a ValorActual en la frmula. El valor Promedio[i-1] se obtiene del shift register, que en el primer ciclo vale cero. Con estos dos valores aplicamos la frmula y obtenemos Promedio[i], que se enva a un Cluster bundle y tambin se guarda en el shift register. Tambin se enva al Cluster bundle el ValorActual. Este cluster se enva al Waveform Chart. Esto se repite en cada ciclo. Al salir del bucle FOR se toma el valor Promedio[i] y se lo muestra en el indicador Promedio. Para ese entonces el Waveform Chart ya tiene la grfica de los valores que salieron y los promedios parciales. 2- Dentro del bucle WHILE se espera a que se presione el botn Calcular, para volver a calcular el promedio, o hasta que se presione SALIR, para salir del programa. En este ltimo caso no se vuelve a repetir el bucle WHILE principal, terminando as el programa. Las lecturas de los botones Calcular y SALIR solo

se realizan cuando ocurre un cambio en el panel frontal. Esto para que este bucle no est leyendo innecesariamente, ocupando as el procesador.

SALIR Cuando se presiona, sale del bucle WHILE principla, teminando as el programa. Calcular Cuando se presiona, se vuelve a tomar las muestras y mostralas en el Waveform Chart y actualizar el valor final del Promedio. Muestras Nmero de muestras a tomar para promediar. Rango Se generarn muestras con valores aleatorios entre cero y Rango. Waveform Chart Grafica (1) todas las muestras que se obtuvieron en el proceso y (2) el promedio parcial hasta ese momento. Promedio Muestra el promedio final.

Practica 7 Waveforms GraphEl VI genera una seal senoidal con Amplitud y Frecuencia cero, Offset y Fase cero, y Duty Cycle 50%. El vector generado se muestra en un Waveform Graph. Se espera a que haya actividad en el panel frontal para volver a generar la seal o leer el valor del botn SALIR.

SALIR Se presiona para salir del programa.

Waveform Graph Grafica un vector, en este caso la forma de Onda. El Waveform Graph grafica vectores completos. Al enviarle otro vector se borra el primero y se grafica el nuevo.

NI_MABase.lvlib:Basic Function Generator.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\measure\masignal.llb\Basic Function Generator.vi

Diferencias entre el indicador Waveform Chart y el Waveform GraphEl indicador Waveform Chart acepta los datos uno por uno y los va introduciendo as al grfico, se lo puede considerar como que guarda un historial de los datos introducidos. El Waveform Graph, en cambio, acepta un vector con todos los puntos del grfico y lo grafica. Al introducir el siguiente vector, el grafico anterior es sobreescrito, no mantiene un historial. Ambos indicadores pueden aceptar mltiples ondas o datos a la vez, superponiendo los grficos y utilizando diferentes colores para representar cada uno.

Practica 8 Generador de funcionesEste VI genera una funcin que puede ser configurada mediante los controles de su panel frontal. Tambin cuenta con un cono propio y sus terminales estn configuradas para poder utilizarse como SubVI.

OFF Si est activado, la seal es una constante nula (apaga el instrumento). OFFSET Es el offsed de DC de la seal. El valor por defecto es 0.0V. FRECUENCIA Frecuencia de la seal. AMPLITUD Amplitud de la seal. FASE Fase de la seal. DUTY CICLE Ciclo de trabajo de la seal. Solo afecta a seales cuadradas. Fs Frecuencia de muestreo, en muestras por segundos (S/sec). NRO. MUESTRAS Numero de muestras a generar. SEAL Selecciona el tipo de seal: Senoidal, Triangular, Cuadrada, Diente de sierra. signal out Seal generada.

dt status The status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. code The code number identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. source The source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. t0

dt Y error The error cluster contains error or warning information. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. attributes

Practica 9

OsciloscopioGenera dos ondas con dos SubVIs generadores de seales (desarrollados en 1.3.1) y las muestra utilizando el SubVI que simula un osciloscopio creado para este punto (1.3.2). Dentro del bucle WHILE se aguarda a que se genere un cambio en el panel frontal antes de generar la siguiente forma de onda.

Osciloscopio.vi C:\Documents and Settings\Daniel\Mis documentos\facu\5to\Digitales 3\1\Practico\Osciloscopio.vi 1.3.1.vi C:\Documents and Settings\Daniel\Mis documentos\facu\5to\Digitales 3\1\Practico\1.3.1.viOsciloscopio.vi

Simula un osciloscopio.

Los acondicionadores de Amplitud y de Tiempo estn diseados de la siguiente manera: Suponiendo que el Waveform Graph (de salida) debe tener 10x10 divisiones en la pantalla, y debe tener escala fija en los siguientes rangos: - Eje X: [0 10] - Eje Y: [-5 5]

V/Div CH1 Voltios por Divisin para el canal 1. Seg/DivS egundos por divisin para ambos canales. V/Div CH2 Voltios por Divisin para el canal 1. CH1 On Activa el canal 1. CH2 On Activa el canal 2. Onda Canal 1 Entrada de seal para el canal 1.

dt status The status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. code The code number identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. source The source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. t0 dt Y

error The error cluster contains error or warning information. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. attributes Onda Canal 2 Entrada de seal para el canal 2.

dt status The status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. code The code number identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. source The source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. t0 dt Y error The error cluster contains error or warning information. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. attributes Grfico (Waveform Graph)Grafico de la seal. El Waveform Graph (de salida) debe tener 10x10 divisiones en la pantalla, y debe tener escala fija en los siguientes rangos: - Eje X: [0 10] - Eje Y: [-5 5]

AcondicionamientoTiempo.vi C:\Documents and Settings\Daniel\Mis documentos\facu\5to\Digitales 3\1\Practico\AcondicionamientoTiempo.vi AcondicionamientoAmplitud.vi C:\Documents and Settings\Daniel\Mis documentos\facu\5to\Digitales 3\1\Practico\AcondicionamientoAmplitud.viAcondicionamientoAmplitud.vi

Acondiciona la amplitud de una waveform para mostrarla en un Waveform Graph (de salida) que debe tener 10x10 divisiones en la pantalla, y debe tener escala fija en los siguientes rangos: - Eje X: [0 10] - Eje Y: [-5 5] Ch1 Voltios por divisin en el canal. Onda de entrada (waveform) Onda de entrada a acondicionar en amplitud.

dt status The status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. code The code number identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. source The source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed.

t0 dt Y error The error cluster contains error or warning information. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. attributes Onda de salida (waveform) Onda de salida ya condicionada en amplitud.

dt status The status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. code The code number identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. source The source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. t0 dt Y error The error cluster contains error or warning information. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. attributes

AcondicionamientoTiempo.vi

Acondiciona el tiempo de una waveform para mostrarla en un Waveform Graph (de salida) que debe tener 10x10 divisiones en la pantalla, y debe tener escala fija en los siguientes rangos: - Eje X: [0 10] - Eje Y: [-5 5] SEG / DIV Segundos por divisin en el canal. Onda de entrada (waveform)Onda de entrada a acondicionar en tiempo.

dt status The status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. code The code number identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. source The source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. t0 dt Y error The error cluster contains error or warning information. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. attributes

Onda de salida (waveform) Onda de salida ya condicionada en tiempo.

dt

status The status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or a warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. code The code number identifies the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. source The source string describes the origin of the error or warning. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. t0 dt Y error The error cluster contains error or warning information. The pop-up option Explain Error (or Explain Warning) gives more information about the error displayed. attributes

Practica 10

Generador de sonidoGenera una seal y la reproduce en la placa de sonido. En primer lugar y por nica vez, se configura la placa. Luego, dentro del bucle WHILE, se configura el volumen del sonido y luego se enva la onda a la placa. De esta forma el sonido se repite y da la impresin de que fuer contnuo. Ya fuera del bucle WHILE, y por nica vez, se cancela la configuracin de la placa y el programa termina. Si el generador est apagado (presionando el botn OFF) se aguarda a que haya algn evento en el panel frontal para leer el valor del botn OFF, y si este est apagado, seguir reproduciendo el sonido.

OFF Suspende el envo de sonido a la placa. OFFSET offset is the DC offset of the signal. The default is 0.0. FRECUENCIA frequency is the frequency of the waveform in units of hertz. The default is 10. AMPLITUD amplitude is the amplitude of the waveform. The amplitude is also the peak voltage. The default is 1.0. FASE phase is the initial phase, in degrees, of the waveform. The default is 0. The VI ignores phase if reset signal is FALSE. DUTY CICLE square wave duty cycle is the percentage of time a square wave remains high versus low over one period. The VI uses this parameter only if the signal type is a square wave. The default is 50. Fs Fs is the sampling rate in samples per second. The default is 1000. NRO. MUESTRAS #s is the number of samples in the waveform. The default is 1000. SEAL Tipo de la seal: Senoidal, Triangular, Cuadrada y Diente de Sierra. stop Sale del bucle principal para luego terminar el programa.

NI_MABase.lvlib:Basic Function Generator.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\measure\masignal.llb\Basic Function Generator.vi Sound Output Write.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\sound2\lvsound2.llb\Sound Output Write.vi Sound Output Write (DBL Single).vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\sound2\lvsound2.llb\Sound Output Write (DBL Single).vi Sound Output Set Volume.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\sound2\lvsound2.llb\Sound Output Set Volume.vi Sound Output Set Volume (Single).vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\sound2\lvsound2.llb\Sound Output Set Volume (Single).vi Sound Data Format.ctl C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\sound2\lvsound2.llb\Sound Data Format.ctl Sound Output Clear.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\sound2\lvsound2.llb\Sound Output Clear.vi Sound Output Configure.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\sound2\lvsound2.llb\Sound Output Configure.vi

Practica 11 Visualizador de sonidosVisualiza en un osciloscopio virtual los sonidos adquiridos mediante la placa de sonido. Se configura el formato de sonido al principio y por nica vez. Luego, en el bucle WHILE, se lee una muestra de sonido y se muestra en el osciloscopio. Cuando se presiona el botn STOP se sale del bucle WHILE, borrando por nica vez la configuracin de la placa que se estableci al principio y saliendo del programa. El sonido se toma en stereo, utilizando ambos canales del osciloscopio para mostrarlo.

stop Se presiona para salir del programa. Ch1 Voltios por divisin del canal 1. Tiempo Segundos por divisin de ambos canales. Ch1 Canal 1 encendido. Ch2 Canal 2 encendido. Ch2 Voltios por divisin del canal 2. sample mode sample mode specifies whether the VI acquires samples just once (Finite Samples) or continuously (Continuous Samples). number of samples/ch number of samples/ch specifies the number of samples per channel in the buffer. device ID device ID is the input or output device you access for a sound operation. In general, most users should select the default value of 0. sound format sound format sets the acquisition rate, the number of channels, and the bits per sample of the sound operation. The values for each of these controls is dependent on your sound card. sample rate (S/s) sample rate (S/s) sets the sampling rate for the sound operation. Common rates are 44,100 S/s, 22,050 S/s, and 11,025 S/s. The default is 22050 S/s.

number of channels number of channels specifies the number of channels. This input can accept as many channels as the sound card supports. For most sound cards 1 is Mono and 2 is Stereo. bits per sample bits per sample specifies the quality of each sample in bits. Common resolutions are 16 bits and 8 bits. The default is 16 bits. Waveform Graph

Sound Input Read.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\sound2\lvsound2.llb\Sound Input Read.vi Sound Input Read (DBL).vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\sound2\lvsound2.llb\Sound Input Read (DBL).vi Sound Data Format.ctl C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\sound2\lvsound2.llb\Sound Data Format.ctl Sampling Mode.ctl C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\sound2\lvsound2.llb\Sampling Mode.ctl

Sound Input Clear.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\sound2\lvsound2.llb\Sound Input Clear.vi Osciloscopio.vi C:\Documents and Settings\Daniel\Mis documentos\facu\5to\Digitales 3\1\Practico\Osciloscopio.vi Sound Input Configure.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\sound2\lvsound2.llb\Sound Input Configure.vi

Practica 12 Comunicacion RS232 entre PC`sEnva o Recibe un archivo por puerto serie. La accin predeterminada es Recibir. Cuando se est en modo recepcin, se comprueba cada 500ms a ver si hay datos en el puerto. Como la transmisin se hace con el protocolo DTR/DSR, cuando se llena el buffer de entrada, la PC transmisora espera para seguir enviando. El cable debe ser FULL DUPLEX. Cuando se cambia el modo a Enviar se abre un cuadro de dilogo pidiendo el archivo a enviar y lo enva. El transmisor tambin enva el hash MD5 para que el receptor verifique que la transferencia fue correcta.

stop

Puerto VISA resource name specifies the resource to be opened. This control also specifies the session and class.

Accin Accin: Enviar o Recibir el archivo.

Baudios Velocidad de transmisin. Ambos programas, emisor y receptor, deben tener configurada la misma velocidad de transimisin.

Merge Errors.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Utility\error.llb\Merge Errors.vi File Dialog File Dialog

RecibirArchivoPuerto.vi C:\Documents and Settings\Daniel\Mis documentos\facu\5to\Digitales 3\1\Practico\RecibirArchivoPuerto.vi EnviarArchivoPuerto.vi C:\Documents and Settings\Daniel\Mis documentos\facu\5to\Digitales 3\1\Practico\EnviarArchivoPuerto.vi

EnviarArchivoPuerto.viEnva un archivo por puerto serie. Abre el archivo en modo binario y extrae su contenido. Si hay error al leer el archivo, termina el programa. Sino, extrae el nombre y MD5 del archivo y lo une con el contenido en un cluster. En primer lugar se enva el tamao del cluster recin armado y luego el cluster. Se cierra la conexin y termina el programa.

Archivo a enviar Ruta del archivo a enviar.

Puerto (COM1) VISA resource name specifies the resource to be opened. This control also specifies the session and class.

Baudios (57600) Velocidad de transferencia. Debe ser la misma que en la otra PC.

error in error in can accept error information wired from VIs previously called. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs. Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

status status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred. Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

code code is the error or warning code. Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

source source describes the origin of the error or warning. Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

error out error in can accept error information wired from VIs previously called. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs. Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

status status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred. Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

code code is the error or warning code. Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

source source describes the origin of the error or warning. Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

MD5Checksum File.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Utility\MD5Checksum.llb\MD5Checksum File.vi VISA Configure Serial Port (Instr).vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Instr\_visa.llb\VISA Configure Serial Port (Instr).vi VISA Configure Serial Port C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Instr\_visa.llb\VISA Configure Serial Port

RecibirArchivoPuerto.viRecibe un archivo por puerto serie. Se abre la conexin y se comprueba si hay bytes esperando para ser ledos en el puerto (estaran almacenados en el cach). Si no hay bytes esperando, se cierra la conexin y termina. Si hay bytes esperando, se leen 4 bytes, que representa un int y que contiene el tamao del cluster, en bytes, que se espera recibir. Luego se lee esa cantidad de bytes desde el puerto y se arma el cluster. Se pide al usuario un nombre de archivo, sugiriendole el mismo nombre que tena en la otra PC. Se crea el archivo con el nombre sugerido, se guardan en l los datos y se cierra el archivo. Se comprueba si el hash MD5 del archivo recin creado es el mismo que el recibido de la otra PC. Sino, se enva un mensaje de error.

Se podran hacer otras comprobaciones, como por ejemplo si el usuario cancel la operacin presionando cancelar cuando se le pidi un nombre para el archivo. Pero si ocurre esto, simplemente habr un error al crear el archivo con un nombre no vlido en el siguiente paso y se propagar por los siguientes SubVIs. Y simplemente se terminar con un error.

Puerto (COM1) VISA resource name specifies the resource to be opened. This control also specifies the session and class.

Baudios (57600) Velocidad de transferencia. Debe ser la misma que en la otra PC.

error in error in describes error conditions that occur before this VI or function runs.

status status is TRUE (X) if an error occurred before this VI or function ran or FALSE (checkmark) to indicate a warning or that no error occurred before this VI or function ran. The default is FALSE.

code code is the error or warning code. The default is 0.

source source specifies the origin of the error or warning and is, in most cases, the name of the VI or function that produced the error or warning. The default is an empty string.

error out error in can accept error information wired from VIs previously called. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs. Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

status status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred. Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

code code is the error or warning code. Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

source source describes the origin of the error or warning. Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

VISA Configure Serial Port C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Instr\_visa.llb\VISA Configure Serial Port VISA Configure Serial Port (Instr).vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Instr\_visa.llb\VISA Configure Serial Port (Instr).vi Merge Errors.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Utility\error.llb\Merge Errors.vi MD5Checksum File.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Utility\MD5Checksum.llb\MD5Checksum File.vi File Dialog File Dialog

Practica 12

TCP/IPServidor TCP/IP. Enva la onda generada a la IP y puerto especificados. En primer lugar intenta, cada 100ms, establecer una comunicacin a la IP y puerto especificados. Cuando se establece la conexin empieza a enviar los datos. Para enviar la onda primero la transforma a formato cadena (que es lo que se puede enviar por TCP/IP). Luego enva, tambin en formato cadena, el tamao de esa cadena. La cadena que contiene el tamao es un cast de int a vector de chars. Son 4 bytes. A continuacin enva la cadena con los datos. Este proceso (de envo) se repite cada 100ms siempre y cuando no haya error en la comunicacin ni se presione el botn STOP. Al finalizar, cierra la conexin TCP/IP.

OFF reset signal, if TRUE, resets the phase to the phase control value and the time stamp to zero. The default is FALSE.

OFFSET offset is the DC offset of the signal. The default is 0.0.

FRECUENCIA frequency is the frequency of the waveform in units of hertz. The default is 10.

AMPLITUD amplitude is the amplitude of the waveform. The amplitude is also the peak voltage. The default is 1.0.

FASE phase is the initial phase, in degrees, of the waveform. The default is 0. The VI ignores phase if reset signal is FALSE.

DUTY CICLE square wave duty cycle is the percentage of time a square wave remains high versus low over one period. The VI uses this parameter only if the signal type is a square wave. The default is 50.

Fs Fs is the sampling rate in samples per second. The default is 1000.

NRO. MUESTRAS #s is the number of samples in the waveform. The default is 1000.

SEAL

stop Se presiona este botn para salir.

Puerto Puerto remoto al que se enviarn los datos.

ip IP remota donde se enviarn los datos.

NI_MABase.lvlib:Basic Function Generator.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\measure\masignal.llb\Basic Function Generator.vi

1.7.1b.viCliente TCP/IP. Escucha por conexiones entrantes TCP/IP en el puerto 2056. Cuando se establece una conexin (supone que quien la estableci es el servidor 1.7.1a), lee primero los 4 bytes, que se supone contienen el tamao de los datos que van a ser recibidos (porque as los envi 1.7.1a). Luego lee esa cantidad de bytes y transforma la cadena leda en un dato tipo waveform, que era el tipo de datos original en el servidor. El tipo de datos (la constante waveform) se crea afuera del bucle, para que no se tenga que estar creando una constante en cada repeticin del bucle (para optimizar noms). Una vez obtenida la forma de onda se la muestra en el osciloscopio. Esto se repite hasta que: 1- Falle la lectura del tamao de los datos. 2- Falle la lectura de los datos. 3- Falle la conversin de los datos a formato waveform. 4- Se presione el botn stop (SALIR). Cuando ocurre alguna de las 4 cosas arriba mencionadas se cierra la conexin y termina el programa.

stop SALIR: Presionando este botn se termina el programa.

Ch1 VOLTS/DIV de CH1.

Tiempo SEG/DIV de ambos canales.

Ch1 CH1 ON.

Ch2 CH2 ON.

Ch2 VOLTS/DIV de CH2.

Waveform Graph Grfico de la forma de onda recibida.

Osciloscopio.vi C:\Documents and Settings\Daniel\Mis documentos\facu\5to\Digitales 3\1\Practico\Osciloscopio.vi TCP Listen.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Utility\tcp.llb\TCP Listen.vi

Data SocketPara configurar el DataSocket Server hay que ir a: Inicio->Programas->National Instruments->DataSocket->DataSocket Server Manager. Una vez ah hay pararse sobre (por ejemplo) Predefined Data Items, y presionar el botn New Item. La descripcin no importa. Hay que llamarlo: waveform_str para que funcione con el VI de ejemplo. O ponerle otro nombre pero despus especificar ese nombre en la URL de los instrumentos. Debe ser de tipo String.

Una vez terminada esa configuracin hay que cerrar esa ventana y abrir: Inicio->Programas->National Instruments->DataSocket->DataSocket Server. Este servidor debe estar abierto todo el tiempo que querramos transmitir los datos, pues se transmiten a travs de este servidor. El generador enva los datos a este servidor y el osciloscopio los lee de ac.

1.7.2a.vi Generador de seales con DataSocket.Se conecta al DataSocket Server y enva los datos a ste servidor como una string llamada waveform_str. El programa inicia intentando conectarse con el DataSocket Server en modo write. Si no puede conectarse espera 100ms y vuelve a intentarlo. Esto lo hace hasta que se pueda conectar.

Una vez conectado, genera una seal y la enva al DataSocket Server. Espera 100ms y vuelve a hacer lo mismo. Si hay algn error al enviar los datos al DataSocket Server o si se presiona el botn stop (SALIR), sale del bucle WHILE, cierra la conexin y termina el programa. Nota: Debe haber un DataSocket Server funcionando adems de este generador y del osciloscopio 1.7.2b para poder conectarse. Ver DataSocket Server para informacin de como configurarlo.

OFF reset signal, if TRUE, resets the phase to the phase control value and the time stamp to zero. The default is FALSE.

OFFSET offset is the DC offset of the signal. The default is 0.0.

FRECUENCIA frequency is the frequency of the waveform in units of hertz. The default is 10.

AMPLITUD amplitude is the amplitude of the waveform. The amplitude is also the peak voltage. The default is 1.0.

FASE phase is the initial phase, in degrees, of the waveform. The default is 0. The VI ignores phase if reset signal is FALSE.

DUTY CICLE square wave duty cycle is the percentage of time a square wave remains high versus low over one period. The VI uses this parameter only if the signal type is a square wave. The default is 50.

Fs Fs is the sampling rate in samples per second. The default is 1000.

NRO. MUESTRAS #s is the number of samples in the waveform. The default is 1000.

SEAL Tipo de seal: Senoidal, Triangular, Cuadrada o Diente de Sierra.

stop Salir del programa.

URLDireccin del servidor DataSocket y nombre de la variable.

NI_MABase.lvlib:Basic Function Generator.vi C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\measure\masignal.llb\Basic Function Generator.vi

1.7.2b.vi Osciloscopio con DataSocket.Se conecta al DataSocket Server y recibe los datos desde este servidor como una string llamada waveform_str. El programa inicia intentando conectarse con el DataSocket Server en modo BufferedRead. Si no puede conectarse espera 100ms y vuelve a intentarlo. Esto lo hace hasta que se pueda conectar. Una vez conectado, lee la seal desde el DataSocket Server y la muestra en el osciloscopio. Luego vuelve a repetir el mismo proceso hasta que haya algn error al recibir los datos del DataSocket Servero si se presiona el botn stop (SALIR). Si ocurre alguna de estas dos cosas sale del bucle WHILE, cierra la conexin y termina el programa. Nota: Debe haber un DataSocket Server funcionando adems de este osciloscopior y del generador 1.7.2a para poder conectarse. Ver DataSocket Server para informacin de como configurarlo.

stop Termina el programa.

Ch1 VOLTS/DIV Canal 1.

Tiempo SEC/DIV de ambos canales (solo se usa el CH1).

Ch1 CH1 ON.

Ch2 CH 2 ON (no se usa).

Ch2 VOLTS/DIV Canal 2 (no se usa).

URL URL del DataSocket Server y nombre de la variable.

Waveform Graph Onda leda del DataSocket.

Osciloscopio.vi C:\Documents and Settings\Daniel\Mis documentos\facu\5to\Digitales 3\1\Practico\Osciloscopio.vi

http://usuarios.multimania.es/charlytospage/ejemplos_seminario_labview.htm http://www.danielmunoz.com.ar/blog/2009/04/30/ejemplos-labview/