скачать рефераты
  RSS    

Меню

Быстрый поиск

скачать рефераты

скачать рефератыКурсовая работа: Моделювання надходження повідомлень від датчиків до ЕОМ

-    постановка повідомлення в пам'ять, якщо процесор ЕОМ зайнятий;

-    знищення повідомлення, якщо воно вже не актуальним;

-    надходження повідомлення до обчислювального пристрою ЕОМ;

-    звільнення місця в пам'яті;

-    обробка повідомлення обчислювальним пристроєм ЕОМ деякий час;

-    звільнення обчислювального пристрою ЕОМ;

-    знищення повідомлення.


5    Програмування системи обробки повідомлень від датчиків та вимірюючих пристроїв на ЕОМ 

Для виконання програмування моделі процесу надходження і обробки повідомлень на ЕОМ можна використати або з загальних мов програмування (Pascal, С++, Java) чи спеціалізованих мовах для моделювання дискретних стохастичних моделей (Simula, GPSS/PC, GPSS/World) – при опис потрібної імітаційної моделі було показано, що процес надходження і обробки нформаційних повідомлень є дискретним стохастичним процесом.

Pascal – мова програмування, що дозволяє виконати моделювання обмежений час, проте в ній існують істотн обмеження на розмір пам'яті та низька швидкість виконання. Інші загальні мови програмування С++ та Java дають багато технічних засобів для побудови програми-імітатора, в якому можна врахувати специфічні особливості процесів, що моделюються, а отримана програма зможе працювати на різних операційних платформах. Крім того мова Java має такий засіб як багатопотоковість, що може спростити організацію моделювання паралельного існування заявок та багато стандартних бібліотек, що дозволить спростити виконання деяких дій. Проте, написання програми з використанням багато потоковості займатиме багато часу, а зміна функціонування моделі вимагатиме значних змін у програмі так як виконання паралельних потоків може затримуватись в залежності від завантаження процесора.

Спеціалізовані мови програмування дозволяють виконувати моделювання лише найбільш загальних видів моделей, але можливостей таких мов цілком достатньо для виконання поставленої задачі моделювання процесу надходження і обробки повідомлень на ЕОМ та збору необхідної статистики, а головною перевагою є автоматична організація одночасного існування декількох повідомлень та їх обробки. Мова Simula  дозволяє встановлювати багато параметрів та характеристик модел використовується для моделювання складних моделей. Мова GPSS/PC дає змогу виконувати моделювання простих моделей на ЕОМ, а тести програми є короткими і зрозумілими, що зменшує ймовірність помилок при програмуванні. На відміну від GPSS/PC, яка розроблена для MS-DOS® , мова GPSS/World розроблена , для операційної системи Microsoft® Windows® включає в себе всі можливості GPSS/PC в поєднанні з зручною графічною оболонкою, 32-розрядним інтерпретатором, що швидко працює та автоматичним створенням текстових звітів[4].

Так як процес, що буде моделюватися є дискретним стохастичним, не буде дуже складним, не вимагатиме  завдання специфічних параметрів, збору особливих характеристик для статистики і моделювання буде проводитися в операційній системі Microsoft® Windows® , то найкращим засобом буде спеціалізована мова GPSS/World.

Мова для дискретних стохастичних систем GPSS/World має повну версію та безкоштовну Student-версію, яка має обмеження щодо кількості транзактів та часу моделювання. Беручи до уваги те, що час моделювання є незначним, то можна скористатися Student-версією мови GPSS/World.

При моделюванні змінимо значення блоків так, що 1 секунда дорівнюватиме 100 одиницям модельного часу.

Мова GPSS/World дозволяє отримати значення основних характеристик   компонентів системи обробки, що моделюється, завдяки тому, що після виконання моделювання автоматично виводиться звіт, який містить вказан характеристики. Головні характеристики, що можна побачити в  результуючому звіті  GPSS/WORLD такі:

