Está en la página 1de 26

Cmo Utilizar Cdigo Matemtico .M en LabVIEW?

Luis Guizar
Applications Engineer, National Instruments

Introduccin
El desarrollo de algoritmos requiere considerar factores interrelacionados como lo son: Forma de programacin Algoritmo Arquitectura

El Rol del Procesamiento de Seales, Anlisis y Matemticas


Adquirir Analizar Presentar

Procesamiento de Seales, Anlisis y Matemticas: Componentes Fundamentales de la Instrumentacin Virtual y Diseo Grfico de Sistemas

Diseo

Prototipo

Implementacin

Estndar de Software Usado en la Industria para Propsitos de Desarrollo


LabVIEW 32%

Microsoft Visual Basic

13%

Visual C++

MATLAB

4%

LabWindows/CVI

4%

Software Usado para Software Usedfor for PC-Based Software Used PC-Based Adquisicin deand Datos Data Acquisition and Data Acquisition Basados en PC y Control de Instrument Control Instrument Control Instrumentacin
10% 15% 20% 25% 30% 35%

10%

0%

5%

Fuente: Investigacin de 400 lectores estadounidenses T&M World, EDN, Design News, and R&D magazines, Q1 2004

El caso para MathScript


La demanda de los clientes de computacin con matemticas basadas en texto La sintaxis ampliamente usada para matemticas basadas en texto es el lenguaje usado para los scripts de archivos m

Sintaxis de los Archivos m


function h = hypotenuse(a,b) % Compute the length of the % hypotenuse of a right % triangle given the length % of its two sides, A and B. % % % h Put simply, HYPOTENUSE(A,B) is the square root of the sum of the squares of A & B. = sqrt(a^2+b^2); Definicin de la Funcin Descripcin de la Funcin

Comentarios

Cuerpo de la Funcin

Filosofa detrs de MathScript


Permite a los usuarios elegir la sintaxis ms apropiada para sus problemas: Textual Grfica Combinacin de Textual y Grfica

LabVIEW: Una Plataforma Efectiva para Matemticas, Anlisis y Procesamiento de Seales

Libertad para elegir grfico o textual

Reutilice su cdigo existente

Instrumente sus algoritmos

Despliegue sus algoritmos en objetivos embebidos

LabVIEW MathScript
Procesamiento de seales, anlisis y matemticas basadas en texto dentro de LabVIEW
800 funciones integradas Cree funciones definidas por ususario Rehutilice archivos .m

Solucin nativa de LabVIEW


Interfaces interactivas y programticas Permite programacin hbrida No requiere software de terceros

2D and 3D Plotting / Visualization Probability and Statistics Digital Signal Processing (DSP) Optimization Approximation (Curve Fitting / Interpolation) Advanced Functions Ordinary Differential Equations

Basic Operations Polynomial Operations Trigonometric Linear Algebra Matrix Operations Boolean and Bit Operations Data Acquisition / Generation Vector Operations Other

ni.com
National Instruments Confidential 10

Ventana Interactiva de Mathscript


Totalmente Integrada en LabVIEW
Acceso desde men de LabVIEW (Tools MathScript Window) Abra y ejecute sus archivos .m Introduzca comandos o scripts Vea respuesta inmediata Vea
Salida de texto Historial de comandos Variables Grficas

Interfaz de Lnea de Comando

ni.com
National Instruments Confidential 11

Nodo MathScript
Combine matemtica textual con desarrollo grfico Implemente ecuaciones y algoritmos con texto Defina variables de entrada y salida en el borde Depure archivos .m con paso simple, breakpoints, y sintaxis resaltada
Nodo MathScript

ni.com
National Instruments Confidential 12

Trabajando con LabVIEW MathScript


Desarrolle scripts interactivamente con la Ventana MathScript Instrumente sus Algoritmos al desarrollar con el nodo MathScript Pase de uno a otro para completar su trabajo La Ventana y el Nodo comparten un espacio de variable global
Nodo MathScript Ventana MathScript

ni.com
National Instruments Confidential 13

Mdulo LabVIEW MathScript RT

Despliegue Archivos .m Personalizados a Plataformas de NI en Tiempo Real


ni.com
National Instruments Confidential 14

Trabajando con Enfoque Grfico y Textual en LabVIEW


Siempre considere ambos Reutilice sus archivos m existentes para instrumentar su algoritmo de matemticas basadas en texto Utilice las caractersticas de LabVIEW mediante la programacin grfica Tome un enfoque mixto para combinar los beneficios grficos y textuales Trabaje con un slo ambiente para simplificar y reducir el costo

Herramientas Grficas (VIs) Diseadas para Procesamiento de Seales, Anlisis y Matemticas


Anlisis y Procesamiento de Seales
Generacin de Forma de Onda Acondicionamiento de Forma de Onda Monitoreo de Forma de Onda Medicin de Forma de Onda Generacin de Seales Operaciones de Seales Ventanas Filtros Digitales Anlisis de Espectro Transformadas Punto a Punto

Matemticas
Numrico Elementales y Funciones Especiales BLAS/LAPAC- basados en lgebra Lineal Regresin Lineal Interpolacin / Extrapolacin Probabilidad y Estadstica Optimizacin Ecuaciones Diferenciales Ordinarias Geometra Polinomial Anlisis de Frmulas Evaluacin 1D & 2D Clculo Zeros

Funciones de MathScript incluidas en LabVIEW


2D and 3D Plotting X-Y (scatter) plots, mesh plots, 3D plots, surface plots, contour plots, subplots, stairstep plots, logarithmic plots, stem plots, vector field plots, tree plots and more Polynomial Operation Convolution, deconvolution, polynomial fit, piecewise polynomial, partial fraction expansion and others Trigonometric Standard cosine, sine and tangent, Inverse hyperbolic cosine, cotangent, cosecant, secant, sine and tangent; hyperbolic cosine cotangent, cosecant, secant, sine, and tangent; exponential, natural logarithm and more Linear Algebra LU, QR, QZ, Cholesky, Schur decomposition, SVD, determinant, inverse, transpose, orthogonalization, solutions to special matrices; Taylor series; real / complex eigenvalues and eigenvectors; polynomial eigenvalues and more Boolean and Bit Operation AND, OR, NOT, and other logic operations; bitwise shift, bitwise OR and other bitwise operation Matrix Operations Hankel, Hilbert, Rosser, Vandermonde special matrices; inverse; multiplication; division; unary operations and others Data Acquisition / Generation Analog and digital I/O using National Instruments devices Vector Operations Cross product; curl and angular velocity; gradient; Kronecker tensor product and more Other Programming primitives such as if, for, and while loops; unsigned and signed data type conversions; file I/O; benchmarking and other timing functions; various set and string operations Probability and Statistics Mean; median; Poisson, Rayleigh, chi-squared, Weibull, T, gamma distributions; covariance; variance; standard deviation; cross correlation; histogram; white noise distributions and other functions Digital Signal Processing (DSP) Signal Synthesis; Butterworth, Chebyshev, Parks-McClellan, windowed FIR, elliptic (Cauer), lattice and other filter designs; FFT (1D/2D), inverse FFT (1D/2D), Hilbert, and other transforms; Hamming, Hanning, Kaiser-Bessel and other windows; pole/zero plotting and others Optimization Quasi-Newton, quadratic, Simplex methods and more Approximation (Curve Fitting / Interpolation) Cubic spline, cubic Hermite and linear interpolation; exponential, linear, and power fit; rational approximation and others Advanced Functions Bessel, spherical Bessel, Psi, Airy, Legendre, Jacobi functions; trapezoidal, elliptic exponential integral functions and more Ordinary Differential Equations Adams-Moulton, Runge-Kutta, Rosenbrock, and other continuous ordinary differential equation (ODE) solvers Basic Operations Absolute value, Cartesian to polar and spherical and other coordinate conversions, least common multiple; modulo, exponentials, logarithmic functions, complex conjugates and more

Opciones de Matemticas en LabVIEW


Despliegue matemticas en LabVIEW para desarrollo rpido Desarrolle algoritmos, explore conceptos y analice resultados usando un slo ambiente de desarrollo Libertad para elegir el enfoque ms efectivo
Opciones integradas
Graphical (G) MathScript Formula / Expression Nodes Microsoft
Excel

Opciones externas

MATLAB software
The MathWorks, Inc.

MATRIXx Xmath software


National Instruments

MathCAD software
Mathsoft (A PTC company)

Maple software
Maplesoft INRIA

Scilab software

LabVIEW Toolkits para Procesamiento y Anlisis de Seales

Procesamiento de Seales Avanzado


Wavelets, Time-Series Analysis (Independent Component Analysis, Principal Component Analysis, Model-Based Spectral Analysis,), Time-Frequency Analysis (Gabor, STFT, )

Diseo de Filtros Digitales


FIR / IIR Filter Design / Analysis, Quantization, Fixed-point Modeling, Fixed-point Simulation, Code Generation (FPGA / ANSI C),

Un Enfoque Mixto Mejora el Diseo de Algoritmos

Instrumente sus Algoritmos


Eleccin de programacin Ambiente de prototipaje de algoritmos Desarrollo de interfaz grfica Interaccin de parmetros y datos Polimorfismo

Paralelismo
El Paralelismo es una consideracin cuando selecciona e implementa su algoritmo Representacin de paralelismo basada en texto no es tan directa y requiere esfuerzo extra La programacin grfica de LabVIEW naturalmente representa paralelismo

Ejecucin de Cuatro Procesos


Proceso 1

Proceso 2 Proceso 3 Proceso 2 Proceso 3 Proceso 1 Proceso 4

Proceso 4

Implemente un Enfoque Mixto al Desarrollo de su Aplicacin


Elecciones de programacin, diseo y algoritmos Islas de matemticas textuales Aproveche las capacidades de LabVIEW
Interactividad simplificada Creacin de ejecutables Integracin con hardware

PREGUNTAS?

Luis Guizar
Applications Engineer National Instruments Mexico luis.guizar@ni.com 01 800 010 0793

Foro Acadmico 2010