0 / 0 / 0
Регистрация: 10.10.2013
Сообщений: 6
1

Модель АСУ в GPSS

02.12.2013, 02:16. Показов 4016. Ответов 12
Метки нет (Все метки)

Задача

Для обеспечения надежности АСУ ТП в ней используется две ЭВМ. Первая ЭВМ выполняет обработку данных о технологическом процессе и выработку управляющих сигналов, а вторая находится в "горячем резерве". Данные в ЭВМ поступают через 10 +/- 2с., обрабатываются в течение 3с., затем посылается управляющий сигнал, поддерживающий заданный темп процесса. Если к моменту посылки следующего набора данных не получен управляющий сигнал, то интенсивность выполнения технологического процесса уменьшается вдвое и данные посылаются через 20 +/- 4с. Основная ЭВМ каждые 30с. посылает резервной ЭВМ сигнал о работоспособности. Отсутствие сигнала означает необходимость включения резерв-ной ЭВМ вместо основной. Характеристики обеих ЭВМ одинаковы. Подключение резервной ЭВМ занимает 5с., после чего она заменяет основную до восстановления, а процесс возвращается к нормальному темпу. Отказы ЭВМ происходят через 300 +/- 30с. Восстановление занимает 100с. Резервная ЭВМ абсолютно надежна.
Смоделировать 1 час работы системы. Определить среднее время нахождения технологического процесса в заторможенном состоянии и среднее число пропущенных из-за отказов данных.

Решение

Код
SAVEVALUE CTRL,0
GENT VARIABLE (10+10#X$CTRL)
GENDT VARIABLE (2+2#X$CTRL)
GENERATE V$GENT, V$GENDT 
GATE FV MAIN,met1
SEIZE MAIN
ADVANCE 3 
RELEASE MAIN
TERMINATE
met1 GATE FNV RESERVE,met2
TERMINATE
met2 SEIZE RESERVE
ADVANCE 3 
RELEASE RESERVE
TERMINATE

GENERATE 30
GATE FNV MAIN,met3 
GATE FNV RESERVE,met3
ADVANCE  5
FAVAIL RESERVE
met3 TERMINATE

GENERATE 300,30
FUNAVAIL MAIN,RE,11
SAVEVALUE CTRL,1
ADVANCE 100 
FAVAIL MAIN
FUNAVAIL RESERVE
SAVEVALUE CTRL,0
TERMINATE

START 3600
TERMINATE 1
Ошибки выглядят так

12/02/13 00:18:28 Model Translation Begun.
12/02/13 00:18:28 Ready.
12/02/13 00:18:28 Simulation in Progress.
12/02/13 00:18:28 Error Stop.
12/02/13 00:18:28 Halt. XN: 192. Block 12 Next.
12/02/13 00:18:28 Clock:1646.507200. Next: RELEASE. Line 14.
12/02/13 00:18:28 RELEASE RESERVE
12/02/13 00:18:28 Attempt to release an unowned Facility.

Что я сделал не так?
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.12.2013, 02:16
Ответы с готовыми решениями:

Модель АСУ с двумя ЭВМ
Для обеспечения надежности АСУ ТП в ней используется две ЭВМ. Первая ЭВМ выполняет обработку данных...

Построить GPSS-модель системы
Пожалуйста, помогите с задачей!) Построить GPSS-модель системы, содержащей PIO-процессор...

Имитационная модель мастерской - GPSS
В автомобильной мастерской работает один мастер. Средний интервал между моментами поступления...

Составить иммитационную модель для Joomla! (GPSS)
Добрый день нужно составить имитационную модель для Joomla 3.2.0 - есть пример. ПРИМЕР -...

12
Эксперт GPSS
537 / 403 / 98
Регистрация: 02.07.2010
Сообщений: 1,659
02.12.2013, 05:18 2
попытка освободить устройство RESERVE, в тот момент когда оно уже свободно

Добавлено через 29 секунд

Не по теме:

8-)есть готовая работа по этому заданию



Добавлено через 2 минуты
а больше всего возмущает, что код не прокомментирован
0
0 / 0 / 0
Регистрация: 10.10.2013
Сообщений: 6
02.12.2013, 18:22  [ТС] 3
Все пофиксил