Інформація про пристрої

FACILITY ENTRIES  UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

Поля мають наступне призначення:

FACILITY – номер або ім'я об'єкта типу «пристрій»;

ENTRIES – кількість оброблених транзактів;

UTIL. – середній час зайнятості пристрою одним транзактом протягом періоду моделювання після останнього виконання операторів RESET або CLEAR;

AVAIL. – стан готовності пристрою наприкінці періоду моделювання;

OWNER – номер останнього транзакту, що займав пристрій;

PEND – кількість транзактів, що очікують пристрій;

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

RETRY –  кількість транзактів, що очікують спеціальних умов, що залежать від стану об'єкта типу «пристрій»;

DELAY – кількість транзактів, що очікують можливості входу.

Інформація про черги

QUEUE  MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME   AVE.(-0) RETRY

Поля мають наступне призначення:

QUEUE – ім'я або номер об'єкта типу «черга»;

MAX – максимальний уміст об'єкта типу черга протягом періоду моделювання;

CONT. – поточний уміст об'єкта типу в момент завершення моделювання;

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

ENTRY(0) – загальна кількість входів у чергу з нульовим часом очікування  (лічильник нульових входів);

AVE.CONT. – середнє значення вмісту черги;

AVE.TIME – середній час, проведений транзактом у черзі з урахуванням всіх входів у чергу;

AVE.(-0) – середній час, проведений транзактом у черзі без обліку нульових входів у чергу;

RETRY – кількість транзактів, що очікують спеціальних умові, що залежать від стану об'єкта типу «черга».

Інформація про об'єкти типу пам'ять

STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY

Поля мають наступне призначення:

STORAGE   ім'я або номер об'єкта типу «пам'ять»;

CAP. –  обсяг пам'яті, заданого оператором STORAGE;

REM. число одиниць вільного обсягу пам'яті в кінці періоду моделювання;

MIN. мінімальна кількість використовуваних одиниць пам’яті за період моделювання;

MAX. максимальна кількість використовуваних одиниць пам'яті за період моделювання;

ENTRIES   кількість входів на згадку за період моделювання;

AVL. – стан готовност пам'яті наприкінці періоду моделювання;

AVE.C. – середнє число зайнятих одиниць пам'яті за період моделювання;

UTIL. –  частина періоду моделювання, протягом якого пам'ять використовувалася;

RETRY – кількість транзактів, що очікують спеціальних умов, що залежать від стану пам'яті;

DELAY – кількість транзактів, що очікують можливості входу в блок ENTER.


6    Перевірка адекватності моделі системи обробки повідомлень від датчиків та вимірюючих пристроїв на ЕОМ 

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

Це дозволить перевірити відповідність результатів моделювання видозміненої модел (результати моделювання видозміненої моделі приводяться в додатку Г) характеристикам, які можна отримати за допомогою математичних формул як отримані для відповідної, еквівалентній даній моделі, найпростішо одноканальної СМО з обмеженою довжиною черги. Інтервали часу між заявками незалежними і мають паусонівський (найпростіший)  розподіл випадкових величин, які утворюють стаціонарний потік[1]. Для цього потоку число заявок k для будь-якого інтервалу часу має розподіл за  експоненційним законом. Закон описується формулою  і дозволяє обчислити ймовірність надходження k заявок за інтервал часу t.

Для найпростішого потоку з інтенсивністю λ нтервал t між сусідніми подіями має показниковий розподіл з щільністю:

.

Графік функції розподілу показаний на рисунку 3.

Рисунок 3 —  Графік щільності ймовірності експоненційного розподілу

Знайдемо вигляд закону розподілу:

Графік функції розподілу представлений на рисунку 4.

 

Рисунок 4 —  Графік експоненційного розподілу

Відповідні математичн формули для розрахунку такої найпростішої одноканальної СМО з відомою довжиною черги подаються нижче.

