Вход на сайт Навигация по сайту Любить и уважать Бонус-счастливчики
|
Содержимое файла "456 В Г.doc" (без форматирования) 4. РОЗРОБКА І ОПИС СХЕМИ АЛГОРИТМУ 4.1 Розробка блок-схеми головної функції - main() Розробивши інтерфейс користувача перейдемо до розробки алгоритму, за яким буде побудована програма. Головна функція main() виводить основне горизонтальне меню програми. Блок-схема функції наведена у додатку В. 4.2 Опис допоміжних функцій, використаних у головній функції Функція zast призначенa для виведення рисунку-заставки, зробленого в псевдографіці. Алгоритм роботи функції зображено на рисунку 3.1. Рисунок 4.1 – Блок-схема до функції zast Функція win() призначена для прорисовки бордюру вікна за координатами. Алгоритм функції зображений на рисунку 3.2. Рисунок 4.2 – Блок-схема до функції win() Функція menu1() в програмі призначена для виводу неактивних пунктів основного меню. Розглянемо алгоритм функції на рисунку 4.3. Рисунок 4.3 – Блок-схема до функції menu1() Далі в буде використана функція activ(pos). Дана функція в залежності від номеру pos виділяє конкретний пункт меню іншим кольором. Структуру роботи даної функції розглянемо на рисунку 4.4 Після виведення пунктів меню та вибір активного пункту меню програма чекає натискання клавіші. З блок-схеми основного меню бачимо, якщо на першій позиції активного меню Перегляд, натиснути клавішу Enter, відкриється підменю. І якщо натиснути Enter на пункті Редагування, буде викликана функція redag(). В даній функції ми можемо змінити вхідні дані параметрів схеми R, L, Lsv, C. В даній функції використовуються ще нові функції. Одна з них – функція edit(), яка призначена для вводу даних з клавіатури. Крім даной функціії, використана функція info(), яка призначена для виводу помилки вводу даних, якщо введені дані мають похибку більш 10%. Ця функція викликаіться при некоректному вводі значень і виводить попередження про помилку. Блок-схема функції redag() наведена нижче на рисунку 4.5 Рисунок 4.5 – Блок-схема до функції redag() У додатку Г наведена блок-схема, яка ілюструє роботу функції edit(). Крім того, для написання програми будуть використовуватися функціі, які малюють графіки АЧХ і ФЧХ за парамерами, які мають бути розраховані раніше. Алгоритм роботи функції, яка малює графік АЧХ (функція для малювання графіку ФЧХ має таку ж саму блок-схему) наведений нижче на рисунку 4.6. Рисунок 4.6 – Блок-схема до функції малювання графіку В функції tableA проводиться розрахунок 20 точок АЧХ при зміні диапазону значень. Крім того, в цій функції передбачено пункт, в якому відбувається зберігання таблиці. Розглянемо алгоритм роботи функції на рисунку 4.7. Аналогічна функція використовується для розрахунку і візуалізації значень ФЧХ. Ще в головному меню присутній пункт Схема. При виборі цього пункту буде викликана функція shema(). Ця функція розроблена в граничному режимі. Алгоритм її роботи наведено нижче на рисунку 4.8. Також в меню присутній пункт виходу з програми – функція quit. При виборі цього пункту виводиться повідомлення – запит, чи хоче користувач вийти з програми чи ні. Користувач має підтвердити свій вибір натисненням відповідної клавіщі. Алгоритм функції зображено на рисунку 4.9 ДОДАТОК В Блок-схема функції main() ДОДАТОК Г Блок-схема функції edit() Рисунок Г.1 - Алгоритм функції edit() 5. КОНТРОЛЬНИЙ ПРИКЛАД Тепер необхідно перевірити правильність виконання програмою розрахунків. Для цього можливо вручну розрахувати декілька параметрів зв’язаного контуру і порівняти з отриманими за допомогою програми. Оберемо певне значення узагальненого розладнання HYPER15 і розрахуємо АЧХ і ФЧХ при різних значення фактору зв’язку. Використаємо формули у загальній формі (1.8) і (1.10) для АЧХ і ФЧХ відповідно. Результати отриманих вручну розрахунків АЧХ і ФЧХ при наведені у таблиці 5.1. Таблиця 5.1 – АЧХ і ФЧХ, отримані вручну АЧХ АЧХ1 АЧХ2 ФЧХ ФЧХ1 ФЧХ2 -4 0.53 0.124 0.396 0.722 1.052 0.855 Для порівняння в таблицю 5.2 запишемо результати, розраховані за допомогою програми. Таблиця 5.2 – АЧХ і ФЧХ, отримані в програмі АЧХ АЧХ1 АЧХ2 ФЧХ ФЧХ1 ФЧХ2 -4 0.53 0.124 0.396 0.722 1.052 0.855 Отримані результати збігаються. Нижче запишемо результати всіх розрахунків (таблиця 5.3), отриманих в програмі для можливості порівняння з розрахунками у середовищі MathCAD. Таблиця 5.1 – АЧХ і ФЧХ, отримані в програмі АЧХ АЧХ1 АЧХ2 ФЧХ ФЧХ1 ФЧХ2 -4.0 0.530 0.124 0.396 0.722 1.052 0.855 -3.5 0.730 0.161 0.544 0.439 0.972 0.661 -3.0 0.940 0.217 0.755 0.007 0.862 0.350 -2.5 0.992 0.305 0.958 2.645 0.704 3.030 -2.0 0.886 0.447 0.986 2.249 0.464 2.530 -1.5 0.768 0.664 0.883 1.991 0.083 2.153 -1.0 0.688 0.894 0.785 1.817 2.678 1.902 -0.5 0.644 0.992 0.727 1.685 2.090 1.722 0 0.630 1.000 0.708 1.571 1.571 1.571 0.5 0.644 0.992 0.727 1.456 1.052 1.419 1.0 0.688 0.894 0.785 1.325 0.464 1.239 1.5 0.768 0.664 0.883 1.150 3.058 0.989 2.0 0.886 0.447 0.986 0.892 2.678 0.612 2.5 0.992 0.305 0.958 0.497 2.437 0.111 3.0 0.940 0.217 0.755 3.135 2.279 2.791 3.5 0.730 0.161 0.544 2.702 2.170 2.481 4.0 0.530 0.124 0.396 2.420 2.090 2.287 6. РОЗРАХУНОК ПАРАМЕТРІВ ЗВ’ЯЗНОГО КОНТУРА В СЕРЕДОВИЩІ MATHCAD 6.1 Результати розрахунків, отримані в середовищі MathCAD Для можливості повної перевірки правильності проведення розрахунків програмою, можна виконати ті ж математичні дії за допомогою середовища MathCAD і порівняти результати з отриманими. Таблиця розрахованих АЧХ і ФЧХ наведена на рисунку 6.1. Рисунок 6.1 - Таблиця значень АЧХ та ФЧХ 6.2 Побудова графіків АЧХ і ФЧХ в середовищі MathCAD Тепер за отриманими результатами побудуємо графіки характеристик при різних значеннях фактору зв’язку. На рисунку 6.2 наведено графік АЧХ при розрахованому значенні фактору зв’язку. Рисунок 6.2 - Графік АЧХ при розрахованому значенні фактору зв’язку Тепер побудуємо графік АЧХ при критичному значенні фактору зв’язку (рисунок 6.3). Рисунок 6.3 - Графік АЧХ при критичному значенні фактору зв’язку Графік АЧХ при граничному значенні фактору зв’язку наведено нижче на рисунку 6.4. Рисунок 6.4 - Графік АЧХ при граничному значенні фактору зв’язку Нижче рисунку 6.5 наведено графік ФЧХ при розрахованому значенні фактору зв’язку. Рисунок 6.5 - Графік ФЧХ при розрахованому значенні фактору зв’язку Тепер побудуємо графік ФЧХ при критичному значенні фактору зв’язку (рисунок 6.6). Рисунок 6.6 - Графік ФЧХ при критичному значенні фактору зв’язку Графік ФЧХ при граничному значенні фактору зв’язку наведено нижче на рисунку 6.7. Рисунок 6.7 - Графік ФЧХ при граничному значенні фактору зв’язку Повернення Вихід з графічного режиму Виведення підписів Вибір шрифтів Креслення рисунку Помилка errorcode!=grOk Ініціалізація графічного режиму Початок Повернення Заповнення кольором фона Очистка області вікна Зміна фонового режиму Вікно left, top, right, bottom Початок TextMenu[i] i=0; i Встановлюємо кольор тексту Початок win(); Повернення TextMenu[Pos] Встановлюємо кольор тексту Початок Повернення Рисунок 4.4 – Блок-схема до функції activ(pos). Повернення clear(); Вивод зміненого значення R1 h1!=0 h1=0 win(); h1=1 info() R1<13.5||R1>16.5 R1=edit(48,17,8,R1); Введіть R,Ом (19)=" Редагування вихідних даних Початок Вихід з графічного режиму Помилка errorcode!=grOk Ініціалізація графічного режиму grafic() Підпис осей greed(); Початок Повернення ch=getch())!=27 Початок Рисунок 4.7 – |
Посетителей: 2, из них зарегестрированных: 0, гостей: 2 Зарегистрированные пользователи: Подробно | Страница сгенерирована за 0.0451 сек. |