Автоматизированное рабочее место регистрации и документирования комплекса средств автоматизации

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

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

С целью обеспечения возможности взаимодействия человека с ЭВМ в интерактивном режиме появляется необходимость реализовать в рамках АСУ так называемое АРМ – автоматизированное рабочее место. АРМ представляет собой совокупность программно-аппаратных средств, обеспечивающих взаимодействие человека с ЭВМ, т.е. такие функции как:
возможность ввода информации в ЭВМ;
возможность вывода информации из ЭВМ на экран монитора, принтер или другие устройства вывода (в настоящее время этот перечень достаточно широк – графопостроители, и т.п.).

Оглавление

РЕФЕРАТ 4
ОСНОВНАЯ ЧАСТЬ 5
ВВЕДЕНИЕ 5
1. АНАЛИЗ КОНЦЕПЦИИ ПОСТРОЕНИЯ КОМПЛЕКСА СРЕДСТВ АВТОМАТИЗАЦИИ 8
1.1. Общая характеристика систем управления 8
1.2. Структурная схема комплекса средств автоматизации. 11
1.3. Описание функционирования АСУ комплекса средств автоматизации 13
1.4. Функциональное назначение АРМ РД 14
1.5. Требования, предъявляемые к АРМ РД 15
2. ОБОСНОВАНИЕ ВЫБОРА ТЕХНИЧЕСКИХ СРЕДСТВ АРМ РД 17
2.1. Возможность функционировать в рамках автоматизированной системы 17
2.2. Требования по обеспечению надежности 17
2.3. Требование круглосуточной работы 17
2.4. Работа в реальном масштабе времени 18
2.5. Обеспечение требований ко времени реакции системы 18
2.6. Хранение и обработка данных 18
2.7. Возможность выдачи информации на принтер и экран монитора АРМ РД 19
3. СТРУКТУРА БАЗЫ ДАННЫХ 20
3.1. Алгоритм обработки информации 20
3.2. Обоснование необходимости организации базы данных 34
3.2.1. Понятие базы данных 34
3.2.2. Достоинства интеграции данных. 35
3.2.3. Проблемы интеграции данных 37
3.2.4. Необходимость организации БД на АРМ РД 38
3.3. Логическая организация базы данных 39
3.4. Выбор СУБД 45
4. СТРУКТУРА КОМПЛЕКСА ПРОГРАММ АРМ РД 51
4.1. Обоснование структуры комплекса программ 51
4.1.1. ПО общесистемного назначения 51
4.1.2. ПО специального назначения 53
4.1.3. Требования, предъявляемые к специальному ПО АРМ РД 53
4.2. Программная реализация 54
4.3. Состав программ 59
4.4. Описание программ 61
4.5. Оценка результатов работы программ 63
ОРГАНИЗАЦИОННО-ЭКОНОМИЧЕСКАЯ ЧАСТЬ 66
ВВЕДЕНИЕ 66
1. ПЛАНИРОВАНИЕ РАЗРАБОТКИ С ИСПОЛЬЗОВАНИЕМ СЕТЕВОГО ГРАФИКА 67
2. РАСЧЕТ СТОИМОСТИ РАЗРАБОТКИ 79
2.1. Расчёт статьи “материалы, покупные изделия, полуфабрикаты” 79
2.2. Расчёт основной заработной платы по теме 80
2.3. Расчет дополнительной заработной платы 81
2.4. Расчёт отчислений на социальные нужды 82
2.5. Расчёт накладных расходов 82
2.6. Расчёт договорной цены 83
3. ЭКОНОМИЧЕСКАЯ ЭФФЕКТИВНОСТЬ РАЗРАБОТКИ 84
4. ОСНОВНЫЕ РАЗДЕЛЫ ХОЗЯЙСТВЕННОГО ДОГОВОРА 84
ЗАКЛЮЧЕНИЕ 86
ОХРАНА ТРУДА И ТЕХНИКА БЕЗОПАСНОСТИ 87
ВВЕДЕНИЕ 87
1. ХАРАКТЕРИСТИКА ПОМЕЩЕНИЯ И ФАКТОРЫ, ДЕЙСТВУЮЩИЕ НА ОПЕРАТОРА В ПРОЦЕССЕ ЕГО ТРУДА 88
2. РАСЧЁТ ОСВЕЩЕНИЯ РАБОЧЕГО МЕСТА ОПЕРАТОРА 89
3. РАСЧЁТ ИНФОРМАЦИОННОЙ НАГРУЗКИ 94
ВЫВОДЫ 95
ГРАЖДАНСКАЯ ОБОРОНА 97
ВВЕДЕНИЕ 97
1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ 98
1.1. Оценка воздействия ударной волны на объект 98
1.1.1. Характеристики ударной волны 98
1.1.2. Поражающие факторы ударной волны 99
1.2. Оценка пожарной обстановки 101
1.2.1. Влияние степени огнестойкости зданий и сооружений на развитие пожарной обстановки 102
1.2.2. Влияние категорий пожароопасности производства на развитие пожарной обстановки 102
1.2.3. Влияние расстояний между зданиями на распространение пожаров 103
1.2.4. Влияние погодных условий на распространение пожаров 103
1.2.5. Оценка воздействия теплового импульса огненного шара на пожарную обстановку 103
1.2.6. Оценка воздействия вторичных поражающих факторов на пожарную обстановку 105
1.2.7. Воздействие пожара на людей и элементы объекта 105
1.3. Оценка устойчивости элементов объекта 105
2. РАСЧЕТНАЯ ЧАСТЬ 106
2.1. Исходные данные 106
2.2. Расчет 106
2.2.1. Оценка воздействия воздушной ударной волны на элементы объекта 106
2.2.2. Оценка пожарной обстановки 107
3. ПРЕДЛОЖЕНИЯ ПО ЗАЩИТЕ 109
3.1. Отнесение хранилища на безопасное расстояние от здания 109
3.2. Уменьшение массы хранимого пропана 110
3.3. Меры по предупреждению аварийной ситуации на хранилище пропана 111
3.4. Меры по защите административного здания 112
3.5. Меры по индивидуальной защите оператора 112
ЭРГОНОМИКА 113
1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ 114
1.1. Базовый подход к конструированию рабочего места оператора 114
1.2. Понятие рабочего места и рабочей зоны оператора 115
1.3. Формирование типового состава рабочей зоны 115
1.3.1. Организация пространства рабочего места оператора 116
1.3.2. Условия, которым должна удовлетворять рабочая зона 116
2. РЕАЛИЗАЦИЯ ЭРГОНОМИЧЕСКОЙ ОЦЕНКИ РАБОЧЕГО МЕСТА ОПЕРАТОРА 117
2.1. Основные эргономические требования, предъявляемые к дисплею 118
2.2. Основные эргономические требования, предъявляемые к клавиатуре 120
2.3. Размещение кресла оператора в рабочей зоне 121
2.4. Размещение устройств документирования 121
2.5. Расположение рабочего места оператора в помещении 122
ЗАКЛЮЧЕНИЕ 124
ЗАКЛЮЧЕНИЕ 127
ПРИЛОЖЕНИЕ 1 128
ПРИЛОЖЕНИЕ 2 131
СПИСОК ЛИТЕРАТУРЫ 163

