Разработка автоматизированной системы учета движения ремонтируемой электроаппаратуры

Автор работы: Пользователь скрыл имя, 27 Марта 2015 в 17:54, дипломная работа

Краткое описание

Целью данного дипломного проекта является: разработка автоматизированной системы учёта движения ремонтируемых электроприборов Открытого Акционерного Общества Северного Производственного Объединения «Арктика» (ОАО СПО «Арктика»), которая предназначена для введения новой технологии учета наличия и движения ремонтируемых электроприборов.

Содержание

ВВЕДЕНИЕ 5
1. ПОСТАНОВКА ЗАДАЧИ 7
1.1. Характеристика комплекса задач 7
1.2. Функции автоматизированной системы 7
1.3. Выходные и входные данные 7
1.4. Требования к программному и техническому обеспечению АС 9
2. АНАЛИТИЧЕСКАЯ ЧАСТЬ 9
2.1. Организационная структура предприятия 9
2.2. Организация предметной области 10
2.2.1. Должностные обязанности кладовщика 11
2.3. Описание бизнес-процессов 12
2.4. Обзор существующих аналогов 16
2.5. Характеристика инструментальных средств 17
2.5.1. Характеристика CASE – средств 17
2.5.2. Характеристика СУБД 22
2.5.3. Характеристика средств программирования и отладки 23
3.1. Определение функции системы 26
3.4. Построение динамической модели данных 38
3.4.1. Диаграмма состояния системы 38
3.4.2. Диаграмма деятельности системы 38
3.4.3. Диаграмма топологии системы 39
3.4.4. Диаграмма последовательности (взаимодействия) 40
3.5. Описание интерфейсов и результатов работы программы 42
4. ЭКОНОМИЧЕСКАЯ ЧАСТЬ 49
4.1. Расчет стоимости покупных комплектующих и расходных материалов 49
4.2. Расчет трудоемкости создания программы 50
4.2. Расчет заработной платы 51
4.3. Расчет единого социального налога 51
4.4. Расчет прочих прямых расходов 51
4.5. Оценка экономической эффективности системы 52
5. ТРЕБОВАНИЯ К ТЕХНИКЕ БЕЗОПАСНОСТИ И ОХРАНЕ ЖИЗНЕДЕЯТЕЛЬНОСТИ 53
5.1 Анализ опасных и вредных факторов при работе на ЭВМ 53
5.2 Общие положения и область применения 54
5.3 Организация рабочего места пользователя 55
5.4. Микроклимат, содержание аэроионов и вредных химических веществ в воздухе помещений эксплуатации ЭВМ 56
5.5 Шум и вибрация 57
5.6 Освещение 58
5.7 Требования к помещениям для эксплуатации ЭВМ 58
5.8. Требования к монитору 59
5.9. Режим труда и отдыха 60
5.10. Защита от статического электричества и электромагнитных излучений 61
5.11. Требования к утилизации отходов при работе на компьютере 61
ЗАКЛЮЧЕНИЕ 63
ПЕРЕЧЕНЬ ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 64
ПРИЛОЖЕНИЕ 65

Вложенные файлы: 1 файл

Диплом.doc

— 1.14 Мб (Скачать файл)

В последнее время все большее распространение получают мониторы с низким уровнем излучения — так называемые LR-мониторы (Low Radiation). Эти устройства обычно отвечают одной из двух спецификаций, выработанных Шведским национальным советом по измерениям и тестированию MPR (Swedish National Board of Measurement and Testing). Первая спецификация (MPR I) касается в основном магнитных полей и определяет уровень излучения для частот в полосе от 1 до 400 кГц. Вторая спецификация (MPR II), принятая в декабре 1990 года была распространена и на электрические поля. Оба поля измеряются в двух полосах: 5 Гц - 2 кГц и 2 - 400 кГц. Напряженность электрического поля в нижней полосе не должна превышать 25 В/м, а в верхней 2,5 В/м, соответственно напряженность магнитного поля — 250 и 2,5 нанотесла. Электростатический потенциал должен быть ниже 500 В.

 

 

5.11.  Требования к утилизации отходов при работе на компьютере

 

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

Складирование, хранение, утилизация и захоронение образующихся отходов осуществляется в соответствии с существующими на предприятии нормативами и схемой размещения отходов.

Городская свалка промышленных и бытовых отходов расположена на свободной территории в 8 км от предприятия. Накопитель твердых промышленных отходов расположен к юго-востоку от города на расстоянии 7 км на площадке, прилегающей к дороге, ведущей на свалку промышленных отходов.

В целях предотвращения загрязнения почвы, нереализуемые и опасные токсичные отходы 1-3 классов опасности, образующиеся в процессе выполнения работ, собираются в специальные контейнеры и складируются на временной площадке контейнерного хранения токсичных отходов на территории предприятия согласно инструкции 60.81-1.02.056-99.

Концентрация химических веществ в почве не должна превышать допустимые нормы согласно нормативным документам.

 

ЗАКЛЮЧЕНИЕ

 

 

 

 

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

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

На следующем этапе была спроектирована логическая модель данных и определены основные функции системы.

Завершающим шагом дипломного проектирования была оценка экономических затрат на разработку данной системы.

В результате дипломного проектирования разработанная автоматизированная система учета конструкторской документации отвечает всем заявленным требованиям и выполняет следующие функции:

    • обеспечивает хранение информации в СУБД «ORACLE»;
    • предоставляет пользователям общие средства навигации и доступа к данным;
    • обеспечивает интегрированные средства поиска;

Внедрение системы учета движения ремонтируемой электрорадиоаппаратуры позволяет автоматизировать процесс учета движения ремонтируемой электрорадиоаппаратуры, сократив, таким образом, время на поиск и добавление информации, что приведет к ускорению производства в целом.

 

 

ПЕРЕЧЕНЬ ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ

 

 

 

1. Маклаков С.В., Bpwin и Erwin. CASE–средства разработки информационных

систем. - М.: Диалог-МИФИ, 2001.

2. Хомоненко А., Гофман В. Самоучитель Delphi. – Санкт-Петербург: «БХВПетербург», 2003.

3. Конноли Т., Бегг К.  Базы данных. Проектирование, реализация и сопровождение. Теория и практика – М.: Вильямс, 2003.

4. Архангельский А.Я. «Delphi 7. Справочное пособие», М.: Бином, 2003.

5. СанПиН 2.1.7.1322-03. Гигиенические требования к размещению и обезвреживанию отходов производства и потребления от 30 апреля 2003 г.

  1. СанПиН 2.2.2/2.4-1340-03. Гигиенические требования к персональным электронно-вычислительным машинам и организации работы; от 3 июня 2003 г.
  2. СанПиН 2.2.4.1329-03 Требования по защите персонала от воздействия импульсных электромагнитных полей, 2003.
  3. Фаулер М., Скотт К. «UML в кратком изложении. Применение стандартного объектного языка моделирования», М.: Мир, 1999.

 

 

 

ПРИЛОЖЕНИЕ

 

ЛИСТИНГ ПРОГРАММЫ

 

unit UnitSelect;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, ExtCtrls;

 

type

  TFormSelect = class(TForm)

    Panel1: TPanel;

    Panel2: TPanel;

    Panel3: TPanel;

    Panel4: TPanel;

    Panel5: TPanel;

    Panel6: TPanel;

    procedure Panel4Click(Sender: TObject);

    procedure Panel3Click(Sender: TObject);

    procedure Panel5Click(Sender: TObject);

    procedure Panel6Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  FormSelect: TFormSelect;

 

implementation

 

uses UnitAutor, UnitJournal, UnitRepair, UnitSprav;

 

{$R *.dfm}

 

procedure TFormSelect.Panel4Click(Sender: TObject);

begin

FormJournal.Show;

FormSelect.Hide;

 

end;

 

procedure TFormSelect.Panel3Click(Sender: TObject);

begin

Application.Terminate;

end;

 

procedure TFormSelect.Panel5Click(Sender: TObject);

begin

FormRepair.Show;

FormSelect.Hide;

end;

 

procedure TFormSelect.Panel6Click(Sender: TObject);

begin

FormSprav.Show;

FormSelect.Hide;

end;

 

end.

 

 

unit UnitJournal;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, ExtCtrls, DB, ADODB, StdCtrls, Grids, DBGrids, Menus;

 

type

  TFormJournal = class(TForm)

    Panel1: TPanel;

    Panel2: TPanel;

    Panel3: TPanel;

    Panel4: TPanel;

    GroupBox1: TGroupBox;

    GroupBox2: TGroupBox;

    ComboBoxPodrazd: TComboBox;

    Label1: TLabel;

    ADOTablePodrazd: TADOTable;

    ADOConnectionJournal: TADOConnection;

    ADOQueryViborNakl: TADOQuery;

    DataSource1: TDataSource;

    DBGrid1: TDBGrid;

    ADOQueryViborNaklNUMBER: TStringField;

    ADOQueryViborNaklDATE_CREATE: TDateTimeField;

    ADOQueryViborNaklPODRAZD_NAME: TStringField;

    ADOQueryViborNaklIZD_NAIM: TStringField;

    ADOQueryViborNaklSHIP_ZAV_NOM: TStringField;

    Panel5: TPanel;

    Panel6: TPanel;

    Panel7: TPanel;

    Panel8: TPanel;

    Panel9: TPanel;

    Panel10: TPanel;

    Panel11: TPanel;

    ADOQueryDevice: TADOQuery;

    DBGrid2: TDBGrid;

    DataSource2: TDataSource;

   Panel12: TPanel;

    Panel13: TPanel;

    Panel14: TPanel;

    Panel15: TPanel;

    Panel16: TPanel;

    MainMenu1: TMainMenu;

    N1: TMenuItem;

    N2: TMenuItem;

    N3: TMenuItem;

    N4: TMenuItem;

    N5: TMenuItem;

    N6: TMenuItem;

    Panel17: TPanel;

    procedure FormActivate(Sender: TObject);

    procedure FormClose(Sender: TObject; var Action: TCloseAction);

    procedure ComboBoxPodrazdClick(Sender: TObject);

    procedure Panel6Click(Sender: TObject);

    procedure Panel7Click(Sender: TObject);

    procedure Panel8Click(Sender: TObject);

    procedure Panel10Click(Sender: TObject);

    procedure Panel11Click(Sender: TObject);

    procedure Panel9Click(Sender: TObject);

    procedure DBGrid1CellClick(Column: TColumn);

    procedure Panel12Click(Sender: TObject);

    procedure Panel13Click(Sender: TObject);

    procedure Panel15Click(Sender: TObject);

    procedure Panel16Click(Sender: TObject);

    procedure Panel17Click(Sender: TObject);

    procedure N3Click(Sender: TObject);

    procedure N4Click(Sender: TObject);

    procedure N5Click(Sender: TObject);

    procedure N6Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  FormJournal: TFormJournal;

 

implementation

 

uses UnitAutor, UnitSelect, UnitNakl, UnitPeriod, UnitViborIzd,

  UnitSearchDate, UnitSearchPodrazd;

 

{$R *.dfm}

 

procedure TFormJournal.FormActivate(Sender: TObject);

begin

ADOConnectionJournal.Connected:=true;

ADOTablePodrazd.Active:=true;

ADOTablePodrazd.Open;

ADOTablePodrazd.First;

ComboBoxPodrazd.Clear;

while ADOTablePodrazd.Eof=false  do

begin

ComboBoxPodrazd.Items.Add(ADOTablePodrazd.FieldByName('PODRAZD_NAME').AsString);

ADOTablePodrazd.Next;

end;

 

end;

 

procedure TFormJournal.FormClose(Sender: TObject;

  var Action: TCloseAction);

begin

ADOTablePodrazd.Active:=false;

ADOConnectionJournal.Connected:=false;

end;

 

procedure TFormJournal.ComboBoxPodrazdClick(Sender: TObject);

begin

ADOTablePodrazd.Locate('PODRAZD_NAME',ComboBoxPodrazd.Text,[]);

ADOQueryViborNakl.Parameters.ParamByName('p').Value:=ADOTablePodrazd.FieldByName('PODRAZD_ID').AsInteger;

ADOQueryViborNakl.Open;

end;

 

procedure TFormJournal.Panel6Click(Sender: TObject);

begin

FormSelect.Show;

FormJournal.Close;

end;

 

procedure TFormJournal.Panel7Click(Sender: TObject);

begin

ADOQueryViborNakl.First;

end;

 

procedure TFormJournal.Panel8Click(Sender: TObject);

begin

ADOQueryViborNakl.Prior;

end;

 

procedure TFormJournal.Panel10Click(Sender: TObject);

begin

ADOQueryViborNakl.Next;

end;

 

procedure TFormJournal.Panel11Click(Sender: TObject);

begin

ADOQueryViborNakl.Last;

end;

 

procedure TFormJournal.Panel9Click(Sender: TObject);

begin

ADOQueryDevice.Parameters.ParamByName('p').Value:=ADOQueryViborNakl.FieldByName('NUMBER').AsString;

ADOQueryDevice.Close;

ADOQueryDevice.Open;

end;

 

procedure TFormJournal.DBGrid1CellClick(Column: TColumn);

begin

ADOQueryDevice.Parameters.ParamByName('p').Value:=ADOQueryViborNakl.FieldByName('NUMBER').AsString;

ADOQueryDevice.Close;

ADOQueryDevice.Open;

end;

 

procedure TFormJournal.Panel12Click(Sender: TObject);

begin

ADOQueryDevice.First;

end;

 

procedure TFormJournal.Panel13Click(Sender: TObject);

begin

ADOQueryDevice.Prior;

end;

 

procedure TFormJournal.Panel15Click(Sender: TObject);

begin

ADOQueryDevice.Next;

end;

 

procedure TFormJournal.Panel16Click(Sender: TObject);

begin

ADOQueryDevice.Last;

end;

 

procedure TFormJournal.Panel17Click(Sender: TObject);

begin

FormNakl.Show;

FormJournal.Hide;

end;

 

procedure TFormJournal.N3Click(Sender: TObject);

begin

FormPeriod.Show;

end;

 

procedure TFormJournal.N4Click(Sender: TObject);

begin

FormViborIzd.Show;

end;

 

procedure TFormJournal.N5Click(Sender: TObject);

begin

FormSearchData.Show;

FormJournal.Hide;

end;

 

procedure TFormJournal.N6Click(Sender: TObject);

begin

FormSearchPodrazd.Show;

FormJournal.Hide;

end;

 

end.

 

 

 

unit UnitNakl;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, CheckLst, ComCtrls, ExtCtrls, DB, ADODB, Grids,

  DBGrids;

 

type

  TFormNakl = class(TForm)

    Panel1: TPanel;

    Panel2: TPanel;

    Label1: TLabel;

    Edit1: TEdit;

    Label2: TLabel;

    DateTimePicker1: TDateTimePicker;

    GroupBox1: TGroupBox;

    Label3: TLabel;

    ComboBox1: TComboBox;

    Label4: TLabel;

    ComboBox2: TComboBox;

    Label5: TLabel;

    ComboBox3: TComboBox;

    Panel3: TPanel;

    ADOQuery1: TADOQuery;

    Label7: TLabel;

    ComboBox5: TComboBox;

    ADOTableIzd: TADOTable;

    ADOTableShip: TADOTable;

    ADOQuery2: TADOQuery;

    ADOQuery3: TADOQuery;

    CheckListBox1: TCheckListBox;

    Panel4: TPanel;

    procedure FormActivate(Sender: TObject);

    procedure Panel3Click(Sender: TObject);

    procedure ComboBox5Click(Sender: TObject);

    procedure ComboBox3Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  FormNakl: TFormNakl;

 

implementation

 

uses UnitJournal;

 

{$R *.dfm}

 

procedure TFormNakl.FormActivate(Sender: TObject);

begin

FormJournal.ADOTablePodrazd.Open;

FormJournal.ADOTablePodrazd.First;

while FormJournal.ADOTablePodrazd.Eof=false do

begin

ComboBox1.Items.Add(FormJournal.ADOTablePodrazd.FieldByName('PODRAZD_NAME').AsString);

ComboBox2.Items.Add(FormJournal.ADOTablePodrazd.FieldByName('PODRAZD_NAME').AsString);

FormJournal.ADOTablePodrazd.Next;

end;

ADOTableShip.Open;

ADOTableShip.First;

