где
.Полученная пара множеств является математической моделью элемента
, используемого для формального описания сопряжения его с прочими элементами А-схемы и внешней средой Е.Если в А-схеме к контакту
не подключен никакой элементарный канал, то оператор не определен на этом контакте.Оператор
называется оператором сопряжения элементов (агрегатов) в А-схему. Совокупность множеств , и оператор образуют схему сопряжения элементов в систему S.Оператор сопряжения
можно задать в виде таблицы, в которой на пересечении строк с номерами элементов (агрегатов) и столбцов с номерами контактов располагаются пары чисел , , указывающие номер элемента и номер контакта , с которым соединен контакт .Если столбцы и строки такой таблицы пронумеровать двойными индексами
, и , соответственно и на пересечении помещать для контактов , и , , соединенных элементарным каналом и в противном случае, то получим матрицу смежности ориентированного графа, вершинами которого является контакты агрегатов, а дугами - элементарные каналы А-схемы.Рассмотренная схема сопряжения в А-схему, заданная совокупностью множеств и оператором R, является одноуровневой схемой сопряжения.
Обобщенный подход к моделированию сложных систем базируется на агрегативных системах - А-схемах.
Элементом А-схемы является агрегат. Агрегат задается упорядоченной совокупностью:
т.е. множествами:
- моментов времени; - входных сигналов; - выходных сигналов; - собственных параметров;и операторами:
и - перехода агрегата в новое состояние; - скачков состояний; - выдачи выходного сигнала.В одноуровневой схеме сопряжения функционирование сложной системы - это переработка информации: внешней, поступающей извне от источников, не входящих в систему; внутренней, вырабатываемой агрегатами схемы. Агрегаты схемы - это полюса, через которые происходит обмен информацией.
Каждый агрегат
, где А-схемы имеет входные контакты, на которые поступают сигналы , и выходные контакты, с которых снимаются сигналы , . Под агрегатом подразумевается воздействие внешней среды.2.1. Общие сведения и функциональное назначение.
Программа "Моделирование работы цеха" необходима для удобного и наглядного моделирования процесса обработки деталей в цехе. Время моделирования зависит от времени поступления 500 заявок (таково условие завершения работы).
Особенности функционирования систем массового обслуживания были подробно рассмотрены в п.1.2.
Delphi представляет собой язык программирования общего назначения. Наиболее эффективно он может быть использован в системном программировании как язык, использующий в теле своих программ ассемблерные вставки, что ведет к значительному повышению мобильности и надежности системных программ, уменьшает затраты на их разработку и сопровождение. Delphi оперирует объектами, присущими типичной ЭВМ: символами, строками, целыми числами различной длины, числами с плавающей запятой.
Одной из особенностей языка программирования Delphi является иерархическая структура программ. Она возможна благодаря наличию процедур и функций, обеспечивающих возможность практической реализации принципов структурного программирования. Ориентируясь на эти принципы, можно разделить большую программу на ряд меньших, оформив их как процедуры и/или функции. Эти процедуры отлаживаются отдельно и независимо, а затем уже могут использоваться в главной программе (и других процедурах и/или функциях) как готовые и независимые. При написании процедур и функций обычно пытаются достичь, кроме всего прочего, и следующие цели:
- разделение некоторой общей проблемы на несколько меньших по объему и сложности частей;
- уменьшение объема программы за счет программирования многократно применяемых программных действий в виде отдельной процедуры или функции;
- облегчение чтения текста программы;
- облегчение работы с программой, ввиду ее наглядности;
- универсализация программных модулей, то есть при возможности полученное решение частной проблемы обобщается, чтобы его можно было использовать в других задачах.
Благодаря операторам, процедурам и функциям языка возможно написание ряда сложных и разнообразных по структуре, применению и выполняемым функциям программ.
2.2. Описание логической структуры.
В данной программе был использован метод объектного программирования. Суть его заключается в оформлении последовательностей команд как замкнутых функций и/или процедур и в объединении данных, связанных по смыслу, в сложные структуры данных. Рассмотрим кратко процедуры и функции, которые использовались при написания программы:
- procedure TForm1.FormCreate - осуществляет инициализацию моделируемой системы, т.е. происходит инициализация всех переменных;
- procedure TForm1.Timer2Timer - генерирует в произвольные (распределённые по экспоненциальному закону) моменты времени поступление новых деталей (заявок);
- procedure TForm1.Timer1Timer - основная процедура программы – моделирует обработку деталей на станках и обеспечивает в определённые моменты времени вызов процедур перевода деталей из накопителя в станок и наоборот;
- procedure TForm1.N3Click - приостанавливает моделирование;
- procedure TForm1.N11Click - обнуление всех переменных и всех значений (количество всех деталей, бракованных и т.д.);
- procedure TForm1.N10Click - выводит на экран форму "Параметры", в которой можно изменять различные системные значения (максимально возможное количество брака, время обработки деталей на каждом станке и т.д.);
- procedure TForm1.Q1Click - выводит на экран форму с Q-схемой;
- procedure TForm1.N5Click -выводит на экран форму с А-схемой;
- procedure TForm1.N7Click -показывает на экране задание курсового проекта;
- procedure TForm1.N8Click - выводит на экран форму со справкой о программе;
- procedure TForm4.FormClose - используется для инициализации всех изменений на форме "Параметры";
- procedure TForm1.N9Click - выход из программы.
Процедуры и функции пользователя:
- function where_go - определяется куда пойдёт деталь после обработки на станках первичной обработки – в накопитель Н1 или вернётся назад в накопитель Н0 если брак);
- procedure prov_nak - процедура проверки наличия деталей в накопителях;
- procedure add_new - процедура создания и инициализации новой детали (заявки);
- procedure run - переводит детали (заявки) из станков (приборов) в накопители и наоборот.
Рассмотрим более подробно основной цикл программы. В этом цикле осуществляются следующие действия: