Поскольку в старой моей теме накопилось много мусора ( и разных вариантов и версий блоков питания), тут выкладываю последнюю на данный момент модель своего блока питания.
Проект даётся
ДАРОМ - то есть если вы имеете все необходимые детали и в состоянии повторить ( спаять, запрограммировать и т.п.), имеете оборудование для сборки, настройки и проверки, то
УДАЧИ.
( открытых аналогов проекта я до сих пор не видел).
Блоки на заказ больше не делаю. Тему поддерживаю, поскольку это хобби.
НОВАЯ ВЕРСИЯ блока c встроеннным хабом, юсб изолятором (гальваническая развязка), звуковой картой (аналоговый и цифровой выход), портом под изикап >>>> исходные файлы для самостоятельной сборки BP5.PLUS
Это
BP5mini (уже есть решения новее) , с оптимизированной печатной платой, который проехал со мной уже около 20000 км. Самая длинная поездка была почти сутки за раз. После трех поколений оптимизаций BP5mini развился в
BP5mini+2.2
Блок отлично себя показал. Хорошо держит
просадки напряжения при старте.
Потребление блока питания в выключенном состоянии 0(Ампер)
Печатная плата и прошивка находятся тут, открывать в
DipTrace
Тестовые прошивки искать с конца темы или
ТУТ.
временные фото
сделанные наспех, потом сфотографирую нормально



