Главной задачей, решаемой программами математического моделирования динамических систем, является симуляция движения их координат. Сегодня можно выделить два эволюционных этапа развития решателей этих программ. На первом этапе [1] в программах появляется явный решатель. Это библиотека классических подпрограмм (функций), которые реализуют операцию интегрирования. Таким образом, используя дискретные квази-аналоги интеграторов, пользователь может решать дифференциальные уравнения. Лишь на втором этапе в моделирующих программах появляется неявный решатель. Это библиотека классических подпрограмм, которые предназначены для итерационного поиска корней алгебраических уравнений.
Если моделирующая программа может грамотно использовать неявный решатель, то из программы для моделирования систем автоматического регулирования она может перейти в разряд программ для мультидоменного моделирования физических систем, с применением схем физических принципиальных (например, электрических). Но наличие такой возможности не всегда реализуется. Десятки небольших фирм, чьи программы используют направленные графы, не могут преодолеть этот барьер, а некоторые, имея все возможности, просто не желают выпускать на рынок новые технологии, откладывая их предложение на будущие времена.
Цель данной статьи – состоит в раскрытии методики моделирования с применением ненаправленных графов, которая используется в программах подобных пакету Multisim и хранится в секрете более 15 лет, а поэтому ограниченно распространяется. Автор высказывает надежду, что возрастающий спрос пользователей на новую технологию моделирования вынудит фирмы создающие моделирующие программы реализовать ее в своих продуктах.
Основу представляемой технологии моделирования составляют модели девяти примитивов, которые используются при составлении схем замещений. Упомянутым примитивам (моделям) в статье присвоены условные графические обозначения, заимствованные из схем электрических принципиальных, но суть моделей распространяется на любой из семи энергетических доменов: электрический, магнитный, тепловой, гидравлический, акустический, механический и ротационный. Модели представлены в виде блок-схем программы VisSim, т.е. раскрыты до уровня направленных графов.
Принципы построения графа схемы физической принципиальной
Принцип 1 (для шин)
Все элементы и узлы ненаправленного графа соединяются шинами, в которых есть два проводника распространяющие сигналы в противоположных направлениях. (Упомянутые сигналы – это физические величины первого и второго рода конкретного энергетического домена, для которых формулируются постулаты о сохранении материи и энергетического потенциала).
Принцип 2 (для элементов)
Все элементы графа должны быть двухвыводными. (Схема замещения любого устройства с большим количеством выводов должна состоять из фундаментальных двухвыводных элементов и узлов). Оба вывода у элементов должны быть оборудованы разъемами для подключения двухпроводных шин.
Принцип 3 (для узлов)
Узлы бывают двух типов: распределяющие и аккумулирующие. Узлы ненаправленного графа трехвыводные. (Узлы, в которых сходится большее количество ветвей, строятся каскадированием трехвыводных узлов). Каждый вывод узла должен иметь разъем для подключения двухпроводных шин.
Принцип 4 (для разъемов)
Элементы графа и его шины оборудуются разъемами "мама" и "папа". Половина узлов ненаправленного графа оборудуется одним разъемом "папа" и двумя разъемами "мама". Вторая половина узлов оборудуется одним разъемом "мама" и двумя разъемами "папа". (Графический интерфейс моделирующих программ не должен отображать этой особенности ненаправленного графа. Программы самостоятельно выбирают тип узлов, "скрыто переворачивают" элементы графа и шины для правильной коммутации).
Элементы ненаправленного графа
Графические образы девяти простейших библиотечных элементов ненаправленных графов, а так же поясняющая технику подключений схема приведены на рисунке. При сборке схемы выводы разных цветов ни когда не соединяются между собой. Та же схема подключений помогает понять, почему направленные графы программ VisSim, Simulink, MVTY (при использовании описываемой методики моделирования) называют ненаправленным или бинаправленным.
Пассивные элементы ненаправленного графа (потребители энергии)
В каждом из энергетических доменов существует от одного до трех (известных) простейших физических устройств, которые называются электрическим, магнитным, тепловым, гидравлическим, акустическим, механическим, ротационным и др. сопротивлениями. Таким образом, чуть округлив, можно сказать, что для названных энергетических доменов закон Ома имеет 21 формулировку. Формулы закона Ома записываются тремя способами:
Три формы записи закона Ома определяют три формальных примитива, которые являются пассивными элементами ненаправленного графа, т.е. моделями потребителей энергии.
Определимся также с тем, что все элементы ненаправленного графа будут асимметричными, т.е. с тем, что именно поток материи по элементам будет определять разность энергетических потенциалов на их выводах, а не наоборот.
Безинерционный элемент (активное сопротивление)
Иконка безинерционного потребителя энергии, а так же его внутренняя структурная схема показаны на рисунке. От верхнего разъема к нижнему (зеленые контакты) по элементу протекает поток материи i. Потенциал j2 на красном контакте нижнего разъема элемента известен (определяется другими элементами цепи). Потенциал j1 красного контакта верхнего разъема вычисляется с помощью закона Ома, поскольку величина потока i и сопротивление R для элемента известны: j1 = j2 + i R.
Реактивный элемент 1
Внутренняя структурная схема реактивных элементов принципиально не отличается от структурной схемы безинерционного потребителя энергии. Различие состоит лишь в способе расчета создаваемого потоком падения напряжения. В частности, реактивный элемент индуктивного характера должен обеспечивать в заданном масштабе (L) тем большую разность потенциалов, чем больше скорость изменения протекающего по нему потока (di/dt). Это падение напряжения вычисляется с помощью блоков unknown (неизвестная) и constraint (баланс_в_нуле) следующим образом (см. блок-схему). На каждом шаге симуляции неявный решатель моделирующей программы с помощью итерационного процесса подбирает такое выходное значение блока unknown, чтобы на входе блока constraint было нулевое значение. Однако интегратор – это блок обладающий эффектом памяти – он разрывает сигнальную цепь – сигнал на его входе на данном шаге симуляции ни как не определяет выходное значение (сигнал на входе интегратора определяет его выходное значение лишь на следующем, в данный момент еще не вычисляемом шаге симуляции). Баланс на входе блока constraint подбирается через цепь верхнего разъема, и ту схему, к которой элемент подключен. Т.е. фактически подбирается не выходное значение интегратора, а поток, протекающий по элементу. Если баланс будет вычислен, то значение сигнала на входе интегратора будет равно производной потока, а на входе делителя – искомому напряжению.
Приведенное описание принципа работы блок-схемы позволяет легко понять, что установка начального условия на интеграторе (Initial Condition), эквивалентна определению величины начального потока материи по элементу.
Реактивный элемент 2
Реактивный элемент емкостного характера должен обеспечивать в заданном масштабе (1/С) разность потенциалов пропорциональную интегралу протекающего по нему потока i, что и обеспечивается блок-схемой показанной на рисунке.
Установка начального условия на интеграторе данной блок-схемы эквивалентна определению величины начального падения напряжения на элементе.
Активные элементы ненаправленного графа (источники энергии)
Источники энергий определяют само существование энергетических доменов. В разных энергетических доменах нам известно разное количество источников. Функционирование известных нам источников может быть описано одной из двух идеализированных моделей. Первая модель имеет название "Источник движущей силы", поскольку в рабочем режиме создает разность энергетических потенциалов неизменной величины. Вторая модель – "Источник потока" – отличается тем, что генерирует постоянный по величине поток материи (рабочего тела).
Источник движущей силы (генератор энергетических потенциалов)
Иконка источника движущей силы и его внутренняя структурная схема показаны на рисунке. Логику работы модели обеспечивает неявный решатель с помощью пары блоков unknown (неизвестная) и constraint (баланс_в_нуле) (оба блока, см. блок-схему, имеют малиновые рамки). На каждом шаге симуляции неявный решатель моделирующей программы с помощью итерационного процесса подбирает такое выходное значение блока unknown, чтобы на входе блока constraint было нулевое значение. Другими словами неявный решатель подбирает такое значение потока материи, который бы создал в подключенной к источнику цепи заданную разность потенциалов (в данной модели в качестве опорного генератора используется блок синусоидального сигнала).
Второй блок unknown в модели (с красной рамкой) предназначен для обеспечения возможности изменения потенциалов источника в синфазном режиме. Парный этому блоку блок constraint расположен в модели физического элемента "заземлитель потенциала". Оставшийся в модели блок constraint обеспечивает нулевой баланс при возврате потока в источник (иначе, если в схеме несколько источников, то возможна ситуация, когда в данный источник вернется поток другой величины).
Источник потока (генератор потока материи)
Структурная схема источника потока материи изображена на рисунке. Величина и форма потока в данной модели задается опорным генератором – блоком синусоидального сигнала. Блок constraint заставляет неявный решатель, на каждом шаге симуляции, искать такой баланс энергетической цепи, при котором в данный источник вернется поток материи в полном объеме.
Блок unknown (в блок-схеме имеет красную рамку), так же как в модели источника движущей силы, предназначен для обеспечения возможности изменения потенциалов источника в синфазном режиме. Парный этому блоку блок constraint расположен в модели физического элемента "заземлитель потенциала".
Прерыватель алгебраических петель (инициатор потока материи)
Модель прерывателя алгебраических петель – есть модель источника движущей силы нулевой величины (сравни структурные схемы). Включение идеального источника движущей силы нулевой величины в разрыв любой ветви энергетической цепи, не может изменить режим ее работы (это обусловлено нулевым внутренним сопротивлением такого источника).
Существуют модели фрагментов энергетических цепей без источников энергии, движение материи в которых вызвано ненулевыми начальными условиями на реактивных элементах. Например, модель процесса разряда конденсатора на активное сопротивление. Если проанализировать блок-схемы потребителей энергетических цепей, то становится очевидным факт возможного появления алгебраических петель, а так же простых кольцевых замыканий линий связи (смотри проводники с зелеными контактами, передающие величину потока). Как было показано ранее, включение прерывателя алгебраических петель в RC-цепь не меняет режим ее работы, но инициирует в ней поток материи и разрывает алгебраические петли, – в этом и заключено его назначение.
Таким образом, прерыватель алгебраических петель – это служебный элемент моделирующей программы, который используется последней, для показанных нужд, автоматически (по мере необходимости). Он не входит в базовые библиотеки элементов и его присутствие в ненаправленном графе (в схеме физической принципиальной) ни как не отражается.
Заземлитель потенциала
Модель заземлителя потенциала состоит из одного блока constraint. Данный датчик неявного решателя будет уравновешиваться теми блоками unknown (с красной рамкой), что будут обнаружены в источниках той энергетической цепи, которую составит пользователь моделирующей программы. При этом заземлитель может быть подключен к любому ее потенциальному контакту.
Не следует путать заземлитель энергетического потенциала с условным графическим обозначением заземления на схемах электрических принципиальных. Заземлитель потенциала – это не проводник. Он может быть установлен в модели только один раз. В программах с развитым графическим интерфейсом за подключение этого блока отвечает сама моделирующая программа.
Узлы ненаправленного графа
Распределяющий материю узел
Основу распределяющего узла составляет обслуживаемый неявным решателем трехвыводной сумматор, математическое уравнение которого соответствует постулату о сохранении материи (например, это может быть I закон Кирхгофа). Соблюдение этого постулата обеспечивает датчик неявного решателя (блок constraint) на выходе сумматора. Перераспределение же потоков материи I2 и I3 контролирует второй датчик неявного решателя, фиксирующий разность потенциалов j2 и j3. Если (j2-j3) > 0, то баланс в цепи может быть найден при уменьшении потока I2 и увеличении I3. Если (j2-j3) < 0, то неявному решателю потребуется увеличить поток I2 и уменьшить I3. (Изменения потоков материи приводят к тому, что элементы ненаправленного графа меняют значения соответствующих потенциалов). Таким образом, принцип работы узла состоит в том, чтобы распределить поток материи I1 на потоки I2 и I3 так, чтобы соблюдалось равенство потенциалов j2 и j3 (после нахождения баланса цепи потенциал j1 будет равен потенциалам j2 и j3).
Аккумулирующий (материю) узел
Структурная схема аккумулирующего узла существенно проще (см. рис.) и особых комментариев не требует.
Рекомендации к использованию библиотеки элементов
Описанные модели элементов ненаправленного графа являются идеализированными, т.е. имеют стремящиеся к нулю внутренние сопротивления, обладают высокой добротностью, или совершенно не имеют инерционных свойств, как то и требуется для схем замещений. Отсюда следует, что неправильно составленный ненаправленный граф может привести к перегрузке мантиссы решателей. Приведем примеры для электрического энергетического домена:
- Замыкание заряженного конденсатора или источника электродвижущей силы на нулевое сопротивление или конденсатор с другим падением напряжения.
- Размыкание индуктивной катушки с электрическим током без подключения шунтирующего резистора.
Другой причиной проблем с решателями могут послужить элементы, установленные на рабочее поле, но не подключенные к графу. Далеко не у всех моделирующих программ неявные решатели умеют находить и исключать из расчетов те датчики нулевого баланса и блоки неизвестная, которые не связаны функциональной зависимостью (т.е. не подключены). По той же причине не следует создавать не связанные, хотя бы потенциально, энергетические цепи, поскольку в этом случае, так же образуются независимые области итерационного подбора.
Не следует так же забывать, что итерационный поиск баланса для десятков, а то и сотен координат (переменных) энергетических цепей выполняется на каждом шаге симуляции. Очевидно, что итерационный процесс будет тем короче, чем меньше приращения значений координат. Отсюда следует рекомендация отказываться, в критических случаях, от задающих генераторов, чьи выходные последовательности имеют разрывы: меандр, пила, и т.д. (Пропустите сигналы соответствующих источников опорного напряжения, через апериодические звенья первого порядка с малой постоянной времени).
Заключение
- В работе сформулированы принципы построения ненаправленного графа схемы физической принципиальной.
- Предложены девять моделей базовых библиотечных элементов ненаправленного графа, которые могут быть использованы при составлении схем замещения физических устройств, принадлежащих любому энергетическому домену.
- Показано, что программные комплексы, являющиеся лидерами на рынке моделирующих программ, не используют широко изучаемые в системе высшего образования формализованные методы расчета энергетических цепей. Библиотека базовых элементов ненаправленного графа составлена в соответствии с законом Ома, а неявные решатели добиваются соблюдения постулатов о сохранении материи и энергетического потенциала итерационным подбором, опираясь на свойство однозначности состояния всех элементов энергетической цепи (ненаправленного графа).
- Доказано, что на рынке математических программ существует тенденция сдерживания процесса внедрения новых технологий моделирования.
Благодарности
Автор благодарен не большой американской фирме Visual Solution Inc, за активные многолетние усилия в сфере поддержки учебного процесса русскоязычных вузов. Данная статья не была бы написана, если бы автор не получил по "Бесплатной Академической Программе" пакет VisSim [2,3].
Литература
- Клиначёв Н. В. Основы моделирования систем. – Website: http://vissim.nm.ru/sml_01.html, Челябинск, 2003.
- Клиначёв Н. В. VisSim в вузах России. – Website: http://vissim.nm.ru/vsm_map.html, Челябинск, 2001.
- Клиначёв Н. В. Моделирование систем в программе VisSim: Справочная система. – Offline версия 1.0. – Челябинск, 2001. – 212 файлов, ил. – Website: http://vissim.nm.ru/vsmhlpru.zip, Челябинск, 2001.
В начало
|