.

програму для графічного відображення додавання двох синусоїдних електрорушійних сил(курсова робота)

Язык: украинский
Формат: реферат
Тип документа: Word Doc
0 1739
Скачать документ

Міністерство освіти і науки України

Український Державній Університет Водного господарства і природо
користування

Кафедра електротехніки і автоматики

Курсова робота

з дисципліни “Програмування і алгоритмічні мови”

на тему:

“ Розробка програми для графічного відображення схеми регулювання рівня
води в каналі за нижнім б’єфом.”

Виконав:

студент 1-го курсу

ФПМ і КІС

АУТП 12

Христюк О.В.

Перевірив:

Пастушенко В.Й.

Рівне 2002

Завдання

Розробити програму для графічного відображення додавання двох
синусоїдних електрорушійних силЗміст

Вступ………………………………………………………….
…………………………………………………………3

Задача і опис
схеми………………………………………………………….
……………………4

Текст
програми……………………………………………………….
…………………………………6

Приклад………………………………………………………..
…………………………………………………..13

Висновок……………………………………………………….
………………………………………………… 14

Література……………………………………………………..
………………………………………………..15

Вступ

Для закріплення здобутих теоретичних знань, застосування їх при
вирішенні питань виробничого характеру, а також з метою набуття навиків
по створенню програмного забезпечення , виконується курсова робота з
дисципліни “Програмування та алгоритмічні мови” . В курсовій роботі
необхідно розробити програму на мові програмування C++,яка б графічно
відображала схему регулювання рівня води в каналі за нижнім б’єфом.
Важливо також щоб програма мала системне меню, вводилися дані.

Задача і опис схеми

Регулювання по нижньому б’єфі використовують для забезпечення
користувачів водою по запиту. При цьому способі регулятори 1 по сигналам
датчиків 2 піддержують постійними рівні води в нижніх б’єфах Hнб=const
(Рис.1). Вільна поверхність потоку при максимальній витраті Qмакс (лінія
3) і витраті (лінія 4) утворюють граничний трикутник , який показує
границі зміни рівнів вздовж б’єфа при витратах 0 ( Q ( Qмакс . Об’єм
води , обмежений вільною поверхністю при витраті (лінія 5) і поверхністю
при Qмакс , утворюють резервний об’єм , який називають об’ємом
регулювання . Цей об’єм витрачається відразу при збільшенні водозабору
із б’єфа і поповнюється у випадку зменшення потреби води .

При збільшенні водозабору (наприклад, водовипуском 6 на dQ проти
існуючого місця витрати Q1) спочатку витратиться резервний об’єм , який
знаходиться між лініями 3 і 5 . Після того як він спрацьовує , рівень
води в нижньому б’єфі починає знижуватися і , щоб не допустити зниження
, регулятор відкриває перегородку . Це приводить до спрацювання
резервного об’єму вище розташованого б’єфа і відкриттю потім перегородки
. В результаті послідовно робиться перестройка всіх вище розташованих
перегородок і головної споруди . В систему подається додаткова витрата
dQ .

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

Таким чином , перестройка роботи перегородок при зміні витрати в
якому не будь б’єфі робиться в напрямку , протилежному напрямку руху
потоку . Такий зв’язок між б’єфами називається оборотнім гідравлічним
зв’язком , який при витратах Q ( Qмакс утворює ланцюг (каскад)
послідовно розташованих резервних об’ємів . Тому регулювання по нижньому
б’єфі називають також каскадним регулюванням .

Резервні об’єми досягають максимуму при витраті Q=0 і повністю
спрацьовують при Q = Qмакс . Наповнення або спрацювання резервних
проходить на протязі часу , необхідного для перестройки системи на новий
режим роботи . Цей час прийнято називати часом регулювання . Він
найбільший , якщо зміна витрати проходить в найбільш віддаленому б’єфі .

Рис.1. Схема регулювання води за нижнім б’єфом.

При збільшенні витрати на dQi в i – му б’єфі час регулювання :

(1)

– сума резервних об’ємів вище розташованих б’єфів ;

– сумарний час перестройки вище розташованих регуляторів .

При розподілу води регулюванням по нижньому б’єфі присутні наступні
недоліки :

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

при витраті Q=0 вільна поверхністю води у б’єфах розташовується
горизонтально , тому гребені бровок каналів і дамб повинні бути також
горизонтальними в кожному б’єфі , що збільшує об’єм будівельних робіт ;

в б’єфах необхідно мати автоматичну водоскидну споруду , яка не
допустить переповнення , яке може виникнути при аварії на головній
споруді .

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

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

#include

#include

#include

#include

#include

#define ESC 27

#define B 98

#define PIXEL_COUNT 10000

#define DELAY_TIME 0

//—————Функцiя виведення титульноi сторiнки————–

int titulka(void)

{

int asd,i, x, y, color, maxx, maxy,maxcolor, seed;

setcolor (15);

settextstyle(4,0,9);

outtextxy(20,100,”Kursova robota”);

setcolor (5);

settextstyle(2,0,7);

outtextxy(100,180,”на тему:”);

setcolor (10);

settextstyle(2,0,7);

outtextxy(100,190,”Графiчне вiдображення схеми регулювання”);

outtextxy(110,200,”рiвня води в каналi за нижнiм б’ефом”);

setcolor(4);

outtextxy(300,216,”Варiант №16″);

setcolor(8);

outtextxy(440,300,” Виконав:”);

setcolor(6);

outtextxy(440,320,” Христюк О.В.”);

setcolor(11);

outtextxy(240,400,”PRESS ANY KEY”);

maxx = getmaxx() + 1;

maxy = getmaxy() + 1;

maxcolor = getmaxcolor() + 1;

while (!kbhit())

{

seed = random(32767);

srand(seed);

for (i=0; i212;y1–,y2–)

{

setcolor(2);

leva(x1,y1,y2);

tricky(y1);

delay(100);

setcolor(0);

line(450,y1+1,460,y1+1);

line(450,y2+1,460,y2+1);

setcolor(1);

line(450,y2+1,460,y2+1);

}

setlinestyle(0,0,0);

setcolor(0);

for(e=13;e>8;e–) //12

{line(501,306-e,619,306-e);

delay(200);}

setcolor(1);

setlinestyle(0,0,1);

for(i=k;i2

{line(201,273-e,449,273-e);

delay(200);}

iiii=0;

do

{

setcolor(15);

line(155,125,190,125);

line(190,125,190,248);

line(155,125,155,146);

delay(200);

setcolor(2);

line(155,125,190,125);

line(190,125,190,248);

line(155,125,155,146);

delay(200);iiii=iiii+1;}

while(iiii170;y12–,y23–)

{

setcolor(2);

leva1(x12,y12,y23);

tricky1(y12);

delay(100);

setcolor(0);

line(150,y12+1,160,y12+1);

line(150,y23+1,160,y23+1);

setcolor(1);

вода 3

setcolor(1);

for(x12,y12,y23;y122

{line(11,233-e,149,233-e);

delay(200);}

setcolor(1);

for(e=8;e2

{line(501,306-e,619,306-e);

delay(200);}

setcolor(0);

for(e=13;e>8;e–) //12

{line(11,233-e,149,233-e);

delay(0);}

}

//——————————————————————

if (k>=25 && k27){

setcolor(1);

setlinestyle(0,0,1);

for(i=0;i170;y12–,y23–)

{

setcolor(2);

leva1(x12,y12,y23);

tricky1(y12);

delay(100);

setcolor(0);

line(150,y12+1,160,y12+1);

line(150,y23+1,160,y23+1);

setcolor(1);

line(150,y23+1,160,y23+1);

}

setlinestyle(0,0,0);

for(i=30;i>24;i–)

{setcolor(0);

line(201,282-i,449,282-i);

delay(200);}

setcolor(1);

setlinestyle(0,0,1);

for(i=3;i8;e–)

{line(11,233-e,149,233-e);

delay(0);}

}}

getch();

return(0);

}

int main(void)

{int gdriver=DETECT,gmode,errorcode,i;

initgraph(&gdriver,&gmode,”c:\\bcpp\\bgi”);

errorcode=graphresult();

if(errorcode!=grOk)

Системне меню —————————————-

r_key:

int key;

initgraph(&gdriver,&gmode,”c:\\bcpp\\bgi”);

errorcode=graphresult();

if(errorcode!=grOk)

{printf(“Graphics error:%s\n”,grapherrormsg(errorcode));

printf(“Press any key to halt:”);

getch();exit(1);}

setcolor(10);

rectangle(15,420,350,470);

setfillstyle(9,6);floodfill(16,421,10);

settextstyle(0,0,1);

setcolor(14);

outtextxy(20,426,”B – Демонстрацiя роботи схеми регулювання”);

outtextxy(20,436,”рiвня води в каналi за нижнiм б’эфом”);

outtextxy(20,456,”ESC – ВИХIД”);

rr_key:

key=getch();

if(key==B)

{ main1();

clrscr();

goto r_key;

}

else if(key==ESC) exit(0);

else goto rr_key;

return(0);

}

Приклад

Введемо Q=26 – нормальна витрата (Рис.2) ;

Введемо Q=12 – мала витрата (Рис.3) ;

Рис.2

Рис.3

Висновок

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

Література

1.Баховец Б.А, Ткачук Я.В. Основи автоматики и автоматизация
производственных процессов в гидромелиорации. Львов, “Вища школа”, 1989
р., 334 с.

2.Крис Паппас, Уїльям Мюррей, Програмирование на С и С++,

“Ирина”, BHV,Киев,2000.

Ця курсова робота люб’язно надана HYPERLINK
“http://rivneclub.narod.ru/kontakt.html” Олександром Подранецьким

PAGE

PAGE 16

Нашли опечатку? Выделите и нажмите CTRL+Enter

Похожие документы
Обсуждение

Ответить

Курсовые, Дипломы, Рефераты на заказ в кратчайшие сроки
Заказать реферат!
UkrReferat.com. Всі права захищені. 2000-2020