Инструкция по подключению, на базе BP5mini. Подключать можно не полностью, а МОДУЛЬНО ( то есть только батарею планшета и датчик холла, например)
Краткий принцип работы в виде файла БП5mini (+поиск неисправностей)
Краткий принцип работы(описание на форуме) БП5mini (+поиск неисправностей)
Рекомендованный
порядок настройки БП после сборки.
Для тех, кто не может скомпилировать скетчи, выкладываю свою сборку (одну из) ардуино.
https://mega.nz/#!FlhiWTgZ!fhH_QTRTF...v-sHJEXG-538Sc
https://drive.google.com/file/d/1oAz...ew?usp=sharing
Для контроля значений, которые прописаны в памяти процессора.
Чтение и запись настроек пользователя из памяти процессора.
Очень хорошая информация про аккумуляторы
Ссылка на
свежайшие версии файлов. Синхронизируются с моим компьютером.
Часто задаваемые вопросы
Кратко о моей конфигурации.
NEXUS-7-2012-wifi (еще новый покупал). Батарея у меня выкинута вместе с контроллером. Датчик холла выпаян, БП включает режим OTG. В ЮСБ также подключен хаб, в котором только звуковая карта.
Цитата:
Как устроено автоматическое отключение планшета при вытаскивании ключа?
|
При вытаскивании ключа ( выключении зажигания) на датчик холла планшета подаётся масса, экран тухнет, планшет засыпает.
После суток ожидания (время настраивается) с батареи планшета убирается подпитка (4,0В). Масса на датчике холла остается.
Цитата:
Может у Вас есть рисованная схема как у Вас реализовано подключение?
|
Пока нет. И вряд ли будет, потому как обвязка, допустим, микросхемы ( конденсаторы, резисторы) смотрится в даташите и соответствует рекомендованной производителем. Поэтому вместо одной детали в теории ( на схеме) легко мождет стать 5 деталей на практике ( на печатной плате).
Цитата:
Продаете ли вы свой блок питания?
|
Да, пишите в личку. С учетом того, что я смог приблизить процесс к производственному, снизилась цена и улучшилось качество.[/QUOTE]
Цитата:
Какой корпус подходит для вашего блока питания?
|
У каждого свои запросы касаемо корпуса. Некоторые встраивают всё в большой корпус 2-дин магнитолы, некоторые хотят только алюминиевый ( из условий безопасности и теплоотвода), некоторым вообще корпус не нужен. Понимая, что я всё равно не могу разработать абсолютно универсального решения, я просто постарался сделать плату как можно меньше, но не в ущерб теплоотдаче и безопасности.
Цитата:
Можно ли изменить время сна/включения/выключения/ожидания, значения напряжений разряженного аккумулятора?
|
ВСЕ значения при необходимости меняются в скетче ( программе управления). Я постарался каждое значение снабдить подробным комментарием.
По умолчанию
все уже настроено так, как
работает у меня в машине, то есть ничего менять не нужно. Но если вы хотите что-либо изменить под себя,
то вот пример из скетча:
PHP код:
//Н А С Т Р О Й К И П О Л Ь З О В А Т Е Л Я П О Д С В О И П О Т Р Е Б Н О С Т И
// Н А С Т Р О Й К И П О Л Ь З О В А Т Е Л Я П О Д С В О И П О Т Р Е Б Н О С Т И
// Н А С Т Р О Й К И П О Л Ь З О В А Т Е Л Я П О Д С В О И П О Т Р Е Б Н О С Т И
// Н А С Т Р О Й К И П О Л Ь З О В А Т Е Л Я П О Д С В О И П О Т Р Е Б Н О С Т И
const byte OTLADKA = 0; // режим ОТЛАДКИ. 0 = нормальная работа. 1 = отладка. 2 = отладка.
// Если на столе или в машине блок питания не включает выходы, выключается послы выключения зажигания, то для проверки функций включаем OTLADKA = 1;
// Для штатной, нормальной работы блока питания ставим OTLADKA = 0;
// 1 - режим отладки, при котором напряжение АКБ принято за 14.50. Напряжение АСС = 14.50 при включенном АСС и реальное напряжениие на линии АСС при вЫключенном.
// 2 - режим отладки, при котором ВСЕГДА напряжения АСС и АКБ приняты за 14.50В
const byte brac_nastrojki_iz_EEPROM = 0; // если вы хотите СОХРАНИТЬ свои настройки в энергонезависимую память(еепром), тогда ставим 1, 0 - берём значения из скетча, игнорируя память ( кроме калибровки), 2 - берем значения из памяти eeprom,(если память пустая, берем значения из скетча.)
byte reset_HUB_on_power_on = 1; // передёргивать ли хаб при каждом включении зажигания, для решения проблемы с определением изикапа (STK1160) 1 - после ВКЛ АСС включить хаб, выключить на 0,5с и включить опять. 0 - просто включить хаб. При 1 могут быть проблемы с определением флешки в хабе, отгда поставить 0.
byte power_off_HUB_on_starting = 1; // выключать ли питание на хаб при старте авто ( 1- да, выключать) (0 - не выключать)
byte power_off_OTG_on_starting = 1; // выключать ли массу на OTG при старте авто ( 1- да, выключать) (0 - не выключать)
byte HALL_as_power_Switch = 0; // 0 - используем ДХ как обычно. 1 - вместо ДХ подключаем кнопку питания планшета. Если подключено как КНОПКА, то задержка перед нажатием "кнопки" после включения АСС это SLEEP_timer_pri_vkl_ACC, а после вЫключения SLEEP_timer_pri_vykl_ACC. Удержание нажатия = vremia_uderjanija_najatoj_knopki_POWER. ДХ = Датчик Холла.
unsigned long vremia_uderjanija_najatoj_knopki_POWER = 250; //если HALL_as_power_Switch = 1, то время "зажатия" (нажимания) кнопки питания планшета устанавливаем тут. 500 = 0,5с.
//НАСТРОЙКИ Пороговых напряжений!!!!!!!!_________НАСТРОЙКИ Пороговых напряжений!!!!!!!!_________НАСТРОЙКИ Пороговых напряжений!!!!!!!!_________НАСТРОЙКИ Пороговых напряжений!!!!!!!!_________НАСТРОЙКИ Пороговых напряжений!!!!!!!!_________
// напряжения должны быть записаны ТОЛЬКО в XX.X формате, например 11.0
float Uperezariadki = 15.5; // напряжение, выше которого будет считаться, что идёт перезарядка аккумулятора авто.
float UrabotyREM = 11.8; // напряжение, выше которого будет работать усилитель звука, если акб не садился.
float UnevykluczeniaREM = 13.7; // напряжение, когда машина считается заведённой. Тогда, если завели машину, ВКЛЮЧАЕМ REM, и постоянно обнуляем обратный отсчет вырубания РЕМ.
float Uakb_Kogda_ACC_vYkluczeno = 11.9; // напряжение, ниже которого АКБ авто будет считаться разряженным (севшим) при вЫключенном АСС
float Uakb_Kogda_ACC_vkluczeno = 11.1; // напряжение, ниже которого АКБ авто будет считаться разряженным (севшим) при вКлюченном АСС
float UaccONorOFF = 10.1; // напряжение порога сработки асс. Т.е. если на пин блока питания "вход АСС" подать ниже UaccONorOFF (11,1), то зажигание будет считаться выключенным.
//КОНЕЦ НАСТРОЙКИ Пороговых напряжений!!!!!!!!_________НАСТРОЙКИ Пороговых напряжений!!!!!!!!_________НАСТРОЙКИ Пороговых напряжений!!!!!!!!_________НАСТРОЙКИ Пороговых напряжений!!!!!!!!_________НАСТРОЙКИ Пороговых напряжений!!!!!!!!_________
/*счётчики времени*/
//НАСТРОЙКИ ТАЙМИНГОВ!!!______НАСТРОЙКИ ТАЙМИНГОВ!!!______НАСТРОЙКИ ТАЙМИНГОВ!!!______НАСТРОЙКИ ТАЙМИНГОВ!!!______НАСТРОЙКИ ТАЙМИНГОВ!!!______НАСТРОЙКИ ТАЙМИНГОВ!!! НАСТРОЙКИ ТАЙМИНГОВ!!! НАСТРОЙКИ ТАЙМИНГОВ!!! НАСТРОЙКИ ТАЙМИНГОВ!!! НАСТРОЙКИ ТАЙМИНГОВ!!!
unsigned long timeUntilBATOff = 345600000; // время до выключения питания на батарею планшета после выключения зажигания., считаем ОТ момента выключения зажигания. если прошло 48 часов, как выключили ACC // пауза (3600000 - 60мин) (60000 - 1 мин)(10800000=3ч) (1800000=5ч)
unsigned long timeUntilALLOff = 172800000 + timeUntilBATOff; // время до полного выключение блока, после выключения зажигания (ACC)и уже после того, как выключится питание на батарею планшета ) (2суток = 172800000)) (4суток = 345600000)
unsigned long timeBeforeRemOff = 1800000; // 1800000=30мин. Время, оставшееся до отключения выхода REM после включения зажигания и незаводки машины. ( то есть сколько времени будет включён усилитель звука, если заглушить машину и просто слушать музыку, при нормальном АКБ)
unsigned long timeAfterACC_starting = 7000; // не может быть меньше REM_timer_pri_vykl_ACC! //задержка перед началом процедуры выключения зажигания во время кручения стартером
unsigned long timeAfterACC_accOFF = 2000; // не может быть меньше REM_timer_pri_vykl_ACC! //задержка перед началом процедуры выключения зажигания во время обычного выключения зажигания
unsigned long timeWhileAkbLow = 40000; // 40000 время, через которое начнётся полное выключение блока когда напряжение на АКБ очень низкое. /* если севший аккумулятор //через 40с вЫключаем питание на батарею планшета и вырубаем сам БП.*/
unsigned long pauseTimeHALL = 140000; // Для первого включения планшета. Раньше этого времени экран не будет тухнуть! Время паузы перед морганием-тушением экрана (для датчика холла)(равен времени загрузки планшета плюс секунд 10-20)= 2мин
unsigned long vremia_obnovlenia_displeya = 250; // Время, через которое будет обновляться информация на дисплей I2C (время обновления I2C дисплея)
//тут настраиваем паузу при вКлючении зажигания ( АСС) и по истечении этого времени активируем/деактивируем
//соответствующий пин блока питания (время независимо друг от друга)
unsigned long PlanshBAT_timer_pri_vkl_ACC = 1100;// пауза после включения ACC перед включением питания на батарею планшета
unsigned long FIVE_Volt_OUT_na_POGO_or_USB_timer_pri_vkl_ACC = 1400;// пауза после включения ACC перед включением +5V (POGO(USB) выхода для пина зарядки планшета (+5В пого или ЮСБ)
unsigned long OTG_timer_pri_vkl_ACC = 50;// пауза после включения ACC перед включением минуса на OTG ( 4й контакт ЮСБ разъема на планшете) (включается определение ЮСБ периферии планшетом.)
unsigned long HUB_timer_pri_vkl_ACC = 2100;// пауза после включения ACC перед подачей питания на хаб. Значение должно быть больше либо равно FIVE_Volt_OUT_na_POGO_or_USB_timer_pri_vkl_ACC.
unsigned long REGISTRATOR_timer_pri_vkl_ACC = 2500;// пауза после включения ACC перед включением питания +12В на видеорегистратор
unsigned long REM_timer_pri_vkl_ACC = 2500;// пауза после включения ACC перед включением питания +12В на REM (включение усилителя звука)
unsigned long SLEEP_timer_pri_vkl_ACC = 3000; // пауза после включения ACC перед включением экрана планшета (масса на Датчик Холла)
unsigned long I_dva_C_szina_ON_time = 150; //Время, через которое I2C шина включится после вКлючения зажигания - начнётся передача по шине I2C.
//тут настраиваем паузу при вЫключении зажигания ( АСС) и по истечении этого времени активируем/деактивируем
//соответствующий пин блока питания (время независимо друг от друга)
unsigned long OTG_timer_pri_vykl_ACC = 2500; // пауза после вЫключения ACC перед вЫключением минуса на OTG ( 4й контакт ЮСБ разъема на планшете) (вЫключается определение ЮСБ периферии планшетом.)
unsigned long FIVE_Volt_OUT_na_POGO_or_USB_timer_pri_vykl_ACC = 5000; // пауза после вЫключения ACC перед вЫключением +5V (POGO(USB) выхода для пина зарядки планшета (+5В пого или ЮСБ)
unsigned long HUB_timer_pri_vykl_ACC = 5000; // пауза после вЫключения ACC перед убиранием питания с хаба. Значение должно быть меньше либо равно FIVE_Volt_OUT_na_POGO_or_USB_timer_pri_vykl_ACC.
unsigned long SLEEP_timer_pri_vykl_ACC = 0; // пауза после вЫключения ACC перед вЫключением экрана планшета (масса на Датчик Холла)
unsigned long REM_timer_pri_vykl_ACC = 1000;// не может быть больше timeAfterACC_accOFF и timeAfterACC_starting! Пауза после вЫключения ACC перед вЫключением питания +12В на REM (вЫключение усилителя звука), тут 1000 это на сколько раньше выключать выход REM перед остальными выключениями
unsigned long lcd_noBacklight_timer_pri_vykl_ACC = 17000; // 7000 пауза после вЫключения ACC перед убиранием подсветки I2C LSD дисплея (1602)
unsigned long I_dva_C_szina_OFF_time = lcd_noBacklight_timer_pri_vykl_ACC + 3000; //Время, которое I2C шина работает после вЫключения зажигания, потом - закончится передача по шине I2C.
unsigned long REGISTRATOR_timer_pri_vYkl_ACC = timeUntilALLOff; // пауза после вЫключения ACC перед вЫключением питания +12В на видеорегистратор // unsigned long REGISTRATOR_timer_pri_vYkl_ACC = 10000; = 10 секунд
unsigned long rezerv3 =0;
unsigned long rezerv4 =0;
float rezerv5 =0;
float rezerv6 =0;
float rezerv7 =00.00;
//конец настроек таймингов.__________________________________________________________________________________________
//К О Н Е Ц Н А С Т Р О Й К И П О Л Ь З О В А Т Е Л Я П О Д С В О И П О Т Р Е Б Н О С Т И
// К О Н Е Ц Н А С Т Р О Й К И П О Л Ь З О В А Т Е Л Я П О Д С В О И П О Т Р Е Б Н О С Т И
// К О Н Е Ц Н А С Т Р О Й К И П О Л Ь З О В А Т Е Л Я П О Д С В О И П О Т Р Е Б Н О С Т И
// К О Н Е Ц Н А С Т Р О Й К И П О Л Ь З О В А Т Е Л Я П О Д С В О И П О Т Р Е Б Н О С Т И
Цитата:
Требуется ли калибровка блока питания?
|
После сборки самостоятельно, в зависимости от точности ваших резисторов, погрешность измерений напряжений аккумулятора и плюса после замка зажигания может колебаться +- 0,2В.
Для того, чтобы не подбирать резисторы и не думать, как изменить программу управления (скетч) я добавил калибровку блока с записью в энергонезависимую память процессора (EEPROM). Память при обновлении прошивок не стирается.
Для калибровки нужно сделать
процедуру. ( на примере прапрадедушки БП5мини).
У тех, кто покупал у меня блоки питания, калибровка уже выполнена.
логика работы BP5mini
Полный алгоритм блока сложный, идёт проверка многих условий ( например выключили зажигание или просто стартуем, от
этого меняется скорость выключения планшета, чтобы при старте не моргал а при штатном выключении быстро тух экран,
перезарядка, начало зарядки генератора перед включением REM после заводки и многое другое - я постарался привести
состояние работы машины к логике работы современных автомобилей. ),
Поэтому полный принцип работы можно посмотреть в скетче.
Все тайминги меняются, порядок включения и выключения пинов тоже меняется. Просто правим скетч под себя (если
нужно).
-----------------=========ВКЛЮЧИЛИ ЗАЖИГАНИЕ=============----------------
Проверили напряжения. Если всё нормально, то примерный алгоритм такой:
Через 0,1с включаем самозапитку процессора
Через 1,1с включаем питание на батарею планшета.
Через 1,2с включаем +5V (POGO(USB) нужно для распознавания планшетом признака зарядки. (*можно не подключать, опционально)
Через 1,3с включаем минус на Y-OTG (включается определение перифирии планшетом).
Через 1,4с Включаем хаб = подаем минус на управляющий транзюк хаба, тот открывается и пускает +5В dc-dc (2вых)на хаб.
Через 1,7с включаем питание на видеорегистратор, выход REM.
Через 2,0с включаем экран.
То есть ПОЛНОЕ время включения 2 секунды.
-----------------=========ВЫКЛЮЧИЛИ ЗАЖИГАНИЕ=============----------------
выключаем усилитель звука (REM).
Через 1,0с тушим экран (если прошло 2 минуты с момента включения блока )
пауза 3с чтобы не 'пукал' усилитель при отключении звуковой карты
Через 3,0с вЫключаем минус на Y-OTG, ВЫключаем хаб
через 3,5с вЫключаем +5V зарядки.
Через 7,0с тушим подсветку LCD дисплея 1602 I2C ( *если установлен)
Через 2 суток вЫключаем питание на батарею планшета.
Через 4 суток выключаем питание на видеорегистратор, самозапитку процессора, при этом система ПОЛНОСТЬЮ обесточивается.
поведение встроенного светодиода:
низкое напряжение АКБ авто - коротко моргает
нормальное напряжение АКБ авто, ACC выключено. - быстро моргает
нормальное напряжение, включено ACC, рабочий режим. - медленно моргает
Логику работы почти полностью можно перенастроить под себя в скетче. Если вам не хватает какого-либо режима или поведения БП - пишем в личку или вотсапп, по возможности добавляю ваши пожелания в прошивку (скетч).
осциллограммы БП5mini на машине (видео)
температура mini360 при нагрузке планшетом
_________________________________________________
_________________________________________________
_________________________________________________
По изготовлению блока питания на заказ писать в личку.
Вопросы можно позадавать на вотсапп, вайбер +485семь3три978484.