roboforum.ru

Технический форум по робототехнике.

Управление двигателем от кулера

Re: Управление двигателем от кулера

ADonis » 25 ноя 2010, 09:28

Ясненько, спасибо, буду крутить дальше, где я напорол :)

Re: Управление двигателем от кулера

Myp » 25 ноя 2010, 09:43

ну явно МК считает грязные импульсы

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

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

Re: Управление двигателем от кулера

ADonis » 25 ноя 2010, 10:15

Чуть отвел в сторону фотодиод, снял показания со светодиода, вот такой сигнал поступает на вход МК, как его лучше "выправить" аппаратно?
Импульсы с тахометра3.JPG

Re: Управление двигателем от кулера

boez » 25 ноя 2010, 12:07

Да вроде нормальные импульсы. Попробуй вообще вместо кулера подключить к этому счетному входу выход ШИМ МК, настрой ШИМ на 50% и нужную частоту и тестируй (меняя частоту во всем диапазоне, ну и может еще заполнение в пределах 25-75%.

Re: Управление двигателем от кулера

ADonis » 25 ноя 2010, 12:08

Блин, вот я протупил, точно! :) Спасибо, можно ж так протестить! :)

Re: Управление двигателем от кулера

boez » 25 ноя 2010, 12:10

А, хотя там один фронт вроде как грязноватый. Попробуй RC-цепь перед входом поставить, R*C возьми скажем одну пятую минимального периода импульсов.

Re: Управление двигателем от кулера

ADonis » 25 ноя 2010, 12:12

Тока что перекинул на шим эту ногу, так и есть, гонит! Значит надо в прошивке что-то менять :)

Re: Управление двигателем от кулера

ADonis » 26 ноя 2010, 10:38

Начал проверять прошивку ШИМом, оказалось, что при частоте больше где-то 20 Гц, она начинала показывать всякую фигню. Проблема оказалась в выводе данных на экран (висело на том же таймере), вынес нафиг этот код наружу, заодно подравнял его кривость маленько, стало работать :) Только не совсем пойму, как там считаются "тики"... Сколько "тиков" один оборот. В даташите на FS276 не нашел, но это дело поправимое. По-моему, иногда не досчитывает все "тики", наверное, надо фильтровать входящий сигнал. Думаю, что смогу поправить.
Теперь буду думать, как рулить скоростью двигателя. Питание на саму FS276 нужно подавать постоянно, а вот на двигатель через ШИМ, верно же?
Но если повешать один КТ972А напрямую на двигатель, то он же не даст необходимый ток? Или лучше все вешать через драйвер? Стандартный L293 подойдет же?

Спасибо всем за ответы и советы! :)

Re: Управление двигателем от кулера

Myp » 26 ноя 2010, 11:14

прямо шим и подавать на эту FS276 через мосфет
так в компе работает.

Re: Управление двигателем от кулера

boez » 26 ноя 2010, 13:24

Ага, токо в компе при таком управлении показания частоты иногда "бесятся" - например мой кулер на оборотах от 1000 до 3000 имеет нормальные показания, а где-то в районе 900-1000 счетчик в чипсете вдруг "дуреет" и показывает цифры около 50000 об/мин. Где-то это было описано, что правильные показания во всем диапазоне имеют только четырехпроводные кулеры, у которых 12 вольт подаются постоянно, а ШИМ идет отдельным 4-м проводом. А вот как устроен 4-проводной кулер внутри - я не знаю...

Re: Управление двигателем от кулера

ADonis » 26 ноя 2010, 13:31

Ну, обороты двигателя держать надо в пределах 1200-2000 rpm. Вот полевик найти не могу, чтобы можно было его прям ногой МК открывать. Пока в наличии есть только 40N03P.

Добавлено спустя 3 минуты 24 секунды:
Нашел как делал rig: download/file.php?id=16017&mode=view
Как раз мой случай :)

Re: Управление двигателем от кулера

boez » 26 ноя 2010, 13:42

Да, и у тебя не получится открывать один полевик ногой МК, он же к +9 подключен. Нужно минимум два транзистора. "Нижний" - полевик n-канальный или биполярный npn маломощный. "Верхний" - собственно ключ, p-канальный полевик или pnp биполярный. Хотя можно и схему наподобие этой http://forum.ixbt.com/topic.cgi?id=30:19230:69 соорудить.

Re: Управление двигателем от кулера

ADonis » 26 ноя 2010, 13:47

а вот прочел, что irlml2502 можно ногой МК дергать.... или я туплю? не совсем понимаю пока как включается полевик в схему :)

Re: Управление двигателем от кулера

Myp » 26 ноя 2010, 16:03

все вопросы про полевики а так же как их дёргать есть в теме про то как работает транзистор :)
там аврчик даже картинки со стрелочками рисовал)
irl прекрасно управляются прямо ногой МК.

Re: Управление двигателем от кулера

ADonis » 01 дек 2010, 12:22

Собрал на IRL 2502, все работает офигенно :)
Правда схема сейчас на навесном держится и не соблюдены все сопротивления, как надо :oops: мое слабое место :)

Движок крутится, ничего не греется. Так же докрутил обратную связь, теперь ШИМ регулирует обороты. Красяво :)
Кстати, как правильно делать обратную связь? У меня работает по принципу:

С=(Qнорм - Qдвигателя)^2/10, где
C - малая ошибка
Qнорм - константа, нормальное количество оборотов, которое должно быть
Qдвигателя - количество оборотов полученное за единицу времени

Единицей времени считается 1/4 секунды
Потом эту малую ошибку прибавляю к регистру OCR1BL. Все вычисления производятся в обработчике прерывания. В коде выглядит вот так:
Код: Выделить всёРазвернуть
x=((RPS-ttcount)^2/10);//маленькая добавка
OCR1BL=OCR1BL+x;


cron
Rambler\'s Top100 Mail.ru counter