Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
kursach.doc
Скачиваний:
0
Добавлен:
24.04.2019
Размер:
2.99 Mб
Скачать

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ

ЧЕРНІГІВСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ

Кафедра електричних систем і мереж

КУРСОВА РОБОТА

з дисципліни «Обчислювальна техніка, алгоритмічні мови

та програмне забезпечення»

Виконав

студент групи ЕМ-101 Горбань А.В.

Перевірив

ст. викладач Безручко В.М.

Чернігів - 2011

Зміст

Зміст 2

ВСТУП 3

Розділ 1 Алгоритм 5

1.1 Опис алгоритму. 5

1.2 Алгоритм у вигляді блок-схем. 11

Розділ 2 Виконана програма на мові object Pascal в середовищі Borland Delphi 7 21

2.1 Інтерфейс програми 21

2.2 Текст програми та модулів 25

2.2.1 Текст файлу проекту 25

2.2.2 Текст першого модуля 25

2.2.3 Текст другого модуля 36

2.2.4 Текст третього модуля 37

2.2.5 Текст четвертого модуля 38

2.2.6 Текст п'ятого модуля 41

Розділ 3 Результати тестування програми та інструкція користувача 42

3.1 Інструкція користувача. 42

3.2 Довідка. 45

3.3 Тест програми. 46

Висновок 50

Використана література 51

Додаток А. Виведення формул 52

ВСТУП

В сучасному світі чільне місце посідають комп'ютерні технології. Внаслідок швидкого розвитку цієї галузі комп'ютери тепер є доступними практично всім. А якщо людина має справу з комп'ютером, то рано чи пізно виникне бажання програмування. Але декілька років назад більшість мов програмування були досить складними для створення в них програм, якими було б зручно користуватись.

Бурхливий розвиток обчислювальної техніки, необхідність в ефективних засобах розробки програмного забезпечення призвели до появи систем програмування, орієнтованих на так звану «швидку розробку», серед яких можна виділити Borland Delphi. В основі систем швидкої розробки покладена технологія візуального проектування і подійного програмування, суть якої полягає в тому, що область розробки бере на себе більшу частину рутинної роботи, залишаючи програмісту роботу по конструюванню діалогових вікон і функцій обробки подій.

Delphi – це середовище швидкої розробки, в якій як мова програмування використовується мова Delphi. Мова Delphi – об'єктно-орієнтована мова, що строго типізується, в основі якої лежить добре знайомий програмістам Object Pascal.

Delphi – є середовищем розробки програм, яке використовує багато передових ідей і концепцій, закладених в графічному інтерфейсі Windows. Як відомо, середовище великою мірою визначає ефективність роботи програміста. У середовищі програмування Delphi є всі необхідні інструменти для того, щоб створювати повноцінні програми. Писати, компілювати і тестувати програму – все це можна робити, не виходячи з Delphi.

Delphi простий і логічний. Основні конструкції мови чітко виділяються в програмі, що сприяє хорошому сприйняттю написаного коду. Графічний інтерфейс Delphi відмінно продуманий, середовище розробки надає доступ тільки до тих ділянок коду, з якими необхідно працювати, приховуючи основну частину програми, яка створюється автоматично самою розробкою.

Для виконання даного проекту нам потрібно було використовувати мову програмування Delphi. Середовище Borland Delphi 7 має великі можливості в візуальному режимі, також значним плюсом було те, що в цьому семестрі ми вивчали цю мову програмування. До цього я знав лише одну мову програмування Pascal. Мова програмування Delphi основана на мові Pascal тому мені було не дуже складно вивчити цю мову. Також, в мене була література з користування даною програмою.

При виконанні даного проекту перед нами поставало завдання розробити оптимальний варіант програми і написати її зручною для користування – важливий аспект в подальшому її використанні. а також розробити програму, яка відповідала б всім критеріям якості програмного продукту, тобто слідуючим пунктам:

1. Відповідність програми поставленій задачі;

2. Надійність програми;

3. Ефективність;

4. Модифікаційність;

5. Читабельність тексту програми;

6. Документованість;

7. Простота супровіду.

У виборі алгоритму для даного проекту ми мали два варіанти адже розрахунок перехідних процесів можна виконувати двома методами, і передімною постав вибір між розрахунком класичним та операторним методами. Ми звичайно обрали розрахунок класичним методом, тому що цей метод використовується частіше для розрахунку перехідних процесів. Класичний метод розрахунку полягає в тому, що перехідна величина представляється як сума двох доданків: примушеної і вільної складових. Примушені складові відповідають сталому режиму й можуть бути знайдені звичайними методами розрахунку для кола після комутації. Вид примушених складових струму або напруги залежить як від форми ЕРС діючих у колі джерел, так і від конфігурації самого кола. Вільна складова обумовлюється енергією, що являє собою різницю запасів між усталеними режимами до й після комутації. Запас енергії кола мають тільки реактивні елементи. Вільні величини змінюються з часом за експоненціальними затухаючими функціями.

