Всё о мобильной энергии, солнечных батарея, ветряках и другой электроники Обсуждение солнечных батарей, вертяков, генераторов и другой электроники
 
  Регистрация | Войти На главную Добавить статью Форум Поиск  RSS Наш твиттер Контакты 29 марта 2024, Пятница  
MobiPower.ru
 О сайте
 Новости
 солнце
 термоэлектричество
 механика
 аккумуляторы
 освещение
 электроника
 прочее (экзотика)
 новинки рынка
 Сделай сам
 Обзоры и тесты
 Библиотека
 Форум
 Ссылки
 Контакты

Новости на e-mail
Подписаться на e-mail рассылку новых статей сайта Mobipower.ru



Вампирчики...
...размножаются здесь:
Мобильный блок питания "Вампирчик-Цифра" v.7
Мобильный блок питания "Вампирчик-Цифра" v.7

3 200 руб.
Солнечная батарея Suaoki на полугибких элементах SunPower
Солнечная батарея Suaoki на "полугибких" элементах SunPower

3 500 руб.

Информация



Новое на форуме

Ругаться сюда, однако ;))))
Автор: Гость
06.11.2023 в 22:29

проблемы при зарядке "пустого" вампирчика
Автор: nik34
03.08.2023 в 19:58

сгорел контроллер солнечной батареи
Автор: Гость
30.05.2023 в 23:15

Подскажите сварку.
Автор: Гость
28.05.2023 в 12:06

Бобик сдох...
Автор: nik34
16.05.2023 в 19:48

Разносол: конструкции от LeonidS
Автор: nik34
16.05.2023 в 19:27

Альтернативная прошивка "вампирчика"
Автор: Sergey345
21.04.2023 в 11:58

Переразряд li-ion
Автор: Aleksandr123
04.04.2023 в 11:53

Оживить вампирчик
Автор: nik34
30.12.2022 в 12:13

ВЦ8 - пока поговорить.
Автор: nik34
06.12.2022 в 16:58

Перейти на форум

Сейчас на сайте
0 человек

в т.ч. гостей:
пользователей:

Всего: 1251

Это может быть полезно


Поделиться этой страницей в:

   FAQFAQ   Поиск на форумеПоиск на форуме    ПользователиПользователи    ГруппыГруппы   ПрофильПрофиль   Личные сообщенияЛичные сообщения   ВходВход 

Альтернативная прошивка "вампирчика"
На страницу Пред.  1, 2, 3, 4, 5, 6, 7, 8, 9  След.
 
Начать новую тему   Ответить на тему    Список форумов -> Электроника
Автор Первое сообщение темы
nik34



Зарегистрирован:
Mar 23, 2008
Сообщения: 2820
Откуда: Москва

СообщениеДобавлено: Ср 09 Ноя, 2016 10:50    Заголовок сообщения: Альтернативная прошивка "вампирчика"
 Ответить с цитатой

Данная тема создана для того, чтобы написать другие прошивки контроллера вампирчика.
Ниже прицеплены последние варианты прошивок для Вампирчиков 5, 6 и 7 версий.
Более ранние можно глянуть под спойлером.

История изменений прошивки:показать

Цитата:
18 ноября:
1. Uin заменено на Ich
2. Разрешение во всех каналах сделано динамическим, т.е. с плавающей точкой:
0-999 (подразумеваемая точка перед первым разрядом, как mA, mV, mW...)
1.00-9.99
10.0-99.9
100.-999.
Не значащие нули в начале не отображаются.
http://alien.jabbercity.ru/v6/fw/20161118/vamp.hex


Цитата:
версия 001:
0. Разрешение во всех каналах теперь динамическое, с плавающей точкой. Подразумеваемая точка перед 1м разрядом не отображается.
1. входное напряжение USL -> Uin
2. ток понижайки (заряда) Uin -> Ich
3. выходная мощность Pou
3а. Добавлено и удалено отображение мощности заряда Pch = Ich*UAc
4. При включении после процентов отображается номер версии
5. Если примерно 2 минуты не трогать кнопки, дисплей переходит в сниженную яркость (экономия энергии)
6. "ночной" режим дисплея. Включается/выключается нажатием кнопки "вниз" при нажатой "вверх"
7. По нажатию верхней кнопки при нажатой нижней пока отображается версия прошивки. Потом, возможно, там будет подменю настроек.
8. исправлен баг с зацикливающимся переключением дисплея при частых нажатиях обеих кнопок.
http://alien.jabbercity.ru/v6/fw/20161122/vamp.hex


Цитата:
версия 002:
1. Переписана логика работы с кнопками, теперь есть (пока не используется) возможность анализировать долгие нажатия;
2. Пофикшен созданный в прошлой ревизии баг с некорректным отображением устанавливаемого напряжения в режиме ЗАР;
3. Пофикшено блымающее 2 раза за период отображения значение Pou.
http://alien.jabbercity.ru/v6/fw/20161123/vamp.hex