Кількість втрачених повідомлень розраховується за формулою[3]:

                                                                                                   (1),

де N – загальна кількість повідомлень, n довжина черги, а  ρ розраховується за формулою   . Так як інтенсивність потоку надходження , а  інтенсивність потоку обробки, то ρ розраховується за формулою:

                                                                                     (2),

де to - час обробки повідомлень на ЕОМ, tn нтервал надходження інформації від датчиків та вимірювальних пристроїв

Кількість оброблених повідомлень:

Nобр=Np–Nвтр                                                                     (3).

Підставивши в формулу (2) задані значення to=7 секунди і t=8 секунд (λ=1/7, μ=1/8), отримаємо ρ=0.875. Після підстановки в формулу (1) задане значення N=440, n=1 і розраховане значення ρ=0.875 отримаємо теоретичну кількість втрачених повідомлень -  Nвтр=167. Підставивши це значення в формулу (3) отримаємо теоретичну кількість оброблених повідомлень: Nобр=270  повідомлень.

Розраховані дан (оброблено 270 повідомлень, втрачено 167 повідомлення) відрізняються від даних отриманих після роботи тестової імітаційної моделі (оброблено 275 повідомлень, втрачено 165 повідомлень) відповідно на 0.73% та 1.2%, що підтверджує адекватність імітаційної моделі процесу надходження обробки повідомлень на ЕОМ.


Висновки

      В курсовій роботі було побудовано імітаційну модель, виконано моделювання та отримано характеристики роботи системи обробки повідомлень від датчиків та вимірюючих пристроїв на ЕОМ  , яка працює в систем управління технологічним процесом, з такими характеристиками:

-   інтервал надходження нформації від датчиків - 7±2 с;

-   час обробки повідомлень на ЕОМ - 8±3с;

-   ємність буферної пам’ят 1 повідомлення;

-   час, після якого нформація не обробляється – 14 с;

-   кількість повідомлень 440.

     Для виконання моделювання було вирішено наступні задачі:

-   зроблено опис системи обробки інформації від датчиків;

-   встановлено границі та обмеження моделювання надходження повідомлень до ЕОМ, яка працює в систем управління технологічним процесом;

-   складено концептуальну модель ЕОМ, яка працює в системі управління технологічним процесом;

-   висунуто гіпотези зафіксувати припущення необхідні для побудови моделі ЕОМ, яка працює в систем управління технологічним процесом;

-   побудовано схеми функціонування реальної ЕОМ, яка працює в системі управління технологічним процесом;

-   зроблено математичний опис функціонування ЕОМ, яка працює в системі управління технологічним процесом;

-   виконано опис імітаційно моделі ЕОМ, яка працює в системі управління технологічним процесом;

-   зроблено програмування моделі ЕОМ, яка працює в системі управління технологічним процесом;

-   проведено випробування моделі ЕОМ, яка працює в системі управління технологічним процесом;

-   отримано характеристики роботи ЕОМ, яка працює в системі управління технологічним процесом.

Після виконання моделювання системи обробки повідомлень від датчиків та вимірюючих пристроїв на ЕОМ  , яка працює в систем управління технологічним процесом згідно заданих початкових характеристик було з’ясовано, що з 440 повідомлень, що надійшли від датчиків до ЕОМ, було оброблено 275 повідомлення, а втрачено – 165 повідомлень. Коефіцієнт завантаження ЕОМ при цьому склав 99,7%. Всі повідомлення, що були втрачені, не оброблялись через відсутність місць у черзі, і жодне з повідомлень не було втрачено за часом актуальності.

У додатку Б надруковано зміст звіту, який створено в результаті моделювання системи обробки повідомлень від датчиків та вимірюючих пристроїв на ЕОМ  , яка працює в системі управління технологічним процесом (текст програми подано в додатку А).


Список використаної літератури

1   Томашевський В. М., Жданова В. Г., Жолдаков О.О.. Вирішення практичних завдань методами комп’ютерного моделювання: Навч. посібник. – К.:”Корнійчук”,2001.-268c.

2   Статистичні методи для ЕОМ/ Під ред. К.Єнслейна: Пер. з англ. /Під ред. М.Б.Малютова.- М.:Наука. Гол.ред. фіз. Мат.,літ. 1986.-464с.

3   Лабораторний практикум з математичної статистики А.М.Кузнецов, Р.І.Зароський, Є.Ю. Неділько. – Миколаїв: УДМТУ, 2002.-72c

4   Алтаев А. А.. Имитационное моделирование на языке GPSS: Метод. пособник.  – Улан-Уде: ВСГТУ, 2001.-122с.


Додаток А

Текст програми для моделювання процесу отримання та обробки на ЕОМ повідомлень від вимірюючих пристроїв

before   table M1,0,100,50;Таблиц для фіксації розподілу часу очікування

after    table M1,0,100,50;обробки повідомленнями до та після видалення

                  ;застарілих повідомлень

Memory   storage     1

Tlive    Variable    1400 ; Змінна для зберігання часу життя повідомлення

   generate    700,200,,440; Надходження заданої кількості

                         ; повідомлень від датчиків

   gate  SNF   Memory,DataLost ; Якщо черга заповнена,

                                 ; повідомлення втрачається

   enter Memory

   queue Mem          ; Повідомлення стає в чергу...

   test  E     f$EOM,0 ; ...і чекає звільнення пристрою

   tabulate    before          ; Фіксація давності повідомлення

   test  LE    m1,v$Tlive,LeftMemory; Якщо повідомлення

                                    ; застаріле, воно покидає чергу

   tabulate    after           ; Фіксація давності повідомлення, що залишилось

   seize       EOM; Захват ЕОМ

LeftMemory     depart      Mem          ; Повідомлення покидає чергу

   leave       Memory

   advance     800,300; Обробка повідомлення на ЕОМ

   release     EOM; Звільнення ЕОМ

DataLost terminate 1; Знищення повідомлення

   start 440; Старт прогону моделі
 Додаток Б

Результати роботи програми для моделювання процесу отримання та обробки на ЕОМ повідомлень від вимірюючих пристроїв

              GPSS World Simulation Report - Kursova.217.1

                   Thursday, January 11, 2007 22:18:47 

           START TIME           END TIME  BLOCKS  FACILITIES  STORAGES

                0.000         309061.710    14        1          1

              NAME                       VALUE 

          AFTER                       10001.000

          BEFORE                      10000.000

          DATALOST                       14.000

          EOM                         10005.000

          LEFTMEMORY                     10.000

          MEM                         10004.000

          MEMORY                      10002.000

          TLIVE                       10003.000

 LABEL              LOC  BLOCK TYPE     ENTRY COUNT CURRENT COUNT RETRY

                    1    GENERATE           440             0       0

                    2    GATE               440             0       0

                    3    ENTER              383             0       0

                    4    QUEUE              383             0       0

                    5    TEST               383             0       0

                    6    TABULATE           383             0       0

                    7    TEST               383             0       0

                    8    TABULATE           383             0       0

                    9    SEIZE              383             0       0

LEFTMEMORY         10    DEPART             383             0       0

                   11    LEAVE              383             0       0

                   12    ADVANCE            383             0       0

                   13    RELEASE            383             0       0

DATALOST           14    TERMINATE          440             0       0

FACILITY         ENTRIES  UTIL.   AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

 EOM                383    0.986     795.865  1        0    0    0     0      0

QUEUE              MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME   AVE.(-0) RETRY

 MEM                 1    0    383     36     0.472    380.772    420.276   0

STORAGE            CAP. REM. MIN. MAX.  ENTRIES AVL.  AVE.C. UTIL. RETRY DELAY

 MEMORY              1    1   0     1      383   1    0.472  0.472    0    0

TABLE              MEAN    STD.DEV.       RANGE           RETRY FREQUENCY CUM.%

 BEFORE          380.772  257.323                           0

                                       _  -        0.000            36     9.40

                                   0.000  -      100.000            24    15.67

                                 100.000  -      200.000            50    28.72

                                 200.000  -      300.000            40    39.16

                                 300.000  -      400.000            57    54.05

                                 400.000  -      500.000            54    68.15

                                 500.000  -      600.000            51    81.46

                                 600.000  -      700.000            21    86.95

                                 700.000  -      800.000            23    92.95

                                 800.000  -      900.000            14    96.61

                                 900.000  -     1000.000            11    99.48

                                1000.000  -     1100.000             2   100.00

 AFTER           380.772  257.323                           0

                                       _  -        0.000            36     9.40

                                   0.000  -      100.000            24    15.67

                                 100.000  -      200.000            50    28.72

                                 200.000  -      300.000            40    39.16

                                 300.000  -      400.000            57    54.05

                                 400.000  -      500.000            54    68.15

                                 500.000  -      600.000            51    81.46

                                 600.000  -      700.000            21    86.95

                                 700.000  -      800.000            23    92.95

                                 800.000  -      900.000            14    96.61

                                 900.000  -     1000.000            11    99.48

                                1000.000  -     1100.000             2   100.00


Додаток В

Текст програми для перевірки адекватност моделювання процесу отримання та обробки на ЕОМ повідомлень від вимірюючих пристроїв

EXPON FUNCTION RN1,C24; Експонентційна функція розподілу

0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915/.7,1.2/.75,1.38

.8,1.6/.84,1.85/.88,2.12/.9,2.3/.92,2.52/.94,2.81/.95,2.99/.96,3.2

.97,3.5/.98,3.9/.99,4.6/.995,5.3/.998,6.2/.999,7/.9998,8

generate    700,fn$EXPON,,440; Надходження

                      ; повідомлень від датчиків

test  L     q$Memory,1,DataLost ; Якщо память заповнена,

                              ; повідомлення втрачається

queue Memory          ; Повідомлення стає в чергу...

seize       EOM; Захоплення ЕОМ

depart      Memory          ; Повідомлення покидає чергу

advance     800,fn$EXPON; Обробка повідомлення на ЕОМ

release     EOM; Звільнення ЕОМ

DataLost     terminate 1; Знищення повідомлення

start 440; Старт прогону моделі

 Додаток Г

Результати роботи програми для перевірки адекватності моделювання процесу отримання та обробки на ЕОМ повідомлень від вимірюючих пристроїв

          

              GPSS World Simulation Report - KursovaTest.247.1

                   Thursday, January 11, 2007 22:21:21 

           START TIME           END TIME  BLOCKS  FACILITIES  STORAGES

                0.000         293543.299     8        1          0

              NAME                       VALUE 

          DATALOST                        8.000

          EOM                         10002.000

          EXPON                       10000.000

          MEMORY                      10001.000

 LABEL              LOC  BLOCK TYPE     ENTRY COUNT CURRENT COUNT RETRY

                    1    GENERATE           440             0       0

                    2    TEST               440             0       0

                    3    QUEUE              275             0       0

                    4    SEIZE              275             0       0

                    5    DEPART             275             0       0

                    6    ADVANCE            275             0       0

                    7    RELEASE            275             0       0

DATALOST            8    TERMINATE          440             0       0

FACILITY         ENTRIES  UTIL.   AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

 EOM                275    0.694     741.004  1        0    0    0     0      0

QUEUE              MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME   AVE.(-0) RETRY

 MEMORY              1    0    275    127     0.360    384.143    713.779   0


Страницы: 1, 2


Новости

Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

  скачать рефераты              скачать рефераты

Новости

скачать рефераты

Обратная связь

Поиск
Обратная связь
Реклама и размещение статей на сайте
© 2010.