Рубеж Скрипт - системное описание






Рубеж Скрипт - системное описание

Инструкция по эксплуатации

Состав Рубеж Скрипт
В состав РС входят два основных объекта: Инструкция и Программа.
2.1. Инструкция
Инструкция – базовая конструкция РС. Все инструкции имеют единый формат и состоят из четырех основных частей:
• Оператор
• Объект
• Команда
• Параметры
2.1.1 Оператор
Оператор определяет тип инструкции. В РС существует всего лишь три оператора, что определяет простоту языка. Список операторов:
• Событие
• Условие
• Действие
Инструкция с оператором «Событие» является своеобразным фильтром и выполняется лишь тогда, когда в системе происходит событие, указанное в поле инструкции «Команда», связанное с объектом, указанным в поле «Объект».
Оператор «Условие» применяется для проверки состояния объекта. Если условие выполняется, управление передается следующей инструкции, иначе осуществляется переход через инструкцию, т.е. инструкция, следующая за условием, пропускается. Данным способом в РС осуществляются ветвления, т.е. в зависимости от состояния проверяемого объекта управление передается в то или иное место программы. При описании условия можно задать инверсию условия, тогда если условие выполняется – управление передается через одну инструкцию, если не выполняется – на следующую. Во встроенном редакторе РС инверсия устанавливается и снимается клавишей «*», при этом инверсия показывается символом «!» после названия оператора.
Оператор «Действие» применяется для выполнения действий над объектами.
2.1.2 Объект
После того как указан оператор инструкции, необходимо выбрать объект, с которым будет работать данная инструкция. В данной реализации РС поддерживаются следующие объекты:
• Зона
• Объект ТС
• Оборудование
• Пользователь
• Программа
• Переменная
• Звук
• Системные часы
• Временная зона
• Сообщение
• GSM Терминал
2.1.3 Команда
Команда определяет конкретные действия, выполняемые инструкцией по отношению к объекту, с которым работает данная инструкция. В зависимости от оператора инструкции команда содержит код события, состояния или действия над объектом.
2.1.4 Параметры
Параметры – часть инструкции, которая используется в тех случаях, когда нужно указать дополнительные данные для инструкции. Как правило, в параметрах указывается дополнительная информация об объекте инструкции.
2.2. Программа
Программа – совокупность инструкций, определяющая законченный алгоритм. Инструкции в программе выполняются последовательно, за исключением случаев, когда выполняются переходы внутри программы. Выполнение программы может начаться по входному событию или внешним запуском. В первом случае, очевидно, что первой инструкцией в программе должен быть оператор «Событие». Во втором случае, когда программу на выполнение запускает человек или другая программа, в первой инструкции должен быть оператор «Действие» или «Условие».
2.2.1 Указатель выполняемой инструкции
Состояние программы определяется значением указателя выполняемой инструкции или счетчика инструкций. Если значение счетчика равно 1 - программа находится в состоянии ожидания. Когда заканчивается выполнение последней инструкции, управление передается на первую инструкцию, т.е. значение счетчика становится равным 1.
Принцип работы программ Рубеж Скрипт
В БЦП может быть создано до 100 программ РС, содержащих, в общей сложности, до 1000 инструкций. Ответственность за их выполнение в БЦП несет специальная служба: «Рубеж Скрипт Менеджер». Эта служба получает управление один раз в течение рабочего периода (РП) БЦП. Длительность РП зависит от размера конфигурации БЦП и может колебаться в пределах 50 – 300 мс. После получения управления менеджер РС проверяет очередь событий (все события, происходящие в системе, помещаются в специальную очередь, организованную по принципу FIFO). Если очередь событий пуста, менеджер РС завершает свою работу в текущем РП. В противном случае, из очереди производится выборка события в буфер менеджера РС. Событие, загруженное в буфер, называется входным событием. Далее происходит сканирование текущих инструкций всех программ на соответствие входному событию. Соответственно, текущие инструкции всех программ должны быть операторами «Событие». Если текущая инструкция удовлетворяет входному событию, программа начинает выполняться, т.е. управление передается следующей инструкции, при этом параметры входного события загружаются в системную переменную №0. Здесь следует отметить особенность обработки инструкций с операторами «Событие». Если в программе имеются несколько подряд следующих инструкций с оператором «Событие», они объединяются в одну виртуальную инструкцию по логическому «ИЛИ». Таким образом, если в программе первыми тремя инструкциями являются операторы «Событие», то на входное событие проверяются все три эти инструкции до первого соответствия. Если хотя бы одна инструкция соответствует входному событию, управление немедленно передается на четвертую инструкцию данной программы. Это возможность может быть использована в тех случаях, когда по разным событиям должен быть выполнен одинаковый набор действий. После передачи управления на инструкцию, следующую за входной, выполняются все инструкции до конца текущей программы за исключением следующих случаев:
• Текущая выполняемая инструкция является оператором «Событие». Выполнение программы прекращается на данной инструкции, управление передается менеджеру РС. Дальнейшее выполнение этой программы продолжится после наступления события, описанного в данной инструкции.
• Текущая выполняемая инструкция является оператором «Действие» над объектом «Программа» и содержит команду «Задержка». Данная инструкция используется для организации задержки выполнения программы на указанное в параметрах инструкции число секунд. Выполнение программы прекращается на данной инструкции, управление передается менеджеру РС. Дальнейшее выполнение этой программы продолжится по истечении времени задержки.
• Текущая выполняемая инструкция является оператором «Действие» над объектом «Программа» и содержит команду «Переход», причем в параметрах указан номер инструкции меньший или равный текущей (такой переход называется обратным). Данная инструкция используется для организации перехода внутри программы на указанную в параметрах инструкцию. Если выполняется обратный переход (Back-Jump), выполнение программы прекращается на данной инструкции, управление передается менеджеру РС. Дальнейшее выполнение этой программы с инструкции, на которую указывает переход, продолжится через интервал времени, называемый BackJumpServiceTime и равен 500 мс. Прерывание программы в данном случае делается для того, чтобы исключить зацикливание РС. Следует обратить внимание, что программы с циклическими обратными переходами создают значительную нагрузку на РС, и пользоваться ими нужно только в случае крайней необходимости.
После того как все программы обработают входное событие менеджер РС завершает свою работу в текущем РП. Таким образом, за один РП менеджером РС обрабатывается не более чем одно событие.
Внимание: Начиная с версии 2.00.4244, для оптимизации работы, в БЦП реализована динамическая разгрузка очереди событий Рубеж Скрипт. В зависимости от количества событий в очереди менеджер РС обрабатывает следующее количество событий:.......

Да, это то что мне надо, скачать  системное описание на Рубеж Скрипт

Перейти на форум по пожарной безопасности