Показано с 1 по 3 из 3

Тема: ПЛК110 М02 и энкодер

  1. #1

    По умолчанию ПЛК110 М02 и энкодер

    Приветствую, уважаемые! Это мой первый проект на КДС, и вообще на ПЛК, нарисован на CFC. Энкодер подключен к ПЛК к быстрым входам, fast discrete inputs - direct control, подпрограмма для timer выглядит так:

    in:=SysPortIn(0);
    IF in.0<>old_in THEN
    IF in.0=TRUE THEN
    IF in.1=TRUE THEN
    count:=count+1;
    ELSE
    count:=count-1;
    END_IF;
    END_IF;
    END_IF;
    old_in:=in.0;

    Проблема: ПЛК управляет задним упором гильотины, и после позиционирования упора, в моменты резов, значение count свободно плавает в пределах от 0 за несколько резов до +/- 20 за рез, станок достаточно сильно дергается в этот момент, причем физически упор не двигается вообще, осциллографа к сожалению нет, проверить реально ли такие последовательности импульсов с энкодера приходят не могу, энкодер фирмы autonics с двухтактным выходом (может стоит резисторами на плюс подтянуть?), кабель экранирован (в схеме нет разделения на функциональное и защитное заземление - может в этом проблема?), везде все соблюдается.
    Итак, вопрос: могу ли я как то отключать подпрограмму для timer на время реза например? Причем управляемо, потому что хотелось бы еще функцию отката сохранить. Ну или подскажете, как бороться с "левыми" импульсами.

  2. #2

    По умолчанию

    0. Отладка прерывания по визуализации - рассматривание слона в длинную трубу. Что-то сереет, но что? Отладьте программу по шагам в основном коде ПЛК (на малой скорости) и потом переносите в прерывание.
    1. Если не нужна реакация <1 мс - используйте штатный конфигурационный энкодер. Он быстрее и не жрет ресурсы.
    2. Фильтрация входов - надо подобрать (и желательно посмотреть осциллографом на сигнал)
    3. Размах сигнала должен быть не менее 15В (лучше 24).
    Тролль-наседка, добрый, нежный и ласковый

  3. #3

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    0. Отладка прерывания по визуализации - рассматривание слона в длинную трубу. Что-то сереет, но что? Отладьте программу по шагам в основном коде ПЛК (на малой скорости) и потом переносите в прерывание.
    1. Если не нужна реакация <1 мс - используйте штатный конфигурационный энкодер. Он быстрее и не жрет ресурсы.
    2. Фильтрация входов - надо подобрать (и желательно посмотреть осциллографом на сигнал)
    3. Размах сигнала должен быть не менее 15В (лучше 24).
    Спасибо за подсказку,
    0) попробовал в основном коде как себя ведет, там неправильно считает, если на in.0 приходит true раньше, чем на in.1, то сразу сcount := count + 1, само собой меня это не устраивает, но, к сожалению, я далек от языка ST, поэтому врядли что то там смогу исправить, а имеющийся ксок кода я взял со страниц этого форума. Не могли бы вы подсказать, как использовать штатный энкодер, или ссылку дать? Просто я когда заменяю fast discrete inputs на fast encoder, там получается переменная типа WORD, а мне надо DWORD. Как преобразовать без потери не понимаю.
    1) реакция <1мс это в смысле как быстро программа узнает об изменеиях в прерывании? Наверное так быстро не надо.
    2) про фильтрацию входов не совсем понял.
    3) энкодер на 24 В питание
    Последний раз редактировалось tagor4444; 16.06.2017 в 08:17.

Похожие темы

  1. Ответов: 11
    Последнее сообщение: 16.12.2016, 21:53
  2. Энкодер и ПЛК110
    от tagor4444 в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 22.10.2016, 23:48
  3. Снова энкодер ПЛК110
    от Алексей Дмитриев в разделе ПЛК1хх
    Ответов: 58
    Последнее сообщение: 25.01.2015, 16:41
  4. ПЛК110-220.32 и энкодер
    от DKFLBVBH в разделе ПЛК1хх
    Ответов: 11
    Последнее сообщение: 15.01.2015, 10:49
  5. ПЛК110-32 и энкодер
    от nestor в разделе Эксплуатация
    Ответов: 3
    Последнее сообщение: 23.03.2012, 08:38

Ваши права

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