我有一个传感器连接到一个HX711,这一切都很好。我正在尝试创建一个包含10个点的校准表,其中包含原始传感器输出和使用一组权重的校准值。称重传感器是双向的,所以它在任何方向上工作,所以输出是正的和负的计数,但零不一定是0输出。
当每个查找表中的数字都是正数或负数时,这一切都可以正常工作,但当捕获的点中有负数和正数时,这一切都会失败。例如,HX711的输出为正28,000,且无负载。加1千克的负荷,读数为-56,000。1千克的下一个读数是-83,000。它们以{28,000,-56000,83,000}的形式存储在一个数组中,校准后的{0,1,2}存储在另一个数组中。
通常,我会根据原始计数落在哪两个数字之间来对结果进行插值。当数字小于-56000,并且我得到1到2千克的读数时,一切都正常。当读数大于-56000时,它无法计算读数,我最终得到NAN。
它也可以是相反的,先是负面的,然后是正面的。(-56,000,28,000,55,000}例如。
如何处理这种情况?
发布于 2020-05-29 19:24:02
在我发布这个问题后不久,我就解决了这个问题,并认为这个答案可以帮助其他任何人解决同样的问题。当我遍历表格时,通过比较负数或正数的两个值,然后在计算中交换它们,它是有效的。28,000和-56,000之间的差值为84,000,并使用此差值进行数学运算。我通过应用1 1kg和2kd的测试负载来确认操作。它在两个方向上都显示为pos或neg。
https://stackoverflow.com/questions/62080628
复制相似问题