На диод поставил 330 Ом, на Транзистор в коллектор 10 кОм. При прохождении линии с чёрной на белую чётко выдаёт лог уровень.
Сделал колёсико с шагом полос 10 градусов.
Колесо энкодера закрепил после редуктора, до колеса 3-4 мм расстояние.
Программа считает изменение лога на ноге МК с 1 на 0 и увеличивает временную переменную. По таймеру идёт прерывание и каждые 0.125 сек. число переписывается из временной переменной в переменную скорости.
В итоге максимальная скорость выдаётся у меня 8 на 12В от стеклоочистителей.
Вопрос конечно в повышении разрешения ПИД регулятора, как ?
Зарегистрирован: 06 ноя 2005, 04:18 Сообщения: 14195 Откуда: Москва
RoboTok писал(а):
Вопрос конечно в повышении разрешения ПИД регулятора, как ?
Возьмите исходник ПИД ( для AVR есть на страничке http://avr123.nm.ru/01.htm в программах к рассмотриваемой плате, а для PIC в апноуте AN696 - он есть и в примерах в PROTEUS) и установите нужное вам разрешение.
Сделал счёт на перепадах с белого на чёрное и наоборот и разрешение повысилось в 2 раза. Увеличил время отчёта до 0.250 сек и ещё в 2 раза. Итого при максимальной скорости сейчас выдаёт 32.
Сейчас думаю мерить время между сменой лога, брать среднее между 2 отчётами.
Написал программу следящую за скоростью и изменяющая ШИМ для удержания заданной скорости.
Датчик скорости обновляется за 0.250 сек. В итоге, если я ставлю слежение с интервалом частым, например 0.5мс, то двигатель дёргается сильно. Чем больше интервал, тем меньше дёргается двигатель, но разгоняется очень долго и реакция на нагрузку долгая.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения