Технический форум по робототехнике.
Vovan » 22 дек 2012, 13:43
elmot писал(а):за 30мкс клина моторов никто не умрет.
точно!

Мало того, наоборот в некоторых даже пром. автоматах умышленно это время имеет определенное значение, т.е. не меньше (чтобы исключить ложное срабатывание) и не больше чтобы не пожечь. А тут ваще и за 1сек ничего не будет плохого ИМХО

ЗЫ: ну дак и компаратор МК можно, не спорю... Просто у меня лично с компаратором программным при малой разнице напряжений чё-то какие заморочки были, возился-возился и не добился четкой работы, поэтому и ставлю его на второй план... А АЦП сразу заработал.
Jacksonn » 22 дек 2012, 16:37
Vovan, значит вы предлагаете сделать на АЦП? Честно говоря, лично я тоже больше к нему склоняюсь... Действительно ведь задержка пусть даже и в 1 секунду не будет влиять сильно влиять.
Скажите, пожалуйста, а какая будет схема подключения к выводу АЦП МК? Т.е. просто делитель напряжения на 2-х резисторах? Просто я иногда видел схемы подключения АЦП на операционных усилителях... Они в данном случае будут нужны?
Vovan » 22 дек 2012, 17:10
Да, просто делитель. Vcc - опорное напряжение (АЦП МК) +5в. Не знаю как на других языках, но на асм всё просто: в инициализации верхний или нижний предел задаем, разрешаем прерывания по АЦП + sei, иду в обработчик прерывания, где и гашу моторы...
Можно и в цикле, тогда просто сравнивать значение и если совпало - вырубать моторы...
А подключать просто, ОУ не нужно: прям к порту АЦП, только чтобы самое верхнее напряжение с делителя не превышало опорное. Т.е. с делителя должно идти напряжение <+5V...
Добавлено спустя 5 минут 23 секунды:
Если перепад напряжения 1в и больше (просто ИМХО с меньшими перепадами нет стабильности, но это чисто ИМХО), можно и с компаратором аналогично как описано выше - в прерывании. Напряжение тоже брать с делителя, только нужно еще выставить опорное.
dccharacter » 22 дек 2012, 17:13
может и не умрет - кто как основной цикл пишет. Можно и софтовый USB на Тиньке сделать. Только зачем, если аппаратка есть?
Jacksonn » 22 дек 2012, 17:36
Боюсь, что с аппаратным компаратором будут сложности ... Я почитал про него, оказывается, что в ATmega32 только 2 "компараторных" входа - "AIN+" и "AIN-".
А у меня же два двигателя, соответственно и два выхода, с которых нужно снимать показания напряжения. Получается, что для задействования встроенного в МК компаратора нужно чтобы было 4 входа компаратора. Чего нет, поэтому, как я понимаю, придётся искать другой выход. Поясните, пожалуйста, я прав или нет?
Vovan » 22 дек 2012, 17:57
Ну да, там только один компаратор, а соответственно и два входа у него. Если два мотора нужно опрашивать, то соответственно и два компаратора нужно, в таком случае наверное внешние решат проблему. Например LM339 - там в одном корпусе их аж четверо спряталось... В этом случае выходы компараторов вешать прям на порты МК сконфигурированные на вход. А еще круче если на порты внешних прерываний (если они свободны конечно).
Только их выходной сигнал должен укладываться в рамки ТТЛ.
Jacksonn » 22 дек 2012, 18:07
Ну а собственно, на чём же всё-таки лучше сделать? Т.к. встроенный в МК компаратор отпадает (из-за того, что нужно опрашивать 2 двигателя), то остаётся: либо АЦП, либо внешний компаратор...
Добавлено спустя 1 минуту 42 секунды:
По идее, и то и другое сделать несложно, но внешний компаратор, наверное нужно будет сложнее в настройке?..
Vovan » 22 дек 2012, 18:15
Ну я делал на АЦП. Вот на заре освоения МК, когда я кроме тини2313, в те времена, ни с чем больше просто не умел, я пристраивал компараторы, т.к. в тиньке ацп нет, а лишь 1 компаратор.
В принципе и с АЦП отстройка понадобится. Так что тут дело хозяйское.
У нас ведь как: хто посоветовал - тот и виноват

Jacksonn » 22 дек 2012, 18:40
Ну, наверное я тоже буду делать на АЦП. Заодно и получше его освою.
Скажите, а опорное напряжение для АЦП нужно делать +5V? Или лучше настроить на внутренний ИОН на +2,56V?
Vovan » 22 дек 2012, 18:59
По моему биты 7,6 регистра ADMUX задают опорное напряжение АЦП... Хотя всё равно лучше сверить с д\ш...
Jacksonn » 22 дек 2012, 19:26
Нет, я имел ввиду - опорным напряжением для АЦП сделать +5V со стабилизатора питания или на внутренний источник опорного напряжения (2,56V)? Есть вообще здесь в чём-то отличия?
Vovan » 22 дек 2012, 20:08
Сначала про отличия: в качестве опорного напряжения может быть выбран AVcc (напряжение источника питания), AREF или внутренний 2.56В источник опорного напряжения. А дальше смотрим д\ш с помощью каких битов региста ADMUX будет использоваться тот или иной ИОН.
Выбрать ИОН можно определившись с тем какая нужна точность. АЦП 10-битный? значит
ИОН.v\1023(т.е.2^10)=шаг.v. При Vcc=5в шаг 4,9мВ. ИМХО вполне достаточно для данной задачи

Jacksonn » 22 дек 2012, 20:35
Vovan, спасибо большое, теперь всё понятно!
Ещё один вопрос - при использовании в качестве ИОН внешний источник напряжения на +5V у МК ATmega32 обе ноги AVCC и AREF нужно вешать на +5V со стабилизатора питания? Ещё где-то читал, что при использовании АЦП рекомендуется эти ноги к питанию через индуктивность соединять, вроде как помех меньше будет...
Radist » 22 дек 2012, 21:23
обе ноги AVCC и AREF нужно вешать на +5V со стабилизатора питания?
Да. Дроссель с кондером рекомендуют в даташите, но работает и без дросселя. Кондер все-таки нужен. Можно дроссель заменить на маленький резистор. А вообще нужна правильная разводка. Сильно фильтровать опору надо при прецезионных измерениях, а это не ваш случай.
Vovan » 22 дек 2012, 22:00
Да просто (согласно д\ш)при ИОН на AVcc на AREF вешается внешний конденсатор. Индуктивность конечно не помешает. Ну и reset подтянуть не забыть...
Добавлено спустя 15 минут 26 секунд:О! Прочёл пост Radista - не соглашусь

AREF в данном случае вешать на +5в не рекомендуется. Собсно ничего опасного в этом нет, но лучше и правильнее при ИОН на AVcc, AREF просто через 0,1мкф на землю...
Добавлено спустя 16 минут 20 секунд:Эх, помню еще оказывается
Internal reference voltages of nominally 2.56V or AVCC are provided On-chip. The voltage
reference may be externally decoupled at the AREF pin by a capacitor for better
noise performance.
Хотя конечно не так уж и важно

Но! главное я не ошибся! И это радует
Гы-гы... Вот отложится что-то на "подсознательном уровне", а потом сам не знаешь: "откуда знаю? хз..."