10.03.2018, 11:26
|
|
Временная регистрация
Регистрация: 19.03.2006
Сообщений: 63
Сказал спасибо: 1
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Алгоритм позиционирования, нужны советы
Коллеги помогите с решением. Алгоритм нужен.
Позиционированием первый раз занялся.
Вообщем есть stm32f4discovery. К ней подключен привод, которому могу говорить вперед-назад-стоп. Сейчас привод построен на электромагните с сердечником из постоянного магнита, его управляю шимом. Ездит в зад и вперед. В конечном устройстве это будет пневмоцилиндр с клапаном, клапан понимает шим.
Привод сейчас соединен с кареткой. На каретке установлен энкодер инкриментальный. Энкодер подключен к discovery. При движении вперед назад позиция по энкодеру от 0 до 800 изменяется.
Поигрался этим всем. Сейчас надо написать софт. По RS485 будет отдаваться нужная позиция и надо максимально быстро на нее вставать.
Привод будет управлять дозатором жидкости. Управлять надо максимально быстро.
Первый вопрос.
При включении устройства надо отъехать в позицию 0 назад до упора и обнулить позицию энкодера в мозгах. С этим разбрался. Включаю шим на 50% назад, жду 1500 мс и считаю что каретка приехала в ноль. Может так не правильно ? Нужен совет.
Второй вопрос.
При включении устройства надо выяснить при какой минимальный шим нужен, чтобы каретка сдвинулась. Тут предпологаю надо с минимальным шимом пытаться двигать, пока по энкодеру не словлю прерывание. Верно ?
Задача в глобальном масштабе такая. Надо с максимальной скоростью двигать кареткой в нужную позицию, но не перелетать эту позицию. Останавливаться в ней и держать ее, ожидая следующей команды. Подскажите подход к решению. Пид использовать ?
|
|
|
|
10.03.2018, 17:59
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 8,003
Сказал спасибо: 0
Сказали Спасибо 4,946 раз(а) в 2,374 сообщении(ях)
|
Re: Алгоритм позиционирования, нужны советы
Сообщение от xoxa
|
На каретке установлен энкодер инкриментальный. Энкодер подключен к discovery. При движении вперед назад позиция по энкодеру от 0 до 800 изменяется
|
Сообщение от xoxa
|
Включаю шим на 50% назад, жду 1500 мс и считаю что каретка приехала в ноль
|
нахрена ждать, если есть энкодер?
Сообщение от xoxa
|
Надо с максимальной скоростью двигать кареткой в нужную позицию
|
принцип "разгон-движение-торможение" известен? графически - трапеция. практически определить максимальную скорость перемещения без потери управления, от нее и плясать. определить максимально возможное время разгона и торможения. зная наклон прямых, вычислять пропорциональный разгон-движение-торможение в зависимости от заданного пути, возможно с пропорциональным снижением макс. скорости
|
|
|
|
10.03.2018, 18:42
|
|
Прописка
Регистрация: 14.12.2006
Адрес: Ставрополь - Донское
Сообщений: 256
Сказал спасибо: 113
Сказали Спасибо 187 раз(а) в 77 сообщении(ях)
|
Re: Алгоритм позиционирования, нужны советы
для инерционных систем ПИД-регулирование
самое оптимальное.
коэффициенты правда надо подбирать.
есть и алгоритм ПИД-регулировки с автокоррекцией/самонастройкой,
но там черт ноги сломает. и я сломал.
в качестве примера: терморегуляторы "Овен.
|
|
|
|
10.03.2018, 19:56
|
|
Гражданин KAZUS.RU
Регистрация: 16.06.2005
Сообщений: 945
Сказал спасибо: 25
Сказали Спасибо 175 раз(а) в 124 сообщении(ях)
|
Re: Алгоритм позиционирования, нужны советы
Сообщение от xoxa
|
Включаю шим на 50% назад, жду 1500 мс и считаю что каретка приехала в ноль. Может так не правильно ?
|
Совершенно не правильно только по времени. Нужны концевые датчики на крайних положениях. А если сработки концевика нет в течении определённого, так сказать, предельно допустимого времени, останавливать всё и выдавать аварию.
Сообщение от jump
|
нахрена ждать, если есть энкодер?
|
Сразу видно, что нет опыта в управлении приводАми. А кто сказал, что он даёт верные показания? Что если было проскальзывание или залипание энкодера?
|
|
|
Сказали "Спасибо" Someone
|
|
|
10.03.2018, 20:22
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 8,003
Сказал спасибо: 0
Сказали Спасибо 4,946 раз(а) в 2,374 сообщении(ях)
|
Re: Алгоритм позиционирования, нужны советы
Сообщение от Someone
|
Сразу видно, что нет опыта в управлении приводАми
|
12 лет с ними, гадами, воевал - от ШД до серво.
Сообщение от Someone
|
кто сказал, что он даёт верные показания? Что если было проскальзывание или залипание энкодера?
|
нафига такой энкодер нужен, если залипает? мы же говорим о заведомо исправной, безошибочно работающей системе? ошибки надо рассматривать отдельно
Сообщение от Someone
|
не правильно только по времени. Нужны концевые датчики на крайних положениях
|
вашими ж словами - а если концевые датчики залипли и дают сразу привязку - что дальше? практически с этим сталкивался, опыт работы с ЧПУ большой
|
|
|
|
10.03.2018, 23:07
|
|
Гражданин KAZUS.RU
Регистрация: 16.06.2005
Сообщений: 945
Сказал спасибо: 25
Сказали Спасибо 175 раз(а) в 124 сообщении(ях)
|
Re: Алгоритм позиционирования, нужны советы
Сообщение от jump
|
12 лет с ними, гадами, воевал - от ШД до серво.
|
Эксплуатация или разработка?
Сообщение от jump
|
мы же говорим о заведомо исправной, безошибочно работающей системе? ошибки надо рассматривать отдельно
|
Ошибки не надо рассматривать, их надо предусмотреть, и прописать реакцию на них. "Идеальная" система конечно хороша, но только не в реальной жизни. В реале, любая система достаточно быстро под воздействием внешних факторов уходит от идеального состояния.
Сообщение от jump
|
а если концевые датчики залипли и дают сразу привязку - что дальше? практически с этим сталкивался, опыт работы с ЧПУ большой
|
Естественно сообщение о неисправности, предположительно концевого датчика . Энкодер-то крутится. Двигатель ток потребляет (ещё один очень желательный канал контроля состояния), а состояние концевика не меняется. Я ведь не говорю, что энкодер не нужен. Я говорю про то, что одного энкодера мало. И опираться ТОЛЬКО на его показания - не есть хорошее решение.
|
|
|
Сказали "Спасибо" Someone
|
|
|
11.03.2018, 01:27
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 8,003
Сказал спасибо: 0
Сказали Спасибо 4,946 раз(а) в 2,374 сообщении(ях)
|
Re: Алгоритм позиционирования, нужны советы
Сообщение от Someone
|
Эксплуатация или разработка?
|
Эксплуатация
Сообщение от Someone
|
Ошибки не надо рассматривать, их надо предусмотреть, и прописать реакцию на них
|
дай бог, чтоб ТС хоть с места сдвинул свой чудосвинтопрульный агрегат
Сообщение от Someone
|
Естественно сообщение о неисправности
|
рассмотрим два варианта неисправности:
- залипание концевика постоянное, тогда система при попытке выйти в "0" бодренько опросит концевик и отрапортует о выходе в исходную точку. аллес - ошибка, сбой, но не определяется однозначно системой.
- концевик "дребезжит" или залип во время движения - последствия см. выше
при эксплуатации встречалось - из-за разгерметизации в блок концевиков попадали масло, сож, стружка и станок бодренько так проскакивал исходное положение либо полз на малом ходу до аварийных концевиков, либо см. выше
можете мне возразить, что, мол, необходимо учитывать состояние энкодера (0-метка) - соглашусь, но ТС упорно скрывает фото, конструкцию и схемы, увы
Сообщение от pasha_zv
|
в качестве примера: терморегуляторы "Овен
|
науй это гавно, науй
|
|
|
|
11.03.2018, 03:32
|
|
Модератор
Регистрация: 04.08.2010
Адрес: Москва СЗАО
Сообщений: 11,257
Сказал спасибо: 11,170
Сказали Спасибо 3,858 раз(а) в 2,928 сообщении(ях)
|
Re: Алгоритм позиционирования, нужны советы
xoxa, таки для начала стоит все потребные параметры, вместе с имеющимися в цифру облечь.
Возможности планируемых исполнителей по скорости реакции, ускорению, торможению.
Кривые ускорения и торможения для достижения требуемой точности.
Необходимые параметры исполнителей из условий применения.
Определиться с типом планируемого энкодера. В данной задаче многое упроститься если он будет абсолютным. Тут вполне можно индуктивный применить.
С параметрами диапазонов управления таки лучше разобраться калибровкой привода один раз, чем пытаться ее каждый раз проводить, в крайнем случае это должна быть отдельная процедура.
В планируемом пневмоцилиндре ещё придётся учесть инерционность самого привода, его конструкцию,…
Сильно больше вопросов - нужны ответы, да и моделирование алгоритма на не совсем годных исходных может потом при реальном приводе ещё головной боли подкинуть с переписыванием и адаптацией алгоритма.
__________________
rtfm forever должно быть основой для каждого. Альтернатива грустна, поскольку метод слепого щенка успешно работает при весьма малом числе вариантов…
|
|
|
|
11.03.2018, 04:39
|
|
Почётный гражданин KAZUS.RU
Регистрация: 16.05.2015
Адрес: Болгария
Сообщений: 1,460
Сказал спасибо: 286
Сказали Спасибо 1,125 раз(а) в 540 сообщении(ях)
|
Re: Алгоритм позиционирования, нужны советы
Здесь писал о своих муках дверью лифта управлять.
С ПИДом разобрался По моему скромному исключительно застойное решение. Тремя параметрами описать весь букет движения невозможно Разве что для вентилятора или обогревателя. Не более
|
|
|
Сказали "Спасибо" OakRidge
|
|
|
11.03.2018, 11:36
|
|
Гражданин KAZUS.RU
Регистрация: 22.07.2007
Адрес: Владивосток
Сообщений: 984
Сказал спасибо: 435
Сказали Спасибо 375 раз(а) в 197 сообщении(ях)
|
Re: Алгоритм позиционирования, нужны советы
Имел довольно долгую, но интересную возню с разгоном и торможением на шаговиках. Стал думать, что электродвигатель+энкодер проще, т.к. тогда не нужно моделировать законы физики, а только "контролировать их исполнение". Как нить хочу попробовать.
Тут вот списочек литературы в конце ветки. М.б. почитать?
И я бы не возился с ПИДом там где можно применить обычную школьную физику, точнее механику за 6 класс. Чтобы описать "букет" движения нужно всего ничего параметров.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 15:06.
|
|