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

Автоматизация процесса расчета и построения зависимостей характеристического сопротивления, амплитудного значения тока и амплитудного значения от заданной частоты. Логическая структура программного продукта. Характеристика входных и выходных данных.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 22.04.2016
Размер файла 398,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

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

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

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

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

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

на тему

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

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

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

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

Одесса 2013

Содержание

  • Введение
  • 1. Описание программы
  • 1.1 Общие сведения
  • 1.2 Функциональное значение
  • 1.3 Логическая структура программы
  • 1.4 Используемые технические средства
  • 1.5 Входные данные программы
  • 1.6 Выходная информация программы
  • Выводы
  • Литература
  • Приложения

Введение

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

Целью данной курсовой работы является расчет и построение зависимостей характеристического сопротивления 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, содержащий следующие члены класса.

Поля,

staticint n;

static double [] W,Ul,Uc, IR;

staticdoubleR=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;

import javax. swing. *;

import java. io. *;

import java. util. *;

import java. awt. *;

import java. awt. event. *;

class Kursovaya extends Component{

static int n;

static double [] W,Ul,Uc, IR;

static double R=100,L=3e-3,C=1e-6;

static void calc () {

double W0=Math. sqrt (1/ (L*C));

double Q=1/ (R*C*W0);

double Wн=0.1*W0;

double Wк=3*W0;

double dW= (Wк-Wн) / (n-1);

W [0] =Wн;

for (int i=1; i<n; i++)

W [i] =W [i-1] +dW;

double I;

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

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

Ul [i] =W [i] *L*I;

Uc [i] =I/ (W [i] *C);

IR [i] =I*R; }

try{

File file = new File ("E: // out. txt");

PrintWriter output = new PrintWriter (file);

output. print ("_______W______");

output. print ("_______Ul______");

output. print ("_______Uc______");

output. print ("_______IR______");

output. println (" ");

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

output. printf ("|%10.5f |%10.5f |%10.5f |%10.5f |",W [i],Ul [i],Uc [i], IR [i]);

output. println (""); }

output. close (); }

catch (IOException e) {}}

public void paint (Graphics g) {

int height=getHeight (),width=getWidth ();

int left=15,right=15,up=15,down=40;

int i,j;

double xmax,xmin,ymax,ymin;

xmin=W [0]; xmax=W [0];

for (i=1; i<n; i++) {

if (W [i] <xmin) xmin=W [i];

if (W [i] >xmax) xmax=W [i]; }

ymax=Ul [0]; ymin=Ul [0];

for (i=1; i<n; i++) {

if (Ul [i] <ymin) ymin=Ul [i];

if (Ul [i] >ymax) ymax=Ul [i]; }

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

if (Uc [i] <ymin) ymin=Uc [i];

if (Uc [i] >ymax) ymax=Uc [i]; }

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

if (IR [i] <ymin) ymin=IR [i];

if (IR [i] >ymax) ymax=IR [i]; }

if (xmin>0) xmin=0; else

if (xmax<0) xmax=0;

if (ymin>0) ymin=0; else

if (ymax<0) ymax=0;

int x1= (int) (width* (left/100.));

int x2= (int) (width* (1- (right/100.)));

int y1= (int) (height* (up/100.));

int y2= (int) (height* (1- (down/100.)));

g. setColor (Color. white);

g. fillRect (x1,y1,x2-x1,y2-y1);

double kx= (x2-x1) / (xmax-xmin);

double ky= (y2-y1) / (ymax-ymin);

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

int y0= (int) (y1+ (ymax*ky));

g. setColor (Color. black);

g. drawLine (x1,y0,x2+10,y0);

g. drawLine (x2+10,y0,x2,y0-2);

g. drawLine (x2+10,y0,x2,y0+2);

g. drawString ("W, КГц",x2+10,y0-10);

g. drawLine (x1,y1-10,x1,y2);

g. drawLine (x1,y1-10,x1-2,y1);

g. drawLine (x1,y1-10,x1+2,y1);

g. drawString ("Ul,Uc, IR",x0-10,y1-20);

g. setColor (Color. red);

int xk1, xk2, yk1, yk2;

for (i=1; i<n; i++) {

xk1=x0+ (int) (kx*W [i-1]);

xk2=x0+ (int) (kx*W [i]);

yk1=y0- (int) (ky*Ul [i-1]);

yk2=y0- (int) (ky*Ul [i]);

g. drawLine (xk1,yk1,xk2,yk2); }

g. setColor (Color. black);

for (i=1; i<=n-1; i++) {

xk1=x0+ (int) (kx*W [i-1]);

xk2=x0+ (int) (kx*W [i]);

yk1=y0- (int) (ky*Uc [i-1]);

yk2=y0- (int) (ky*Uc [i]);

g. drawLine (xk1,yk1,xk2,yk2); }

