Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


В.П. Литвиненко О.В. Чернояров



В.П. Литвиненко О.В. Чернояров

 

 

МОДЕЛИРОВАНИЕ И ВЫЧИСЛЕНИЯ

Учебное пособие

Воронеж 2015

 

 

ФГБОУ ВПО «Воронежский государственный

технический университет»

 

 

В.П. Литвиненко О.В. Чернояров

МОДЕЛИРОВАНИЕ И ВЫЧИСЛЕНИЯ

 

 

Утверждено Редакционно-издательским советом

университета в качестве учебного пособия

Воронеж 2015

УДК 621.3.013

Литвиненко В.П. Моделирование и вычисления: учеб. пособие / В.П. Литвиненко, О.В. Чернояров. - Воронеж: ФГБОУ ВПО «Воронежский государственный технический университет», 2015. 120 с.

 

Учебное пособие содержит минимально необходимый учебный материал для дисциплины «Моделирование и вычисления на ЭВМ» по математическому пакету MathCAD, программам схемотехнического моделирования MicroCAP и WorkBench и методам расчета и моделирования простых электрических цепей.

Издание соответствует требованиям Федерального государственного образовательного стандарта высшего профессионального образования по направлению 210400.62 «Радиотехника» (профиль «Радиотехнические средства передачи, приема и обработки сигналов ») дисциплине " Моделирование и вычисления на ЭВМ".

В пособие включены материалы исследований по ГБ НИР 2013.49 и ГБ НИР №1729.

 

Табл. 2. Ил. 106. Библиогр.: 6 назв.

 

Научный редактор канд. техн. наук доц. Б.В. Матвеев

Рецензенты: кафедра инфокоммуникационных систем

и технологий Воронежского института МВД

России (нач. кафедры д-р техн. наук, проф.

О.И. Бокова)

д-р техн. наук, проф. А.Б. Токарев

 

 

Ó Литвиненко В.П., Чернояров О.В., 2015

Ó Оформление. ФГБОУ ВПО «Воронежский госу-

дарственный технический университет», 2015

ВВЕДЕНИЕ

 

Подготовка современного бакалавра в области радиотехники и электроники немыслима без достаточно глубокого освоения современной вычислительной техники и программного обеспечения. Дисциплина «Моделирование и вычисления на ЭВМ» является базовой при освоении универсальных вычислительных и моделирующих программ.

Для проведения разнообразных вычислений широко используется программа MathCAD [2]. В ней заложены возможности вычисления различных функций и операторов, создания мощных вычислительных программ с развитой логикой преобразования данных, математического и статистического моделирования. Особенностью системы MathCAD является запись рабочей программы так, как это принято человеком при записи последовательности вычислений на бумаге.

При проектировании современных электронных устройств и систем необходимо использовать простые и профессиональные программы схемотехнического моделирования, например, MicroCAP [3], WorkBench [4], OrCAD, PCAD и другие.

 

ВЫЧИСЛЕНИЯ И МОДЕЛИРОВАНИЕ

 

Основные понятия

 

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

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

Моделирование – метод научного познания, основанный на построении и использовании модели для получения необходимых результатов моделирования.

Подробная классификация методов моделирования приведена в [1]. Упрощенно их можно разделить на несколько видов:

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

- физические (материальне [1]), в которых объект представляется взаимосвязанными механическими, электрическими или иными элементами, поведение которых аналогично поведению моделируемого объекта;

- математические, поведение которых описывается математическими соотношениями (функциями, уравнениями).

 

Вычисления

 

Простые вычисления могут проводиться «вручную» с помощью простых устройств, например, калькулятора. Сложные вычисления выполнять таким образом затруднительно ввиду больших затрат труда и времени, а также из-за высокой вероятности ошибки. Для решения таких задач применяются микровычислительные устройства, персональные компьютеры (ПК) или мощные вычислительные комплексы.

Вычисления с помощью ПК требуют написания программы на соответствующем языке программирования. В настоящее время в среде инженеров – разработчиков радиоэлектронной аппаратуры наиболее широко используются языки объектно-ориентированного программирования C, Delphi, Java. Современный инженер обязан владеть хотя бы одним из них.

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

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

Примером может служить программа MATLAB (Matrix Laboratory – матричная лаборатория), ориентированная на обработку разнообразных данных в матричной форме. Это мощный комплекс программ, обеспечивающий ввод и формирование (моделирование) данных, реализацию программы их обработки и представления результатов в численной и графической форме. В программе реализованы разнообразные функции обработки данных. Для нее разрабатываются пакеты расширения для различных областей науки и техники: математика и оптимизация, статистика и анализ данных, обработка сигналов и телекоммуникации, обработка изображений, вычислительная биология, финансовое моделирование и анализ и т.д.

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

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

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

Кроме MathCAD, применяются и другие программные продукты, например, MAPLE, MATHEMATICA и другие.

 

Моделирование

 

Моделирование электронных и радиотехнических устройств предполагает получение численных значений токов и напряжений, их временных диаграмм, спектров сигналов, различных характеристик устройства.

На практике используются программы MicroCAP, WorkBench, DesignLab, OrCAD, PCAD и множество других, в том числе и специализированных по решаемым задачам (проектирование сверхвысокочастотных устройств) или по элементной базе соответствующей фирмы (TINA). Программа PROTEUS ориентирована на моделирование цифровых программируемых электронных устройств (микропроцессоров).

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

Простые программы MicroCAP и WorkBench имеют ограничения по сложности моделируемого устройства. Более мощные программы OrCAD, PCAD, PROTEUS позволяют решать профессиональные задачи.

Моделирующие программы позволяют проводить трассировку (разводку) печатной платы моделируемого устройства, для программы PCAD это является основной задачей.

В некоторых программах (MicroCAP) имеется возможность синтезировать устройство (построить схему и рассчитать параметры элементов) по заданной частотной характеристике.

 

 

ПРОГРАММА MATHCAD

 

Назначение программы

 

Программа MathCAD [2] предназначена для выполнения вычислений, записанных на экране монитора в привычном для человека виде (как на бумаге). Могут выполняться как простые вычисления выражений, функций, сумм, интегралов и т.д., так и сложные расчеты в соответствии с программой с использованием типовых операторов (if, for, while).

Английские символы программы вводятся с клавиатуры, а команды и операторы – через меню MathCAD («Арифметические инструменты», «Меню графиков» и др.) или с помощью «горячих» клавиш.

Результаты работы представляются в символьном (значения, таблицы, матрицы) или графическом (линии, поверхности) виде.

 

Ввод данных

 

В MathCAD используются числовые или символьные данные (величины). Для числовых данных можно записать программу, пример которой показан на рис. 2.1, а. Числа и знаки математических операций можно вводить с помощью «мыши» из меню «Арифметические инструменты» или через клавиатуру («*» - умножение, «/» - деление и т.д.). Вывод результата обеспечивается командой (символом) «=».

 

Рис. 2.1

Символьной переменной (букве английского алфавита, цифре или их комбинации, причем на первом месте должна быть буква) необходимо присвоить числовое значение с помощью оператора присваивания (: =) из того же меню или с помощью клавиатуры (Shift; ), пример показан на рис. 2., б.

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

Можно определить матричную переменную, заполнив позиции для ввода чисел, взятые из меню «Матрицы», как показано на рис. 2.1, в.

Одномерный массив (матрица - столбец) может задаваться перечислением, как показано на рис. 2.2, а. Первое число соответствует начальному элементу массива, второе (вводимое через запятую) - следующему элементу (их разность равна приращению), а третье (вводимое через символ точка с запятой) – последнему элементу массива чисел. Если второе число отсутствует, то приращение (шаг) элементов массива равно 1. Результат представлен ниже записи массива на рис. 2.2, а и получен вводом символа «=».

 

Рис. 2.2.

 

С помощью одномерного массива задаются индексы элементов другого массива, как показано на рис. 2.2, б для одномерного и на рис. 2.2, в для двумерного массивов (это уже

программа вычислений). Как видно, в определении индексов и элементов массивов пропущен средний элемент, тогда шаг равен 1. Индекс вводится клавишей «[».

Имеется возможность работы с комплексными числами, для мнимой единицы используется символ из меню «Арифметические инструменты» ( не с клавиатуры ). Примеры задания комплексных чисел в алгебраической и показательной формах показаны на рис. 2.3, а и рис. 2.3, б соответственно. Там же приведены операторы вычисления действительной (Re) и мнимой (Im) частей, модуля и аргумента (arg) комплексного числа.

 

Рис. 2.3.

 

Над комплексными числами определены все арифметические операции (например, умножение на рис. 2.3, в), от них могут вычисляться функции (рис. 2.3, г).

 

Операторы и функции

 

В программе MathCAD реализован широкий набор операторов (алгоритмов преобразования чисел) в меню «Арифметика», «Математика», «Матрицы». Это простые операторы (сложение, вычитание и т.д.), простые функции (тригономет-

рические, экспоненциальная, степенная функции и т.д.), суммы, произведения, производные и интегралы, матричные операции. Примеры применения операторов и функций показаны на рис. 2.3 и рис. 2.4.

 

Рис. 2.4

 

Программа MathCAD позволяет использовать огромный набор элементарных и специальных функций с помощью меню «Вставить функцию» (кнопка ), показанного на рис. 2.5.

 

Рис. 2.5

Графики

 

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

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

 

Рис. 2.6

 

По двумерному массиву М данных можно построить трехмерную поверхность, пример программы показан на рис. 2.7. Функция представлена:

1) поверхностью, 2) точками,

3) столбиками, 4) линиями уровня,

4) векторным полем.

Рис. 2.7

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

 

Рис. 2.8

 

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

При построении графика периодической функции необходимо определить ее период (в примере на рис. 2.9 он равен ), задать шаг в 100 1000 раз меньше, а граничное значение аргумента в 2 10 раз больше периода.

Рис. 2.9

 

Решение уравнений

 

Программа MathCAD позволяет решать разнообразные уравнения и системы уравнений и использовать для этого различные приемы.

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

переменной и выбрать в меню «символы переменная» команду «Вычислить», после чего программа выдаст результат – все корни уравнения, в том числе и комплексные (рис. 2.10, б).

 

Рис. 2.10

 

Корни уравнения можно определить, записав его на экране с использованием логического равенства (как в предыдущем примере) и установив маркер в любом месте уравнения (рис. 2.11). Затем в символьном меню символьных операторов (показано справа на рис. 2.11) выбирается команда «solve» и MathCAD выдает корни уравнения.

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

 

Рис. 2.11

 

Функция polyroots(u) позволяет определить корни полинома , коэффициенты которого должны быть представлены в виде вектора-столбца (матрицы), пример показан на рис. 2.12, б.

 

Рис. 2.12

 

Для вычисления корней уравнений и систем уравнений используются команды решающего блока («Solve block»). Он определяет часть программы MathCAD, в которой решаются уравнения. Он начинается ключевым словом «Given» и заканчивается командой вычисления корней, например, «Find», пример показан на рис. 2.13.

 

Рис. 2.13

 

Системы линейных уравнений могут решаться в матричной форме, которая рассматривается ниже.

 

Матрицы

 

Программа MathCAD выполняет множество операций с матрицами, меню «Матрицы», примеры (сложение, инверсия, умножение) показаны на рис. 2.14.

 

 

Рис. 2.14

 

В матричной форме можно решать системы линейных уравнений -го порядка вида

 

,

 

которое можно записать в матричной форме

 

,

где

, .

 

Соответствующая программа показана на рис. 2.15

Рис. 2.15.

Дифференциальные уравнения

 

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

 

Рис. 2.16

 

На основе первого и второго законов Кирхгофа можно записать уравнения, связывающие токи и напряжения,

 

 

В элементах цепи и токи и напряжения свзаны уравнениями закона Ома

 

 

Ток нелинейного элемента (диода) моделируется соотношением

,

график которого показан в верхней части программы MathCAD на рис. 2.17.

В результате подстановки в уравнение первого закона Кирхгофа получим нелинейное неоднородное дифференциальное уравнение вида

 

,

 

которое можно представить в виде

 

.

 

Обозначив

 

,

 

окончательно получим уравнение в канонической форме

 

.

 

Для решения систем обыкновенных дифференциальных уравнений в MathCAD имеется функция Odesolve([vector], x, b, [step]), где vector – вектор решений системы уравнений (для одиночного уравнения он отсутствует), x – имя переменной интегрирования, b – конечная точка интервала изменения переменной, step – число разбиений интервала интегрирования (по умолчанию 1000).

