Перейти к содержанию

Измерение Сигнала 8-14в На Atmega16


-=gga=-

Рекомендуемые сообщения

Собственно нужно контролировать напряжение АКБ 12В 7А/Ч (именно контролировать а не заряжать т.к. АКБ будет заряжаться в буферном режиме). При снижении напряжения АКБ ниже 12В нужно отправить смску о состоянии системы. Если напряжение снизилось ниже 10В то нужно отправить смску о критическом состоянии системы. Ну и может ещё если снизится ниже 8В то о супер критическом состоянии АКБ :) . Я буду использовать таймер, таймером буду считать примерно 20 минут, и каждые 20 минут буду отрываться от контроля шлейфов и проверять состояние АКБ. Т.к. во время проверки и отправки смс у меня не будут контролироваться штлейфы, то надо делать максимальнно быстрый контроль АКБ.

Я думал подключить ножки AREF и AVCC к 5 В и к ножке ADC0 подключить АКБ, через резистор и АКБ. Но тогда вряд ли я смогу без всяких лишних преобразований измерить напряжение АКБ. По сути мне нужен многоуровневый компаратор, т.к. меня интересует не напряжение, а то в какую сторону от номинала оно находится. Но применять компаратор (встроенный или внешний) я не хочу...

Что посоветуете по подключению АКБ к МК и измерению конкретного результата ?

ЗЫ У меня контроллер Atmega16 в ДИП порпусе, у него нету некоторых функций АЦП

Я был механик, я есть механик, я буду механик

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

Вот не очень красивый вариант, зато без АЦП. Главное правильно рассчитать делители напряжения.

Но все-же лучше АЦП

post-57478-1238234446_thumb.jpg

Изменено пользователем rtfcnf

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

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

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

В принципе понятно, но в таком варианте лучше использовать компаратор, т.к. при напряжениях близких к переходному, может произойти ложное срабатывание. Что не есть хорошо. а компаратор обеспечит чёткое срабатывание. Но я хочу именно с АЦП, что бы всё делалось в МК и обвеска была минимальной.

Я был механик, я есть механик, я буду механик

Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

А что, АЦП будет полчаса выполнятся? Не в ту сторону копаете. По сравнению с отправкой смс (что вряд-ли можно "убыстрить"), АЦП выполнится практически мгновенно (тем более, если нужны только пределы напряжения, можно частоту преобразования повыше задрать). Так что и смысла я не вижу в пляске с бубном вокруг компараторов...

Любой, заслуживающий внимания, опыт приобретается себе в убыток...

Ссылка на комментарий
Поделиться на другие сайты

В принципе да, по очень грубым оценкам вся процедура проверки и отправки смс (если нужно) не должна превысить секунду. Что в принципе приемлемо.

Осталось только подключить АКБ к МК и обработать полученную информацию. Вот по этой теме я много рылся и так ничего того, что мне бы помогло не нашёл... Может вы что-нибудь подскажите ? :)

Я был механик, я есть механик, я буду механик

Ссылка на комментарий
Поделиться на другие сайты

Наверху я фигню, какую то не рабочую нарисовал, замучаешься настраивать.

Минимальная обвеска?

Один делитель из двух резисторов на вход и ИОН на 5 Вольт

Меньше ни кА.

Привожу пример много уровневого программно управляемого компаратора. Верней программное управление напряжением на одном из входов компаратора.

post-57478-1238235996_thumb.jpg

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

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

Ссылка на комментарий
Поделиться на другие сайты

Если на смс-ку почти секунду надо, работайте с АЦП и не мучайтесь...

rtfcnf, а как в этой случае ДВА порога контролировать (один понятно) - пока не соображу - ведь если напряжение акб в норме, в одном из пределов компаратор сработает?

Любой, заслуживающий внимания, опыт приобретается себе в убыток...

Ссылка на комментарий
Поделиться на другие сайты

Если на смс-ку почти секунду надо, работайте с АЦП и не мучайтесь...

rtfcnf, а как в этой случае ДВА порога контролировать (один понятно) - пока не соображу - ведь если напряжение акб в норме, в одном из пределов компаратор сработает?

Далем напряжение с аккумулятора в 2.5 раза и подаем его на AIN0 на входе AIN1 мы путем подключения резисторов к 5В через порты микроконтроллера можем менять порог компаратора. Программа постоянно перебирает напряжение и анализирует срабатывание компаратора.

Использовал несколько раз данный вариант. В тех МК не было АЦП :D

Изменено пользователем rtfcnf

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

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

Ссылка на комментарий
Поделиться на другие сайты

Не совсем понятно, вот мои рассуждения:

Пусть после нормирования на AIN0 нормальные пределы 3-4 В (условно)

Допустим на AIN0 3.5В. Проверка нижнего предела: на AIN1 выставляем ЦАПом 2.9В. Компаратор не срабатывает (условие AIN1>AIN0 не выполняется). Выставляем 4.1В - компаратор сработает (хотя акб в норме). Т.е. для подобной проверки (по мин. и по макс.) вроде как нужно для проверки верхнего и нижнего порогов опорное напряжение (с резисторного ЦАПа) компаратора менять между AIN0 и AIN1 (чтобы ДВУХУРОВНЕВЫЙ компаратор соорудить)...

Любой, заслуживающий внимания, опыт приобретается себе в убыток...

Ссылка на комментарий
Поделиться на другие сайты

Извеняюсь. Да входы я подключил на оборот.

Вход с аккумулятора надо подключить к AIN1

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

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

Ссылка на комментарий
Поделиться на другие сайты

Я чето вообще не понял сентенций о СКОРОСТИ преобразования в АЦП... Какая разница какая там скорость? Ткнули пуск преобразования и продолжаем опросы или чего там еще... Будут данные готовы - увидим в обработчике. Тут же ОДИН порог обработали (зачем два, если АКБ садится очень медленно, а порог может быть плавающим) флажок если нужно поставили и свалили из обработчика...

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

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

my504, это все понятно. Просто речь уже немного о другом (в духе уточнения) - о схеме с внутренним компаратором, опорное которого задается резисторным ЦАПом...

Изменено пользователем Goodefine

Любой, заслуживающий внимания, опыт приобретается себе в убыток...

Ссылка на комментарий
Поделиться на другие сайты

Я чето вообще не понял сентенций о СКОРОСТИ преобразования в АЦП...

Про скорость мы даже и не зарекаемся :D нам не до этого :D:D

Мы контролируем диапазоны

Больше четырех

Больше трех, но меньше четырех

Меньше трех

Алгоритм

Шаг1

Выставили напряжение 4.1 В если компаратор сработал больше четырех

Проверяем только его пока не перестанет срабатывать.

Если не сработал

Шаг два

Выставили напряжение 3.1 В если сработал, напряжение Больше трех, но меньше четырех

Возвращаемся к шаг1

Если не сработал

Напряжение меньше трех

Возвращаемся к шаг1

Немного утрировано извеняйте

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

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

Ссылка на комментарий
Поделиться на другие сайты

Вообщето я предпологаю такой алгоритм.

Прерывание которое происходит каждые 20 минут

{

Сделали АЦП преобразование и поместили результат в переменную volt;

if(volt<=12)

{

if(volt<=10)

{

if(volt<=8)

{

отпраить смс о крит. сост. АКБ

}

отправить смс о плохом состоянии АКБ

}

отправить смс о напряжении акб в 12В

}

}

В принципе условия могут отличаться, то есть цифры 10, 12, 8, могут быть другими, если АЦП будет выдавать не то, что есть на самом деле.

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

Я был механик, я есть механик, я буду механик

Ссылка на комментарий
Поделиться на другие сайты

Если смотреть по СРАБАТЫВАНИЮ, то да. Меня просто смущает, что в момент перестановки в 3,1В, компаратор успеет сработать при напряжении от акб меньше этого порога (быстрый он) - надо внимательно делать перестройку опорного... А так похоже должно работать..

Любой, заслуживающий внимания, опыт приобретается себе в убыток...

Ссылка на комментарий
Поделиться на другие сайты

А разве в Меге нет внутренней программируемой опоры на компаратор?
Если смотреть по СРАБАТЫВАНИЮ, то да. Меня просто смущает, что в момент перестановки в 3,1В, компаратор успеет сработать при напряжении от акб меньше этого порога (быстрый он) - надо внимательно делать перестройку опорного... А так похоже должно работать..

Полностью согласеню. Я после перестройки делал паузу, а затем еще десятикратную выборку анализировал

Вообщето я предпологаю такой алгоритм.

Прерывание которое происходит каждые 20 минут

