Подсистема моделирования работы гибкой производственной ячейки

Курсовой проект - Разное

Другие курсовые по предмету Разное

фициенты загрузки технологического оборудования и файл в котором детально отображены состояние ячейки в каждый момент времени.

 

Список использованных источников

 

  1. Аверьянов, О.И. Технологическое оборудование ГПС / О.И. Аверьянов, А.И. Дащенко, А.А. Лескин - Ленинград: Политехника, 1991. - 320 с.
  2. Бондаренко, В.А. Основы создания ГПС механообработки: учебное пособие / В.А. Бондаренко, А.И. Сердюк - Оренбург, ОГУ, 2000. - 206 с.
  3. Белянина, П.Н. Гибкие производственные комплексы / П.Н. Белянина, В.А. Лещенко - М.: Машиностроение, 1984. - 384 с.
  4. Мельников, Г.Н. Проектирование механосборочных цехов / Г.Н. Мельников, В.П. Вороненко - М.: Машиностроение, 1990. - 351 с.
  5. Лезаж, Ж.Ж. ГПС в механической обработке / Ж.Ж. Лезаж, Пер. с франц. Н.А. Шнурова, В.А. Лещенко. - М.: Машиностроение, 1988. - 120 с.
  6. Сердюк, А.И. Основы создания ГПС механообработки [Электронный ресурс]: [интерактив. Учеб.]. - Электрон. Дан. и прогр. - Оренбург: ОГУ, 2004. - Режим доступа:

 

Приложение

 

Текст программы

unit Unit1;, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, ComCtrls, StdCtrls, Grids,ShellAPI;= class(TForm): TGroupBox;: TEdit;: TEdit;: TUpDown;: TLabel;: TLabel;: TLabel;: TStringGrid;: TLabel;: TEdit;: TEdit;: TEdit;: TLabel;: TLabel;: TLabel;: TEdit;: TEdit;: TLabel;: TGroupBox;: TLabel;: TEdit;: TUpDown;: TStringGrid;: TLabel;: TGroupBox;: TLabel;: TEdit;: TUpDown;: TStringGrid;: TGroupBox;: TButton;: TStringGrid;: TButton;: TButton;: TButton;: TButton;: TButton;: TGroupBox;: TMemo;: TButton;: TButton;: TButton;: TButton;: TGroupBox;: TMemo;: TSaveDialog;: TOpenDialog;Button1Click(Sender: TObject);Button5Click(Sender: TObject);Button4Click(Sender: TObject);Button7Click(Sender: TObject);Button8Click(Sender: TObject);Button9Click(Sender: TObject);Button10Click(Sender: TObject);Button11Click(Sender: TObject);Button2Click(Sender: TObject);Button3Click(Sender: TObject);Button6Click(Sender: TObject);

{ Private declarations }

{ Public declarations };: TForm1; FF1:textfile;

{$R *.dfm}, Smena_DU, T_sm, Emkost, Razmer_SZ,PZ,Nomenkl:integer;, L_skl, Skor_TT:real;, Koord:array [1..100] of real;, Posled: array [1..500] of integer;: array [1..10] of integer;_S,ProStan,OtrStan: array [1..10] of real;: array [1..500] of real;,Zaqwka,otpraw,Pribyt,Gnezdo: integer;,ProsTT,SumTT,Wremq:real;_PZ,Kol_PZ: array [1..100] of integer;: boolean;SKLAD;i,j, gnezdo: integer;i:=1 to Emkost do KodSklad[i]:=0;; j:=0;i:=1 to Razmer_SZ doGnezdo:=Random(Emkost+1)KodSklad[Gnezdo]=0;[gnezdo]:=Posled[i];:=j+1;;;SZ;,j,k,a,s: integer;Form1 do:=StrToInt(Edit9.Text);

stringgrid3.Cells[0,1]:= ..;

stringgrid3.Cells[0,2]:=. .;

stringgrid3.colcount:=pz+1;i:=1 to PZ do:=random(strtoint(edit8.Text))+1;:=random(7)+1;.cells[i,0]:=inttostr(i);.Cells[i,1]:=inttostr(a);.Cells[i,2]:=inttostr(s);_PZ[i]:=StrToInt(StringGrid3.Cells[i,1]);_PZ[i]:=StrToInt(StringGrid3.Cells[i,2]);;;:=0;i:=1 to PZ doj:=1 to Kol_PZ[i] dok:=k+1; Posled[k]:=Kod_PZ[i]; end;_SZ:=k;;WWOD;i:integer;:=false;Form1 do:=StrToInt(Edit1.Text);_DU:=StrToInt(Edit2.Text);i:=1 to Stanki do Koord[i]:=StrToFloat(StringGrid1.Cells[i-1,1]);:=StrToInt(Edit3.Text);:=StrToFloat(Edit4.Text);_skl:=StrToFloat(Edit5.Text);_TT:=StrToFloat(Edit6.Text);_sm:=StrToInt(Edit7.Text);:=StrToInt(Edit8.Text);i:=1 to Nomenkl do WremqDU[i]:= StrToFloat(StringGrid2.Cells[i-1,1]);

//SZ;;;;NULL;i:integer;:=0; Otpraw:=1; WreOtr:=0; ProsTT:=0; SumTT:=0;i:=1 to Stanki do[i]:=0; OtrStan[i]:=0; ProStan[i]:=0; SumPR_S[i]:=0;;;POISK(ZAGOT:integer);i:integer;i:=1 to Emkost doZAGOT=KodSklad[i] then begin Gnezdo:=i; Exit;;

ShowMessage( ); Halt;STANOK;AA:real;:integer;:=OtrStan[1]; ProsTT:=0;i:=1 to Stanki do(OtrStan[i]<=AA) then begin AA:=OtrStan[i]; pribyt:=i; end;AA<=WreOtr then Exit:=AA-WreOtr; WreOtr:=AA;:=SumTT+ProsTT;;;DOSTAWKA;Poisk, Dostawka:real;:=ABS(Koord[Otpraw]-KorSkl-L_skl*(Gnezdo-1));:=ABS(Koord[Pribyt]-KorSkl-L_skl*(Gnezdo-1));:=(Poisk+Dostawka)/Skor_TT+2*T_sm;[zaqwka]:=Wremq;:=WreOTR+Wremq;[pribyt]:=0;OtrStan[Pribyt]<WreOtr then ProStan[Pribyt]:=WreOtr-OtrStan[Pribyt];_S[pribyt]:=SumPR_S[pribyt]+ProStan[Pribyt]+Smena_DU;[Pribyt]:=WreOtr+Smena_DU+WremqDU[KodSklad[Gnezdo]]*60;(FF1,zaqwka:3,Pribyt:7,KodSklad[gnezdo]:5,ProsTT:7:1,Wremq:7:1,WreOtr:9:1,WreOtr+Smena_DU:9:1,OtrStan[Pribyt]:9:1);;PEREKODIR;:=KodStol[Pribyt];[Pribyt]:=KodSklad[Gnezdo]*10;[Gnezdo]:=KodRobot;:=Pribyt;;WYWOD;Kgps,Pgps,Ktt,Sum,AA,Fakt,Nomin:real;:string;:integer;

Str(zaqwka:3,ss); ss:= +ss+ ;

Form1.Memo2.Lines.Strings[0]:=ss;:=0;i:=1 to Razmer_SZ doNomin:=Nomin+WremqDU[(Posled[i])]; end;

Str(Nomin:7:1,ss); ss:= , - +ss;

Form1.Memo2.Lines.Strings[1]:=ss;:=0;i:=1 to Stanki do Fakt:=Fakt+OtrStan[i]/60;

Str(Fakt:7:1,ss); ss:= , -+ss;

AAthenAA:=Otrstan[i];;:=AA/60;">Form1.Memo2.Lines.Strings[2]:=ss;:=OtrStan[1]; Sum:=0;i:=1 to Stanki do:=Sum+SumPR_S[i]/60;OtrStan[i]>AA then AA:=Otrstan[i];;:=AA/60;

Str(AA:8:1,ss); ss:= , -+ss;

Form1.memo2.Lines.strings[3]:=ss;

Str(sum:7:1,ss); ss:= ,, -+ss;

Form1.memo2.LineS.strings[4]:=ss;:=sumTT/60;(SumTT:7:1,ss); ss:= , - +ss;

Form1.Memo2.Lines.Strings[4]:=ss;:=SumTT/60;(SumTT:7:1,ss); ss:= , - +ss;

Form1.Memo2.Lines.Strings[5]:=ss;:=Nomin/Fakt;(Kgps:7:2,ss); ss:= - +ss;

Form1.Memo2.Lines.Strings[6]:=ss;:=Razmer_SZ/AA;(Pgps:7:2,ss); ss:= , / - +ss;

Form1.Memo2.Lines.Strings[7]:=ss;:=(AA-SumTT)/AA;

Str(Ktt:7:2,ss); ss:= - +ss;

Form1.Memo2.Lines.Strings[8]:=ss;;TForm1.Button1Click(Sender: TObject);a,i,z,x: integer;:=StrToInt(Edit3.Text);.ColCount:=A;i:=1 to A do.Cells[i,0]:=IntToStr(i);

StringGrid4.Cells[0,0]:=;.Cells[0,1]:=;

Wwod; SZ;i:=1 to Emkost do.Cells[i,1]:=IntToStr(KodSklad[i]);i:=1 to razmer_sz do.cells[i,1]:=inttostr(posled[i]);;TForm1.Button5Click(Sender: TObject);ss: string;: integer;a,z,x: integer;:string;(FF1,Ciklgr2.mod);(FF1);(ff1,Stanki);i:=1 to stanki do(ff1,smena_du);(ff1, );;(ff1);

Writeln(FF1,. . );(FF1,. . .);

NULL; wwod;Zaqwka:=1 to Razmer_SZ do(Posled[zaqwka]);;;;;;(FF1);;TForm1.Button4Click(Sender: TObject);: string;: integer;.Visible:=True;.Clear;;memo1.Lines doTForm1.Button7Click(Sender: TObject);:integer;:=StrTOInt(Edit1.Text);.StringGrid1.ColCount:=Stanki;.StringGrid1.RowCount:=2;i:= 1 to stanki do.StringGrid1.Cells[i-1,0]:=IntToStr(i);;TForm1.Button8Click(Sender: TObject);:integer;;i:= 1 to stanki do.StringGrid1.Cells[i-1,1]:=FloatToStr(random(1000)/10);;TForm1.Button9