Задача в Лого

ПЛК / Децентрализованная периферия
Ответить
Ivydy
Дилетант
Сообщения: 17
Зарегистрирован: 13 фев 2018, 16:17

Задача в Лого

Сообщение Ivydy »

Здравствуйте. Возникла необходимость работы в Лого. Скачал Logo Soft Comfort 8. Второй день сижу-не могу понять, как реализовать элементарнейшие функции.
Требуется:
Есть три кнопки(I1, I2, I3). На каждую нажимают несколько раз. Надо подсчитать количество нажатий на каждую кнопку, сравнить их между собой и на соответствующий выход (Q1, Q2 , Q3) подать True. То есть если больше всего нажатий было на I1, то подается питание на Q1, I2->Q2, I3->Q3.
Помогите решить эту задачу. В OwenLogic сделал бы за 20 минут, а тут вообще не понимаю с какой стороны подступить. Спасибо.

Михайло
Администратор
Сообщения: 4024
Зарегистрирован: 19 сен 2012, 19:16

Re: Задача в Лого

Сообщение Михайло »

Во-первых, возьмите сигналы кнопок и прогоните через детекторы фронтов (три фронта). Потом идут счетчики (три штуки), а потом три компаратора (I1>I2, I2>I3, I3>I1). На основе результатов сравнения:
Q1 = (I1>I2 AND NOT I3>I1)
Q2 = (NOT I1>I2 AND I2>I3)
Q3 = (NOT I2>I3 AND I3>I1)

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

Ответить