Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650.
Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель.
Угу ... В первом варианте с транзистором бузер включается, но бузит постоянно, а не прерывисто.
Сделал так:
, жду .
Таймер отключения ставил 15*60*10, 5*60, чтобы не ждать по 40 минут его срабатывания и тестирования бузера. Но с 15*60*10, 5*60 таймер не сработал ни через 15 минут, ни через полчаса, оставил тот, который от разработчика - 40*60*10, 10*60.
По ходу, и в этом - оригинальном (авторском) варианте - аларм отключения срабатывает отнюдь не за 10, а минуты за 3-4 до отключения.
Добавлено after 1 hour 29 minutes 8 seconds: Поставил
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Баг. При нажатии любой кнопки индикатор мигать прекращает, но бузер начинает пищать постоянно. Код по умолчанию.
Так (код ниже) бузер отключается, но только кнопками [+] или [-], при нажатии кнопки [SET] индикатор мигать прекращает, но бузер начинает пищать постоянно.
Код:
void key_action(void){
if (Key) { //если экран мигает и нажата кнопка, то отменить таймер откл, и выйти из ф. без обработки кнопки TimeOff=0; if (Flag & MIGANIE) { if (Flag &= ~MIGANIE) { OFF(BUZZER); } Blank=0; Key=0; return; } }
_________________ ... ардубино и наебиэкспресс убивают творчество в зародыше.
- это было первое, что сделал, результат - постоянный писк бузера при нажатии любой кнопки для отмены аларма. Поэтому поставил проверку/условие, в этом случае кнопки [-] и [+] отключают и мигание, и бузер, а вот кнопка [SET] мигание отключает, но бузер включает на полную, при этом, бывает, также высвечивается EEP.
_________________ ... ардубино и наебиэкспресс убивают творчество в зародыше.
Последний раз редактировалось elektro.kot Пт июн 15, 2018 16:55:07, всего редактировалось 2 раз(а).
В функцию int main(void) , перед while(1) , поставь OFF(BUZZER); Эта часть кода отвечает за запуск регулятора после подачи питания. Если бузер сразу начнёт пищать, значит надо будет поменять пару настроек .
Перед while(1) оставил OFF(BUZZER);. Идем дальше...
В режиме аларма при нажатии любой кнопки мигание прекращается и бузер отключается. Если не нажимать кнопки, регулятор отключается (на индикаторе три прочерка - [---] ). Но при этом бузер начинает пищать непрерывно, что с OFF(BUZZER); перед while(1), что без него . При нажатии любой кнопки бузер отключается, на индикаторе три прочерка - [---], дальше можно управлять регулятором, как обычно - выбрать фиксированную настройку, перейти в настройки и т.д.
Конечно, постоянный писк бузера после отключения регулятора можно рассматривать как незапланированную фичу, типа, если в режиме аларма не была нажата любая кнопка, регулятор отключается и бузер начинате пищать постоянно, требуя от имени регулятора - "отключите меня от питания!!!" . Может, оно и полезно в плане общей безопасности. Но как-то неправильно .
Видимо, надо еще вставить OFF(BUZZER);, когда регулятор отключен, но где это в коде - не нашел.
Также при срабатывании аларма в режиме FI – фазоимпульсный в такт бузеру слегка мигает подключенная лампа накаливания.
Добавлено after 1 hour 49 minutes 7 seconds: Как бы вылечилось так:
Код:
//----------=----------.1-Sek--------------------------------------- if ( --Tim100msek==0 ) //0.1sek { Tim100msek=100; TimeState--; if (TimeState==0) { regim=0; OFF(BUZZER);//выключен } if (--ViewReg==0) Flag&=~VIEWREG; // ...
После выключения регулятора бузер выдает ~2-секундный непрерывный сигнал, умолкает и переходит в режим [---], это уже более-менее похоже на промышленный функционал . Возможно, достаточно поставить отключение бузера только при if (regim==0) {OFF(BUZZER);}, пока не проверял.
Оригинальный код:
_________________ ... ардубино и наебиэкспресс убивают творчество в зародыше.
// Отключение бузера вместе с питанием if (TimeOff>TIME_POWER_OFF){ PowerTmp=0; OFF(BUZZER); }
бузер не отключается. Этот код
Код:
if (TimeState==0) { regim=0; if (regim==0) { OFF(BUZZER);//выключен } }
работает аналогично коду
Код:
if (TimeState==0) { regim=0; OFF(BUZZER);//выключен }
В обоих (последних) случаях лампочка помигивает, бузер где-то посреди периода пикания на долю секунды запинается, а после выключения регулятора все так же выдает более длинный сигнал - все есть в ролике.
_________________ ... ардубино и наебиэкспресс убивают творчество в зародыше.
Два твоих варианта работают аналогично по одной простой причине: regim=0; - этой строчкой ты присваиваешь переменной regim значение 0. if (regim==0) - а здесь ты проверяешь равняется ли значение переменной regim нолю, и естественно оно равняется ведь мы его только что присвоили.
Можно попробовать потушить бузер в коде включения прочерков
Код:
if (PowerTmp==0){ led_buffer[0]=sD;//font[0]; led_buffer[1]=sD;//font[f_F]; led_buffer[2]=sD;//font[f_F]; OFF(BUZZER); }
Что касается лампочки. Могу предположить что происходит это из-за того что в режиме FI, в основном цикле, происходит постоянное вычисление с делением, а это ресурсоёмкая операция. Без бузера то-же лампа подмигивала?
Можно попробовать потушить бузер в коде включения прочерков
Ок, но в ролике явно видно и слышно, что бузер отключается после того, как прочерки уже включены. Т.е, сперва выключается регулятор (regim==0), включаются прочерки, бузер прекращает пищать прерывисто, и начинает гудеть постоянно, после чего срабатывает выключение бузера. Непонятно, почему такая большая задержка выключения бузера после срабатывания regim=0;.
Лампочка мигает только в режиме аларма.
Добавлено after 3 hours 29 minutes 22 seconds: С кодом
Код:
if (PowerTmp==0){ led_buffer[0]=sD;//font[0]; led_buffer[1]=sD;//font[f_F]; led_buffer[2]=sD;//font[f_F];] OFF(BUZZER); }
пищит постоянно, при нажатии кнопок [+][-] пищит, при нажатии кнопки фикс. настроек пищит, при появлении прочерков - в случае принудительного нажатия кнопок - пищать прекращает.
Как бы без замечаний работает код
Код:
if ( --Tim100msek==0 ) //0.1sek { OFF(BUZZER);//выключен Tim100msek=100; TimeState--; if (TimeState==0) regim=0; if (--ViewReg==0) Flag&=~VIEWREG; // ...
, что логично - отключение сигнала по окончании отсчета.
Лампочка в режиме аларма мигает как с подключенным (физически) бузером, так и без него (бузер не припаян). Хорошо бы найти, почему мигает лампочка?
_________________ ... ардубино и наебиэкспресс убивают творчество в зародыше.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения