Технология моделирования в среде Xcos
Пакет Xcos является приложением к системе Scilab. При моделировании с использованием Xcos реализуется принцип визуального программирования, в соответствии с которым разработчик на экране из стандартных библиотечных блоков создает модель устройства и осуществляет расчеты.
При этом, в отличие от классических способов моделирования, разработчику не нужно досконально знать язык программирования и численные методы математики, а достаточно общих знаний, требующихся при работе на компьютере и, естественно, знаний той предметной области, в которой он работает. При работе с Xcos есть возможность модернизировать библиотечные блоки, создавать свои собственные, а также составлять новые библиотеки блоков.
При моделировании разработчик может выбирать метод решения дифференциальных уравнений, а также способ изменения модельного времени (с фиксированным или переменным шагом). В ходе моделирования имеется возможность следить за процессами, происходящими в системе. Для этого используются специальные устройства наблюдения, входящие в состав библиотеки Xcos. Результаты моделирования могут быть представлены в виде графиков или таблиц.
Создание моделей в пакете Xcos основывается на использовании технологии Drag-and-Drop (перетяни и оставь). В качестве «кирпичиков» при построении модели используются визуальные блоки (модули), которые хранятся в библиотеке Xcos. Xcos-модель может иметь иерархическую структуру, т. е. состоять из моделей более низкого уровня, причем количество уровней иерархии практически не ограничено. На протяжении моделирования есть возможность наблюдать за процессами, которые происходят в системе. Для этого используются специальные блоки («обзорные окна»), входящие в состав библиотек Xcos. Состав библиотек Xcos может быть пополнен пользователем за счет разработки собственных блоков.
Для каждого блока в Xcos разработчик может настраивать определенные параметры, переменные, установки моделирования. Эти параметры сохраняются вместе с файлом модели, поэтому даже в том случае, когда файл будет открыт на другом компьютере, установки будут использованы те же. Возможность настройки опций появляется после того, как блок размещен в рабочей области проекта и открыто окно его настроек, которое в зависимости от выбранного блока будет содержать разные поля ввода. Необходимо отметить, что открыть окно настроек блока можно путем двойного щелчка на блоке левой кнопкой мыши.
Для запуска Xcos необходимо предварительно запустить программную среду Scilab, а затем в основном меню «Инструменты» выбрать пункт «Визуальное моделирование Xcos». В результате чего будет открыто окно обозревателя разделов библиотеки Xcos (рис. 1) и новый файл модели (рис. 2). Запустить окно обозревателя разделов библиотеки Xcos из окна нового файла модели можно при помощи команды «Вид/Палитры блоков» основного меню.
Рис. 1. Окно обозревателя разделов библиотеки Xcos
Рис. 2. Новый файл Xcos-модели
Описание библиотеки Xcos
Для облегчения работы с пакетом специалистам различных областей науки и техники вся библиотека функций разбита на разделы. Те из них, которые носят общий характер, входят в состав ядра Scilab. Те же функции, которые являются специфическими для конкретной области, включены в состав пакетов расширения.
Список разделов библиотеки реализован в виде дерева в левой части окна «Палитры блоков». После выбора раздела, в правой части окна будет отображено его содержимое – набор блоков. Рисунок 3а демонстрирует набор блоков раздела «Общеупотребительные блоки» библиотеки Xcos. Блоки, которые входят в раздел «Источники сигналов и воздействий» (рис. 3б), предназначены для формирования сигналов, которые обеспечивают работу Xcos-модели в целом или отдельных ее частей при моделировании. Все блоки-источники имеют по одному информационному выходу и не имеют информационных входов.
Рис. 3. Набор блоков библиотеки Xcos раздела: (а) «Общеупотребительные блоки»
Рис. 3. Набор блоков библиотеки Xcos раздела: (б) «Источники сигналов и воздействий»
Блоки, собранные в разделе «Регистрирующие устройства» (рис. 3в), имеют только входы и не имеют выходов данных.
Рис. 3. Набор блоков библиотеки Xcos раздела: (в) «Регистрирующие устройства»
Условно их можно разделить на 3 вида:
- блоки, которые используются как обзорные окна при моделировании;
- блоки, обеспечивающие сохранение промежуточных и исходных результатов моделирования;
- блок управления моделированием, который позволяет перерывать моделирование при выполнении тех или других условий (например, по истечении заданного времени симуляции).
Раздел «Системы с непрерывным временем» (рис. 3г) содержит блоки, которые можно условно поделить на три группы:
- блоки общего назначения (интеграторы, дифференциаторы);
- блоки задержки сигнала;
- блоки линейных стационарных звеньев.
Рис. 3. Набор блоков библиотеки Xcos раздела: (г) «Системы с непрерывным временем»
В раздел «Системы с дискретным временем» (рис. 3д) входят блоки, с помощью которых в модели может быть описано поведение дискретных систем. Раздел «Математические операции» (рис. 3е) – один из наибольших по составу.
Рис. 3. Набор блоков библиотеки Xcos раздела:(е) «Математические операции»
Рис. 3. Набор блоков библиотеки Xcos раздела: (ж) «Системы с разрывами»
Он содержит 25 блоков, которые можно разделить на несколько групп:
- блоки, реализующие элементарные математические операции (умножения, суммирования разных математических объектов);
- блоки, реализующие элементарные математические функции;
- блоки, обеспечивающие логическую обработку входных сигналов;
- блоки, которые преобразуют комплекснозначный сигнал в два действительных и наоборот тем или другим способом.
Раздел «Системы с разрывами» (рис. 3ж) содержит 7 элементов, которые реализуют разного вида кусочно-линейные зависимости выхода от входа или осуществляют разного вида переключения сигнала.
Построение моделей в среде Xcos
После запуска Xcos автоматически открываются два окна: окно построения модели и окно «Палитры блоков». Для создания модели необходимо выбрать нужные блоки из библиотеки Xcos и разместить их в рабочей области программы, настроить параметры для каждого отдельного блока модели, соединить блоки между собой, выполнить установку параметров расчета при помощи команды «Моделирование/Установка», после чего запустить моделирование нажатием кнопки «Запустить» на панели инструментов окна модели Xcos.
Общая схема разработки моделей в среде Xcos может быть следующей:
- описание логики поведения исследуемой системы;
- определение списка блоков, которые соответствуют основным компонентам системы, а также дополнительных блоков, необходимых для расчетов;
- размещение в окне блок-диаграммы нужных блоков и соединение их между собой в соответствии с логикой работы модели;
- установка необходимых значений параметров моделирования;
- дополнение блок-диаграммы модели необходимыми текстовыми комментариями;
- сохранение блок-диаграммы модели в файле на диске компьютера еще до первого запуска модели на выполнение;
- выполнение сеанса моделирования.
По окончании последнего этапа разработки модели может оказаться, что разработчик чего то не учел или сделал не совсем то, что хотел. В связи с этим уместно напомнить, что моделирование это процесс творческий. Для того, что бы модель удовлетворяла предъявленным к ней требованиям, как по формальным, так и по субъективным критериям, возможно, что окажется необходимым неоднократное повторное выполнение одного или даже нескольких шагов приведенной выше схемы разработки модели.
Александр Чёрный
Комментарии
Подкину пару книжек по Xcos для начинающих:
И более серьезную, от разработчиков. Там есть, в частности, полезные приемы по отладке:
Campbell S.L., Chancelier J.-P., Nikoukhah R. Modeling and Simulation in Scilab/Scicos with ScicosLab 4.4, 2nd Edition. — Springer, 2010. — 330 p.