Подсистема моделирования работы гибкой производственной ячейки
Содержание
Введение
1. Анализ
существующих систем, аналогов
. Разработка
подсистемы моделирования работы ГПЯ
.1
Наименование и область применения
2.2 Основания
для создания
.3 Цель и
назначение
.4
Характеристика процесса проектирования
.5 Требования
к САПР
.6
Технико-экономические показатели
3. Разработка моделей САПР с
использованием методологии IDEF0
.1 Методология
функционального моделирования IDEFO
.2 Декомпозиция
функциональных блоков IDEF0
. Программное обеспечение
4.1 Общие
сведения
.2
Функциональное назначение
.3 Описание
логической структуры
.4
Используемые технические средства
.5 Вызов и
загрузка
.6 Входные
данные
.7 Выходные
данные
5. Условия
выполнения программы
.1 Выполнение
программы
. Руководство
программиста
Вывод
Список
использованных источников
Приложение
Введение
Развитие радиоэлектроники, вычислительной техники и программирования,
серийное производство высокопроизводительных многоцелевых станков с ЧПУ
(обрабатывающих центров), робототехника и использование групповой технологии,
обусловили создание базы для автоматизации серийного, мелкосерийного и
единичного производств, а также для перехода к гибкому автоматизированному
производству и к массовому внедрению гибких производственных систем (ГПС).
Приблизительная стоимость ГПС составляет 1 млн. долларов на один станок,
входящий в состав системы. Чтобы капитальные вложения быстро окупились,
необходимо как можно более полное использование системы во времени. Не случайно
на Западе ГПС работают по 20 часов в сутки и по 7 суток в неделю: в этом случае
срок окупаемости затрат составляет 1,5 - 2,0 года.
Поэтому при проектировании ГПС стремятся предусмотреть и свести к
минимуму простои технологического оборудования на этапе эксплуатации. Это
требует тщательной проработки автоматического производственного процесса во
времени. Организацию работы ГПС во времени изображают с помощью временных
диаграмм (циклограмм) работы ГПС, или просто таблицей отображающей состояние
оборудования во времени.
Например, из-за широкой номенклатуры обрабатываемых заготовок время их
обработки также различно.
Различная продолжительность транспортных и технологических операций
приводят к появлению простоев тележки и станков. Простои станков ведут к
ухудшению использования действительного фонда времени.
Избыточные простои тележки свидетельствуют о ее излишней
производительности, что, скорее всего, потребовало неоправданных затрат на ее
приобретение. Результатом является увеличение срока окупаемости затрат на ГПС.
Итак, при эксплуатации ГПС возникают простои оборудования, которые часто
являются причиной несоответствия проектных и эксплуатационных показателей
работы ГПС.
Особенности данных простоев в том, что они:
а) проявляются лишь во время работы системы;
б) имеют место при гарантированной надежности всех элементов системы.
Простои
являются результатом взаимодействия технологических (станков) и транспортных
(робокара) модулей, у которых время выполнения технологических и транспортных операций колеблются
в широких пределах. Эти простои не поддаются учету методами аналитических
расчетов.
Сложилась
ситуация, когда инженерные методы проектирования, принятые для традиционного
производства, оказались слишком грубы для проектирования ГПС. В этих условиях
особое значение приобрели методы компьютерного моделирования работы ГПС.
Моделирование
- процесс изучения свойств реального объекта с помощью его модели (физической,
математической, компьютерной).
Компьютерная
модель - это модель реального процесса или явления, реализованная компьютерными
средствами.
Компьютерное
моделирование (имитация, симуляция) ГПС - процесс изучения работы ГПС с помощью
ее компьютерной модели.
По
литературным данным в мировой практике разработано свыше 50 программных
продуктов и систем моделирования ГПС, и число их увеличивается.
1. Анализ существующих систем, аналогов
Ниже из источника [6, стр. 184, табл. 4] приведены некоторые из имеющихся
программных средств, представленные в таблице 1.
Таблица 1 - Программные средства для моделирования работы ГПС
Наименование
|
Цена, $
|
Краткие характеристики
|
CSSL-IY
(Continious System Simulation Language)
|
12500
|
Для моделирования
непрерывных систем, описанных дифференциальными уравнениями
|
DESCTOP
|
2400
|
Непосредственная симуляция,
экранный редактор, цветная графика
|
GASP V (General
Activity Simulation Program)
|
1800
|
Язык дискретного и
непрерывного моделирования с интерактивными возможностями
|
GPSS (General
Purpose Simulation System)
|
5000
|
Язык дискретной процессно-ориентированной
симуляции
|
GVS (General Visual System)
|
19500
|
Для симуляции авиационных
систем
|
MAST
(Manufacturing System Desing Tool)
|
8500
|
Для симуляции ГПС
|
SEE WHY
|
30000
|
SIMAN ( Simulation Analysi)
|
7500
|
Для симуляции
производственных систем
|
SIMSCRIPT II
|
6000
|
Для дискретной
событийно-ориентированной симуляции
|
TESS
|
34000
|
Система поддержки
моделирования с базой данных и инженерной графикой
|
Средняя стоимость -
$9000...11000
|
В источнике [6, стр. 150] отмечается, что моделирование как метод исследования имеет ряд недостатков:
. Дороговизна программных комплексов и систем моделирования, не
гарантирующая наличие необходимых функций;
. Необходимость специальной подготовки специалистов для построения
моделей и интерпретации результатов моделирования;
. Большая трудоемкость имитационного эксперимента, не гарантирующая
получение наилучшего результата;
. Значительное время моделирования (за счет большого числа прогонов);
. Невозможность автоматической оптимизации, что затрудняет синтез
проектных параметров ГПС.
моделирование
гибкий производственный ячейка
2. Разработка подсистемы моделирования работы ГПЯ
2.1 Наименование и область применения
Наименование разработки - Подсистема моделирования работы ГПЯ
Область применения - разработка предназначена для моделирования работы
ГПЯ и графического представления результатов на экране. Также для формирования
параметров оборудования, путем сопоставления с необходимым коэффициентом
загрузки.
2.2 Основания для создания
Задание на ГОС экзамен.
2.3 Цель и назначение
Цель - создание подсистемы моделирования работы гибкой производственной
ячейки, в ходе использования которой возможны следующие действия:
- ввод исходных данных на производственную программу;
- ввод параметров оборудования;
- корректировка параметров оборудования;
- вывод состояния оборудования по времени в отдельное окно;
- сохранение данных по моделированию в отдельный файл;
- вычисление коэффициента загрузки по каждому станку;
- расчет общего коэффициента загрузки.
Назначение - моделирование работы ГПЯ, наглядное представление процессов
загрузки, выгрузки и транспортировки деталеустановок. Предоставление
пользователю возможности варьировать параметры технического и основного
оборудования, с целью достижения оптимального значения коэффициента загрузки. А
так же сохранение данных моделирования в файл.
2.4 Характеристика процесса проектирования
В процессе проектирования создается файл, который содержит подробную
информацию, указанную по времени (с установленной дискретностью приращений), о
состоянии каждой единицы оборудования в сопоставлении друг с другом. Файл
представлен в текстовом формате.
После произведенного моделирования, пользователем сопоставляются
полученный и требуемый коэффициенты загрузки, и производится необходимая
корректировка данных.
2.5 Требования к САПР
Разрабатываемая САПР должна:
- выводить полученные данные в виде текстового файла;
- производить моделирование работы ГПЯ, с учетом введенных
данных;
- рассчитывать коэфицент загрузки по каждому станку;
- рассчитывать общий коэффициент загрузки ГПЯ.
Разрабатываемая САПР должна быть самостоятельной и не является модулем
для другой системы.
2.6 Технико-экономические показатели
Экономическая эффективность от использования данной САПР заключается в
том что программа помогает оптимизировать работу ГПЯ и сократить простои
довольно дорогостоящего оборудования.
3. Разработка моделей САПР с использованием методологии IDEF0
.1 Методология функционального моделирования IDEFO
Методология функционального моделирования IDEFO - это технология описания
системы в целом как множества взаимозависимых действий, или функций. Важно
отметить функциональную направленность IDEFO - функции системы исследуются
независимо от объектов, которые обеспечивают их выполнение. «Функциональная»
точка зрения позволяет четко отделить аспекты назначения системы от аспектов ее
физической реализации (рисунок 1).
Наиболее часто IDEFO применяется как технология исследования и
проектирования систем на логическом уровне. По этой причине он, как правило,
используется на ранних этапах разработки проекта, до IDEF3 моделирования для
сбора данных и моделирования процесса «как есть». Результаты IDEFO анализа
могут применяться при проведении проектирования с использованием моделей IDEF3
и диаграмм потоков данных.
Рисунок
1- Функциональный блок IDEFO для данного проекта
Техническое задание. Вход представляет собой сырье, или информацию,
потребляемую или преобразуемую функциональным блоком для производства выхода.
Стрелки входа всегда направлены в левую сторону прямоугольника, обозначающего в
IDEFO функциональный блок. Наличие входных стрелок на диаграмме не является
обязательным, так как возможно, что некоторые блоки ничего не преобразуют и не
изменяют. Примером блока, не имеющего входа, может служить "принятие
решения руководством", где для принятия решения анализируется несколько
факторов, но ни один из них непосредственно не преобразуется и не потребляется
в результате принятия какого-либо решения.
Методические указания. Стрелки управления отвечают за
регулирование того, как и когда выполняется функциональный блок, и, если он
выполняется, какой выход получается в результате его выполнения. Так как
управление контролирует поведение функционального блока для обеспечения
создания желаемого выхода, каждый функциональный блок должен иметь, как
минимум, одну стрелку управления. Стрелки управления всегда входят в
функциональный блок сверху. Управление часто существует в виде правил,
инструкций, законов, политики, набора необходимых процедур или стандартов.
Влияя на работу блока, оно непосредственно не потребляется и не
трансформируется в результате. Может оказаться, что целью функционального блока
является как раз изменение того или иного правила, инструкции, стандарта и т.п.
В этом случае стрелка, содержащая соответствующую информацию, должна
рассматриваться не как управление, а как вход функционального блока. Управление
можно рассматривать как специфический вид входа. В случаях, когда неясно,
относить ли стрелку к входу или к управлению, предпочтительно относить ее к
управлению до момента, пока неясность не будет разрешена.
САПР. Выход - это продукция или информация, получаемая в
результате работы функционального блока. Каждый блок должен иметь, как минимум,
один выход. Действие, которое не производит никакого четко определяемого
выхода, не должно моделироваться вообще (по меньшей мере, должно
рассматриваться в качестве одного из первых кандидатов на исключение из
модели). При моделировании непроизводственных предметных областей выходами, как
правило, являются данные, в каком-либо виде обрабатываемые функциональным
блоком. В этом случае важно, чтобы названия стрелок входа и выхода были
достаточно различимы по своему смыслу.
3.2 Декомпозиция функциональных блоков IDEF0
Применяется для разбиения сложного процесса на составляющие его функции.
Декомпозиция позволяет постепенно и структурировано представить модель системы
в виде иерархической структуры определенных диаграмм, что делает ее менее
перегруженной.
В процесс декомпозиции функциональный блок подвергается детализации на
другой диаграмме, получившихся диаграмм (рисунок 2содержит функциональные
блоки, отображающие главные подфункции блока контекстной диаграммы и называется
«Дочерней» по отношению к нему.
Каждая из подфункции «Дочерней» диаграммы может быть детализована.
Рисунок
2 - Декомпозиция функционального блока IDEFO
На основе разработанных моделей было разработаны различные обеспечения:
информационное, лингвистическое, программное.
4. Программное обеспечение
4.1 Общие сведения
Наименование разработки - Подсистема моделирования работы ГПЯ.
Для работы программы необходима операционная система WINDOWS XP или более поздняя.
Программа была написана в среде Delphi.
4.2 Функциональное назначение
Программа предназначена для моделирования работы гибкой производственной
ячейки.
Которое в свою очередь позволяет определить эффективность работы гибкой
производственной ячейки при данных параметрах оборудования и при данной
производственной программе.
Данные моделирования сохраняются в текстовый файл, при просмотре которого
легко определить состояние технического вспомогательного и дополнительного
оборудований в любой момент времени, в соответствии с заданной дискретностью
приращений.
4.3 Описание логической структуры
Алгоритм
работы программы представлен на Рисунок 3.
.4 Используемые технические средства
При работе программы используются следующие технические средства:
Тип ЦПIntel Core 2 Duo 6600, 2,4 GHz;
Системная память1024 Мб (PC800 DDR2
SDRAM);
Видеоадаптер NVIDIA GeForce 7900 (512
Мб);
Клавиатура Стандартная (101/102 клавиши) ;
Мышь HID-совместимая мышь;
Операционная системаMicrosoft Windows 7.
4.5 Вызов и загрузка
Программа запускается с помощью исполняемого файла «Project1.exe»
При работе программы объем используемой оперативной памяти не превышает
40МБ
.6 Входные данные
Входными данными являются:
- технические характеристики основного оборудования;
- технические характеристики вспомогательного оборудования;
- производственная программа;
- сменное задание;
- дискретность приращений
4.7 Выходные данные
Выходными данными является файл текстового формата, в котором в виде
таблицы описано состояние компонентов гибкой производственной ячейки
привязанное ко времени, а также в окно программы выводится коэффициенты
загрузки технологического оборудования.
5. Условия выполнения программы
Для корректной работы программы необходимы следующие минимальные
требования:
Тип ЦПIntel Pentium 4 630, 3000 MHz (15 x 200)
Системная память1024 Мб (PC3200 DDR
SDRAM)
Видео адаптерNVIDIA GeForce 6600 (128
Мб)
Клавиатура Стандартная (101/102 клавиши)
Мышь HID-совместимая мышь
Операционная системаMicrosoft Windows
XP Professional
5.1 Выполнение программы
После запуска программы появляется главная форма программы:
Рисунок
4 - Главная форма программы
После введения данных, для моделирования необходимо нажать кнопку «старт
моделирования». Пример промоделированных данных представлен на рисунке 5.
Рисунок 5 - Результаты моделирования
Для просмотра циклограммы необходимо нажать кнопку «построение
циклограммы». Пример циклограммы представлен на рисунке 6.
Рисунок 6 - Результаты моделирования. Циклограмма
6. Руководство программиста
Время выполнения основных функций программы зависит от трудоемкости
вносимых данных:
- Трудоемкость производственной программы;
- Скорость тележки;
- Время смены ДУ;
- Дискретность приращений;
- Сменное задание;
- Расположение склада.
Вывод
В рамках выполнения данного задания на ГОС экзамен разработана подсистема
моделирования работы гибкой производственной ячейки.
При запуске которой необходимо ввести исходные данные, после чего
запустить моделирование, а на выходе получаются коэффициенты загрузки
технологического оборудования и файл в котором детально отображены состояние
ячейки в каждый момент времени.
Список использованных источников
1
Аверьянов, О.И.
Технологическое оборудование ГПС / О.И. Аверьянов, А.И. Дащенко, А.А. Лескин -
Ленинград: Политехника, 1991. - 320 с.
2
Бондаренко, В.А.
Основы создания ГПС механообработки: учебное пособие / В.А. Бондаренко, А.И.
Сердюк - Оренбург, ОГУ, 2000. - 206 с.
3
Белянина, П.Н.
Гибкие производственные комплексы / П.Н. Белянина, В.А. Лещенко - М.:
Машиностроение, 1984. - 384 с.
4
Мельников, Г.Н.
Проектирование механосборочных цехов / Г.Н. Мельников, В.П. Вороненко - М.:
Машиностроение, 1990. - 351 с.
5
Лезаж, Ж.Ж. ГПС в
механической обработке / Ж.Ж. Лезаж, Пер. с франц. Н.А. Шнурова, В.А. Лещенко.
- М.: Машиностроение, 1988. - 120 с.
6
Сердюк, А.И.
Основы создания ГПС механообработки [Электронный ресурс]: [интерактив. Учеб.].
- Электрон. Дан. и прогр. - Оренбург: ОГУ, 2004. - Режим доступа: http://fms-cim.narod.ru - Загл. с экрана
Приложение
Текст программы
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;
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[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.Button9Click(Sender:
TObject);:integer;:=StrToInt(Edit8.Text);.ColCount:=Nomenkl;.RowCount:=2;i:= 1
to Nomenkl do.Cells[i-1,0]:=IntToStr(i);;TForm1.Button10Click(Sender:
TObject);:integer;;i:= 1 to Nomenkl
do.Cells[i-1,1]:=FloatToStr(random(1000)/10);;TForm1.Button11Click(Sender:
TObject);
StringGrid3.Cells[0,1]:='Êîä.
ÏÇ';.Cells[0,2]:='Êîë-âî
øò.';
end;TForm1.Button2Click(Sender: TObject);FF: TextFile;:
integer;.Execute;(FF,SaveDialog1.FileName);(FF);(FF,Stanki:5,Smena_DU:5,Emkost:5,KorSKL:8:2,L_Skl:8:2,Skor_TT:8:2,T_sm:5,Nomenkl:5,PZ:5);i:=1
to Stanki do Write(FF,Koord[i]:8:2); Writeln(FF);i:=1 to Nomenkl do Write(FF,WremqDU[i]:8:2); Writeln(FF);i:=1 to PZ do
Write(FF,Kod_PZ[i]:5); Writeln(FF);i:=1 to PZ do Write(FF,Kol_PZ[i]:5); Writeln(FF);i:=1 to Emkost do
Write(FF,KodSklad[i]:5); Writeln(FF);(FF);;TForm1.Button3Click(Sender: TObject);FF: TextFile;:
integer;.Execute;(FF,OpenDialog1.FileName);(FF);(FF,Stanki,Smena_DU,Emkost,KorSKL,L_Skl,Skor_TT,T_sm,Nomenkl,PZ);i:=1
to Stanki do Read(FF,Koord[i]); Readln(FF);i:=1 to Nomenkl do
Read(FF,WremqDU[i]); Readln(FF);i:=1
to PZ do Read(FF,Kod_PZ[i]); Readln(FF);i:=1 to PZ do Read(FF,Kol_PZ[i]); Readln(FF);i:=1 to Emkost do
Read(FF,KodSklad[i]); Readln(FF);(FF);Form1
do.Text:=IntToStr(Stanki);.Text:=IntToStr(Smena_DU);.ColCount:=Stanki;i:=1 to
Stanki do StringGrid1.Cells[i-1,1]:=FloatToStr(Koord[i]);.Text:=IntToStr(Emkost);.Text:=FloatToStr(KorSkl);.Text:=FloatToStr(L_skl);.Text:=FloatToStr(Skor_TT);.Text:=IntToStr(T_sm);.Text:=IntToStr(Nomenkl);.ColCount:=Nomenkl;i:=1
to Nomenkl do StringGrid2.Cells[i-1,1]:=FloatToStr(WremqDU[i]);.Text:=IntToStr(PZ);.ColCount:=PZ+1;i:=1
to PZ do StringGrid3.Cells[i,1]:=FloatToStr(Kod_PZ[i]);i:=1 to PZ do
StringGrid3.Cells[i,2]:=FloatToStr(Kol_PZ[i]);.ColCount:=Emkost;i:=1 to Emkost
do StringGrid4.Cells[i,0]:=IntToStr(i);i:=1 to Emkost do
StringGrid4.Cells[i,1]:=IntToStr(KodSklad[i]);
StringGrid4.Cells[0,0]:='¹¹';.Cells[0,1]:='ÄÓ';
end;:=true;;;TForm1.Button6Click(Sender:
TObject);(handle,'open','1.exe',nil,nil,SW_SHOW);;.