Запрошуємо, Гість
Ім'я користувача: Пароль: Запам’ятати мене
  • Сторінка:
  • 1
  • 2
  • 3

ТЕМА: Индикатор заряда 1S, 2S, 3S на ATtiny13

Индикатор заряда 1S, 2S, 3S на ATtiny13 28 січ. 2021 20:29 #1

  • demirov
  • demirov аватар
  • Оффлайн
  • I go sometimes
  • Дописи: 74
  • Подякували: 1
Уважаемый, Soir, прошу помощи в решении задачки.
ТЗ во вложении. Заранее благодарен.
Попередження: Спойлер! [ Натисніть, щоб розгорнути ]
Останнє редагування: 28 січ. 2021 21:05 від demirov.
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 28 січ. 2021 21:37 #2

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Должен сразу заметить, что МК умеет измерять только до 1000 единиц (если точно, то до 1023). Далее эти единицы можно переводить в любую шкалу. Например, 0-20V. Но такие величины, как 3,475 для него недоступны.
Чтобы использовать единый делитель, тогда шкала как раз и должна быть до 20V. В этом случае разрешающая способность измерения для всех режимов (3S, 2S, 1S) будет 0,02V.
Если делать разные делители, тогда для 3S остается шкала 20V, разрешающая способность 0,02V. Для 2S - 10V и 0,01V соответственно. И для 1S - 5V и 0,005V.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: demirov

Индикатор заряда 1S, 2S, 3S на ATtiny13 29 січ. 2021 08:07 #3

  • demirov
  • demirov аватар
  • Оффлайн
  • I go sometimes
  • Дописи: 74
  • Подякували: 1
Soir пише:
Чтобы использовать единый делитель, тогда шкала как раз и должна быть до 20V. В этом случае разрешающая способность измерения для всех режимов (3S, 2S, 1S) будет 0,02V.
Единый делитель и 0,02V меня вполне устраивает.
И раз шкала до 20V, то добавить и 4S.
Тогда выбор будет выглядеть так:
1S - мигает D1
2S - мигает D1, D2
3S - мигает D1, D2, D3
4S - горят D1, D2, D3
Уставки под спойлером
Попередження: Спойлер! [ Натисніть, щоб розгорнути ]
Останнє редагування: 29 січ. 2021 09:02 від demirov.
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 29 січ. 2021 17:03 #4

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Индикация напряжения мне кажется неудачная. Визуально вряд ли будет заметна разница между "Выше Umax" и "Umax". Точное попадание в Umax будет непостоянное, если будет вообще. Поэтому светодиоды будут всегда мигать и непонятно почему. Аналогично и для остальных порогов.
Также Вы не указали что же должно светиться в промежутках. Например, между Umax и Unom.

Здесь построение алгоритма должно быть следующее:
Выше либо равно Umax - индикация...
Ниже Umax но выше Umin - индикация...
Ниже либо равно Umin - индикация...
Число ступеней индикации может быть иное, но надеюсь принцип понятен.

P.S.
Опишите, каким образом должны устанавливаться пороги напряжений.
Фраза "Мигает D1 – устанавливаем Umin" - непонятна. Чем и как устанавливаем?
Останнє редагування: 29 січ. 2021 17:37 від Soir. Причина: Дополнение.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: demirov

Индикатор заряда 1S, 2S, 3S на ATtiny13 29 січ. 2021 20:56 #5

  • demirov
  • demirov аватар
  • Оффлайн
  • I go sometimes
  • Дописи: 74
  • Подякували: 1
Настройку уровней напряжения производим лабораторным БП, изменяя напряжение на входе:
Долгое нажатие кнопки S (более 5 сек) включает режим программирования:
Переключение режимов установки – короткими нажатиями кнопки S
Мигает D1 – устанавливаем Umin
Мигает D3 – устанавливаем Umax
Долгое нажатие кнопки S – сохраняет данные в EEPROM

Например, для 1S Umin=3,0V, Umax=4,1V

