Работа с АЦП

Встраиваемые микроконтроллеры для систем управления приводом и автоматизации
Аватара пользователя
Лашкевич Максим
Сообщения: 319
Зарегистрирован: 30 дек 2015, 10:38

Re: Работа с АЦП

Сообщение Лашкевич Максим » 12 апр 2021, 11:45

Попробуйте включить периферийный блок АЦП "усреднитель". Поиграйте количеством точек усреднения. Улучает ли он ситуацию?
С уважением,
Лашкевич Максим.
skype: maxlashk
Инженер-программист ООО "НПФ Вектор", Москва.

BogatovNA!
Сообщения: 6
Зарегистрирован: 22 мар 2021, 14:45

Re: Работа с АЦП

Сообщение BogatovNA! » 12 апр 2021, 13:21

Лашкевич Максим писал(а):
12 апр 2021, 11:45
Попробуйте включить периферийный блок АЦП "усреднитель". Поиграйте количеством точек усреднения. Улучает ли он ситуацию?
Попробовал поиграться с аппаратным усреднением на обоих частотах (12 и 9МГц).
На хорошей частоте 12МГц, и без усреднения и с вместе с ним, разброс сигнала в районе 5-10 дискрет.
При тактировании АЦП 9МГц в любой режиме усреднения шумы составляют 100-130 дискрет.
Заметил особенность, что при тактировании в 9МГц и усреднении на 4 при сбросе питания и перезапуске контроллера иногда размах помех уменьшается до 40 дискрет. Повторить подобное с усреднением на 16 и 64 не получилось. Так же из опытов ранее, было замечено, что после перезапусков контроллера сигнал ацп показывают разную постоянную составляющую, при этом измерение мультиметром это не подтверждается.
Проверил питание и напряжение на входе ножки после перезапусков. Напряжения не изменяются. Пробовали перепаивать контроллер, результат тот же.

Аватара пользователя
Лашкевич Максим
Сообщения: 319
Зарегистрирован: 30 дек 2015, 10:38

Re: Работа с АЦП

Сообщение Лашкевич Максим » 12 апр 2021, 13:29

Попробуйте другую плату - купите какую-нибудь отладочную плату и проверьте на ней. Попробуйте другую программу на всякий случай. Очень какие-то сложные симптомы. Тот факт, что усреднитель не помогает, позволяет предположить, что помеха имеет не случайный шум самого АЦП, а какую-то периодическую составляющую. Возможно, было бы интересно снять осциллограмму сигнала АЦП средствами микроконтроллера с дискретностью 100мкс, 1000мкс, поискать какую-то зависимость, частоту.
С уважением,
Лашкевич Максим.
skype: maxlashk
Инженер-программист ООО "НПФ Вектор", Москва.

Илья!
Сообщения: 106
Зарегистрирован: 09 ноя 2018, 16:55

Re: Работа с АЦП

Сообщение Илья! » 28 июн 2022, 11:18

Здравствуйте.
Проблема в следующем. Использую настройку АЦП и ШИМ из MotorControlDemo. Но изменил запуск АЦП не от третьего блока ШИМ, а от нулевого. При частоте ШИМ до 15 кГц, АЦП работает корректно. Стоит только установить частоту ШИМ 15 кГц или выше, происходит сбой работы АЦП, выражающийся в следующем: по каналам АЦП 0 и 1 приходят совершенно неверные измерения. В моем проекте на канал 0 заведен ток, на канал 1 - напряжение Udc. Обе эти переменные должны быть в районе 0. Так вот, при частоте ШИМ до 15 кГц они колеблются около 0, а при частотах ШИМ 15 кГц и выше эти переменные улетают вверх и не возвращаются даже если сменить частоту ШИМ.
Лечится это, было выявлено опытным путем, записью ненулевого фазового сдвига, достаточно 1, в регистр TBPHS того модуля ШИМ, от которого происходит запуск АЦП. И получается что при запуске от ШИМ 3, у которого этот регистр ненулевой, АЦП работает корректно, а при попытке запуска АЦП от ШИМ 0, у которого данный регистр должен быть равен 0, работа АЦП нарушается. Причем это как пороговое значение - ниже 15 кГц работает, выше - нет. Причем, если подать питание при с установленной частоте ШИМ меньше 15 кГц АЦП запуститься корректно и будет работать дальше корректно даже если в работе частоту ШИМ увеличить. И наоборот, если подать питание при установленной частоте ШИМ >= 15 кГц, то АЦП запуститься с ошибкой и будет работать некорректно, даже если при работе частоту ШИМ понизить.
Прошу подсказать причину данной проблемы. В ерате не нашел такого дефекта.

Благодарю.

Илья!
Сообщения: 106
Зарегистрирован: 09 ноя 2018, 16:55

Re: Работа с АЦП

Сообщение Илья! » 30 июн 2022, 16:30

уточняю информацию.
Решил проверить а проявляется ли этот дефект на отладочной плате (HW_VECTORCARD_DRV8301_EVM) с проектом MotorControlDemo. Оказалось - нет. Тогда решил полностью сверить проект MotorControlDemo со своим в части настройки ШИМ и АЦП и их взаимодействия. Внеся в проект MotorControlDemo все свои изменения тоже не смог добиться проявления дефекта. И только после того как сделал кол-во измеряемых каналов в проекте MotorControlDemo таким же как в моем проекте, получил проявление данного дефекта. В моем проекте измеряются 11 каналов АЦП и все они запускаются от одного секвенсора (в документации не указано ограничение на кол-во каналов от одного секвенсора), в проекте MotorControlDemo используются 3. Когда я подключил 11, то получил тоже проявление.
Подскажите, как это расценивать: толи дефект, толи неполнота информации в документации касаемо ограничения измеряемых каналов на одном секвенсоре?, толи некорректность настройки? Каково максимальное количество каналов на один секвенсор?

Благодарю

Аватара пользователя
Лашкевич Максим
Сообщения: 319
Зарегистрирован: 30 дек 2015, 10:38

Re: Работа с АЦП

Сообщение Лашкевич Максим » 01 июл 2022, 13:27

Добрый день. В MotorControlDemo забор данных идёт через fifo, так сделано чтобы для низких частот ШИМ получить усреднение по нескольким точкам. Скорее всего вам для большого числа каналов просто фифо не хватает. Перейдите от использования фифо на прямой забор результатов. Я приводил примеры:

viewtopic.php?f=13&t=3&p=1354&hilit=DCVAL_bit#p1354
http://forum.niiet.ru/viewtopic.php?f=3 ... 430#p15398
С уважением,
Лашкевич Максим.
skype: maxlashk
Инженер-программист ООО "НПФ Вектор", Москва.

Илья!
Сообщения: 106
Зарегистрирован: 09 ноя 2018, 16:55

Re: Работа с АЦП

Сообщение Илья! » 01 июл 2022, 18:50

Я думаю, что ФИФО тут не при чем, т.к. при установке регистра TBPHS = 0x0001 блока ШИМ, от которого происходит запуск АЦП, измерения проходят должным образом. И в своем проекте я не использую усреднение, упомянутое вами. Данная таблетка работает как в проекте MotorContyrolDemo, так и в моем.

Аватара пользователя
Лашкевич Максим
Сообщения: 319
Зарегистрирован: 30 дек 2015, 10:38

Re: Работа с АЦП

Сообщение Лашкевич Максим » 02 июл 2022, 16:20

Ну если на фазу и запуск дело завязано, то надо понять, в какой момент идет запуск ацп, в какой момент забираете данные. Можно сделать дерганье ножкой ШИМ от блока ШИМ 1, сделать дёрганье другой ножкой в момент забора данных АЦП, и сместе с оригинальным ШИМ посмотреть всё вместе не осциллографе. Посмотреть, что меняет TBPHS = 0x0001.
С уважением,
Лашкевич Максим.
skype: maxlashk
Инженер-программист ООО "НПФ Вектор", Москва.

Ответить