NI-DAQmx换算用于将物理通道测量所得的单位转换为系统中传感器或执行器的单位。对于输入通道,读到的采样将被转换为最终换算后的单位。例如,换算可以将电压转换为线性位置。对于输出通道,写入的采样将被转换为通道的换算前单位。例如,换算可以将线性位置转换为电压值。也可使用换算校准读取或写入的采样,这样,最终换算单位就与通道的换算前单位保持了一致。

大多数情况下,用户无需自行创建换算,因为NI-DAQmx支持大多数传感器、感应器和执行器的换算。例如,创建模拟输入的温度通道时,可为测量指定所需传感器(例如,热敏电阻、RTD或热电偶)。但是,如NI-DAQmx不支持系统中的自定义传感器或执行器,则可创建一个换算,从而指定如何将未换算的单位转换为换算后的单位。可将一个换算用于多条通道。如多条使用相同的换算,则不必为每一条通道分别创建换算。当换算分配至通道后,换算将应用至通道换算前单位的所有属性。例如,如将一个自定义换算分配至电压通道,通道的最低和最高值属性将以米为单位表示。

换算前单位和换算后单位的比较

换算前表示以通道上的单位表示的值,未经过自定义换算。多数情况下,换算前单位是伏特或安培,因为通道测量或生成的信号多为电压或电流信号。但是,可在包含NI-DAQmx支持的传感器的通道上使用换算。在上述情况下,换算前单位就是所包含的传感器通道的单位。例如,可创建一个模拟输入电阻通道,并在该通道上使用一个换算。在该例中,换算前单位是欧姆,换算指定如何将欧姆转换为换算后单位。

换算后指NI-DAQmx应用自定义换算后的最终单位。例如,在电压输出通道上使用线性位置至电压转换的换算。在上述情况下,换算前单位是伏特,换算后单位是米。换算后的单位是最方便用于应用程序的单位。用户可完全控制换算后的单位。换算指定了通道测量或生成的信号从换算前单位到换算后单位的转换。当从与换算相关的通道读取样本时,得到的样本以换算后单位表示。同理,当写入样本至与换算相关的通道时,得到的样本以换算后单位表示。

可使用DAQ助手或通过编程创建换算。当通过编程将关联换算和通道时,必须将自定义换算名称属性设置为换算的名称,再将单位属性设置为来自自定义换算。

注: 未换算数据不等同于换算前数据。未换算数据指设备自身格式的8位、16位或32位整数。预处理单位是应用自定义换算之前的测量单位,例如,伏特或安培。

范例-将单位伏特转换为转/分

假设连接了一个模拟输出电压通道至一个电机,电机的速度与生成的电压成正比,需创建一个指定这种转换关系的换算。在该例中,换算前单位是伏特,换算后单位是转/分。需指定将伏特转换为转/分的方程、表格或映射关系。创建该换算后,可将该换算与模拟输出电压通道建立关联。使用NI-DAQmx,无需在运行应用程序时转换单位,也无需开发额外的代码来执行转换,只需将采样按转/分单位直接写入相关的通道,NI-DAQmx将直接进行指定的转换。换算可简化代码并增加应用程序的可用性。

使用非单调递增/递减的换算

有些换算类型不是单调递增或递减的。这可能会使应用程序无法产生期望结果。例如,一组换算前的值对应于同一个换算后的值,从换算后的值转换为换算前的值时就可能产生模棱两可的情况。在上述情况下,换算定义明确且可预测。应尽量避免并谨慎使用非单调递增的换算。