булат, Смотрел как программа мерит сопротивление батареи. Получается 230 циклов гоняет малым током (около минуты) и 30 циклов большим током 10 сек потом что то там подсчитывает. Зачем так сложно не проще нагрузил прождал 20 сек замерил сменил нагрузку 10 сек замер .
Цитатабулат ()
Замер емкости тоже при токе 1С
а как определить 1С или исходить из того что на нем написано ? Да и задавать нагрузку для каждого ........ Замерял емкость токами 0,3A , 0,5A и 1А. Когда тестировал китайские тестеры. Разброс в результатах был не боле 3% и остановился на токе в 1А для экономии времени. Единственное не превышать 1С так как АКБ греются. От чего реально теряют емкость.
Можно сказать что прибор не способен мерить сопротивление АКБ. Так как разброс результатов от 0.139 до 0.232 на одном и том же АКБ. более дохлый от 0.233 до 410. Тестировал так 3 раза замер каждого из трех АКБ. Потом перерыв 1-1,5 час и повтор. Разброс замеров до 2х раз. В каком направлении копать? Емкость мерит отлично.
Пост №2 на первой странице на фото видно внутренности. Мощный разъем на плате. Провода около 1 мм2. Быстрозажимной аккустический разъем.
Нижнее фото пост №9 на первой странице видно комплект. Короткие мощные провода (0,5 квадрата) с наконечниками НШВИ на концах, расплющенными в плоскость для лучшего контакта. Кракодилы.
Думаю, для измерения внутреннего сопротивления (предлагаю ВСА для краткости) это достаточно важно. Ведь мы пытаемся измерить доли Ома.
видел человек замерял литий еср-метром через конденсатор на внуреннее сопротивление
По такой схеме можно измерять. Сначала измеряется само сопротивление конденсаторов, потом акб. От результата отнимаем сопротивление конденсаторов и получим результат. Я и литий так измерял и 12-ти вольтовый кислотный.
Получается 230 циклов гоняет малым током (около минуты) и 30 циклов большим током 10 сек потом что то там подсчитывает. Зачем так сложно не проще нагрузил прождал 20 сек замерил сменил нагрузку 10 сек замер .
Точно!надо менять... до 224-пауза (переменная counteR наращивается каждые полсекунды),то есть 112 сек (по госту должно быть минимум час и максимум 4 часа),потом- counteR=224-подключаем малую нагрузку counteR=244-запоминаем voltTEMP = volt,выключаем нагрузки counteR=244-включаем нагрузку2 counteR=250-запоминаем volt counteR=251-оставляем как было,то есть считаем емкость...
Добавлено (10.03.2020, 20:49) --------------------------------------------- Сделал так,посмотрим что намерит
if (knop==2) //замер внутреннего сопротивления { if (counteR<=224) //1 цикл проверки,пауза { if (counteR==0){ lcd.clear(); // Чистим экран digitalWrite(zarad,LOW); //отключаем ключ зарядки аккумулятора digitalWrite(razrad2,LOW); //отключаем ключ нагрузки 2 digitalWrite(razrad1,LOW); //выключаем ключ нагрузки lcd.setCursor(0, 0); lcd.print("Testing Rint "); } lcd.setCursor(1, 1); //ставим курсор в 14й столбец, первую строку (вспомогательные данные, можно закомментить строку) lcd.print("Pause="); //используемый резистор (вспомогательные данные, можно закомментить строку) lcd.print((224-counteR)/2);lcd.print(" "); lcd.print("sec "); _delay_ms(500);counteR++; } if (counteR>224 and counteR<=244) //2 цикл проверки,малая нагрузка { if (counteR==225){ lcd.clear(); // Чистим экран digitalWrite(zarad,LOW); //отключаем ключ зарядки аккумулятора digitalWrite(razrad2,LOW); //отключаем ключ нагрузки 2 digitalWrite(razrad1,HIGH); //включаем ключ нагрузки lcd.setCursor(0, 0); lcd.print("Testing Rint1"); } amR=(voltD/R10); //считаем ток lcd.setCursor(0, 1);lcd.print(amR*1000,0);lcd.print("mA "); //выводим значение тока разряда в мА lcd.setCursor(8, 1);lcd.print(volt,2);lcd.print("V "); //выводим напряжение на аккумляторе под нагрузкой _delay_ms(500);counteR++; //задержка,инкрементируем счётчик lcd.setCursor(0, 1); //ставим курсор в первый столбец, вторую строку lcd.print(" "); //чистим строку if (counteR==244){voltTEMP = volt;} //окончание первого цикла проверки }
if (counteR>244 and counteR<=250) //3 цикл проверки { if (counteR==245) { lcd.clear(); // Чистим экран digitalWrite(zarad,LOW); //отключаем ключ зарядки аккумулятора digitalWrite(razrad1,HIGH); //отключаем ключ нагрузки digitalWrite(razrad2,HIGH); //включаем ключ нагрузки 2 lcd.setCursor(0, 0); lcd.print("Testing Rint1"); } amR2=(voltD2/R15)+(voltD/R10); //считаем ток lcd.setCursor(0, 1);lcd.print(amR2*1000,0);lcd.print("mA "); //выводим значение тока разряда в мА lcd.setCursor(8, 1);lcd.print(volt,2);lcd.print("V "); //выводим напряжение на аккумляторе под нагрузкой _delay_ms(500); counteR++; //инкрементируем счётчик lcd.setCursor(0, 1); //ставим курсор в первый столбец, вторую строку lcd.print(" "); //чистим строку }
if (counteR==251) //заканчиваем проверку сопротивления { R = ((voltTEMP-volt)/(amR2-amR)); //считаем внутреннее сопротивление аккумулятора digitalWrite(razrad1,LOW); //выключаем ключ нагрузки digitalWrite(razrad2,LOW); //выключаем ключ нагрузки 2 digitalWrite(zarad,LOW); //выключаем ключ зарядки аккумулятора counteR++; //инкрементируем счётчик lcd.clear(); // Чистим экран lcd.setCursor(0, 1); //ставим курсор в первый столбец, вторую строку lcd.print("Rin="); // lcd.print(R,3); //выводим значение внутреннего сопротивления _delay_ms(1500); TIK=0; } if (counteR>=252) //восстанавливаем заряд аккумулятора перед тестом ёмкости, переходим в разряд { digitalWrite(razrad1,LOW); //выключаем ключ нагрузки digitalWrite(razrad2,LOW); //выключаем ключ нагрузки 2 digitalWrite(zarad,HIGH); //включаем ключ зарядки аккумулятор lcd.setCursor(0, 0); //ставим курсор в первый столбец, первую строку lcd.print("CHARGE: "); //дозарядка до полного lcd.setCursor(11, 1); //ставим курсор в 12й столбец, вторую строку lcd.print(volt); //вывод текущего напряжения на аккумуляторе lcd.print("V"); // _delay_ms(350); lcd.setCursor(10, 0);lcd.print("*"); amC=((1200*voltC)/R5)*1000; lcd.setCursor(11, 0); //ставим курсор в 16й столбец, первую строку lcd.print(amC); //lcd.print("*"); //мигающий значок заряда _delay_ms(350); lcd.setCursor(10, 0); //ставим курсор в 16й столбец, первую строку lcd.print(" "); //мигающий значок заряда lcd.setCursor(11, 1); //ставим курсор в 12й столбец, вторую строку lcd.print(" "); //
if(amC<=37) //если зарядился - переходим в разряд { TIK=TIK+1; if (TIK>3){ digitalWrite(zarad,LOW); //выключаем ключ зарядки аккумулятора knop = 3; //фиксация окончания замера внутреннего сопротивления, переход к замеру ёмкости tone(buzzer, 1000, 150); //тональный сигнал смены цикла TIK=0;} } else TIK=0; } }