avatar_UriBas

Моргалка на Arduino. Этюды для начинающих.

Автор UriBas, 08 Март 2017 в 16:08

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

SanSanich

#684
Цитата: UriBas от 24 Дек. 2017 в 14:48Что толку, если фермер накупил кучу разной навороченной техники, знает как ей пользоваться в совершенстве, но не знает когда и как обрабатывать посевы, т.е. агрономию.
А вот тут в пимпочку!
Но имея технику опробовать её применение уж можно наверняка! Многие и плоскогубцами гвозди забивают. А Ом, Вольт, Фарадей и тд. вообще с нуля начинали, но их открытия теперь носят их имена.
Всё надо опробовать на практике. Часто теория не подтверждается на практике, а вот практические результаты почти всегда можно обосновать теоретически.
Спойлер
Может и появится Метод [user]Кass[/user]а!!!
ЗУК "ЖУЖА" Самодельный измеритель Rвн https://electrotransport.ru/index.php?msg=1280851

Яков93

Цитата: SanSanich от 24 Дек. 2017 в 17:38Может и появится Метод  Кassа!!!
Может и появится, я только "ЗА", только желательно в специальной теме, где обсуждаются алгоритмы или хотя бы зарядное устройство на основе ПЛК.

Alex_N

Решил поменять параметры частоты ШИМ на 2КГц и выяснилось, что наполнение получается не выше 50%, т.е. даешь 0-0%,254 - 50%, 255 - 100%. Интересно, это на всех моделях ?
Есть мысль сразу в сигнал замешивать разные частоты.  Ардуино конечно слабенькая штука, но и на ней можно делать приличные вещи.

Яков93

Цитата: Alex_N от 29 Дек. 2017 в 19:09
Решил поменять параметры частоты ШИМ на 2КГц и выяснилось, что наполнение получается не выше 50%, т.е. даешь 0-0%,254 - 50%, 255 - 100%. Интересно, это на всех моделях ?
Есть мысль сразу в сигнал замешивать разные частоты.  Ардуино конечно слабенькая штука, но и на ней можно делать приличные вещи.
Какой-то странный у Вас ШИМ. Вы уверены что подключаетесь к выводу который этот ШИМ поддерживает? Там ведь всего шесть выводов (если я не путаю) имеют аппаратный ШИМ.

Dunkel

Коллеги, подскажите, правильно ли я подключаю мосфет к драйверу?
На длинных импульсах все вроде нормально работает, а на коротких (около 100 мкс) какая-то ерунда начинается.
Спойлер

Многофункциональная облачная моргалка/логгер:
https://morgalka78.wordpress.com/

Яков93

Цитата: Dunkel от 29 Дек. 2017 в 22:12правильно ли я подключаю мосфет к драйверу?
По идее нужно ставить между затвором и истоком достаточно высокоомный резистор, можно например на 100 кОм чтобы емкость затвора через него успевала разряжаться и мосфет нормально закрывался когда нет сигнала. Иначе затворная емкость может не закрывать мосфет и он все время будет или открыт или полуоткрыт, особенно на высоких частотах.

ИС-Х

Это инвертирующий драйвер с двухтактным выходом, поэтому может работать как угодно.
Но я бы поставил в цепь затвора резюк в несколько ом, дабы ограничить бросок тока затвора.
Моя первая моргалка: https://electrotransport.ru/index.php?msg=588520
Вторая моргалка: https://electrotransport.ru/index.php?topic=31184.0
Третья моргалка: https://electrotransport.ru/index.php?msg=1130718
Еще в багажнике валяется BL1204 на всякий пожарный...

Dunkel

Цитата: ИС-Х от 30 Дек. 2017 в 11:20Это инвертирующий драйвер с двухтактным выходом, поэтому может работать как угодно.
Но я бы поставил в цепь затвора резюк в несколько ом, дабы ограничить бросок тока затвора.

10 Ом подойдет?
В ДШ нарисованы два конденсатора по питанию - 0,1 и 4,7 , а я ставил только один 0,1, это критично?
Многофункциональная облачная моргалка/логгер:
https://morgalka78.wordpress.com/

ИС-Х

Да, пойдет. И лишняя емкость не помешает - может там короткая просадка по напруге.
А вообще надо увидеть осциллограмму чтобы знать что происходит.
Моя первая моргалка: https://electrotransport.ru/index.php?msg=588520
Вторая моргалка: https://electrotransport.ru/index.php?topic=31184.0
Третья моргалка: https://electrotransport.ru/index.php?msg=1130718
Еще в багажнике валяется BL1204 на всякий пожарный...

Кass

Друзья, полез тут в закрома, и попались мне под руку модули Сайтплееров. Что то типа таких: http://www.siteplayer.com/webserver/sp1.html  только еще на одной плате с разъемом RG-45. В общем готовый сервер.

Если кто готов разобраться в них и описать, как подключить их к Ардуине, я готов подарить такой. Ранее они использовались в ПЛК, но давно и используются. Можно их использовать для чьих то проектов. Через такую штуку можно сделать свой веб сервер, на подобии того, что у меня на АРМе. Кто возьмется?
АРМ стенда онлайн: http://scada.kontar.ru Пользователь: Электротранспорт, Пароль: 111111

Гербалайф от всех болезней, Кашпировский лучший врач,  Орифлейм самая лучшая косметика, а МММ самый лучший способ вложения денег. Кто бы спорил. ;)

Alex_N

Цитата: Яков93 от 29 Дек. 2017 в 20:12Какой-то странный у Вас ШИМ. Вы уверены что подключаетесь к выводу который этот ШИМ поддерживает? Там ведь всего шесть выводов (если я не путаю) имеют аппаратный ШИМ.
ШИМ обыкновенный. Просто стандартная частота у него 500 с чем то герц. От таймера. А когда переделываешь таймер, то такая фигня получается.
Странно, что никто не сталкивался. Может у меня ардуина кривая. Надо попробовать будет на другой. После праздников. Пока некогда.
Всех с наступающим Новым Годом !!!

Яков93

Цитата: Alex_N от 31 Дек. 2017 в 13:02
ШИМ обыкновенный. Просто стандартная частота у него 500 с чем то герц. От таймера. А когда переделываешь таймер, то такая фигня получается.
Странно, что никто не сталкивался. Может у меня ардуина кривая. Надо попробовать будет на другой. После праздников. Пока некогда.
Всех с наступающим Новым Годом !!!
Вот отличная статья про таймеры для ШИМ и их настройку

UriBas

Цитата: Яков93 от 31 Дек. 2017 в 13:31
Вот отличная статья про таймеры для ШИМ и их настройку
Спасибо Яков! Отличная статья! .. и на этом же сайте прекрасный учебник http://mypractic.ru/uroki-programmirovaniya-arduino-navigaciya-po-urokam
Всем хорошо провести время! Да убережет Бог от зла в это лихое время!
Восточная мудрость - "Шакал воет - караван идет"  Эл.вел. 350Вт.   Верую в Иисуса Христа, НЛО.  тема "продвинутой моргалки" https://electrotransport.ru/index.php?msg=1669651

Кass

#697
Цитата: UriBas от 31 Дек. 2017 в 14:16Всем хорошо провести время! Да убережет Бог от зла в это лихое время!

Хоть это и флуд, но побольше бы вашей стране таких граждан как вы, и все у вас будет отлично. Удачи вам! :)
АРМ стенда онлайн: http://scada.kontar.ru Пользователь: Электротранспорт, Пароль: 111111

Гербалайф от всех болезней, Кашпировский лучший врач,  Орифлейм самая лучшая косметика, а МММ самый лучший способ вложения денег. Кто бы спорил. ;)

UriBas

#698
Спасибо [user]Кass[/user], и Вам успешно закончить начатое в этом году! 
Тут наткнулся на очень интересный девайс, на мой взгляд очень нужный в нашем нелегком, но интересном деле.. 
RD dps5020 
Спойлер
Это понижающий модуль со входом от 6 до 60В и выходом от 0 до 50В и самое главное с реально максимальным током 20А.  Точность до сотых Вольта и Ампера (0,01В и 0,01А) во всем диапазоне..   которая тоже реальна (есть видео и отзывы) Много разных очень нужных установок, шаг изменений тоже составляет сотые Вольта и Ампера, есть память и т.д.   По сути это лабораторный блок питания с очень хорошими (для импульсника) характеристиками за сравнительно небольшие деньги, только без силового БП.  Так что он может использоваться в многоцелевом назначении.

Кроме всего прочего, имеется подсоединение USB и программное обеспечение с мониторингом (рисует графики)  и управлением С ИСХОДНЫМ КОДОМ.. как впрочем и сама прошивка к МК самого девайса..  так что, при наличии необходимых знаний в программировании, можно подстроить под свои нужды..    Есть разные вариации модуля по току и по цене.  это dps5015  - По этой ссылке, есть описания разных модулей и ссылки на программное обеспечение, видео и прочее и прочее..   На мой взгляд, для моргалки подходит две модели, у которых ток от 15А и выше, хотя там есть и по 12А.

Здесь интересный обзор  https://radiostore.com.ua/a307612-programmiruemyj-preobrazovatel-dps.html   Еще здесь  -  https://dp.prom.ua/p620745824-ruideng-dps5015-postoyannoe.html
Прошивка к МК модуля - https://github.com/kanflo/opendps с исходным кодом!

Нарыл в инете, где человек пристроил этот модуль к Ардуино https://www.youtube.com/watch?v=daaEE2jyANY  и сайт с описанием http://www.instructables.com/id/Power-Supply-Automation-DPS5015-DP50V5A-Controlled/     надо будет разобраться..  Человек подключил Ардуино к кнопкам модуля..  и так управляет параметрами.  На сайте он описывает как подключится и есть скетч на Ардуино.
https://www.youtube.com/channel/UCy73jJ5-ZqhPzT7wJ6KTIaw/discussion?disable_polymer=1  -  Здесь можно пообщаться с производителем [user]Rd Tech[/user] (автором) этого девайса
2.01.2018  22:15  Нашел как с помощью Ардуины + модуля ESP32 считывают данные и управляют модулем DPS5005, - напряжение, ток, вкл/выкл ..   https://community.blynk.cc/t/blynk-controlled-dps5005/18746
8.01.2018  21:42  На форуме radiokot.ru есть тема (на 56стр) где подробный разбор молуля DPS5015, его схемы и доработки..  и вообще о модулях тема, которые могут пригодится для моргалок  http://radiokot.ru/forum/viewtopic.php?f=11&t=41376&sid=0df6994c84e4e3cb1451cc0e6bd84759 и по приставкам  https://www.ingineer.ru/azu/   здесь очень интересная разработка, возможно китайцы содрали у него http://cxem.net/pitanie/5-340.php
Восточная мудрость - "Шакал воет - караван идет"  Эл.вел. 350Вт.   Верую в Иисуса Христа, НЛО.  тема "продвинутой моргалки" https://electrotransport.ru/index.php?msg=1669651

Dunkel

#699
Очередная версия моргалки.
Основная идея - уйти от аппаратного регулирования тока БП. Уменьшение тока реализовано программно, за счет изменения длительности импульса и паузы.
АКБ 7а/ч нормально заряжается от БП 19В 3-4А, ничего не кипит и не греется. 

Алгоритм уменьшает импульс и увеличивает паузу между импульсами при снижении количества импульсов в пачке до определенного порога. После этого длительность пачки скачкообразно увеличивается, а потом постепенно уменьшается, по мере заряда АКБ. При достижении порогового значения цикл повторяется.

Вот пара иллюстраций:
Спойлер





В конце импульсы уменьшаются настолько, что никакого заряда уже не происходит, только компенсация саморазряда. Можно оставлять надолго, перезаряда не будет:
Спойлер



Скетч, кому интересны подробности:

Спойлер

// 03/01/2018
// (c)dunkel
// PRO MINI, питание стаб. 5V на Vcc
// БП 19,5В 3,33А, АКБ 7а/ч
// p-fet IRF9Z24N, драйвер TC4420
// Pin12 - заряд, на затвор мосфета (INV)
// PinА1 - напряжение с делителя АКБ 510/2k

unsigned long time;
int pin = 12 ; // на затвор мосфета
int zar = 30 ; //Пачка импульсов в сек
int raz = 10 ; //Пауза между пачками в сек
int imp = 1000 ; //Импульс в мкc
int pause = 1000 ; //Пауза в мкc
int dop_pause = 0 ; //Добавка к паузе в мкc
int n = 15000; //Кол-во импульсов в пачке
float U14=14.4; // Напряжение отсечки 14.4В
float UK=0; //Контрольное напряжение перед зарядом (НРЦ)
float UAK=0; //Напряжение АКБ
float delta=0.6; // Дельта - увеличение напряжнгия в импульсе, В
int flag = 0; //Счетчик касаний 14,4В
int pachka = 3000; // Ограничитель пачки

void setup() { 
  Serial.begin(115200);             
  pinMode(pin, OUTPUT); // - на затвор мосфета
  digitalWrite(pin, HIGH); //INV
}

void loop() {
  n = zar * 1000000 / (imp + pause + dop_pause) ; //Кол-во импульсов в пачке
  UK = readU016(); // Напряжение НРЦ
  if (UK < 12) {  //Раскачка разряженных АКБ
    delta=2.0;
    pachka=50;
  }
  else {
    delta=0.6;
    pachka=3000;
  }
  Serial.print(UK,4);  //  график
  Serial.print(" UK,0,0,n ");
  Serial.print(n); 
  Serial.print(" , IMP "); 
  Serial.print(imp); 
  Serial.print(" , Pause "); 
  Serial.println(dop_pause+pause);   

//Начало пачки импульсов
  time = millis();
  for (int i=1; i <= n; i++) { //Пачка импульсов длительностью zar
  digitalWrite(pin, LOW); //INV             
  delayMicroseconds(imp); //Импульс длительностью imp
  digitalWrite(pin, HIGH); //INV
  UAK = readU0(); //Пауза длительностью 1ms 
  delayMicroseconds(dop_pause); //Добавка к паузе в мкc
  if (UAK > U14 || (UAK-UK) > delta ) { //Касание 14,4В или превышение НРЦ на Дельту     
  if ( i < pachka ) {  // Если пачка короче XXX имп
      imp=imp*0.9;  // Уменьшаем длительность импульса     
      if (imp <= 1) imp=1;  // Импульс не укорачивается менее 1
      if (UK > 12) dop_pause=dop_pause+100; //Увеличиваеи добавку к паузе
    }
      raz = raz + 1; //Увеличиваем паузу между пачками импульсов
      if (UAK > U14) flag++; //Счетчик касаний 14,4В     
      Serial.print(UAK,4);  //  график
      Serial.print(" ,0,0,  i "); 
      Serial.print(i); 
      Serial.print(" , IMP "); 
      Serial.print(imp); 
      Serial.print(" , Pause "); 
      Serial.print(dop_pause+pause); 
      Serial.print(" , flag ");
      Serial.println(flag); 
      i = n+1;  //Выходим из цикла - прерываем пачку импульсов
  }
if ( (millis()-time) >= 1000 ) {  // Выводим значение каждую сек.
Serial.print(UAK,4);  //  график
Serial.println("    imp ");
time = millis();
}
   }
   
//Конец пачки импульсов, Начало паузы между пачками
  float dU0K = readU016();
  for (int h=1; h <= raz; h++) { //Пачка импульсов - пауза длительностью raz
  delay(900);
  UAK =  readU016();  //1c 
  float dU0= (dU0K-UAK)*1000; //mV
  dU0K = UAK;
Serial.print(UAK,4);
Serial.print("    ,0,0,   ");
Serial.println(dU0,4);  //  график
  if (dU0 <= 6) raz = raz - 1 ;// Если скорость падения напряжения ниже 6мВ - уменьшаем паузу
}
//Конец паузы между пачками
}

// Измерение UAK, длительность 1мс
float readU0() {
long U1=0; //Напряжение на АКБ
float result = 0.0;
float V1 = 0.0;
float K1=0.003003; // 8 1ms
delayMicroseconds(100);
for (int j=1; j<=8; j++) {
    U1+=analogRead(A1);
}
V1= U1*K1; 
result=V1;
return result;
}

// Измерение UAK 128, длительность 100мс
float readU016() {
long U1=0; //Напряжение на АКБ
float result = 0.0;
float V1 = 0.0;
float K1=0.0001876; // 128 14ms
delay(86);
for (int j=1; j<=128; j++) {
    U1+=analogRead(A1);
}
V1= U1*K1; 
result=V1;
return result;
}


Только там сигнал инвертирован, т.к. инвертирующий драйвер я спалил и пришлось собрать на обычном:

Спойлер


Если делать на инвертирующем драйвере или n-мосфете, то в скетче надо убрать инвертирование.
Многофункциональная облачная моргалка/логгер:
https://morgalka78.wordpress.com/

Dunkel

Небольшая модификация предыдущего варианта - убрал ограничения по длительности пачки импульсов и максимальному напряжению 14,4В.
На самом деле эти ограничения не очень-то и нужны - паузы между пачками в основной фазе были минимальные и никакого видимого эффекта не давали, а при добивке пачка и так ограничивается за счет адаптивности алгоритма.
Тоже самое и с напряжением отсечки 14,4В - в основной фазе оно в принципе не достигается, а при окончании добивки импульсы уже настолько короткие, что даже если и пробьет пару раз до 14,5 - ничего плохого не произойдет.
Это придает интересную особенность алгоритму - абсолютные значения напряжения вообще не используются, только две относительные величины - Дельта и dU/dT.
Т.е. измерять напряжение можно с любой погрешностью, только эта погрешность должна быть одинаковая.
А это, в свою очередь, избавляет от необходимости калибровки коэффициента делителя. Пусть врет, главное, чтобы врал одинаково.

Как обычно, пример с графиками.

АКБ 7ач, БП 19,5В 3,3А, схема моргалки из предыдущего поста.

Начальные параметры алгоритма: импульс 1000мкс, пауза 1000мкс, но они быстро изменятся.

Итак, после запуска происходит первоначальная калибровка параметров импульса и уже через пару минут начинается основная фаза заряда с импульсом 163мкс и паузой 2700мкс:

Спойлер


Первая пачка длится минут 15, следующая около 30мин.

Спойлер


Часа через полтора-два длина пачки сокращается, основная фаза подходит к концу:

Спойлер


По достижению длины пачки в 3000 импульсов, импульс уменьшается (импульс 146 мкс, пауза 2800мкс) и пачка опять увеличивается, начинается добивка:

Спойлер


Через 8 часов импульс стал 10мкс, пауза 5000мкс.

Спойлер


Заряд практически завершен. Без каких-либо ограничений, во время заряда напряжение не поднималось выше 14,49В.

Скетч:

Спойлер


// 05/01/2018
// (c)dunkel
// PRO MINI, питание стаб. 5V на Vcc
// БП 19,5В 3,33А, АКБ 7а/ч
// p-fet IRF9Z24N, драйвер TC4420
// Pin12 - заряд, на затвор мосфета (INV)
// PinА1 - напряжение с делителя АКБ 510/2k

unsigned long time;
int pin = 12 ; // на затвор мосфета
int raz = 10 ; //Пауза между пачками в сек
int imp = 1000 ; //Импульс в мкc
int pause = 1000 ; //Пауза в мкc
int dop_pause = 0 ; //Добавка к паузе в мкc
float U14 = 14.4; // Напряжение отсечки 14.4В
float UK = 0; //Контрольное напряжение перед зарядом (НРЦ)
float UAK = 0; //Напряжение АКБ
float MAX = 0; // MAX Напряжение АКБ в пачке
float delta = 0.5; // Дельта - увеличение напряжения в импульсе, В
int flag = 0; //Счетчик превышений 14,4В
int pachka = 3000; // Ограничитель пачки

void setup() {
  Serial.begin(115200);
  pinMode(pin, OUTPUT); // - на затвор мосфета
  digitalWrite(pin, HIGH); //INV
}

void loop() {
  UK = readU016(); // Напряжение НРЦ
  Serial.print(UK, 4); //  график
  Serial.print(" UK,0,0,MAX ");
  Serial.print(MAX);
  Serial.print(" , IMP ");
  Serial.print(imp);
  Serial.print(" , Pause ");
  Serial.println(dop_pause + pause);

  //Начало пачки импульсов
  MAX = 0;
  time = millis();
  long i = 0;
  do {   //Пачка i импульсов
    i++;
    digitalWrite(pin, LOW); //INV
    delayMicroseconds(imp); //Импульс длительностью imp
    digitalWrite(pin, HIGH); //INV
    UAK = readU0(); //Пауза длительностью 1ms
    delayMicroseconds(dop_pause); //Добавка к паузе в мкc
    if (UAK > MAX) MAX = UAK; //Фиксируем максимальное напряжение
    if (UAK > U14) flag++; //Счетчик касаний 14,4В
    if ( (millis() - time) >= 1000 ) { // Выводим значение каждую сек.
      Serial.print(UAK, 4); //  график
      Serial.println("    imp ");
      time = millis();
    }
  }
  while ( (UAK - UK) < delta ) ; //Выходим из цикла при достижении Дельты
  if ( i < pachka ) {  // Если пачка короче XXX имп
    imp = imp * 0.9; // Уменьшаем длительность импульса
    if (imp < 1) imp = 1; // Импульс не укорачивается менее 1мкс
    dop_pause = dop_pause + 100; //Увеличиваеи добавку к паузе
  }
  raz = raz + 1; //Увеличиваем паузу между пачками импульсов

  Serial.print(UAK, 4); //  график
  Serial.print(" ,0,0,  i ");
  Serial.print(i);
  Serial.print(" , IMP ");
  Serial.print(imp);
  Serial.print(" , Pause ");
  Serial.print(dop_pause + pause);
  Serial.print(" , flag ");
  Serial.println(flag);

  //Конец пачки импульсов, Начало паузы между пачками

  float dU0K = readU016();
  for (int h = 1; h <= raz; h++) { //Пачка импульсов - пауза длительностью raz
    delay(900);
    UAK =  readU016();  //1c
    float dU0 = (dU0K - UAK) * 1000; //mV
    dU0K = UAK;
    Serial.print(UAK, 4);
    Serial.print("    ,0,0,   ");
    Serial.println(dU0, 4); //  график
    if (dU0 <= 6) raz = raz - 1 ;// Если скорость падения напряжения ниже 6мВ - уменьшаем паузу
  }
  //Конец паузы между пачками
}

