Проектирование электрических схем в Simulink
Принципы работы с пакетом Simulink, благодаря которому можно рассчитывать линейные цепи двухполюсников и четырехполюсников. Линейные цепи постоянного тока. Линейные электрические цепи переменного тока. Электрические фильтры. Диаграммы токов и напряжений.
Рубрика | Физика и энергетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 07.08.2013 |
Размер файла | 1,2 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Федеральное государственное автономное образовательное учреждение
высшего профессионального образования
«СИБИРСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ»
ИФРЭ
КУРСОВАЯ РАБОТА
Проектирования электрических схем в Simulink
Студент. Э.И. Мельник
Руководитель М.М. Валиханов
Красноярск 2012
Введение
Программа Simulink является приложением к пакетам MATLAB. При моделировании с использованием Simulink реализуется принцип визуального программирования, в соответствии с которым, пользователь на экране из библиотеки стандартных блоков создает модель устройства и осуществляет расчеты. При этом, в отличие от классических способов моделирования, пользователю не нужно досконально изучать язык программирования и численные методы математики, а достаточно общих знаний требующихся при работе на компьютере и, естественно, знаний той предметной области в которой он работает.
Simulink является достаточно самостоятельным инструментом MATLAB и при работе с ним совсем не требуется знать сам MATLAB и остальные его приложения. С другой стороны доступ к функциям MATLAB и другим его инструментам остается открытым и их можно использовать в Simulink. Часть входящих в состав пакетов имеет инструменты, встраиваемые в Simulink (например, LTI-Viewer приложения Control System Toolbox - пакета для разработки систем управления). Имеются также дополнительные библиотеки блоков для разных областей применения (например, Power System Blockset - моделирование электротехнических устройств, Digital Signal Processing Blockset - набор блоков для разработки цифровых устройств и т.д).
При работе с Simulink пользователь имеет возможность модернизировать библиотечные блоки, создавать свои собственные, а также составлять новые библиотеки блоков.
В ходе моделирования имеется возможность следить за процессами, происходящими в системе. Для этого используются специальные устройства наблюдения, входящие в состав библиотеки Simulink. Результаты моделирования могут быть представлены в виде графиков или таблиц.
1. Линейные цепи постоянного тока
Задание.
Для электрической цепи рис.1, соответствующей номеру варианта [2], выполнить следующее:
1) Определить токи во всех ветвях схемы методом узловых потенциалов. 2)Начертить потенциальную диаграмму для любого замкнутого контура, включающего обе ЭДС.
Рисунок 1 - Исходная электрическая схема
Линейная схема на постоянном токе. Схема состоит из четырёх активных элементов и пяти пассивных.
Для удобного ввода и вывода можно использовать интерфейс [1,5]. Пользователю предлагается вести в ячейки значение:
E1-значение идеального источника напряжения E1 вольт,
E2- значение идеального источника напряжения E4 вольт,
I1-значение идеального источника тока J1 ампер,
I2-значение идеального источника тока J5 ампер,
R1-значение сопротивление на резисторе R1 ом,
R2- значение сопротивление на резисторе R2 ом,
R3- значение сопротивление на резисторе R3 ом,
R4- значение сопротивление на резисторе R5 ом,
R5- значение сопротивление на резисторе R6 ом.
После этого нажать на кнопку «Решить».
Интерфейс представлен на рис.2, текст программы смотрите Приложение А.
Рисунок 2 -Окно интерфейса
Схема в окне редактора [5] представлена на рис.43.
Рисунок 3- Схема в окне редактора
После запуска симуляции. Измерения производятся с помощью специального блока Multimeter. Результат записывается в массив переменой simout это происходит в блоке ToWorkspace. В отдельном окне выводится таблица со значениями. В окне интерфейса строится график Потенциалов цепи.
Таблица 1 - Контрольные значения
16 |
35 |
1 |
1.5 |
16 |
25 |
60 |
45 |
1 |
Результат токов на рис.4, график Потенциалов цепи на рис.5. Для проверки токов можно воспользоваться первым законом Кирхгофа формула (1).
(1)
Рисунок 4- Результат токов в амперах.
Рисунок 5- Потенциальная диаграмма
Для проверки графика Потенциалов [4] цепи достаточно, чтобы график начинался значением ноль вольт, строится заземленный узел, и заканчивался значением ноль вольт, обозначает обход по контуру и возвращается в заземленный узел.
Вывод. Используя Simulink раздел SimPowersystem можно рассчитывать электрические линейные схемы на постоянном токе. Можно вычислить ток в каждой из ветви, измерить напряжения в узлах. Используя связь графического интерфейса и Simulink, даёт возможность быстро изменять параметры схемы, не меняя параметры в рабочем окне. В отдельном окне можно построить графики, которые дают наглядное представление закона Кирхгофа.
2. Линейные электрические цепи переменного тока
Задание
Для электрической цепи рис.6, соответствующей номеру варианта [2], выполнить следующее:
1) Определить комплексы действующих значений токов во всех ветвях, используя один из методов расчета линейных электрических цепей.
2) Построить топографическую диаграмму, совмещенную с векторной диаграммой токов.
Рисунок 6 - Исходная электрическая схема
Линейная схема на переменном токе. Схема состоит из двух активных элементов и четырех пассивных.
Для удобного ввода и вывода можно использовать интерфейс [5]. Пользователю предлагается вести в ячейки значение:
E1-значение идеального источника напряжения E1 вольт,
E2- значение идеального источника напряжения E2 вольт,
W-значение частоты источников Е1 и Е2 герц,
P1-значение начальной фазы источника Е1 градус,
P2-значение начальной фазы источника Е2 градус,
L1-значение индуктивности катушки L1 генри,
L2-значение индуктивности катушки L2 генри,
С1-значение емкости конденсатора С2 фарад,
R1- значение сопротивление на резисторе R3 ом.
После этого нажать кнопку «Решить».
Интерфейс представлен на рис.7, текст программы смотрите Приложение Б.
Рисунок 7- Окно интерфейса
Схема в окне редактора [5] представлена на рис.8
Рисунок 8 - Схема в окне редактора
После запуска симуляции. В отдельном окне выводится таблица со значениями. В окне интерфейса строится векторная диаграмма токов и напряжений.
Таблица 2 - Контрольные значения
70.5 |
84.6 |
12.7e-3 |
47.8e-3 |
31.9e-6 |
25 |
100 |
20 |
-10 |
Результат токов на рис.9, векторная диаграмма токов рис.10.
Для проверки токов можно воспользоваться первым и вторым законом Кирхгофа формула (2) [3].
(2)
Подставим значения.
Рисунок 9 -Значение токов в амперах
Рисунок 10-Диаграмма токов и напряжений
Для проверки векторной диаграммы [5] токов достаточно, чтобы график начинался в узле a равный ноль вольт, строится заземленный узел, в узле b обход по трем ветвям должен дать одинаковое значение потенциала b.
Вывод. Используя Simulink раздел SimPowersystem можно рассчитывать электрические линейные схемы на переменном токе. Можно вычислить ток в каждой из ветви, измерить напряжения в узлах. Используя связь графического интерфейса и Simulink, даёт возможность быстро изменять параметры схемы, не меняя параметры в рабочем окне. В отдельном окне можно построить графики, которые дают наглядное представление закона Кирхгофа.
3. Электрические фильтры
Задание
Произвести расчет режимов работы фильтра типа k по исходным данным [2]. Фильтр нижних частот собран по П-образной схеме рис.11. Ёмкость каждого конденсатора С, индуктивность катушки L. На входные зажимы фильтра подано напряжение при частоте f. К выходным зажимам фильтра подключено сопротивление, согласованное на заданной частоте с характеристическим сопротивлением фильтра.
Рисунок 11 -Исходный П образный фильтр
Схема является четырехполюсником. Схема собрана по П-образным фильтром нижних частот. Состоит из катушки индуктивности и двух параллельных конденсаторов.
Для удобного ввода и вывода можно использовать интерфейс [6]. Пользователю предлагается вести в ячейки значение:
E2- значение идеального источника напряжения E1 вольт,
L1-значение индуктивность катушки L генри,
C1-значение полной емкости конденсаторов цепи фарад,
F-значение частоты идеального источника напряжения E1 герц,
F0- значение начальной фазы идеального источника напряжения E1 в градусах.
После этого нажать кнопку «Решить».
Интерфейс представлен на рис.12, текст программы смотрите Приложение В.
Рисунок 12-Окно интерфейса
Схема в окне редактора [5] представлена на рис.13
Рисунок 13 -Схема П-образного фильтра в окне редактора
После запуска симуляции. В отдельном окне выводится таблица со значениями рис.14. В другом окне строится векторная диаграмма токов и напряжений рис.15.
Таблица 3 - Контрольные значения
25 |
0.001 |
2e-7 |
8000 |
20 |
Рисунок 14-Значение тока в амперах, напряжение в вольтах, сопротивление в омах
Рисунок 15-Векторная диаграмма токов и напряжений
Для проверки векторной диаграммы токов и потенциалов [4], достаточно чтобы график ток совпадал с напряжением на сопротивление и отставал на девяносто градусов от выходного напряжения.
Чтобы исследовать характеристики П-образного фильтра [3], например передаточные, удобно воспользоваться разделом SimRF подпункте Filtres. В этом подпункте находятся готовые модели фильтров с изменяемые параметрами:
Индуктивность катушки в генри,
Ёмкость для двух конденсаторов в фарадах,
Диапазон частот начальную частоту, шаг частоты и конечную частоту в герцах,
Входное сопротивление в омах,
Напряжение источника в вольтах.
Пользователю нужно открыть вкладку блока Output Port выбрать нужные характеристики, например параметры S11, S12, S21, S22, предаточные функции.
Выбирая между real и phase, можно построить АЧХ или ФЧХ [3]. Характеристики представлены на рис.17, рис.18, рис.19, рис.20.
Исследования характеристик П-образного фильтра рис.16.
Рисунок 16 -Схема П-образного фильтра в редакторе
Передаточная АЧХ RLC(R) цепи рис.17. Линия S12. На частоте от 0 до 8000Гц.
Рисунок 17-Передаточное АЧХ
Передаточная АЧХ RLC(L) цепи рис.18. Линия S22. На частоте от 0 до 8000Гц.
Рисунок 18-Передаточное АЧХ
Передаточная ФЧХ RLC(C) цепи рис.19. Линия S11. На частоте от 0 до 8000Гц.
Рисунок 19-Передаточное ФЧХ
Передаточная ФЧХ RLC(R) цепи рис.20. Линия S12. На частоте от 0 до 8000Гц.
Рисунок 20-Передаточное ФЧХ
Для доказательства фильтра нижних частот, достаточно чтобы при высоких частотах значение по АЧХ или ФЧХ ниже полосы пропускания [4].
Вывод. Используя Simulink раздел SimPowersystem, SimRF можно рассчитывать фильтры и их характеристики. Можно исследовать придаточные характеристики и строить векторные диаграммы токов и напряжений. Используя связь графического интерфейса и Simulink, даёт возможность быстро изменять параметры схемы, не меняя параметры в рабочем окне. В отдельном окне можно построить графики, которые дают наглядное представление характеристик П-фильтров и доказывают их принадлежность к фильтрам низких частот.
линейный цепь электрический ток
Заключение
Использования пакет Simulink можно рассчитывать линейные цепи двухполюсников и четырёхполюсников. Данные полученные из Simulink могут быть использованы для проверки, закрепление материала по предмету Основы Теории цепей. Можно наглядно увидеть значение величин в данной работе это ток и напряжение. Как они изменяются со временем на определённой частоте.
Измеряя цепь на постоянном токе в разделе Simpower system, опираясь на Теорию цепей можно проверить, токи по первому закону Кирхгофа, и по диаграмме потенциалов. Для этого нужно снять показания с узлов, напряжения с элементов. Оно делается автоматически в блоке Multimetr. В цепи с переменным током появились дополнительные параметры. Катушка индуктивности, конденсатор, частота источника, начальная фаза источника. Результат выводится в комплексном виде. Комплексную форму применима в построение векторной диаграммы токов и напряжений, которая показывает изменения векторов тока за один период.
Исследуя П-фильтр, задача была в доказательстве, что этот фильтр является фильтром низких частот. Раздел simRF находятся модели фильтров с изменяющимися параметрами такими как: индуктивность, ёмкость, пределы частот измерения, входное сопротивление. Для реализации источника использовал источник дискретного сигнала. Построив графики передаточных АЧХ и ФЧХ подтверждает, что фильтр низких частот.
Список литературы
1.Бадриев, И.Б., Разработка графического интерфейса в среде Matlab.Учебное пособие/ Бадриев, И.Б.-Казань: Казанский государственный университет, 2010. - 131 с.
2.Вепринцев, В.И., Основы теории цепей: Учеб. практикум/ В.И.Вепринцев. Красноярск: ИПЦ КГТУ, 2005. - 140 с.
3.Дьяконов, В.П. Matlab 6.5 SP1/7.0 Simulink 5/6 Обработка сигналов и проектирования фильтров. - СПБ.:Питер,2001. - 592 с.
4.Зернов, Н.В. Карпов, В.Г. Теория радиотехнических цепей: М.-Л., издательство «Энергия», 1965, - 892 стр.
5.Кетков Ю.Л., Кетков А.Ю., Шульц М.М. Matlab 7:программирование, численные методы. - СПБ.: БХВ-Петербург, 2005. - 752 с:ил.
6.Черных, И.В. Simulink:среда создания инженерных приложений / Под общ.
ред. к.т.н. В.Г.Потёмкина. - М.:ДИАЛОГ-МИФИ,2003. - 496с.
Приложения
Приложение А
Текст программы лабораторной №1
Текст интерфейса реализованный методом uicontrol.
function interface |
Название функции. |
|
global e e2 i i2 r r1 r2 r3 r4 a k |
Список глобальных переменных. |
|
f=figure(1); |
Метка для окна. |
|
set(f,'name','RGZ1','menubar','none'); |
Параметры фигуры. |
|
axis off |
Отключение оси. |
|
t=text(); |
Присвоение текстовому полю меток. |
|
t1=text(); |
||
t2=text(); |
||
t3=text(); |
||
t4=text(); |
||
t5=text(); |
||
t6=text(); |
||
t7=text(); |
||
t8=text(); |
||
t9=text(); |
||
t10=text(); |
||
t11=text(); |
||
t12=text(); |
||
t13=text(); |
||
set(t,'string','E1','BackgroundColor', [1 0 0],'FontSize',16, 'position', [-0.12,0.3-0.05]); |
Присвоение текстовым объектам значение текст. |
|
set(t1,'string','E2','BackgroundColor' ,[1 0 0],'FontSize',16, 'position', [0.2,0.3-0.05]); |
||
set(t2,'string','I1','BackgroundColor', [0 0 1],'FontSize',16, 'position', [0.52,0.3-0.05]); |
||
set(t3,'string','I2','BackgroundColor',[0 0 1], 'FontSize',16, 'position', [0.85,0.3-0.05]); |
||
set(t4,'string','R1','BackgroundColor',[0 1 0], 'FontSize',16, 'position', [-0.16,0.05]); |
||
set(t5,'string','R2','BackgroundColor',[0 1 0] ,'FontSize',16, 'position', [0.12,0.05]); |
||
set(t6,'string','R3','BackgroundColor' ,[0 1 0],'FontSize',16, 'position', [0.38,0.05]); |
||
set(t7,'string','R4','BackgroundColor', [0 1 0],'FontSize',16, 'position', [0.64,0.05]); |
||
set(t8,'string','R5','BackgroundColor' ,[0 1 0],'FontSize',16, 'position', [0.89,0.05]); |
||
set(t9,'string','Потенциальная диаграмма электрической цепи постоянного тока','BackgroundColor',[1 1 1], 'FontSize',8, 'position', [0.05,1.07]); |
||
set(t10,'string','Потенциал на узлах (В)',' BackgroundColor',[1 1 1],'FontSize',8, 'position', [-0.05,0.6],'Rotation',90); |
||
set(t11,'string','Сопротивление нагрузки (Ом)','BackgroundColor', [1 1 1],'FontSize',8, 'position', [0.3,0.35]); |
||
e=uicontrol('style','edit','units', 'normalized','position', [0.05*2.2,0.30.05,0.1,0.1], 'HorizontalAlignment', 'left','fontsize',12,'BackgroundColor', [1 1 1],'string' ,'0'); |
Текстовые поля ввода. |
|
e2=uicontrol('style','edit','units' ,'normalized','position', [0.16*2.2,0.30.05,0.1,0.1], 'HorizontalAlignment','left', 'fontsize',12,'BackgroundColor', [1 1 1],'string' ,'0'); |
||
i=uicontrol('style','edit','units','normalized','position', [0.27*2.2,0.30.05,0.1,0.1], 'HorizontalAlignment','left', 'fontsize',12,'BackgroundColor', [1 1 1],'string' ,'0'); |
||
i2=uicontrol('style','edit','units', 'normalized','position', [0.38*2.2,0.3-0.05,0.1,0.1], 'HorizontalAlignment', 'left','fontsize',12,'BackgroundColor' ,[1 1 1],'string' ,'0'); |
||
r=uicontrol('style','edit','units', 'normalized','position', [0.05*1.2,0.1,0.1,0.1] ,'HorizontalAlignment', 'left','fontsize',12,'BackgroundColor' ,[1 1 1],'string' ,'0'); |
||
r1=uicontrol('style','edit','units' ,'normalized','position', [0.16*1.8,0.1,0.1,0.1], 'HorizontalAlignment', 'left','fontsize', 12,'BackgroundColor',[1 1 1],'string' ,'0'); |
||
r2=uicontrol('style','edit','units', 'normalized','position', [0.27*1.8,0.1,0.1,0.1], 'HorizontalAlignment', 'left','fontsize',12, 'BackgroundColor',[1 1 1],'string' ,'0'); |
||
r3=uicontrol('style','edit','units', 'normalized','position', [0.38*1.8,0.1,0.1,0.1], 'HorizontalAlignment', 'left','fontsize',12, 'BackgroundColor',[1 1 1],'string' ,'0'); |
||
r4=uicontrol('style','edit','units','normalized','position', [0.49*1.8,0.1,0.1,0.1],'HorizontalAlignment' ,'left','fontsize',12, 'BackgroundColor',[1 1 1],'string' ,'0'); |
||
k=uicontrol('style','pushbutton', 'units','normalized','callback','rg', 'position',[0.35,0.01,0.3,0.08],'string',' Решить','BackgroundColor', [1 1 0],'FontSize',16); |
Присвоение кнопки «Решить» действие и запуск функции. |
|
a=axes(); |
Присвоение метки оси |
|
set(a,'outerposition',[0.05 0.4 0.8 0.6],'Layer','top','XLIM', [0,90],'YLIM',[-100 100], 'XGrid','on','YGrid','on'); |
Настройка параметров оси. |
|
set(t12,'string','\rightarrow', 'FontSize',8, 'position', [0.83,0.444]); |
Вставка стрелок на оси. |
|
set(t13,'string','\uparrow', 'FontSize',8, 'position', [0.021,1.05]); |
||
grid on |
Включение сетки. |
Текст программы, запускающийся после нажатия кнопки «Решить».
function rg |
Название функции. |
|
global e e2 i i2 r r1 r2 r3 r4 fu k a |
Глобальные переменные. |
|
v=get(k,'value'); |
Проверка события нажатие кнопки. |
|
t=1:1:9; |
||
t=[]; |
||
if v==1 |
||
f1=get(e,'string'); |
Считывание с текстовых полей. |
|
f2=get(e2,'string'); |
||
f3=get(i,'string'); |
||
f4=get(i2,'string'); |
||
f5=get(r,'string'); |
||
f6=get(r1,'string'); |
||
f7=get(r2,'string'); |
||
f8=get(r3,'string'); |
||
f9=get(r4,'string'); |
||
f9=get(r4,'string'); |
||
t(1)=str2num(f1); |
||
t(2)=str2num(f2); |
||
t(3)=str2num(f3); |
||
t(4)=str2num(f4); |
||
t(5)=str2num(f5); |
||
t(6)=str2num(f6); |
||
t(7)=str2num(f7); |
||
t(8)=str2num(f8); |
||
t(9)=str2num(f9); |
||
end |
||
c=figure(); |
Метка Окна. |
|
axis off |
Отключение осей |
|
o=text(); |
||
set(c,'name','RGZ1(Резултат)','menubar','none'); |
Настройка окна. |
|
set(o,'string','Результат','BackgroundColor', [1 0 0],'FontSize',32, 'position', [0.4,0.8]); |
||
open_system('RGZZ'); |
Открытие файла модели. |
|
set_param('RGZZ/EA','Amplitude',num2str(t(1))); |
Присвоение параметров блоков модели соответствии с названиями. |
|
set_param('RGZZ/EB','Amplitude',num2str(t(2))); |
||
set_param('RGZZ/IA','amplitude',num2str(t(3))); |
||
set_param('RGZZ/IB','amplitude',num2str(t(4))); |
||
set_param('RGZZ/RA','Resistance',num2str(t(5))); |
||
set_param('RGZZ/RB','Resistance',num2str(t(6))); |
||
set_param('RGZZ/RC','Resistance',num2str(t(7))); |
||
set_param('RGZZ/RD','Resistance',num2str(t(8))); |
||
set_param('RGZZ/RE','Resistance',num2str(t(9))); |
||
sim('RGZZ'); |
Симуляция модели. |
|
tab=uitable(); |
Включение таблицы. |
|
rnames = {'Сила тока(А)'}; |
Настройка таблицы. |
|
cnames = {'I1','I2','I3','I4','I5','I6'}; |
||
fer=num2str(izza.signals.values(1)); |
Перевод числа в строку. |
|
fer1=num2str(simout1.signals.values(1)); |
||
fer2=num2str(simout2.signals.values(1)); |
||
fer3=num2str(simout3.signals.values(1)); |
||
fer4=num2str(simout4.signals.values(1)); |
||
fer5=num2str(simout5.signals.values(1)); |
||
set(tab,'data',[str2num(fer(1:5)), str2num(fer1(1:5)),str2num(fer2(1:5)), str2num(fer3(1:5)),str2num(fer4(1:5)) str2num(fer5(1:5))], 'FontSize',16,'Position',[0 200 800 100],'RowName',rnames,'ColumnName',cnames); |
Запись значений в таблицу. |
|
figure(1) |
||
plot([025 41 41 42 87],[0,simout6.signals.values(1), simout7.signals.values(1), simout8.signals.values(1), uuz.signals.values(1), uuz1.signals.values(1)]); |
Построение диаграммы по данным симуляции. |
|
set(a,'Layer','top','XLIM', [0,90],'YLIM',[-100 100], 'XGrid','on','YGrid','on'); |
Настройка оси. |
Приложение Б
Текст программы лабораторной №2
Текст интерфейса, реализованный методом uicontrol.
function rgz2 |
Название функции. |
|
global e e2 i i2 r r1 a k f w p1 p2 |
Глобальные переменные. |
|
ff=fopen('boff','r'); |
Метка для бинарного файла. |
|
[c,n]=fread(ff,inf,'uchar'); |
Считывание с файла. |
|
fclose(ff); |
Закрытие файла. |
|
fll=1; |
Перевод текста из бинарного файла и присваивание его переменным. |
|
for i=1:1:n/2 |
||
ff=fopen('boff','r'); |
||
[c1,p]=fread(ff,i*2,'uchar'); |
||
ss(fll:fll+1)=char(c1(end-1:end)); |
||
fll=fll+2; |
||
c1=[]; |
||
end |
||
fclose(ff); |
||
f=figure(1); |
Метка Окна. |
|
set(f,'name','RGZ2','menubar','none'); |
Настройка окна. |
|
axis off |
Отключение оси |
|
t=text(); |
Присвоение меток текстовым объектам. |
|
t1=text(); |
||
t2=text(); |
||
t3=text(); |
||
t4=text(); |
||
t5=text(); |
||
t6=text(); |
||
t7=text(); |
||
t8=text(); |
||
t9=text(); |
||
t10=text(); |
||
t11=text(); |
||
t12=text(); |
||
t13=text(); |
||
t14=text(); |
||
set(t,'string',ss(3:4),'BackgroundColor',[1 0 0], 'FontSize',16, 'position', [-0.12,0.3-0.05]); |
Присваивание текстовым объектам значение текст. |
|
set(t1,'string',ss(5:6),'BackgroundColor', [1 0 0],'FontSize',16, 'position', [0.2,0.3-0.05]); |
||
set(t2,'string',ss(7:8),'BackgroundColor', [0 0 1],'FontSize',16, 'position', [0.52,0.3-0.05]); |
||
set(t3,'string',ss(1:2),'BackgroundColor', [0 0 1],'FontSize',16, 'position', [0.85,0.3-0.05]); |
||
set(t4,'string',ss(9:10),'BackgroundColor', [0 1 0],'FontSize',16, 'position', [-0.16,0.05]); |
||
set(t5,'string',ss(11:12),'BackgroundColor', [0 1 0],'FontSize',16, 'position', [0.04,0.05]); |
||
set(t6,'string',ss(15:16),'BackgroundColor', [0 1 0],'FontSize',16, 'position', [0.25,0.05]); |
||
set(t8,'string',ss(19:20),'BackgroundColor', [0 1 0],'FontSize',16, 'position', [0.59,0.05]); |
||
set(t14,'string',ss(21:22),'BackgroundColor', [0 1 0],'FontSize',16, 'position', [0.78,0.05]); |
||
set(t9,'string','Векторная диаграмма токов','BackgroundColor', [1 1 1],'FontSize',8, 'position', [0.05,1.07]); |
||
set(t10,'string','Мнимая часть (В А*0,1)', 'BackgroundColor',[1 1 1],'FontSize',8, 'position', [-0.05,0.6],'Rotation',90); |
||
set(t11,'string','Действительная часть(В А*0,1)','BackgroundColor', [1 1 1],'FontSize',8, 'position', [0.3,0.35]); |
||
e=uicontrol('style','edit','units','normalized', 'position', [0.05*2.2,0.3-0.05,0.1,0.1], 'HorizontalAlignment','left', 'fontsize',12,'BackgroundColor' ,[1 1 1],'string' ,'12.7e-3'); |
Создание текстовых полей ввода. |
|
e2=uicontrol('style','edit','units', 'normalized','position', [0.16*2.2,0.3-0.05,0.1,0.1], 'HorizontalAlignment', 'left','fontsize',12,'BackgroundColor', [1 1 1],'string' ,'47.8e-3'); |
||
i=uicontrol('style','edit','units','normalized', 'position', [0.27*2.2,0.3-0.05,0.1,0.1], 'HorizontalAlignment','left', 'fontsize',12,'BackgroundColor', [1 1 1],'string' ,'31.9e-6'); |
||
i2=uicontrol('style','edit','units', 'normalized','position', [0.38*2.2,0.3-0.05,0.1,0.1],'HorizontalAlignment','left','fontsize', 12,'BackgroundColor',[1 1 1],'string' ,'25'); |
||
r=uicontrol('style','edit','units','normalized','position', [0.05*1.2,0.1,0.1,0.1],'HorizontalAlignment', 'left','fontsize',12, 'BackgroundColor',[1 1 1],'string' ,'75'); |
||
r1=uicontrol('style','edit','units','normalized','position', [0.12*1.8,0.1,0.09,0.1],'HorizontalAlignment', 'left','fontsize',12,'BackgroundColor',[1 1 1], 'string' ,'84.6'); |
||
w=uicontrol('style','edit','units', 'normalized','position', [0.2*1.8,0.1,0.09,0.1], 'HorizontalAlignment', 'left','fontsize',12,'BackgroundColor', [1 1 1],'string' ,'100'); |
||
p1=uicontrol('style','edit','units','normalized','position', [0.36*1.8,0.1,0.09,0.1],'HorizontalAlignment', 'left','fontsize',12, 'BackgroundColor',[1 1 1],'string' ,'20'); |
||
p2=uicontrol('style','edit','units', 'normalized','position', [0.44*1.8,0.1,0.09,0.1], 'HorizontalAlignment', 'left','fontsize',12,'BackgroundColor', [1 1 1],'string' ,'-10'); |
||
k=uicontrol('style','pushbutton','units', 'normalized','callback','rg','position', [0.35,0.01,0.3,0.08],'string',ss(13:14), 'BackgroundColor',[1 1 0],'FontSize',16); |
Создание кнопки «Решить» запуск функции. |
|
a=axes(); |
Метка оси. |
|
set(a,'outerposition',[0.05 0.4 0.8 0.6], 'Layer','top','XLIM',[-20,20],'YLIM', [-20 ,20],'XGrid','on','YGrid','on'); |
Настройка оси. |
|
set(t12,'string','\rightarrow','FontSize',8, 'position', [0.83,0.444]); |
Добавление стрелок к осям. |
|
set(t13,'string','\uparrow', 'FontSize',8, 'position', [0.025,1.05]); |
||
grid on |
Включение сетки. |
Текст программы, запускающийся после нажатия кнопки «Решить».
function rg |
Название функции. |
|
global e e2 i i2 r r1 r2 r3 r4 fu k a w p1 p2 |
Глобальные переменные |
|
v=get(k,'value'); |
Проверка события нажатия кнопки |
|
t=1:1:9; |
||
t=[]; |
||
if v==1 |
||
f1=get(e,'string'); |
Считывания данных с текстового поля. |
|
f2=get(e2,'string'); |
||
f3=get(i,'string'); |
||
f4=get(i2,'string'); |
||
f5=get(r,'string'); |
||
f6=get(r1,'string'); |
||
f8=get(w,'string'); |
||
f10=get(p1,'string'); |
||
f11=get(p2,'string'); |
||
t(1)=str2num(f1); |
||
t(2)=str2num(f2); |
||
t(3)=str2num(f3); |
||
t(4)=str2num(f4); |
||
end |
||
c=figure(); |
Метка Окна. |
|
axis off |
Отключение оси. |
|
f10(end+1:end+3)='+90'; |
Приписка 90 градусов для Косинусоидального источника |
|
f11(end+1:end+3)='+90'; |
||
open_system('rgz3'); |
Открытие модели. |
|
set_param('rgz3/l1','Inductance',num2str(t(1)*0.001)); |
Присвоение значения блокам согласно их названий. |
|
set_param('rgz3/l2','Inductance',num2str(t(2)*0.001)); |
||
set_param('rgz3/l3','Capacitance',num2str(t(3)*0.001)); |
||
set_param('rgz3/R1','Resistance',num2str(t(4))); |
||
set_param('rgz3/E1','Amplitude',f5); |
||
set_param('rgz3/E1','Frequency',f8); |
||
set_param('rgz3/E1','Phase',f10); |
||
set_param('rgz3/E2','amplitude',f6); |
||
set_param('rgz3/E1','Phase',f11); |
||
sim('rgz3'); |
Симуляция модели. |
|
tab=uitable(); |
Метка таблицы. |
|
rnames = {'Сила тока(А)'}; |
Настройка таблицы. |
|
cnames = {'I1','I2','I3'}; |
||
set(tab,'data',[simout6(1);simout7(1);simout8(1)]', 'FontSize',16,'Position',[0 200 800 100],'RowName', rnames,'ColumnName',cnames); |
Запись значения в таблицу. |
|
figure(1) |
Открытия окна. |
|
hold on |
Наложение графиков. |
|
plot([0,real(simout1(1))*0.2,-real(simout(1))*0.2], [0,imag(simout1(1))*0.2,-imag(simout(1))*0.2], '--gs',[0,real(simout3(1))*0.2,real(simout2(1))*0.2], [0,imag(simout3(1))*0.2,imag(simout2(1))*0.2], '--bs',[0,real(simout5(1))*0.2,real(simout4(1))*0.2], [0,imag(simout5(1))*0.2,imag(simout4(1))*0.2],'--rs'); |
Постройка векторной диаграммы, отделяя действительную и мнимую часть. |
|
plot([0,real(simout6(1)*5)],[0,imag(simout6(1)*5)], '--g',[0,real(simout7(1)*5)],[0,imag(simout7(1)*5)], '--y',[0,real(simout8(1)*5)], [0,imag(simout8(1)*5)],'-b'); |
||
plot([-20,20],[0,0],'--ys'); |
Линии осей |
|
plot([0,0],[-20,20],'--ys'); |
||
axis([-20,20,-20,20]); |
||
text(real(simout6(1)*5),imag(simout6(1)*5)+2.5,'I1'); |
Подпись векторов. |
|
text(real(simout7(1)*5),imag(simout7(1)*5)+2.5,'I2'); |
||
text(real(simout8(1)*5),imag(simout8(1)*5)+2.5,'I3'); |
||
grid on; |
Включение сетки. |
|
set(a,'Layer','top','XLIM',[-20,20],'YLIM', [-20 20],'XGrid','on','YGrid','on'); |
Настройка оси. |
Приложение В
Текст программы лабораторной №3
Текст интерфейса, реализованный методом uicontrol.
function interface |
Название функции. |
|
global e e2 i i2 r r1 r2 r3 r4 a k |
Глобальные переменые. |
|
f=figure(1); |
Метка Окна. |
|
set(f,'outerposition',[500 400 600 100], 'menubar','none','Resize','off','name','RGZ3'); |
Настройки Окна. |
|
axis off |
Отключение осей. |
|
t=text(); |
Метки текстовых объектов. |
|
t1=text(); |
||
t2=text(); |
||
t3=text(); |
||
t4=text(); |
||
t5=text(); |
||
t6=text(); |
||
t7=text(); |
||
t8=text(); |
||
t9=text(); |
||
t10=text(); |
||
t11=text(); |
||
t12=text(); |
||
t13=text(); |
||
set(t4,'string','L1','BackgroundColor', [0 1 0],'FontSize',16, 'position', [-0.16,0.8]); |
Присваивание текстовым объектам параметра текст. |
|
set(t5,'string','C1','BackgroundColor', [0 1 0],'FontSize',16, 'position', [0.12,0.8]); |
||
set(t6,'string','F','BackgroundColor',[0 1 0], 'FontSize',16, 'position', [0.38,0.8]); |
||
set(t7,'string','F0','BackgroundColor',[0 1 0], 'FontSize',16, 'position', [0.64,0.8]); |
||
set(t8,'string','E2','BackgroundColor',[0 1 0], 'FontSize',16, 'position', [0.89,0.8]); |
||
r=uicontrol('style','edit','units','normalized','position', [0.05*1.2,0.4,0.1,0.4],'HorizontalAlignment', 'left','fontsize',12,'BackgroundColor',[1 1 1],'string' ,'0'); |
Создание текстовых полей ввода. |
|
r1=uicontrol('style','edit','units','normalized','position', [0.16*1.8,0.4,0.1,0.4],'HorizontalAlignment', 'left','fontsize',12,'BackgroundColor',[1 1 1],'string' ,'0'); |
||
r2=uicontrol('style','edit','units','normalized','position', [0.27*1.8,0.4,0.1,0.4],'HorizontalAlignment', 'left','fontsize',12,'BackgroundColor',[1 1 1],'string' ,'0'); |
||
r3=uicontrol('style','edit','units','normalized','position', [0.38*1.8,0.4,0.1,0.4],'HorizontalAlignment', 'left','fontsize',12,'BackgroundColor',[1 1 1],'string' ,'0'); |
||
r4=uicontrol('style','edit','units','normalized','position', [0.49*1.8,0.4,0.1,0.4],'HorizontalAlignment', 'left','fontsize',12,'BackgroundColor',[1 1 1],'string' ,'0'); |
||
k=uicontrol('style','pushbutton','units','normalized', 'callback','rg','position',[0.35,0.01,0.35,0.3],'string', 'Решить','BackgroundColor',[1 1 0],'FontSize',16); |
Создание кнопки «Решить» запуск функции. |
Текст программы, запускающийся после нажатия кнопки «Решить».
function rg |
Название функции. |
|
global e e2 i2 r r1 r2 r3 r4 k a |
Глобальные переменные. |
|
v=get(k,'value'); |
Проверка события нажатии кнопки. |
|
t=1:1:9; |
||
t=[]; |
||
if v==1 |
||
f5=get(r,'string'); |
Считывание данных с текстовых полей. |
|
f6=get(r1,'string'); |
||
f7=get(r2,'string'); |
||
f8=get(r3,'string'); |
||
f9=get(r4,'string'); |
||
f9=get(r4,'string'); |
||
t(5)=str2num(f5); |
||
t(6)=str2num(f6); |
||
t(7)=str2num(f7); |
||
t(8)=str2num(f8); |
||
t(9)=str2num(f9); |
||
end |
||
c=figure(); |
Метка Окна. |
|
axis off |
Отключение оси. |
|
o=text(); |
Метка текстового объекта. |
|
set(c,'name','RGZ3(Резултат)','menubar','none'); |
Настройка окна. |
|
set(o,'string','Результат','BackgroundColor', [1 0 0],'FontSize',32, 'position', [0.4,0.8]); |
Присвоение текстовому объекту значение текст. |
|
open_system('RGZ4'); |
Открытие модели. |
|
open_system('rrr'); |
Открытие модели. |
|
set_param('RGZ4/powergui','frequency' ,num2str(t(7))); |
Присвоение значения блокам согласно их имён. |
|
set_param('RGZ4/E','amplitude', num2str(t(9))); |
||
set_param('rrr/sorce','amplitude',num2str(t(9))); |
||
set_param('RGZ4/l1','Inductance', num2str(t(5))); |
||
set_param('RGZ4/c1','Capacitance', num2str(t(6)/2)); |
||
set_param('RGZ4/c2','Capacitance', num2str(t(6)/2)); |
||
set_param('RGZ4/E','Frequency', num2str(t(7))); |
||
set_param('rrr/sorce','Frequency', num2str(t(7))); |
||
set_param('RGZ4/E','Phase', num2str(t(8)+90)); |
||
set_param('rrr/sorce','Phase', num2str((t(8)+90)/(360/(2*pi)))); |
||
sim('RGZ4'); |
Симуляция модели. |
|
sim('rrr'); |
Симуляция модели. |
|
tab=uitable(); |
Метка таблицы. |
|
rnames = {'Сила тока(А)'}; |
Настройка таблицы. |
|
cnames = {'I1','I2','U','R'}; |
||
set(tab,'data',[simout2(1),simout4(1), simout(1),simout(1)/simout2(1)+1], 'FontSize',16,'Position',[0 200 1000 100], 'RowName',rnames, 'ColumnName',cnames); |
Заполнение таблицы. |
|
c2=figure(); |
Метка Окна. |
|
set(c2,'name','RGZ3 Графики'); |
Настройка окна. |
|
clear i |
||
aam=t(9)*exp(i*t(8)); |
||
plot([0,real(aam)],[0,imag(aam)], [0,real(simout(1)/simout2(1)+1)], [0,imag(simout(1)/simout2(1)+1)*0.01], [0,real(simout2(1)*50)],[0,imag(simout2(1)*50)], [0,real(simout(1))],[0,imag(simout(1))]); |
Построение векторной диаграммы, отделяя мнимую и действительную часть. |
|
grid on |
Включение сетки. |
|
title('Векторная диаграмма токов и потенциалов'); |
Настройка оси. |
|
xlabel('RE(U В I А*100)'); |
||
ylabel('Im(U В I А*100)'); |
||
legend('Uвх','Zвых','I','Uых',1); |
Размещено на Allbest.ru
Подобные документы
Решение задач: линейные электрические цепи постоянного и синусоидального тока и трехфазные электрические цепи синусоидального тока. Метод контурных токов и узловых потенциалов. Условия задач, схемы электрических цепей, поэтапное решение и проверка.
курсовая работа [86,5 K], добавлен 23.10.2008Основные законы и методы анализа линейных цепей постоянного тока. Линейные электрические цепи синусоидального тока. Установившийся режим линейной электрической цепи, питаемой от источников синусоидальных ЭДС и токов. Трехфазная система с нагрузкой.
курсовая работа [777,7 K], добавлен 15.04.2010Расчет трехфазной цепи с несимметричной нагрузкой. Определение тягового усилия электромагнита. Магнитные цепи с постоянными магнитодвижущими силами. Расчет неразветвленной магнитной цепи. Свойства ферромагнитных материалов. Фазные и линейные токи.
презентация [1,6 M], добавлен 22.09.2013Анализ электрического состояния линейных и нелинейных электрических цепей постоянного тока. Расчет однофазных и трехфазных линейных электрических цепей переменного тока. Переходные процессы в электрических цепях, содержащих конденсатор и сопротивление.
курсовая работа [4,4 M], добавлен 14.05.2010Вычисление численного значения токов электрической цепи и потенциалов узлов, применяя Законы Ома, Кирхгофа и метод наложения. Определение баланса мощностей и напряжения на отдельных элементах заданной цепи. Расчет мощности приемников (сопротивлений).
практическая работа [1,4 M], добавлен 07.08.2013Электрические цепи постоянного тока. Электромагнетизм. Однофазные и трехфазные цепи переменного тока. Электрические машины постоянного и переменного тока. Методические рекомендации по выполнению контрольных работ "Расчет линейных цепей постоянного тока".
методичка [658,2 K], добавлен 06.03.2015Расчет разветвленной цепи постоянного тока с одним или несколькими источниками энергии и разветвленной цепи синусоидального переменного тока. Построение векторной диаграммы по значениям токов и напряжений. Расчет трехфазной цепи переменного тока.
контрольная работа [287,5 K], добавлен 14.11.2010Цепи с одним источником питания. Закона Ома, первый и второй законы Кирхгофа. Метод контурных токов. Примеры решения задач. Составление уравнения баланса мощностей согласно закону сохранения энергии. Выбор условно положительных направлений токов в ветвях.
презентация [647,8 K], добавлен 22.09.2013Линейные цепи постоянного тока, вычисление в них тока и падения напряжения, сопротивления. Понятие и закономерности распространения тока в цепях переменного тока. Расчет цепей символическим методом, реактивные элементы электрической цепи и их анализ.
методичка [403,7 K], добавлен 24.10.2012Явление резонанса в цепи переменного тока. Проверка закона Ома для цепи переменного тока. Незатухающие вынужденные электрические колебания. Колебательный контур. Полное сопротивление цепи.
лабораторная работа [46,9 K], добавлен 18.07.2007