Министерство образования и науки Российской Федерации
Федеральное Агентство по образованию
Государственное бюджетное образовательное учреждение высшего профессионального образования «Ижевский государственный технический университет»
Воткинский Филиал
Кафедра «Ракетостроение»
Лабораторная работа №1
по курсу: «Математическое моделирование»
на тему: «Исследование функционирования сборочного цеха
машиностроительного предприятия с помощью математической модели»
Выполнил: студент гр. Д-711 Белоусова А.С.
Проверил: д.т.н., профессор Уразбахтин Ф.А.
Воткинск, 2011
Цель работы.
Исследовать зависимость величины относительного простоя от размера партии P1.
Краткое описание модели.
Первоначально детали поступают на цеховой склад, далее отправляются на участок комплектации, затем на сборочный участок.
Необходимо шесть партий комплектующих, которые поступают на цеховые склады (заделы), имеющие определённую вместимость. Далее они поступают на участок комплектации, где формируются комплекты. Для рассмотренного цеха каждый комплект состоит из: 7 деталей первого типа, 6 детали второго типа, 5 детали третьего типа, 4 детали четвертого типа, 3 детали пятого типа и 2 детали шестого типа. Затем комплект поступает на сборочные участки, для получения готовых изделий.
Ограничения и допущения, принятые при создании модели:
действие человеческого фактора полностью исключено;
в сборочный цех комплектующие поступают только лишь партиями через строго определенные отрезки времени;
все прибывающие комплектующие располагаются в заделах в строгом соответствии с типом;
если партия не вмещается на склад, то от партии отказываются;
замена одного типа узлов на другие не допускается;
на 1-е число календарного месяца на складе находится по одной партии деталей каждого типа.
Схематическая математическая модель
Исходные данные:
Обозначение |
Наименование |
Единицы измерения |
Значение |
P1 |
Первая партия |
шт |
- |
P2 |
Вторая партия |
шт |
12 |
P3 |
Третья партия |
шт |
10 |
P4 |
Четвертая партия |
шт |
8 |
P5 |
Пятая партия |
шт |
6 |
P6 |
Шестая партия |
шт |
4 |
|
Продолжительность сборки |
ч |
8 |
м |
Период моделирования |
ч |
0,5 |
Tr |
Общее время работы цеха |
ч |
450 |
N1N |
Вместимость склада для первой партии |
шт |
20 |
N2N |
Вместимость склада для второй партии |
шт |
15 |
N3N |
Вместимость склада для третьей партии |
шт |
16 |
N4N |
Вместимость склада для четвертой партии |
шт |
13 |
N5N |
Вместимость склада для пятой партии |
шт |
8 |
N6N |
Вместимость склада для шестой партии |
шт |
7 |
T1 min - T1 max |
Интервалы времени поставки партии Р1 |
ч |
2-3 |
T2 min - T2 max |
Интервалы времени поставки партии Р2 |
ч |
1,5-2,5 |
T3 min - T3 max |
Интервалы времени поставки партии Р3 |
ч |
2,5-3,5 |
T4 min - T4 max |
Интервалы времени поставки партии Р4 |
ч |
3-4 |
T5 min - T5 max |
Интервалы времени поставки партии Р5 |
ч |
3,5-4,5 |
T6 min – T6 max |
Интервалы времени поставки партии Р6 |
ч |
1-3 |
S |
Количество стендов |
шт |
4 |
Алгоритм:
Согласно параметрам модели составляем программу, определяющую величину относительного простоя и количество изделий исходя из входных данных:
program MM1;
uses crt;
var P1: integer;
N1, N2, N3, N4, N5, N6: integer;
N1N, N2N, N3N, N4N, N5N, N6N: integer;
P2, P3, P4, P5, P6: integer;
T1, T2, T3, T4, T5, T6, Dy, TY, Sy, y: real;
T1min, T2min, T3min, T4min, T5min, T6min: real;
T1max, T2max, T3max, T4max, T5max, T6max: real;
Tm1, Tm2, Tm3, Tm4, Tm5, Tm6: real;
dm, d: real;
i, j: integer;
TR, Tpr, t, DDT, A: real;
procedure MM (P1: integer);
label 9, 12;
begin
randomize;
TR:=450; dm:=0.5; d:=8;
P2:=12; P3:=10; P4:=8; P5:=6; P6:=4;
T1min:=2; T2min:=1.5; T3min:=2.5; T4min:=3; T5min:=3.5; T6min:=1;
T1max:=3; T2max:=2.5; T3max:=3.5; T4max:=4; T5max:=4.5; T6max:=3;
N1N:=20; N2N:=15; N3N:=16; N4N:=13; N5N:=8; N6N:=7;
N1:=P1; N2:=P2; N3:=P3; N4:=P4; N5:=P5; N6:=P6; t:=0; Tpr:=0;
A:=Random; T1:=T1min+A*(T1max-T1min);
A:=Random; T2:=T2min+A*(T2max-T2min);
A:=Random; T3:=T3min+A*(T3max-T3min);
A:=Random; T4:=T4min+A*(T4max-T4min);
A:=Random; T5:=T5min+A*(T5max-T5min);
A:=Random; T6:=T6min+A*(T6max-T6min);
Tm1:=0; Tm2:=0; Tm3:=0; Tm4:=0; Tm5:=0; Tm6:=0; Dy:=0; Sy:=0; DDT:=d/4;
9: if (N1>=7) and (N2>=6) and (N3>=5) and (N4>=4) and (N5>=3) and (N6>=2) then
begin
N1:=N1-7; N2:=N2-6; N3:=N3-5; N4:=N4-4; N5:=N5-3; N6:=N6-2;
end
else
Tpr:=Tpr+dm;
12: t:=t+dm; Tm1:=Tm1+dm; Tm2:=Tm2+dm; Tm3:=Tm3+dm; Tm4:=Tm4+dm; Tm5:=Tm5+dm;
Tm6:=Tm6+dm; DDT:=DDT+dm;
if Tm1>=T1 then
begin
Tm1:=0; A:=random; T1:=T1min+A*(T1max-T1min);
if N1+P1<=N1N then
begin
N1:=N1+P1;
end
end;
if Tm2>=T2 then
begin
Tm2:=0; A:=random; T2:=T2min+A*(T2max-T2min);
if N2+P2<=N2N then
begin
N2:=N2+P2;
end
end;
if Tm3>=T3 then
begin
Tm3:=0; A:=random; T3:=T3min+A*(T3max-T3min);
if N3+P3<=N3N then
begin
N3:=N3+P3;
end
end;
if Tm4>=T4 then
begin
Tm4:=0; A:=random; T4:=T4min+A*(T4max-T4min);
if N4+P4<=N4N then
begin
N4:=N4+P4;
end
end;
if Tm5>=T5 then
begin
Tm5:=0; A:=random; T5:=T5min+A*(T5max-T5min);
if N5+P5<=N5N then
begin
N5:=N5+P5;
end
end;
if Tm6>=T6 then
begin
Tm6:=0; A:=random; T6:=T6min+A*(T6max-T6min);
if N6+P6<=N6N then
begin
N6:=N6+P6;
end
end;
if t<=TR then
begin
if DDT<d/4 then goto 12
else
begin
DDT:=0; goto 9;
end
end
else
begin
y:=(Tpr/TR)*100;
end;
end;
Begin clrscr;
for P1:=0 to 20 do
begin
Dy:=0; Sy:=0;
for i:=1 to 100 do
begin
MM (P1);
TY:=y;
Sy:=Sy+y;
end;
if i=100 then
begin
Sy:=Sy/100;
end;
for j:=1 to 100 do
begin
Dy:=Dy+sqr(Sy-TY);
end;
if j=100 then
begin
Dy:=1/99*sqrt(Dy);
end;
Writeln ('Sy=',Sy:8:2);
Writeln ('Dy=',Dy:8:4);
Writeln ('P1=',P1:8);
readln;
end;
if P1=20 then
end.