Дифференциальный вольтметр на ads1115

selan61
Offline
Зарегистрирован: 15.12.2017

Добрового времени суток. Коллеги подскажите по такому вопросу.

Делаю дифференциальный вольтметр на ads1115 для измерения напряжения на внешних АКБ УПС, который питает газовый котел в часном доме, для удаленного контроля через народный мониторинг.

Проблема в том, как поставить резистивный делитель для измерения напряжения. 

По такой схеме:

Или по такой:

Или обе неправильные?

b707
Offline
Зарегистрирован: 26.05.2017

вторая, очевидно, более правильная

selan61
Offline
Зарегистрирован: 15.12.2017

b707 пишет:

вторая, очевидно, более правильная

Можно поконкретней, почему очевидно.

b707
Offline
Зарегистрирован: 26.05.2017

потому что на первой схеме делитель на правом АКБ подключен "вверх ногами" - с него на сенсор будет приходить 10в, а не 3в, как вы планировали

selan61
Offline
Зарегистрирован: 15.12.2017

b707 пишет:

потому что на первой схеме делитель на правом АКБ подключен "вверх ногами" - с него на сенсор будет приходить 10в, а не 3в, как вы планировали

На вход 10 вольт никак не должно придти, т.к. параллельно входу стоит резистор 10к, а гасящий 40к стоит на линии. А так как это дифференциальный вход, то в каком плече он будет стоять( по плюсу или по минусу) должно быть все равно. Так я думаю. А если первую схему нарисовать в таком виде. Не очевидно?

Andy
Andy аватар
Offline
Зарегистрирован: 01.01.2016

Ни одна из приведенных схем не будет работать. Измеряемое напряжение должно прикладываться относительно напряжения питания АЦП 3.3В.

b707
Offline
Зарегистрирован: 26.05.2017

selan61 пишет:

На вход 10 вольт никак не должно придти, т.к. параллельно входу стоит резистор 10к, а гасящий 40к стоит на линии. А так как это дифференциальный вход, то в каком плече он будет стоять( по плюсу или по минусу) должно быть все равно. Так я думаю.

Неправильно думаете. Если гасящий резистор стоит по плюсу, то напряжение на нем падает ДО измерительного входа, а если по минусу - ПОСЛЕ. Как результат - напряжение на входе в этих случаях будет разным.

 

selan61
Offline
Зарегистрирован: 15.12.2017

Проблема в том, что непонятно, для дифвхода эти схемы идентичны или нет.

selan61
Offline
Зарегистрирован: 15.12.2017

Andy пишет:

Ни одна из приведенных схем не будет работать. Измеряемое напряжение должно прикладываться относительно напряжения питания АЦП 3.3В.

ADS1115 умеет мерять и в дифрежиме, т.е. один вход относительно другого.

Andy
Andy аватар
Offline
Зарегистрирован: 01.01.2016

Флаг в руки.

selan61
Offline
Зарегистрирован: 15.12.2017

b707 пишет:

Неправильно думаете. Если гасящий резистор стоит по плюсу, то напряжение на нем падает ДО измерительного входа, а если по минусу - ПОСЛЕ. Как результат - напряжение на входе в этих случаях будет разным.

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

Если второй меряет относительно третьяго, получим + 13,5, а если наоборот - 13,5.

selan61
Offline
Зарегистрирован: 15.12.2017

Andy пишет:

Флаг в руки.

 Так этим и занимаемся.

b707
Offline
Зарегистрирован: 26.05.2017

selan61 пишет:

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

при чем здесь дифф режим?  - вы понимаете, что у вас на вход в этих схемах будут приходить разные напряжения? Или вы считаете, что два делителя ниже выдают одно и то же ?

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

selan61 пишет:

ADS1115 умеет мерять и в дифрежиме, т.е. один вход относительно другого.

И да и нет :) ADC1115 не поддерживает true-diff подключения, а значит все измерения хотя и проводятся  между + и -, всё же  они  относительно земли. То есть условную батарейку, подключенную только к + и -  (без земли) он скорее всего измерит верно, но с 2 входами между которыми перекос напряжений  это уже не прокатит. Вобщем как сказал Andy обе схемы неправильные. Заземлите оба  минуса, и делайте стандартное включение делителей, как если бы включали к обычным аналоговым входам МК.

 

selan61
Offline
Зарегистрирован: 15.12.2017

[quote=b707]

при чем здесь дифф режим?  - вы понимаете, что у вас на вход в этих схемах будут приходить разные напряжения? Или вы считаете, что два делителя ниже выдают одно и то же ?

 

