您好!
我希望在代码运行时根据需要更改 VFR 校准的斜率和偏移。 我找到了这些值、但您能建议我更改 IQ16值的方法吗?
此致、
Prudhvi Sagar
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
我希望在代码运行时根据需要更改 VFR 校准的斜率和偏移。 我找到了这些值、但您能建议我更改 IQ16值的方法吗?
此致、
Prudhvi Sagar
您好 Prudhvi、
您可以将其作为仪表常数算法对象 USS_Algorithms_Flow_Meter_constant 的一部分进行更新。
请参阅 ussDCCommandHandlers.c:Handler_calib_linear_constants_id ()中 GUI 界面的更新方式。 我在此处复制相关代码行:
//存储结果
gUssSWConfig.AlgorithmsConfig->calibObject.flowCalibObject->pMeterConfiguration[rangeNum].iq16minimumVFR =_IQ16 (mcValues[0]);
gUssSWConfig.AlgorithmsConfig->calibObject.flowCalibObject->pMeterConfiguration[rangeNum].iq16Slope =_IQ16 (mcValues[1]);
gUssSWConfig.AlgorithmsConfig->calibObject.flowCalibObject->pMeterConfiguration[rangeNum].iq16Offset =_IQ16 (mcValues[2]);
mcValues[]由 GUI 提供。 在您的情况下、这些将是作为校准一部分的更新值。
Srinivas
您好 Srinivas、
感谢您的支持。 如果我直接访问而非 ussDCCommandHandlers.c:Handler_calib_linear_constants_id ()并直接使用、是否会有问题
gUssSWConfig.AlgorithmsConfig->calibObject.flowCalibObject->pMeterConfiguration[rangeNum].iq16Slope
gUssSWConfig.AlgorithmsConfig->calibObject.flowCalibObject->pMeterConfiguration[rangeNum].iq16Offset
此致、
Prudhvi Sagar
您好 Prudhvi、
您应该能够做到的。 这也是在提供的库中完成的操作。 您可以在 USS_calibrateVFRFlow()中看到用法。 它使用的
flowCalibObj->pMeterConfiguration[calibIdx].iq16斜率
flowCalibObj->pMeterConfiguration[calibIdx].iq16偏移
其中 flowCalibObj = config->AlgorithmsConfig->calibObject.flowCalibObject
这基本上就是您的建议。
Srinivas