Skip to content Skip to navigation

OpenStax_CNX

You are here: Home » Content » 2. Introducción a LabVIEW y teoría básica de PCM (Pulse Code Modulation)

Navigation

Recently Viewed

This feature requires Javascript to be enabled.
 

2. Introducción a LabVIEW y teoría básica de PCM (Pulse Code Modulation)

Module by: Mariangela Mezoa. E-mail the authorEdited By: Mariangela MezoaTranslated By: Mariangela Mezoa

Summary: A través del presente módulo se pretende dar una introducción muy general al software de simulación LabVIEW de National Instruments, englobando su funcionalidad para el área de las Comunicaciones Digitales. Adicionalmente, se explicará detalladamente la teoría referente a la modulación por código de pulso (PCM), en conjunto con una simulación en LabVIEW que respalde el contenido teórico.

INTRODUCCIÓN AL SOFTWARE LABVIEW Y TEORÍA BÁSICA DE PCM (Pulse Code Modulation)

González C. Y. Venuska

Mezoa R. Mariangela

Resumen

A través del presente módulo se pretende dar una introducción muy general al software de simulación LabVIEW de National Instruments, englobando su funcionalidad para el área de las Comunicaciones Digitales. Adicionalmente, se explicará detalladamente la teoría referente a la modulación por código de pulso (PCM), en conjunto con una simulación en LabVIEW que respalde el contenido teórico.

¿Qué es LabVIEW?

LabVIEW es una herramienta de programación destinada para desarrollar sistemas de pruebas, diseño y control a través de un lenguaje llamado Lenguaje G,siendo la G el símbolo que representa el ámbito Gráfico. Pudiéramos decir que estructurar un sistema en este software se aproxima a elaborar un diagrama de flujo, dado que sus herramientas (representadas por íconos gráficos) son intuitivas y secuenciales, permitiéndole hasta al usuario menos experimentado programar proyectos relativamente complejos.

Su ventaja más fuerte, como ya se mencionó, es que la programación es a través de gráficos o bloques, simplificando así el desarrollo de programas por líneas de código. En adición a lo anterior, su capacidad de desarrollar prácticamente cualquier tipo de programa lo hace compatible con miles de software.

¿Cómo funciona LabVIEW?

Los programas elaborados en LabVIEW se conocen como VIs o Virtual Instruments (Instrumentos Virtuales) y están constituidos por dos paneles:

  • Panel Frontal (Front Panel): Interfaz gráfica con el usuario. Es en esta sección donde el usuario se encargará de introducir datos para luego representar las salidas proporcionadas por el programa. Aquí, es posible la introducción de botones, gráficos e indicadores que varíen los parámetros necesarios para el funcionamiento correcto del mismo.
Figure 1: Menú desplegado de controles a implementar por el usuario. Como se puede observar en la imagen, se pueden definir desde controles numéricos hasta decoraciones de la interfaz del programa.
Panel Frontal
Panel Frontal (graphics1.png)
  • Diagrama de Bloques (Block Diagram): Es el panel en donde se construye el código fuente del VI. Es el programa como tal, en donde se colocan bloques con cierta funcionalidad que conectados estratégicamente (de acuerdo con las necesidades del usuario) realizarán una determinada función. Cada Control que se coloque en el panel frontal tendrá en el Diagrama de Bloques un terminal que podrá interconectarse con la estructura hecha en el programa, generando así la interacción de información de entrada y salida del VI.

Figure 2: Menú desplegado para el Procesamiento de Señales. De acuerdo con el programa que se desee hacer, habrá una gran variedad de funciones que se adapten a la necesidad del usuario.
Diagrama de Bloques
Diagrama de Bloques (graphics2.png)

Para los módulos de este curso, se tomará en cuenta una librería en particular: El Modulation Toolkit. Con esta herramienta es posible desarrollar una gran cantidad de programas relacionados con la comunicación digital, dado que posee un listado de bloques que representan ciertos pasos en el procesamiento de una señal. En la imagen siguiente se puede apreciar que engloba 3 aspectos principales:

  • Analog
  • Digital
  • VIs

Figure 3
Modulation Toolkit
Modulation Toolkit (graphics3.png)

En el primero se ofrecen una serie de bloques que se encargan de los procesos de modulación y demodulación de señales analógicas:

Figure 4
Modulation Toolkit – Sección Analógica
Modulation Toolkit – Sección Analógica (graphics4.png)

Por último, el bloque VIs permite la visualización de determinados gráficos como, por ejemplo, el Diagrama de Constelación:

Figure 5
Modulation Toolkit – Sección VIs
Modulation Toolkit – Sección VIs (graphics6.png)

Otra de las facilidades de LabVIEW es que tiene una amplia librería de sub-VIs previamente elaborados (apartando el ya explicado Modulation Toolkit) que pueden agregarse a los programas sin necesidad de crearlos desde cero.

Para más información acerca del software y de su uso, consultar los siguientes módulos:

NI LabVIEW Getting Started FAQ

LabVIEW Environment

Introduction to the LabVIEW Modulation Toolkit

Primeros pasos con LabVIEW

Para complementar un poco el funcionamiento general de LabVIEW, el módulo contiene la simulación de un sistema PCM que, tomando una muestra de X segundos de voz muestreada a Y KHz, permite codificar una señal de forma digital (bits o símbolos). Sin embargo, es importante refrescar los conocimientos de este tipo de Modulación.

PCM (PULSE CODE MODULATION)

PCM es una técnica de modulación por codificación digital que es usada para la transmisión digital de información. Más que una modulación, es una forma de codificación de fuente puesto que toma una señal analógica para luego representarla de manera digital.

En esta representación, la magnitud de la señal analógica es muestreada a intervalos uniformes, siendo cada muestra cuantificada al valor más cercano de un rango de niveles digitales.

Esta codificación tiene dos propiedades que determinan la fidelidad de la señal digital con la señal original:

  • La tasa de muestreo, que es el número de muestras que se toman por segundo;
  • Nivel de Cuantificación: Rango de valores digitales que puede tomar una muestra.

Para codificar correctamente deben seguirse estos pasos:

1. Muestreo y Retención de la señal analógica

Teniendo una señal en formato analógico que varía en el tiempo, se toma una muestra periódica de la misma, para luego convertir el conjunto de muestras en una serie de pulsos que se puedan transformar con más facilidad a un código PCM binario o m-ario.

El método más común de muestreo y retención se conoce como muestreo de parte plana o muestreo tope plano, donde las amplitudes de los pulsos de muestreo toman el valor de la forma de onda analógica en el punto inicial del intervalo de muestreo y lo conservan durante una porción (Duty Cycle) del tiempo de muestreo.

En el muestreo natural, en cambio, los pulsos de muestreo toman los valores de la forma de onda analógica, durante la porción de Duty Cycle elegida por el usuario.

Muestreo Natural:

Figure 6
Figure 6 (graphics7.png)

Muestreo Tope Plano:

Figure 7
Figure 7 (graphics8.png)

2. Cuantificación Digital

En este punto se toma el nivel de voltaje de cada una de las muestras del primer paso y se les atribuye un valor discreto de amplitud, de acuerdo al formato de aproximación dentro de un rango de valores digitales previamente establecido. Cuando se pretende obtener una señal binaria, el número de niveles de cuantificación toma el valor de alguna potencia de 2.

La cuantificación puede ser:

  • Uniforme: La distancia entre cada nivel de cuantificación siempre es igual.
  • No Uniforme: Se le asigna un número mayor de niveles a aquellas zonas de voltaje de la señal original mas frecuente, y menos niveles en aquellas zonas de voltajes menos frecuentes.

Un detalle que es importante resaltar es que la señal resultante luego de la cuantificación es evidentemente distinta a la señal analógica original. Esta diferencia se conoce como Error o Ruido de Cuantificación, que se modela en la parte de recepción del sistema de Comunicación como un ruido que se le añade a la señal.

3. Codificación Digital

El último paso para este sistema es el de asignarle a los niveles discretos y finitos del paso 2 una traducción al sistema binario, quedando como señal resultante un tren de impulsos digitales (bits). Por ejemplo, si se precisaron 8 niveles de cuantificación, entonces se necesitarán tres bits para la codificación.

Para concluir este módulo, a continuación se muestra una simulación que se encarga de tomar una señal de voz para pasarla por los tres pasos explicados y observar así la señal codificada digitalmente, en conjunto con un video que le permitirá al usuario entender el grupo de bloques usados en el diagrama para construir el sistema PCM, de forma tal que el mismo pueda ir adaptándose al entorno del software LabVIEW.

Para descargar el archivo de audio necesario para la modulación, se debe hacer click en el siguiente enlace: Audio File: m_b_part_2_2.wav

El código fuente para la simulación de PCM puede descargarse aquí: Media File: pcmULTIMATE.vi

Content actions

Download module as:

PDF | EPUB (?)

What is an EPUB file?

EPUB is an electronic book format that can be read on a variety of mobile devices.

Downloading to a reading device

For detailed instructions on how to download this content's EPUB to your specific device, click the "(?)" link.

| More downloads ...

Add module to:

My Favorites (?)

'My Favorites' is a special kind of lens which you can use to bookmark modules and collections. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need an account to use 'My Favorites'.

| A lens I own (?)

Definition of a lens

Lenses

A lens is a custom view of the content in the repository. You can think of it as a fancy kind of list that will let you see content through the eyes of organizations and people you trust.

What is in a lens?

Lens makers point to materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

Who can create a lens?

Any individual member, a community, or a respected organization.

What are tags? tag icon

Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

| External bookmarks