Евгений Назаров, версия от 19 сентября 2006, статус: DRAFT
ВНИМАНИЕ! Содержимое документа будет меняться!
Данная спецификация предоставляется на подсистему LSS (Layers Sub-System) разрабатываемого программного продукта – комплекса средств структурного и параметрического синтеза моделей интеллектуальных систем управления ("Intellectula").
Назначение подсистемы – обеспечение структурного и параметрического синтеза интеллектуальной системы управления при решении некоторой подзадачи поставленной задачи. Решение подзадачи представлено пользователю в виде схемы-графа, на которой обозначены ее логические узлы (блоки-входы, блоки-выходы и блоки-действия) и переходы между узлами. Таким образом, задача подсистемы LSS – обеспечить интерфейс для манипуляций (редактирования или исполнения) конкретной схемой-графом.
(Layer) – схема-граф, имеющая логические узлы (блоки-входы, блоки-выходы и блоки-действия) и переходы между ними.
(Layers Sub-System, LSS) – подсистема комплекса средств структурного и параметрического синтеза моделей интеллектуальных систем управления ("Intellectula") для манипуляций с конкретным слоем.
(Intelligence Block) – узел схемы-графа (слоя), являющийся либо блоком-входом, либо блоком-выходом, либо блоком-действием.
(Input Intelligence Block, IIB) – Логический узел, имеющий только выходные контакты (для установления переходов), задачей которого является определение части входного интерфейса слоя.
(Output Intelligence Block, OIB) – Логический узел, имеющий только входные контакты (для установления переходов), задачей которого является определение части выходного интерфейса слоя.
(Action Intelligence Block, AIB) – Логический узел, имеющий один или несколько входных контактов и один или несколько выходных контактов, задачей которого является исполнение предопределенного действия в заданный момент времени.
(Connection) – логическая связка двух контактов, один из которых является выходным, другой – входным.
(Contact) – параметр (либо входной, либо выходной) логического узла, имеющий определенный тип данных.
Слой – это схема-граф, в узлах которой расположены логические узлы, имеющие входные и/или выходные контакты для установления переходов (т.е. взаимосвязей) между ними. Логический узел представляет собой блок, имеющий входные и/или выходные контакты и способный выполнять какое-либо действие. Различают три типа блоков:
- Блок-вход, предназначен для индикации входного параметра слоя. Отличительной особенностью таких блоков является наличие одного или нескольких выходных контактов и полное отсутствие входных контактов. По умолчанию блоки данного типа отображаются в красных цветовых оттенках.
- Блок-выход, предназначен для индикации выходного параметра слоя. Отличительной особенностью таких блоков является наличие одного или нескольких входных контактов и полное отсутствие выходных контактов. По умолчанию блоки данного типа отображаются в синих цветовых оттенках.
- Блок-действие, предназначен для индикации элементарного действия слоя. Отличительной особенностью таких блоков является наличие одного или нескольких как входных, так и выходных контактов. По умолчанию блоки данного типа отображаются в зеленых цветовых оттенках.
Контакт блока, по сути, является типизированной переменной, т.е. переменной, имеющей тип. Определены три типа контактов: Time, Number и String. Time – контакт, отвечающий за передачу текущего значения времени. Number – контакт, отвечающий за передачу численного значения (числа с плавающей запятой). String – контакт, отвечающий за передачу строкового (текстового) значения.
Переход является логической связкой двух контактов одного типа, один из которых является выходным, а другой – входным. Два и более переходов могут исходить из одного выходного контакта, но для каждого из них входной контакт будет уникальным, т.е. каждому входному контакту назначен свой переход. Пустые контакты (контакты, не задействованные ни в одном из переходов слоя) считаются ошибкой при трансляции слоя. После обнаружения подобной ошибки трансляция слоя прекращается.
Входной блок, имитирующий входной параметр слоя – текущее время:
Выходной блок, имитирующий выходной параметр слоя – вызов другого слоя:
Из рисунка видно, что вызываемый слой имеет только один входной параметр – текущее время.
Блок-действие – исполнения скриптового файла интерпретатора LUA (Sample.lua)
Реализация контактов для данного примера зависит от реализации блока-действия. О том, каким образом задаются входные и выходные контакты этого блока и как значения передаются и изымаются из скрипта LUA читайте в документации блока.
- Блок-вход по умолчанию отображается в красных цветовых оттенках;
- Блок-выход по умолчанию отображается в синих цветовых оттенках;
- Блок-действие по умолчанию отображается в зеленых цветовых оттенках;
- Блок любого типа может отображаться в иных цветовых оттенках в зависимости от пожеланий разработчика блока (поставщика задачи);
- Блок любого типа отображается прямоугольником с текстом, слева от которого представлены контакты-входы, справа – контакты-выходы, над каждым контактом вынесено его имя;
- Блок любого типа может отображаться любым другим способом в зависимости от пожеланий разработчика блока (поставщика задачи);
- Контакты блока любого типа могут располагаться по-другому в зависимости от пожеланий разработчика блока (поставщика задачи);
- По умолчанию цвет фона слоя – белый;
- Пользователь может добавлять комментарии на слой. Комментарии являются полноценными элементами схемы, так же как и блоки и переходы. Комментарии отображаются самим текстом комментария;
- Переход обозначен ломаной линией красного цвета. Пользователь может добавлять промежуточные точки для изменения формы линии. Промежуточные точки отображаются кругами, цвет линии которых тот же что и цвет линии, цвет заливки – белый;
- При наведении указателя мыши на любой из элементов слоя, элемент выделяется прямоугольником (если это блок или комментарий), определяющим его границы, или закрашивается другим цветом (если это переход). Цвет по умолчанию светло-розовый; При снятии указателя мыши с элемента слоя, выделение снимается.
- При щелчке на элементе слоя элемент выделяется прямоугольником (если это блок или комментарий), определяющим его границы, или закрашивается другим цветом (если это переход). Цвет по умолчанию голубой. Выделение данного элемента снимается при выделении другого элемента или при щелчке мышью на пустом пространстве слоя;
- Редактор схемы допускает использование вспомогательной сетки, по которой производится выравнивание. Вспомогательная сетка отображается только при включении данной опции. По умолчанию размер сетки по ширине и высоте 8 пикселей.
|