Файлы: 1 файл

arm.DOC

— 984.00 Кб (Скачать)

        break;

 

case 16:     // ВУ16

case 17:     // ВУ17

case 18:     // ВУ18

case 19:     // ВУ19

 

        if(bytes[5]&0x01)

        write(handle,"ПУ заблокировано оператором по ФК                                         \r\n",76);

        if(bytes[5]&0x04)

        write(handle,"Нажата КНОПКА ОБНАРУЖЕНИЯ НЕИСПРАВНОСТИ                                   \r\n",76);

        break;

 

case 15:     // АС

     //Подкорректировать после согласования

     //байта состояния

 

        if(bytes[5]&0x04)

        write(handle,"АРМ-РД НЕИСПРАВЕН - не работают обе ПЭВМ                                  \r\n",76);

        if(bytes[4]&0x01)

        write(handle,"АРМ-РД РАБОТОСПОСОБЕН - работает одна из двух ПЭВМ                        \r\n",76);

        if(bytes[4]&0x02)

        write(handle,"Нет связи хотя бы по одной из линий связи ЛС1,ЛС2,ЛС3,ЛС4                 \r\n",76);

        if(bytes[4]&0x04)

        write(handle,"Неисправен КСП-0                                                          \r\n",76);

        if(bytes[3]&0x01)

        write(handle,"Неисправен КСП-1                                                          \r\n",76);

        if(bytes[3]&0x02)

        write(handle,"Неисправен КСП-2                                                          \r\n",76);

        if(bytes[3]&0x04)

        write(handle,"Нет связи по линии связи ЛС1                                              \r\n",76);

        if(bytes[2]&0x01)

        write(handle,"Нет связи по линии связи ЛС2                                              \r\n",76);

        if(bytes[2]&0x02)

        write(handle,"Нет связи по линии связи ЛС3                                              \r\n",76);

        if(bytes[2]&0x04)

        write(handle,"Нет связи по линии связи ЛС4                                              \r\n",76);

        break;

}

}

 

 