Попередження: Спойлер! [ Натисніть, щоб розгорнути ]
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 29 січ. 2021 22:02 #6

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Проект и прошивка в архиве. Там также два файла EEPROM с начальными настройками (bin и eep). Эти файлы по сути одно и то же и содержат настройки для указанных Вами порогов индикации при номиналах делителя из проекта. bin походит для симуляции в Proteus. Для прошивки можете брать любой. А можно и вообще не использовать...
Номиналы делителя можно точно не подбирать. Достаточно резисторов +-5%. Но при этом необходима калибровка по Вашему описанию.
Долучення:
Останнє редагування: 06 лют. 2021 19:58 від Soir. Причина: Обновление прошивки.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: demirov

Индикатор заряда 1S, 2S, 3S на ATtiny13 30 січ. 2021 10:12 #7

  • demirov
  • demirov аватар
  • Оффлайн
  • I go sometimes
  • Дописи: 74
  • Подякували: 1
С выбором количества аккумуляторов все в норме.
Не правильно отображается Umin - горит D3, а не D1.
Поясните пожалуйста процесс программирования Umin и Umax, если я правильно понял порядок такой:
1.Выставить на измерительном входе Umin
2.Зажать S на 5сек, пока не заморгает D1, отпустить S
3.Зажать S на 5сек, пока не потухнет D1 (Umin в EEPROM)
4.Выставить на измерительном входе Umax
5.Зажать S на 5сек, пока не заморгает D1, отпустить S
6.Кратко нажать S заморгает D3
7.Зажать S на 5сек, пока не потухнет D3 (Umax в EEPROM)

Если можно, то сделайте такой алгоритм, т.к. если Umin нужно уменьшить D1 мигает до входа в режим программирования и непонятно вошли в режим или нет:
1.Зажать S на 5сек, пока не заморгает D1, отпустить S
2.Выставить на измерительном входе Umin
3.Зажать S на 5сек, пока не потухнет D1 (Umin в EEPROM)
4.Зажать S на 5сек, пока не заморгает D1, отпустить S
5.Кратко нажать S заморгает D3
6.Выставить на измерительном входе Umax
7.Зажать S на 5сек, пока не потухнет D3 (Umax в EEPROM)

P.S. По ходу Umin записывается когда моргает D3, а Umax - D1, - нужно наоборот.
Останнє редагування: 30 січ. 2021 11:35 від demirov.
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 30 січ. 2021 13:00 #8

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Светодиоды поправил.
Поясните пожалуйста процесс программирования Umin и Umax, если я правильно понял порядок такой:
Нет, не такой. Делал согласно Вашему описанию.
Вход в настройки - длительное удержание кнопки (> 5сек). Мигает LED_3.
Выставить на входе в устройство минимальное напряжение.
Кратковременно нажать кнопку. Мигает LED_1.
Выставить на входе в устройство максимальное напряжение.
Нажать и удерживать кнопку (> 5сек). Устройство выйдет из режима программирования, настройки запишутся в память.

Но мое мнение - такая индикация не очень удобная. Было бы нагляднее применить разноцветные диоды. Например:
Максимум и выше- красный мигает;
От максимума до предмаксимума - красный светится;
От предмаксимума до предминимума - зеленый;
От предминимума до минимума - синий;
Минимум и ниже - мигает синий.
Аналогично и в режиме настройки. Здесь, чтобы отличить режим настройки от рабочего, можно вместе с мигающим красным (синим) включать и зеленый.
Останнє редагування: 30 січ. 2021 13:02 від Soir.
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 30 січ. 2021 13:22 #9

  • demirov
  • demirov аватар
  • Оффлайн
  • I go sometimes
  • Дописи: 74
  • Подякували: 1
Soir пише:
Вход в настройки - длительное удержание кнопки (> 5сек). Мигает LED_3.
В том то и дело, что при первом входе мигает LED_1 - и соответственно сюда пишем Umin.
В первой прошивке так и было, но данные неправильно писались Umin - LED3, а Umax - LED_1, а нужно наоборот Umin - LED1, а Umax - LED_3
Светодиоды на самом деле будут разноцветные.
По поводу индикации режима программирования Вы правы: лучше, если бы LED_2 горел во время программирования.
LED_1 - Umin
LED_2 - Unom
LED_3 - Umax
Останнє редагування: 30 січ. 2021 13:37 від demirov.
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 30 січ. 2021 14:28 #10

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Так что в итоге нужно изменить?
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 30 січ. 2021 14:44 #11

  • demirov
  • demirov аватар
  • Оффлайн
  • I go sometimes
  • Дописи: 74
  • Подякували: 1
Режим программирования: Umin - LED1, а Umax - LED_3 и добавить LED_2 - во время программирования горит.
Останнє редагування: 30 січ. 2021 14:46 від demirov.
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 30 січ. 2021 15:15 #12

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Обновил прошивку.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: demirov

Индикатор заряда 1S, 2S, 3S на ATtiny13 30 січ. 2021 15:41 #13

  • demirov
  • demirov аватар
  • Оффлайн
  • I go sometimes
  • Дописи: 74
  • Подякували: 1
Спасибо Вам, Soir, теперь в Proteus все работает как надо. Соберу в железе отпишусь.
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 01 лют. 2021 23:56 #14

  • saha742
  • saha742 аватар
  • Оффлайн
  • I'm here long time
  • Дописи: 113
  • Подякували: 1
А можно сделать что бы светодиод IED 1, когда напряжения опускается ниже запрограммированного порога не мигал постоянно а мигнул раз десять и потух. Какое будет потребление схемы в дежурном режиме не будет ли она разрежать аккумулятор.
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 02 лют. 2021 09:42 #15

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
saha742 пише:
мигнул раз десять и потух.
Тогда уже лучше бы сделать одно короткое мигание секунд через 5, но постоянно. Ведь можно же пропустить эти десять миганий и далее непонятно что с аккумулятором.
Останнє редагування: 02 лют. 2021 09:43 від Soir.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: demirov

Индикатор заряда 1S, 2S, 3S на ATtiny13 02 лют. 2021 10:46 #16

  • demirov
  • demirov аватар
  • Оффлайн
  • I go sometimes
  • Дописи: 74
  • Подякували: 1
Soir пише:
Тогда уже лучше бы сделать одно короткое мигание секунд через 5, но постоянно.
Абсолютно с Вами согласен.
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 02 лют. 2021 12:49 #17

  • men 62
  • men 62 аватар
  • Оффлайн
  • Користувач
  • Дописи: 17
  • Подякували: 6
  • sxem.org Sponsor 2020
Количество акумуляторов задает диапазон настройки порогов
Для 1S-3v...4.1v и тд
А если при задать пороги 1s-10v..12v как поведет себя индикация
Или я не правельно понимаю?
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 02 лют. 2021 13:22 #18

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Индикация по настройкам. Разделение по числу аккумуляторов условное - можно и для 1S настроить как для 4S. А для 4S, как для 1S.
То есть, по факту четыре профиля. Что внутри каждого профиля - задаете сами. Индикация будет работать по этим "внутренностям".
Единственное за чем нужно следить - чтобы соблюлась логика настройки и минимальное не было больше максимального.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: demirov, men 62

Индикатор заряда 1S, 2S, 3S на ATtiny13 02 лют. 2021 15:41 #19

  • demirov
  • demirov аватар
  • Оффлайн
  • I go sometimes
  • Дописи: 74
  • Подякували: 1
Soir пише:
Cделать одно короткое мигание секунд через 5, но постоянно.
Сделайте пожалуйста, так действительно будет меньше потребление.
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 02 лют. 2021 15:57 #20

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
Сделал. Каждые 5 сек включается на 0,5 сек.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: demirov

Индикатор заряда 1S, 2S, 3S на ATtiny13 04 лют. 2021 09:26 #21

  • demirov
  • demirov аватар
  • Оффлайн
  • I go sometimes
  • Дописи: 74
  • Подякували: 1
Собрал индикатор в железе, работает прекрасно. Появились вопросы:
1. В дежурном режиме потребление 6,8 миллиампер, а в режиме индикации разряда 9,8 мА - это не много? Может посоветуете что-то.
2. В режиме 1S, пропадает индикация из-за низкого напряжения на входе (менее 3,2В) - можно это как-то решить?
Схема по которой собран индикатор во вложении
Попередження: Спойлер! [ Натисніть, щоб розгорнути ]
Останнє редагування: 04 лют. 2021 09:36 від demirov.
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 04 лют. 2021 10:46 #22

  • men 62
  • men 62 аватар
  • Оффлайн
  • Користувач
  • Дописи: 17
  • Подякували: 6
  • sxem.org Sponsor 2020
6,8 миллиампер -это ток холостого потребления 7805
Надо пробовать LP2950-05
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: demirov

Индикатор заряда 1S, 2S, 3S на ATtiny13 04 лют. 2021 11:50 #23

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
demirov пише:
1. В дежурном режиме потребление 6,8 миллиампер, а в режиме индикации разряда 9,8 мА - это не много?
Сам микроконтроллер, помимо микросхемы стабилизатора, также потребляет несколько миллиампер. Путь уменьшения есть, но здесь это реализовать затруднительно. Уже недостаточно ресурсов МК. Поэтому, если это актуально, тогда или переходить на другой МК, или убрать из алгоритма универсальность (выбор числа аккумуляторов, упростить процедуру настройки порогов...). Тогда освободившейся памяти должно быть достаточно для уменьшения потребления МК до нескольких десятков микроампер. Кроме случаев индикации, конечно.

demirov пише:
2. В режиме 1S, пропадает индикация из-за низкого напряжения на входе (менее 3,2В) - можно это как-то решить?
Такое напряжение после стабилизатора +5V или до него? ATtiny13 сохраняют работоспособность до 2,7V. На практике, даже чуть ниже. Но если это такое напряжение до стабилизатора, то здесь также нужно задуматься о применении другого стабилизатора. Или (что было бы гораздо правильнее) отказаться от такой универсальности. Для одного аккумулятора можно вообще обойтись без стабилизатора.
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 04 лют. 2021 12:08 #24

  • demirov
  • demirov аватар
  • Оффлайн
  • I go sometimes
  • Дописи: 74
  • Подякували: 1
Про стабилизатор я понял, буду заказывать такой RT9058-50GV.
По поводу универсальности и хочется и колется.
Пока только одно предложение, если оно поможет освободить память МК:
Если процедуру настройки порогов убрать, но сделать возможным эти пороги заносить в EEPROM.
Останнє редагування: 04 лют. 2021 12:37 від demirov.
Увійдіть до облікового запису, щоб писати повідомлення.

Индикатор заряда 1S, 2S, 3S на ATtiny13 04 лют. 2021 12:20 #25

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 14111
  • Подякували: 5431
  • sxem.org 2019,2020,2021,2022,2023 Respect Author
demirov пише:
Если процедуру настройки порогов убрать, но сделать возможным эти пороги заносить в EEPROM.
Это уместно, если этот индикатор сегодня будет на одном числе аккумуляторов, завтра на другом. Да и то, проще изготовить два или три таких индикатора, каждый на свое число.
Пороги Вам будет сложно настраивать. Или методом многократных проб, перезаписывая каждый раз EEPROM, даже если в процессе эксплуатации захочется чуть подправить. Или подбирать точный входной делитель, тогда уже пороги можно будет вычислить. Но изменить, опять же, через перезапись.

Я бы посоветовал сделать наоборот. Выбор числа аккумуляторов сделать через EEPROM. А пороги уже оперативно, кнопкой. Только перенести эту процедуру на момент подачи питания (как сейчас выбор аккумулятора).

P.S.
По большому счету, тогда выбор аккумуляторов можно вообще исключить, как класс. МК все равно - как настроили пороги, так и будет работать. Но здесь конечно, Вы должны сами решать, исходя из применения данного индикатора.
Останнє редагування: 04 лют. 2021 12:23 від Soir. Причина: Дополнение.
Увійдіть до облікового запису, щоб писати повідомлення.
  • Сторінка:
  • 1
  • 2
  • 3
Модератори: Wolf, Vakula, Айнцвайдрайченко, Soir