Jump to content
    

Какой доступный контроллер с АДЦ 12 бит выбрать?

Добр.

Надо неспешно измерять токи 4-20 в количестве 16 штук с точностью 0.1%

Использую MCP3208 с 2.5 вольта образец и токовые резисторы 120 ом. MCP3208 надо две. Жалко! Может можно на STM32Gxx хотя бы 11 бит реальные? Или про MSP430 говорили будто там с 12 бит всё честно. Или может китайца какого? Архитектура ядра неважна.
Спасибо.

Share this post


Link to post
Share on other sites

3 часа назад, fmdost сказал:

Надо неспешно измерять токи 4-20 в количестве 16 штук с точностью 0.1%

Использую MCP3208 с 2.5 вольта образец и токовые резисторы 120 ом. MCP3208 надо две. Жалко! Может можно на STM32Gxx хотя бы 11 бит реальные? Или про MSP430 говорили будто там с 12 бит всё честно.

Если важна высокая точность, то можно взять ADuCM360 или ADuCM361. Правда там всего 11 каналов. Внешний коммутатор потребуется. Но зато разрешения - выше крыши!  :smile:

 

И почему не устраивают обычные МК с 12-битными АЦП? У Infineon-овских XMC4xxx АЦП вполне приличные. А если нужно бОльшую точность, так делайте больше измерений и фильтруйте. Тем паче, что скорость вам не важна. Если сильно боитесь каких-то помех, то можно периферии в МК задействовать по минимуму, и PLL не включать.

Share this post


Link to post
Share on other sites

Любой МК годится, если правильно развести, измерять и усреднять. В крайнем случае, собрать каскадом сравнивающий АЦП, т.е. добавить к сигналам пилу 120% МЗР.

Share this post


Link to post
Share on other sites

4 hours ago, fmdost said:

Надо неспешно измерять токи 4-20 в количестве 16 штук с точностью 0.1%

Использую MCP3208 с 2.5 вольта образец и токовые резисторы 120 ом. MCP3208 надо две. Жалко! Может можно на STM32Gxx хотя бы 11 бит реальные? Или про MSP430 говорили будто там с 12 бит всё честно. Или может китайца какого? Архитектура ядра неважна.

Разрядность поднимается оверсэмплингом, а чтобы у 12битного АЦП нелинейности хуже 0.1% были это постараться надо.

Применял как-то раз "не по назначению" msp430i2040, просто потому что четыре simultaneous sampling ацп с МК внутри оказались доступнее чем отдельные АЦП без МК.

а у TI там помимо msp430 теперь ещё и кортексыM0 есть, с 16ти канальным АЦП за 50 американских копеек

https://www.ti.com/microcontrollers-mcus-processors/arm-based-microcontrollers/arm-cortex-m0-mcus/products.html#1020=27%3B26%3B21%3B19%3B16%3B17&sort=1130;asc&

Share this post


Link to post
Share on other sites

8 hours ago, jcxz said:

Если важна высокая точность, то можно взять ADuCM360 или ADuCM361. Правда там всего 11 каналов. Внешний коммутатор потребуется. Но зато разрешения - выше крыши!  :smile:

 

И почему не устраивают обычные МК с 12-битными АЦП? У Infineon-овских XMC4xxx АЦП вполне приличные. А если нужно бОльшую точность, так делайте больше измерений и фильтруйте. Тем паче, что скорость вам не важна. Если сильно боитесь каких-то помех, то можно периферии в МК задействовать по минимуму, и PLL не включать.

Так их вон сколько с АЦП! Поди поищи! Инфинеон изучу, спасибо.
По поводу 12 бит: При оверсемплинге разве можно вытащить абсолютную точность?

 

7 hours ago, Plain said:

Любой МК годится, если правильно развести, измерять и усреднять. В крайнем случае, собрать каскадом сравнивающий АЦП, т.е. добавить к сигналам пилу 120% МЗР.

Что-то мну подсказывает что stm32 и 10  бит с трудом. Они сами об этом писали что 10.6 бита реальная точность.

 

6 hours ago, _pv said:

Разрядность поднимается оверсэмплингом, а чтобы у 12битного АЦП нелинейности хуже 0.1% были это постараться надо.

Применял как-то раз "не по назначению" msp430i2040, просто потому что четыре simultaneous sampling ацп с МК внутри оказались доступнее чем отдельные АЦП без МК.

а у TI там помимо msp430 теперь ещё и кортексыM0 есть, с 16ти канальным АЦП за 50 американских копеек

https://www.ti.com/microcontrollers-mcus-processors/arm-based-microcontrollers/arm-cortex-m0-mcus/products.html#1020=27%3B26%3B21%3B19%3B16%3B17&sort=1130;asc&

 

Пользовался как-то  430 в середине 0-х. Только положительные впечатления!
Там точно будет 12 бит? Не как у STM32? Никакие костыли с пустыми преобразованиями ненужны? 
UPD:  mcpm0 плоходоставабельные в малых количествах. Или знаете тайные тропы?

Share this post


Link to post
Share on other sites

В 31.05.2025 в 15:44, fmdost сказал:

stm32 и 10 бит с трудом. Они сами об этом писали

Очевидно, про штатную однократную выборку, а Вам предлагают иное — использовать АЦП в качестве компаратора, на второй вход которого подан сигнал развёртки, для этого нужен МК с квазидифференциальными входами, т.е. у которого доступен снаружи их общий минус, у STM32 в качестве такого годится VSSA, т.е. между ним и VSS подаёте пилу амплитудой 120% МЗР, например, с ЦАП или аналогового интегратора, после чего усредняете сделанные за период её прямого хода выборки.

Share this post


Link to post
Share on other sites

6 hours ago, Plain said:

Очевидно, про штатную однократную выборку, а Вам предлагают иное — использовать АЦП в качестве компаратора, на второй вход которого подан сигнал развёртки, для этого нужен МК с квазидифференциальными входами, т.е. у которого доступен снаружи их общий минус, у STM32 в качестве такого годится VSSA, т.е. между ним и VSS подаёте пилу амплитудой 120% МЗР, например, с ЦАП или аналогового интегратора, после чего усредняете сделанные за период её прямого хода выборки.

Разве с предложенным Вами способом можно увеличить абсолютную точность?

 

Вопрос по прежнему актуален!

Share this post


Link to post
Share on other sites

1 hour ago, fmdost said:

Разве с предложенным Вами способом можно увеличить абсолютную точность?

Абсолютная ошибка много из чего складывается, и приведённые выше 10.6бит скорее всего лишь относятся к уровеню шума на максимальной частоте, который убирается оверсэмплингом. А вот всё остальное: нелинейности, смещения, масштаб, дрейфы, кросстолк - нет.

Если надо совсем небыстро - возьмите любой сигма-дельта АЦП с запасом (есть и встроенные в МК, и даже в некоторые stm32, ну или msp430i2020, msp430f2013) и неспешно (время установления у этих АЦП небыстрый) переключайте ему каналы каким-нибудь 4067 мультиплексором.

Share this post


Link to post
Share on other sites

22 minutes ago, _pv said:

Абсолютная ошибка много из чего складывается, и приведённые выше 10.6бит скорее всего лишь относятся к уровеню шума на максимальной частоте, который убирается оверсэмплингом. А вот всё остальное: нелинейности, смещения, масштаб, дрейфы, кросстолк - нет.

Если надо совсем небыстро - возьмите любой сигма-дельта АЦП с запасом (есть и встроенные в МК, и даже в некоторые stm32, ну или msp430i2020, msp430f2013) и неспешно (время установления у этих АЦП небыстрый) переключайте ему каналы каким-нибудь 4067 мультиплексором.

Сейчас использую mcp3208 Честные 12 бит и 8 каналов. Хотелось бы вообще без лишних компонентов.
Увидел в STM 12 бит. Может кто реально проверял? А то Я заманался стенды делать!

