Показано с 1 по 10 из 18

Тема: правильное подавление дребезга контактов

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #2

    По умолчанию

    Цитата Сообщение от drvlas Посмотреть сообщение
    Нужно, чтобы нажатие кнопки вызвало установку битовой переменной bStep, причем 1 раз на нажатие (хотя из-за дребезга контактов на вход поступает каша из нулей и единиц в течение нескольких десятков миллисекунд. Ну, а когда программа узнает об этом событии, то bStep нужно сбросить.
    Все зависит от того, что именно вы хотите получить.
    Просто подавление дребезга контактов - "Time of filtration" в параметрах модуля "Discrete input" (PLC Configuration).
    Если нужна защита от случайных нажатий (требуется не просто ткнуть в кнопку, а нажать и подержать) - таймер TON.
    Если надо запомнить факт нажатия кнопки и обработать его в некой определенной фазе цикла работы установки (например, "production stop": доделали последнее изделие, а следующий рабочий цикл уже не начинаем), есть RS-триггер (см. библиотеку standard.lib, "Bistable function blocks"). Сигнал от кнопки на его вход SET, и будет помнить его до тех пор, пока программа не соизволит обратить на него внимание (и не сделает ему RESET после обработки).
    Выделение фронта сигнала (импульс по нажатию, либо по отпусканию кнопки) - функциональные блоки R_TRIG и F_TRIG.
    В общем, типовых "кирпичиков" достаточно. Стройте из них что хотите.
    Последний раз редактировалось Terrano1992; 28.10.2010 в 08:23.

Ваши права

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