Схемный графический редактор ПА9
Описание пользовательского интерфейса
Окно графического редактора ПА9
Программный комплекс ПА9 предназначен для моделирования динамики технических систем различной физической природы на макроуровне. ПА9 может функционировать на любой платформе, для которой имеется среда Java (JDK или JRE версии 1.1 или более поздней). ПА9 может использоваться как самостоятельное приложение, так и в виде апплета в среде HTML-браузера. На апплеты налагаются некоторые ограничения, однако основные операции редактирования и моделирования в обоих вариантах совпадают.
На рис. 1 приведен пример окна схемного графического редактора ПА9 (для операционной системы Windows 95 в варианте самостоятельного приложения). Основную часть окна занимает поле схемы. Если поле схемы целиком не помещается в окне, то справа и снизу появятся лифты для ее перемещения. Поле схемы разбито сеткой на квадратные ячейки. Все составные части схемы всегда обязательно привязываются к этой сетке. Для выполнения основных функций редактирования используется мышь и клавиатура. Для дополнительных функций используется меню (в апплетах меню отсутствует). В ПА9 имеется возможность использовать два языка пользовательского интерфейса - русский и английский.
Составные части схемы
Для моделирования схемы, помимо ее графического изображения, необходима еще и некоторая дополнительная информация (например, информация о том, какие переменные должны выводиться на графики, или какие процедуры и математические методы моделирования следует использовать). Поэтому графическое изображение схемы несколько отличается от стандартных чертежей принципиальных и функциональных схем. На рис. 1 показаны основные составные части схемы.
Наиболее значимые составные части схемы - элементы моделируемого технического объекта. Графические изображения элементов всегда занимают прямоугольную область, ширина и высота которой кратны размеру ячейки сетки. Внешние выводы элементов всегда располагаются по периметру этой области и обязательно по середине стороны квадрата ячейки. Каждому элементу, включенному в библиотеку ПА9 соответствует математическая модель (или несколько моделей), для которой необходимо задать определенный набор параметров. Для моделирования не важно, в каком месте поля схемы расположен элемент; важна лишь взаимосвязь элементов между собой, а также численные значения их параметров.
Для задания внешних входных воздействий на моделируемый объект используются источники сигналов.
Для указания того, как элементы технического объекта связаны между собой используются связи. Конфигурация связи не оказывает влияния на моделирование схемы, более того, связь можно вообще не использовать, если поля элементов расположить вплотную друг к другу. На рис. 2 все три фрагмента схемы полностью идентичны. Связи всегда проходят через центры ячеек.
Для указания того, что элемент соединен с системой отсчета (шина “земля” в электронике, неподвижная система координат в механике, атмосфера в гидравлике и т.д.) используются базовые узлы.
Для идентификации каждого элемента в схеме используются метки. Для моделирования не имеет значения ни местоположение метки, ни ее текст. В графическом редакторе ПА9 не предусмотрено специальных операций для манипуляции с метками - все действия с метками выполняются автоматически. Так, например, если Вы затрете метку связью или другим элементом, она автоматически переместится на другое свободное место.
Для задания расчетных переменных, которые следует выводить на графики в процессе моделирования, используются индикаторы. Индикаторы потенциала и интеграла потенциала подключаются своим внешним выводом к той точке схемы, потенциал или интеграл потенциала которой предполагается выводить на график. Индикатор потока включается в разрыв связи.
Для задания последовательности действий по моделированию схемы используются операторы. Для того, чтобы несколько операторов выполнялись последовательно, их надо расположить на поле схемы вертикально один под другим. Так на рис. 1 задание на расчет состоит из трех операторов.
Если нужно моделировать несколько различных конфигураций объекта, в схему можно установить переключатели. Математическая модель схемы строится в соответствии с тем положением переключателя, какое он имел на момент запуска задания на расчет.
Для включения в схему поясняющей информации используются комментарии. Они не оказывают никакого влияния на расчет.
По набору команд пользовательского интерфейса все составные части схемы можно разделить на три группы.
Курсоры и фокус ввода
Помимо обычного системного курсора в форме стрелки в графическом редакторе ПА9 на экране всегда присутствует еще и дополнительный курсор. Дополнительный курсор всегда перемещается в пределах поля схемы вместе с системным, однако его перемещение дискретно и соотносится с ячейками сетки. Кроме того, дополнительный курсор изменяет свою форму и размер в зависимости от выполняемой операции (или в зависимости от возможности выполнить ту или иную операцию). Так, например, при установке в схему нового компонента дополнительный курсор принимает вид графического изображения этого компонента, что позволяет более точно подобрать его положение в схеме. Кроме того, при невозможности установки элемента в данной позиции, курсор принимает другой вид. На рис. 3 приведены различные формы, которые может принимать дополнительный курсор.
Система ПА9 всегда работает в многооконной и многозадачной операционной системе. В процессе работы Вы можете перейти в окно другой программы, а затем вновь вернуться к работе с графическим редактором. При этом Вы должны быть уверены, что все подаваемые Вами команды с клавиатуры и мыши будут восприниматься именно редактором ПА9, а не каким-либо другим приложением, иными словами, для работы необходимо, чтобы поле схемы имело фокус ввода. Для того, чтобы проверить наличие фокуса ввода достаточно просто переместить системный курсор в пределах поля схемы. При этом, если фокус ввода имеется, дополнительный курсор будет перемещаться вслед за системным. Если дополнительный курсор неподвижен, или его не видно вообще, это означает, что фокус ввода отсутствует. В этом случае для получения фокуса ввода просто щелкните кнопкой мыши в любом месте поля схемы.
Использование клавиатуры для перемещения дополнительного курсора
Перемещать дополнительный курсор в поле схемы можно также и при помощи клавиш со стрелками. При этом надо иметь ввиду следующее:
Контекстное меню
При работе с редактором для выполнения операций используется левая кнопка мыши. (Далее, говоря “нажмите кнопку мыши” или “щелкните кнопкой мыши”, мы будем иметь ввиду именно левую кнопку). Правая же кнопка используется для вызова контекстного меню. Контекстное меню представляет собой маленькое окно с набором иконок, каждая из которых соответствует определенной команде, причем иконки, соответствующие командам, которые не могут быть выполнены в данной конкретной ситуации, будут иметь темный фон. Сведения о том, какие иконки каким командам соответствуют, содержатся в последующих разделах. При перемещении курсора мыши по иконкам в верхней части окна диалога появляется подсказка. Для выбора определенной команды щелкните кнопкой мыши на соответствующей иконке.
Последовательность операций формирования схемы
Обычно для моделирования схемы нужно выполнить четыре основные этапа работы:
Вы, однако, можете в процессе формирования схемы переставлять и комбинировать эти этапы так, как считаете нужным - никаких команд переключения режимов работы в ПА9 не предусмотрено. Так, например, можно сначала начертить граф схемы из связей, а затем расставлять компоненты непосредственно на эти связи, при этом соединяться внешние выводы компонентов со связями будут автоматически. Можно также задавать атрибуты включаемых компонентов до того, как они будут установлены в схему. Разумеется, выполнять задание на расчет можно только после завершения формирования схемы. В последующих разделах описана последовательность различных операций, необходимых для формирования схемы.
Добавление нового компонента в схему
При выполнении этих действий компоненты, включаемые в схему получат атрибуты, которые разработчик определил для них по умолчанию. Впоследствии, открыв диалог изменения атрибутов компонента (см. ниже), Вы можете их скорректировать. Однако, если Вы считаете более удобным задавать атрибуты компонента еще до включения его в схему, выполните операции, описанные в разделе “Просмотр и корректировка атрибутов компонента-образца”.
Использование в качестве образца ранее установленного компонента
Имейте ввиду, что компонент-образец можно взять в одной схеме, затем загрузить другую (или перейти в другое окно) и установить новый компонент уже в другой схеме. Поскольку атрибуты вновь включаемых компонентов будут скопированы у компонента, который был взят за образец, этой особенностью удобно пользоваться для установки в схему элементов с большим количеством параметров: достаточно найти аналогичный в других схемах и взять его за образец.
Удаление компонента из схемы
С помощью этой операции удаляются только компоненты схемы, для удаления связей и базовых узлов предусмотрена другая операция.
Восстановление ошибочно удаленного компонента
Последний удаленный компонент можно восстановить (взяв его в качестве образца). Для этого:
Отсоединение компонента от схемы
Иногда при отладке схем возникает необходимость временно исключить из схемы некоторые компоненты, однако не удалять их совсем, чтобы затем вновь не задавать их атрибуты. Кроме того, отсоединение компонентов используется для их перемещения и трансформирования (см. ниже).
Отсоединенные компоненты продолжают оставаться на поле схемы, однако они никак не влияют на процесс моделирования. Для отсоединения компонента:
ВНИМАНИЕ! В некоторых случаях отсоединение компонента в соответствии с логикой работы схемы должно сопровождаться соединением связей, которые были к нему подведены. Если это необходимо сделать, переместите отсоединенный компонент в другое место и добавьте нужные связи. (О том как это сделать см. следующие разделы).
Присоединение отсоединенного компонента
Присоединение компонента возможно, только если он не перекроет другие компоненты, имеющиеся в схеме. Если присоединяемый компонент перекрывает связи, его присоединение возможно, однако перекрываемые связи будут уничтожены. Исключением являются компоненты, которые не предусматривают подключения к ним связей (например, это комментарии и операторы задания на расчет). Они могут быть установлены в схему только на свободном месте.
Перемещение компонента в другое место схемы
После перемещения компонент продолжает оставаться отсоединенным, поэтому, если его нужно включить в схему, проделайте действия предыдущего раздела.
Копирование компонента
В ПА9 можно использовать два различных способа копирования - несвязанное и связанное копирование. При несвязанном копировании копия наследует от источника все его атрибуты, однако затем “живет самостоятельной жизнью” - любые изменения ее атрибутов никак не влияют на компонент-источник. В случае же связанного копирования атрибуты копии жестко связаны с атрибутами источника: изменяя атрибуты любого из них, мы изменим и атрибуты всех связанных с ними копий. Связанное копирование удобно, если в схеме имеется несколько элементов, параметры которых должны быть всегда одинаковыми, однако в процессе отладки их нужно изменять. В этом случае достаточно изменить параметры только у одного элемента - у остальных они изменятся автоматически. Проверить, имеет ли компонент связанные копии, можно, открыв для него диалог просмотра / модификации атрибутов (см. ниже). Вместе с данным компонентом также будут выделены другим фоном и все его связанные копии.
Копировать можно только присоединенные компоненты. Если Вам нужно получить копию отсоединенного компонента, временно включите его в схему на свободном месте. Для получения копии:
Следует добавить, что копирование и связывание атрибутов компонентов не происходит чисто механически. Если дублирование какого-либо атрибута не имеет смысла (например нет смысла иметь в схеме два элемента с одинаковым идентификатором или два индикатора с одинаковым цветом графиков), то для этого атрибута копирование и связывание не происходит.
Альтернативные способы перемещения и копирования компонента
Получить несвязанные копии компонента можно также, просто взяв его в качестве образца (клавиша Insert) и затем установить образец в другое место схемы (возможно, многократно) (клавиша Insert или кнопка мыши).
Переместить компонент можно, удалив его (клавиша Delete), затем взять удаленный элемент в качестве образца (клавиша U) и затем установить его на новое место (возможно, многократно) (клавиша Insert или кнопка мыши).
Альтернативного способа получения связанной копии не существует.
Трансформирование компонента
В общем случае, если изображение компонента несимметрично, оно может быть ориентировано на схеме восемью различными способами.
Для того, чтобы придать изображению компонента нужную ориентацию, используются операции трансформирования изображений:
Операция |
Клавиша |
Иконка контекстного меню |
Вращение на 90° против часовой стрелки |
L |
1-я в нижнем ряду |
Вращение на 90° по часовой стрелке |
R |
2-я в нижнем ряду |
Вращение на 180° |
C |
3-я в нижнем ряду |
Горизонтальная симметрия |
H |
4-я в нижнем ряду |
Вертикальная симметрия |
V |
5-я в нижнем ряду |
Последовательность действий при трансформировании графического изображения:
1. Установите курсор на компонент, который хотите трансформировать, или установите курсор так, чтобы на экране было видно изображение компонента-образца (если нужно трансформировать его; см замечания Б,В,Г ниже).
2. Нажмите клавишу L,R,C,H или V (см. таблицу) или выберите соответствующую иконку контекстного меню. Если данная трансформация возможна, изображение компонента изменит ориентацию.
Замечания:
А. Для некоторых компонентов разработчик может запретить любые или некоторые операции трансформирования. Это может определяться, например, требованиями ГОСТа на графическое изображение компонента.
Б. Если дополнительный курсор имеет вид компонента-образца, операция трансформирования производится над образцом.
В. Если курсор указывает на отсоединенный от схемы компонент, операция трансформирования производится над ним.
Г. Если курсор указывает на присоединенный компонент, операция также производится над ним, однако в этом случае есть исключение: операция не выполняется, если изменяется поле, которое компонент занимает на схеме. (Это происходит при операциях “L” и “R” в том случае, если высота и ширина компонента различны). Если Вам нужно повернуть присоединенный компонент, временно отсоедините его.
Д. Для получения некоторых ориентаций изображения могут потребоваться две последовательно выполненные операции трансформирования.
Е. Для того, чтобы получить полную информацию о том, какие операции трансформирования для компонента возможны, откройте контекстное меню.
Добавление в схему связей между компонентами
При проведении новой связи в каждой ячейке поля схемы, через которую она прошла, к ней автоматически присоединяются все ранее существовавшие связи и все внешние выводы присоединенных компонентов, расположенные в смежных ячейках. Если Вы проводите новую связь поверх существующей, то в этом случае фактически только выполняется корректировка соединений связи с соседними ячейками. Связи, не соединенные ни с какими компонентами на процесс моделрования не влияют.
Добавление базового узла
Если при выполнении данной операции к ячейке было подведено более одной связи, то в этом случае выполняется коррекция соединений данной ячейки со смежными. Если не было подведено ни одной связи, никакие действия не выполняются. Базовые узлы, не соединенные ни с какими компонентами и связями на процесс моделирования не влияют.
Удаление связей и базовых узлов
При удалении связей соседние с ней ячейки, содержащие связи, модифицируются, отсоединяясь от удаляемой связи. Если Вам нужно удалить связь или базовый узел только в одной ячейке, не затрагивая соседние, то установите курсор в ней, нажмите клавишу Delete и щелкните кнопкой мыши. В процессе удаления связей компоненты схемы не затрагиваются, для их удаления предусмотрена другая процедура (см. выше).
Соединение / разъединение связей в точке пересечения
Просмотр и корректировка атрибутов компонента
Можно просматривать и корректировать атрибуты любых компонентов, как присоединенных, так и отсоединенных. На экране может быть открыто одновременно несколько диалогов для различных компонентов схемы (но не для одного и того же и не для связанных копий). Для этого просто повторите действия этого раздела для другого компонента, при этом учтите, что при открытии диалога поле схемы теряет фокус ввода, и сначала его надо вернуть щелчком мыши. Диалоги с атрибутами компонентов являются немодальными, т.е. не закрывая их можно выполнять другие операции. Более подробно диалоговые окна для различных компонентов схемы описаны ниже.
Просмотр и корректировка атрибутов компонента-образца
А. До выбора образца из базы
ПРИМЕЧАНИЕ 1. Если остается открытым хотя бы один диалог перемещаться между страницами окна образцов невозможно.
ПРИМЕЧАНИЕ 2. Внесенные таким способом изменения в базу данных образцов компонентов действуют до конца сеанса работы ПА9. При следующем запуске будут восстановлены атрибуты по умолчанию.
Б. После выбора образца из базы
Выполнение задания на расчет
Для моделирования необходимо сформировать задание (или несколько заданий) на расчет. Задание представляет собой группу специальных компонентов - операторов задания на расчет, расположенных в любом месте поля схемы, но обязательно строго один под другим (без пропусков ячеек) в соответствии с порядком выполнения операторов в задании. Чтобы оператор выполнялся, он должен быть обязательно присоединен к схеме. В одной схеме можно сформировать несколько заданий на расчет, расположив их в разных местах. Частным случаем (и достаточно частым) является ситуация, когда в схеме присутствует только одно задание на расчет, причем состоит оно из единственного оператора. Для выполнения задания:
Выполнение задания всегда начинается с первого оператора, не зависимо от того, на какой из операторов указывал курсор.
Моделирование схемы является самостоятельным процессом операционной системы, выполняемым параллельно с процессом редактирования, поэтому запустив задание на выполнение можно продолжить работу с редактором. После закрытия окна графиков не забудьте вернуть полю схемы фокус ввода.
Команды главного меню и дополнительные функции
Главное меню присутствует только, если ПА9 запускается как самостоятельная программа. В апплетах некоторые функции главного меню можно воспроизвести нажатием клавиш на клавиатуре.
Для завершения сеанса работы ПА9 используйте команду меню Файл / Завершить работу или закройте окно схемы. В апплетах функции завершения не предусмотрено, однако Вы можете просто перейти на другой сайт или закрыть окно браузера.
Для очистки схемы и начала формирования новой используйте команду меню Файл / Создать. В апплетах для возврата схемы в исходное состояние используйте команду браузера “Shift+Reload”.
Для загрузки ранее сохраненной схемы используйте команду меню Файл / Открыть. В апплетах эта функция не используется. Загружаемую схему задает разработчик WWW-страницы.
Для сохранения схемы в файле используйте команду меню Файл / Сохранить (под тем же именем) или Файл / Сохранить как (под другим именем). В апплетах эта функция не используется.
Команда Вид / Обновить экран позволяет перечертить поле схемы, если на ней появятся какие-либо искажения. В апплетах для этой цели можно использовать клавишу F.
Команда Вид / Перенумеровать используется для изменения обозначений компонентов схемы - компоненты нумеруются слева направо / сверху вниз в соответствии с их буквенным обозначением. В апплетах для выполнения этой операции нажмите клавишу E.
Для изменения языка пользовательского интерфейса с английского на русский и наоборот (только в апплетах) используется клавиша G.
С помощью команды Окно / Текстовый редактор можно посмотреть описание схемы на текстовом входном языке. В апплетах эта функция не используется.
Для того, чтобы взять в качестве образца компонент, который еще не включен в файлы образцов, нажмите клавишу F6. В открывшимся диалоговом окне укажите имя компонента (если оно начинается с префикса EL$, то этот префикс опускается, в противном случае перед именем надо поставить знак “$”). Если компонент использует модификатор, укажите также и его. В апплетах эта функция не используется.
Краткая сводка команд клавиатуры
В фигурных скобках приведены номера иконок контекстного меню, соответствующих данной операции.
Атрибуты элементов и источников сигналов
Типовой вид диалогового блока просмотра/изменения атрибутов для элементов и источников сигналов приведен на рисунке.
Обозначение и наименование типа (если оно используется) служат только для идентификации элемента на схеме и на расчет не влияют. Если элемент имеет несколько математических моделей, можно выбрать для использования при расчете любую из них. При этом, если разные модели имеют одноименные параметры, то их значения при изменении модели будут скопированы. Однако, копироваться будут лишь сохраненные значения, поэтому, если Вы изменяете модель после того, как изменили значения параметров, нажмите сначала кнопку “Применить”. Элемент может иметь необязательные параметры, которые всегда могут находиться только в конце списка. Включать и выключать необязательные параметры можно, устанавливая и сбрасывая флажок напротив них. При этом, если какой-либо параметр включается, также включаются и все предшествующие ему. При выключении параметра также выключаются и все следующие за ним. В окне отображается не более 10 параметров. Если элемент использует большее количество параметров, справа от списка появляется лифт. При редактировании численных значений параметров можно использовать помимо обычных клавиш редактирования, следующие:
Если при вводе значения Вы допустили ошибку, кнопки “OK” и “Применить” становятся
неактивными и введенное значение сохранить нельзя. Наиболее вероятная причина
этого - неверный формат действительного числа.
При копировании элементов и источников сигналов:
Атрибуты индикаторов
Диалоговый блок для задания атрибутов индикаторов приведен на рисунке.
Обозначение индикатора служит для идентификации на графиках
соответствующей расчетной величины. По умолчанию индикаторы получают обозначения
Out, Out1, Out2 и т.д. Флажок “Включен” используется для оперативного включения/выключения
индикатора, при этом корректность формирования математической модели схемы не
нарушается. Верхний и нижний предел задают диапазон, в котором будет строиться
график. При задании пределов следите за тем, чтобы верхний предел был больше
нижнего. Флажок автокоррекции разрешает автоматическое расширение диапазона
построения графиков по ходу счета в случае , если фактические значения выйдут
за указанные пределы. Если установлен флажок автокоррекции, пределы вообще можно
не указывать, в этом случае они будут подобраны автоматически. Для выбора цвета,
которым будет строиться график соответствующей расчетной величины щелкните кнопкой
мыши в нужной точке цветового круга. При создании связанной копии индикатора
связываются значения пределов и флажок автокоррекции. Флажок активности, обозначение
и цвет изменяются независимо.
Атрибуты операторов
Для различных операторов форма диалогового блока может отличаться, однако все они содержат типовые элементы, которые мы рассмотрим на примере оператора анализа динамики.
Как правило, большинство параметров операторов задавать не обязательно - можно использовать значения по умолчанию. Если Вы хотите задать значение какого-либо параметра, установите флажок перед его условным обозначением и затем введите численное значение или выберите значение из списка. Обязательные параметры такого флажка не меют, их значение должно быть задано обязательно. Если оператор имеет альтернативные параметры, то условное имя того, который Вы хотите задать, нужно выбрать из списка.
В диалоговом окне операторов всегда присутствует дополнительная кнопка - “Выполнить задание”. Ее действие аналогично нажатию клавиши X., если курсором выбран данный оператор.
При копировании, как правило, копируются все атрибуты оператора, но связывание для них не производится.
Атрибуты комментариев
Для комментариев, включаемых в схему можно задать следующие атрибуты (см рисунок).
Поля ввода используются для задания текста комментария (он может состоять из нескольких строк). Если задан текст на двух языках, то на схеме будет отображаться тот из них, который соответствует языку пользовательского интерфейса. Атрибуты шрифта задаются полями “Тип” (рубленый, пропорциональный, моноширинный), “Стиль” (полужирный, курсив), и размер (при задании размера 24 высота букв примерно равна размеру ячейки сетки). Поля “Ширина” и “Высота” задают размер поля, которое займет комментарий (в ячейках сетки). Выбрать этот размер можно, основываясь на информации в последней строке - здесь вычисляется минимальный необходимый размер, причем с учетом двух возможных вариантов языка. Если Вы укажете фактический размер меньше рекомендуемого, комментарий будет обрезан. Для задания цвета используется такой же цветовой круг, что и для индикаторов.
При связанном копировании комментариев связываются только атрибуты шрифта и цвет.
Атрибуты переключателей
Переключатели имеют единственный атрибут - это их состояние.
Поскольку состояние ключа видно непосредственно на схеме, для него не было смысла создавать специальный диалоговый блок, вместо открытия диалогового блока, ключ просто изменяет свое состояние. Для переключателей возможно связанное копирование - при переключении одной из копий переключатся и все остальные.
В дальнейшем при развитии ПА9 в состав ее библиотек могут быть включены и другие компоненты.