Добавление замечания
Для добавления последнего, еще не использованного нами значка, введем в диаграмму комментарий, который соединим при помощи значка Anchor Note to Item с состоянием Analysing Time, и должно получиться примерно следующее (рис. 6.11).
Рис. 6.11.Диаграмма состояния после добавления замечания
Настройка среды
Распишем подробнее, какие состояния должна пройти система для настройки среды в соответствии с планом выращивания, при этом сделаем следующие допущения:
· для увеличения температуры в теплице необходимо включить нагреватель;
· для уменьшения температуры необходимо включить вентилятор;
· для переключения в режим «День» необходимо включить освещение;
· для переключения в режим «Ночь» необходимо выключить освещение;
· для уменьшения рН необходимо добавить в раствор воды;
· для увеличения рН необходимо добавить в раствор удобрений. Причем возможно одновременное включение нагревателя, лампочек и водяной заслонки, но должно быть невозможно одновременное включение нагревателя и вентилятора, а также одновременное поступления воды и удобрений.
Произведя анализ необходимых действий, нетрудно заметить, что перечисленный набор можно разделить на три независимые части, это:
· настройка температуры (t);
· настройка освещения (light);
· настройка уровня рН.
Так как мы приняли допущение, что процессор у нас только один, то эти состояния будут пройдены последовательно. Но если для каждой части используется свой процессор, то можно было бы создать автономные классы для управления этими состояниями.
Rational Rose предоставляет возможность создания вложенных диаграмм состояния, что удобно для большей детализации каждого состояния. Воспользуемся этим в нашем случае.
Добавим три новых состояния Adjusting t (настройка температуры), Adjusting Light (настройка освещения) и Adjusting рН (настройка рН). Для этого добавим новые состояния прямо в значок Adjusting Environment. Перед добавлением значок будет выделен рамкой, а после добавления будет автоматически раздвинут, чтобы в него уместился добавленный элемент. Изменим направления входящей и выходящей стрелок так, чтобы входящая указывала на Adjusting рН, а выходящая исходила из Adjusting t, и соединим эти состояния последовательно. Теперь распишем, что происходит в этих состояниях (рис. 6.12).
Рис. 6.12.Настройка среды
Настройка температуры происходит только при ее изменении, что показывают функции tempDown и tempUp. Если произошло одно из этих событий, то температура сравнивается с той, которая должна быть по плану, и если она меньше, то включается нагреватель, а если больше — вентилятор.
Однако если температура достигла нормального уровня, то вентилятор и нагреватель отключаются. Аналогично происходит и с уровнем рН.
Для освещения лампочка просто включается при наступлении времени освещения и выключается при наступлении ночного времени суток.
Дата добавления: 2016-03-05; просмотров: 723;