NI-DAQmx incluye soporte interno para muchos de los transductores, sensores y actuadores más comunes. Sin embargo, si NI-DAQmx no soporta explícitamente su transductor o actuador, puede crear una Escala Personalizada NI-DAQmx que especifique una conversión desde las unidades pre-escaladas medidas por un canal a las unidades escaladas asociadas con el sensor. Usar una escala personalizada no modifica la medida física; solamente la manera en que se interpretan los datos.
Pre-escalado se refiere a los valores expresados en la unidad del canal antes de que se aplique la escala personalizada. Por lo general, las unidades pre-escaladas son voltios o amperios, ya que la mayoría de los canales medirán o generarán de forma nativa señales de este tipo. Sin embargo, es posible asociar una escala con un canal que contiene un transductor explícitamente compatible con NI-DAQmx. En este caso, las unidades pre-escaladas son las que utiliza el canal de transductor soportado. Por ejemplo, si asocia una escala con un canal de resistencia de entrada analógica, las unidades pre-escaladas serían ohms y la escala especificaría cómo convertir de ohmios a las unidades escaladas deseadas.
Escalado se refiere a los valores expresados en la unidad final después de que NI-DAQmx aplica la escala personalizada. Puede definir unidades escaladas como mejor se ajuste a su aplicación. Por ejemplo, si asigna una escala de posición lineal a voltaje en un canal de salida de voltaje, las muestras pre-escaladas están en voltios mientras que las muestras escaladas podrían especificarse en metros.
NI-DAQmx proporciona cuatro tipos de escala:
El tipo de escala lineal personalizada usa la ecuación y = m * x + b, donde x es un valor pre-escalado e 'y' es un valor escalado. La ecuación es idéntica para entrada y salida.
El tipo de escala personalizada de rangos de mapeo, escala los valores proporcionalmente desde un rango de valores pre-escalados a un rango de valores escalados.
El tipo de escala polinomial personalizada utiliza una ecuación polinomial al enésimo grado. NI-DAQmx requiere tanto un polinomio para convertir los valores pre-escalados en valores escalados (hacia adelante) como un polinomio para convertir los valores escalados en valores pre-escalados (hacia atrás). Si solo conoce un conjunto de coeficientes, use el DAQmx Compute Reverse Polynomial Coefficients VI para generar el otro conjunto.
El tipo de escala personalizada de tabla asigna valores pre-escalados a sus valores escalados correspondientes. NI-DAQmx aplica la interpolación lineal a los valores que se encuentran entre los valores de la tabla. Las operaciones de lectura seleccionarán muestras que están fuera de los valores escalados máximos y mínimos que se encuentran en la tabla. Las operaciones de escritura seleccionarán muestras que están fuera de los valores escalados mínimos y máximos que se encuentran en la tabla.
Las escalas personalizadas NI-DAQmx se pueden crear y aplicar en Measurement & Automation Explorer (MAX), DAQ Assistant, o programáticamente en LabVIEW o LabWindows™/CVI™. En LabVIEW, las escalas personalizadas creadas en NI MAX se pueden aplicar de dos maneras:
El DAQmx Create Virtual Channel VI puede tener una terminal donde se pueden proporcionar nombres de escala personalizadas. Este VI es polimórfico, por lo tanto si esta terminal está presente o no, depende del tipo de canal. Si la terminal no está presente, las escalas personalizadas no son aplicables al tipo de canal. Si se utiliza una escala personalizada, las Unidades debe especificarse como From Custom Scale.
Los nodos de propiedad del canal DAQmx también se pueden usar para implementar una escala personalizada. Al igual que con DAQmx Create Virtual Channel, las unidades deben especificarse como From Custom Scale
Aplicar las escalas personalizadas en LabWindows™/CVI™ es muy similar. Para aplicar una escala personalizada al crear un canal, especifique el argumento Units como From Custom Scale y especifique su nombre de escala personalizada en el argumento Custom Scale Name. Para aplicar una escala personalizada con propiedades, use DAQmx GetChanAttribute para configurar la propiedad Custom Scale Name a el nombre de su escala personalizada y para configurar la propiedad Units a From Custom Scale.
Las escalas personalizadas también pueden ser creadas y aplicadas programáticamente.
Las escalas personalizadas pueden aplicarse tanto a los canales de entrada como a los de salida:
La escala toma valores pre-escalados de señal analógica y los convierte en unidades escaladas especificadas por la escala personalizada. Por ejemplo, una escala podría convertir una voltaje a una posición lineal. Cuando usted lee muestras de un canal asociado con una escala, las muestras están en unidades escaladas.
La escala toma los valores unitarios especificados como una entrada y emite un valor de señal analógica correspondiente para escribir en el canal de salida. Por ejemplo, una escala podría convertir una posición lineal en un voltaje. Cuando escribe muestras en un canal asociado con una escala, las muestras están en unidades escaladas.
También puede usar escalas para calibrar muestras leídas o escritas para que las unidades escaladas finales sean idénticas a las unidades pre-escaladas del canal. Después de asignar una escala a un canal, la escala se aplica a todos los atributos normalmente expresados en las unidades pre-escaladas del canal. Esto incluye los valores máximos y mínimos asignados al canal. Por ejemplo, si una escala personalizada, que convierte voltios en metros, se asigna a un canal de voltaje, los atributos mínimos y máximos de los canales se expresan en metros.
Imagine que ha conectado un canal de voltaje de salida analógica a un motor cuya velocidad es proporcional al voltaje generado y desea crear una escala que especifique esta conversión. Las unidades pre-escaladas en este caso serían voltios y las unidades escaladas podrían ser revoluciones/minuto. Luego, debe especificar la ecuación, tabla o mapa que se convierte de voltios a revolución/minuto. Una vez que haya creado esta escala, usted debe asociar la escala con un canal de voltaje de salida analógica. En lugar de tener que convertir entre voltios y revoluciones/minuto manualmente o con código adicional, simplemente puede escribir las muestras en unidades de revoluciones/minuto directamente en el canal asociado con la escala y NI-DAQmx realiza automáticamente las conversiones especificadas. Las escalas pueden simplificar su código y mejorar la usabilidad de su aplicación.
Nota: NI-DAQ Tradicional (Legado) incluye escala lineal, polinomial y de tabla en forma de escalas personalizadas de NI-DAQ Tradicional. Estas escalas personalizadas funcionan de manera similar a las escalas personalizadas de NI-DAQmx descritas en este artículo.