Першим важливим кроком у виконанні даного проекту є правильне виконання перехідних процесів, і правильне введення формул до програми, адже неправильно введені формули до програми, або неправильно виконані розрахунки перехідних процесів для даної схеми могли привести до зациклення або навіть зависання моєї програми. Спочатку саме така проблема у нас і була, програма зациклювалась і зависала. Чи то розрахунки перехідних процесів були виконані невірно, чи формули до програми були введені невірно. Але цієї проблеми вдалося позбутися. Нашу програму можна було б модернізувати, але в цьому не має потреби. Наш варіант написання програми для мене здається найоптимальнішим, тому що був ретельно продуманий і розроблений.

Все перший крок у виконанні даного проекту зроблено виконано розрахунки перехідних процесів для заданої схеми. Другим не менш важливим кроком у виконанні даного проекту стало виконання зовнішнього інтерфейсу програми. Так як ми поставили перед собою чітке завдання стосовно інтерфейсу програми, ми відразу уявляли зовнішній вигляд програми. Адже ми мали створити максимально практичну і функціональну програму.

Розділ 1 Алгоритм

1.1Опис алгоритму.

Як ми уже говорили що при початку виконання даного проекту ми мали вибір між двома методами розрахунку електричного кола, тобто двома алгоритмами вирішення даного проекту. Ми вибрали найоптимальніший варіант розрахунку, розрахунок класичним медом. Класичний метод розрахунку полягає в тому, що перехідна величина представляється як сума двох доданків: примушеної і вільної складових. Примушені складові відповідають сталому режиму й можуть бути знайдені звичайними методами розрахунку для кола після комутації. Вид примушених складових струму або напруги залежить як від форми ЕРС діючих у колі джерел, так і від конфігурації самого кола. Вільна складова обумовлюється енергією, що являє собою різницю запасів між усталеними режимами до й після комутації. Запас енергії кола мають тільки реактивні елементи. Вільні величини змінюються з часом за експоненціальними затухаючими функціями.

Отже, перехідний процес ми почали виконувати класичним методом. Першим кроком при виконанні перехідних процесів класичним методом є знаходження характеристичного опору Z(p) даної схеми. Це робиться для того щоб знайти та – корні характеристичного рівняння. Знайшовши характеристичний опір ми дорівняли його до нуля:

Z(p)= =0, () де Z(p) – характеристичний опір; – змінна яку потрібно знайти; – ємність конденсатора; – величина другого опору; – величина другого опору; – індуктивність котушки;

Потім формулу характеристичного рівняння ми звели до квадратного рівняння:

, () де – змінна яку потрібно знайти; – ємність конденсатора; – величина другого опору; – величина другого опору; – індуктивність котушки;

Подальші розрахунки перехідних процесів можуть виконуватися трьома методами в залежності від значення коренів даного рівняння, тобто залежать від дискримінанту. Якщо дискримінант дорівнює нулю то корні дійсні однакові, якщо менший нуля то корні комплексні, якщо більший нуля то корні дійсні різні. Для того щоб програма виконувала розрахунки в залежності від значення дискримінанту ми ввели в програму формулу для визначення дискримінанту:

, () де – дискримінант квадратного рівняння; – змінна яку потрібно знайти; – ємність конденсатора; – величина другого опору; – величина другого опору; – індуктивність котушки;

Потім ми використали оператор умовного переходу if, для того щоб по значенню дискримінанту програма вибирала подальші формули для розрахунку і побудови графіків.

Якщо дискримінант дорівнює нулю то програма вибирає розрахунки для цього значення дискримінанту. Спочатку програмі потрібно розрахувати значення коренів рівняння (). Оскільки дискримінант дорівнює нулю то корні мають однакове значення і розраховуються за формулою:

, () де – корні характеристичного рівняння; – ємність конденсатора; – величина другого опору; – величина другого опору; – індуктивність котушки;

Далі ми повинні знайти значення постійних інтегрування та . Туму що значення вільної складової напруги на конденсаторі ми представляємо у вигляді:

, () де – вільна складова напруги на конденсаторі; , – постійні інтегрування; – корні характеристичного рівняння; – час проходження перехідного процесу;