g. setColor (Color. blue);

for (i=1; i<n; i++) {

xk1=x0+ (int) (kx*W [i-1]);

xk2=x0+ (int) (kx*W [i]);

yk1=y0- (int) (ky*IR [i-1]);

yk2=y0- (int) (ky*IR [i]);

g. drawLine (xk1,yk1,xk2,yk2); }

Font f = new Font ("Helvetcia",Font. BOLD,14);

g. setFont (f);

FontMetrics fm = g. getFontMetrics (f);

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

g. setColor (Color. red);

int x = (getWidth () - fm. stringWidth (s1) +50) /2;

g. drawLine (x,y2+80,x+50,y2+80);

g. drawString (s1,x+60,y2+80+fm. getAscent () /2);

g. setColor (Color. black);

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

g. drawLine (x,y2+100,x+50,y2+100);

g. drawString (s1,x+60,y2+100+fm. getAscent () /2);

g. setColor (Color. blue);

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

g. drawLine (x,y2+120,x+50,y2+120);

g. drawString (s1,x+60,y2+120+fm. getAscent () /2); }

public static void main (String [] args) throws IOException{

Scanner scan = new Scanner (System. in);

System. out. println ("Введите n");

n = scan. nextInt ();

W=new double [n];

Ul=new double [n];

Uc=new double [n];

IR=new double [n];

calc ();

JFrame f=new JFrame ("График зависимостей Uc (W),Ul (W), IR (W)");

f. setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE);

f. add (new Kursovaya ());

f. setSize (1000,769);

f. setVisible (true);

}}

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

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

Размещено на Allbest.ru


Подобные документы

  • Обоснование выбора языка программирования. Анализ входных и выходных документов. Логическая структура базы данных. Разработка алгоритма работы программы. Написание программного кода. Тестирование программного продукта. Стоимость программного продукта.

    дипломная работа [1008,9 K], добавлен 13.10.2013

  • Разработка процесса автоматизации взаимодействия преподавателя и студента через сайт и ведение централизованного процесса обработки данных. Создание графического интерфейса программы и физической модели базы данных. Расчет цены программного продукта.

    дипломная работа [6,1 M], добавлен 27.06.2011

  • Функциональное назначение программы "Автоматизация учета выпускаемой продукции"; описание ее логической структуры, необходимых входных и выходных данных, процедур вызова и загрузки. Определение экономического эффекта от внедрения программного продукта.

    дипломная работа [336,0 K], добавлен 14.04.2014

  • Значения выходных сигналов последовательностных схем. Особое значение элементов памяти – триггеров. Простейшие запоминающие ячейки как основа триггеров. Двоичный асинхронный счётчик (с последовательным переносом). Назначение регистров – хранение чисел.

    курс лекций [616,6 K], добавлен 28.04.2009

  • Методика расчета арендной платы на предприятии. Описание и документы предметной области, форматы входных и выходных документов. Построение логической модели данных, таблиц базы данных и типовых запросов. Проектирование экранных форм для ввода данных.

    дипломная работа [1,2 M], добавлен 19.01.2017

  • Обзор проектирования реляционной базы данных "Спортивные соревнования". Расчет экономического эффекта от использования программного продукта за период внедрения. Анализ входных и выходных форм, требований к техническому обеспечению, технологии доступа.

    курсовая работа [1,4 M], добавлен 12.12.2011

  • Создание программы для вычисления значения функции на основе определённой формулы. Уточнение структуры входных и выходных данных и определение ассемблерного формата их представления. Разработка алгоритмов для реализации работы программного обеспечения.

    курсовая работа [240,6 K], добавлен 17.06.2013

  • Создание схемы автоматизации парокотельной установки. Описание технологического процесса. Перечень входных и выходных переменных. Блок-схема технологического процесса. Разработка программы автоматизации с помощью программной среды LOGO! Soft Comfort.

    курсовая работа [826,7 K], добавлен 20.11.2013

  • Обзор существующих методов межпроцедурного анализа. Получение входных и выходных данных подпрограмм с помощью графа алгоритма. Описание входных и выходных данных подпрограммы в терминах фактических параметров. Определение параллелизма по графу алгоритма.

    учебное пособие [77,5 K], добавлен 28.06.2009

  • Разработка требований и целей проектируемого программного изделия, информационно-логической модели базы данных. Описания входных и выходных документов, взаимосвязи программных модулей. Исследование технологии инсталляции и запуска программного средства.

    курсовая работа [905,3 K], добавлен 20.01.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.