Для антиплагиата (1207203), страница 2
Текст из файла (страница 2)
Стартовая форма программы (рис. 1.2) представляет собой окно программы с кнопками, запускающих тот раздел, который вы желаете на данный момент.
Рисунок 1.2 – Стартовое окно программы
Мной была создана многооконная программа, которая позволяет, не закрывая одно окно программы, работать в другом окне. Это удобно тем, что можно по мере прочтения теории незамедлительно приступать к практике, выполняя лабораторную работу.
За раздел «Теория» отвечает соответствующая кнопка программы. Она запускает новое окно, в котором можно ознакомится с конструкцией тиристорного регулятора, и изучить шаги выполнения лабораторной работы, а также снятия необходимых показаний.
На языке программирования ObjectPascal программный код запуска нового окна выглядит следующим образом:
procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.show
end;
Далее, на экране появляется окно, которое предназначено для изучения теории тиристорного регулятора (рис. 1.3). Следует отметить здесь следующие компоненты: TImage и TScrollBox. Первый отвечает за представленный текст и чертежи. Текст представляет собой набор картинок в формате jpg, следующих друг за другом. А для того, чтобы текст можно было уместить в окне программы используется второй компонент, который прокручивает изображения. Для удобства прокрутки был написан код, который задействует колесико мыши. На языке программирования ObjectPascal программный код выглядит следующим образом:
procedure TForm2.WMMOUSEWHEEL(var Msg: TMessage);
var
zDelta: Integer;
begin
inherited;
if Msg.WParam < 0 then zDelta := -10 else zDelta := 10;
with ScrollBox1 do
begin
if ((VertScrollBar.Position = 0) and
(zDelta > 0)) or ((VertScrollBar.Position = VertScrollBar.Range - ClientHeight) and
(zDelta < 0)) then Exit;
ScrollBy(0, zDelta);
VertScrollBar.Position := VertScrollBar.Position - zDelta;
end;
end;
Рисунок 1.3 – окно «Теория»
Окно «Схема» представляет собой основное рабочее окно программы. Именно в нем выполнятся лабораторная работа и снимаются все измерения. Оно изображено на рисунке 1.4
Рисунок 1.4 – окно «Схема»
Отображение величин амперметра и вольтметра выводит компонент TLabel. К нему было применено свойство Caption, которое, в свою очередь, зависит от положения регулятора скорости – компонента TrackBar. Все величины были прописаны в соответствии с таблицей 1.1, и отображаются на датчиках в зависимости от значения скорости. На языке программирования ObjectPascal программный код выглядит следующим образом:
procedure TForm3.Timer2Timer(Sender: TObject);
begin
label13.Caption:='Скорость - '+ IntToStr(TrackBar1.SelEnd)+' км/ч';
if TrackBar1.SelEnd=0
then begin
labelB.Caption:='0'; labelC.Caption:='0';
end;
if TrackBar1.SelEnd=1
then begin
labelB.Caption:='0,08'; labelC.Caption:='0,03';
end;
if TrackBar1.SelEnd=2
then begin
labelB.Caption:='0,17'; labelC.Caption:='0,07';
end;
if TrackBar1.SelEnd=3
then begin
labelB.Caption:='0,25'; labelC.Caption:='0,10';
end;
if TrackBar1.SelEnd=4
then begin
labelB.Caption:='0,57'; labelC.Caption:='0,17';
end;
if TrackBar1.SelEnd=5
then begin
labelB.Caption:='0,88'; labelC.Caption:='0,23';
end;
if TrackBar1.SelEnd=6
then begin
labelB.Caption:='1,20'; labelC.Caption:='0,30';
end;
if TrackBar1.SelEnd=7
then begin
labelB.Caption:='1,63'; labelC.Caption:='0,37';
end;
if TrackBar1.SelEnd=8
then begin
labelB.Caption:='2,07'; labelC.Caption:='0,43';
end;
if TrackBar1.SelEnd=9
then begin
labelB.Caption:='2,50'; labelC.Caption:='0,50';
end;
if TrackBar1.SelEnd=10
then begin
labelB.Caption:='2,93'; labelC.Caption:='0,70';
end;
if TrackBar1.SelEnd=11
then begin
labelB.Caption:='3,37'; labelC.Caption:='0,90';
end;
if TrackBar1.SelEnd=12
then begin
labelB.Caption:='3,80'; labelC.Caption:='1,10';
end;
Этот фрагмент кода отображает значения изменения регулятора скорости до 12 км/ч. В программе значения скорости регулируются до 80 км/ч.
В программе также реализована функция построение графика изменения напряжения от скорости. Данный график можно увидеть, если нажать на клавишу «Задание/График». Он строится в зависимости от перемещения регулятора скорости и служит для наглядности и большей информативности. На рисунке 1.5 изображено данное окно программы.
Рисунок 1.5 – Построение графика в программе
На языке программирования ObjectPascal программный код выглядит следующим образом:
procedure TPagesDlg.Timer1Timer(Sender: TObject);
begin
Image3.Left:=Form3.TrackBar1.SelEnd*6;
Image3.Left:=image3.Left+38;
end;
1.2 Разработка приложения «Статический преобразователь напряжения (инвертор)»
1.2.1 Конструкция и принцип работы преобразователя напряжения
Все основные потребители электроэнергии пассажирских вагонов используют постоянный ток. В некоторых случаях в вагонах устанавливают потребители переменного тока. К ним, например, относятся аппаратура поездных радиопунктов, люминесцентные лампы. Переменный ток необходим также и для питания электробритв и других устройств пассажиров. Для получения в вагонах переменного тока промышленной частоты используются преобразователи постоянного напряжения 50 В в переменное 220 В, частотой 50 Гц. Существует два основных типа преобразователей - электромашинные и статические.
Электромашинные преобразователи представляют собой двигатель постоянного тока и генератор переменного тока, смонтированные в одном корпусе. В зависимости от конструкции электромашинные преобразователи можно разделить на три основных типа: одноякорные, двухякорные и индукторные с вращающимися полюсами генератора. Одноякорные преобразователи имеют общую магнитную систему и общий якорь.
У двухякорных преобразователей двигатель и генератор имеют самостоятельную магнитную систему, а якорь имеет две раздельных обмотки постоянного и переменного тока. Преобразователи третьего типа имеют на роторе постоянные магниты или электромагниты.
Статические преобразователи изготовляются на основе полупроводниковых приборов и позволяют получать переменный ток частотой до нескольких тысяч герц. Принцип работы полупроводниковых преобразователей (инверторов) удобно пояснить на примере упрощенной схемы (рис. 1.6).
Рисунок 1.6 – Упрощенная схема статического преобразователя
Первичная обмотка трансформатора Тр разделена на две равных части и имеет вывод от средней точки. В цепи каждой половины обмотки находятся выключатели S1 и S2. На выводы А и В подается постоянное напряжение. Если замкнуть выключатель S1 при разомкнутом S2, то ток пойдет через левую половину первичной обмотки, а если замкнуть S2 при разомкнутом S1, то ток пойдет через правую половину обмотки. Таким образом, поочередно размыкая и замыкая выключатели S1 и S2, мы меняем направление тока в частях первичной обмотки, то есть создаем в ней переменный ток. В результате, во вторичной обмотке трансформатора наводится переменная эдс.
В реальных схемах вместо выключателей S1 и S2 устанавливаются полупроводниковые приборы - транзисторы или тиристоры, которые закрываются автоматически и открываются автоматически, то есть работают в ключевом режиме. На рисунке 1.7 показана работа транзистора.
Рисунок 1.7 – Работа транзистора в ключевом режиме
Ток через транзистор проходит лишь в том случае, если на базе Б относительно эмиттера Э будет некоторое отрицательное напряжение. Если этого нет, то транзистор закрыт и ток через него не протекает. Подавая на базу транзистора импульсы различной полярности, можно управлять током коллектора К.
На рисунке 1.8 приведена одна из реальных схем статических преобразователей.
Рисунок 1.8 – Схема статического преобразователя напряжения
Транзисторы V1 и V2 работают в ключевом режиме, открываясь и закрываясь поочередно, поэтому и по первичным обмоткам W1 и W2 ток протекает поочередно. Направление тока в этих обмотках противоположное, следовательно, во вторичной обмотке W5 наводится переменное напряжение. Обмотки W3 и W4 осуществляют обратную связь. В них также наводится переменное напряжение, во время положительных полупериодов которого, транзисторы V1 и V2 поочередно закрываются, а во время отрицательных - открываются. Цепочка RC служит для подачи на базы транзисторов начального отрицательного напряжения смещения, то есть для некоторого начального приоткрывания транзисторов. Из-за разброса параметров транзисторов один из них в начальный момент времени будет открыт раньше, чем другой, и схема начнет работать.
1.2.2 Разработка алгоритма и создание программного кода
За основу была взята лабораторная установка со статическим преобразователем напряжения ППБ-50, который имеет схожее строение и принцип работы описанный выше. Данная программа предназначена для выполнения лабораторной работы «Исследование работы преобразователей напряжения».
В основе этой программы лежит тот же принцип многооконности, как и в лабораторной работе «Тиристорный регулятор». Применимо к этой работе, данный принцип позволяет одновременно следить за работой осциллографа и делать измерения непосредственно в рабочем окне программы.
Стартовое окно программы имеет такой же вид, как и стартовое окно программы «Тиристорный регулятор». Оно изображено на рисунке 1.2 и полностью отражает рабочий потенциал данной программы.
При нажатии клавиши «Теория», открывается теоретический раздел программы «Инвертор». В этом разделе отображена информация по данной лабораторной работе и методике её выполнения. На рисунке 1.9 показан скриншот данного окна.
Рисунок 1.9 – окно «Теория» программы «Инвертор»
Здесь также реализована функция прокрутки компонента TImage компонентом TScrollBox с помощью колесика мыши. Код этой операции представлен в описании программы «Тиристорный регулятор».
Рабочее окно программы представлено на рисунке 1.10 и имеет полный набор функционала лабораторного учебного стенда. Клавиша S1 отвечает за работу данного ключа и запускает программу. Как только загорится лампочка, стенд готов к выполнению лабораторной работы. Вольтметр V1 и амперметр A1 отображают напряжение и ток входящий в инвертор ППБ-50, а вольтметр V2 и амперметр A2 соответственно выходящее напряжение и ток.
Рисунок 1.10 – рабочее окно программы «Инвертор»: 1-индикатор включения ключа S1; 2-резистор; 3-активное сопротивление в виде ламп накаливания.
Программный код работы ключа выглядит следующим образом:
procedure TForm3.Button1Click(Sender: TObject);
begin
S1off.Visible:= not S1off.Visible
end;
Амперметры и вольтметры запускаются по включению данного ключа и зависят от свойства Visible. Для плавного перехода и имитации аналогового включения используется компонент TTimer основной палитры компонентов. На нем установлена задержка 500 мс.
Для плавного регулирования напряжения резистор 2 также использует компонент TTimer. На языке ObjectPascal программный код выглядит следующим образом: