[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
Есть дырка с задвижкой. На мотор 220 подаёшь - он задвижку медленно открывает/закрывает. Из дыры начинает сыпаться продукт и прям на тензодатчик. Нужно установить и поддерживать постоянный поток = постоянный сигнал с датчика.
Точность - лучше процента.
Всё кривое:
Зависимость потока от степени открытия сильно нелинейна.
Мотор отрабатывает с ошибкой +-20мс. (время полного открытия 6с).
Задержка 0.25 с - пока продукт летит от дыры до датчика.
Задержка 0.5 с - на фильтрацию сигнала.
Чтой-то он у меня работает только на маленьких потоках (но хорошо), а на больших - возбуждается (в режиме выхода на заданный поток). И что обидно - на симуляторе этого никак не удаётся получить. (В модель засунуты измеренные параметры железяки.)
Можно, конечно, методом грубой силы = подкрутил, подождал успокоения, померил, ещё чуть подкрутил. Но не эстетично.
Алгоритм сейчас такой (с частотой 2 Гц).
В течение 0.5 с накапливается сигнал с датчика.
Вычисляется относительная разница = (сигнал / уставка) - 1.
Из неё вычисляется длительность включения мотора с учётом кривизны дыры.
Если длительность меньше чем (например) 0.25 с, мотор не включается, а накапливается ошибка потока (интеграл) и там свой алгоритм (работающий гладко и на модели и на натуре).
Если длительность больше, то мотор включается.
В результате при изменении уставки на модели мотор жужжит непрерывно несколько секунд и поток устанавливается с точностью несколько процентов.
И вот на натуре эта сволочь пролетает слишком далеко и возбуждается, как будто перерегулировано.
Старческий маразм не даёт сообразить в чём дело, а она пользуется и пьёт кровь мешками, падла! "Нету вжызни щястя"
И, САМОЕ ГЛАВНОЕ, стиралка стоит недоделанная!
Может, я чего в упор не вижу?
Вот вспомнил умное слово - "адаптивное регулирование". Неужто придётся и это туды засовывать?!
Или уж не эстетствовать?...
E-mail: info@telesys.ru