Повозился вчера вечером с вопросом точности на низких частотах.
Нелинейные искажения возникают при установке максимального коэффициэнта усиления x32 в PGA MCP6S21. Но их наличие либо отсутствие никак не влияет на точность фазы.
Достал платку старую для сравнения. Она практически ничем не отличается, только нет отключаемого конденсатора в фильтре после DAC. Сейчас в ней был напаян 3.3 nF конденсатор. Каково же было мое удивление, когда оказалось, что там точность определения фазы в 3 раза выше и ошибка имеет другой знак.
Подключил резистор 100 Ом. При измерении его практически нет ни шумов, ни второй гармоники.
На частоте 30 Гц:
- на новой платке ошибка -0.26 градуса
- на старой платке ошибка +0.07 градуса
ошибка очень стабильна, плавно уменьшается с частотой.
На новой платке ошибка после x20 усреднения получается на уровне 0.2-0.3 LSB и можно уже разглядывать как перещелкиваются уровни на ADC на 1 LSB
Причем графики IV практически идеалльно накладываются друг на друга как по амплитуде так и по фазе. Сейчас рабочая гипотеза такая:
Когда синус растет один из каналов перещелкивается на 1 LSB чуть раньше, чем другой. Этого вполне хватает, чтобы получить ошибку в 0.26 градуса.
Причем похоже отсутствие шумов только усугубляет проблемму...
Сделал еще один эксперимент, который давно хотел сделать. Отключил IV конвертор, и заставил его работать как виртуальную землю. Потестировал на частотах 10 Гц- 3 КГц - разницы в результатах не заметил практически.