/quote]

Нарисовал токи и падение напряжения, на входах 0-1 и  2-3 одинаковые  2.7В.

selan61
Offline
Зарегистрирован: 15.12.2017

[quote=dimax]

И да и нет :) ADC1115 не поддерживает true-diff подключения, а значит все измерения хотя и проводятся  между + и -, всё же  они  относительно земли. То есть условную батарейку, подключенную только к + и -  (без земли) он скорее всего измерит верно, но с 2 входами между которыми перекос напряжений  это уже не прокатит. Вобщем как сказал Andy обе схемы неправильные. Заземлите оба  минуса, и делайте стандартное включение делителей, как если бы включали к обычным аналоговым входам МК.

/quote]

А какая разница, если он меряет одну батарейку, подключенную только к + и -  (без земли) , то что мешает ему померять 2 батарейки. Одна пара входов меряет одну батарейку, вторая другую, ну и что что они соединены. 

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

selan61,  Ну проверьте делов-то. Могу сказать  одно -устройство данного типа дифф входа предусматривает трёхточечное подключение, работа по двум точкам гарантирована только в tru-diff ацп.

selan61
Offline
Зарегистрирован: 15.12.2017

dimax пишет:

selan61,  Ну проверьте делов-то. Могу сказать  одно -устройство данного типа дифф входа предусматривает трёхточечное подключение, работа по двум точкам гарантирована только в tru-diff ацп.

Спасибо. Проверить то проверю. Просто вначале теоретические изыскания. Что бы что то делать надо понять вначале что и как делать. Вот и пытаюсь всё выяснить. 

А что значит "трёхточечное подключение" ?

Вот картинка из тырнета, здесь две точки.

 

nik182
Offline
Зарегистрирован: 04.05.2015

Добавьте в вашу схему защитные диоды  входов АЦП и попробуйте нарисовать токи.

selan61
Offline
Зарегистрирован: 15.12.2017

[quote=nik182]

Добавьте в вашу схему защитные диоды  входов АЦП и попробуйте нарисовать токи.

 

/quote]

Спасибо. А вот это уже серьезно, есть над чем подумать.

selan61
Offline
Зарегистрирован: 15.12.2017

dimax пишет:

Заземлите оба  минуса, и делайте стандартное включение делителей, как если бы включали к обычным аналоговым входам МК.

Я и рад бы, но как заземлить оба минуса?

nik182
Offline
Зарегистрирован: 04.05.2015

Подключать можно как угодно, только обеспечив условие разница напряжений на любых входах не должна превышать напряжения питания, иначе откроются защитные диоды и пойдёт волшебный дым. На третьем рисунке первого поста между выводами 1 и 3  подключено 12 вольт. Делайте выводы. Делители тоже надо делать с учётом этого обстоятельства. При представленных номиналах на втором рисунке напряжение между 0 и 3 выводами  будет больше 6ти вольт. Из-за 40к резисторов волшебный дым не пойдёт, но результаты измерений будут с большой ошибкой. Резисторы обозначенные 40к должны быть около 100к, что бы результат был без ошибок. Точность при этом упадёт в 2 раза. И будет точно равной, если заземлить минус батареи и относительно его не диффиренциально измерите два канала. При этом нижнюю батарею можно мерить в 2 раза точнее :-)  Но надо ли?

selan61
Offline
Зарегистрирован: 15.12.2017

nik182 пишет:

Подключать можно как угодно, только обеспечив условие разница напряжений на любых входах не должна превышать напряжения питания, иначе откроются защитные диоды и пойдёт волшебный дым. На третьем рисунке первого поста между выводами 1 и 3  подключено 12 вольт. Делайте выводы. 

Огромное спасибо за это замечание. Это действительно так и я этого не заметил. будем исправлять. Как вот такая схема.

nik182 пишет:

Резисторы обозначенные 40к должны быть около 100к, что бы результат был без ошибок. Точность при этом упадёт в 2 раза. И будет точно равной, если заземлить минус батареи и относительно его не диффиренциально измерите два канала. При этом нижнюю батарею можно мерить в 2 раза точнее :-) 

А это не понял, как величина резисторов влияет на точность? Я считал, что точнось определяется в программе настройкой АЦП.

 

selan61
Offline
Зарегистрирован: 15.12.2017

Подключил на макете по приведеной схеме

Вроде всё работает.

nik182
Offline
Зарегистрирован: 04.05.2015