Код
SAVEVALUE CTRL,0;переменная-индикатор  заторможенного состояния процесса
SAVEVALUE slwpktm,0;тут будет значение времени пребывания системы в заторможенном режиме
GENT VARIABLE (10+10#X$CTRL)
GENDT VARIABLE (2+2#X$CTRL)
GENERATE V$GENT, V$GENDT; поток заявок
GATE FV MAIN,met1; проверяем работоспособность главного эвм
SEIZE MAIN
ADVANCE 3;обслуживание
RELEASE MAIN
TERMINATE; транзакт прошел основным каналом
met1 SAVEVALUE CTRL,1 интенсивность потока уменьшилась в 2 раза
GATE FNV RESERVE,met2; проверяем работоспособность резервного эвм
TERMINATE; заявка потеряна
met2 SEIZE RESERVE
ADVANCE 3; обслуживание
RELEASE RESERVE
TERMINATE; транзакт прошел резервным каналом

GENERATE 30; каждые 30 с основной компьютер отправляет сигннал о работоспособности
GATE FNV MAIN,met3; основной комп работает?
GATE FNV RESERVE,met3; резервный комп работает?
ADVANCE  5; подключение резервного эвм - 5 сек
FAVAIL RESERVE;
met3 TERMINATE;

GENERATE 300,30; моделируем отказы основного эвм
FUNAVAIL MAIN,RE,met2;
ADVANCE 100; востановление - 100 с
FAVAIL MAIN
FUNAVAIL RESERVE
SAVEVALUE CTRL,0; поддерживаем нормальный темп процесса
TERMINATE

GENERATE 1
SAVEVALUE slwpktm+,x$CTRL; вычисление времени
TERMINATE

GENERATE 3600
TERMINATE 1
START 1
Может что неправильно сделал. Может есть возможность как-нибудь оптимизировать?
0
Эксперт GPSS
537 / 403 / 98
Регистрация: 02.07.2010
Сообщений: 1,659
02.12.2013, 18:43 4
Цитата Сообщение от vad32m Посмотреть сообщение
GENERATE 1
SAVEVALUE slwpktm+,x$CTRL; вычисление времени
TERMINATE
в этой части смысла нет

Добавлено через 2 минуты
раз в коде некоторые строчки не прокомментированны значит вы сами не осознаете зачем они тут
0
0 / 0 / 0
Регистрация: 10.10.2013
Сообщений: 6
02.12.2013, 18:50  [ТС] 5
Чем просто поливать грязью, предложил бы альтернативный вариант.
Странная логика. По ходу многие программисты не выкупают, что они пишут - не все строки откомментированы.
0
Эксперт GPSS
537 / 403 / 98
Регистрация: 02.07.2010
Сообщений: 1,659
02.12.2013, 19:10 6
альтернативный вариант:
1) в этом нет необходимости
Цитата Сообщение от vad32m Посмотреть сообщение
GENERATE 1
SAVEVALUE slwpktm+,x$CTRL; вычисление времени
TERMINATE
2) попробуй описать в каждой строчке что тут происходит и увидишь где что не так

Добавлено через 7 минут
GENT VARIABLE (10+10#X$CTRL)
GENDT VARIABLE (2+2#X$CTRL)
вот это тоже не понятно зачем

Добавлено через 2 минуты
Цитата Сообщение от vad32m Посмотреть сообщение
GENT VARIABLE (10+10#X$CTRL)
GENDT VARIABLE (2+2#X$CTRL)
GENERATE V$GENT, V$GENDT
это можно смело менять на
GENERATE 10,2; поток заявок

Добавлено через 1 минуту
Цитата Сообщение от vad32m Посмотреть сообщение
Чем просто поливать грязью, предложил бы альтернативный вариант.
во первых грязью вас еще ни кто не поливает, а во вторых проявите уважение к людям которые вам помогают

Добавлено через 1 минуту
Вы что думали. выложили код и все кинуться за вас его переделывать, вот по комментариям я вижу сразу где и что и как вы понимаете а где от балды написали блок
0
0 / 0 / 0
Регистрация: 10.10.2013
Сообщений: 6
02.12.2013, 19:17  [ТС] 7
Цитата Сообщение от SergProgC++ Посмотреть сообщение
это можно смело менять на
GENERATE 10,2; поток заявок
Я бы так не сказал.
http://forum.sources.ru/index.php?showtopic=358170
0
Эксперт GPSS
537 / 403 / 98
Регистрация: 02.07.2010
Сообщений: 1,659
02.12.2013, 19:21 8
Цитата Сообщение от vad32m Посмотреть сообщение
Я бы так не сказал.
http://forum.sources.ru/index.php?showtopic=358170
не вижу смысл усложнять, можно и два потока сделать, и в зависимости от режима использовать заявки разного потока
0
0 / 0 / 0
Регистрация: 10.10.2013
Сообщений: 6
02.12.2013, 19:27  [ТС] 9
Цитата Сообщение от vad32m Посмотреть сообщение
GENERATE 1
SAVEVALUE slwpktm+,x$CTRL; вычисление времени
TERMINATE
Каждую единицу времени к slwpktm добавляют значение CTRL, которое может быть 0 (нормальный режим) или 1(заторможенный режим).
Соответственно получаем время пребывания в заторможенном режиме.
0
Эксперт GPSS
537 / 403 / 98
Регистрация: 02.07.2010
Сообщений: 1,659
02.12.2013, 19:30 10
а при переходе из режима в режим , нельзя получать время длительности, обязательно громоздить это?
0
1815 / 1029 / 285
Регистрация: 13.02.2012
Сообщений: 3,338
02.12.2013, 19:47 11
Харэ Харэ ужэ батл устраивать
И так и так можно. Кому как понятнее (проще).
Сведите ваши вопросы до узкой проблематики, сразу скажу что проверять задачу не так просто и лучше с этим вопросом мучать того препода, за которым закреплены эти обязанности.
0
Эксперт GPSS
537 / 403 / 98
Регистрация: 02.07.2010
Сообщений: 1,659
02.12.2013, 19:54 12
ну с ошибкой тут все ясно, мы пытаемся освободить не занятое устройство, батл тут не получится, боюсь vad32m, не потянет. Надеюсь он прислушивается к тому что говорят , ведь в его это интересах
0
0 / 0 / 0
Регистрация: 22.01.2016
Сообщений: 1
23.01.2016, 21:11 13
эммм, а можно просить вам поделиться данным решением?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.01.2016, 21:11

Построить имитационную модель СМО в GPSS World
Помогите,пожалуйста! СМО содержит n=4 канала Имеет бесконечную очередь Интенсивность потока...

Составить модель авторизации и аутентификации в IMS (в среде GPSS)
Доброго времени суток. Необходимо воплотить в жизнь модель регистрации пользователя в системе IMS....

Модель трехфазной разомкнутой Сети Массового Обслуживания в GPSS
Здравствуйте,уважаемые форумчане! Доселе я не был знаком с GPSS ,от чего задача создания модели на...

Модель GPSS-Deplhi(SMPL). Incompatible types: 'Arbeit' and 'Integer'
задача: Время прихода клиента распределено 10-20 минут, время обслуживания 8-16 минут. время работы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru