主题中讨论的其他器件: ADS125H02、 ADS124S08、 ADS1235
大家好、下午好。 我在此寻求帮助、以解决使用 ads131m08读取称重传感器时遇到的一些问题。 我将设置 ads131m08以检测5个称重传感器。
我的配置如下:时钟8.192MHz、OSR = 1024、4kSPS、FSR =±1.2V / 32 = 37.5mV。 我为每个通道配置了本地值(我遇到问题[1])。 称重传感器为4线、2mV/V、由15V 供电、状态良好。
目前、我仅使用2个单元进行测试、广告的通道3和4。 两节电池并联供电、均采用同一15V 电源。 校准零点时、通道4中的电池在0.3到0.5kg 之间趋稳。 不过、校准后、通道3中的电池在1kg 到20kg 范围内变化。 有时波动10千克,有时跳跃到20千克以上,然后回落。
我校准了刻度和偏移(手动寄存器)。 在数据表中、它提到了使用寄存器 CHN_FCAL_MSB 和 CHN_FCAL_LSB 对每个通道进行增益校准、这是我遇到问题[2]的地方。
让我解释一下每个问题/疑问:
问题[1]:根据我的理解,可以使用手动值将 ADC 设置为0,在这种情况下是8388607,但获得的值相差几百。 下面是我的代码片段:
#计算 a diferencia con el punto medio 8388607
valor_ocal = 8388607 - valor_a_tomar_POR_offset
打印(f"valor POR 偏移:{valor_a_tomar_POR_offset}")
如果 valor_a_tomar_POR_offset == 0:
valor_ocal=0
打印("valor ocal:"、valor_ocal)
#转换完成 A dos si necesario
如果 valor_ocal < 0:
valor_ocental_complemento_a_dos =(1 << 24)+ valor_ocal
valor_ocal_complemento_a_dos &= 0xFFFFFF
Elif valor_ocal>0:
valor_ocental_complemento_a_dos =值_手动
valor_ocal_complemento_a_dos &= 0xFFFFFF
其他:
打印("estoy reseteando:")
valor_ocal_complemento_a_dos = 0
#继续...
问题[2]:我假定可能存在增益误差,所以我想对其进行校准,但我不确定使用什么值。 是否涉及计算、还是试错?
问题[3]:是否有可用于校准广告的指南?
问题[4]:当我用一个与我的广告电路共用接地的源为负载单元供电时,单元锁定为一个值。 但是、如果我将外部源连接到负载单元电路、它们会"正常"工作。 我阅读过关于接地环路的内容、但我对它并不完全清楚。
我将附加一个电路的简单示意图以供参考。