Навигация:
Главная страница
К условию задачи
Анимированный вариант
К тексту программы
|
Повторно приведем рисунок, поясняющий задачу. На рисунке обозначено:
(1, 2) - сегменты конвейера, (3) - кнопка
управления, (4) - резервуар с жидкостью, (5) -
паровой клапан нагрева резервуара, (6) -
датчик положения бутылки, (7) - клапан разлива в
бутылку,
(8) - фотодатчик уровня жидкости в бутылке, (9)
- датчик отсутствия жидкости, (10) - датчик
переполнения резервуара, (11) - клапан пополнения резервуара жидкостью,
(12) - датчик температуры жидкости.

Рис. 1. Автоматическая линия
розлива бутылок.
Из условия задачи
можно выделить пять более-менее независимых, а что самое главное, естественных
для семантики автоматизируемого объекта, процессов:
- процесс "Включения/Выключения системы",
- процесс "Поддержания Уровня Жидкости в Резервуаре",
- процесс "Поддержания Температуры Жидкости в Баке",
- процесс "Розлива Жидкости в Бутылку",
- процесс "Подачи Пустой Бутылки к Соплу"
Розлива/Убирания Заполненной Бутылки.
По условию задачи эти процессы связаны друг с другом следующим образом.
1. Если система не включена, то ни один из процессов не работает.
2. Если в резервуар наливается жидкость, то запрещена работа
процессов "Поддержания Температуры Жидкости в Баке" и
"Розлива Жидкости в Бутылку".
3. Если резервуар разогревается, то запрещена работа
процесса "Розлива Жидкости в Бутылку".
Отразим взаимовлияние процессов друг на друга (Рис. 2).
Эта иерархия процессов и будет соответствовать структуре
создаваемой
программы на языке Рефлекс.
Рис. 2. Взаимозависимость процессов для задачи
розлива бутылок.
Перейдем теперь к тексту программы.
|
|