Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебники 80219

.pdf
Скачиваний:
5
Добавлен:
01.05.2022
Размер:
1.12 Mб
Скачать

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное бюджетное образовательное учреждение высшего образования

«Воронежский государственный технический университет»

Кафедра электромеханических систем и электроснабжения

МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ СИСТЕМ ЭЛЕКТРОСНАБЖЕНИЯ

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к выполнению лабораторных работ № 1-3 для студентов направления 13.03.02 «Электроэнергетика и электротехника» (профиль «Электроснабжение» и «Моделирование систем электроснабжения»); направления 35.03.06 «Агроинженерия» (профиль «Электроснабжение

и электрооборудование сельскохозяйственных предприятий») всех форм обучения

Воронеж 2021

1

УДК 621.311(07)

ББК 31.26я7

Составители:

ст. преп. Т. Е. Черных, канд. техн. наук А. В. Тикунов

Математическое моделирование систем электроснабжения:

методические указания к выполнению лабораторных работ № 1-3 / ФГБОУ ВО «Воронежский государственный технический университет»; сост. Т. Е. Черных, А. В. Тикунов. - Воронеж: Изд-во ВГТУ. 2021. - 34 с.

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

Предназначены для студентов всех форм обучения.

Методические указания подготовлены в электронном виде и содержатся в файле ЛР_ММСЭ_1-3.pdf

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

УДК 621.311(07)

ББК 31.26я7

Рецензент – Ю. В. Писаревский, канд. техн. наук, доц.

кафедры электромеханических систем и электроснабжения Воронежского государственного технического университета

Издается по решению редакционно-издательского совета Воронежского государственного технического университета

2

ВВЕДЕНИЕ

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

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

SCILAB.

Лабораторная работа № 1 ЗНАКОМСТВО С ПРОГРАММОЙ SCILAB

1.ЦЕЛЬ РАБОТЫ

1.Познакомиться с интерфейсом программы Scilab.

2.Научиться задавать переменные в Scilab.

3.Получить базовые навыки работы с математическими операциями и математическими переменными в Scilab.

4.Научиться работать с пользовательскими функциями.

2.ТЕОРЕТИЧЕСКИЕ ПОЯСНЕНИЯ

SciLab – пакет прикладных математических программ для инженерных (технических) и научных расчётов, позволяющий решать задачи со сложными вычислительными алгоритмами и имеющие набор функций для математических и инженерных вычислений. Программа является бесплатным аналогом мощнейшего пакета математических вычислений MatLab. В SciLab присутствует модуль Scicos, который является аналогом модуля Simulink из

MatLab.

Преимущества пакета SciLab по сравнению с другими подобными системами:

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

2.SciLab постоянно обновляется, новые версии выпускаются параллельно для нескольких операционных систем, в том числе для Windows и Linux.

3.SciLab ориентирован на работу с комплексными матрицами больших размеров, что полезно для специалистов электроэнергетического профиля.

4.SciLab имеет простой и мощный язык программирования и развитые средства графики.

3

5.SciLab имеет большой набор математических и инженерных функций,

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

Интерфейс программы

После запуска пакета Scilab на экране появится основное окно приложения. Окно содержит меню, панель инструментов и рабочую область. Признаком того, что система готова к выполнению команды, является наличие знака приглашения -->, после которого расположен активный (мигающий) курсор. Рабочую область со знаком приглашения обычно называют командной строкой. Ввод команд осуществляется с клавиатуры, нажатие клавиши «Enter» заставляет систему выполнить команду и вывести результат (рис. 1).

Клавиши клавиатуры Page Up, Page Down управляют курсором позволяя прокручивать документ вверх-вниз.

Рис.1. Интерфейс программы SciLab

