Исправленная версия. Теперь работает в двух направления. Для моего варианта нужны два фотодатчика один на въезде, другой на выезде. В визуализации входы расположены в левом столбце. В самом начале надо включить "фотоэлемент на въезде" и "фотоэлемент на выезде". При пересечении машиной луча фотодатчика он сработает после того, как машина проедет (для имитации работы фотоэлемента или карты надо на него нажать и отжать).
Все работает, Вы забыли нажать-отжать фотоэлемент после того как машина выедет. Да, там надо дождаться пока закроется шлагбаум. Надо будет поправить.
Всем огромное спасибо! Отдельное спасибо amn.
Я тоже написал рабочий алгоритм, правда в 210 строк =), но как оказалась мой, а так же алгоритм от amn, не до конца описывает все возможные варианты в реальной ситуации.
А именно -
1) Если машина проехала фотоэлемент быстрее чем открылся шлагбаум (15секунд), то шлагбаум не закроется.
2) Если человек передумал (прислонил карточку, но вспомнил, что забыл документы дома =) ) необходимо закрыть шлагбаум и сбросить все значение по timeout.
3) Так же необходима пожарная "кнопка" - включается красный светофор на въезд, зеленый на выезд, и открываются оба шлагбаумы.
И это только первые пункты в которые меня "ткнули носом"
Ну я думаю справлюсь с этим .
А вообще на будущее, на чем лучше реализовать такого рода задач? (В смысле ПЛК ПР и т.п.)
Шлакбаум надо открывать не на 15 сек , а до факта проезда автомобиля (независимо быстро или медленно).
Ребята, Вы вообще представляете что такое релейный (Булевский) алгоритм? Образование-то базовое какое у вас? А-то "как русский - великий и могучий"! Пафосно и смешно, право-слово. Для той задачи - LD - самое оно.
На бейсикоподобных языках могут писать даже домохозяйки, одно-но - оно почти всегда не работает так как должно, поэтому алгоритм обрастает жутко при отладке.