{

Сделали АЦП преобразование и поместили результат в переменную volt;

if(volt<=12)

{

if(volt<=10)

{

if(volt<=8)

{

отпраить смс о крит. сост. АКБ

}

отправить смс о плохом состоянии АКБ

}

отправить смс о напряжении акб в 12В

}

}

В принципе условия могут отличаться, то есть цифры 10, 12, 8, могут быть другими, если АЦП будет выдавать не то, что есть на самом деле.

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

if(volt <= 12)
{
  if(volt <= 10)
{
 if(volt <= 8)
  {
	пипец машине
  }
  else
   {
	 меньше 10;
   }
}
else
{
  меньше 12;
}
}
else
 {
всё OK;
 }

для более понятливости, оптимизировать и убрать лишнии else можно потом

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

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

Ссылка на комментарий
Поделиться на другие сайты

Ну алгоритм понятен, вот как его реализовать то, программная и железная части интересуют. :)

Я был механик, я есть механик, я буду механик

Ссылка на комментарий
Поделиться на другие сайты

Ну алгоритм понятен, вот как его реализовать то, программная и железная части интересуют. :)

Ну, это как там. Мы же теоретики. :D:D:D:D:D:D

без шуток если как СМС передавать планируете?

Изменено пользователем rtfcnf

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

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

Ссылка на комментарий
Поделиться на другие сайты

Вот мой преподаватель по мат. анализу тоже говорил что теоретик, но потом понял, что если он посчитает интеграл аналитическим путём и он будет равен 3*пи*х можно сказать что он ничего не посчитал. Т.к. число пи тоже не "точное" и тем самым он не дал точного результата. Да и вообще в нашем мире нету ничего точного :)

Так что пора с теории переходить на практику, т.е. в наш мир :)

Для начала, какой будем применять делитель ? Первое что приходит в голову, так это резисторный делитель. Какие коментарии на счёт него ?

Смс буду передавать из памяти телефона, на тот номер, на который оно было отправлено. Это не долго, всего одна команда и всё. Правда какая именно я пока не знаю. Но знаю что там можно. До этого тоже дело дойдёт :)

Я был механик, я есть механик, я буду механик

Ссылка на комментарий
Поделиться на другие сайты

Для начала, какой будем применять делитель ? Первое что приходит в голову, так это резисторный делитель. Какие коментарии на счёт него ?

Его родимый и будем

U=13В(R1/(R1+R2))

R1 это к АКБ R2 на землю

Извеняюсь присоединюсь поже, дела однако

Изменено пользователем rtfcnf

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

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

Ссылка на комментарий
Поделиться на другие сайты

Ну наверное надо брать вот так Uвых=Uакб*0,328571428571429 этот коэффициент будет даваться резисторным делителем. Зависимость будет линейная, и в МК мы получим напряжение меньше напряжения акб ровно в 1/

0,32857=3,04347826086957 раза. Следовательно умножив полученное в МК напряжение на коэф. 3 мы получим напряжение АКБ. Я правильно понял ?

Я был механик, я есть механик, я буду механик

Ссылка на комментарий
Поделиться на другие сайты

Что-то мне подсказывает, что ты получишь Hex-результат преобразования, зависящий от разрядности АЦП (какой режим выберешь) и положения измеряемого напряжения в диапазоне от 0 до Uоп.* на 2 в степени числа разрядов преобразования. Где-то так. Этот результат будет далек от десятичного значения в вольтах.

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

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

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

Начни с минимума:

меньше 8 - смс - выход.

больше - следующий щаг.

меньше 10 - смс - выход.

больше - смс о состоянии системы - выход

ну и сам выход.

Примерно так. 

Ссылка на комментарий
Поделиться на другие сайты

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

Полностью согласен. Да еще в восьмибитный режим АЦП перевести (не помню правда у AVR это можно), что бы совсем не париться. Да и с ИОН как Вы хотите сделать 10 бит всёравно не получить

Это сообщение поставляется "как есть", без каких либо гарантий. Автор сообщения не несёт какой либо ответственности

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

Ссылка на комментарий
Поделиться на другие сайты

Можно выровнять результат влево (по умолчанию выравнивается вправо) и использовать только старший байт (ADCH). В ADCL останутся два младших бита, которые "погоды не сделают", если не измерять с максимальной точностью до нескольких милливольт. Для АКБ это не нужно, как мне кажется.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...