Проектування комп’ютерних систем реального часу

Аналіз системи збору первинної інформації та розробка структури керуючої ЕОМ АСУ ТП. Розробка апаратного забезпечення інформаційних каналів, структури програмного забезпечення. Алгоритми системного програмного забезпечення. Опис програмних модулів.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык украинский
Дата добавления 19.08.2012
Размер файла 1,9 M

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

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

Рисунок 5.5 - Регіон контролю параметрів

Регіон умовних позначень (легенда) (рис. 5.6) містить пояснення до позначень станів задач.

Рисунок 5.6 - Легенда

Регіон опису параметрів та приміток дає інформацію про керування процесом моделювання та примітки (рис. 5.7).

Рисунок 5.7 - Регіон опису особистих параметрів та приміток

Усі вікна генеруються в залежності від розміру екрану користувача так, щоб надати найбільшу функціональність.

5.3 Розробка інформаційного змісту та алфавіту призначеного для користувача інтерфейсу в середовищі моделі КС РЧ

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

Згідно з технічним завданням, задача 1 завершує роботу за натисненням клавіші «1», задача 3 - за натисненням правої кнопки миші.

6. Опис програмних модулів

6.1 Модулі системного ПЗ РЧ

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

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

Обробник подій від зовнішнього керування виконано на базі черги - інтерфейс користувача вміє додавати створену за визначеним правилом подію до черги обробки модуля супервізора.

6.2 Модулі ПО підтримки інтерфейсної взаємодії з користувачем у складі системи імітаційного моделювання КС РЧ

Модулі програмного забезпечення підтримки інтерфейсної взаємодії з користувачем реалізовані у вигляді вікон(форм), мова про які йшла раніше.

Умовно інтерфейс ділиться на декілька окремих, але взаємодіючих частин.

Модуль відображення станів будує графік стану системи по даним, які видає модуль супервізора. Такими даними є:

поточний стан задачі на кінець такту;

визначення нового планового часу запуску;

події, які призвели до зміни стану задачі.

Вікно контролю параметрів складається з таблиці, яка зберігає дані та виконує функції інформаційної бази(дублюючої).

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

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

7. Аналіз результатів імітаційних досліджень Керуючої ЕОМ

7.1 Обґрунтування і розробка необхідної кількості модельних експериментів для проведення досліджень параметрів ПО КС РЧ

Для визначення кількості експериментів необхідно визначити можливості, які закладені у модель РЧ за технічним завданням:

Задавання Тнач для усіх задач чисельно;

задавання Ткон для 4-ї задачі чисельно;

задавання Ткон для 1-ї задачі за натисканням клавіші «1»;

задавання Ткон для 3-ї задчі за натисканням правої кнопки миші;

задавання Ткон для 2-ї задачі за закінченням сеансу 4-ї задачі;

виклик задачі;

обрання задачі з найвищім пріоритетом та її виклик;

реакція на перевищення часу очікування;

реакція на перевищення часу очікування декількома задачами одночасно;

розрахунок наступного планового часу;

нормальне завершення виконання задачі;

перевищення критичного часу виконання та реакція на цю подію;

призупинення моделювання;

редагування параметрів під час моделювання;

скидання моделювання на початок.

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

7.2 Аналіз результатів імітаційних досліджень

Проведемо ряд експериментів із стандартними даними(рис. 7.1).

Експеримент №1. На скриншоті з екрану(рис. 7.2) наведено повний період моделювання(55 секунд), та проведені декілька експериментів з вищеназваних.

Рисунок 7.1 - Стандартні дані

Рисунок 7.2 - Експеримент із стандартними даними

На 2-й секунді моделювання активується та одразу ж викликається перша задача. На 4-й секунді активується друга задача та переходить у режим очікування виконання, бо все ще виконується перша задача. Керування друга задача отримує вже наступної секунди. На шостій секунді активується та чекає на виконання третя задача, на восьмій - аналогічно четверта.

На 14-й секунді четверта задача звільнює ресурс, але на цей момент вже дві задачі можуть отримати керування. Останнє отримує перша задача, бо в неї вищий пріоритет.

На 25-й секунді можемо побачити, що третя задача відпрацювала на 1с довше(сеанс роботи збільшився на 1с, але не перевищує Ткрит).

На 27-й секунді за натисканням клавіші «1» було встановлено Ткон для першої задачі та зняття її з моделювання.

На 29 секунді закінчився другий сеанс роботи четвертої задачі, тож була згенерована програмна подія для встановлення Ткон та зняття з моделювання другої задачі.

На 36-й секунді бачимо, що сеанс роботи третьої задачі знов збільшився на 1с, тепер він дорівнює Ткрит, але не перевищує його.

На 46-й секунді було знято з роботи третю задачу, бо задача мала намір працювати довше, ніж Ткрит. Тривалість сеансу даної задачі було встановлено на її початкове значення - 3с.

На 48 секунді бачимо нормальне закінчення роботи четвертої задачі.

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

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

Після натискання на кнопку „Вернуть начальные данные” дані моделювання скидаються на початок моделювання.

Експеримент №2. На скриншоті з екрану(рис. 7.3) наведено неповний період моделювання(моделювання було зупинено на 34 секунді), початкові дані наведені на рис.7.4

Рисунок 7.3 - Початкові дані для другого пакету експерименту

Рисунок 7.4 - Другий пакет експериментів

На 3-й секунді активуються усі задачі, але через пріоритет керування отримує перша.

На 18-й секунді друга задача вдруге не отримала керування, а так N для другої задачі дорівнює двом, дана задача знімається з моделювання. Також на 18-й секунді моделювання було призупинено, був змінений Ткрит для четвертої задачі (уведено 5 замість 3). Після цього моделювання було знов запущено.

На 23-й секунді за аналогічних обставин знімається з моделювання третя задача.

На 24-й секунді закінчується сеанс роботи першої задачі, тож керування отримує четверта. Наступний сеанс роботи задачі відбувається з 30 по 32с.

На 32-й секунді закінчується сеанс роботи четвертої задачі і керування отримує перша, адже саме в цей момент для неї встановлено Тпл.

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

ВисновкИ

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

Була розроблена структура системи реального часу, реалізована програмна модель розробленої структури системи реального часу та проведені дослідження роботи розробленої моделі. У складі програмного забезпечення спроектовані та реалізовані модулі супервізору РЧ та модулі програмної підтримки інтерфейсу користувача. Розроблена програмна модель являє собою менеджер задач реального часу. Він реалізує функцію контролю та керування завданнями та дозволяє моделювати роботу реального менеджера задач. Дослідження програмної моделі довели вірність роботи алгоритмів розробленої структури.

Додаток А

Перелік елементів інформаційних каналів

Перелік елементів НД(РТ)

Позначення

Найменування

Кількість

МІКРОСХЕМИ

Ю5

К561ЛН1

1

Ц5

К561ЛН3

1

РЕЗИСТРОРИ

R1

C2-23-0,125-5 кОм±5%Б-В

1

R4

C2-23-0,125-100 Ом±5%Б-В

1

R7

C2-23-0,125-22 кОм±5%Б-В

1

R10

C2-29В-0,062-20 кОм±5%Б-В

1

R13

C2-23-0,125-20 кОм±5%Б-В

1

R16

C2-29В-0,062-20 кОм±5%Б-В

1

R19

C2-23-0,125-100 кОм±5%Б-В

1

R22

C2-23-0,125-1 MОм±5%Б-В

1

R23… R26

C2-23-0,125-20 кОм±5%Б-В

4

R101-R105, R110 - R114

C2-23-0,125-10 кОм±5%Б-В

8

R105-R109

C2-23-0,125-1,5 кОм±5%Б-В

4

VТ1, VТ10-VТ14

Транзистор КТ3117А1

5

Х1, Х2

Вилка СНП59-96\91ч11В-23-1-В

1

КОНДЕНСАТОРИ

С1, С2

К10-17-3г-Н90-0,1 мФ

2

С7

К53-19 6,3В-1,5 мкФ+/-20%

1

Вузол нормалізації

R43

C2-23-0,125-1 кОм±5% А -Д-В

1

R44

C2-23-0,125-100 кОм±5% Б-Д-В

1

R45

C2-23-0,125-2,4 кОм±5% A-Д-В

1

V4

Діод КД522Б

1

V5

Оптопара АОТ128В

1

V6

Діод КД923А

1

Перелік елементів КН(Р)

Позначення

Найменування

Кількість

МІКРОСХЕМИ

D2

КР590КН9

1

D3

К561ТМ2

1

D4, D5

КР590КН5

2

D10 - D11

КР140УД1208

2

D16

КР590КН3

1

D19, D20

К140УД17А

2

D28

КР590КН6

1

D31

КР590КН15

1

D25

К561ДН2

1

D34

К561ЛЕ10

1

РЕЗИСТОРИ

R1

C2-23-0,125-5 кОм±5%Б-В

1

R4

C2-23-0,125-100 Ом±5%Б-В

1

R7

C2-23-0,125-22 кОм±5%Б-В

1

R10

C2-29В-0,062-20 кОм±5%Б-В

1

R13

C2-23-0,125-20 кОм±5%Б-В

1

R16

C2-29В-0,062-20 кОм±5%Б-В

1

R19

C2-23-0,125-100 кОм±5%Б-В

1

R22

C2-23-0,125-1 MОм±5%Б-В

1

R22

C2-23-0,125-390 кОм±5%Б-В

1

R23

C2-23-0,125-51 кОм±5%Б-В

1

R24

C2-23-0,125-51 кОм±5%Б-В

1

R25

C2-23-0,125-51 кОм±5%Б-В

1

R22

C2-23-0,125-390 кОм±5%Б-В

1

R23

C2-23-0,125-51 кОм±5%Б-В

1

КОНДЕНСАТОРИ

С13, С14-16

К10-17-16-М47-56 пкФ

4

С22

К10-17-3г-М47-1000 пкФ

1

С23

К10-17-3г-М47-1000 пкФ

1

С2

К10-17-3г-Н90-0.1 мкФ

1

Ф1,Ф2

Фільтр ФО-1.5.168.003

2

VТ1

Транзистор КТ3117А1

1

VТ2

Транзистор КТ313Б

1

ДОДАТОК Б

Результати програмного розрахунку системного часу

Результати роботи програми

y=cos(2*x)

Етап I. Визанчення максимального значення функції - f(t)max. Період 1.5*Pi

Ітерація 1. Шаг = 0.471

t

f(t)

0

1

0,471239

0,587785

0,942478

-0,309017

1,413717

-0,951057

1,884956

-0,809017

2,356194

0

2,827433

0,809017

3,298672

0,951057

3,769911

0,309017

4,24115

-0,587785

4,712389

-1

f(t)max = 1

tmax = 0

Ітерація 2. Шаг = 0.2355

t

f(t)

0

1

0,235619

0,891007

0,471239

0,587785

0,706858

0,156434

0,942478

-0,309017

1,178097

-0,707107

1,413717

-0,951057

1,649336

-0,987688

1,884956

-0,809017

2,120575

-0,45399

2,356194

0

2,591814

0,45399

2,827433

0,809017

3,063053

0,987688

3,298672

0,951057

3,534292

0,707107

3,769911

0,309017

4,005531

-0,156434

4,24115

-0,587785

4,47677

-0,891007

4,712389

-1

f(t)max = 1

tmax = 0

Ітерація 3. Шаг = 0.157

t

f(t)

0

1

0,15708

0,951057

0,314159

0,809017

0,471239

0,587785

0,628319

0,309017

0,785398

0

0,942478

-0,309017

1,099557

-0,587785

1,256637

-0,809017

1,413717

-0,951057

1,570796

-1

1,727876

-0,951057

1,884956

-0,809017

2,042035

-0,587785

2,199115

-0,309017

2,356194

0

2,513274

0,309017

2,670354

0,587785

2,827433

0,809017

2,984513

0,951057

3,141593

1

3,298672

0,951057

3,455752

0,809017

3,612832

0,587785

3,769911

0,309017

3,926991

0

4,08407

-0,309017

4,24115

-0,587785

4,39823

-0,809017

4,555309

-0,951057

4,712389

-1

f(t)max = 1

tmax = 0

Етап II. Розрахунок Vfmax, dTdiskr. Період = Pi

Ітерація 1. Шаг = 0.15708

t

f(t)

f(t-шаг)

deltaf

v

0

1

0

0

0

0,15708

0,951057

1

0,048943

0,311581

0,314159

0,809017

0,951057

0,14204

0,904255

0,471239

0,587785

0,809017

0,221232

1,408407

0,628319

0,309017

0,587785

0,278768

1,774692

0,785398

0

0,309017

0,309017

1,967263

0,942478

-0,309017

0

0,309017

1,967263

1,099557

-0,587785

-0,309017

0,278768

1,774692

1,256637

-0,809017

-0,587785

0,221232

1,408407

1,413717

-0,951057

-0,809017

0,14204

0,904255

1,570796

-1

-0,951057

0,048943

0,311581

1,727876

-0,951057

-1

0,048943

0,311581

1,884956

-0,809017

-0,951057

0,14204

0,904255

2,042035

-0,587785

-0,809017

0,221232

1,408407

2,199115

-0,309017

-0,587785

0,278768

1,774692

2,356194

0

-0,309017

0,309017

1,967263

2,513274

0,309017

0

0,309017

1,967263

2,670354

0,587785

0,309017

0,278768

1,774692

2,827433

0,809017

0,587785

0,221232

1,408407

2,984513

0,951057

0,809017

0,14204

0,904255

3,141593

1

0,951057

0,048943

0,311581

Vmax = 1.967263

Tmax = 0,785398163397448

dfmax = 0,156434

Tdfmax = 0,15707963267949

dfmax > 0,05

Ітерація 2. Шаг = 0.07854

t

f(t)

f(t-шаг)

deltaf

v

0

1

0

0

0

0,07854

0,987688

1

0,012312

0,156761

0,15708

0,951057

0,987688

0,036631

0,4664

0,235619

0,891007

0,951057

0,06005

0,76458

0,314159

0,809017

0,891007

0,08199

1,043929

0,392699

0,707107

0,809017

0,10191

1,297558

0,471239

0,587785

0,707107

0,119322

1,519255

0,549779

0,45399

0,587785

0,133795

1,703531

0,628319

0,309017

0,45399

0,144973

1,845854

0,706858

0,156434

0,309017

0,152583

1,942747

0,785398

0

0,156434

0,156434

1,99178

0,863938

-0,156434

0

0,156434

1,99178

0,942478

-0,309017

-0,156434

0,152583

1,942747

1,021018

-0,45399

-0,309017

0,144973

1,845854

1,099557

-0,587785

-0,45399

0,133795

1,703531

1,178097

-0,707107

-0,587785

0,119322

1,519255

1,256637

-0,809017

-0,707107

0,10191

1,297558

1,335177

-0,891007

-0,809017

0,08199

1,043929

1,413717

-0,951057

-0,891007

0,06005

0,76458

1,492257

-0,987688

-0,951057

0,036631

0,4664

1,570796

-1

-0,987688

0,012312

0,156761

1,649336

-0,987688

-1

0,012312

0,156761

1,727876

-0,951057

-0,987688

0,036631

0,4664

1,806416

-0,891007

-0,951057

0,06005

0,76458

1,884956

-0,809017

-0,891007

0,08199

1,043929

1,963495

-0,707107

-0,809017

0,10191

1,297558

2,042035

-0,587785

-0,707107

0,119322

1,519255

2,120575

-0,45399

-0,587785

0,133795

1,703531

2,199115

-0,309017

-0,45399

0,144973

1,845854

2,277655

-0,156434

-0,309017

0,152583

1,942747

2,356194

0

-0,156434

0,156434

1,99178

2,434734

0,156434

0

0,156434

1,99178

2,513274

0,309017

0,156434

0,152583

1,942747

2,591814

0,45399

0,309017

0,144973

1,845854

2,670354

0,587785

0,45399

0,133795

1,703531

2,748894

0,707107

0,587785

0,119322

1,519255

2,827433

0,809017

0,707107

0,10191

1,297558

2,905973

0,891007

0,809017

0,08199

1,043929

2,984513

0,951057

0,891007

0,06005

0,76458

3,063053

0,987688

0,951057

0,036631

0,4664

3,141593

1

0,987688

0,012312

0,156761

Vmax = 1.99178

Tmax = 0,785398163397448

dfmax = 0,078459

Tdfmax = 0,0785398163397448

dfmax > 0,05

Ітерація 3. Шаг = 0.03927

0

1

0

0

0

0,03927

0,996917

1

0,003083

0,078508

0,07854

0,987688

0,996917

0,009229

0,235015

0,11781

0,97237

0,987688

0,015318

0,39007

0,15708

0,951057

0,97237

0,021313

0,542731

0,19635

0,92388

0,951057

0,027177

0,692057

0,235619

0,891007

0,92388

0,032873

0,837104

0,274889

0,85264

0,891007

0,038367

0,977008

0,314159

0,809017

0,85264

0,043623

1,110851

0,353429

0,760406

0,809017

0,048611

1,237869

0,392699

0,707107

0,760406

0,053299

1,357248

0,431969

0,649448

0,707107

0,057659

1,468274

0,471239

0,587785

0,649448

0,061663

1,570235

0,510509

0,522499

0,587785

0,065286

1,662494

0,549779

0,45399

0,522499

0,068509

1,744567

0,589049

0,382683

0,45399

0,071307

1,815818

0,628319

0,309017

0,382683

0,073666

1,875889

0,667588

0,233445

0,309017

0,075572

1,924425

0,706858

0,156434

0,233445

0,077011

1,961069

0,746128

0,078459

0,156434

0,077975

1,985617

0,785398

0

0,078459

0,078459

1,997942

0,824668

-0,078459

0

0,078459

1,997942

0,863938

-0,156434

-0,078459

0,077975

1,985617

0,903208

-0,233445

-0,156434

0,077011

1,961069

0,942478

-0,309017

-0,233445

0,075572

1,924425

0,981748

-0,382683

-0,309017

0,073666

1,875889

1,021018

-0,45399

-0,382683

0,071307

1,815818

1,060288

-0,522499

-0,45399

0,068509

1,744567

1,099557

-0,587785

-0,522499

0,065286

1,662494

1,138827

-0,649448

-0,587785

0,061663

1,570235

1,178097

-0,707107

-0,649448

0,057659

1,468274

1,217367

-0,760406

-0,707107

0,053299

1,357248

1,256637

-0,809017

-0,760406

0,048611

1,237869

1,295907

-0,85264

-0,809017

0,043623

1,110851

1,335177

-0,891007

-0,85264

0,038367

0,977008

1,374447

-0,92388

-0,891007

0,032873

0,837104

1,413717

-0,951057

-0,92388

0,027177

0,692057

1,452987

-0,97237

-0,951057

0,021313

0,542731

1,492257

-0,987688

-0,97237

0,015318

0,39007

1,531526

-0,996917

-0,987688

0,009229

0,235015

1,570796

-1

-0,996917

0,003083

0,078508

1,610066

-0,996917

-1

0,003083

0,078508

1,649336

-0,987688

-0,996917

0,009229

0,235015

1,688606

-0,97237

-0,987688

0,015318

0,39007

1,727876

-0,951057

-0,97237

0,021313

0,542731

1,767146

-0,92388

-0,951057

0,027177

0,692057

1,806416

-0,891007

-0,92388

0,032873

0,837104

1,845686

-0,85264

-0,891007

0,038367

0,977008

1,884956

-0,809017

-0,85264

0,043623

1,110851

1,924226

-0,760406

-0,809017

0,048611

1,237869

1,963495

-0,707107

-0,760406

0,053299

1,357248

2,002765

-0,649448

-0,707107

0,057659

1,468274

2,042035

-0,587785

-0,649448

0,061663

1,570235

2,081305

-0,522499

-0,587785

0,065286

1,662494

2,120575

-0,45399

-0,522499

0,068509

1,744567

2,159845

-0,382683

-0,45399

0,071307

1,815818

2,199115

-0,309017

-0,382683

0,073666

1,875889

2,238385

-0,233445

-0,309017

0,075572

1,924425

2,277655

-0,156434

-0,233445

0,077011

1,961069

2,316925

-0,078459

-0,156434

0,077975

1,985617

2,356194

0

-0,078459

0,078459

1,997942

Vmax = 1.997942

Tmax = 0,785398163397448

dfmax = 0,03926

Tdfmax = 0,0392699081698724

0,05< dfmax < 0,05

dtobr = 0,03927

Етап III. Розрахунок dTsist и Nperiod

dTsist = dtobr/10 = 0,00392699081698724

Nperiod = Pi/dtobr = 80

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


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

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