Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Листинг 13.1. Реализация процесса мониторинга здания




 

//См. Web-страницу http://www.software-engin.com/,

//где представлен полный Java-код этого примера

class BuildingMonitor extends Thread {

BuildingSensor win, door, move;

Siren siren = new SirenO;

Lights lights = new Lights{);

Synthesizer synthesizer = new Synthesizer();

DoorSensors doors = new DoorSensors (30);

WindowSensors windows = new WindowSensors(50);

MovementSensors movements = new MovementSensors(200);

PowerMonitor pm = new PowerMonitor();

 

BuildingMonitor()

{

//инициализация датчиков и запуск процессов

siren.start();lights.start();

synthesizer.start();windows.start();

doors.start()/movements.start();pm.start();

}

public void run ()

{

int room = 0;

while (true)

{

//проверка датчиков движения два раза в секунду (400 Гц) move =

movements.getVal();

//проверка оконных датчиков два раза в секунду (100 Гц) win =

windows.getVal();

//проверка дверных датчиков два раза в секунду (60 Гц) door =

doors.getVal();

if(move.sensorVal==l|door.sensorVal==l|win.sensorVal==l)

{

//датчик зарегистрировал нарушение

if(move.sensorVal == 1) room = move.room;

if(door.sensorVal == 1) room = door.room;

if(win.sensorVal == 1) room = win.room;

 

lights.on(room);siren.on();synthesizer.on(room);

break;

}

}

lights.shutdown(); siren.shutdown();synthesizer.shutdown();

windows.shutdown();doors.shutdown();movements.shutdown();

}//run

)//BuildingMonitor

 

Поскольку данная система не содержит строгих временных требований, ее можно реализовать на языке Java. Конечно, в Java 2.0 нет никакой гарантии соответствия временным спецификациям. В нашей системе все датчики опрашиваются одинаковое количество раз, чего не бывает в реальных системах.

После определения архитектуры процессов системы начинается разработка алгоритмов обработки входных сигналов и генерации ответных сигналов. Как уже отмечалось в разделе 3.1, этот этап проектирования необходимо выполнять как можно раньше, чтобы удостовериться, что система будет соответствовать временным требованиям. Если соответствующие алгоритмы оказываются сложными, может возникнуть необходимость в изменении временных ограничений. Обычно алгоритмы систем реального времени сравнительно просты. Они проверяют ячейки памяти, выполняют некоторые простые расчеты и управляют передачей сигнала. В примере системы сигнализации проектирование алгоритмов не рассматривается.

Последним этапом процесса проектирования является составление временного графика выполнения процессов. В нашем примере нет процессов со строгими сроками выполнения. Рассмотрим приоритеты процессов. Все процессы, опрашивающие датчики, имеют один и тот же приоритет. Процессу, управляющему электропитанием, необходимо назначить более высокий приоритет. Приоритеты процессов, управляющих системой сигнализации, и процессов, опрашивающих датчики, должны быть одинаковы.

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

Архитектура процессов такой системы показана на рис. 13.7; в общем виде она выглядит подобно системе сигнализации. Дальнейшее рассмотрение этого примера предлагается читателю в качестве упражнения.

 

Рис. 13.7. Архитектура процессов системы управления отоплением

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...