Программа расчета показана на рис. 2.17. Решающий блок начинается ключевым словом Given и заканчивается функцией Odesolve. В нем записывается дифференциальное уравнение (индекс производной вводится клавишами Ctrl F7 или из меню «Математический анализ».

 

Рис. 2.17

В примере выбраны следующие параметры цепи: Ом, мкФ, ЭДС источника напряжения меняется по закону , где амплитуда равна В и частота Гц. В модели диода принято 1/В и мА.

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

Для решения систем дифференциальных уравнений в частных производных используется функция Pdesolve.

Функции решения дифференциальных уравнений весьма чувствительны к параметрам уравнения и при неудачных их значениях MathCAD не выдает корректное решение.

 

Программирование

 

В MathCAD предусмотрены развитые возможности программирования (меню «Программирование», его вид показан ан рис. 2.18) с помощью условного оператора if ( если ), операторов цикла for ( для ) и while ( пока ) и вспомогательных операторов программирования, например, add line (добавить строку программы) и ряд других. С их помощью можно реализовать разнообразные сложные вычислительные программы.

Пример применения операто-

Рис. 2.18 ра if показан на рис. 2.19. В этой про-

грамме формируется функция вида

(2.1)

 

График функции показан на рис. 2.19.

Рис. 2.19

 

Возможны и другие формы записи оператора if, показанные на рис. 2.20. Набранный с клавиатуры оператор выключает в себя три позиции (рис. 2.20, а), разделенные запятыми: - условие, например, (рис. 2.20, б), - операция, выполняемая при соблюдении условия ( ), - операция, выполняемая в противном случае ( ).

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

 

Рис. 2.20

 

На рис. 2.21 показан пример применения оператора цикла for для вычисления таблицы перемножения целых цифр 0, 1,..., 9, результат приведен в таблице на том же рисунке. Оператор перебирает с шагом 1 переменную (счетчик) цикла ( или на рис. 2.21) от начального до конечного значения, отделяемых символом «точка с запятой», который отображается на экране многоточием и для каждого значения переменной выполняет указанные ниже оператора действия. На рис. 2.21 показан двойной цикл по переменным или (цикл в цикле).

Пример применения оператора while приведен на рис. 2.22. В нем определяется максимум функции (2.1), показанной на рис. 2.19. В программе реализован простейший алгоритм перебора значений аргумента от минимального значения с шагом до тех пор, пока функция нарастает, то есть пока величина положительна. Результат равен , что близко к истинному значению переменной с погрешностью, определяемой шагом . Оператор включает в себя условие ( на рис. 2.22) при выполнении которого выполняется указанная ниже операция.

 

Рис. 2.21 Рис. 2.22

 

Команды из меню «Программирование» MathCAD позволяют строить сложные программы расчета и математического моделирования радиотехнических устройств и систем.

 

Цепь постоянного тока

 

В цепи постоянного тока действуют постоянные напряжения, протекают постоянные токи и присутствуют только резистивные элементы (сопротивления) [5, 6].

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

Рис. 3.1

 

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

Рис. 3.2

В сопротивлении связь между напряжением и током определяется законом Ома в виде

 

. (3.1)

 

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

 

Рис. 3.3

 

Кроме того, в цепи выделяются (задаются) независимые замкнутые контуры, не содержащие идеальные источники тока и отличающиеся друг от друга хотя бы одной ветвью. Их число равно , в примере на рис. 3.3 , например, контуры с ветвями E и , показанные на рис. 3.3 овалами со стрелками, указывающими положительное направление обхода контура. Связь токов и напряжений в цепи определяется законами Кирхгофа.

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

 

, (3.2)

втекающие в узел токи имеют знак плюс, вытекающие минус.

Второй закон Кирхгофа: алгебраическая сумма напряжений на элементах замкнутого независимого контура равна алгебраической сумме ЭДС идеальных источников напряжения, включенных в этом контуре,

 

. (3.3)

 

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

Для приведенного на рис. 3.3 примера по закону Ома получим подсистему компонентных уравнений

 

(3.4)

 

По законам Кирхгофа подсистема топологических уравнений цепи имеет вид

 

(3.5)

 

Расчет на основе закона Ома

 

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

ем неизвестного напряжения (или тока). Рассмотрим пример расчета цепи, схема которой приведена на рис. 3.4, при токе идеального источника А и сопротивлениях Ом, Ом, Ом. Необходимо определить токи ветвей и , а также напряжения на сопротивлениях , и .

Известен ток источника , тогда можно вычислить сопротивление цепи относительно зажимов источника тока (параллельного соединения сопротивления и последовательно соединенных

Рис. 3.4 сопротивлений и ),

 

.

 

Напряжение на источнике тока (на сопротивлении ) равно

В.

 

Затем можно найти токи ветвей

 

А,

А.

 

Полученные результаты можно проверить с помощью первого закона Кирхгофа в виде . Подставляя вы-

численные значения, получим А, что

совпадает с величиной тока источника.

Зная токи ветвей, нетрудно найти напряжения на сопротивлениях (величина уже найдена)

 

В,

В.

 

По второму закону Кирхгофа . Складывая полученные результаты, убеждаемся в его выполнении. Пример расчета в программе MathCAD показан ан рис. 3.5

 

Рис. 3.5

 

Гармонический сигнал

 

Гармонический сигнал [5, 6] записывают в виде

 

, (4.1)

 

где - амплитуда сигнала (индекс от слова «максимум»), - круговая частота, а - начальная фаза. Временная диаграмма гармонического сигнала показана на рис. 4.1.

 

Рис. 4.1

 

Амплитуда гармонического сигнала – это его максимальное значение, она измеряется в единицах сигнала (вольтах для напряжения и амперах для тока).

Период сигнала (рис. 4.1) определяет циклическую частоту его повторения,

, (4.2)

измеряемую в герцах (Гц). Ее физический смысл – число периодов колебаний в секунду.

Аргумент косинуса в (4.1) вида

 

(4.3)

 

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

Круговая частота равна

(4.4)

 

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


Поделиться:



Последнее изменение этой страницы: 2017-04-13; Просмотров: 421; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.149 с.)
Главная | Случайная страница | Обратная связь