Цитата:
версия 003:
1. уменьшено время выключенного входа при измерении напряжения на заряжаемом аккумуляторе со 130 до 29 циклов измерения АЦП. При этом первые 13 циклов напряжение не измеряется.
2. изменён нижний порог установки напряжения заряда внешних аккумуляторов с 4000 до 1000 мВ.
http://alien.jabbercity.ru/v6/fw/20161125/vamp.hex


Цитата:
версия 004:
1. отображение версии перенесено в самое начало работы, уменьшено время показа. Новый стиль отображения.
2. Шаг изменения напряжения ЗАР 0.05В;
3. Изменён верхний порог зарядки аккумуляторов. Для никеля теперь 1.40В вместо 1.39В, для свинца 2.33 вместо 2.32;
4. Исправлен алгоритм округления при отображении значений;
5. Первая реализация ускоренной установки. (ВНИМАНИЕ!!! Требуется тестирование!)

http://alien.jabbercity.ru/v6/fw/20161205/vamp.hex

Писал без тестов на железе. Если кому не лень -- прошейте-погоняйте. Стабильной пока считаем версию №3.
Нижний порог установки напряжения пока оставлен как 1В.


Цитата:
версия 005:
1. Исправлена ускоренная установка. Теперь работает.
2. Добавлен ВКлючаемый таймер для режима зарядки. Откалиброван по моему экземпляру. После выбора напряжения зарядки после буквы t устанавливаем количество минут (0=отключен).
3. Добавлены программные калибровки всех каналов измерения. Отличия от среднего более 10% игнорируются. Для записи калибровок будет отдельная прошивка.
4. Код прошивки перепахан в плане оптимизации по размеру. В результате на флешке занято 4094 байта из 4096 доступных.
http://alien.jabbercity.ru/v6/fw/20161208/vamp.hex


Цитата:
Порядок калибровки:
1. При переключении каналов после имени канала выводится Cbr-calibration
2. Кнопка "вверх" включает калибровку данного канала (отображается AdJ-adjust, потом имя канала, который будем калибровать, далее измеряемая величина)
3. вверх -- увеличить значение, вниз -- уменьшить.
4. Если не трогаем кнопки, через несколько секунд видим вопрос, нужно ли сохранить St?-Set? и подсказку Y_^. Если ничего не нажали - продолжение настройки п.3
5. Пока светится Y_^ (читать, как для ответа Yes нажать ^вверх), Кнопка "^"вверх сохраняет значение (отображается SEt, данные сохраняются), кнопка "v"вниз отменяет настройки, и ничего не пишет (Abr-Abort)
6. Если в п.5 выбран вариант ответа (нажата кнопка) Возвращаемся из режима калибровки - п.1.

Сброс калибровки канала на значение по умолчанию:
2а. когда отображается Cbr при нажатии в п.2 кнопки "вниз" -- сохраняется калибровка по умолчанию dEf-default.
3a. Возвращаемся из режима калибровки - п.1.

http://alien.jabbercity.ru/v6/fw/20161209/vamp_calibrations5.hex


Цитата:
RomaST писал(а):
1) Ставим калибровальную прошивку
2) Калибруем каналы
3) Записываем на комп содержание eeprom
4) Ставим рабочую версию
5) Записываем сохраненный в пункте 3) eeprom на ВЦ

И получаем 5ую версию, с необходимыми калибровками.


Lex писал(а):
версия 006:
0. Педантичная оптимизация кода с частичной потерей производительности и читабельности
1. Добавлено меню настроек и калибровок. Для входа включать с зажатой верхней кнопкой.
2. Для сброса всех настроек и калибровок -- включать с нажатыми двумя кнопками.
3. По умолчанию в каналах измерения тока разрешение загрублено до 20 мА. В остальных не трогается, т.к. не ответили на вопрос.
4. Увеличена задержка перед измерением напряжения в режиме зарядки
5. Более честная индикация процентов в конце процесса зарядки
6. Выкинуты измерения АЦП в виртуальных каналах P, Pou, 3AP -- уменьшился период обновления значений
7. После вывода FUL через 3.5 минуты индикация переходит в "ночной режим" до нажатия любой кнопки.
8. Режим пониженной яркости индикатора теперь включается и выключается в настройках. Лично меня полная яркость слепит.
9. Шаг установки напряжения зарядки можно задать, но только вручную в файле .eep
10. Меню настроек, калибровок, сброса параметров можно теперь каждое по отдельности включать/выключать при сборке прошивки.

Меню настроек и меню калибровок:показать


Меню настроек и меню калибровок:
Включаем МК при зажатой верхней кнопке.
1) После номера версии видим SEt-settings, кнопку отпускаем.

Меню настроек:
2) Далее настройка 2х параметров с вариантом "да/нет". Наличие точек означает, что параметр ВКлючён.
- rES-resolution -- режим повышенного разрешения измерений. Для несогласных с п.3.
- LGH-light -- режим пониженной яркости из п.8.
Если нужно изменить параметр -- когда светится его имя зажимаем верхнюю кнопку, и держим, пока 3 точки индикатора не потухнут/загорятся. После этого отобразится Sud-saved -- новое значение параметра сохранено.

