IPB

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >  
Ответить в эту темуОткрыть новую тему
> Позиционирование с помощью контроллера FX1N-40MT-DSS Mitsubishi Electric, нужна помощь
Oleg0110
сообщение 4.11.2004 - 01:24
Сообщение #1


Читатель
*

Группа: Пользователи
Сообщений: 8
Регистрация: 3.11.2004
Пользователь №: 93



Здравствуйте, нужна помощь в написании программы на контроллер FX1N-40MT-DSS. Нужен конкретный пример использования функций позиционирования, желательно с комментариями. Если можно откликнитесь кто нибудь на емэйл oleg0110@tut.by чтоб в последствии я мог уточнить у вас кое какие детали. Заранее благодарен, Олег.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kdunaikin
сообщение 4.11.2004 - 09:43
Сообщение #2


Читатель
*

Группа: Пользователи
Сообщений: 26
Регистрация: 17.05.2004
Пользователь №: 15



Какой у вас пакет программирования?
Что вы имеете в виду под позиционированием,
Используйте функции SPD_M и DSPD_M, если вы имеете в
виду обратную связь по энкодеру.
Пришлите тех. задание.
kdunaikin@estl.ru
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Ghoul Jedi
сообщение 4.11.2004 - 11:43
Сообщение #3


Писатель
**

Группа: Пользователи
Сообщений: 67
Регистрация: 15.07.2004
Из: Belarus
Пользователь №: 45



На мой взгляд, использовать контроллер для этих целей - не очень правильное решение.
Считаем (для примера берем FX1N):
1. Максимальная частота счета - 30 кГц
2. При использовании 2 осей (2 датчика) - 15 кГц
3. Следовательно, надо использовать датчики с меньшим числом дискрет - до 5000, чтобы контроллер не захлебнулся в информации.
4. Меньшее число дискрет - меньше точность самого позиционирования, а заказчику вынь да полож паспортные данные.
Для примера возьмем станок 6М310ф11-20.3:
Точность - 0,005 мм. Контроллером такую точность обеспечит в принципе можно(использовать один вход быстрого счета), но возникает вторая проблема - позиционирование по 2 осям. Если использовать схемы коммутации датчиков - то вообще завал. На кабеле длинной в 60 м хрен знает какой потенциал может возникнуть sad.gif

Чтобы такого не возникало, IMHO, можно использовать FX2N-1HC
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Sergei Troizky
сообщение 4.01.2005 - 07:38
Сообщение #4


Гигант мысли
****

Группа: Пользователи
Сообщений: 377
Регистрация: 30.12.2004
Пользователь №: 108



Петлю позиционной обратной связи не нужно замыкать через PLC, тогда он не захлебнется.
К тому же, даже самые быстрые PLC недостаточно быстры для этого (имея ввиду не скорость счета, а время выполнения программы).

Нужно возложить петлю регулирования на серводрайв в режиме позиционирования, который для этого и создан.
Или использовать шаговые моторы- открытую систему без обратной связи.
Именно на этих двух решениях построены все существующие ЧПУ на PLC.


--------------------
Делать надо сразу хорошо. Плохо само получится.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Oleg0110
сообщение 5.02.2005 - 03:25
Сообщение #5


Читатель
*

Группа: Пользователи
Сообщений: 8
Регистрация: 3.11.2004
Пользователь №: 93



Здравствуйте. Прошло достаточно много времени с момента создания мной этой темы. За это время прояснилось много нюансов. Счас у меня имеется несколько вопросов по тому же позиционированию. Для начала коротко суть. Есть привод FRA 540, модуль 5А5Р (вроде такой но не суть). Нужно импульсное регулирование с обратной связью по энкодеру. Точность позиционирования 0,1 мм. Дискретность энкодера 1024. Оборот двигателя 10мм. Мы рассчитали все параметры для задания частоты и колличества импульсов. Теперь стоит вопрос, как построить траекторию разгона/торможения (используя высокоскоростную инсрукцию, которая создает заданное количество импульсов заданной частоты). Какие, может быть, есть универсальные алгоритмы для построения траектории? чтобы обеспечивался плавный разгон/торможения при любой скорости перемещения (мин скорость 9мм в минуту, макс 15000 мм в минуту (но еально максимальная будет использоваться на выше 5000мм в минуту)). Предпологается по таймеру каждые 10 мс увеличивать частоту от 0 до заданной с шагом, например, 10. Очень хотелось бы услышать мнения специалистов по этому поводу. Что вы мне посоветуете?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Sergei Troizky
сообщение 6.02.2005 - 04:02
Сообщение #6


Гигант мысли
****

Группа: Пользователи
Сообщений: 377
Регистрация: 30.12.2004
Пользователь №: 108



Здравствуйте, Олег

Модуль А5АР имеет паспортную точность остановки плюс-минус 1.5 градуса (правда, с оговорками зависимости от скорости и нагруженности мотора).
То есть 1/240 оборота. 10мм/240=0.042мм, что впритык укладывается в Вашу спецификацию.

По поводу энкодера не совсем понятно.
Имеется ли ввиду отдельный энкодер, подключенный к PLC?
Если да, то для чего, если инвертер с модулем А5АР сам замыкает петлю обратной связи.

Для разгона-торможения в PLC есть готовые инструкции.
Можно, конечно, управлять програмно, но для этого нужны причины, которых Вы не указали.

Словом, нужно больше подробностей.


--------------------
Делать надо сразу хорошо. Плохо само получится.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Oleg0110
сообщение 7.02.2005 - 14:48
Сообщение #7


Читатель
*

Группа: Пользователи
Сообщений: 8
Регистрация: 3.11.2004
Пользователь №: 93



Здравствуйте.
Под энодером понимается лировский оптический датчик дискретностью 1024. Используется для обратной связи через плату 5А5Р. ТО есть на входа быстрого счета и потом на панель. Требуется: оператор вводит с панели расстояние которое нужно пройти и скорость. Все это дло пересчитывается на импульсы и частоту, далее на привод. В программе нужно разбить участок (который
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Oleg0110
сообщение 7.02.2005 - 14:52
Сообщение #8


Читатель
*

Группа: Пользователи
Сообщений: 8
Регистрация: 3.11.2004
Пользователь №: 93



Здравствуйте.
Под энодером понимается лировский оптический датчик дискретностью 1024. Используется для обратной связи через плату А5АР. ТО есть на входа быстрого счета и потом на панель. Требуется: оператор вводит с панели расстояние которое нужно пройти и скорость. Все это дло пересчитывается на импульсы и частоту, далее на привод. В программе нужно разбить участок (который нужно пройти) на разгон, перемещение с заданной скоростью и плавное торможение. Мне посоветывали использовать для этого функцмю выдачи импульсов с заданной частотой. На сколько я понял, инструкции позиционирования (которые сами формируют разгон, торможение) не подходят поскольку нету у нас MRJ. Так что приходится самому все это обсчитывать. Как посоветуете выйти из данной ситуации?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Sergei Troizky
сообщение 8.02.2005 - 04:59
Сообщение #9


Гигант мысли
****

Группа: Пользователи
Сообщений: 377
Регистрация: 30.12.2004
Пользователь №: 108



Здравствуйте, Олег

К сожалению, я не знаю, что такое MRJ, и, соответственно, чем его отсутствие мешает использовать упомянутые инструкции.

Мне ваш проект видится следующим образом, поправьте меня, если я в чем-то не прав.
Имеется инвертер с модулем А5АР, превращающим его в позиционер с собственной обратной связью на упомянутом энкодере и с управлением шаговыми импульсами.
С точки зрения управляющей системы, это- шаговый мотор.
Шаговые моторы являются, по определению, открытыми системами без позиционной обратной связи.
Если же таковая используется, то лишь для проверки результата перемещения, но никак ни для обратной связи в петле управления скоростью.

Если Ваш проект соответствует сказанному, то для выдачи импульсов вы можете использовать инструкцию PLSR.
Она выдает заданное к-во импульсов с симметричным разгоном/торможением до заданной максимальной частоты.
Единственный ее недостаток- разгон/торможение, хоть и задаются по времени, производятся всегда в 10 изменений.
Можно использовать команду выдычи определенного к-ва импульсов PLSY, а частотой управлять програмно в реальном времени.
Обе задачи весьма тривиальны для опытных пользователей.
Учиться новичкам на таком проекте- не самый лучший вариант.

Подключение же энкодера к PLC для позиционирования, как такового, не нужно.


--------------------
Делать надо сразу хорошо. Плохо само получится.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Oleg0110
сообщение 8.02.2005 - 13:09
Сообщение #10


Читатель
*

Группа: Пользователи
Сообщений: 8
Регистрация: 3.11.2004
Пользователь №: 93



Сергей, Вы совершенно верно описали поставленную задачу. Обратная связь используется только для контроля. Функция формирующая разгон/торможение за 10 шагов за заданное время не очень подходит. Нужно использовать именно функцию PLSY. Как Вы сказали, она позволяет менять частоту в процессе своего выполнения. Вот и стал вопрос, какой алгоритм изменения частоты (в зависимости от заданной частоты(до которой нужно разогнаться) и количества импульсов) нужно использовать. Мне представляется изменение частоты от 0 до заданной каждые, к примеру, 10мс с шагом 10. Может существуют какието более эффективные и применяемые на практике проффесионалами алгоритмы?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Oleg0110
сообщение 8.02.2005 - 17:53
Сообщение #11


Читатель
*

Группа: Пользователи
Сообщений: 8
Регистрация: 3.11.2004
Пользователь №: 93



И еще, за то время пока частота будет изменятся от 0 до заданной пройдет какоето расстояние. Нам же нужно знать момент, при котором будет начинаться торможение. Если алгоритм разгона аналагичен алгоритму торможения, то пройденное растояние при разгоне будет рвно расстоянию за которое должен осуществиться останов. Как все это выщитывается?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Ghoul Jedi
сообщение 9.02.2005 - 14:10
Сообщение #12


Писатель
**

Группа: Пользователи
Сообщений: 67
Регистрация: 15.07.2004
Из: Belarus
Пользователь №: 45



s=at^2/2 - формула из школьного курса физики.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kdunaikin
сообщение 9.02.2005 - 16:19
Сообщение #13


Читатель
*

Группа: Пользователи
Сообщений: 26
Регистрация: 17.05.2004
Пользователь №: 15



Возможно ли рассмотреть такой вариант?
На высокочастотные входы контроллера заведен энкодер (как Вы и писали),
сигнал на ПЧ по включению STF формируется с выхода контроллера.
Задание скорости на ПЧ формируется модулем аналоговых выходов, например FX2N-2DA.При старте задание растет пропорционально, после отсчета высокочастотным входом скажем 90% импульсов (от заданного) аналоговое задание падает ,скажем до 0,5 В, соответственно падает и скорость вращения,после достижение 100% импульсов аналоговое задание отключается и сигнал STF тоже отключается, если аналоговое задание при торможении и соответственно линейная скорость будет достаточно не велика, то позиционирование будет точным.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Sergei Troizky
сообщение 10.02.2005 - 06:35
Сообщение #14


Гигант мысли
****

Группа: Пользователи
Сообщений: 377
Регистрация: 30.12.2004
Пользователь №: 108



То, что предлагает kdunaikin, будет работать только в сравнительно медленной системе.
Иначе возникнет неразрешимый конфликт между скоростью позиционирования и перерегулированием, которое будет выражаться в перебеге мотора и/или колебаниях.
К тому же, потребуется дополнительное железо в виде аналогового модуля.

Олег, Вы не указали требований по скорости разгона до максимальной частоты, а от этого многое зависит.

Алгоритмов разгона-торможения по независимой координате на практике всего два: линейный и S-кривая скорости.
Оба могут быть с симметричными или несимметричными разгоном и торможением.
Линейный алгоритм очень прост в програмной реализации.
Точка торможения легко расчитывается, зная, что при линейном торможении средняя скорость- среднее арифметическое между начальной и конечной.
S-кривая отличается минимальными скачками ускорения и, тем самым, минимизирует удары в трансмиссии.
Упрощенный разгон по S-кривой можно запрограммировать так: начинаем с минимального ускорения и с каждым изменением скорости увеличиваем ускорение в определенное число раз (необязательно в целое).
После достижения половины максимальной скорости, при каждом изменении скорости уменьшаем ускорение во столько же раз, пока не опустимся до минимального.
Аналогично- для торможения.


--------------------
Делать надо сразу хорошо. Плохо само получится.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
kdunaikin
сообщение 10.02.2005 - 09:24
Сообщение #15


Читатель
*

Группа: Пользователи
Сообщений: 26
Регистрация: 17.05.2004
Пользователь №: 15



По поводу "неразрешимого конфликта между скоростью позиционирования и перерегулированием" , в реальной ситуации, управление кондитерской линией, на линии присутствовало 8 асинхронных двигателей , управляемых FR-A540, управление ПЧ осуществлялось контроллером FX2N-80MR и двумя аналоговыми модулями FX2N-4DA, позиционирование механизмов осуществлялось от задающего энкодера главной оси, важным моментом является функция ПЧ "торможение постоянным током", применяемая при торможении. Реальная скорость линии 27000 циклов в час. В производство запущена в июле 2004г. до сих пор проблем не возникало.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

2 страниц V   1 2 >
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 25.04.2024 - 10:41