Convertir una forma de onda en una matriz 2D

Actualizado el Jan 6, 2020

Reportado en

Software

  • LabVIEW Full
  • LabVIEW Base

Detalles del problema

  • Mis datos están en una forma de onda y me gustaría convertirlos en una matriz bidimensional (2D) de números decimales
  • Necesito escribir datos de forma de onda en un archivo de texto
  • Me gustaría usar funciones de matriz en mis datos de forma de onda

Solución

  • Para convertir estos datos en una matriz 2D, deberá extraer los datos 'Y'existentes de la forma de onda y asignar un tiempo a cada valor.
  • A continuación se muestra un ejemplo de cómo convertir los datos en una matriz 2D de números con decimales
    1. Utilice la función Obtener componentes de forma de onda para extraer los datos Y y dt de la forma de onda
    2. Indexación automática a través de un bucle For para obtener la matriz de valores Y
    3. Dentro del bucle multiplica dt por el conteo de iteraciones. Esto le dará el tiempo asociado a cada punto de datos.
    4. Combine la matriz Y y la salida de la multiplicación utilizando la función Crear matriz
    5. La salida indexada de la función Construir Arreglo le dará una matriz 2D de los datos de forma de onda en relación con el tiempo

Información adicional

  • El tipo de datos de forma de onda es un tipo especial de grupo compuesto por 4 elementos
    • Y - Esta es una matriz 1D de las mediciones de amplitud de sus datos
    • t0 : esta es una marca de tiempo que indica la hora de inicio de su medición
    • dt - Este es un escalar que describe la división de tiempo uniforme de la señal en segundos
    • Atributos : este es un tipo de datos de variante que contiene todos los metadatos de forma de onda, como el número de dispositivo de hardware o los nombres de los canales
  • El fragmento anterior y este ejemplo de la comunidad muestran una implementación del programa deseado
  • El método anterior es ignorar completamente los atributos y t0 elementos de datos de la forma de onda y solo se enfoca en la división de tiempo (dt) y los datos de amplitud (Y).
    • Esto simplifica el código y se centra en los elementos más importantes de los datos entrantes.
  • El código en el fragmento anterior hace lo siguiente
    • Toma la matriz de amplitud e itera a través de la matriz, asignando un valor de tiempo de la división de tiempo multiplicado por la iteración actual del bucle
    • Al combinar primero estos dos valores en una matriz 1D de dos elementos y luego indexarlos con un bucle for, el resultado es una matriz 2D de dos columnas
    • La primera columna contiene información de tiempo, comenzando en 0, aumentando en dt cada fila
    • La segunda columna contiene todos los datos de amplitud.
    • Tenga en cuenta que las funciones de forma de onda adicionales se pueden encontrar en la paleta de funciones en Programación »Forma de onda.