Приложение, позволяющее производить расчет заданной электрической схемы с различными параметрами
Изучение законов изменения электрических величин во времени, подбор двигателей в зависимости от входных параметров. Разработка программы, рассчитывающей параметры заданной схемы четырехполюсника методом интеграла Дюамеля. Код и листинг программы.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 25.12.2012 |
Размер файла | 744,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit12KeyPress(TObject *Sender, char &Key)
{
if ( (!(isdigit(Key))) && (!(Key ==VK_BACK)) && (!(Key ==',')) )
{
Key = 0;
ShowMessage("Недопустимый символ\nЗдесь нельзя вводить буквы \nМожно вводить цифры и \nнажимать BackSpace");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit13KeyPress(TObject *Sender, char &Key)
{
if ( (!(isdigit(Key))) && (!(Key ==VK_BACK)) && (!(Key ==',')) )
{
Key = 0;
ShowMessage("Недопустимый символ\nЗдесь нельзя вводить буквы \nМожно вводить цифры и \nнажимать BackSpace");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit14KeyPress(TObject *Sender, char &Key)
{
if ( (!(isdigit(Key))) && (!(Key ==VK_BACK)) && (!(Key ==',')) )
{
Key = 0;
ShowMessage("Недопустимый символ\nЗдесь нельзя вводить буквы \nМожно вводить цифры и \nнажимать BackSpace");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit15KeyPress(TObject *Sender, char &Key)
{
if ( (!(isdigit(Key))) && (!(Key ==VK_BACK)) && (!(Key ==',')) )
{
Key = 0;
ShowMessage("Недопустимый символ\nЗдесь нельзя вводить буквы \nМожно вводить цифры и \nнажимать BackSpace");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit21KeyPress(TObject *Sender, char &Key)
{
if ( (!(isdigit(Key))) && (!(Key ==VK_BACK)) && (!(Key ==',')) )
{
Key = 0;
ShowMessage("Недопустимый символ\nЗдесь нельзя вводить буквы \nМожно вводить цифры и \nнажимать BackSpace");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit22KeyPress(TObject *Sender, char &Key)
{
if ( (!(isdigit(Key))) && (!(Key ==VK_BACK)) && (!(Key ==',')) )
{
Key = 0;
ShowMessage("Недопустимый символ\nЗдесь нельзя вводить буквы \nМожно вводить цифры и \nнажимать BackSpace");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit23KeyPress(TObject *Sender, char &Key)
{
if ( (!(isdigit(Key))) && (!(Key ==VK_BACK)) && (!(Key ==',')) )
{
Key = 0;
ShowMessage("Недопустимый символ\nЗдесь нельзя вводить буквы \nМожно вводить цифры и \nнажимать BackSpace");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit24KeyPress(TObject *Sender, char &Key)
{
if ( (!(isdigit(Key))) && (!(Key ==VK_BACK)) && (!(Key ==',')) )
{
Key = 0;
ShowMessage("Недопустимый символ\nЗдесь нельзя вводить буквы \nМожно вводить цифры и \nнажимать BackSpace");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit25KeyPress(TObject *Sender, char &Key)
{
if ( (!(isdigit(Key))) && (!(Key ==VK_BACK)) && (!(Key ==',')) )
{
Key = 0;
ShowMessage("Недопустимый символ\nЗдесь нельзя вводить буквы \nМожно вводить цифры и \nнажимать BackSpace");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit31KeyPress(TObject *Sender, char &Key)
{
if ( (!(isdigit(Key))) && (!(Key ==VK_BACK)) && (!(Key ==',')) )
{
Key = 0;
ShowMessage("Недопустимый символ\nЗдесь нельзя вводить буквы \nМожно вводить цифры и \nнажимать BackSpace");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit32KeyPress(TObject *Sender, char &Key)
{
if ( (!(isdigit(Key))) && (!(Key ==VK_BACK)) && (!(Key ==',')) )
{
Key = 0;
ShowMessage("Недопустимый символ\nЗдесь нельзя вводить буквы \nМожно вводить цифры и \nнажимать BackSpace");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit33KeyPress(TObject *Sender, char &Key)
{
if ( (!(isdigit(Key))) && (!(Key ==VK_BACK)) && (!(Key ==',')) )
{
Key = 0;
ShowMessage("Недопустимый символ\nЗдесь нельзя вводить буквы \nМожно вводить цифры и \nнажимать BackSpace");
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit34KeyPress(TObject *Sender, char &Key)
{
if ( (!(isdigit(Key))) && (!(Key ==VK_BACK)) && (!(Key ==',')) )
{
Key = 0;
ShowMessage("Недопустимый символ\nЗдесь нельзя вводить буквы \nМожно вводить цифры и \nнажимать BackSpace");
}
}
UNIT1.H
#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include "BitmapButton.h"
#include "ColorButton.h"
#include "AdvProgressBar.hpp"
#include "GradientLabel.hpp"
#include <ExtCtrls.hpp>
#include <Graphics.hpp>
#include <ComCtrls.hpp>
#include "AdvPageControl.hpp"
#include <Dialogs.hpp>
#include <Chart.hpp>
#include <Series.hpp>
#include <TeEngine.hpp>
#include <TeeProcs.hpp>
#include <Grids.hpp>
#include <jpeg.hpp>
#include <math.h>
#include <unit3.h>
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published:// IDE-managed Components
TImage *Image1;
TBitmapButton *BitmapButton1;
TAdvPageControl *AdvPageControl1;
TAdvTabSheet *AdvTabSheet1;
TAdvTabSheet *AdvTabSheet2;
TBitmapButton *BitmapButton2;
TBitmapButton *BitmapButton3;
TBitmapButton *BitmapButton4;
TOpenDialog *OpenDialog1;
TTimer *Timer1;
TGradientLabel *GradientLabel1;
TGradientLabel *GradientLabel2;
TEdit *Edit1;
TGradientLabel *GradientLabel3;
TEdit *Edit2;
TGradientLabel *GradientLabel4;
TGradientLabel *GradientLabel5;
TGradientLabel *GradientLabel6;
TGradientLabel *GradientLabel7;
TEdit *Edit3;
TEdit *Edit4;
TEdit *Edit5;
TEdit *Edit6;
TGradientLabel *GradientLabel8;
TEdit *Edit7;
TColorButton *ColorButton1;
TChart *Chart1;
TGradientLabel *GradientLabel9;
TEdit *Edit8;
TEdit *Edit9;
TGradientLabel *GradientLabel10;
TEdit *Edit10;
TGradientLabel *GradientLabel11;
TLabel *Label1;
TLabel *Label2;
TStringGrid *StringGrid1;
TColorButton *ColorButton2;
TSaveDialog *SaveDialog1;
TMemo *Memo1;
TColorButton *ColorButton3;
TAdvTabSheet *AdvTabSheet3;
TGradientLabel *GradientLabel12;
TGradientLabel *GradientLabel13;
TGradientLabel *GradientLabel14;
TGradientLabel *GradientLabel15;
TGradientLabel *GradientLabel16;
TEdit *Edit11;
TGradientLabel *GradientLabel17;
TGradientLabel *GradientLabel18;
TEdit *Edit12;
TEdit *Edit13;
TEdit *Edit14;
TEdit *Edit15;
TGradientLabel *GradientLabel19;
TGradientLabel *GradientLabel20;
TGradientLabel *GradientLabel21;
TGradientLabel *GradientLabel22;
TGradientLabel *GradientLabel23;
TGradientLabel *GradientLabel24;
TImage *Image2;
TLabel *Label3;
TGradientLabel *GradientLabel25;
TGradientLabel *GradientLabel26;
TGradientLabel *GradientLabel27;
TGradientLabel *GradientLabel28;
TGradientLabel *GradientLabel29;
TGradientLabel *GradientLabel30;
TGradientLabel *GradientLabel31;
TGradientLabel *GradientLabel32;
TGradientLabel *GradientLabel33;
TGradientLabel *GradientLabel34;
TGradientLabel *GradientLabel35;
TGradientLabel *GradientLabel36;
TGradientLabel *GradientLabel37;
TLabel *Label4;
TImage *Image3;
TAdvProgressBar *AdvProgressBar1;
TAdvProgressBar *AdvProgressBar2;
TEdit *Edit16;
TEdit *Edit17;
TEdit *Edit18;
TEdit *Edit19;
TEdit *Edit20;
TEdit *Edit21;
TEdit *Edit22;
TEdit *Edit23;
TEdit *Edit24;
TEdit *Edit25;
TEdit *Edit26;
TEdit *Edit27;
TEdit *Edit28;
TEdit *Edit29;
TEdit *Edit30;
TBitmapButton *BitmapButton5;
TBitmapButton *BitmapButton6;
TAdvTabSheet *AdvTabSheet4;
TAdvTabSheet *AdvTabSheet5;
TGradientLabel *GradientLabel38;
TGradientLabel *GradientLabel39;
TColorButton *ColorButton4;
TTimer *Timer2;
TColorButton *ColorButton5;
TImage *Image4;
TGradientLabel *GradientLabel40;
TGradientLabel *GradientLabel41;
TGradientLabel *GradientLabel42;
TImage *Image5;
TGradientLabel *GradientLabel43;
TBitmapButton *BitmapButton7;
TGradientLabel *GradientLabel44;
TEdit *Edit31;
TGradientLabel *GradientLabel45;
TEdit *Edit32;
TGradientLabel *GradientLabel46;
TEdit *Edit33;
TEdit *Edit34;
TGradientLabel *GradientLabel47;
TColorButton *ColorButton6;
TAdvProgressBar *AdvProgressBar3;
TGradientLabel *GradientLabel48;
TColorButton *ColorButton7;
TColorButton *ColorButton8;
TColorButton *ColorButton9;
TColorButton *ColorButton10;
TColorButton *ColorButton11;
TColorButton *ColorButton12;
TFastLineSeries *Series1;
TFastLineSeries *Series2;
TEdit *Edit35;
TEdit *Edit36;
TGradientLabel *GradientLabel49;
TGradientLabel *GradientLabel50;
TGradientLabel *GradientLabel51;
TGradientLabel *GradientLabel52;
TGradientLabel *GradientLabel53;
TGradientLabel *GradientLabel54;
TEdit *Edit37;
TEdit *Edit38;
TGradientLabel *GradientLabel55;
void __fastcall BitmapButton1Click(TObject *Sender);
void __fastcall Image1MouseDown(TObject *Sender,
TMouseButton Button, TShiftState Shift, int X, int Y);
void __fastcall BitmapButton2Click(TObject *Sender);
void __fastcall FormCreate(TObject *Sender);
void __fastcall BitmapButton4Click(TObject *Sender);
void __fastcall BitmapButton3Click(TObject *Sender);
void __fastcall Timer1Timer(TObject *Sender);
void __fastcall ColorButton1Click(TObject *Sender);
void __fastcall ColorButton2Click(TObject *Sender);
void __fastcall ColorButton3Click(TObject *Sender);
void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
void __fastcall BitmapButton6Click(TObject *Sender);
void __fastcall ColorButton4Click(TObject *Sender);
void __fastcall FormCloseQuery(TObject *Sender, bool &CanClose);
void __fastcall BitmapButton5Click(TObject *Sender);
void __fastcall ColorButton5Click(TObject *Sender);
void __fastcall ColorButton6Click(TObject *Sender);
void __fastcall BitmapButton7Click(TObject *Sender);
void __fastcall ColorButton7Click(TObject *Sender);
void __fastcall ColorButton8Click(TObject *Sender);
void __fastcall ColorButton9Click(TObject *Sender);
void __fastcall ColorButton10Click(TObject *Sender);
void __fastcall ColorButton11Click(TObject *Sender);
void __fastcall ColorButton12Click(TObject *Sender);
void __fastcall Edit1KeyPress(TObject *Sender, char &Key);
void __fastcall Edit2KeyPress(TObject *Sender, char &Key);
void __fastcall Edit8KeyPress(TObject *Sender, char &Key);
void __fastcall Edit9KeyPress(TObject *Sender, char &Key);
void __fastcall Edit10KeyPress(TObject *Sender, char &Key);
void __fastcall Edit11KeyPress(TObject *Sender, char &Key);
void __fastcall Edit12KeyPress(TObject *Sender, char &Key);
void __fastcall Edit13KeyPress(TObject *Sender, char &Key);
void __fastcall Edit14KeyPress(TObject *Sender, char &Key);
void __fastcall Edit15KeyPress(TObject *Sender, char &Key);
void __fastcall Edit21KeyPress(TObject *Sender, char &Key);
void __fastcall Edit22KeyPress(TObject *Sender, char &Key);
void __fastcall Edit23KeyPress(TObject *Sender, char &Key);
void __fastcall Edit24KeyPress(TObject *Sender, char &Key);
void __fastcall Edit25KeyPress(TObject *Sender, char &Key);
void __fastcall Edit31KeyPress(TObject *Sender, char &Key);
void __fastcall Edit32KeyPress(TObject *Sender, char &Key);
void __fastcall Edit33KeyPress(TObject *Sender, char &Key);
void __fastcall Edit34KeyPress(TObject *Sender, char &Key);
private:// User declarations
public:// User declarations
__fastcall TForm1(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
class function
{
public:
double R1,C1;
void Set(double X=NULL,double Y=NULL);
void Run(void);
};
void function::Set(double X,double Y)
{
R1=X;
C1=Y;
};
void function::Run()
{
const double R11=22000;
const double C11=0.000125;
for(float w=0;w<=5;w+=0.25)
{
double Im=(-4*R1*C1*w)/pow((pow(R1,2)*pow(C1,2)*pow(w,2)+4),2);
double Re=(4-(pow(R1,2)*pow(C1,2)*pow(w,2)))/pow((pow(R1,2)*pow(C1,2)*pow(w,2)+4),2);
double A=sqrt((pow(Im,2)+pow(Re,2)));
double F=(atan(Im/Re));
Form3->Chart1->Series[0]->AddXY(w,A);
Form3->Chart2->Series[0]->AddXY(w,F);
double Im1=(-4*R11*C11*w)/pow((pow(R11,2)*pow(C11,2)*pow(w,2)+4),2);
double Re1=(4-(pow(R11,2)*pow(C11,2)*pow(w,2)))/pow((pow(R11,2)*pow(C11,2)*pow(w,2)+4),2);
double A1=sqrt((pow(Im1,2)+pow(Re1,2)));
double F1=(atan(Im1/Re1));
//Вывод стандаотных значений(черная линия);
Form3->Chart1->Series[1]->AddXY(w,A1);
Form3->Chart2->Series[1]->AddXY(w,F1);
};
};
#endif
4.4 БЛОК - СХЕМА ВЫВОДА ГРАФИКОВ
ЗАКЛЮЧЕНИЕ
приложение электрический параметр программа
В ходе выполнения курсовой работы было разработано приложение, позволяющее производить расчет заданной электрической схемы с различными параметрами, расчет параметров МПТ в двух режимах и расчет асинхронных двигателей. Была разработана система формирования удобных для дальнейшего восприятия отчетов. Развернутая система справки не только по приложению, но и по некоторым теоретическим сведениям по электротехнике и электромеханике.
ЛИТЕРАТУРА
ГОСТ 19.701-90 Схемы алгоритмов, программ данных и систем.
Бессонов Л.А. Теоретические основы электротехники. Электрические цепи. -- М.: Гардарики, 2002. -- 638 с.
Архангельский А.Я. C++ Builder 6. Справочное пособие. Книга 1. Язык C++. -- М.: Бином-Пресс, 2002 г. --- 544 ил.
А.Я. Архангельский, М.А. Тагин Программирование в C++ Builder 6 и 2006. - М.: ООО «Бином-Пресс», 2007 г. -1184 с.: ил.
Размещено на www.allbest.
Подобные документы
Разработка программы, которая по заданной самостоятельно функции будет выполнять интегрирование методом прямоугольников. Блок-схема алгоритма вычисления интеграла (функция rectangle_integrate). Экспериментальная проверка программы, ее текст на языке C.
курсовая работа [232,0 K], добавлен 27.05.2013Основные параметры устройства отображения информации. Обоснование выбора используемых ресурсов микроконтроллера и схемы включения. Разработка схемы алгоритма. Описание и отладка программы. Схема электрическая принципиальная и листинг трансляции программы.
курсовая работа [121,3 K], добавлен 12.12.2014Программная реализация методов вычислительной математики и их применения к расчету и оптимизации электрической схемы. Сущность первого и второго законов Кирхгофа. Компоненты, использованные для реализации интерфейса программы. Листинг программного кода.
курсовая работа [1,3 M], добавлен 14.01.2014Обозначения и термины, характерные для электрических систем при изложении узлового метода. Создание математической модели данного метода в виде системы алгебраических и трансцендентных уравнений. Структура и листинг программы анализа электрических схем.
отчет по практике [1,0 M], добавлен 29.05.2013Микропроцессоры позволяют строить универсальные устройства управления электронными весами. Разработка функциональной схемы, схемы алгоритма прикладной программы. Разработка принципиальной схемы, управляющей программы. Листинг управляющей программы.
курсовая работа [118,0 K], добавлен 04.07.2008Особенности метода численного интегрирования функции одной переменной. Замена на каждом элементарном отрезке подынтегральной функции на многочлен первой степени (линейную функцию). Разработка алгоритма программы, ее листинг. Пример работы программы.
контрольная работа [217,9 K], добавлен 14.07.2012Табличный вывод значений суммы ряда и номера последнего элемента суммы в зависимости от значений величин входных параметров с применением операторов ветвления и циклов. Блок-схема алгоритма решения. Время работы программы для расчета одного значения.
контрольная работа [762,9 K], добавлен 14.05.2013Написание прикладного Windows-приложения на примере программы-органайзера, позволяющей вести электронный ежедневник и телефонную записную книжку. Описание блок-схемы программы и операционной системы. Листинг результатов обработки на контрольном примере.
дипломная работа [2,5 M], добавлен 29.12.2014Проектирование схемы, выполненной на основе однокристального микроконтроллера 51 серии для получения с 8 аналоговых входов информации о изменении их состояния с течением времени. Параметры устройства, описание элементов схемы, листинг программы.
курсовая работа [627,2 K], добавлен 24.12.2012Разработка программы на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит на экран заданную информацию. Типы блок-схем и их использование при написании программы. Описание входных данных и результат вычислений, листинг программы.
курсовая работа [680,3 K], добавлен 03.08.2009