Для визначення цих значень ми складаємо систему рівнянь для початкових умов до комутації. І знаходимо значення цих невідомих постійних інтегрування. Докладніше про визначення постійних інтегрування див. додаток А.

Потім ми виводимо формулу для напруги на конденсаторі, записуємо її як суму вільної і примушеної складових:

, () де – напруга на конденсаторі; – значення джерела ЕРС; – величина першого опору; – величина другого опору; , – постійні інтегрування; – час проходження перехідного процесу; – корінь характеристичного рівняння;

Після виведення формули напруги на конденсаторі ми можемо знайти струм третьої гілки для цього ми беремо похідну від напруги і множимо її на ємність конденсатора, отримуємо формулу:

, () де – струм третьої гілки; – ємність конденсатора; – похідна напруги на конденсаторі; – час проходження перехідного процесу;

Струм другої гілки знаходиться як відношення напруги конденсатора до опору другої вітки, тому що напруга на паралельних вітках однакова, а струм дорівнює відношенню напруги до опору на якому шукається струм:

, () де – струм другої гілки; – напруга на конденсаторі; – величина другого опору;

Напруга на буде дорівнювати напрузі , тому що як ми говорили напруга на паралельних вітках однакова. Струм першої гілки буде дорівнювати сумі струмів третьої і другої гілок а напруга на буде дорівнювати добутку цього опору на струм першої гілки:

, () де – струм першої гілки; – струм другої гілки; – струм третьої гілки;

, () де – напруга на першому опорі; – величина першого опору; – струм першої гілки;

Напругу на котушці ми можемо знайти як добуток похідної струму першої гілки на індуктивність котушки L:

, () де – напруга на котушці; – індуктивність котушки; – похідна струму першої гілки;

Якщо, ж дискримінант більше нуля то програма вибирає розрахунки перехідних процесів для дискримінанта більше нуля. Розрахунки майже не відрізняються від попередніх розрахунків. Розрахунки відрізняються тільки розрахунками корнів характеристичного рівняння та . Тому що дискримінант більше нуля то ми матимемо два різних значення:

, () де – корінь характеристичного рівняння; – індуктивність котушки; – ємність конденсатора; – величина другого опору; – величина другого опору; – дискримінант квадратного рівняння;

, () де – корінь характеристичного рівняння; – індуктивність котушки; – ємність конденсатора; – величина другого опору; – величина другого опору; – дискримінант квадратного рівняння;

Якщо ж ввести значення елементів так що дискримінант менше нуля то ми матимемо два комплексні корні:

, () де – корінь характеристичного рівняння; – індуктивність котушки; – ємність конденсатора; – величина другого опору; – величина другого опору; – дискримінант квадратного рівняння;

, () де – корінь характеристичного рівняння; – індуктивність котушки; – ємність конденсатора; – величина другого опору; – величина другого опору; – дискримінант квадратного рівняння;

J у формулах комплексних корнів показує уявну частину комплексного числа. Там де не має J це дійсна частина комплексного числа. Після знаходження корнів характеристичного рівняння ми нарешті можемо вивести формулу напруги на конденсаторі:

, () де – напруга на конденсаторі; – значення джерела ЕРС; – величина першого опору; – величина другого опору; – постійна інтегрування; –дійсна частина комплексного числа; – уявна частина комплексного числа; – час проходження перехідного процесу; – постійна інтегрування;

Струм третьої гілки знаходимо так само як і для дискримінанту дорівнює нулю, похідна напруги на конденсаторі помножена на ємність конденсатора:

, () де – струм третьої гілки; – ємність конденсатора; – похідна напруги на конденсаторі; – час проходження перехідного процесу;

Всі подальші розрахунки виконуються аналогічно до розрахунків при дискримінанту меншому нуля. Напруга на буде дорівнювати напрузі , тому що напруга на паралельних вітках однакова. Струм першої гілки буде дорівнювати сумі струмів третьої і другої гілок а напруга на буде дорівнювати добутку цього опору на струм першої гілки:

, () де – струм першої гілки; – струм другої гілки; – струм третьої гілки;

, () де – напруга на першому опорі; – величина першого опору; – струм першої гілки;

Напругу на котушці ми можемо знайти як добуток похідної струму першої гілки на індуктивність котушки L:

, () де – напруга на котушці; – індуктивність котушки; – похідна струму першої гілки;

Після виведення формул і виконання розрахунків точок для графіків програма починає будувати графіки. Для розрахунку точок для графіка, та побудови самих графіків ми використали цикл for.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]