Клавиши клавиатуры «Стрелка вверх», «Стрелка вниз», позволяют вернуть в командную строку ранее введенные команды или другую входную информацию, так как вся эта информация сохраняется в специальной области памяти. Так, если в пустой активной командной строке нажать клавишу ↑, то появится последняя вводимая команда, повторное нажатие вызовет предпоследнюю и так далее. Клавиша ↓ выводит команды в обратном порядке.

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

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

Командное окно (Зона редактирования) – это фактически командная строка.

4

Существуют особенности ввода команд. Если команда заканчивается точкой с запятой «;», то результат ее действия не отображается в командной строке. В противном случае, при отсутствии знака «;», результат действия команды сразу же выводится в рабочую область.

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

Работа с командной строкой

Основное окно Scilab содержит область просмотра и командную строку. В области просмотра отображаются команды текущего сеанса и результаты их выполнения. Командная строка — это область, предназначенная для ввода команд или текстовых комментариев. Нажатие клавиши «Enter» приводит к выполнению введенной в командной строке команды. Все символы, содержащиеся в строке программа воспримет как текст команды или названия переменных, но, если перед символами в строке ввода поставить знак «//», то запись не будет воспринята как команда, текст записи останется в области просмотра, а на следующей строке вновь появится приглашение «-->». Символ «//» позволяет делать текстовые комментарии как в рабочей области, так и в тексте программ.

Текст в командной строке можно редактировать с помощью стандартных клавиш редактирования текста:

-клавиша Backspace — удаление текста перед курсором;

-клавиша Delete — удаление текста после курсора.

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

После этого их можно редактировать и выполнять повторно. При нажатии клавиши команды появляются в командной строке в обратном порядке.

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

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

5

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

Константы

Константы в Scilab начинаются с символа %. Самые распространенные из них показаны в следующей таблице (табл. 1).

Математические функции

Все функции, используемые в Scilab, можно разделить на два класса:

стандартные;

пользовательские.

Таблица 1

Названия констант и их обозначение в SciLab

Название

Обозначение

(число Пи)

%pi

е (экспонента)

%e

 

 

 

%i

Мнимая единица ( 1 )

(бесконечность)

%inf

Неопределённый результат (0/0, / , и т.п.)

%NaN

Условный ноль (2.22e-16)

%eps

Простейшую пользовательскую функцию можно описать с помощью оператора deff, который имеет следующий синтаксис:

deff(’[имя1,...,имяN] = имя_функции(переменная_1,...,переменная_M)’, ’имя1=выражение1;...;имяN=выражениеN’)

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

имя_функции - имя с которым эта функция будет вызываться, переменная_1,...,переменная_M – входные параметры.

Некоторые из стандартных функций приведены в табл.2.

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

6

Если попытаться вычислить, например, lg(-10), то Scilab выдаст в качестве ответа +1,3643764i.

Несколько необычным, пожалуй, может показаться поведение функции atan(x). В качестве ответа эта функция выдает углы только из первого и четвертого квадранта. Если требуется получить значение угла в правильном квадранте, следует использовать разновидность функции арктангенса вида atan(y, x), где y — синус угла или длина противолежащего катета в прямоугольном треугольнике, x — косинус угла или длина прилежащего катета. Область значений этой функции находится в диапазоне [–π, + π].

 

 

 

 

 

Таблица 2

 

 

Встроенные математические функции

 

Имя

Возвращаемое

 

Область определения x

Диапазон

возвращаемых

функции

значение

 

 

значений

 

Sin(x)

Синус угла

 

 

[-1;+1]

 

 

 

 

x задается в радианах

 

 

Cos(x)

Косинус угла

 

 

[-1;+1]

 

 

 

 

x задается в радианах

 

 

Tan(x)

Тангенс угла

 

 

 

 

 

 

 

x задается в радианах

 

 

Cotg(x)

Котангенс угла

 

 

 

 

 

 

 

x задается в радианах

 

 

Asin(x)

Арксинус угла

 

[-1;+1]

 

 

 

 

 

 

результат в радианах

Acos(x)

Арккосинус

 

[-1;+1]

 

 

 

угла

 

 

