Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 15

Тема: Помогите решить задачу с кнопками

  1. #1

    Question Помогите решить задачу с кнопками

    Добрый день!
    Codesys 3.5
    Такая задача: 4 кнопки с фиксацией. При нажатии любой кнопки, "отжимается" кнопка нажатая ранее.

    Подскажите, какие могут быть варианты решения.
    Всем спасибо!

  2. #2
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    12,986

    По умолчанию

    программные ? сами физические кнопки без фиксации. Если используется D-триггер, то у него есть вход сброса, соответственно через ИЛИ от "противоположных" кнопок его можно сбрасывать.

  3. #3

    По умолчанию

    Код:
    fixBTN : UDINT;
    
    if btn1 and not btn2 and not btn3 and not btn4 then
      fixBTN := 1;
    end_if
    if not btn1 and btn2 and not btn3 and not btn4 then
      fixBTN := 2;
    end_if
    if not btn1 and not btn2 and btn3 and not btn4 then
      fixBTN := 3;
    end_if
    if not btn1 and not btn2 and not btn3 and btn4 then
      fixBTN := 4;
    end_if

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

    По умолчанию

    Valadimir
    Можно и на LD
    Среда не КДС, но это не важно, КДС тоже так может.
    Xn - входа ПЛК, Yn - выхода, M - маркер (битовая переменная).
    Показано три канала, четыре и более не вмещаются в скриншот.
    Изображения Изображения
    Последний раз редактировалось Sulfur; 11.08.2025 в 11:43.

  5. #5
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    3,052

    По умолчанию

    M,M_,On,Out : DWORD; //если приперло - можно 32 кнопы запилить
    ------

    M.0 := Di1; //каждая DiN связана с DoN
    M.1 := Di2;
    M.2 := Di3;
    M.3 := Di4;

    On := M AND NOT M_;
    Out := SEL(On > 0, Out, On);
    M_ := M;

    Do1 := Out.0;
    Do2 := Out.1;
    Do3 := Out.2;
    Do4 := Out.3;

  6. #6
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    9,435

    По умолчанию

    Цитата Сообщение от Valadimir Посмотреть сообщение
    Добрый день!
    Codesys 3.5
    Такая задача: 4 кнопки с фиксацией. При нажатии любой кнопки, "отжимается" кнопка нажатая ранее.

    Подскажите, какие могут быть варианты решения.
    Всем спасибо!
    Вот здесь посмотрите, короче, должно подойти и придумывать не надо, в смысле уже давно придумано и даже в два раза превышает ваши потребности(8 кнопок), с перспективой развития до 32:
    https://owen.ru/forum/showthread.php...l=1#post361404

    Да и само ваше Т. З. поражает своей недосказанностью, если мягко выражаться, но всё гармонично, в смысле, сделать не можете, объяснить(толково) не можете!

    8 стабильный триггер_4.PNG

    Хотел дополнить, что в последствии этот алгоритм неоднократно совершенствовал, но кажется в других темах, это один из первых вариантов.
    И, макрос RAMP_BIT нужен только для случаев когда одновременно нажато более одной кнопки, он задаёт приоритет и разруливает одновременное нажатие более одной кнопки.

    https://owen.ru/forum/showthread.php...l=1#post361508
    Последний раз редактировалось Сергей0308; 11.08.2025 в 17:46.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

  7. #7

    По умолчанию

    IMG_20250811_175632_295.jpg
    А так сгодится? Ну нет у меня дома кодесиса.

  8. #8
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    3,052

    По умолчанию

    Прием заявлений на отборочный тур продолжается.
    Изображения Изображения
    • Тип файла: png 123.png (1.68 Мб, Просмотров: 38)

  9. #9
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    9,435

    По умолчанию

    Так, для начала товарищ пусть прояснит что он хочет, 4-х стабильный триггер, как Евгений нарисовал, или 4-е связанных Т-триггера, в смысле, при нажатии повторно на ту же кнопку, соответствующий выход выключается? Кстати, у меня имеются оба варианта, по второй(нижней) ссылке у меня варианты с 4-мя связанными Т-триггерами.
    Последний раз редактировалось Сергей0308; 11.08.2025 в 19:21.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

  10. #10

    По умолчанию

    кнопки программные на дисплее, не физические
    кнопку можно только нажать, отжать пальцем с дисплея нельзя, т.е. всегда какая-то кнопка нажата

Страница 1 из 2 12 ПоследняяПоследняя

Похожие темы

  1. Помогите решить задачу
    от АнтоN в разделе Трёп (Курилка)
    Ответов: 4
    Последнее сообщение: 10.12.2020, 23:41
  2. Ответов: 8
    Последнее сообщение: 05.11.2018, 16:30
  3. помогите нубу решить задачу с МЭ110-224.1Т
    от opavlov в разделе Эксплуатация
    Ответов: 2
    Последнее сообщение: 21.03.2017, 10:12
  4. ПР 110 Помогите решить задачу.
    от aleregin в разделе Программируемые реле
    Ответов: 5
    Последнее сообщение: 26.12.2013, 08:33
  5. Ответов: 5
    Последнее сообщение: 06.12.2013, 16:45

Ваши права

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