// bs2_out.prj

// bs2_out.c

// main()

// выдача результатов запроса по 2-й форме байтов состояния на экран

// ( из файла ) или форматирование и постановка в очередь для выдачи

// на принтер

 

#include <dos.h>

#include "cxlkey.h"

#include "disp.h"

 

extern void resScr(void);

// выдача результатов запроса из файла на экран

extern void resPrn(void);

// выдача результатов запроса из файла на принтер

 

void main(int argc,char *argv[])

{

void z(void);

 

setkbloop(z);

if(argv[1][0]=='э') resScr();

else resPrn();

}

 

void z(void)

{

union REGS r;

r.h.ah=0;

int86(DISP,&r,&r);

}

 

 

#include <dos.h>

#include "cxlkey.h"

#include "disp.h"

 

extern void resScr(void);

// выдача результатов запроса из файла на экран

extern void resPrn(void);

// выдача результатов запроса из файла на принтер

 

void main(int argc,char *argv[])

{

void z(void);

 

setkbloop(z);

if(argv[1][0]=='э') resScr();

else resPrn();

}

 

void z(void)

{

union REGS r;

r.h.ah=0;

int86(DISP,&r,&r);

}

 

 

// inq_out.prj

// INQ_OUT.C

// main()

// выдача результатов запроса на экран ( из файла )

// или форматирование и постановка в очередь для выдачи на принтер

 

#include <string.h>

#include <process.h>

#include "cxlkey.h"

#include "cxldef.h"

 

extern void resScr(void);

// выдача результатов запроса из файла на экран

extern void resPrn(void);

// выдача результатов запроса из файла на принтер

 

void main(int argc,char *argv[])

{

void z(void);

 

setkbloop(z);

if(argv[1][0]=='э') resScr();

else resPrn();

}

 

#include <dos.h>

#include "disp.h"

void z(void)

{

union REGS r;

r.h.ah=0;

int86(DISP,&r,&r);

}

 

 

// inq_out.prj

// res_scr.C

// res_scr()

// выдача результатов запроса на экран ( из файла )

 

#include <stdio.h>

#include <string.h>

#include "cxlwin.h"

#include "cxlkey.h"

#include "cxlvid.h"

 

#define LEN      81

#define TXTATTR  _CYAN

#define UP       0x4800

#define DOWN     0x5000

#define PGUP     0x4900

#define PGDOWN   0x5100

#define ESC      0x011b

 

void resScr(void)

{

FILE *f;  // дескриптор файла результатов

int down; // номер текущей строки в файле

int ch;   // код клавиши

int i;

char string[LEN];

int mwup; // количество строк над основным окном

 

// вывод на экран строки запроса и шапки таблицы

f=fopen("inquiry.res","r++");

fgets(string,LEN,f);

for(mwup=0;strncmp(string+3,"ДАТА",4);++mwup)

{

wopen(mwup,0,mwup,79,5,BLUE|_LGREY,BLUE|_LGREY);

wprintf("%.79s",string);

fgets(string,LEN,f);

}

wopen(mwup,0,mwup,79,5,YELLOW|_BLUE,YELLOW|_BLUE);

wprintf(" %.78s",string);

 

// основное окно

wopen(++mwup,0,25,79,5,LCYAN|_BLUE,TXTATTR);

//wshadow(LGREY);

 

 

// вывод результатов запроса из файла на экран

for(down=mwup;down<25 && fgets(string,LEN,f)!=NULL;++down)

wprints(down-mwup,1,TXTATTR,string);

 

hidecur();

 

// цикл просмотра результатов

while((ch=getxch())!=ESC)

switch(ch)

{

case UP:    if(down<=25) break;

             down--;

             fseek(f,(long)(down-25+mwup)*LEN,0);

             fgets(string,LEN,f);

             wscroll(1,D_DOWN);

             wprints(0,1,TXTATTR,string);

             break;

 

case DOWN:  if(fseek(f,(long)down*LEN,0)) break;

             if(fgets(string,LEN,f)==NULL) break;

             wscroll(1,D_UP);

             wprints(24-mwup,1,TXTATTR,string);

             down++;

             break;

 

case PGUP:  for(i=0;i<=24-mwup;++i)

              {

              if(down<=25) break;

              down--;

              fseek(f,(long)(down-25+mwup)*LEN,0);

              fgets(string,LEN,f);

              wscroll(1,D_DOWN);

              wprints(0,1,TXTATTR,string);

              }

             break;

 

case PGDOWN:  for(i=0;i<=24-mwup;++i)

                {

                if(fseek(f,(long)down*LEN,0)) break;

                if(fgets(string,LEN,f)==NULL) break;

                wscroll(1,D_UP);

                wprints(24-mwup,1,TXTATTR,string);

                down++;

                }

               break;

}

 

fclose(f);

wcloseall();

}

 

 

 