Меню калибровок:
3) Настройка калибровок каналов измерения: Отображается имя канала, потом значение калибровки.
- если не трогать кнопки -- после короткой задержки переход к следующему каналу
- если кнопка нажата -- значение увеличивается/уменьшается. Также увеличивается время задержки, чтобы дать возможность спокойно настроить параметр.
По умолчанию значение калибровочного коэффициента отобразится как 100. Следует читать как 1100. Этот коэффициент уже достаточно описан на форуме.
После установки параметра ждём перехода к калибровке следующего канала. Если значение изменено -- оно сохранится с отображением Svd. Далее переход к следующему каналу.

Работу настроечного меню в любой момент можно прервать, выключив питание (допустим, если изменили разрешение, и не хотим калибровать каналы). НЕ ВЫКЛЮЧАТЬ питание, если предстоит сохранение изменённого параметра.

Сброс к заводским настройкам:
1) Включаем МК с зажатыми двумя кнопками.
- в случае упрощённого-облегчённого варианта настройки затираются без предупреждения и индикации, после чего появляется меню настроек. До его появления питание НЕ ОТКЛЮЧАТЬ.
- в расширенном варианте есть защита от случайного сброса, т.н. Безопасный режим.
Начинается обратный отсчёт 999, 888, ... 000. Если во время отсчёта отпустить какую-либо из кнопок -- отсчёт прервётся и сброс не произойдёт.
Если продолжаем держать обе кнопки, отобразится ---, потом выполнится очистка EEPROM (питание НЕ ВЫКЛЮЧАТЬ), после очистки отобразится rSt-reset.
Если и после этого не отпустили верхнюю кнопку -- попадаем в меню настроек.


Безопасный сброс и меню калибровок одновременно в прошивку не помещаются. Потому две на выбор. Отличить можно по наличию меню калибровок.

Сборка с калибровками:
http://alien.jabbercity.ru/v6/fw/20161214/vamp_cal.hex
Сборка с безопасным сбросом:
http://alien.jabbercity.ru/v6/fw/20161214/vamp_secureset.hex

настройка шага изменения напряжения:показать


Самый простой способ, чтобы не вычислять смещения:
1. включаем свежепрошитую (или со сброшенными настройками) 6ку.
2. в меню настроек устанавливаем режим повышенного разрешения. Больше никаких настроек и калибровок не меняем.
3. сохраняем EEPROM в файл.
4. Там должны быть все 0xFF, кроме одного 0x00. Этот байт отвечает за флаг повышенного разрешения. Байт перед ним отвечает за шаг. Точнее содержит его значение в милливольтах. Записываем его туда в 16-ричном формате. Для 10мВ будет 0x0A.
5. исправляем контрольную сумму в конце строки, и пишем всё обратно в ВЦ.

Примечание: шаг=0 и шаг>200 считается некорректным, и принимается за 50 мВ.
4а. Величина смещения искомого байта = 22 = 0x16.


Цитата:
версия 007:
1. Работа с индикатором переведена на прерывания по таймеру. Теперь разряды не подмигивают.

Реализованные, но отключённые в данной сборке функции:
2. Отображение данных из встроенного в МК термодатчика;
3. усыпление МК через некоторое время при неактивности пользователя (если не трогает кнопки);
4. временно выкинул из настроек включение режима пониженной яркости;

http://alien.jabbercity.ru/v6/fw/20170613/vamp.hex


Цитата:
Инструкция по прошивке и история разработки от Алексея LaleksUi (за что ему большое спасибо. Smile )
Инструкция Пользователю
История Разработки





vc7_n31.zip
 Описание:
Последняя версия прошивки для ВЦ7

Скачать
 Имя файла:  vc7_n31.zip
 Размер:  15.46 KB
 Скачали:  1627 раз(а)


vamp_v6_n7.zip
 Описание:
Последняя версия прошивки для ВЦ6

Скачать
 Имя файла:  vamp_v6_n7.zip
 Размер:  4.85 KB
 Скачали:  1576 раз(а)


AVR Projects.rar
 Описание:
Исходный проект, который заливался в ВЦ5. Можно не скачивать, он уже сильно устарел.

Скачать
 Имя файла:  AVR Projects.rar
 Размер:  260.85 KB
 Скачали:  2203 раз(а)



Последний раз редактировалось: nik34 (Сб 02 Июн, 2018 12:24), всего редактировалось 11 раз(а)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
alsegor




Зарегистрирован:
Dec 28, 2008
Сообщения: 7
Откуда: Сургут

СообщениеДобавлено: Ср 23 Ноя, 2016 18:27    Заголовок сообщения:
 Ответить с цитатой

Lex писал(а):

Видать, предыдущий автор прошивки на сишнике для большого компа писал немного.
С такими хотелками скоро на мегу88 переезжать придётся))) Кстати, она сильно дороже?

Я являюсь автором первоначального варианта прошивки.
Я писал как можно проще, так как писал для возможности самостоятельной правки Николаем. Так как памяти хватало, то оптимизацию кода не делал.
Пустые циклы измерения, сделаны для "стабилизации" сигнала на выбранном входе после переключения, так как сразу после переключения из за емкостей на входе АЦП есть еще "воспоминания" от ранее подключенного входа, это мы с Николаем в процессе работы выяснили, без этого погрешность была высокая, даже китайский мультиметр показывал точнее.
Генератор наверняка будет плавать так как там RC цепь, но вот в каких пределах не проверял, не было необходимости, боюсь он и от экземпляра МК будет меняться, поэтому длительные задержки будут иметь высокую погрешность.
Мега 88 сейчас антиквариат и поэтому цена у него антикварная как и доставабельность, тем более Microchip купил не так давно Atmel и не известно что будет дальше.
Рекомендовал бы посмотреть в сторону STM32F0ХХ или STM32F1ХХ.
Если будет много кушать то есть серия STM32LХХХ.
Как я понял к старому автору уже вопросов нет?
Так что желаю успехов в развитии функционала!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Lex




Зарегистрирован:
Nov 23, 2016
Сообщения: 337
Откуда: 61

СообщениеДобавлено: Ср 23 Ноя, 2016 20:32    Заголовок сообщения:
 Ответить с цитатой

alsegor писал(а):

Как я понял к старому автору уже вопросов нет?

Остались ещё несколько:
1. В исходном архиве 3 проекта: 1_0, 1_1, 1_2 -- в чём отличия, и зачем так много версий?
2. Анализа ноги с термодатчиком я в коде 1_2 (который взял за основу) не обнаружил. Он там есть?
3. Как Вы отлаживали прошивку? На живой железке, или эмулятор был?
4. что-то ещё забыл, позже напишу.

alsegor писал(а):

Генератор наверняка будет плавать так как там RC цепь, но вот в каких пределах не проверял, не было необходимости, боюсь он и от экземпляра МК будет меняться, поэтому длительные задержки будут иметь высокую погрешность.

А что если для особо страждущих считать время в собственных "попугаях", например, соизмеримых с 10-30сек, и не париться с точностью? Каждый для себя оценит коэффициент пересчёта попугаев в часы:минуты, и будет в них задавать время до отключения зарядки. Всё лучше чем ничего.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Lex




Зарегистрирован:
Nov 23, 2016
Сообщения: 337
Откуда: 61

СообщениеДобавлено: Чт 24 Ноя, 2016 10:49    Заголовок сообщения:
 Ответить с цитатой

Посмотрел цены на мегу 48 и 88, не такая уж большая разница на фоне цены прибора.
А прошивки для них насколько совместимы? Можно ли на плату запаять 88, и залить в него прошивку от 48? Без дополнительных телодвижений.
atmega88 бы как раз на хотелки хватило.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
RomaST




Зарегистрирован:
Dec 07, 2014
Сообщения: 119


СообщениеДобавлено: Чт 24 Ноя, 2016 14:16    Заголовок сообщения:
 Ответить с цитатой

Lex писал(а):
Anonymous писал(а):
По сути, режим ЗАР отключает питание зарядки внешних аккумуляторов по достижении определенного напряжения на этих аккумуляторах. Было бы достаточно оставить в этом режиме только одну вункци: это возможность выбора напряжения отключения от 1.00В до 16.00В, с шагом выбора 0.01В.

Могу пока вообще выкинуть отключение питания при проверке напряжения. Будет выключаться по достижении установленного порога на выходе ВКЛЮЧЁННОЙ повышайки. Устроит?



Чтоб корректно зарядить внешний аккумулятор на 100% напряжение нужно мерить в момент отключения питания. Если мерять на выходе повышайки, то будет недозаряд аккумулятора. Если ошибаюсь, то поправьте.
В любом случае, хотелось бы прочитать коментарии Николая по поводу исправления этого бага.

Получится ли добавить возможность выбора напряжения отключения от 1.00В до 16.00В, с шагом выбора 0.01В? Вот здесь и понадобиться возможность анализа долгих нажатий. Допустим, если кратковременное нажатие, то шаг переключения 0.01В, если долговременное, то 0.1В.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Lex




Зарегистрирован:
Nov 23, 2016
Сообщения: 337
Откуда: 61

СообщениеДобавлено: Чт 24 Ноя, 2016 15:32    Заголовок сообщения:
 Ответить с цитатой

RomaST писал(а):

Получится ли добавить возможность выбора напряжения отключения от 1.00В до 16.00В, с шагом выбора 0.01В?

Пороги и шаг изменить -- вообще без проблем. Только вот как отобразить в трёх разрядах число 12,01?.. Сейчас разрешение с плавающей точкой и округлением: 12.04 отобразится как 12.0, 12,05->12,1. Т.е. при щёлкании кнопками мы будем наблюдать отсутствие видимого результата подстройки.

RomaST писал(а):

Вот здесь и понадобиться возможность анализа долгих нажатий. Допустим, если кратковременное нажатие, то шаг переключения 0.01В, если долговременное, то 0.1В.

Думаю, тогда адекватнее будет реализовать ускоренную установку при долгих нажатиях. Как в часах или компьютере. Чем дольше жмём -- тем быстрее листает. Если в контроллер влезет.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
alsegor




Зарегистрирован:
Dec 28, 2008
Сообщения: 7
Откуда: Сургут

СообщениеДобавлено: Чт 24 Ноя, 2016 18:28    Заголовок сообщения:
 Ответить с цитатой

Lex писал(а):
Посмотрел цены на мегу 48 и 88, не такая уж большая разница на фоне цены прибора.
А прошивки для них насколько совместимы? Можно ли на плату запаять 88, и залить в него прошивку от 48? Без дополнительных телодвижений.
atmega88 бы как раз на хотелки хватило.

Судя по документации цоколевка одна и та же, можете и 168 мегу поставить, плату переразводить не надо.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
nik34



Зарегистрирован:
Mar 23, 2008
Сообщения: 2820
Откуда: Москва

СообщениеДобавлено: Чт 24 Ноя, 2016 18:31    Заголовок сообщения:
 Ответить с цитатой

Lex писал(а):
С такими хотелками скоро на мегу88 переезжать придётся))) Кстати, она сильно дороже?

Если и дороже, то ненамного.

Цитата:
Что происходит во время глюка и как это программно исправить, Николай, надеюсь, подробнее обяснит.

Это уже описывалось несколько раз.
Если коротко, то чуть-чуть недозаряжает и отключается, не выдавая надпись "Ful".
Суть в том, что для исключения влияния внутреннего сопротивления заряжаемого аккумулятора, мы измеряем напряжение на нем, останавливая зарядный ток, временно отключая повышающий преобразователь.
В 5й версии сигнал МК на приостановку работы подавался на сам преобразователь и после снятия сигнала, работа преобразователя продолжалась. И только в конце, когда МК решал, что акк. уже заряжен, он писал "Ful" и выдавал сигнал остановки постоянно.
В 6й же, текущей, версии сигнал остановки с МК идет не на преобразователь, а в схему выключения (фактически, на кнопку "выкл"), соответственно, он просто тупо выключает ВЦ и всё.
Ситуацию спасает, что кнопка "выкл" срабатывает с задержкой и при однократном измерении напряжения на заряжаемом акк. МК успевает снять напряжение с выхода, измерить напряжение на акк. и снова разрешить зарядку. Но в конце зарядки, прежде, чем окончательно отключиться, МК делает измерения несколько раз подряд и суммарное время оказывается большим и кнопка "выкл" успевает окончательно сработать и полностью выключить ВЦ.

Цитата:
По сути, режим ЗАР отключает питание зарядки внешних аккумуляторов по достижении определенного напряжения на этих аккумуляторах.

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

Цитата:
Было бы достаточно оставить в этом режиме только одну вункци: это возможность выбора напряжения отключения от 1.00В до 16.00В,

По сути дела, так и сделано.
Только добавлен промежуточный выбор "для чайников", которые не знают на память, до какого же напряжения им заряжать. Поэтому и добавлены типа "1шт LiI0n", "2шт LiIon" и т.д.

Цитата:
с шагом выбора 0.01В.

А вот с этим облом. Разрешение АЦП в МК не позволит измерять с таким малым шагом. Поэтому шаг 0.1В.

Цитата:
А если добавить таймер, для полноценной зарядки NiMH, то это была бы мечта.

Таймер, как раз, полагаю, сделать несложно. Но появится в режиме "Зар" еще один пункт подменю.

Цитата:
Могу пока вообще выкинуть отключение питания при проверке напряжения. Будет выключаться по достижении установленного порога на выходе ВКЛЮЧЁННОЙ повышайки. Устроит?

Ни в коем случае. Это уже проходили в самых первых версиях.
Будет огромная зависимость напряжения конца заряда от внутреннего сопротивления аккумулятора.

Цитата:
Мой вопрос был не понят. Я имел в виду нестабильность в рамках одного экземпляра. Если каджый пользователь откалибрует свой прибор через меню, насколько потом частота может гулять?

Не знаю точно. Нужно брать datasheet на контроллер, там обычно указано.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
alsegor




Зарегистрирован:
Dec 28, 2008
Сообщения: 7
Откуда: Сургут

СообщениеДобавлено: Чт 24 Ноя, 2016 18:37    Заголовок сообщения:
 Ответить с цитатой

Lex писал(а):

Остались ещё несколько:
1. В исходном архиве 3 проекта: 1_0, 1_1, 1_2 -- в чём отличия, и зачем так много версий?
2. Анализа ноги с термодатчиком я в коде 1_2 (который взял за основу) не обнаружил. Он там есть?
3. Как Вы отлаживали прошивку? На живой железке, или эмулятор был?
4. что-то ещё забыл, позже напишу.

А что если для особо страждущих считать время в собственных "попугаях", например, соизмеримых с 10-30сек, и не париться с точностью? Каждый для себя оценит коэффициент пересчёта попугаев в часы:минуты, и будет в них задавать время до отключения зарядки. Всё лучше чем ничего.

1. Надо смотреть какую версию шьет Николай. Давно это было уже не помню всех нюансов.
2. Это по моему вообще потом убрали, на первых версиях вроде использовали. А в коде не нашли упоминаний? Я вроде с комментариями писал.
3. Отладку делал на железе, Николай мне первый экземпляр присылал и я на нем отладку делал.
4. Вспоминайте, но я уже давно все это забыл. Столько после этого было еще написано.

