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.

[参考译文] ADS1256:对3个通道进行采样时产生噪声数据、仅对一个通道无噪声

Guru**** 2539500 points
Other Parts Discussed in Thread: ADS1256

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1050968/ads1256-noisy-data-when-sampling-3-channels-no-noise-with-just-one-channel

器件型号:ADS1256

你好。

我的系统配置:

  • ADS1256
  • 单端、3通道
  • 无缓冲器
  • PGA 增益= 1
  • AVDD = 5伏
  • DVDD = 3.3伏
  • VREF = 2.5伏
  • 主晶振频率为8.00 MHz、而不是7.68 MHz
  • 输入范围= 0至5伏、缓慢变化的信号、在观察结果时本质上为直流
  • 转换速率设置为60Hz、由于晶振不同、它实际上是62.5Hz (16.0ms)。

我有三个通道采样、如数据表中所述。  当对三个通道进行采样时、我有一个较大的噪声分量、并且这些通道相互作用。   当我使用完全相同的时序和命令但仅设置通道0时、结果看起来很好。

这里只是通道0。  从我的传感器一直到 Arduino、都可以读取结果。  您无法分辨、但我在测试期间改变了通道1、它对通道0没有影响。  通道2目前已接地。

这三个通道同时运行。  我在几秒钟内缓慢改变通道1和2的输入、并在停留期间获得稳定的结果以查看行为。

这是上面三个通道图的一部分的缩放。

顶部线迹中的锯齿有大约1.08秒的周期。  该锯齿的振幅约为46、000个计数、非常大的 IMO。

红色通道1布线在83至87秒之间几乎没有噪声、这一点似乎也很奇怪。

显然、单通道采样和多通道之间的情况不同。

以下是所有编程、校准等之后的全套寄存器  根据数据表中修改的公式3、我强制将偏移设为零、并将增益设为所示的值、以获得完整的24位计数。

这是一个典型的读取周期。  我读取之前的转换(通道0)并设置为测量通道1:

希望这些图片在我提交时看起来正确。  我在编辑器中调整了它们的大小、它们被模糊了。

请帮助我了解此噪声问题的原因。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    抱歉、图片模糊、无法阅读。  如何提供分辨率更高的图片?  原稿为 PNG 文件、尺寸为"正常"笔记本电脑屏幕、应清晰可辨。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Dave、

    当您单击图片时、我的结尾看起来还可以(它们在线程本身中肯定是模糊的)

    您对输入端是否有任何模拟滤波? 当您通过通道进行多路复用时、可能会出现一些模拟趋稳问题、但对于单个通道而言、这一点并不明显。

    您的 SCLK 速度是多少? 从图像上看、这似乎是可以接受的、但很难准确辨别。 使用8MHz 主时钟时、它应该<=2MHz。

    您是否尊重 ADS1256数据表第6页上显示的时序要求? 具体而言、SYNC 和 WAKEUP 命令之间需要延迟(请参阅 T11)。

    数据应该显示什么内容? 您说输入在采样时发生了变化、但数据似乎相当恒定(除了噪声和" dwells")? 我本来希望输出代码随着您增加输入信号而增加、但它们在所有通道上看起来相对恒定。 预期结果是什么?

    " dwells"代表什么?

    布莱恩

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我认为顶部的数据图是显而易见的、因此我不会尝试复制它们。  

    编程和增益/偏移校准后的最后一组寄存器值为(十六进制):31 08 00 72 00 00 00 00 F0 51 46

    所示的最终值是从 ADS1256读回的、如我的 SPI 监听器所示。  它们同意我在 ADS1256中预期的那样。

    读取周期的时序很难描述、最好显示。

    DIN 上的字节为:51 00 08   FC 00  01   xx xx xx xx

    DOUT 上的最后三个字节(上一个通道的样本)为56 59 52

    如果您认为时机有所帮助、我可以验证或更改时间。  我假设滤波器在转换开始时不会重新启动、这会导致我看到的噪声。  我尝试按照图19中的数据表说明来循环使用 ADS1256输入多路复用器。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    除了传感器已有的外、前端没有模拟滤波。   读取通道0时的跟踪与所有其他测试完全相同、并且完全平坦。

    >  您的 SCLK 速度是多少?  

    好的、我错过了该规格。  它是2.00 MHz。  我可以将其丢弃以确保安全。

    您是否尊重 ADS1256数据表第6页上显示的时序要求?  

    我认为、我可以再次进行详细检查以确认这一点。

    数据应显示什么内容?

    前端连接到一个距离传感器、该传感器可在大约200mm 的长度上提供5V 输出。   我为每个大步骤手动移动目标、然后将其保留大约10秒钟以查看信号。  我正在进行初始系统集成测试、但这与最终产品的使用大致相同。  您可以看到、当我开始拾取目标或让其进入新位置时、某些步进更改的正面或背面有一些晃动。


    >   数据似乎相当恒定  (除了噪声和"驻留")?

    完全正确。  是的。   步骤(dwells)是由我随机移动目标到一个新位置创建的。  它是静止的、直到我再次移动它、这就是我获得平坦步进的原因。  除了大噪声之外、基本性能没有任何问题。   单通道图是我希望在所有三个通道上看到的结果。  您必须记住、图形显示的是原始 ADC 计数、因此它们将高达2^23或~840万。 任何影响最后 6 位或8位的低电平噪声都没关系、我只需要大约14位的分辨率、而没有噪声。  通道间的交互不会使产品正常工作。  大约40、000个计数的1秒锯齿变化也将是一个问题。  我想摆脱同样出现的其他尖峰、但如果我不得不在软件中筛选这些尖峰、我可能会进行筛选。

    噪声看起来并不随机、并且不会出现在单通道测试中。

    >  我本来希望输出代码随着输入信号的增加而增加、但它们在所有通道上看起来相对恒定。

    如果我移动目标、值会在两个通道上发生变化。  第三个传感器不可用、因此通道使用6.8K 电阻器接地。  我稍后 将 开始动态移动目标。  我需要学习爬网才能行走。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我想你把它钉在了。  我将 SPI 时钟速率更改为1MHz 并查看我得到的结果:

    没有噪音!   我不是说有_"否"噪声、只是我不喜欢的周期性东西在所有三个通道上都消失了。  我需要进行更多检查、我将确认命令的 SPI 时序、但我认为它似乎起作用。

    在此测试中、您会看到红色通道中出现一些常见的尖峰。  我手动来回挥舞目标、传感器正在测量这种情况。  我认为每个传感器的更新速度大约为5毫秒、比我转换三个通道快得多。  我进行此测试是为了向您展示所有数据不是平坦步长、传感器处于活动状态并随每个样本更新。

    再次感谢。  我会对此再做一些讨论、但我认为这个问题已经解决。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    很好,我很高兴这是一个相对容易的修复!

    布莱恩