Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
20.01.2008, 17:37
|
|
Прописка
Регистрация: 24.12.2006
Сообщений: 167
Сказал спасибо: 9
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Контроллер управляет собственным питанием
Кто-нибудь делал такое? В статье (на сайте Гаммы) есть вариант с использованием CLKOUT/OSC2, но он не очень подходит, по причине использования дополнительной кнопки. Хотелось бы задействовать штатную кнопку на одном из входов контроллера PIC12F629. Кнопка одним контактом подключена к "земле". Мне нужно свести к минимуму энергопотребление схемы. Емкость батарейки GP11A всего 48 мАЧ. Знаю, что будут предложения использовать режим Sleep. Раньше я так и делал, однако общее энергопотребление схемы все равно большое 7-8 мкА. Поясню почему: У PIC12Fxxx есть одна очень неприятная особенность. При снижении VDD ‹ 2v (что ес-но с батарейкой когда-нибудь произойдет), без использования BOD он входит в "кому", т.е сброса не происходит, RAM начинает затираться, а сам контроллер переходит на случайный адрес, со всеми вытекающими... Так как без внутреннего детектора питания контроллер в слипе потребляет ‹ 1 мкА, то кома будет продолжаться очень долго. Замена элемента питания ничего не дает - без BOD нет нормального сброса и опять на случайный адрес с комой. Выход из положения - включить BOD. Но в том-то и дело, что он потребляет около 100 мкА! Идеальным вариантом было бы использование дешевого внешнего детектора питания с низким энергопотреблением, типа Майкрочиповских ТС51- ТС52 1-2 мкА, но их даже в Гамме нет. Я использовал нашу серию КР1171. Кушает этот детектор 6-8 мкА (зависит от экземпляра), а это уже много. Короче, нужен или доступный для покупки детектор питания (SMD)‹5 мкА, или как-то питанием нуна управлять. Буду рад любому варианту.
|
|
|
|
20.01.2008, 22:17
|
|
Прописка
Регистрация: 01.11.2006
Сообщений: 199
Сказал спасибо: 0
Сказали Спасибо 15 раз(а) в 13 сообщении(ях)
|
Re: Контроллер управляет собственным питанием
Сообщение от FreeTramp
|
Буду рад любому варианту.
|
Как вариант:
использование компаратора в самом PIC для отслеживания
изменения напряжения
|
|
|
|
20.01.2008, 23:28
|
|
Прописка
Регистрация: 24.12.2006
Сообщений: 167
Сказал спасибо: 9
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Контроллер управляет собственным питанием
Сообщение от avgust75
|
Как вариант:
использование компаратора в самом PIC для отслеживания
изменения напряжения
|
Компаратор? Вы не поняли задачу. К тому же компаратор тоже кушать хочет.
|
|
|
|
21.01.2008, 02:22
|
|
Временная регистрация
Регистрация: 12.01.2008
Сообщений: 96
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Контроллер управляет собственным питанием
Сообщение от FreeTramp
|
Сообщение от avgust75
|
Как вариант:
использование компаратора в самом PIC для отслеживания
изменения напряжения
|
Компаратор? Вы не поняли задачу. К тому же компаратор тоже кушать хочет.
|
Имхо вы не поняли ответ.
Или мы и правда не поняли. Дык просветите! Что вообще выполняет МК?
Как я понимаю предлагалось переодически (изредка) проверять напряжение, в моменты пробуждения МК (по таймеру). Или он у вас должен будиццо только по кнопке?
|
|
|
|
21.01.2008, 03:04
|
|
Прописка
Регистрация: 24.12.2006
Сообщений: 167
Сказал спасибо: 9
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Контроллер управляет собственным питанием
Сообщение от MAXvaLL
|
Имхо вы не поняли ответ.
Или мы и правда не поняли. Дык просветите! Что вообще выполняет МК?
Как я понимаю предлагалось переодически (изредка) проверять напряжение, в моменты пробуждения МК (по таймеру). Или он у вас должен будиццо только по кнопке?
|
В основном он крепенько спит. Раз в сутки просыпается от кнопки, передает по радиоканалу команду и опять бай-бай. Ничего не измеряет. Это ленивка для выключения сигнала будильника. Так сказать, для дома-для семьи. Я когда-то делал уличные часы с таким ДУ. Не хотел я заморачиваться с готовыми кодерами, вот и сделал кодер на 12f629. Батарейки хватало на 8 месяцев. Сейчас хотелось бы продлить ей жизнь. Короче говоря, пока делать нечего я создал себе проблему ![Улыбка](images/smilies/icon_smile.gif) Если удастся решить задачу с энергопотреблением, то на будущее очень бы пригодилось.
|
|
|
|
21.01.2008, 04:07
|
|
Временная регистрация
Регистрация: 12.01.2008
Сообщений: 96
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Ну вот так например:
При каждом пробуждении сравнивать питание с порогом переключения режимов (выбираем сами), и если оно ниже порога - включаем режим защиты (BOD). Соотв-но повысится потребление, но еще поработаем немного.
В режиме BOD:
При критическом снижении напруги аппаратно поподаем в блок.
Если мы в защитном режиме, и при проверке напруга выше порога (сменили батарею) - переходим в эконом. режим.
Порог подбираем опытным путем. Естественно он должен быть выше порога BOD.
Для проверки напруги лучше (проще) использовать АЦП, т.к. просто менять значение порога. Но можно и компаратор, но тогда менять порог можно только хардварно (подстроечный резюк).
Плюсы:
1. Можно сделать все только на МК. (ацп или компаратор на борту)
2. Подавляющее время работаем в экономн. режиме.
3. Простота и адаптивность метода.
Проблема:
Если очень долго не будить девайс находящийся в эконом режиме. возможен исходный глюк, если за это время напруга упадет ниже критической.
Но если порог режимов берем с запасом, этим можно пренебречь, т.к. при низком потреблении в эконом режиме это должно занять ооочень много времени (дни, может месяцы), в зависимости от выбранного порога перекл. режимов.
Вроде должно работать.
ЗЫ Если кома все же сличится (что врятли), должна помочь кнопочка ручной перезагрузки, если пики так умеют.
ЗЫЗЫ Возможно сделать светодиодную индикацию - когда мы нажимаем кнопку (посылки), если мы находимся в защитном режиме и уже близко напряжение (меряем ацп, или 2ой компаратор) срабатывания БОД - помигать светотоидом.
|
|
|
|
21.01.2008, 11:35
|
|
Прописка
Регистрация: 28.12.2006
Сообщений: 277
Сказал спасибо: 25
Сказали Спасибо 20 раз(а) в 18 сообщении(ях)
|
Все правильно, используя слип режим с этим питанием и проверять собственным компаратором уровень напруги при активном режиме, а потом опять баю-бай. Для уменьшения тока, FreeTramp, могу посоветовать немного переделать схему просыпания МК. Кнопку цепляем не на GND а на +Vcc (хотя это уже как кому забажается) и коммутируем кондерчик небольшой емкости для создания импульса контролеру (схему думаю рисовать не надо). Это даст тоже экономию тока, хоть немного, но всетаки. И еще одно, MAXvaLL, применять светодиоды для индикации, это расточительная роскош, Вы ведь видите как автор печется о сохранности батарейки. Хотя и здесь есть вариант. Гляньте на свой системник, его часы идут по несколько лет, почему, да все просто, там часики тикаю от БП и малюсенькой батарейки. FreeTramp, вот и Вам могу предложить использовать маленькую примочку типа солнечного элемента от старого калькулятора. Пока Ваш пульт валяется на тумбочке и ждет милости быть взят в руки ![Смешно](images/smilies/icon_lol.gif) батарейка слабенько но уверенно заряжается, дешево и сердито! ![Улыбка](images/smilies/icon_smile.gif) Интересно былобы узнать на сколько лет хватит такой конструкции питания от одной батареи без замены.
Удачи.
|
|
|
|
21.01.2008, 17:16
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: Контроллер управляет собственным питанием
Сообщение от FreeTramp
|
... нужен или доступный для покупки детектор питания (SMD)‹5 мкА,
|
Смотри здесь. Поскольку на сайте АД параметрический поиск не учитывает ток потребления, придется действовать "по Коши"...
Сообщение от FreeTramp
|
...или как-то питанием нуна управлять.
|
А вот тут не понял - скажем, питание просело,... что должен с ним сделать м/к? ![Смешно](images/smilies/icon_lol.gif) Видимо, придется, как тут советовали, всякий раз, просыпаясь, шчупать питание и решать - слип/не слип.
|
|
|
|
21.01.2008, 18:37
|
|
Прописка
Регистрация: 24.12.2006
Сообщений: 167
Сказал спасибо: 9
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Сообщение от MAXvaLL
|
Ну вот так например:
При каждом пробуждении сравнивать питание с порогом переключения режимов (выбираем сами), и если оно ниже порога - включаем режим защиты (BOD). Соотв-но повысится потребление, но еще поработаем немного.
|
Вы наверное не работали с Пиками. Режим BOD нельзя изменить после программирования. Он может быть включен, или выключен только при программировании контроллера, записью соответствующего значения в биты конфигурации.
Сообщение от MAXvaLL
|
В режиме BOD:
При критическом снижении напруги аппаратно поподаем в блок.
|
Аппаратно можно подать импульс сброса, удерживающий проц в ресете, только с внешнего детектора питания.
Я в первом посте спрашивал, кто знает такой детектор с потреблением ‹5 мкА в SMD исполнении и доступный для покупки. Это бы сняло все проблемы и не надо было бы ничего придумывать (измерения и пр.)
Сообщение от MAXvaLL
|
Проблема:
Если очень долго не будить девайс находящийся в эконом режиме. возможен исходный глюк, если за это время напруга упадет ниже критической.
|
Наконец-то!!! Это именно та проблема. Нужно удерживать проц в ресете, если напряжение питания снизится до 2,5в, причем сам внешний детектор должен потреблять ‹5 мкА. Второй вариант - это контроллер сам себе обрубает питание (вместо Sleep) с помощью внешней, не сложной схемы.
Сообщение от MAXvaLL
|
ЗЫ Если кома все же сличится (что врятли), должна помочь кнопочка ручной перезагрузки, если пики так умеют..
|
Вы наверное вообще не читали первый пост. Я там говорил, что на сайте Гаммы есть статья,
http://www.gamma.spb.ru/articles.php?i=26
где есть вариант автоматического выключения питания, но там нужна дополнительная кнопка. Это мне не подходит. Ресетиться Пики от кнопки могут, если конечно напряжение питания не ниже допустимого рабочего. Ресет от кнопки не поможет ни одному процу, если нет нормального питания, т.к. сам проц не сможет там находиться если кнопку отпустить. Он будет стараться выполнить программу даже с низким питанием, что приведет, к вышесказанному глюку. Да что это я Вам курсы читаю! Вы сами это хорошо должны знать.
Сообщение от MAXvaLL
|
ЗЫЗЫ Возможно сделать светодиодную индикацию...
|
Без коментариев - нет слов.
|
|
|
|
21.01.2008, 19:09
|
|
Прописка
Регистрация: 24.12.2006
Сообщений: 167
Сказал спасибо: 9
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Контроллер управляет собственным питанием
Сообщение от tempora
|
Сообщение от FreeTramp
|
...или как-то питанием нуна управлять.
|
А вот тут не понял - скажем, питание просело,... что должен с ним сделать м/к? Видимо, придется, как тут советовали, всякий раз, просыпаясь, шчупать питание и решать - слип/не слип.
|
Да не надо ничего измерять! Контроллер должен отработать по программе и своим лог. уровнем выключить внешний ключ, коммутирующий VDD или VSS, т.е обрубить себе питание. Открываться ключ должен от штатной кнопки, которая сидит на одном из входов и "земле". Тогда мне пофиг сколько жрет BOD, все равно питание отключается. Тем более, что BOD надо обязательно включать, внешний он или внутренний. В состоянии ресета порты Пика настраиваются на вход и по умолчанию включается подтяжка, как и у любого другого контроллера. Получается что, если ключ закрывать лог.1, то... хотя не знаю что будет, ключ наверное не закроется. Относительно + батареи, напряжение лог.1 будет всегда меньше. Вот тут есть вариант http://www.gamma.spb.ru/articles.php?i=26
Нет только номиналов.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 03:01.
|
|