Технический форум по робототехнике.
Kanoka » 18 ноя 2005, 19:56
Как работает компаратор, и зачем он нужен?
Сергей » 18 ноя 2005, 23:50
Этож кажись и есть АЦП.. или я чтото путаю?
-= Александр =- » 19 ноя 2005, 00:10
Не, АЦП - оно сигнал в цифру конвертит, а компаратор - он два сигнала сравнивает и говорит какой больше. Компаратор работает быстрее.
Kanoka » 19 ноя 2005, 00:25
компаратор - он два сигнала сравнивает и говорит какой больше.
Уверен? Просто пропускает на выход тот сигнал который больше и все?
Kanoka » 19 ноя 2005, 01:55
Разобрался. Все оказались в чем то правы, компаратор - однобитный АЦП, сравнивающий входной сигнал с опорным и подающий на выход лог.1 если входной больше опорного, и лог.0 если меньше.
Очень полезная штуковина как оказалось.
Vovan » 05 апр 2006, 19:42
Суть проблемы: компаратор следит за напряжением батареи и когда оно достигнет нижнего предела даёт команду МК "начать зарядку батареи". По достижении верхнего предела напряжения, компаратор выдаёт команду МК "закончить зарядку".
И всё бы хорошо, если бы не включение-выключение двигателей (в моменты приближения напряжения к пиковым значениям), питаемых от этой же батареи. Двигателя дают большие скачки напряжения которые считываются МК (посредством компаратора) как ложные команды.
Встаёт вопрос - как избавиться от считывания скачков напряжения?
ЗЫ: установка дополительной емкости (порядка 10.000мкф) нЕсколько улучшает обстановку, но когда двигателя работают с сильной нагрузкой (едем в гору) - явление возобновляется, т.е. пока есть нагрузка - идёт команда "батарея разряжена", нагрузка закончилась - батарея в порядке...
___________
С уважением
Vovan
EdGull » 05 апр 2006, 19:54
мерить нужно АЦП и потом программно усреднять
Vovan » 05 апр 2006, 20:13
К сожалению не получится... У меня АЦП для других целей задействован, а за разрядкой следит отдельный (наружный).
___________
С уважением
Vovan
Vovan » 05 апр 2006, 22:37
Во! А куда предыдущее сообщение от Карлсона делось?
Ну всё равно на него отвечу.....
Ну а как это сделать в программе? АЦП МК занят (его нет), внешний компаратор (компараторы) они тока и могут что сказать: -Батарея села! или: -Батарея не села. Сделать дополнительно, образно говоря, датчик нагрузки? И уже совместно с ним принимать решение - заряжена или разряжена батарея... Однако во время нагрузки, типа, загрубить нижний порог - тоже чревато, а если батарея на самом деле села?
Тут что-то вертится в голове насчёт нескольких компараторов, но никак не разродИтся...
___________
С уважением
Vovan
Карлсон » 05 апр 2006, 22:44
Vovan
это называется самоцензура.
здешняя публика плохо реагирует на дурные мысли, вот и потер ту ахинею.
если я вас правильно понимаю, вы и мк и двигатели от одной батареи питаете, так?
тогда каким образом получается разность напряжений на компараторе, если опорный сигнал тоже проседает?
North » 06 апр 2006, 08:13
Следи за показаниями компаратора в течение некоторого периода времени. Если он стабильно показывает просевшее напряжение, то батарея садится, если оно возвращается к нормальному значению (двигатели всё-таки останавливаются иногда), значит ещё можно ездить.
Vovan » 06 апр 2006, 09:21
2 Карлсон:
вы и мк и двигатели от одной батареи питаете
этого я не говорил. Могу уточнить: МК у меня имеет автономное питание с автоматической подзарядкой от основной (тяговой) батареи. От МКовской батареи питаются и компараторы и дискретная логика аппарата - на ентот узел нареканий нет в нём таких сильных скачков, да и потребляет он "крохи", а заряжается очень редко. Тяговая батарея питает только двигатели с их драйверами, ну и ещё радиопередатчик (через стабилизатор на 6 v). Именно за ней и установлено вышеописанное наблюдение. Именно её состояние определяет дальнейшие действия механизма - работать или заряжаться.
ЗЫ: А насчёт "ахинеи" - Вы не правы - там тоже была вполне нормальная мысль, просто в моём варианте не получается
2 North:
Как вариант, вполне возможно, надо подумать. Однако, что-то склоняет меня в сторону схемотехнического решения. Но рассмотреть Ваше предложение, похоже, стОит.
___________
С уважением
Vovan
Vovan » 06 апр 2006, 11:49
Вот что придумал:
мерять напряжение в момент повышенной нагрузки - всегда приведёт к тому, что показания будут жутко искажены.
Следовательно: нужно мерять напряжение, в отсутствие нагрузки (остановив двигатели), через равные промежутки времени на "тестовом нагрузочном" резисторе! И только тогда можно с уверенностью сказать, что происходит с батареей!
Дополнительный расход энергии - считаю, что это можно перетерпеть, а вот периодически останавливать двигатели - хм... это хуже... но по-моему единственный, максимально-точный, вариант.
___________
С уважением
Vovan
-= Александр =- » 06 апр 2006, 16:45
Да что вы все извращаетесь?
Берем резистор на доли ома и включаем последовательно батарее. Так чтоб через него тек весь ток батареи. На его концы цепляем входы дифференциального АЦП. Если надо - через делители. Мерим напряжение на этом резисторе, по закону Ома находим на нем ток и интегрируем по времени. Зная емкость батареи легко предсказать ее расход задолго до того как она начнет подсаживаться. Так-же можно контролировать и заряд, вовремя отключаясь и избегая перезаряда.
Vovan » 06 апр 2006, 20:04
2-= Александр =-:
Вы предлагаете мерять напряжение на резисторе, по закону ома находить ток интегрируя показания по времени - это опять тоже самое: усреднённая величина, не иначе. Но ведь, по-моему тогда ещё нужно будет знать ёмкость батареи на данный момент, она ведь другой стала не такой как свежезаряженная, значит нужно ещё и дифференцировать ёмкость... Что-то тут, похоже, не туда едем...
А уж о точности и говорить не надо...
Да и програмно это вряд ли проще, чем: тормознул двигателя на доли секунды, просканировал выход внешнего компаратора и всё. Напоминаю - АЦП МК у меня занят! Не ставить же ещё один МК на законченную конструкцию ради АЦП.
___________
С уважением
Vovan