Расчет элементов электронных схем с помощью ЭВМ

  • Вид работы:
    Контрольная работа
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    211,38 Кб
  • Опубликовано:
    2016-04-22
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Расчет элементов электронных схем с помощью ЭВМ

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ

ОДЕССКИЙ ГОСУДАРСТВЕННЫЙ ЭКОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ

Кафедра информационных технологий

Факультет компьютерных наук







КОНТРОЛЬНАЯ РАБОТА

на тему

"Расчет элементов электронных схем с помощью ЭВМ"



Виполнил студент гр. К-11

Литовенко Юлия

Руководитель: доц. Кузниченко С.Д.





Одесса 2013

Содержание

 

Введение

1. Описание программы

1.1 Общие сведения

1.2 Функциональное значение

1.3 Логическая структура программы

1.4 Используемые технические средства

1.5 Входные данные программы

Выводы

Литература

Приложения

Введение

В электроприборах часто используются фильтры, которые пропускают сигналы в заданном диапазоне частот. Для подавления высокочастотных колебаний используются фильтры низких частот (ФНЧ), которые пропускают в нагрузку только низкие частоты.

Целью данной курсовой работы является расчет и построение зависимостей характеристического сопротивления IR (ω), амплитудное значение тока I (ω) амплитудное значение ЭДСE (ω) от частоты ω.

Зависимости необходимо построить для заданного диапазона частоты.

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

1. Описание программы


1.1 Общие сведения


Программа курсовой работы, написанная на языке программирования Java 2, содержится в загрузочном файле Kursovaya. class. Она может работать на любом компьютере, имеющем систему, реализующую JVM. При этом не важен ни тип процессора, ни архитектура компьютера.

Для выполнения байт-кодов на компьютере еще нужно иметь библиотеки классов Java под названием, JDK (JavaDevelopmentKit) или J2SDK.

Программу можно запустить из командной строкиMS-DOS Promptв Windows 95/98/ME или окна CommandPromptв Windows NT/2000 вызвав интерпретатор байт-кодов java, которому передается файл с байт-кодами, причем его имя записывается без расширения: javaKursovaya. На экране появляется вывод результатов работы программы в виде фреймового окна с графиками заданных функцийUl (ω),Uc (ω) и IR (ω) или сообщения об ошибках времени выполнения. Запустить программу можно и из интегрированной среды BlueJ.

 

1.2 Функциональное значение


Данная программа предназначена для расчета в электрической схеме, представляющей собой фильтр низких частот, зависимостей: характеристического сопротивленияIR (ω), амплитудное значение тока I (ω) амплитудное значение ЭДСE (ω) от частоты ω. частотыω и, вывода этих зависимости в текстовом и графическом режимах.

программный электронная схема

1.3 Логическая структура программы


В курсовой работе был создан класс Kursovaya, содержащий следующие члены класса.

Поля,n;double [] W,Ul,Uc, IR;=100,L=3e-3,C=1e-6; где n - количество интервалов разбиения по частоте, массивы W,Ul, Uc, IR содержат значения характеристического сопротивления для соответствующих значений частоты из массива W.

Методы,

staticvoidCalc () рассчитывает значения элементов массивовW,Ul, Ucи IRпо следующим формула:

Амплитудное значение тока-

 = ;

 



publicvoidpaint (Graphics g) строит графики зависимости значений характеристического сопротивления, сдвига фазы и коэффициента затухания от частоты во фреймовом окне. Набор классов, с помощью которых можно программировать оконные элементы и работать с графикой в Java, содержится в пакете java. awt. В пакете содержится большое количество различных классов для создания оконных объектов. Главным классом является класс Component, в котором реализованы основные функции поддержки графических элементов. Самое простое, так называемое фреймовое окно, можно создать с помощью объектов класса Frame.

Конструктор класса Frame может принимать в качестве параметра строку, которая используется как заголовок окна. JFrame f = newJFrame ("График зависимостей Uc (W),Ul (W), IR (W)");

Рисование графических объектов в окне размещаеться в методе paint (). Параметром метода должен являться экземпляр класса Graphicspublicvoidpaint (Graphicsg) {…}В классе Graphics находятся методы позволяющие выполнять рисование различных базовых объектов (линий, окружностей, прямоугольников), установку цвета, вывода текста и т.д.

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

 

1.4 Используемые технические средства


Программа, откомпилированная в байт-коды может выполняться на любом персональном компьютере, имеющем систему, реализующую JVM. При этом не важен ни тип процессора, ни архитектура компьютера. Кроме реализации JVM для выполнения байт-кодов на компьютере еще нужно иметь набор функций, вызываемых из байт-кодов и динамически компонующихся с байт-кодами. Этот набор оформляется в виде библиотеки классов Java, состоящей из одного или нескольких пакетов - JDK или новая версия Java 2 SDK, сокращенно J2SDK Файл Java 2 SDK SE, vl.5, в упакованном виде имеет размер около 30 Мбайт, и еще файл с упакованной документацией размером 23 Мбайта. Все это распаковывается в 210 Мбайт дискового пространства. Поэтому данная версия требует процессор Pentium 166 и выше и не менее 32 Мбайт оперативной памяти. J2SDK содержит компилятор javac из исходного текста в байт-коды; интерпретатор java, содержащий реализацию JVM; библиотеку классов Java API (Application Programming Interface) и др. важные программы.

 

1.5 Входные данные программы


В программе весь ввод осуществляется с клавиатуры. В основной программе вводятся: n - количество интервалов разбиения интервала частот.

 

1.6 Выходная информация программы


Программа вычисляет и выдает в текстовом и графическом видах зависимости характеристического сопротивления IR (ω), амплитудное значение тока I (ω) амплитудное значение ЭДСE (ω) от частоты ω.

В приложении приведена таблица зависимостей данных параметров ФНЧ от частоты, которую программа выводит в текстовый файл E: \\out. txt. Как видно из приложения таблица состоит из четырех колонок.

В первой колонке таблицы выводится значения частоты, а в остальных колонках выводятся значения характеристического сопротивления IR (ω), амплитудное значение тока I (ω) амплитудное значение ЭДСE (ω) от частоты ω.

Выводы


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

Литература


1.       Эккель Б. Философия Java.: BHV., СПб - 2001.850с.

2.      Морган М. Java 2. Руководство разработчика. - М.: Изд. дом "Вильямс", 2000.

3.      Нотон П., Шилдт Г. Полный справочник по Java. - Киев: Диалектика, 1997.

4.      Флэнэген Д. Java in a Nutshell. Полное руководство. - Киев: BHV, 1998

5.      Роганов Е.А. Основы информатики и программирования: Учебное пособие - М.: МГИУ, 2001. - 315 с.

Приложения

 

Приложение А. Листинг программы

 