while ADOTableShip.Eof=false do

begin

ComboBox5.Items.Add(ADOTableShip.FieldByName('SHIP_ZAV_NOM').AsString);

ADOTableShip.Next;

end;

 

end;

 

procedure TFormNakl.Panel3Click(Sender: TObject);

begin

FormJournal.Show;

FormNakl.Close;

end;

 

procedure TFormNakl.ComboBox5Click(Sender: TObject);

begin

;

ADOQuery2.Parameters.ParamByName('p').Value:=ComboBox5.Items.Strings[ComboBox5.ItemIndex];

ADOQuery2.Close;

ADOQuery2.Open;

ADOQuery2.First;

while ADOQuery2.Eof=false do

begin

ComboBox3.Items.Add(ADOQuery2.FieldByName('IZD_OBOZN').AsString);

ADOQuery2.Next;

end;

 

end;

 

procedure TFormNakl.ComboBox3Click(Sender: TObject);

begin

ADOQuery3.Parameters.ParamByName('q').Value:=ComboBox5.Items.Strings[ComboBox5.ItemIndex];

ADOQuery3.Parameters.ParamByName('p').Value:=ComboBox3.Items.Strings[ComboBox5.ItemIndex];

ADOQuery3.Close;

ADOQuery3.Open;

ADOQuery3.First;

while ADOQuery3.Eof=false do

begin

CheckListBox1.Items.Add(ADOQuery3.FieldByName('DEV_NAME').AsString+' '+ADOQuery3.FieldByName('SHEM_NOM').AsString+' '+ADOQuery3.FieldByName('SHEMA_NAIM').AsString);

ADOQuery3.Next;

end;

 

end;

 

end.

 

 

unit UnitPeriod;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, ComCtrls, ExtCtrls, StdCtrls, ADODB, DB, RpDefine, RpCon,

  RpConDS;

 

type

  TFormPeriod = class(TForm)

    Panel1: TPanel;

    DateTimePicker1: TDateTimePicker;

    DateTimePicker2: TDateTimePicker;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    ComboBox1: TComboBox;

    ComboBox2: TComboBox;

    Label5: TLabel;

    ADOTable1: TADOTable;

    ADOTable2: TADOTable;

    ADOQuery1: TADOQuery;

    Panel2: TPanel;

    Panel3: TPanel;

    procedure Panel3Click(Sender: TObject);

    procedure FormActivate(Sender: TObject);

    procedure Panel2Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  FormPeriod: TFormPeriod;

  Podrazd: String;

implementation

 

uses UnitJournal, UnitAutor, UnitOtchPeriod;

 

{$R *.dfm}

 

procedure TFormPeriod.Panel3Click(Sender: TObject);

begin

FormPeriod.Close;

end;

 

procedure TFormPeriod.FormActivate(Sender: TObject);

begin

ADOTable1.Open;

ADOTable1.First;

while ADOTable1.Eof=false do

begin

ComboBox1.Items.Add(ADOTable1.FieldByName('PODRAZD_NAME').AsString);

ADOTable1.Next;

end;

ADOTable2.Open;

ADOTable2.First;

while ADOTable2.Eof=false do

begin

ComboBox2.Items.Add(ADOTable2.FieldByName('SHIP_ZAV_NOM').AsString);

ADOTable2.Next;

end;

Podrazd:=FormJournal.ComboBoxPodrazd.Text;

end;

 

procedure TFormPeriod.Panel2Click(Sender: TObject);

begin

ADOQuery1.Parameters.ParamByName('p').Value:=ComboBox1.Text;

ADOQuery1.Parameters.ParamByName('q').Value:=ComboBox2.Text;

ADOQuery1.Parameters.ParamByName('s').Value:=DateTimePicker1.DateTime;

ADOQuery1.Parameters.ParamByName('r').Value:=DateTimePicker2.DateTime;

FormOtchPer.QRLabel3.Caption:=ComboBox1.Text;

FormOtchPer.QRLabel14.Caption:=ComboBox2.Text;

FormOtchPer.QRLabel5.Caption:=DateToStr(DateTimePicker1.DateTime);

Информация о работе Разработка автоматизированной системы учета движения ремонтируемой электроаппаратуры