Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Ответить

ADS1115. Применение, нюансы в работе. Вопросы

Пн окт 01, 2018 14:04:28

Всем доброго дня!

Тема открыта для обсуждения применения АЦП ADS1115 в радиолюбительских конструкциях. Китайцы выручают и продают уже готовые платы. Вот и я прикупил уже вторую такую. Первую я использовал в конструкции "Самый лучший измеритель емкости аккумуляторов". Автор Starichok51. Потом посмотрел на нее даташит и решил прикупить второй модуль для изучения и практического применения в одной из конструкций. В программировании я новичок, пишу для МК AVR в AtmelStudio.

Собственно у меня вопрос к тем, кто уже его использовал. Полностью я даташит не осилил, уж больно он непонятный для меня. Для тех, кто начинал программировать и нет соответствующего образования, меня поймут. К примеру даташиты на те же DS18B20, DS1307 по сравнению с даташитом на BMP280 просто детская литература и легко понятны, что и как реализовать. Так вот для меня даташит на ADS1115 оказался еще сложнее. В итоге я помучался и полез искать готовую библиотеку ads1115-driver-master. Я ее адаптировал для себя, заменив работу софтовой шины i2c на twi для ATmega8.

Для инициализации я использовал опорное FS=0,512 мВ (усилитель PGA 8x) и измерять собираюсь с точностью до 0,1 мВ . АЦП настроен на одиночное преобразование, частота дискретизации по умолчанию 128 Гц.

Измеряемое напряжение подключаю между А1 и А3 (А3 соединен с общим проводом платы модуля ADS1115), соответствующим образом сконфигурирован MUX = 010 (AINp=AIN1 и AINn=AIN3). Код работает, напряжение в мВ я вывожу на индикатор. Но есть непонятная странность в работе АЦП и похоже я что-то не учел. Я ожидал ошибок на нижнем пределе измерений, а получил ошибки на верхнем. Входное напряжение на дифференциальных входах контролирую мультиметром. Смог выставить 0,1 мВ от собранного ИОН на TL431 с делителем на 10. Мультиметр показывает это значение и АЦП его выдает. Попробовал выставлять 1 и 10 мВ, тоже без проблем. Показания в младшем разряде довольно устойчивые, не смотря на то, что собрано все на проводах на макетке и не используется усреднение. Но при подаче на вход напряжения 100 мВ АЦП стал врать на 0,5-0,6 мВ в меньшую сторону. Подал 200 мВ, ошибка возросла до 2 мВ в меньшую сторону.

Дифференциальное включение применил потому, что при несимметричном входе я том же значении FS=0,512 мВ я не увидел включения усилителя и АЦП не измерял нормально уже меньше 5-6 мВ. Пробовал найти этот момент в даташите, но не хватает знаний как по электронике, так и тупо знаний английского.

Помогите разобраться, почему возникает ошибки в работе АЦП. Во вложении я приложил исходную библиотеку. Свой код я не привожу, так как не вижу смысла, так как не изменял в исходном ничего касающегося работы с самим АЦП.
Изображение
Изображение
Измерял по такой схеме
Изображение
Вложения
ads1115-driver-master.zip
Оригинал драйвера
(435.79 KiB) Скачиваний: 497

Re: ADS1115. Применение, нюансы в работе. Вопросы

Чт окт 04, 2018 09:05:08

Была мысль, что раз есть падение напряжения, то где-то происходит переток тока. Для проверки подключил выводы А1, А3 модуля к измеряемому напряжению через резисторы 1 кОм. Показания не изменились. Похоже если и есть куда стекать току, то это где-то на плате модуля или в самой микрухе АЦП.

Re: ADS1115. Применение, нюансы в работе. Вопросы

Чт ноя 29, 2018 11:38:27

serg_svd писал(а): Но при подаче на вход напряжения 100 мВ АЦП стал врать на 0,5-0,6 мВ в меньшую сторону. Подал 200 мВ, ошибка возросла до 2 мВ в меньшую сторону.
а ты что думал, что его собственная погрешность равна нулю? ничего идеального не существует...
я же не спроста в своем приборе сделал калибровочный коэффициент...
и тебе нужно сделать то же самое. сначала откалибровать, чтобы при напряжении 200 мВ показывал именно 200 мВ, а уже потом проводить измерения других напряжений.
serg_svd писал(а):при несимметричном входе я том же значении FS=0,512 мВ я не увидел включения усилителя и АЦП не измерял нормально уже меньше 5-6 мВ.
что значит "не увидел включения усилителя"?
а 5-6 мВ при несимметричном входе - это может быть падение на общем проводе между GND микросхемы и точкой, куда ты подключаешь мультиметр и/или измеряемое напряжение. по этой причине использовать GND микросхемы в качестве AINn крайне нежелательно.

Re: ADS1115. Применение, нюансы в работе. Вопросы

Пт ноя 30, 2018 09:34:16

Владимир, да я понимаю, что где-то накосячил либо с подключением, либо с пониманием даташита. Но увы, пока проверить и продолжить тест я не могу.
Модуль ушел на замену сгоревшему в тестер аккумуляторов. Другой модуль АЦП я не заказывал. Тему закрывать не хочу, но по сути экспериментировать пока не на чем.

Re: ADS1115. Применение, нюансы в работе. Вопросы

Вт июл 14, 2020 18:50:02

Привет всем. Может кто видел схему вольтметра амперметра на ADC1115 (36В 15А). Нормально будет она измерять данные величины? (значениия напряжения через делитель, а ток через шунт)

Re: ADS1115. Применение, нюансы в работе. Вопросы

Ср июл 15, 2020 15:19:30

в первом посте упоминается моя тема, где есть вольтметр и амперметр на ADC1115.
есть еще одна моя тема по блоку питания - там тоже вольтметр и амперметр на ADC1115.
любые величины можно измерять - выбрать правильно делитель и правильно шунт.

Re: ADS1115. Применение, нюансы в работе. Вопросы

Ср июл 15, 2020 17:14:44

в принцмпе любой апаратный ADC лучше встроено в мк.... теп паче там типично обычно всего 10бит ма мегах и пиках
есть МК получшем но это отделная тьема да писать под них мало кто умет
весма перспективны новые клоны новатековских с дром 51 с их 12-14 битами при том что такая архитектура для замерилок и стабилизатороф величины парамеитра (давления/ температуры /тока)весма удобна и самодостаточна
но апаратка это апаратка и тут софтофки отдыхают ...но при усови идеалного прецизионого ион и правилной раз водки и комп онофки плат и цепей где идет измерителный сигнал частота замероф легко может доходить до 50-100гц если то надо что позволить сделать реалтаймовский TRURMS на переменке с высокой точностью и это без TI430


особено убога выглядят совтовки где реализован многазлядная ДИ средствами тогож мк такой показометр имет обычно 2-3 замера в секундук в лучшем случае для волтметра на выходе транса конечно сойдет а вот уже блоку с авторегулирофкой параметра уже будет неудобно выставлчть режимы...
не зряж в ЦИФРОВЫХ ПС на МК индикатор в режиме уставки работает по цифре и лищ потом спустя тайм аут переходит на непосредственый замер на выходе АЦП термопары иначе просто невозможно работать
впрочем сейчас есть спец ацп для термопар уже с компенсацие ХС жаль цена кусучая на них да и примероф разработок на них с ОТКРЫТЫМ КОДОМ очень мало
напротиф в аналных ПС все наоборот там
Ответить