// bs2_out.prj

// res_scr_.c

// res_scr()

// выдача результатов запроса по 2-й форме байтов состояния на экран

// ( из файла )

 

#include <stdio.h>

#include <string.h>

#include "cxlwin.h"

#include "cxlkey.h"

#include "cxlvid.h"

 

#define LEN      100

#define TXTATTR  _CYAN

#define UP       0x4800

#define DOWN     0x5000

#define PGUP     0x4900

#define PGDOWN   0x5100

#define RIGHT    0x4d00

#define LEFT     0x4b00

#define HOME     0x4700

#define END      0x4F00

#define ESC      0x011b

 

FILE *f;  // дескриптор файла результатов

int down; // номер текущей строки в файле

char string[LEN];

int length; // длина строк в файле

int w1; // дескриптор окна

void screen_move(int right);

 

void resScr(void)

{

 

int right=0; // горизонтальное смещение

int ch;  // код клавиши

int i;

 

// вывод на экран строки запроса и шапки таблицы

f=fopen("inquiry.res","r++");

wopen(0,0,0,79,5,BLUE|_LGREY,BLUE|_LGREY);

fgets(string,LEN,f);

wprints(0,1,BLUE|_LGREY,string);

w1=wopen(1,0,1,79,5,YELLOW|_BLUE,YELLOW|_BLUE);

fgets(string,LEN,f);

wprints(0,1,YELLOW|_BLUE,string);

length=strlen(string)+1;

 

// основное окно

wopen(2,0,25,79,5,LCYAN|_BLUE,TXTATTR);

hidecur();

//wshadow(LGREY);

 

// вывод результатов запроса из файла на экран

for(down=2;down<25 && fgets(string,LEN,f)!=NULL;++down)

{

string[right+80]='\0';

wprints(down-2,1,TXTATTR,string);

}

 

// цикл просмотра результатов

while((ch=getxch())!=ESC)

switch(ch)

{

case UP:    if(down<=25) break;

             down--;

             fseek(f,(long)(down-23)*length,0);

             fgets(string,LEN,f);

             string[right+79]='\0';

            wscroll(1,D_DOWN);

             wprints(0,1,TXTATTR,string+right);

             break;

 

case DOWN:  if(fseek(f,(long)down*length,0)) break;

             if(fgets(string,LEN,f)==NULL) break;

             wscroll(1,D_UP);

             string[right+80]='\0';

             wprintc(22,0,TXTATTR,' ');

             down++;

             break;

 

case PGUP:  for(i=0;i<=22;++i)

              {

              if(down<=25) break;

              down--;

              fseek(f,(long)(down-23)*length,0);

              fgets(string,LEN,f);

              wscroll(1,D_DOWN);

              string[right+80]='\0';

              wprints(0,1,TXTATTR,string+right);

              wprintc(1,0,TXTATTR,' ');

              }

             break;

 

case PGDOWN: for(i=0;i<=22;++i)

               {

               if(fseek(f,(long)down*length,0)) break;

               if(fgets(string,LEN,f)==NULL) break;

               wscroll(1,D_UP);

               string[right+80]='\0';

               wprints(22,1,TXTATTR,string+right);

               down++;

               }

              break;

 

case LEFT:  if(right) screen_move(--right);break;

case RIGHT: if(right+82<length) screen_move(++right);break;

case END:   if(right+82<length) screen_move(right=length-82);break;

case HOME:  if(right) screen_move(right=0);break;

}

 

fclose(f);

wcloseall();

}

 

// горизонтальная прокрутка

void screen_move(int right)

{

int i;

 

fseek(f,length,0);

fgets(string,LEN,f);

string[right+80]='\0';

wwprints(w1,0,1,YELLOW|_BLUE,string+right);

if(down-22>2) fseek(f,(long)(down-22)*length,0);

for(i=0;i<=22 && fgets(string,length,f)!=NULL;++i)

{

string[right+80]='\0';

wprints(i,1,TXTATTR,string+right);

}

}

 

 

 

#include <stdio.h>

#include <string.h>

#include "cxlwin.h"

#include "cxlkey.h"

#include "cxlvid.h"

 

#define LEN      80

#define ESC      0x011b

 

FILE *f;        // дескриптор файла результатов

char string[LEN]; // буфер для чтения из файла

 

void resScr(void)

{

int i;

int maxlen; //  максимальная длина строки в файле результатов запроса

int startpos; // столбец окна с которого печатается текст

 

// открытие файла результатов запроса и

// определение размера самой длинной строки в этом файле

f=fopen("inquiry.res","r++");

for(maxlen=0,i=0;fgets(string,LEN,f)!=NULL;++i)

  if(strlen(string)>maxlen) maxlen=strlen(string);

fseek(f,0,0);

 

// черный фон

wopen(0,0,24,79,5,0,0);

// открытие окна

wopen((20-i)/2,5,(20-i)/2+i+2,75,1,YELLOW|_BLUE,_CYAN);

hidecur();

 

// чтение типа устройства и его использование в качестве титула окна

fgets(string+1,LEN,f);

string[0]=' ';

for(i=2;i<=6;++i)

 if(string[i]=='\r' || string[i]=='\n') string[i]=' ';

wtitle(string,TCENTER,_LGREY);

 

// вывод результатов запроса из файла в окно

startpos=(70-maxlen)/2;

for(i=2;fgets(string,LEN,f)!=NULL;++i)

{

wgotoxy(i,startpos);

wprintf("%s",string);

}

 

// окно находится на экране пока не будет нажато ESC

while(getxch()!=ESC);

 

fclose(f);

wcloseall();

}

 

 

 

 

Список литературы

  1. Глушков В. М. “Основы безбумажной информатики”, М. Наука, 1987 г.;
  2. “Человек и вычислительная техника” под ред. Глушкова В. М., М. Наука, 1971 г.;
  3. “Организационные вопросы автоматизации управления” (перевод с английского) Глушкова В. М., М. Экономика, 1972 г.;
  4. Мартин Дж. “Организация баз данных в вычислительных системах”, М. Мир, 1980 г.;
  5. Бойко В. В., Савинков В. М. “Проектирование баз данных информационных систем”, М. Финансы и статистика, 1989 г.;
  6. Шураков В. В. “Надежность программного обеспечения систем обработки данных”, М. Финансы и статистика, 1987 г.;
  7. Уинер Р. “Язык Турбо СИ”, М. Мир, 1991 г.;
  8. Paradox Engine. Документация: описание, список функций для создания и работы с БД.;
  9. “Турбо СИ. Описание редактора, стандартные и графические функции”, изд. Иститута проблем информатики, М. 1989 г.;
  10. Хьюз Дж., Мичтом Дж. “Структурный подход к программированию”. Изд. Мир, М., 1980 г.;
  11. “Выполнение организационно-экономической части дипломных проектов”. Учебное пособие, изд. МИРЭА, 1994 г.;
  12. “Выполнение организационно-экономической части дипломных проектов”. Учебное пособие, изд. МИРЭА, 1987 г.;
  13. “Сетевые графики в планировании”. Разумов И. М., Белова Л. Д., и др., М. Высшая школа, 1981 г.;
  14. “Основы финансового менеджмента. Как управлять капиталом?” Балабанов И. Т., М. “Финансы и статистика”, 1994 г.;
  15. Мотузко Ф. Я. “Охрана труда”, М. Высшая школа, 1969 г.;
  16. Самгин Э. Б. “Освещение рабочих мест”, изд. МИРЭА, 1989 г.;
  17. Сибаров Ю. Б. “Охрана труда в вычислительных центрах” и др., М. Машиностроение, 1990 г.;
  18. Методические указания по дипломному проектированию раздела “Охрана труда и окружающей среды” под ред. Мотузко Ф. Я., МИРЭА, 1980 г.;
  19. “Основы инженерной психологии” под ред. Ломова Б. Ф., М. Высшая школа, 1986 г.;
  20. Демиденко и др. “Защита объектов народного хозяйства от оружия массового поражения” Справочник, Киев "Высшая школа" 1989 г.;
  21. Методические указания по безопасности жизнедеятельности. “Особенности ведения аварийно-спасательных работ на промышленном объекте в ЧС мирного времени”, изд. МИРЭА.;
  22. Атаманюк В. Г., Ширшев Л. Г. и др. “Гражданская оборона. Учебник для ВТУЗов”, М. Высшая школа. 1987г.;
  23. “Введение в практическую эргономику. Учебное пособие.” под ред. Зинченко В. П., Моргунова Е. Б., изд. МИРЭА, 1990г.

 

 


Информация о работе Автоматизированное рабочее место регистрации и документирования комплекса средств автоматизации