измерение импульсного тока более до 100А

vladimir28111995
Offline
Зарегистрирован: 24.10.2019

всем привет! прошу помощи. в ардуино опытный новичок, собрал электронную нагрузку для тестирования акб для электросамокатов  на ардуино и полевых мощных ключах в роли нагрузочного элемента-нихромовая спираль. с регулировкой, накачкой поливиков разобрался, так же разобрался с частотой ШИМ. в общем дело такое: нужно сделать так что бы ардуино отслеживало токи для автоматических действий(авто проверка , калибровка скважности шим под токи и д.п) , и здесь я столкнулся с очень неприятной и противной проблемой - при замере напряжения под нагрузкой ШИМ ардуино - оно скачит... то есть невозможно нормально замирить напряжение когда грузит акб ШИМ. и так полез на форумы перечитал все возможные фильтры. сразу скажу RC цепь НЧ не помогает , вернее помогает но не до нужной точности(сотые все равно скачют). есть датчики тока я знаю, но они вроде как до 50А для ардуино есть. у меня токи буду практически польше 70 А.  фильтры с которыми я ознакомился : 1

1)RC цепь 

2)ЦАП 

3)фильтр на ОУ второго порядка

проблемы:

1) не точно , фильтрация не дает нужной точности

2) не разобрался как с ним работать

3)не могу разобраться с расчетами

если из вас кто то имел опыт фильтрации ШИМ под нагрузкой для точных замеров (0.01Вольт, 0.1А будет достаточно) пожалуйста поделитесь! если кто знает способ проще или есть готовая рассчитанная схема буду  очень благодарен за помощь! 

по эффективности прочитал что фильтр второго порядка на ОУ вроде как рабочая схема, но с расчетами у меня в принципе туговато(прошу понять и простить), поэтому если кто может помогите с расчетами хотя бы этого фильтра. 

PS: замерить нужно ток и напряжение тоже, что бы мерить просадку. но в первую очередь нужно получить точный замер тока. 

 

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

vladimir281119, какие ещё фильтры, о чём вы говорите? Ничего фильтровать не надо. Стандартные среднеквадратические измерения, время измерения не менее длины периода сигнала, кол-во семплов -чем больше тем лучше.

asam
asam аватар
Offline
Зарегистрирован: 12.12.2018

Точность 0.1А при максимальном токе 100А? Встроенный АЦП вам такого точно не даст. Нужен хороший, точный и быстродействующий АЦП плюс качественная обвязка к нему. Мерять надо RMA, как выше сказал dimax, и сэмплировать раз 50 или больше за период ШИМа. Задача решаемая, но не тривиальная. 

vladimir28111995
Offline
Зарегистрирован: 24.10.2019

dimax пишет:

vladimir281119, какие ещё фильтры, о чём вы говорите? Ничего фильтровать не надо. Стандартные среднеквадратические измерения, время измерения не менее длины периода сигнала, кол-во семплов -чем больше тем лучше.

то есть, тогда нужно померить на импульсе напряжение , за тем разделить его на квадратный корень из 2,и там уже вычислить среднеквадратическое ? 

у меня 62500 герц частота ШИМ(62.5 кГц) значит 1/62500 = 0,000016 сек. - мой период

а как я в этот период выборочно измерю напряжение,  есть специальный код? ели я не так все понял? 

 

 

vladimir28111995
Offline
Зарегистрирован: 24.10.2019

значить за период шима я раз 50 должен на импульсе померить напр? ардуино разве так умеет?(извиняюсь если что за тупой вопрос).   есть способ измерения тока с помощью аналогово  датчика холла,  даже этот способ не даст такой точности? тогда может вы знаете такие датчики которые хотя бы в 70 А померят ток, уже настроенные и откалиброванные?

-NMi-
Offline
Зарегистрирован: 20.08.2018

vladimir28111995 пишет:

есть датчики тока я знаю, но они вроде как до 50А для ардуино есть.

Есть и датчики на 200 и 600 Ампер той-же фирмы и продаюццо в том-же месте.

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

vladimir28111995 пишет:

значить за период шима я раз 50 должен на импульсе померить напр? ардуино разве так умеет?

ну если не 50 раз - то хотя бы раз 10. Из чего следует, что вам необходима частота измерений порядка 600К сэмплов в секунду. Ардуина так не сможет и даже более серьезные контроллеры тоже.

Как выход - можно снизить частоту ШИМ на пару порядков. На стандартной частоте ардуино_ШИМ в 980 Гц мерить уже значительно проще :)

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

vladimir28111995 пишет:

значить за период шима я раз 50 должен на импульсе померить напр? ардуино разве так умеет?(извиняюсь если что за тупой вопрос). 

Если период слишком мал, то просто увеличивается время измерения. Я делал так для высоких частот  -в цикле непрерывно суммировал 65536 квадратов измерений. В конце извлекается корень.

vladimir28111995 пишет:

 есть способ измерения тока с помощью аналогово  датчика холла,  даже этот способ не даст такой точности? тогда может вы знаете такие датчики которые хотя бы в 70 А померят ток, уже настроенные и откалиброванные?

Обычный датчик холла имеет существенно худшую точность.

vladimir28111995
Offline
Зарегистрирован: 24.10.2019

-NMi- пишет:

vladimir28111995 пишет:

есть датчики тока я знаю, но они вроде как до 50А для ардуино есть.

Есть и датчики на 200 и 600 Ампер той-же фирмы и продаюццо в том-же месте.

а можно ссылку на подобные?

vladimir28111995
Offline
Зарегистрирован: 24.10.2019

b707 пишет:

vladimir28111995 пишет:

значить за период шима я раз 50 должен на импульсе померить напр? ардуино разве так умеет?

ну если не 50 раз - то хотя бы раз 10. Из чего следует, что вам необходима частота измерений порядка 600К сэмплов в секунду. Ардуина так не сможет и даже более серьезные контроллеры тоже.

Как выход - можно снизить частоту ШИМ на пару порядков. На стандартной частоте ардуино_ШИМ в 980 Гц мерить уже значительно проще :)

с частотой играл долго, проблема в том что если я меняю частоту то силовая часть(поливики со спиралью) начинает нагреваться, либо как то не так нагружать(стрелочный амперметр скакать начинает) , практически я как понял что в зависимости от частоты нагрузка распределяется по разному(либо поливики больше греются либо спирать, либо сам АКБ,) поэтому я подобрал наилучший вариант с частотой(не исключено что поливики не открывались до конца при смене частоты, хотя драйвер на затворы стоит на 9А. и разряд затворов через диоды шоттки тоже поставил).  осцила нет( поэтому не хотелось бы трогать частоту. 

vladimir28111995
Offline
Зарегистрирован: 24.10.2019

dimax пишет:

 

Если период слишком мал, то просто увеличивается время измерения. Я делал так для высоких частот  -в цикле непрерывно суммировал 65536 квадратов измерений. В конце извлекается корень.

то есть достаточно несколько измерений именно верхнего уровня импульса? и правильно я понял что вообще фильтров в таком случае не нужно ибо они мешать будут? 

а в коде будет примерно так?

int zamer;

int znachenie;

void setup(){

Serial.begin(9600)

void loop(){

if(analogread(A0)==0) // если идет момент скважности то есть отсутствие импульса.

{

zamer=0;  //фиксируем этот момент

}else

{

zamer=1; // если идет момент импульса фиксруем этот момент

}

if(zamer==1) {  //если идет момент импульса то

znachenie=analogread(A0); //мерим что на входе

Serial.println(znachenie); // выводим в монитор значение 

}

}

ну в общем смысл замера импульса таков? 

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

Перечитал  всё,но так и не понял как происходит съём сигнала тока. Это шунт по верхней или нижней стороне? Какой то датчик, типа пояса Роговского? На сколько комплексно можно решать задачу измерения тока? Например шунт с парой операционников и LTшным измерителем RMS слишком сложно? 

Вставьте код по правилам форума, описанным в песочнице. 

vladimir28111995
Offline
Зарегистрирован: 24.10.2019

nik182 пишет:

Перечитал  всё,но так и не понял как происходит съём сигнала тока. Это шунт по верхней или нижней стороне? Какой то датчик, типа пояса Роговского? На сколько комплексно можно решать задачу измерения тока? Например шунт с парой операционников и LTшным измерителем RMS слишком сложно? 

Вставьте код по правилам форума, описанным в песочнице. 

в том то и дело я ищу самый оптимальный способ съема тока, что бы с шунта считать нужно замерять напр. до и после шунта, но там шим и все скачет и нужно либо програмно вычислять либо мастерить фильтры, поэтому готов просто купить готовый датчик тока на 100А .  я уже долго с замерами мучаюсь и каждый раз вылазит что то еще... причем опыт таков: замеры напряжения с фильтрами в принципе норм до 30 % заполнения шим, дальше все плывет и скачет. и вот эту проблему я не могу решить. (не хватает некоторых знаний и опыта).

точность нужна 0.1А 

в крайнем случае 0.5А тоже прокатит. 

про код извиняюсь не увидел сразу что нужно так делать

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

vladimir28111995 пишет:

то есть достаточно несколько измерений именно верхнего уровня импульса? и правильно я понял что вообще фильтров в таком случае не нужно ибо они мешать будут? 

В смысле несколько? -Очень много замеров не привязанных к уровню. За счёт того что частоты выборок и измеряемой не синхронны получится постоянное движение  выборок ацп относительно фазы сигнала, т.е. с каждым просчитанным периодом точность будет только  вырастать. Пример из проекта:

for (int n=0; n<=16383; n++ ) {//собирать 16384 выборок
akkum += sq(adc_read(ADC1,17)); } //суммировать квадраты
akkum =  (sqrt(akkum>>14));// вычислить среднее квадратическое

Есть  вариант лучше  -использовать специализированный чип, tru-RMS  power meter или что-то типа того. На выходе будет эквивалентная постоянка. Её уже измерить АЦП в обычном режиме.

Logik
Offline
Зарегистрирован: 05.08.2014

vladimir28111995 пишет:

 и вот эту проблему я не могу решить. (не хватает некоторых знаний и опыта).

Тут Вы правы. То что Вы хотите 100А с точностью 0,1А это как бы класс точности 0,1. Посмотрите как выглядит прибор немного похуже - http://printsip.ru/ampermetry-laboratornye/item/ampermetr-cifrovoj-perenosnoj-ca2202 цена пошти 50тыс.руб. Вам учится надо. Сопротивление шунта зависит от температуры, а она от тока и вообще не линейно. Такие вещи на нихромовой проволоке не делают. На нихромовой проволоке неплохие электроплитки получаются, займитесь там шансов поболе чем с ШИМ, измерениями и контролерами. Вы разумеется похерите этот совет, но через некоторое время поймете что я мог вам сэкономить некоторое время жизни.

SLKH
Offline
Зарегистрирован: 17.08.2015

dimax пишет:

vladimir281119, какие ещё фильтры, о чём вы говорите? Ничего фильтровать не надо. Стандартные среднеквадратические измерения, время измерения не менее длины периода сигнала, кол-во семплов -чем больше тем лучше.

Не взлетит, ибо ТС не знает, что ему на самом деле нужно (или не может объяснить). Тема про измерение тока, в тексте уже не ток, а "напряжение скачИт", + точность 0,1% в гараже... 

Я уже не говорю  про кв.корень из двух при упоминании среднеквадратического...

 

SLKH
Offline
Зарегистрирован: 17.08.2015

Для тестирования АКБ для электросамокатов с разумной точностью при частотах ШИМ в килогерцы и выше достаточно стандартного шунта на 75 мв + rc фильтр + операционник, результат на аналоговый вход мк.

"точность нужна 0.1А " - сразу забыть

 

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

Есть ещё вариант для стм32 -таймером измерять параметры сигнала PWM,  и тем же таймером по захвату "Rising" давать тригер АЦП, который  измерит уровень единицы. Полученное значение ацп умножить на квадратный корень из коэффициента заполнения. Получаем истинное среднеквадратическое значение без особых хлопот :) Но сигнал с шунта всё равно нужно усиливать.. так что есть смысл сразу взять какой нить Tru RMS converter

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

SLKH пишет:

dimax пишет:

vladimir281119, какие ещё фильтры, о чём вы говорите? Ничего фильтровать не надо. Стандартные среднеквадратические измерения, время измерения не менее длины периода сигнала, кол-во семплов -чем больше тем лучше.

Не взлетит, ибо ТС не знает, что ему на самом деле нужно (или не может объяснить). Тема про измерение тока, в тексте уже не ток, а "напряжение скачИт", + точность 0,1% в гараже... 

Я уже не говорю  про кв.корень из двух при упоминании среднеквадратического...

 

а что? метод применённый в SKAT-T не прокатывает? вроде как пользуюсь, точность правда низкая, но измерение имеет однозначность, так что для бытовых целей вполне )))

Гриша
Offline
Зарегистрирован: 27.04.2014

vladimir28111995 пишет:

практически я как понял что в зависимости от частоты нагрузка распределяется по разному(либо поливики больше греются либо спираль, либо сам АКБ,) поэтому я подобрал наилучший вариант с частотой(не исключено что поливики не открывались до конца при смене частоты, хотя драйвер на затворы стоит на 9А. и разряд затворов через диоды шоттки тоже поставил).

вот вообще ничего не понял... ладно полевикам плохеет от высокой частоты, точнее от кол-ва переходов состояния при плохом драйвере, а про спираль и АКБ как вас понять? как не знание (в требуемом объеме) законов физики...

на кой лад вам там ШИМ? вы знаете ее скважность? 

измерять имеет смысл Амплитудное значение тока, вот его можно усреднить (в разумных пределах, зависит от нагрузки)

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

кодом из поста 10  лично я не стал бы даже переменку на вторичке трансформатора (50Гц) анализировать... :((((((  (стр27,29) оперативности измерений не было, да еще и умерла не родившись...