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

lab matlab small_3_

.pdf
Скачиваний:
29
Добавлен:
27.03.2015
Размер:
2 Мб
Скачать
☆

Вариант 1: Рассчитать iR, Вариант 2: Рассчитать uR Вариант 3: Рассчитать uD

ВАРИАНТЫ 4–6:

Рассмотрим эквивалентную расчетную схему мостового преобразователя, приведенную на рис. 4(a). Параметры источника электрической энергии: ЭДС Е и внутреннее сопротивление Rе; ключевые элементы заменены идеальными ключами и сопротивлением Rs в открытом состоянии, в закрытом состоянии ключевые элементы представляют собой разрыв; в качестве нагрузки используется сопротивление

Rn; причем Rs, Re << Rn.

Рассмотрим несколько режимов работы этой схемы. На рис. 4(a) все ключевые элементы разомкнуты, следовательно в ток через нагрузку равен нулю, т.к. нет пути для протекания тока. На рис. 4(b) замкнуты ключи К1, К4, путь протекания тока показан пунктирной стрелкой и содержит элементы Е, Re, K1, Rs, R, K4, Rs, ток в такой цепи легко рассчитать; будем считать это прямым включением. На рис. 4(c) замкнуты ключи К2, К3, путь протекания тока показан пунктирной стрелкой и содержит элементы Е, Re, K2, Rs, R, K3, Rs, ток в такой цепи также легко рассчитать; будем считать это обратным включением.

Последний рассматриваемый режим (рис. 4(d)) назовем аварийным, т.к. в этом режиме источник ЭДС оказывается закорочен через относительно небольшие сопротивления (цепь Е, Re, K1, Rs и K3, Rs в параллель с R, K4, Rs). В аварийном режиме ток через источник ЭДС определяется выражением (6), а ток через нагрузку – выражением (7)

Ie =

 

 

E

 

 

(6)

Re + Rs +

Rs (Rs + Rn)

 

 

 

 

Rs + (Rs + Rn)

 

 

 

 

 

 

 

IRe = Ie

Rs

 

 

(7)

 

 

Rs + Rn

 

 

 

 

 

 

 

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

D. аварийный режим

21

n

n

n

n

рис. 23 расчетная схема мостового преобразователя, работающего на активную нагрузку

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

22

рис. 24 блок-схема расчета мостового преобразователя

23

Вариант 4: Рассчитать uR

Вариант 5: Рассчитать мощность, выделяемую на нагрузке

P = Rn I

2

(8)

R

Rn

 

Вариант 6: рассчитать напряжение на зажимах источника электрической энергии

UE = E −URe (9)

Программа работы:

Создание алгоритма.

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

Запуск.

!Запуск системы Matlab

!Пуск → Программы → Matlab Release 12 → Matlab R12

!Редактор вызывается или из меню File → Open/New.

!Команда View → Dock название М-файла в окне редактора. прикрепит окно редактора в рабочее окно Matlab.

Реализация алгоритма.

1.Перейдите в рабочий каталог C:\TEMP. Создайте М-файл сценария и сохраните его.

2.Прочитайте задание (Задача 2)

3.Определите, какие средства и операторы Matlab пригодны для реализации предложенного алгоритма

4.Введите программу. Обратите внимание на автоматическую расстановку отступов в тексте.

5.Поработайте с ручной расстановкой отступов, используя редактирование и клавишу табуляции.

6.Исправьте отступы, используя команды Increase Intend, Decrease Intend, Smart Intend меню Text редактора М-файлов Matlab.

24

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

8.Опробуйте на своей программе средства отладки Matlab, проверьте программу на наличие логических ошибок.

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

10.Подготовьте черновик отчета.

11.Скопируйте М-файл в собственный каталог на сервере и удалите его из каталога C:\TEMP

Содержание отчета:

1.Цель работы

2.Основные операторы ветвления в Matlab

3.Основные средства и инструменты отладки алгоритмов с ветвлением

4.Текст задания и блок-схема спроектированного алгоритма с ветвлением (задача 1)

5.Текст задания, краткое описание алгоритма и программы, блоксхема (задача 2)

6.Текст программы

7.Пример работы программы

8.Выводы

Темы для защиты.

1Операторы ветвления Matlab

2 Создание и редактирование М-файла

3Алгоритм с ветвлением

4Способы и инструменты отладки алгоритмов с ветвлением

25

Лабораторная работа № 3. Циклы

Цель работы:

!изучить виды циклов и их реалищзацию в Matlab

!освоить способы отладки программ с циклами

!реализовать алгоритм с использованием циклов

Описание работы:

Взяв за основу алгоритм и программу из предыдущей работы, обогатим их новыми возможностями. Во-первых, создадим защиту от нечаянного ввода неверных данных (см. ниже, п.2 программы работы). Во-вторых, предоставим пользователю программы возможность повторить расчет, изменив часть параметров схемы (п.3). В-третьих, обеспечим расчет искомых величин при переборе ряда значений двух параметров схемы (см. ниже, п.4 программы работы) и, таким образом, получим таблицу результатов, а не один результат, как в предыдущей работе. Эту таблицу нужно вывести на экран (п.5). После выполнения этих изменений упрощенная блок-схема алгоритма будет соответствовать приведенной на рис. 29.

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

Реализация циклов с постусловием

Общий способ организации циклов с постусловием показан на рис. 26. Примеры реализации циклов с запросом на продолжение в конце цикла (алгоритмы на Рис. 27, Рис. 28)

Пример 1 (Рис. 27): tempvar = 1; while tempvar

% инструкции

tempvar = input('продолжить? ДА(1)/НЕТ(0)');

end

26

начало

1

Ввод по

2

Ввод по п.1

3 Бесконечный цикл

(п. 3)

делать

4

Ввод по п.3

завершить 5 Циклспараметром поп.4

делать

6

Инструкциииз предыдущейработы

7Запрос на продолжение (3)

 

8

Продол-

нет

 

 

 

 

жить?

 

 

да

 

 

Break

 

 

 

конец

 

Заменяется на цикл запросом на правильность

Расчет (включая ветвление) и вывод результатов расчета

рис. 25 Блок-схема алгоритма

27

начало

начало

 

А=истина

 

 

Бесконечный цикл

 

 

 

выйти

делать

 

 

 

 

 

 

 

 

Пока А=истина

Расчеты

 

 

 

 

 

делать

 

 

 

 

 

 

 

 

 

 

 

 

 

Изменение или

 

Расчеты

 

 

 

 

 

ввод условия

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Изменение или ввод А Условие нет

истинно?

да выйти

a)

конец

б)

конец

рис. 26 Блок-схема алгоритма реализации цикла с постусловием

Пример 2

(Рис. 27):

 

tempvar = '';

 

while isempty(tempvar)

 

 

% инструкции

 

 

tempvar = input(…

TER)/НЕТ(ЛЮБАЯ ЦИФРА)');

end

'продолжить? ДА(EN

 

 

Пример 3

(Рис. 28):

 

while 1

 

% инструкции

if ~input('продолжить? ДА(ENTER или ЦИФРА)/НЕТ(0)') break

end

end

28

Пример 4 (Рис. 28): while 1

% инструкции

tempvar = input('продолжить? ДА(ENTER)/НЕТ(0)'); if ~isempty(tempvar)&(tempvar==0)

break

end

end

 

начало

 

 

начало

 

 

 

 

 

 

 

 

Установить tempvar

 

Бесконечный цикл

 

 

 

 

Пока tempvar соот-

выйти

 

делать

 

 

 

 

инструкции

 

ветствует условию

 

 

 

 

делать

 

 

 

 

 

 

 

 

 

инструкции

 

 

Запрос на про-

 

 

 

 

 

 

Запроснапродол-

 

 

должение

 

 

 

 

 

жение,сизмене-

 

 

 

нет

нием tempvar

 

 

Продол-

 

 

 

 

 

 

 

 

жить?

 

 

 

 

 

да

Break

 

конец

 

 

конец

 

Рис. 27 Блок-схема алгоритма цик-

Рис. 28 Блок-схема алгоритма

ла с постусловием с использованием

цикла с постусловием с ис-

временной переменной

пользованием бесконечного

 

цикла

29

Программа работы:

Внести изменения в программу из предыдущей работы (блок-схема алгоритма приведена на рис. 29)

1.Все величины, кроме указанных ниже, вводятся, как в предыдущей работе (рис. 29, блок 1).

2.Организовать проверку ввода указанных для вариантов переменных (рис. 29, блок 2; в итоговой блок-схеме этот блок должен быть «раскрыт», т.е. приведен цикл, реально использованный для выполнения этого пункта):

ВАРИАНТЫ

1.

R, α

2.

Uo, Io.

3.

Io, α

4.

Rs, Rn

5.

Е, Re

6.

Е, Rs

Для этого использовать один из алгоритмов с постусловием: после ввода значения производится запрос пользователю о правильности введенного значения; в случае указания о неверном вводе, ввод повторяется; таким образом, оператор ввода заключается внутрь цикла с постусловием (см. рис. 26).

3. Организовать многократный ввод переменных согласно вариан-

ту

ВАРИАНТЫ

1 Ввести Emin, Emax для задания границ изменения E

2 Ввести Rmin, Rmax для задания границ изменения R

3 Ввести Uomin, Uomax для задания границ изменения Uo

4 Ввести Emin, Emax для задания границ изменения E

5 Ввести Rmin, Rmax для задания границ изменения Rn

6 Ввести Remin, Remax для задания границ изменения Re

Для этого необходим цикл с постусловием, причем постусловие расположено после окончания расчета, использующего введенные величины (см. рис. 29, блоки 3, 4, 7, 8; примеры приведены ранее, на стр.26, 28 и 29). Обратите внимание, что этот цикл похож на цикл, созданный ранее по п.2, только запрос в конце цикла касается не правильности введенной величины (как в п.2), а необходимости продолжения расчета с введением новых минимальных и максимальных значений. Введенные величины будут использованы для задания диапазона изменения величин, указанных в вариантах (см. далее, п.4).

30

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