По той же причине. При превышении напряжения на входе  выше напряжения питания открываются защитные диоды и шунтируют резисторы нижнего плеча делителя, что приводит к большому изменению коэффициента деления и как следствие к ошибке измерения. 

Диоды в измеряемых цепях зло из за своей нелинейности. При изменении тока меняется падение напряжения на диоде.  

selan61
Offline
Зарегистрирован: 15.12.2017

Подключил батарейки 23А на 12В, без перемычки показывает правильно, с перемычкой показания падают

AIN0: 765 Voltage: 12.41
AIN1: 744 Voltage: 12.06
 
AIN0: 766 Voltage: 12.42
AIN1: 745 Voltage: 12.08
 
AIN0: 656 Voltage: 10.64
AIN1: 572 Voltage: 9.28
 
AIN0: 661 Voltage: 10.72
AIN1: 508 Voltage: 8.24
 
Значит каким то образом входы друг на друга влияют.
selan61
Offline
Зарегистрирован: 15.12.2017

nik182 пишет:

По той же причине. При превышении напряжения на входе  выше напряжения питания открываются защитные диоды и шунтируют резисторы нижнего плеча делителя, что приводит к большому изменению коэффициента деления и как следствие к ошибке измерения. 

Диоды в измеряемых цепях зло из за своей нелинейности. При изменении тока меняется падение напряжения на диоде.  

Но напряжение на входах ниже напряжения питания. Тем более в библиотеке написано

ads.setGain(GAIN_TWOTHIRDS);  // 2/3x gain +/- 6.144V  1 bit = 3mV      0.1875mV (default)

Как я понимаю на входах+/- 6.144V

nik182
Offline
Зарегистрирован: 04.05.2015

Я говорю - на любых входах, не обязательно измеряющих одно напряжение. Питание 3.3 вольта. Если на любых из входов есть разность напряжений больше, то они будут влиять друг на друга. Поэтому нужно увеличивать верхнее плечо делителя, что бы на нижнем всегда было меньше 3.3 вольт. Батареи свинцовые под зарядом имеют 14.4 при 100%. Если засульфатировались то напряжение при заряде может подниматься больше 18 вольт. Из этих значений надо исходить при расчёте делителя. Входное для АЦП 3.3 / 2 = 1.65В , так как два плеча + и - . 10к/100к до 17 вольт будет измерять правильно, без влияния каналов друг на друга. При больших напряжениях начнётся влияние и ошибки измерения.  

selan61
Offline
Зарегистрирован: 15.12.2017

Спасибо попробую

selan61
Offline
Зарегистрирован: 15.12.2017

Наконец то дошли руки проверить рекомендации nik182.

Собрал 2 схемы на ESP 01 с одиночным и дифференциальным включением ads1115. Проверил измерение напряжения от 10 до 15В, при этом напряжения на входах АЦП не превышало 0,5В, вроде обе работают нормально.

Диффвключение.

Battery1 12.28
Battery2 12.42
 
Battery1 12.28
Battery2 12.42
 
Battery1 12.28
Battery2 12.42
 
Battery1 12.28
Battery2 12.42
 
Одиночное включение.
Voltage0 24.79
Battery1 12.39
Battery2 12.40
 
Voltage0 24.78
Battery1 12.39
Battery2 12.39
 
Voltage0 24.78
Battery1 12.39
Battery2 12.39
 
Voltage0 24.78
Battery1 12.39
Battery2 12.39

В этом случае пришлось мерять напряжение Батареи1 на входе 1 относительно земли и Батарей1 и 2 на входе 0. Для определения напряжения Батареи2 от общего напряжения Voltage0 вычитать напряжение Батареи1.

Похоже оба способа рабочие, теперь не знаю какой выбрать. 

Зы. Выяснилась интересная особенность адресации ADS1115. Везде пишут, что присоединении пина ADDR с землей, адрес будет 0х48, однако у меня он становился 0х4В. 0х48 становится, если пин ADDR висит в воздухе. Вопрос, можно ли пин ADDR не подсоединять, или во избежании помех всё таки посадить на GND или VCC.

ЮриБас
Offline
Зарегистрирован: 13.01.2012

selan61,   на сколько диоды снижают точность показаний.. имею ввиду как влияют на разрешение?  Можно посмотреть скетч? Тоже стоит задача измерения напряжения на последовательно соединенных аккумуляторов и нужна точность до 1мВ .. а желательно до 0,1мВ.    Наверное еще можно попробовать измерять в диф режиме но через мультиплексор, тогда можно без диодов.