import java. io. IOException;javax. swing. *;java. io. *;java. util. *;java. awt. *;java. awt. event. *;Kursovaya extends Component{int n;double [] W,Ul,Uc, IR;double R=100,L=3e-3,C=1e-6;void calc () {W0=Math. sqrt (1/ (L*C));Q=1/ (R*C*W0);Wн=0.1*W0;Wк=3*W0;dW= (Wк-Wн) / (n-1);

W [0] =Wн;(int i=1; i<n; i++)

for (int i=0; i<n; i++) {

I=1/ (Math. sqrt (1+Q*Q*Math. pow ( (W [i] /W0-W0/W [i]),2)));[i] =W [i] *L*I;[i] =I/ (W [i] *C);

IR [i] =I*R; }{file = new File ("E: // out. txt");output = new PrintWriter (file);. print ("_______W______");. print ("_______Ul______");. print ("_______Uc______");. print ("_______IR______");. println (" ");(int i=0; i<n; i++) {. printf ("|%10.5f |%10.5f |%10.5f |%10.5f |",W [i],Ul [i],Uc [i], IR [i]);. println (""); }. close (); }(IOException e) {}}void paint (Graphics g) {height=getHeight (),width=getWidth ();left=15,right=15,up=15,down=40;i,j;xmax,xmin,ymax,ymin;

xmin=W [0]; xmax=W [0];(i=1; i<n; i++) {(W [i] <xmin) xmin=W [i];(W [i] >xmax) xmax=W [i]; }=Ul [0]; ymin=Ul [0];(i=1; i<n; i++) {(Ul [i] <ymin) ymin=Ul [i];(Ul [i] >ymax) ymax=Ul [i]; }(i=0; i<n; i++) {(Uc [i] <ymin) ymin=Uc [i];(Uc [i] >ymax) ymax=Uc [i]; }(i=0; i<n; i++) {

if (IR [i] <ymin) ymin=IR [i];(IR [i] >ymax) ymax=IR [i]; }(xmin>0) xmin=0; else(xmax<0) xmax=0;(ymin>0) ymin=0; else(ymax<0) ymax=0;x1= (int) (width* (left/100.));x2= (int) (width* (1- (right/100.)));y1= (int) (height* (up/100.));y2= (int) (height* (1- (down/100.)));. setColor (Color. white);. fillRect (x1,y1,x2-x1,y2-y1);kx= (x2-x1) / (xmax-xmin);ky= (y2-y1) / (ymax-ymin);

int x0= (int) (x1- (xmin*kx));

int y0= (int) (y1+ (ymax*ky));. setColor (Color. black);. drawLine (x1,y0,x2+10,y0);. drawLine (x2+10,y0,x2,y0-2);. drawLine (x2+10,y0,x2,y0+2);. drawString ("W, КГц",x2+10,y0-10);. drawLine (x1,y1-10,x1,y2);. drawLine (x1,y1-10,x1-2,y1);. drawLine (x1,y1-10,x1+2,y1);. drawString ("Ul,Uc, IR",x0-10,y1-20);. setColor (Color. red);xk1, xk2, yk1, yk2;

for (i=1; i<n; i++) {=x0+ (int) (kx*W [i-1]);=x0+ (int) (kx*W [i]);=y0- (int) (ky*Ul [i-1]);=y0- (int) (ky*Ul [i]);. drawLine (xk1,yk1,xk2,yk2); }

g. setColor (Color. black);(i=1; i<=n-1; i++) {

xk1=x0+ (int) (kx*W [i-1]);=x0+ (int) (kx*W [i]);=y0- (int) (ky*Uc [i-1]);=y0- (int) (ky*Uc [i]);. drawLine (xk1,yk1,xk2,yk2); }

g. setColor (Color. blue);(i=1; i<n; i++) {

xk1=x0+ (int) (kx*W [i-1]);=x0+ (int) (kx*W [i]);=y0- (int) (ky*IR [i-1]);=y0- (int) (ky*IR [i]);. drawLine (xk1,yk1,xk2,yk2); }

Font f = new Font ("Helvetcia",Font. BOLD,14);. setFont (f);fm = g. getFontMetrics (f);

String s1="Зависимость Ul (w)";

g. setColor (Color. red);x = (getWidth () - fm. stringWidth (s1) +50) /2;. drawLine (x,y2+80,x+50,y2+80);. drawString (s1,x+60,y2+80+fm. getAscent () /2);. setColor (Color. black);="Зависимость Uc (w)";. drawLine (x,y2+100,x+50,y2+100);. drawString (s1,x+60,y2+100+fm. getAscent () /2);. setColor (Color. blue);="Зависимость IR (w)";. drawLine (x,y2+120,x+50,y2+120);. drawString (s1,x+60,y2+120+fm. getAscent () /2); }static void main (String [] args) throws IOException{scan = new Scanner (System. in);. out. println ("Введите n");= scan. nextInt ();=new double [n];=new double [n];=new double [n];=new double [n];();f=new JFrame ("График зависимостей Uc (W),Ul (W), IR (W)");. setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE);. add (new Kursovaya ());. setSize (1000,769);. setVisible (true);

}}

Приложение Б. График

 


Приложение В. Таблица расчетов

Похожие работы на - Расчет элементов электронных схем с помощью ЭВМ

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!