Описание логической структуры
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

 

В данной программе был использован метод объектного программирования. Суть его заключается в оформлении последовательностей команд как замкнутых функций и/или процедур и в объединении данных, связанных по смыслу, в сложные структуры данных. Рассмотрим кратко процедуры и функции, которые использовались при написания программы:

- 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 - переводит детали (заявки) из станков (приборов) в накопители и наоборот.

Рассмотрим более подробно основной цикл программы. В этом цикле осуществляются следующие действия:

а) Если очередной момент времени равен моменту поступления детали в накопитель Н0, то в накопитель Н0 добавляется 1 деталь. Затем вычисляется случайным образом и запоминается время поступления следующей детали.

б) Если очередь не пуста и станок №1 или станок №2 свободен, то уменьшается счетчик очереди и вычисляется время обработки детали. В это время станок находится в состоянии занят.

в) Если общее время моделирования равно времени обработки детали, то станок освобождается и с некоторой (различной для разных станков) вероятностью деталь отправляется во второй накопитель или возвращается на повторную обработку, если брак. После этого для этого станка повторяется пункт б).

г) Если деталь поступила в накопитель Н1, то увеличивается счётчик элементов очереди.

д) Если станок №1 повторной обработки свободен, то деталь поступает на свободный станок, а счетчик элементов очереди уменьшается на 1. Иначе если в очереди больше трёх деталей, то подключается ещё один станок. Если же оба станка заняты, то ожидается освобождение одного из них.

После запуска на экран монитора будет выведено основное рабочее окно программы. Интерфейс программы содержит в верхней части меню пользователя, в котором содержатся пункты, позволяющие вывести сведения о программе и разработчике, просмотреть задание моделирования, произвести запуск, приостановление и продолжение моделирования работы цеха, просмотреть Q-схему и A-схему задачи, а также осуществить выход из программы.

Дата: 2019-05-28, просмотров: 184.