- •Методические указания
- •Лабораторная работа № 1 изучение встроенного языка программирования simtalk
- •1. Теоретическая часть
- •1.3.4. Информация об атрибутах и методах
- •2. Практическая часть
- •Лабораторная работа № 2 работа с накопителями и менеджером экспериментов
- •1. Теоретическая часть
- •2. Практическая часть
- •Лабораторная работа № 3 Моделирование транспортной системы
- •1. Теоретическая часть
- •1. Моделирование поезда тележек
- •2. Практическая часть
- •Библиографический список
- •Содержание
- •394026 Воронеж, Московский просп., 14
1.3.4. Информация об атрибутах и методах
В Plant Simulation существует возможность получить информацию о встроенных атрибутах и методах в объектах. Для этого следует вызвать контекстное меню объекта и выбрать Show Attributes and Methods. В появившемся списке будет отображены все атрибуты и методы, как показано на рис. 3.
Рис. 3. Атрибуты и методы объекта
Колонка «Signature» отображает информацию о том, какие данные следует вводить или какой тип данных вернется после работы функции.
Примером атрибута для объекта Source будет «Availbility», рис. 4. Этому атрибуту возможно присвоить значение, которое установит доступность объекта.
Рис. 4. Атрибут «Availability»
Для доступа к атрибуту следует ввести имя объекта, а затем, через точку, атрибут.
Для вывода информации в консоль SimTalk содержит функцию print. После этой функции в скобках указываются данные для вывода. Например:
Print(SingleProc.ProcTime)
После выполнения метода, содержащего данный код, в консоль будет выведено значение времени процесса SingleProc.
Для присвоения нового значения атрибуту следует использовать операцию присваивания. Она обозначается как «:=», где справа от нее вводится присваиваемое значение. Например:
SingleProc.ProcTime:=100;
В результате выполнения этого кода, время обработки объекта SingleProc станет равным 100 секундам.
Пример. Требуется создать модель с использованием объекта Store, который при заполнении будет очищаться.
Сначала необходимо создать модель, показанную на рис. 5. Объект Store находится на вкладке Material Flow.
Рис. 5. Модель с объектом Store
После создания модели, следует добавить в рабочую область объект Method, который позволит реализовать поставленную задачу. Объект Method открывается двойным нажатием на него и, в результате, открывается редактор кода, показанный на рис. 6.
Рис. 6. Редактор кода объекта Method
Методы (функции) всегда имеют тело программы:
Is
Do
--Statements
End;
Объявление переменных происходит между служебными словами «is» и «do». Программный код вводится между «do» и «end». Для реализации задания в примере необходимо ввести программный код, представленный на рис. 7.
Рис. 7. Программный код очистки объекта store
В SimTalk для доступа к атрибутам объектов следует указать имя объекта, а затем через точку необходимый атрибут. В данном примере имя объекта store, а атрибут NumMu.
Для применения изменений необходимо нажать F7. Для того, чтобы эта функция заработала, ей необходимо задать точку выполнения. Такой точкой станет вход в store, и, каждый раз при поступлении объекта в store, будет выполняться проверка его наполненности. Чтобы применить метод следует дважды щелкнуть на store и зайти в меню Controls-Entrance и там выбрать Method, как показано на рис. 8.
Рис. 8. Выбор метода
Остается нажать OK и запустить симуляцию для просмотра результатов.
2. Практическая часть
Создать имитационную модель, содержащую указанные объекты. Затем изменить указанные значения атрибутов(новые значения указаны в таблице после запятой), и вывести новые значения в консоль.
№ |
Объект |
Изменяемый параметр |
Объект |
Изменяемый параметр |
1 |
SingleProc |
ProcTime, 100 |
Source |
Start, 55 |
2 |
SingleProc |
Availability, 80 |
ParallelProc |
SetupTime, 40 |
3 |
ParallelProc |
ProcTime, 220 |
SingleProc |
Availability, 75 |
4 |
ParallelProc |
Availability, 75 |
SingleProc |
ProcTime, 22 |
5 |
Source |
Interval, 100 |
ParallelProc |
ProcTime, 150 |
6 |
Source |
Start, 50 |
Drain |
Availability, 65 |
7 |
Drain |
Availability, 88 |
SingleProc |
SetupTime, 20 |
8 |
Drain |
Availability, 50 |
SingleProc |
ProcTime, 75 |
Продолжение таблицы |
||||
9 |
SingleProc |
SetupTime, 75 |
Drain |
SetupTime, 100 |
10 |
SingleProc |
ProcTime, 25 |
Source |
Stop, 180 |
11 |
ParallelProc |
XDim, 5 |
SingleProc |
SetupTime, 80 |
12 |
ParallelProc |
YDim, 4 |
Drain |
Availability, 55 |
13 |
Drain |
Availability, 80 |
SingleProc |
SetupTime, 70 |
14 |
SingleProc |
ProcTime, 150 |
ParallelProc |
XDim, 3 |
15 |
SingleProc |
SetupTime, 60 |
ParallelProc |
YDim, 2 |