Результат тестов stm32g030 несколько удручил(правильно рисовать умею). Да и инторнет ввёрг в сомнения. И ненравится он как-то.


Какой вольтмерт посоветуете? А, то у меня китаец. Тоже под сомнением.

WhatsAppImage2025-05-25at14_13_59.thumb.jpeg.4b4d0344a458a4778f83758d261b9677.jpeg

Share this post


Link to post
Share on other sites

6 часов назад, fmdost сказал:

предложенным Вами способом можно увеличить абсолютную точность?

Да — к опорным входам АЦП подключаете без разницы что-нибудь локально стабильное, TL431 например, а эталонный ИОН подключаете к 17-му каналу и измеряете его стереотипно с другими, а если терзают смутные сомнения и требуется калибровать линейность АЦП, то эталонный ИОН подключаете к 17-му входу АЦП посредством ШИМ делителя на RC фильтре и любом аналоговом переключателе, 74LVC1G3157 например, после чего в рабочем цикле периодически прогоняете Кзап полную шкалу.

Share this post


Link to post
Share on other sites

On 5/31/2025 at 3:00 AM, fmdost said:

Надо неспешно измерять токи 4-20 в количестве 16 штук с точностью 0.1%

mspm0g150* в жирном корпусе умеет 16 ног на 12 бит, причем у вас каждый канал одновременно будет 500кс/с семплиться (там два по 4Мс/с), то есть вы еще до 16 бит оверсемплитгом (они сами в даташите рекомендуют) на скорости примерно 2кс/с сможете получить. В розницу и не в РФ стоит бакс. Разводится просто, среда программирования дибильная, но пройти можно. Если по-дороже (за 8 бакс) и сразу из коробки 16 бит, можно и stm32h7b0, но он очень чувствителен как к разводке, так и к тому, чтобы правильный кварц, опорник были.

Share this post


Link to post
Share on other sites

45 минут назад, iiv сказал:

Если по-дороже (за 8 бакс) и сразу из коробки 16 бит, можно и stm32h7b0, но он очень чувствителен как к разводке, так и к тому, чтобы правильный кварц, опорник были.

За такую цену можно уже прецизионный 24-битный ADuCM360 купить: https://www.aliexpress.com/item/1005007640822278.html

Со встроенным же прецизионным опорником.

Ну или 24-битный ADuCM361 с одним АЦП там же за ~5.5 евро.

Да и кварц - зачем? Если нужно поменьше помех, то лучше работать от внутреннего RC-генератора с выключенным PLL. И всю ненужную периферию вырубить.

Думаю - ADuCM36x переплюнет по точности с запасом всех здесь предлагавшихся претендентов.   :don-t_mention:

Share this post


Link to post
Share on other sites

Даже на старом stm32f4xx при правильной трассировке получается 11-12 разрядов с одиночной выборки несмотря на завышенную частоту тактирования АЦП.

Share this post


Link to post
Share on other sites

7 minutes ago, jcxz said:

Да и кварц - зачем? если нужно поменьше помех, то лучше работать от внутреннего RC-генератора с выключенным PLL.

хз, без кварца он у меня безбожно врет с 13-го до 16-ого битах.

8 minutes ago, jcxz said:

За такую цену можно уже прецизионный 24-битный ADuCM360 купить: https://www.aliexpress.com/item/1005007640822278.html

согласен

Share this post


Link to post
Share on other sites

31 minutes ago, jcxz said:

За такую цену можно уже прецизионный 24-битный ADuCM360 купить: https://www.aliexpress.com/item/1005007640822278.html

У него каналов всё равно не хватит придётся мультиплексор снаружи городить. Да и отдельно тот же АЦП что там внутри (очень похож на ad719х) ведет себя лучше когда отдельно.

Тогда уж любой МК и какой-нибудь LTC2494 если измерять действительно надо неспешно или ADS1158 если не на столько неспешно.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...