122 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Моделирование систем в программной среде Scilab & Xcos 5.5.1. Часть 3

Введение. Руководство по Scicos – составной части свободно распространяемого пакета Scilab предназначено для первого знакомства и приобре;

Тамбов

РУКОВОДСТВО

ПАКЕТ SCILAB ДЛЯ МОДЕЛИРОВАНИЯ ДИНАМИЧЕСКИХ СИСТЕМ

SCICOS

2009

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

В тексте пособия не делались ссылки на используемую литературу, чтобы не затруднять работу с руководством. Список использованной литературы приведен в конце руководства.

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

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

Свободно распространяемый пакет Scilab был разработан в 1994 году во Франции, в Национальном исследовательском институте информатики и автоматизации INRIA и Национальной школе дорожного ведомства ENPC. С 2003 года поддержкой Scilab занимается консорциум Scilab Consortium.

Scicos (Scilab Connected Object Simulator) – составная часть пакета Scilab. Scicos в его составе обеспечивает возможность визуального моделирования динамических систем. Эти моделируемые системы могут быть как непрерывными, так и дискретными.

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

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

Scilab – пакет числовой обработки данных. Он очень хорош для обработки сигналов. Основной режим работы – командный. К основным функциям пакета Scilab можно отнести работу с матрицами (в том числе разреженными), решение обыкновенных дифференциальных уравнений, численное дифференцирование и интегрирование, построение двумерных и трехмерных графиков по формулам и по результатам расчетов, решение задач линейного программирования, а также возможность создания пользовательских программ. Пакет является кроссплатформенным, на сайте проекта (http://www.scilab.org/) можно найти самые последние сборки для различных операционных систем. На русском языке подробную информацию и пособия по работе с пакетом можно получить как на сайте http://www.csa.ru/

zebra/my_scilab/, так и на сайте http://www.scilab.land.ru/.

С системой Scilab доступны следующие комплекты инструментов:

• 2-х и 3-х мерная графика, анимация;

• линейная алгебра, матрицы;

• полиномы и рациональные функции;

• моделирование: ОДУ и ДАУ решатель;

• классическое и робастное управление, LMI оптимизация;

• дифференциальная и недифференциальная оптимизация;

• параллельно Scilab, используемый PVM;

• интерфейс с компьютерной алгеброй: генерация кодов пакетом Maple для Scilab;

Перечислим основные составные части Scicos.

• Графический редактор: Scicos предоставляет иерархическому графическому редактору для строительства моделей динамических систем, используя блок-схемы. Многие предопределенные блоки также предоставлены в различных палитрах. Новые блоки могут быть определены пользователем в C, Fortran’ е или Scilab.

• Компилятор: компилятор Scicos использует образцовое описание, обычно собираемое редактором Scicos, построить столы планирования, которые могут тогда использоваться тренажером и кодовой функцией поколения.

• Симулятор: симулятор Scicos использует таблицы планирования и другую информацию, предоставленную компилятором, чтобы управлять моделированиями. Симулятор имеет гибридную природу, при которой он должен иметь дело с дискретными и непрерывными системами времени, и событиями. Для непрерывного времени используется решатель однородных дифференциальных уравнений (ОДУ) LSODAR или решатель дифференциальных алгебраических уравнений (ДАУ) DASKR в зависимости от природы рассматриваемой непрерывной системы.

• Генератор объектного кода: Scicos может генерировать код C для того, чтобы «понять» поведение некоторых подсистем. Эти подсистемы не должны включать непрерывные во времени компоненты.

Scicos – независимое программное приложение для моделирования, но доступ к Scilab и его функциональным возможностям обеспечивает большую гибкость и расширяет диапазон возможностей моделирования.

Например, при обработке сигнала, легче использовать функции Scilab и написать маленькую программку, чем писать код для базовых функций обработки сигнала. Кроме того, Scilab воспринимает модель Scicos как функцию. Это удобно, когда нужно управлять пакетной работой Scicos.

Наличие доступа к функциям Scilab, при создании моделей очень важно.

1. Пользователь Scicos часто имеет необходимость использовать функции Scilab, например предназначенные для создания фильтров обработки сигналов и др.

2. Язык программирования Scilab может использоваться для пакетной обработки множества задач моделирования или обобщая – модели, разработанные Scicos, могут использоваться как функции в Scilab.

3. Графические возможности Scilab могут использоваться для последующей обработки результатов моделирования.

Но интеграция Scicos и Scilab идет дальше. Редактор Scicos полностью написан на языке Scilab и это обеспечивает много преимуществ:

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

гибкость в проектировании формы и изображений блоков и связей (стандартная графика Scilab);

простота разработки и отладки;

Scicos переносим на новую платформу, на которую переносим Scilab;

структура данных Scicos аналогична структуре данных Scilab и может быть обновлена функциями Scilab: легкий способ взаимодействия с блоками.

Есть и неудобства:

Scilab – интерпретируемый язык и для очень больших моделей, некоторые функции редактора могут быть медленными;

ограниченные возможности графического интерфейса.

Обычно, создание простой новой модели Scicos предусматривает выполнение следующих операций:

Читать еще:  Как вытащить файлы с поврежденной флешки?

запуска Scicos с пустым окном;

открытия одной или более палитр;

копирования нужных блоков из палитр в окно;

установки параметров блоков нужной величины;

соединения входов и выходов блоков;

компиляцию и запуск модели;

переименования и сохранения.

Вышеуказанное не включает использование более сложных операций, как например, создание суперблочных конструкций, создание новых базовых блоков, и т.п., а также косметических операций, как например, редактирование иконок, окрашивание или изменение размеров блоков в окне. Эти операции будут рассмотрены ниже.

Ниже, мы последовательно, по операциям выполним простой сеанс Scicos, в котором создадим модель и запустим ее.

Для запуска Scicos необходимо выбрать Scicos в меню Applications или набрать в основном окне Scilab:

Открывается основное окно Scicos с пустым полем. Вид основного окна может немного различаться из-за различия операционных систем. Чтобы загрузить уже существующую модель, имя файла модели должно быть использовано как аргумент в одиночных кавычках с расширением. Например:

Окно остается открытым в течение всего сеанса Scicos. Откроем палитру блоков. Для того, чтобы открыть ее, выберите Palette в меню Edit и найдите имя нужной палитры среди предлагаемых.

Палитра содержит имеющиеся блоки Scicos. В Scicos есть три типа базовых блоков: обычные базовые блоки, блоки пересечения нуля и блоки синхронизации. Эти блоки могут быть скопированы в окно, которое используется для создания модели Scicos. Эти палитры не могут быть отредактированы. Для редактирования палитры, она должна быть загружена как элемент модели Scicos. Подробнее рассмотрим это ниже. Ниже показан вид палитры источников сигналов (Sources).

Перечень палитр и их состав с краткой характеристикой элементов дан ниже.

Моделирование систем в программной среде Scilab & Xcos 5.5.1

Xcos – это приложение, которое входит в состав системы математического моделирования Scilab, и предоставляет разработчикам возможности проектирования систем в области механики, гидравлики и электроники, а также систем массового обслуживания. Xcos представляет из себя графическую интерактивную среду, в основе которой лежит блочное моделирование. Приложение предназначено для решения задач динамического и ситуационного моделирования систем, процессов, устройств, а также тестирования и анализа этих систем. При этом моделируемый объект (система, устройство, процесс) представляется графически своей функциональной параметрической блок-схемой, включающей блоки элементов системы и связи между ними.

Мы расскажем об общих аспектах имитационного моделирования, а также познакомим с пакетом Xcos.

Концепция имитационного моделирования.

Основная задача моделирования состоит в том, чтобы дать разработчику технологию создания таких моделей которые достаточно полно и точно фиксируют свойства объектов оригиналов, поддаются исследованию и допускают возможность переноса результатов исследований на оригиналы. Моделирование представляет собой метод исследования, который является формой отображения действительности и заключается в воспроизведении свойств реальных объектов при помощи виртуальных объектов.

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

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

Общие сведения о пакете Xcos

В связи с повсеместным развитием современных компьютерных технологий существенно изменились подходы к решению проблем проектирования сложных технических систем. Как один из самых перспективных прикладных пакетов, в первую очередь, следует отметить систему математического моделирования Scilab, интеграция которой, с пакетом Xcos открывает новые возможности использования самых современных математических методов для решения задач динамического и ситуационного моделирования сложных систем, процессов, устройств начиная от структурного (математического) представления системы и заканчивая макетированием системы в реальном времени.

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

программная среда Xcos: пример Xcos-модели:

результаты ее работы:

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

Xcos отличается от Scilab тем, что Scilab это высокоуровневый язык программирования, а Xcos – это система графического моделирования на основе блок-схем, которая состоит из предварительно скомпилированных библиотек. Для визуального представления сигналов в Xcos можно использовать различные блоки визуализации. Модели Xcos хранятся в файлах с расширением .zcos или .xcos. Модель можно открыть двойным щелчком мыши на файле модели в текущем каталоге или при помощи команды «Файл/Открыть» в Xcos.

В Xcos моделируемый объект (система, устройство, процесс) представляется графически своей функциональной параметрической блок-схемой, включающей блоки элементов системы и связи между ними. Функциональные блоки элементов моделируемой системы могут, в свою очередь, представлять вложенные подсистемы со своей организацией, образуя иерархические структуры. Ценность Xcos заключается и в обширной, открытой для изучения и модификации библиотеке компонентов (блоков).

Она включает источники сигналов с практически любыми временными зависимостями, масштабирующие, линейные и нелинейные преобразователи с разнообразными формами передаточных характеристик, квантующее устройство, интегрирующие и дифференцирующие блоки и т. д. Как программное средство Xcos – типичный представитель визуально-ориентированного языка программирования.

На всех этапах работы, особенно при подготовке моделей систем, пользователь практически не имеет дела с обычным программированием. Программа автоматически генерируется в процессе ввода выбранных блоков, их соединений и задания параметров. Для описания процессов, протекающих в технологических системах, могут использоваться различные типы объектов по характеру изменения во времени:

– дискретные (например, размер поверхности, качество в ходе технологического процесса);

Читать еще:  Как сохранить анонимность в интернете?

– непрерывные, среди которых: апериодические (например, размерный износ инструмента), циклические (например, тепловые изменения оборудования за смену).

Практически для всех блоков существует возможность индивидуальной настройки: можно изменять как внутренние параметры блоков (количество входов) так и их внешний вид (размер).

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

Модельно-ориентированное проектирование обеспечивает раннее выявление ошибок. Xcos является основой для модельно-ориентированного проектирования, автоматической генерации кода, тестирования и верификации моделей, имеет открытую архитектуру для интеграции моделей из других инструментов. Необходимость разрабатывать модели устройств возникает по причине дороговизны и большого времени на изготовление прототипов. Е

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

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

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

10 февраля 2014 года вышел новый релиз среды Scilab & Xcos (версия 5.5.1). Для установки Scilab & Xcos 5.5.1 рекомендуется следующая конфигурация компьютера:

– операционная система: Windows XP/Vista/7/8, Linux CentOS/Debian/Redhat/Fedora/Suse/Ubuntu – 32 и 64 bits;

– процессор c поддержкой SSE2;

– рекомендуемый объем оперативной памяти: 1 – 2 Gb;

– для полной инсталляции программы необходимый размер дискового пространства – 550 Mb.

Моделирование систем в программной среде Scilab & Xcos 5.5.1. Часть 3

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

Xcos интегрирован в среду Scilab, что позволяет использовать встроенные математические алгоритмы и мощные средства обработки данных. Инженеры и ученые со всего мира используют среду Scilab & Xcos для модельно-ориентированного проектирования (имитационного моделирования), разработки систем управления, систем связи, анализа и сбора данных, а также для иных вычислительных задач. В этой статье рассмотрена настройка параметров, просмотр результатов и работа со следующими блоками Xcos: LOGIC, MUX, CONST_m, CLOCK_c, CONVERT, AFFICH_m. Приведен пример построения модели с использованием блоков Xcos.

Создание модели работы дешифратора.

В качестве примера создания модели в среде Xcos рассмотрим построение блок-диаграммы для решения задачи моделирования работы дешифратора на четыре выхода. Дешифратор преобразует входной двоичный код в такой выходной код, в котором только на одном из всех выходов имеется единица. Сигнал на входы дешифратора поступает от двух источников: Источник 1, Источник 2. Результат, полученный с выхода дешифратора необходимо зарегистрировать (визуально отобразить). В таблице 1 представлена таблица истинности работы дешифратора. Где: C – управляющий сигнал, X0 и X1 – входные сигналы, Y0 – Y3 – выходные сигналы.

Таблица 1. Таблица истинности работы дешифратора.

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

Для решения задачи моделирования работы дешифратора выберем следующие блоки библиотеки Xcos:

– LOGIC (раздел библиотеки «Целое число») – блок обеспечивает преобразование входных булевых величин в выходную в соответствии с заданной таблицей истинности, которая задается пользователем явно или при помощи функций (в нашем случае мы использовали функции zeros( ) и eye( )) в поле «Таблица истинности (матрица значений на выходе)» окна настроек параметров блока;

– MUX (раздел библиотеки «Общеупотребительные блоки») – данный блок выполняет объединение входных величин в единый выходной вектор. Порядок элементов в векторе выхода определяется порядком входов (сверху вниз). Количество входов данного блока (оно же размер выходного вектора) задается в поле number of input ports or vector of size окна настроек параметров блока;

– CONST_m (раздел библиотеки «Общеупотребительные блоки») – формирует постоянную величину. Значение константы вводится в окне настроек параметров данного блока в поле «Постоянное значение». Так же в этом поле может устанавливаться тип данных выходных значений данного блока;

– CLOCK_c (раздел библиотеки «Обработка событий») – является источником сигналов активации для блоков, имеющих управляющий вход. Если блок имеет управляющий вход, то он срабатывает каждый раз, когда на него поступает сигнал активации. Поведение блока, не имеющего управляющего входа, определяется его внутренними параметрами;

– CONVERT (раздел библиотеки «Общеупотребительные блоки») – используется для преобразования типа данных;

– AFFICH_m (раздел библиотеки «Регистрирующие устройства») – данный блок при моделировании играет роль обзорного окна. Он имеет один вход данных и один управляющий вход и предназначен для отображения на экране численных значений входных величин, фигурирующих в блок-диаграмме. Для блока можно настроить следующие параметры (рис. 1а):

Читать еще:  Флешка разбита на два диска как объединить?

Рис. 1. Окно настроек параметров блока: (а) AFFICH_m

– Input Size – размерность матрицы входных значений;

– Font number – номер шрифта;

– Font size – размер шрифта;

– Color – цвет шрифта;

– Number of rational part digits – количество знаков после запятой;

– Block inherits (1) or not (0) – обрыв управляющей связи с блоком.

Блок AFFICH_m может использоваться для вывода как скалярных, так и векторных величин. Если отображаемая величина является вектором, то размер блока необходимо будет увеличить – растянуть при помощи мыши. Для этого следует выделить блок, подвести курсор мыши к одному из его углов, нажать левую клавишу мыши и, не отпуская ее, растянуть изображение блока до нужных размеров.

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

Логика поведения дешифратора для разных значений входных сигналов описывается в поле «Таблица истинности (матрица значений на выходе)» окна настройки параметров блока LOGIC (рис. 1б).

Рис. 1. Окно настроек параметров блока: (б) LOGIC

В соответствии с представленной в таблице 1 таблицей истинности параметр «Таблица истинности (матрица значений на выходе)» должен быть представлен в виде матрицы, которая имеет следующий вид [1 0 0 0; 0 1 0 0; 0 0 1 0; 0 0 0 1]. Однако правила синтаксиса данного поля не позволяют задать матрицу значений именно в таком виде. Для решения этой задачи можно воспользоваться функциями zeros( ) и eye( ). Функция zeros(m1,m2) создает матрицу составленную из нулей, где m1, m2 – размер матрицы. Функция eye(m,n) в соответствии со своими аргументами определяет матрицу mxn с единицами по главной диагонали. Таким образом, результатом выражения [zeros(4,4); eye(4,4)] будет матрица размерностью 4х4 заполненная нулями с единицами по диагонали. После запуска моделирования в зависимости от комбинации входных сигналов, на выход блока LOGIC будет подана одна из строк матрицы. Значения входных сигналов в явном виде в окне настроек данного блока не указываются.

Отобразить результаты моделирования на экране можно при помощи блока AFFICH_m. Однако, этот блок имеет такую особенность – на его вход может поступать только один сигнал, а из поставленной задачи известно что дешифратор имеет четыре информационных выхода. Поэтому необходимо объединить четыре отдельных значения поступающих с блока LOGIC в один вектор. Решить эту задачу можно при помощи блока MUX. Входные значения блока LOGIC задаются в окне настроек блоков CONST_m в поле «Постоянное значение» (рис. 1в).

Рис. 1. Окно настроек параметров блока: (в) CONST_m

Для упрощения чтения блок-диаграммы присвоим блокам осмысленные имена: для блоков CONST_m – Источник 1 и Источник 2, Сигнал управления, блоку LOGIC – Дешифратор, блоку AFFICH_m – Результат. Для того, что бы добавить имена, можно воспользоваться блоком TEXT_f (раздел библиотеки «Примечания»). Для этого выберите блок TEXT_f в окне «Палитры блоков» и переместите его при помощи мыши в рабочее поле программы. Для ввода текстовых надписей в данном блоке необходимо дважды щелкнуть по нему левой кнопкой, в результате чего указатель примет вид мигающей черточки. Далее необходимо при помощи клавиатуры стереть стандартное название блока и ввести свое, после чего щелкнуть левой кнопкой мыши в свободной области блок-диаграммы.

После того как все блоки размещены в поле блок-диаграммы, соединим их в соответствии с логикой их взаимодействия: сигналы с выходов блоков Источник 1, Источник 2, Сигнал управления должны поступать на входы блока Дешифратор. Далее соединим выходы блока Дешифратор с входом блока Результат через блоки CONVERT и MUX. В Xcos может случиться так, что при построении модели типы данных порта источника и приемника информационного сигнала могут отличаться. Для их согласования используют блок CONVERT. При этом тип входного сигнала указывается в поле «Тип на входе», а тип выходного сигнала – в поле «Тип на выходе» окна настроек параметров блока (рис. 1г).

Рис. 1. Окно настроек параметров блока: (г) CONVERT

Блок MUX преобразует полученные с блока CONVERT сигналы в вектор значений и передает далее полученный вектор на вход блока Результат. Далее соединим выход блока CLOCK_c с входом блока Результат. На рисунке 2 показана собранная нами блок-диаграмма.

Рис. 2. Модель дешифратора в рабочей области Xcos

Сохраним нашу модель на диск компьютера при помощи команды основного меню «Файл/Сохранить как» и проведем пробное моделирование, посредством нажатия кнопки «Запустить» на панели инструментов окна модели Xcos. В процессе моделирования системой могут быть обнаружены ошибки, описание которых будет представлено во всплывающем окне (рис. 3).

Рис. 3. Окно описания ошибок симуляции модели и цветные подсказки, указывающие на область блок-диаграммы в которой возникла ошибка

В то же время на блок-диаграмме модели будут отображены цветные маркеры, которые указывают на область диаграммы, в которой возникла ошибка. В нашем случае (как видно из рисунка) ошибка заключается в том, что входные и выходные сигналы имеют разный тип. Для того, что бы исправить эту ошибку зайдем в окно настроек блока CONVERT и изменим параметр «Тип на выходе» – установим значение «1», которое соответствует типу double.

Рис. 4. Результаты работы модели дешифратора

Теперь можно снова запустить процесс моделирования. Как видно из рисунка 4 (а, б) – полученный результат соответствует таблице истинности дешифратора. Необходимо отметить, что параметры модели дешифратора в целом были установлены по умолчанию.

Разработанная в данном примере модель является достаточно простой, однако, основные приемы, которые были использованы для ее создания, используются и при разработке более сложных моделей.

голоса
Рейтинг статьи
Ссылка на основную публикацию
Статьи c упоминанием слов: