Моделирование систем управления. Формирование требований и разработка концептуальной модели. Разработка математической модели системы массового обслуживания, страница 8

Имитаторы основных функций

Ф1 => Zk (датчик случайных чисел).

A2 => k < n (проверка k < n, где k-число изготовленных роликов, n-общее   

                     число роликов, входящих в подшипник).

K3 => k=k+1 (счётчик числа сформированных роликов).

A4 => Zmax  (вычислитель Zmax).

A5 => Zmin  (вычислитель Zmin).

A6 => U = Zmax – Zmin (вычислитель разброса).

2.  Выбор имитаторов «сервисных» функций.

    1) Имитаторы сбора и обработки данных.

Долю бракованных подшипников или вероятность брака определим по формуле:     q = , где  - число бракованных подшипников; М – общее число подшипников.

Следовательно, для вычисления доли брака необходимо определить . Для этого в алгоритм вводим следующие блоки:

a)  блок проверки годности подшипника: U;

b)  счётчик числа годных подшипников: , где  принимает значение «0», если подшипник бракован, и «1», если подшипник годен;

c)  вычислитель числа бракованных подшипников ;

d)  вычислитель доли брака q = .

   2) Для организации проведения эксперимента в алгоритме необходимо предусмотреть следующие блоки проверки:

a)  текущее время достигло ли выбранного максимального значения: Tl+1  Tmax.

b)  число экспериментов V достигло ли выбранного значения М:  V М. Помимо этого необходимо предусмотреть счётчик V:    V = V + 1.

   3) Установка исходных данных.

Для алгоритма выбираются блоки, определяющие исходные данные. Для чего необходимо предусмотреть два блока присвоения значений переменным, равных нулю: к = 0; m = 0.

Имитаторы сервисных функций

1) Сбор и обработка статистических данных.

    A7 => U (проверка подшипника на годность).

    F8 => =1 (оператор присвоения, т.е. фиксатор годности).

    F9 => =0 (фиксатор бракованного подшипника).

    K10 => m = m +  (вычислитель числа годных подшипников).

    A11 => q =   (вычислитель доли брака).

2) Имитаторы проведения эксперимента.

A12 => Tl+1 = Tl +  (блок наращивания времени, где ).

A13 => Tl  Tmax  (устройство проверки условия).

K14 => V = V +1  (счётчик числа сформированных подшипников).

A16 => V < M  (оператор проверки условия).

3) Имитаторы установки исходных данных.

F16 => k = 0  (оператор присвоения k = 0).

F17 => m = 0 (оператор присвоения m = 0).

Структура моделирующего алгоритма

12,13,1,2,3,4,5,6,17,7,8,9,10,14,16,15,11,1,0,0,1,1,0,1,0 


Описание алгоритма

Составленный алгоритм позволяет на основе статистических испытаний определить зависимость доли брака от времени между наладками оборудования. Для получения статистически устойчивой характеристики для каждого интервала времени Tl, проводилось М – число испытаний.

Работает модель следующим образом. При запуске программы устанавливаются значения: Tl = 0, k = 0, V = 0, = 0, , Tmax, M, .

Затем определяется текущее время Tl+1 оператором 12. Далее управление передаётся оператору 13, который проверяет, достигло ли текущее время максимально допустимого значения. Если «нет», управление передаётся формирователю роликов. Формирование роликов проводится имитатором диаметров роликов zk. Далее управление передаётся оператору 2, проверяющему, все ли ролики подшипника сформированы. Если не все – управление передаётся счётчику числа роликов (оператор 3) и далее к оператору 1 для формирования очередного ролика. Если сформированы все n – роликов, т.е. создан массив объёмом n zk, управление передаётся оператору 4, определяющему zmax. Далее оператором 5 определяется zmin, а оператором 6 – разброс U. Оператором 7 проводится контроль годности подшипника. Если подшипник годен, управление передаётся оператору 8, а затем оператору 10 для подсчета числа годных подшипников. Если подшипник не годен, управление передаётся оператору 9 и далее оператору 10. От оператора 10 управление передаётся оператору 14 для подсчета числа просмотренных подшипников. Далее оператором 16 путём присвоения  k = 0 система подготавливается к просмотру следующего подшипника. Далее управление передаётся оператору 15, проверяющему, все ли подшипники просмотрены. Если не все, то управление передаётся оператору 1 для формирования очередного подшипника. Если все подшипники просмотрены, управление передаётся оператору 11 для подсчета доли отказа при времени между наладками Tl+1. Далее управление передаётся оператору 17, который подготавливает систему к вычислению доли отказов на следующий интервал времени. Если по условию оператора 13 время истекло, выдаются результаты в виде зависимости  q = q(Tl).

Пример составления имитационной модели

системы обслуживания

В качестве примера рассмотрим работу оператора банка. Целью моделирования выберем определение среднего времени обслуживания одного клиента за интервал времени от 0 до Т, коэффициент загрузки оператора (пропускная способность)  и среднее время ожидания клиента своего обслуживания.

Система оператор – клиент работает следующим образом: оператор обслуживает клиентов в течении времени, подчиняющемуся закону . К оператору через промежутки времени, подчиняющегося закону f, обращаются клиенты. Если оператор занят, клиент становится в очередь. Максимально допустимое время нахождения клиента в очереди  подчиняется закону .

Задачей моделирования является воспроизведение процесса обслуживания клиента оператором. Цель моделирования – найти - среднее время обслуживания  одного клиента, - Среднее время нахождения клиента в очереди и - пропускная способность оператора.

 1. Выбор имитаторов основных функций

      1. Входной поток.

Для формирования , подчиняющихся закону , выбираем датчик случайных чисел. Для определения ti выбираем сумматор .

     2. Имитаторы обслуживания.

В качестве формирования  выбираем датчик случайных чисел, подчиняющихся закону . Для определения  выбираем сумматор . Для определения   выбираем два блока присвоения:  - если клиент обслуживается, не заходя в очередь;  - клиент обратился к занятому оператору.

    3. Имитаторы очереди.