// Измерение UAK, длительность 1мс
float readU0() {
  long U1 = 0; //Напряжение на АКБ
  float result = 0.0;
  float V1 = 0.0;
  float K1 = 0.003003; // 8 1ms
  delayMicroseconds(100);
  for (int j = 1; j <= 8; j++) {
    U1 += analogRead(A1);
  }
  V1 = U1 * K1;
  result = V1;
  return result;
}

// Измерение UAK 128, длительность 100мс
float readU016() {
  long U1 = 0; //Напряжение на АКБ
  float result = 0.0;
  float V1 = 0.0;
  float K1 = 0.0001876; // 128 14ms
  delay(86);
  for (int j = 1; j <= 128; j++) {
    U1 += analogRead(A1);
  }
  V1 = U1 * K1;
  result = V1;
  return result;
}

Многофункциональная облачная моргалка/логгер:
https://morgalka78.wordpress.com/

UriBas

#701
Цитата: Dunkel от 05 Янв. 2018 в 22:14.. убрал ограничения по длительности пачки импульсов и максимальному напряжению 14,4В.  На самом деле эти ограничения не очень-то и нужны - паузы между пачками в основной фазе были минимальные и никакого видимого эффекта не давали, а при добивке пачка и так ограничивается за счет адаптивности алгоритма.
Тоже самое и с напряжением отсечки 14,4В - в основной фазе оно в принципе не достигается, а при окончании добивки импульсы уже настолько короткие, что даже если и пробьет пару раз до 14,5 - ничего плохого не произойдет.
Это придает интересную особенность алгоритму - абсолютные значения напряжения вообще не используются, только две относительные величины - Дельта и dU/dT..   
Очень интересно..  именно так я и думал, что Дельта должна сама чувствовать порог!    Ведь порог по классике = 14,4В сработает только если все банки исправны - идентичны, но на практике это очень редко бывает, поэтому порог может колебаться довольно в широких пределах.. а как это определить? Либо отлавливать по изменению скорости напряжения, либо по Дельте, когда связана с длительностью импульса, длит паузы.  Как только ее связали, она таким образом отлавливает изменения ХИТ АКБ и начинает сама подстраивать параметры импульсов, чтобы ХИТ не загнать в терморазгон - в электролиз и т.д.  Ну а если АКБ здоров, то она сама чувствует порог 14,4В.. причем это гораздо точнее, чем тупо задавать пороги.  Что собственно и подтверждают Ваши эксперименты!

Еще интересно, что по этому поводу был разговор еще где-то вначале 2017 года..  но тогда народ стал роптать, мол АКБ не дозаряжается..  не достигает порога 14,4В.. а в некоторых случаях даже и 14В или того меньше.. т.е. Дельта топчется как бы где-то возле 13,8В.. и дальше не идет.  Понятно дело, если к этому делу подходить с точки зрения правила - "АКБ заряжен, если напряжение дошло до 14,4-16В " то тогда Дельта не дозаряжает..  но на самом деле то, что она начинает топтаться, указывает на неисправность АКБ!! А точнее на разбаланс, когда одна или несколько банок начинают кипеть раньше!    То есть на самом деле, Дельта не только бережно заряжает, исключая КЗ,  но и еще таким образом делает ДИАГНОСТИКУ  АКБ!!  Выявляет разбаланс банок или другие неисправности.

По поводу графиков - хорошо бы временную шкалу показывать.  По скольку уже вырисовывается какая-то картинка" адаптивного заряда, то надо и логи писать и выкладывать..   Оно то, вроде все хорошо, но на самом деле все познается в сравнении..  с той же классикой к примеру.  Надо будет делать  КТЦ и сравнивать, типа как это делал Яков..  тогда это будет показатель.  (Да и для отработки алгоритма надо)


 

Восточная мудрость - "Шакал воет - караван идет"  Эл.вел. 350Вт.   Верую в Иисуса Христа, НЛО.  тема "продвинутой моргалки" https://electrotransport.ru/index.php?msg=1669651