Страница 1 из 7 123 ... ПоследняяПоследняя
Показано с 1 по 10 из 69

Тема: ПЛК110-32 позиционирование с энкодером

  1. #1

    Question ПЛК110-32 позиционирование с энкодером

    Добрый день! Имеется ПЛК110, к нему подключен энкодер для позиционирования каретки станка. Энкодер Autonics E40-S8-5000-T-24. Проблема в следующем: при вращении энкодера рукой, за полный оборот ПЛК насчитывает ровно 5000 импульсов (все как должно быть), а при перемещении каретки электродвигателем, ПЛК за один оборот насчитывает 50-100 лишних импульсов. Соответственно, если пару раз отвести каретку в крайние положения, то она не вернется обратно в исходное положение с требуемой точностью.
    Электродвигатель подключен к ПЧ, энкодер находится рядом с двигателем. Могут ли быть наводки от него и как решить данную проблему?
    Проект прилагаю.
    Вложения Вложения

  2. #2
    Пользователь
    Регистрация
    24.07.2012
    Адрес
    Россия
    Сообщений
    1,492

    По умолчанию

    5000 импульсов на оборот много конечно, с таким не работал, у меня по меньше но работает как часы, правда с ПЛК М01.
    У нас проблема была с дребезгом контактов на низких оборотах ШД. Он начинал дребезжать и от этого на валу было дрожание что провоцировало лишние импульсы.
    Проблему решили конечно убрав это дрожание, толи делением шагов толи еще чем то и всё стало работать хорошо.

  3. #3

    По умолчанию

    Цитата Сообщение от Scream Посмотреть сообщение
    5000 импульсов на оборот много конечно, с таким не работал, у меня по меньше но работает как часы, правда с ПЛК М01.
    У нас проблема была с дребезгом контактов на низких оборотах ШД. Он начинал дребезжать и от этого на валу было дрожание что провоцировало лишние импульсы.
    Проблему решили конечно убрав это дрожание, толи делением шагов толи еще чем то и всё стало работать хорошо.
    У нас скорость перемещения низкая (1 оборот примерно за 10 секунд проходит). Вибрации присутствуют, может и в них проблема. ПЛК тоже М01. У вас энкодер обрабатывается через Fast Encoder?

  4. #4
    Пользователь
    Регистрация
    31.07.2013
    Адрес
    Аркаим
    Сообщений
    1,033

    По умолчанию

    Очень много зависит от алгоритма обработки сигнала энкодера. Я не знаю алгоритм, примененный в овеновском ФастЭнкодере, поэтому ничего не могу про него сказать. Здесь на форуме есть целая тема HardellaIDE, я в этой среде писал свой алгоритм. У меня он наипростейший, но он дает ошибку при радиальной вибрации. Но у меня энкодеры на 360 линий и один оборот в 3-5 секунд, сбоев не наблюдается. Алгоритм, предложенный автором HardellaIDE ошибок не дает, но дает четырехкратные показания.

  5. #5
    Пользователь
    Регистрация
    11.01.2009
    Адрес
    Кострома
    Сообщений
    3,144

    По умолчанию

    У Вас больше 65000 бывает?
    если да, то лучше использовать к примеру:
    Суммирование значения счетчика из регистра счета:
    C:dword;
    оттуда, M:word;

    C:=C + ((оттуда - M) and 65535);
    M:=оттуда;

    C:=C + (abs(word_to_int(оттуда - M)) mod 16#10000); - для энкодера

    Если нет, то ваш фб вам избыточен.
    Не забывайте, что в ПЛК Овен нет прерываний и остановить мотор в цикле он может только с большой задержкой.
    Для быстрой остановки используйте переход на низкую скорость и быстрые выходы и обработку энкодера и выходов таймером 20 мкс.
    Примеры есть в ИЭ на контроллер.
    Понаблюдайте за изменениями значений энкодера при вибрации. Возможно проблема в энкодере.

  6. #6

    По умолчанию

    Нет, больше 65000 не бывает. Мотор останавливается не в автоматическом режиме, т.е. оператор смотрит на дисплей и нажимает кнопки "больше"-"меньше".
    А есть готовые примеры обработчика энкодера в Hardella IDE? Он должен просто считать вперед-назад и сохранять значение при выключении.

  7. #7

    По умолчанию

    Цитата Сообщение от shvadronov Посмотреть сообщение
    Нет, больше 65000 не бывает. Мотор останавливается не в автоматическом режиме, т.е. оператор смотрит на дисплей и нажимает кнопки "больше"-"меньше".
    А есть готовые примеры обработчика энкодера в Hardella IDE? Он должен просто считать вперед-назад и сохранять значение при выключении.
    Hardella это для М02. А у вас же 1-ая версия ПЛК?
    Обработка есть во встроенном блоке ( https://hardella.com/docs/pru/examples/fast-encoder/ ), но можно и свой сделать (кому-то, похоже, больше нравится, когда вообще весь код контролируешь)

  8. #8

    По умолчанию

    Да, первая версия. То есть пока копать только в сторону ложных импульсов от вибраций? Других очевидных причин нет?

  9. #9

    По умолчанию

    Цитата Сообщение от lara197a Посмотреть сообщение
    У Вас больше 65000 бывает?
    Кстати, интересный вопрос.
    В приложенном проекте 134334 .pro в настройках fast encoder'а указано "range of encoder 1" == "65000".

    По-моему, так делать не стоит. По-хорошему, там должно быть 16#FFFF.

    Если указывать "range 65000", то обрабатывать переход через 65000 гораздо сложнее.

    shvadronov, значение энкодера прямо никогда-никогда не заходит в "отрицательную область"? И прямо никогда-никогда не доходит до 65000?
    Я бы всё-таки советовал поправить range и выставить там 16#FFFF (ну или 65535)

  10. #10

    По умолчанию

    Ложных импульсов не может же быть из-за того, что ПЛК дает команду на включение одного из выходов и в то-же время считывает состояние энкодера?

Страница 1 из 7 123 ... ПоследняяПоследняя

Похожие темы

  1. Ответов: 24
    Последнее сообщение: 27.08.2021, 15:34
  2. Счетчик СИ8 не работает с энкодером.
    от Алексей Дмитриев в разделе Эксплуатация
    Ответов: 2
    Последнее сообщение: 26.03.2016, 13:59
  3. Работа с энкодером в ПЛК110
    от Velldio в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 12.11.2015, 09:45
  4. ПЛК110 - Отмер длины энкодером.
    от olc в разделе ПЛК1хх
    Ответов: 56
    Последнее сообщение: 04.12.2011, 01:33

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •