![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Описание программной реализации имитационной модели сетиСодержание книги
Поиск на нашем сайте
2.3.1 Программная модель участка травления
STORAGE – Объем памяти устанавливается равным 20, эта память представляет собой ванны для одновременного травления 20 листов. TABLE – Определение таблицы WeitTime, с помощью которой будет устанавливаться гистограмма длительности ожидания рулонов перед прокаткой. Перед выходом транзакта из участка прокатки значение его СЧА QT представляющего длительность ожидания рулона перед прокаткой заносится в таблицу. Это число представляет период времени, который начинается с момента занятия рулоном очереди к прокатному стану, и продолжается до момента начала прокатки рулона. QTABLE – Данный блок определяет таблицу WeitArt, с помощью которойв процессе прогона модели формируется гистограмма числа рулонов в очереди на прокатку в течение времени моделирования. GENERATE – Транзакты представляют собой листы-заготовки металла, поступающие каждые 1,2 мин из цеха горячей прокатки. Для определения интервала между транзактами вызывается подпрограмма D[T(m)], которая рассчитывает его как случайную величину, распределенную по закону Пуассона и определяет момент поступления транзакта в следующий по порядку блок. До этого момента времени транзакт помещается в список будущих событий (СБС). Когда этот момент времени становится текущим, транзакт сразу же направляется в блок QUEUE, а блок GENERATE тут же генерирует следующий транзакт, также помещаемый в СБС. QUEUE – Блок ОЧЕРЕДЬ с именем Ocher1 при входе транзакта регистрирует момент времени постановки транзакта (листа) в очередь на травление. ENTER – Блок ВОЙТИ в память STORAGE с меткой Travlen регистрирует вход транзакта в многоканальное устройство для имитации операции травления. DEPART – Блок ПОКИНУТЬ очередь 1 регистрирует момент времени окончания ожидания транзактом операции травления. ADVANCE – Блок ЗАДЕРЖАТЬ помещает транзакт на время операции травления в СБС. Для определения длительности операции вызывается подпрограмма WORK[K(1,J)], которая рассчитывает длительность травления как случайную величину по равномерному закону распределения в интервале 18…26 мин. LEAVE – Блок ВЫЙТИ регистрирует момент времени выхода транзакта из участка травления.
2.3.2 Программная модель участка сварки и намотки
ADOPT – Блок ADOPT присваивает всем прошедшим через него транзактам номер семейства, например 2000, что позволит в дальнейшем объединять несколько транзактов одного семейства в один транзакт с помощью блока ASSEMBLE.
QUEUE - Блок ОЧЕРЕДЬ с именем Ocher2 при входе транзакта регистрирует момент времени постановки транзакта (листа) в очередь на сварку. TRANSFER ALL,Can1,Can3,6 – Блок ПЕРЕДАТЬ в режиме ВСЕ производит передачу транзакта в свободное из трех место сварки Can1…Can3. Если все места сварки заняты, то транзакт остается в блоке TRANSFER до тех пор, пока не освободится хотя бы одно место сварки. SEIZE – Блок ЗАНЯТЬ с именем Svarka1 и меткой Can1 при поступлении в него транзакта проверяет, свободно ли место сварки 1, если оно свободно, то занимает его с регистрацией момента времени начала обслуживания и уведомлением об этом блока RELEASE с именем Svarka1, а если оно занято, то ставит транзакт в очередь к нему. DEPART - Блок ПОКИНУТЬ очередь с именем Ocher2 регистрирует момент времени окончания ожидания транзактом операции сварки. ADVANCE - Блок ЗАДЕРЖАТЬ помещает транзакт на время операции сварки в СБС. Для определения длительности операции вызывается подпрограмма WORK[K(2,1)], которая рассчитывает длительность сварки как случайную величину по нормальному закону распределения с математическим ожиданием равным 2,4 мин и средним квадратичным отклонением равным 0,4 мин. RELEASE – Блок ОСВОБОДИТЬ с именем Svarka1 при входе в него транзакта регистрирует момент окончания сварки и уведомляет об этом блок SEIZE с именем Svarka1. ASSEMBLE – Блок ОБЬЕДИНИТЬ собирает 5 транзактов семейства 2000, ожидая их, и уничтожает четыре из них, этим имитируется соединение пяти листов в полосу. TRANSFER - Блок ПЕРЕДАТЬ в режиме безусловного перехода производит передачу транзакта по метке Perexod в канал намотки полос на барабан. SEIZE – Блок ЗАНЯТЬ с именем Svarka2 и меткой Can2 при поступлении в него транзакта проверяет, свободно ли место сварки 2, если оно свободно, то занимает его с регистрацией момента времени начала обслуживания и уведомлением об этом блока RELEASE с именем Svarka2, а если оно занято, то ставит транзакт в очередь к нему. DEPART - Блок ПОКИНУТЬ очередь с именем Ocher2 регистрирует момент времени окончания ожидания транзактом операции сварки. ADVANCE - Блок ЗАДЕРЖАТЬ помещает транзакт на время операции сварки в СБС. Для определения длительности операции вызывается подпрограмма WORK[K(2,2)], которая рассчитывает длительность сварки как случайную величину по нормальному закону распределения с математическим ожиданием равным 2,4 мин и средним квадратичным отклонением равным 0,4 мин.
RELEASE – Блок ОСВОБОДИТЬ с именем Svarka2 при входе в него транзакта регистрирует момент окончания сварки и уведомляет об этом блок SEIZE с именем Svarka2. ASSEMBLE – Блок ОБЬЕДИНИТЬ собирает 5 транзактов семейства 2000, ожидая их, и уничтожает четыре из них, этим имитируется соединение пяти листов в полосу. TRANSFER - Блок ПЕРЕДАТЬ в режиме безусловного перехода производит передачу транзакта по метке Perexod в канал намотки полос на барабан. SEIZE – Блок ЗАНЯТЬ с именем Svarka3 и меткой Can3 при поступлении в него транзакта проверяет, свободно ли место сварки 3, если оно свободно, то занимает его с регистрацией момента времени начала обслуживания и уведомлением об этом блока RELEASE с именем Svarka3, а если оно занято, то ставит транзакт в очередь к нему. DEPART - Блок ПОКИНУТЬ очередь с именем Ocher2 регистрирует момент времени окончания ожидания транзактом операции сварки. ADVANCE - Блок ЗАДЕРЖАТЬ помещает транзакт на время операции сварки в СБС. Для определения длительности операции вызывается подпрограмма WORK[K(2,3)], которая рассчитывает длительность сварки как случайную величину по нормальному закону распределения с математическим ожиданием равным 2,4 мин и средним квадратичным отклонением равным 0,4 мин. RELEASE – Блок ОСВОБОДИТЬ с именем Svarka3 при входе в него транзакта регистрирует момент окончания сварки и уведомляет об этом блок SEIZE с именем Svarka3. ASSEMBLE – Блок ОБЬЕДИНИТЬ собирает 5 транзактов семейства 2000, ожидая их, и уничтожает четыре из них, этим имитируется соединение пяти листов в полосу. SEIZE – Блок ЗАНЯТЬ с именем Namotka и меткой Perexod при поступлении в него транзакта проверяет, свободно ли место намотки, если оно свободно, то занимает его с регистрацией момента времени начала обслуживания и уведомлением об этом блока RELEASE с именем Namotka, а если оно занято, то ставит транзакт в очередь к нему. ADVANCE - Блок ЗАДЕРЖАТЬ помещает транзакт на время операции намотки в СБС. Для определения длительности операции вызывается подпрограмма WORK[K(3,1)], которая рассчитывает длительность намотки как детерминированную величину. RELEASE – Блок ОСВОБОДИТЬ с именем намотка при входе в него транзакта регистрирует момент окончания намотки и уведомляет об этом блок SEIZE с именем намотка.
2.3.3 Программная модель участка прокатки
QUEUE - Блок ОЧЕРЕДЬ с именем Ocher4 при входе транзакта регистрирует момент времени постановки транзакта (рулона) в очередь на прокатку. SEIZE – Блок ЗАНЯТЬ с именем Prokatka при поступлении в него транзакта проверяет, свободно ли место прокатки, если оно свободно, то занимает его с регистрацией момента времени начала обслуживания и уведомлением об этом блока RELEASE с именем Prokatka, а если оно занято, то ставит транзакт в очередь к нему. DEPART - Блок ПОКИНУТЬ очередь с именем Ocher4 регистрирует момент времени окончания ожидания транзактом операции прокатки. ADVANCE - Блок ЗАДЕРЖАТЬ помещает транзакт на время операции поркатки в СБС. Для определения длительности операции вызывается подпрограмма WORK[K(4,1)], которая рассчитывает длительность прокатки как случайную величину по нормальному закону распределения с математическим ожиданием равным 5,4 мин и средним квадратичным отклонением равным 1,4 мин.
RELEASE – Блок ОСВОБОДИТЬ с именем Prokatka при входе в него транзакта регистрирует момент окончания прокатки и уведомляет об этом блок SEIZE с именем Prokatka. TABULATE Блок ТАБУЛИРОВАТЬ с именем WeitTime при входе в него транзакта заполняет одноименную таблицу для получения времени ожидания прокатки.
2.3.4 Программная модель участка отжига
QUEUE - Блок ОЧЕРЕДЬ с именем Ocher5 при входе транзакта регистрирует момент времени постановки транзакта (рулона) в очередь на отжиг. TRANSFER ALL,Kan1,Kan5,5 – Блок ПЕРЕДАТЬ в режиме ВСЕ производит передачу транзакта в свободное из пяти место отжига Kan1…Kan5. Если все места jn;buf заняты, то транзакт остается в блоке TRANSFER до тех пор, пока не освободится хотя бы одно место отжига. SEIZE – Блок ЗАНЯТЬ с именем Otgig1 при поступлении в него транзакта проверяет, свободно ли место отжига, если оно свободно, то занимает его с регистрацией момента времени начала обслуживания и уведомлением об этом блока RELEASE с именем Otgig1, а если оно занято, то ставит транзакт в очередь к нему. DEPART - Блок ПОКИНУТЬ очередь с именем Ocher5 регистрирует момент времени окончания ожидания транзактом операции отжига. ADVANCE - Блок ЗАДЕРЖАТЬ помещает транзакт на время операции отжига в СБС. Для определения длительности операции вызывается подпрограмма WORK[K(5,1)], которая рассчитывает длительность отжига как равномерно распределенную случайную величину в интервале 21…27 мин. RELEASE – Блок ОСВОБОДИТЬ с именем Otgig1 при входе в него транзакта регистрирует момент окончания прокатки и уведомляет об этом блок SEIZE с именем Otgig1. TRANSFER - Блок ПЕРЕДАТЬ в режиме безусловного перехода производит передачу транзакта по метке Out в на участок правки и раскроя. SEIZE – Блок ЗАНЯТЬ с именем Otgig2 при поступлении в него транзакта проверяет, свободно ли место отжига, если оно свободно, то занимает его с регистрацией момента времени начала обслуживания и уведомлением об этом блока RELEASE с именем Otgig2, а если оно занято, то ставит транзакт в очередь к нему. DEPART - Блок ПОКИНУТЬ очередь с именем Ocher5 регистрирует момент времени окончания ожидания транзактом операции отжига. ADVANCE - Блок ЗАДЕРЖАТЬ помещает транзакт на время операции отжига в СБС. Для определения длительности операции вызывается подпрограмма WORK[K(5,2)], которая рассчитывает длительность отжига как равномерно распределенную случайную величину в интервале 21…27 мин. RELEASE – Блок ОСВОБОДИТЬ с именем Otgig2 при входе в него транзакта регистрирует момент окончания прокатки и уведомляет об этом блок SEIZE с именем Otgig2.
TRANSFER - Блок ПЕРЕДАТЬ в режиме безусловного перехода производит передачу транзакта по метке Out в на участок правки и раскроя. SEIZE – Блок ЗАНЯТЬ с именем Otgig3 при поступлении в него транзакта проверяет, свободно ли место отжига, если оно свободно, то занимает его с регистрацией момента времени начала обслуживания и уведомлением об этом блока RELEASE с именем Otgig3, а если оно занято, то ставит транзакт в очередь к нему. DEPART - Блок ПОКИНУТЬ очередь с именем Ocher5 регистрирует момент времени окончания ожидания транзактом операции отжига. ADVANCE - Блок ЗАДЕРЖАТЬ помещает транзакт на время операции отжига в СБС. Для определения длительности операции вызывается подпрограмма WORK[K(5,3)], которая рассчитывает длительность отжига как равномерно распределенную случайную величину в интервале 21…27 мин. RELEASE – Блок ОСВОБОДИТЬ с именем Otgig3 при входе в него транзакта регистрирует момент окончания прокатки и уведомляет об этом блок SEIZE с именем Otgig3. TRANSFER - Блок ПЕРЕДАТЬ в режиме безусловного перехода производит передачу транзакта по метке Out в на участок правки и раскроя. SEIZE – Блок ЗАНЯТЬ с именем Otgig4 при поступлении в него транзакта проверяет, свободно ли место отжига, если оно свободно, то занимает его с регистрацией момента времени начала обслуживания и уведомлением об этом блока RELEASE с именем Otgig4, а если оно занято, то ставит транзакт в очередь к нему. DEPART - Блок ПОКИНУТЬ очередь с именем Ocher5 регистрирует момент времени окончания ожидания транзактом операции отжига. ADVANCE - Блок ЗАДЕРЖАТЬ помещает транзакт на время операции отжига в СБС. Для определения длительности операции вызывается подпрограмма WORK[K(5,4)], которая рассчитывает длительность отжига как равномерно распределенную случайную величину в интервале 21…27 мин. RELEASE – Блок ОСВОБОДИТЬ с именем Otgig4 при входе в него транзакта регистрирует момент окончания прокатки и уведомляет об этом блок SEIZE с именем Otgig4. TRANSFER - Блок ПЕРЕДАТЬ в режиме безусловного перехода производит передачу транзакта по метке Out в на участок правки и раскроя. SEIZE – Блок ЗАНЯТЬ с именем Otgig5 при поступлении в него транзакта проверяет, свободно ли место отжига, если оно свободно, то занимает его с регистрацией момента времени начала обслуживания и уведомлением об этом блока RELEASE с именем Otgig5, а если оно занято, то ставит транзакт в очередь к нему. DEPART - Блок ПОКИНУТЬ очередь с именем Ocher5 регистрирует момент времени окончания ожидания транзактом операции отжига. ADVANCE - Блок ЗАДЕРЖАТЬ помещает транзакт на время операции отжига в СБС. Для определения длительности операции вызывается подпрограмма WORK[K(5,5)], которая рассчитывает длительность отжига как равномерно распределенную случайную величину в интервале 21…27 мин. RELEASE – Блок ОСВОБОДИТЬ с именем Otgig5 при входе в него транзакта регистрирует момент окончания прокатки и уведомляет об этом блок SEIZE с именем Otgig5.
2.3.4 Программная модель участка правки и раскроя
QUEUE - Блок ОЧЕРЕДЬ с именем Ocher6 и меткой Out при входе транзакта регистрирует момент времени постановки транзакта (рулона) в очередь на правку и раскрой рулона.
SEIZE – Блок ЗАНЯТЬ с именем Pravka при поступлении в него транзакта проверяет, свободно ли место правки, если оно свободно, то занимает его с регистрацией момента времени начала обслуживания и уведомлением об этом блока RELEASE с именем Pravka, а если оно занято, то ставит транзакт в очередь к нему. DEPART - Блок ПОКИНУТЬ очередь с именем Ocher6 регистрирует момент времени окончания ожидания транзактом операции правки. ADVANCE - Блок ЗАДЕРЖАТЬ помещает транзакт на время операции Pravka в СБС. Для определения длительности операции вызывается подпрограмма WORK[K(6,1)], которая рассчитывает длительность правки и раскроя как случайную величину с показательным распределением и средней длительностью в 5 мин. RELEASE – Блок ОСВОБОДИТЬ с именем Pravka при входе в него транзакта регистрирует момент окончания операций правки и раскроя и уведомляет об этом блок SEIZE с именем Pravka. TERMINATE – Блок УНИЧТОЖИТЬ при входе в него транзакта ликвидирует его как структуру данных.
|
|||||||||
Последнее изменение этой страницы: 2017-02-10; просмотров: 126; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.15.170.2 (0.011 с.) |