результат в радианах

Atan(x)

Арктангенс угла

 

 

 

 

 

 

 

результат в радианах

Exp(x)

Число

е,

 

 

 

 

возведенное

в

 

 

 

 

степень x

 

 

 

 

Log(x)

Натуральный

 

 

 

 

 

логарифм x

 

 

 

 

Log2(x)

Логарифм x по

 

 

 

 

основанию 2

 

 

 

 

Log10(x)

Десятичный

 

 

 

 

 

логарифм x

 

 

 

 

Sqrt(x)

Квадратный

 

 

 

 

 

корень из x

 

 

 

 

Abs(x)

Модуль числа

 

 

 

 

3. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ

Упражнение 1. Использование переменных

В рабочей области Scilab можно определять переменные для дальнейшего их использования в различных выражениях. Определить переменную значит

7

присвоить ей какое-либо значение. Оператором присваивания в Scilab является «=». Процедура присваивания оформляется следующим образом:

имя переменной = значение переменной Каждая переменная перед использованием в выражении должна быть

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

например переменная может быть определена как строка символов:

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

имя переменной = результат вычисления

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

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

clear = имя_переменной;

Упражнение 2. Системные переменные

При выполнении операции Scilab обязательно присваивает ее результат какой-либо переменной, если в командной строке нет оператора присваивания, то результат будет присвоен системной переменной с именем ans (от англ. answer — ответ):

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

Ans — первый пример системной переменной.

Имена других системных переменных в Scilab начинаются с символа %:

- %pi – число (3.141592653589793);

8

- %e – число e=2.7182818.

Эти переменные используются в математических операциях в качестве констант. Их значения не могут быть изменены пользователем.

Упражнение 3. Математические операции в Scilab

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

-+ сложение;

-– вычитание;

-* умножение;

-/ деление слева направо;

-\ деление справа налево;

-^ возведение в степень.

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

Вычислите выражение:

При вводе выражения применена операция деления слева «\». Поскольку значение выражения не присвоено пользовательской переменной, то результат присваивается системной переменной ans:

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

Если после ввода команды нажать клавишу «Enter», то в рабочей области появится результат выполнения этой команды:

Если результат отображать не нужно, то набор команды следует завершить символом «;»

9

Упражнение 4. Встроенные математические функции

Вычислить значение выражения при x=4,5, y=8,09:

Упражнение 5. Функция вывода на экран printf

Функция printf служит для вывода на экран значений переменных и текстовых комментариев. Формат вывода определяется аргументами функции. Обращение к printf выглядит следующим образом:

Врезультате обращения к функции printf на экран вводится текст, указанный в кавычках, и значения переменных (переменная1, переменная2, ..., переменная n), на месте соответствующих символов (%символ1 %символ2 ...

%символ n), определяющих формат вывода.

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

%.При вызове функции printf используются символы «s» и «f». Символ «s» используется, если переменная, значение которой необходимо вывести, содержит строку символов. Если переменная содержит число, используется символ «f». Запись «%.nf» означает, что число должно быть выведено с n знаками после запятой. Текст, содержащийся в кавычках, выводится без изменений, а на месте символов выводятся значения соответствующих переменных. Текст, содержащийся в кавычках, выводится в виде одной строки. Если есть необходимость перенести часть текста на следующую строку, то перед этим участком текста необходимо ввести символ \n. Это неотображаемая «буква», которая вызывает перемещение курсора в начало следующей строки.

Задать переменную h, в которой будет храниться строка символов variable и вывести значение переменной на экран при помощи функции printf:

Вданном случае первая строка определяет переменную h для хранения строки символов — variable. При вызове функции printf текстом для ввода является запись «text:». Символ s в кавычках означает, что на его месте будет выведено значение переменной, содержащей строку символов. После кавычек указана переменная — h, именно ее значение выведено в тексте на месте %s.

Вывести на экран значения числовых переменных в сочетании с текстом:

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]