Можно конечно сделать функцию калибровки, например 30 секундного интервала, а от него как Вы и сказали плясать.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Lex




Зарегистрирован:
Nov 23, 2016
Сообщения: 337
Откуда: 61

СообщениеДобавлено: Чт 24 Ноя, 2016 18:45    Заголовок сообщения:
 Ответить с цитатой

nik34 писал(а):
Lex писал(а):
С такими хотелками скоро на мегу88 переезжать придётся))) Кстати, она сильно дороже?

Если и дороже, то ненамного.

В общем, я за тестовый экземпляр на 88й меге))

alsegor писал(а):

1. Надо смотреть какую версию шьет Николай. Давно это было уже не помню всех нюансов.
2. Это по моему вообще потом убрали, на первых версиях вроде использовали. А в коде не нашли упоминаний? Я вроде с комментариями писал.

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


1. Сравнивал. 1_2
2. Вообще ничего в ней. Искал по слову "term" и "терм"
- Можно. Только уже берут сомнения, а влезет ли в оставшиеся несколько свободных десятков байт ещё и работа с EEPROM.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
nik34



Зарегистрирован:
Mar 23, 2008
Сообщения: 2820
Откуда: Москва

СообщениеДобавлено: Чт 24 Ноя, 2016 18:53    Заголовок сообщения:
 Ответить с цитатой

alsegor писал(а):
Я являюсь автором первоначального варианта прошивки.
Я писал как можно проще, так как писал для возможности самостоятельной правки Николаем. Так как памяти хватало, то оптимизацию кода не делал.

Могу только еще раз выразить благодарность Александру за прошивку, за то, что не поленился откомментировать исходники, чтобы те, кто будет с ними дальше работать быстро разобрались. Smile
Критиковать прошивку не стоит - когда она писалась, ее возможностей было достаточно.

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

Lex, "мотайте на ус". Чтобы чего-нибудь лишнего не выкинуть. Wink

Цитата:
Генератор наверняка будет плавать так как там RC цепь, но вот в каких пределах не проверял, не было необходимости, боюсь он и от экземпляра МК будет меняться, поэтому длительные задержки будут иметь высокую погрешность.

Она будет равной точности RC-генератора. В конце-концов, точность нам большая и не нужна, даже 20% хватит с лихвой - это же, скорее, предохранительный таймер.

Цитата:
Мега 88 сейчас антиквариат и поэтому цена у него антикварная как и доставабельность, тем более Microchip купил не так давно Atmel и не известно что будет дальше.

На Али сейчас увидел 88ю по 34р в пачке из 100шт.

Цитата:
Так что желаю успехов в развитии функционала!

Спасибо, Александр. Smile
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
nik34



Зарегистрирован:
Mar 23, 2008
Сообщения: 2820
Откуда: Москва

СообщениеДобавлено: Чт 24 Ноя, 2016 19:05    Заголовок сообщения:
 Ответить с цитатой

Lex писал(а):
В общем, я за тестовый экземпляр на 88й меге))

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

Lex писал(а):
alsegor писал(а):
Можно конечно сделать функцию калибровки, например 30 секундного интервала, а от него как Вы и сказали плясать.

- Можно. Только уже берут сомнения, а влезет ли в оставшиеся несколько свободных десятков байт ещё и работа с EEPROM.

Думаю, не стоит. Как уже писал, это же предохранительный таймер, он может быть очень грубым.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Lex




Зарегистрирован:
Nov 23, 2016
Сообщения: 337
Откуда: 61

СообщениеДобавлено: Пт 25 Ноя, 2016 1:08    Заголовок сообщения:
 Ответить с цитатой

nik34 писал(а):

Цитата:
с шагом выбора 0.01В.

А вот с этим облом. Разрешение АЦП в МК не позволит измерять с таким малым шагом. Поэтому шаг 0.1В.

Если рассуждать чисто математически, то разрешение АЦП = 1.1*16/1024 = 0,0171875 В. Или с учётом 16ти измерений с усреднением -- вообще 1.1/1024 = 0,001074219 В. Это если не учитывать калибровки, шумы, погрешность внутреннего источника 1.1В...
Но никто не мешает нижний порог изменить хоть сейчас. В данный момент там 4000 мВ.

[quote="nik34"]
alsegor писал(а):

Цитата:
Пустые циклы измерения, сделаны для "стабилизации" сигнала на выбранном входе после переключения, так как сразу после переключения из за емкостей на входе АЦП есть еще "воспоминания" от ранее подключенного входа, ....

Lex, "мотайте на ус". Чтобы чего-нибудь лишнего не выкинуть. Wink

И не собирался выкидывать. Если звёзды зажигают, значит это кому-нибудь нужно (с). Я себе позволял только арифметику и логику работы править. Не касаясь физической части. Но любопытно. Стало быть, в контроллере один АЦП, физически коммутируемый на разные входы...

nik34 писал(а):
Lex писал(а):
В общем, я за тестовый экземпляр на 88й меге))

А я уже все оставшиеся платы распаял на 48-ю. Sad

А как такой вариант? Один экземпляр перепаивается на 88 или 168, и пробуете туда залить ту же прошивку. Если заработала -- он едет ко мне, вместо горелого, и отлаживаю прошивки уже на нём. С условием, что в релизах будет не более 4096 байт. Это позволит тестировать новые фичи, вообще изучать, как там что. И когда очередные экземпляры пойдут с новым контроллером -- выпустить уже отлаженную прошивку и под них. С расширенной функциональностью, преферансом и куртизанками.
Разумеется, всё вышеописанное имеет смысл, только если 48/88/168 будут на одной общей прошивке работать идентично.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
nik34



Зарегистрирован:
Mar 23, 2008
Сообщения: 2820
Откуда: Москва

СообщениеДобавлено: Пт 25 Ноя, 2016 12:16    Заголовок сообщения:
 Ответить с цитатой

Lex писал(а):
Если рассуждать чисто математически, то разрешение АЦП = 1.1*16/1024 = 0,0171875 В. Или с учётом 16ти измерений с усреднением -- вообще 1.1/1024 = 0,001074219 В.

Если с циферкой 0.017 я еще могу согласиться, то с утверждением, что при большем количестве измерений мы увеличим точность - нет. По этой логике, если мы 500 раз померяем 2х позиционным индикатором какое-нибудь напряжение, то получим разрешение в 1/1000? Чудеса? Wink

Цитата:
Но никто не мешает нижний порог изменить хоть сейчас. В данный момент там 4000 мВ.

Изменить, то можно, но классическая схема понижающего преобразователя не может иметь на выходе напряжение меньше, чем на ее входе (с точностью до падения на прямовключенном диоде). А у нас питание от 3 до 4.2В.

Цитата:
Стало быть, в контроллере один АЦП, физически коммутируемый на разные входы...

Наиболее вероятно. Давно в его описание не заглядывал, там должно быть указано.

Цитата:
А как такой вариант? Один экземпляр перепаивается на 88 или 168, и пробуете туда залить ту же прошивку. Если заработала -- он едет ко мне, вместо горелого, и отлаживаю прошивки уже на нём. С условием, что в релизах будет не более 4096 байт. Это позволит тестировать новые фичи, вообще изучать, как там что. И когда очередные экземпляры пойдут с новым контроллером -- выпустить уже отлаженную прошивку и под них. С расширенной функциональностью, преферансом и куртизанками.

Для этого контроллер, как минимум, надо еще купить. У меня же их нет.
Если отсылать плату сейчас, то точно не успею.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Lex




Зарегистрирован:
Nov 23, 2016
Сообщения: 337
Откуда: 61

СообщениеДобавлено: Пт 25 Ноя, 2016 12:38    Заголовок сообщения:
 Ответить с цитатой

nik34 писал(а):
Lex писал(а):
Если рассуждать чисто математически, то разрешение АЦП = 1.1*16/1024 = 0,0171875 В. Или с учётом 16ти измерений с усреднением -- вообще 1.1/1024 = 0,001074219 В.

Если с циферкой 0.017 я еще могу согласиться, то с утверждением, что при большем количестве измерений мы увеличим точность - нет. По этой логике, если мы 500 раз померяем 2х позиционным индикатором какое-нибудь напряжение, то получим разрешение в 1/1000? Чудеса? Wink

Тут я рассуждал из соображений, что ошибка измерений младшего разряда подвержена равномерному распределению вероятности.
Например, если фактическая величина напряжения составляет 0,7 от младшего разряда, тогда мы должны получить примерно в 70% измерений большее значение, в 30% меньшее. Это идеализированная теория. А так да, пусть будет 0.02В. Можно в качестве шага выбрать 0.05.

nik34 писал(а):
Цитата:
Но никто не мешает нижний порог изменить хоть сейчас. В данный момент там 4000 мВ.

Изменить, то можно, но классическая схема понижающего преобразователя не может иметь на выходе напряжение меньше, чем на ее входе (с точностью до падения на прямовключенном диоде). А у нас питание от 3 до 4.2В.

Надеюсь, следующее утверждение ещё в силе?
nik34 писал(а):

- Выходное напряжение регулируется примерно отдо 15В, но при напряжениях ниже напряжения на внутр. акк. (3...4.2В), регулировка линейная, т.е. разница идет в тепло.
...
Сейчас я описал лишь ту плату, что лежит у меня на столе готовой. Надеюсь, что серийные не будут слишком отличаться.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
RomaST




Зарегистрирован:
Dec 07, 2014
Сообщения: 119


СообщениеДобавлено: Пт 25 Ноя, 2016 14:27    Заголовок сообщения:
 Ответить с цитатой

nik34 писал(а):

Изменить, то можно, но классическая схема понижающего преобразователя не может иметь на выходе напряжение меньше, чем на ее входе (с точностью до падения на прямовключенном диоде). А у нас питание от 3 до 4.2В.


Необходимо взять за нижний порог отключения 1В по следующим соображениям.
При зарядке 1го NiMH аккумулятора в режиме ЗАР, мы выставляем силу тока 0.07А. И совершенно не важно, какое напряжение будет на преобразователе. Как только напряжение на аккумуляторе станет 1.5В, то вампирчик отключит зарядку.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Lex




Зарегистрирован:
Nov 23, 2016
Сообщения: 337
Откуда: 61

СообщениеДобавлено: Пт 25 Ноя, 2016 14:36    Заголовок сообщения:
 Ответить с цитатой

По поводу режима зарядки:
В теле основного цикла делается:
1. анализ напряжения (при зарядке тут же периодическое отключение выхода с включением на следующей итерации)
2. цикл по всем входам АЦП, в котором:
2.1 цикл по текущему входу АЦП (кол-во итераций=коэфф. деления +4 холостых), в котором:
2.1.1. одно измерение напряжения
2.1.2. опрос кнопок
2.1.3. отображение очередной позиции индикатора (из 3)

Иными словами, при измерении напряжения заряжаемых акк, выход пребывает в выключенном состоянии ровно одну итерацию основного цикла, пока работает измерение всех входов (та самая пачка).

http://disk.jabbercity.ru/pub/vamp.hex Загрузите прошивку. Вместо измеряемых уровней будет бежать счётчик основных циклов программы. Какова их частота?
-----
у меня 10000 внутренних циклов (там где измерение 2.1.1) выполнялись 35 сек. Сейчас за одну итерацию главного цикла выполняется 130 измерений. Это должно быть около 0,455сек. Похоже? С этой же частотой, кстати, обновляются измеряемые уровни.

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




Зарегистрирован:
Nov 23, 2016
Сообщения: 337
Откуда: 61

СообщениеДобавлено: Пт 25 Ноя, 2016 16:02    Заголовок сообщения:
 Ответить с цитатой

Версия прошивки №3:
- уменьшено время выключенного входа при измерении напряжения на заряжаемом аккумуляторе со 130 до 29 циклов измерения АЦП. При этом первые 13 циклов напряжение не измеряется.
- изменён нижний порог установки напряжения заряда внешних аккумуляторов с 4000 до 1000 мВ.

http://alien.jabbercity.ru/v6/fw/20161125/vamp.hex
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
RomaST




Зарегистрирован:
Dec 07, 2014
Сообщения: 119


СообщениеДобавлено: Пт 25 Ноя, 2016 23:27    Заголовок сообщения:
 Ответить с цитатой

Куплю перепрошивальщик для вампирчика. Паять не умею, но есть компьютер и вампирчик.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
alsegor




Зарегистрирован:
Dec 28, 2008
Сообщения: 7
Откуда: Сургут

СообщениеДобавлено: Сб 26 Ноя, 2016 15:05    Заголовок сообщения:
 Ответить с цитатой

RomaST писал(а):
Куплю перепрошивальщик для вампирчика. Паять не умею, но есть компьютер и вампирчик.

Ищите AVRISP mk2, мы с Николаем им пользуемся, и разъем на вампирчике под него распаян.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
nik34



Зарегистрирован:
Mar 23, 2008
Сообщения: 2820
Откуда: Москва

СообщениеДобавлено: Сб 26 Ноя, 2016 20:22    Заголовок сообщения:
 Ответить с цитатой

alsegor писал(а):
RomaST писал(а):
Куплю перепрошивальщик для вампирчика. Паять не умею, но есть компьютер и вампирчик.

Ищите AVRISP mk2, мы с Николаем им пользуемся, и разъем на вампирчике под него распаян.

В принципе, подойдет любой, у которого есть 6-пиновый разъем для программирования и который поддерживает контроллеры серии AtMegaю.
На Алиэкспрессе была куча программаторов. Но не факт, что будут нормально работать, но, зато, дешевые.
Может проще, чтобы не тратить деньги, поспрашивать у знакомых. Особенно, если не планируется заниматься этим постоянно.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
RomaST




Зарегистрирован:
Dec 07, 2014
Сообщения: 119


СообщениеДобавлено: Пн 28 Ноя, 2016 10:12    Заголовок сообщения:
 Ответить с цитатой

Хотелось бы видеть ещё одну функцию в новой прошивке. Возможно ли сделать автоотключение МК и экрана в режиме ЗАР, после появления надписи FUL? Но, чтоб режимом автоотключения можно былобы управлять. Чтоб он активировался, когда переключатель автоотключения на самом вц6 включен и горид светодиод автоотключения или часа через 2-3 после появления надписи FUL.

Такая функция полезна, если поставить аккумуляторы на зарядку и уйти на месяц.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Форум об электронике, зарядке аккумуляторов, солнечных батареях, вопросы по теме "сделай сам".
Начать новую тему   Ответить на тему    Список форумов -> Электроника Часовой пояс: GMT + 3
На страницу Пред.  1, 2, 3, 4, 5, 6, 7, 8, 9  След.
Страница 2 из 9

 
Перейти:  
Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прилагать файлы к сообщениям
Вы можете скачивать файлы


Форум Mobipower.ru - о солнечных батареях, аккумуляторах, зарядных устройствах, самоделках
 

Загрузка страницы: 0.07 секунды