![]() |
Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
В.П. Литвиненко О.В. ЧернояровСтр 1 из 9Следующая ⇒
В.П. Литвиненко О.В. Чернояров
МОДЕЛИРОВАНИЕ И ВЫЧИСЛЕНИЯ Учебное пособие
Воронеж 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, в для двумерного массивов (это уже программа вычислений). Как видно, в определении индексов Имеется возможность работы с комплексными числами, для мнимой единицы используется символ
Рис. 2.3.
Над комплексными числами определены все арифметические операции (например, умножение на рис. 2.3, в), от них могут вычисляться функции (рис. 2.3, г).
Операторы и функции
В программе MathCAD реализован широкий набор операторов (алгоритмов преобразования чисел) в меню «Арифметика», «Математика», «Матрицы». Это простые операторы (сложение, вычитание и т.д.), простые функции (тригономет- рические, экспоненциальная, степенная функции и т.д.), суммы, произведения, производные и интегралы, матричные операции. Примеры применения операторов и функций показаны на рис. 2.3 и рис. 2.4.
Рис. 2.4
Программа MathCAD позволяет использовать огромный набор элементарных и специальных функций с помощью меню «Вставить функцию» (кнопка
Рис. 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
Решение уравнений
Программа MathCAD позволяет решать разнообразные уравнения и системы уравнений и использовать для этого различные приемы. Проще всего записать уравнение, используя логическое равенство (жирным шрифтом) из меню «Булевы операции» или комбинацией клавиш Ctrl =, как показано на рис. 2.10. Затем необходимо установить маркер (синий уголок) на искомой переменной
Рис. 2.10
Корни уравнения можно определить, записав его на экране с использованием логического равенства (как в предыдущем примере) и установив маркер в любом месте уравнения (рис. 2.11). Затем в символьном меню символьных операторов (показано справа на рис. 2.11) выбирается команда «solve» и MathCAD выдает корни уравнения. Эту же задачу можно решить с помощью функции
Рис. 2.11
Функция polyroots(u) позволяет определить корни полинома
Рис. 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 В примере выбраны следующие параметры цепи: В нижней части рис. 2.17 показаны временные диаграммы выходного напряжения Для решения систем дифференциальных уравнений в частных производных используется функция Pdesolve. Функции решения дифференциальных уравнений весьма чувствительны к параметрам уравнения и при неудачных их значениях MathCAD не выдает корректное решение.
Программирование
Пример применения операто- Рис. 2.18 ра if показан на рис. 2.19. В этой про- грамме формируется функция вида
График функции показан на рис. 2.19. Рис. 2.19
Возможны и другие формы записи оператора if, показанные на рис. 2.20. Набранный с клавиатуры оператор выключает в себя три позиции (рис. 2.20, а), разделенные запятыми: В следующей за оператором if строке можно использовать оператор otherwise (иначе), в котором будет выполняться операция при нарушении условия (рис. 2.20, в).
Рис. 2.20
На рис. 2.21 показан пример применения оператора цикла for для вычисления таблицы перемножения целых цифр 0, 1,..., 9, результат приведен в таблице на том же рисунке. Оператор перебирает с шагом 1 переменную (счетчик) цикла ( Пример применения оператора while приведен на рис. 2.22. В нем определяется максимум функции (2.1), показанной на рис. 2.19. В программе реализован простейший алгоритм перебора значений аргумента от минимального значения
Рис. 2.21 Рис. 2.22
Команды из меню «Программирование» MathCAD позволяют строить сложные программы расчета и математического моделирования радиотехнических устройств и систем.
Цепь постоянного тока
В цепи постоянного тока действуют постоянные напряжения, протекают постоянные токи и присутствуют только резистивные элементы (сопротивления) [5, 6]. Идеальным источником напряжения называют источник, напряжение Рис. 3.1
Идеальным источником тока Рис. 3.2 В сопротивлении
Пример электрической цепи показан на рис. 3.3. В ней выделяются ветви, состоящие из последовательного соединения нескольких элементов (источника E и сопротивления
Рис. 3.3
Кроме того, в цепи выделяются (задаются) независимые замкнутые контуры, не содержащие идеальные источники тока и отличающиеся друг от друга хотя бы одной ветвью. Их число равно Первый закон Кирхгофа: алгебраическая сумма токов, сходящихся в узле электрической цепи, равна нулю,
втекающие в узел токи имеют знак плюс, вытекающие минус. Второй закон Кирхгофа: алгебраическая сумма напряжений
Напряжения и ЭДС берутся со знаком плюс, если их положительные направления совпадают с направлением обхода контура, в противном случае используется знак минус. Для приведенного на рис. 3.3 примера по закону Ома получим подсистему компонентных уравнений
По законам Кирхгофа подсистема топологических уравнений цепи имеет вид
Расчет на основе закона Ома
Этот метод удобен для расчета сравнительно простых цепей с одним источником сигнала. Он предполагает вычисление сопротивлений участков цепи, для которых известна величина тока (или напряжения), с последующим определени- ем неизвестного напряжения (или тока). Рассмотрим пример расчета цепи, схема которой приведена на рис. 3.4, при токе идеального источника
Рис. 3.4 сопротивлений
Напряжение
Затем можно найти токи ветвей
Полученные результаты можно проверить с помощью первого закона Кирхгофа в виде численные значения, получим совпадает с величиной тока источника. Зная токи ветвей, нетрудно найти напряжения на сопротивлениях (величина
По второму закону Кирхгофа
Рис. 3.5
Гармонический сигнал
Гармонический сигнал
где
Рис. 4.1
Амплитуда гармонического сигнала – это его максимальное значение, она измеряется в единицах сигнала (вольтах для напряжения и амперах для тока). Период сигнала
измеряемую в герцах (Гц). Ее физический смысл – число периодов колебаний в секунду. Аргумент косинуса в (4.1) вида
называют полной фазой колебания, она пропорциональна текущему времени и измеряется в радианах или градусах. Круговая частота
и представляет собой число радиан, на которое изменяется полная фаза колебания в единицу времени (1 с). |
Последнее изменение этой страницы: 2017-04-13; Просмотров: 421; Нарушение авторского права страницы