Разработка драйвера протокола SPA-BUS, позволяющего собирать данные с микропроцессорных терминалов РЗА

Требования к создаваемому программному модулю. Разработка необходимых алгоритмов и интерфейсов. Описание протокола SPA-BUS. Выбор языка программирования. Тестирование и документирование программного продукта. Оценка экономической эффективности программы.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 06.07.2012
Размер файла 722,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Обязательный

Type

Тип запрашиваемого устройства. При указании неверного типа устройства корректная работа не гарантируется.

Возможные варианты:

TORLOKвсе устройства серии ТОР LOK

TORвсе устройства серии ТОР

Необязательный

По умолчанию = «TOR»

Dir

Окончание пути для сохраняемой осциллограммы

Необязательный

TDFile

Имя файла в формате «*.td», который используется для разбора заголовка осциллограммы. Если имя не указано, скачивание и сохранение осциллограммы будет невозможно.

Обязательный

OMPFile

Имя файла в формате «*.omp», который используется для считывания параметров ОМП.

Обязательный

AutoDownload

Автоматическое скачивание осциллограммы.

Значения:

автоматическое скачивание включено

0автоматическое скачивание отключено

Необязательный

По умолчанию = 0

4.3 Руководство программиста

Общие сведения

Программный продукт предназначен для определения мест повреждений на ЛЭП. Программа обеспечивает:

Синхронизацию времени

Чтение буфера событий и циклический опрос терминала

Чтение заголовков и тел осциллограмм, а также связанных с ним событий ОМП в файлы;

Конвертацию полученных осциллограмм в формат COMTRADE

Туннель для дистанционного конфигурирования терминала в виде SM-тега.

Данная программа написана на языке программирования C++ в среде разработки EclipseIDE.

Структура программы

В состав драйвера протокола SPA-BUS входят модули, представленные в таблице 4-6.

Таблица 4-6. Описание модулей

Модуль

Назначение

xml.h

pugixml.hpp

pugiconfig.hpp

pugixml.cpp

Модуль для работы с XML-документами (представляет собой обертку над выбранной библиотекой)

BrsLogging.h

BrsLogging.cpp

SpecificLogLibrary.h

Модуль логирования (представляет собой обертку над выбранной библиотекой)

base_port.h

base_port.cpp

serial_port.h

serial_port.cpp

Модуль для работы с портами ввода-вывода (пока поддерживается только последовательный порт)

packet.h

packet.cpp

Вспомогательный класс для отправки и получения SPA-сообщений.

spa_manager.h

spa_manager.cpp

Модуль чтения конфигурации и создания проекта

line.h

line.cpp

Модуль линии

сircular_list.hpp

Вспомогательный класс, реализующий циклический список

dist_manager.h

dist_manager.cpp

dist_terminal.h

dist_terminal.cpp

dist_header.h

dist_header.cpp

Модуль для работы с осциллограммами (чтение заголовков и тел осциллограмм, событий ОМП и конвертация осциллограммы в формат COMTRADE)

terminal.h

terminal.cpp

Модуль для чтения буфера событий и циклического опроса терминала

sync_object.h

sync_object.cpp

Модуль синхронизации времени терминалов

aux_funcs.h

aux_funcs.cpp

Дополнительные функции

main.cpp

Главный модуль программы

При разработке классов, описывающих SPA-объекты, целесообразно каждый из них описать в отдельном классе. Но при этом сделать их всех наследниками от одного базового класса, содержащем единые для всех объектов методы.

Разработанные классы для описания SPA- объектов перечислены в таблице 4-7.

Таблица 4-7. Классы, описывающие SPA-объекты

Класс

Назначение

spa_object

Базовый класс для всех SPA-объектов

sync_object

Объект синхронизации

terminal

Объект терминала

dist_manager

Менеджер осциллограмм

В таблице 4-8 приведен перечень всех функций программы с описанием:

Таблица 4-8. Описание функций программы

Название функции и входные параметры

Описание функции

Классыbase_port, serial_port

virtual bool open()

Виртуальная функция открывает и инициализирует порт для принятия и отправки данных

virtual bool close()

Функция закрытия порта

virtual boolis_open() const

Функция проверяет, открыт ли порт

virtual size_tread_data(char * buf, size_tbuf_size)

Асинхронное чтение данных из порта в буфер размером buf_size.

virtual size_tread_data_until(char * buf, char * delim)

Асинхронное чтение данных из порта в буфер до разделителя

virtual size_twrite_data(const char * buf, size_tbuf_size)

Асинхронная запись данных в порт

void set_timeout(unsigned int timeout)

Установка периода ожидания данных из порта

virtualboolinit()

Инициализация порта

void timeout_expired(constbs::error_code&)

Функция вызывается по истечению периода ожидания данных при асинхронном чтении

void operation_completed(constbs::error_code&, size_t)

Функция вызывается по истечению асинхронных операций чтения и записи

voidwait()

Функция ожидает окончание асинхронных операций чтения и записи

virtualvoidcancel()

Функция принудительно завершает асинхронные операции чтения и записи

virtual port_typeget_type()

Функция возвращает тип порта

Классcircular_list<T>

size_t size() const

Возвращает количество элементов в циклическом списке

voidclear()

Очистка циклического списка

void push_front(_data_type _data)

Добавление элемента в начало циклического списка

void push_back(_data_type _data)

Добавление элемента в конец циклического списка

voidpop_front()

Удаление первого элемента циклического списка

voidpop_back()

Удаление последнего элемента циклического списка

circular_iteratorbegin_circular() const

Возвращает циклический итератор, установленный на начало списка

iteratorbegin() const

Возвращает итератор, установленный на начало списка

iteratorend() const

Возвращает итератор, установленный на конец списка

_data_type at(unsigned int index)

_data_type operator[](unsigned int)

Возвращает элемент списка по его позиции

Класс packet

char * str() const

Метод возвращает указатель на строку SPA-сообщения

boolsend(base_port *)

Отправка SPA-запроса

slave_message_type read(base_port *, unsigned char address)

Чтение ответа на SPA-запрос с последующей проверкой пакета на корректность

size_tget_body(char *)

Метод возвращает блок данных сообщения SPA

slave_message_typecheck_slave_packet(unsigned char address) const

Проверка принятогоSPA-сообщения на корректность (проверка контрольной суммы и т.д.)

Класс spa_manager

boolparse_from_xml(const char *config_name)

Чтение файла конфигурации формата XML

voidrun()

Запуск драйвера на выполнение

static boolis_spa_node(xml_node)

Статическая функция проверяет имя узла XML-документа на название «SPA»

Класс line

static line* parse_from_xml_node(xml_node *)

Статический метод для создания объекта линии и чтения параметров этого объекта из узла XML-файла

staticvoidrun(line *)

Запуск линии

unsigned intget_counter() const

Получениезначениясчетчикаработоспособности линии.

const char * get_name() const

Метод возвращает название линии.

void add_spa_object(spa_object *)

Добавление SPA-объекта (объекта синхронизации, терминала или менеджера осциллограмм) в циклический список

terminal * find_terminal(unsigned char)

Поиск терминала в списке поегоSPA-адресу

Классspa_object,sync_object

static spa_object* create_spa_object(xml_node *)

Статическая функция для создания SPA-объекта и чтение его параметров из узла XML-документа

virtual request_resultnext_request(base_port *)

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

virtual boolget_answer(base_port *)

Метод ожидания результата на запрос

virtual spa_object_typeget_type() const

Метод возвращает тип SPA-объекта

static std::string get_string_nack(unsigned char)

Статический метод возвращает описание ошибки NACK-сообщения по его коду

Классterminal

static terminal* parse_from_xml(xml_node *)

Статическая функция для создания SPA-объекта терминала и чтение его параметров из узла XML-документа

booladd_event_RL(char *)

Метод разбирает событие из тела ответа на запрос RL и добавляет событие в буфер

booladd_event_RE(char *)

Метод разбирает событие из тела ответа на запрос RE и добавляет событие в буфер

Классdist_manager

static dist_manager * parse_from_xml(xml_node *)

Статическая функция для создания SPA-объекта менеджера осциллограмм и чтение его параметров из узла XML-документа

booladd_dist_header(const char *)

Метод разбираетзаголовок осциллограммы из строки и добавляет в буфер

boolwrite_dist()

Запись осциллограммы на диск в формате COMTRADE

Классdist_terminal

static dist_terminal* parse_from_xml(xml_node *)

Статическая функция для создания объекта терминала и чтение его параметров из узла XML-документа

boolrenew_headers_file(const char *, dist_header *, size_t)

Методдляперезаписифайласзаголовкамиосциллограмм.

boolget_header_dist_from_file(const char *, unsigned char, dist_header *, unsigned char &)

Чтение заголовка осциллограммы с определенным номером из файла, также возвращает общее количество заголовков в файле

boolfind_not_download_dist(const char *, const char *)

Поиск еще не скачанной осциллограммы

void form_name_file_dist(const char *, unsigned char, char *) const

Метод формирует имя файла осциллограммы по шаблону

void read_dist_headers(const char *)

Чтение заголовков осциллограмм из файла. Данный метод вызывается один раз при старте программы

boolinit()

Инициализация объекта терминала - чтение ОМП-параметров и параметров трансформации.

boolread_transform_params()

Чтение параметровтрансформации из td-файла. Данные параметры необходимы для формирования файла осциллограммы в формате COMTRADE

boolread_omp_params()

Чтение OMP-параметров из файла. Данные параметры необходимы для формирования файла осциллограммы в формате COMTRADE

Классdist_header

static boolparse_from_string(const char *, dist_header *)

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

size_tget_line_count() const

Метод возвращает количество строк осциллограммы

unsigned short get_FRG() const

Метод возвращает частоту в Гц

unsigned short get_NVR() const

Метод возвращает количество выборок в доаварийном режиме

unsigned short get_count_AC() const

Метод возвращает количество заданных аналоговых сигналов

unsigned short get_time_rec() const

Метод возвращает период выборки в мсек

Класс CBLog

int Initialize(char* fileName, TBLogLevel logLevel, long maxLogSizeInKB, size_t filesNum, bool bAutoFlush, TBLogVerboseLevel verboseLevel)

Инициализация логера

int UnInitialize()

Деинициализация логера

int Write(TBlogstring msg, TBLogLevel msglevel, TBLogVerboseLevel verboseLevel, TBlogstring module )

Метод для добавления сообщения в лог

int SetVerboseLevel(TBLogVerboseLevel vl, TBlogstring module)

Установка нового фильтра по уровню подробности сообщений

int SetLogLevel(TBLogLevel ll, TBlogstring module)

Установка нового фильтра по уровню критичности сообщений

int DisableLogging(TBlogstring module)

Выключение логирования

Модульaux_funcs

size_tsymbol_count(const char * _str, char _symbol)

Функция возвращает количество определенных символов в строке

boolparse_posix_time(const char *, bpt::ptime&)

Функция разбора времени в формате posix из строки

unsigned short check_bit(unsigned short pos, unsigned short symb)

Проверка бита в числе

char * add_to_path(char * _path, const char * _str)

Добавляет путь в конец пути

boolpath_is_exist(const char * _path)

Проверка директории или файла на существование

boolcreate_directory(const char * _path)

Создание директории

boolcreate_directories(const char *_path)

Рекурсивное создание директорий

Модуль main

BOOL ctrl_handler(DWORD sig_type)

Функция-обработчик событий консоли в ОС Windows

void ctrl_handler(intsig_type)

Функция-обработчик сигналов в ОС Linux

Обращение к программе

Способы запуска приложения:

Двойное нажатие на исполняемый файл «spa_driver.exe» для Windows и «spa_driver» для Linux;

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

Входные и выходные данные

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

Выходными данными являются файлы осциллограмм в формате COMTRADE и события из буфера RE, а также лог-файл.

Сообщение программного средства

Сообщения системы можно разделить на следующие группы:

Сообщения об отсутствии конфигурационного файла или ошибках в его формате;

Сообщения о нехватке памяти на диске для сохранения осциллограммы;

Сообщения об ошибках приема и отправки пакетов

Выводы по главе

В данной главе было приведено руководство программиста и руководство оперативного пользователя. Были рассмотрены входные и выходные данные и способы вызова модуля.

5. ОРГАНИЗАЦИОННО-ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ

ДИПЛОМНОГО ПРОЕКТА

5.1 Описание программы

Данный программный продукт предназначен для создания системы определения места повреждений в электроэнергетических системах. Система ОМП строится на базе микропроцессорных терминалов релейной защиты и автоматики (например, ТОР 100-ЛОК), которые в автоматическом режиме анализируют аварийный режим и рассчитывают расстояние до места аварии.

Система ОМП должна передать информацию о месте повреждения на сервер системы, установленный в диспетчерском пункте. Система должна передавать данную информацию в автоматическом режиме без участия пользователя и сигнализировать диспетчера об аварии. Тем самым обеспечивается минимизация времени устранения аварии.

5.2 Описание рынка сбыта

Наиболее разветвленные сети линий электропередач принадлежат сетевым компаниям (например, «ФСК»), городским сетям.

5.3 Расчет себестоимости программного продукта

Исходные данные

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

Исходными данными при расчете себестоимости данного программного продукта являются:

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

Степень сложности алгоритма функционирования - 1 группа сложности - программная продукция, реализующая оптимизационные и моделирующие алгоритмы.

Используемая информация представлена в виде справочно-нормативной информации.

Группа программного продукта 1.2 - исходная информация представлена в форме документов, имеющих одинаковый формат и структуру. Требуется формальный контроль информации.

Определение трудоемкости разработки программной продукции

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

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

Для данного проекта имеем следующие величины [8]:

(табл. 2) - Диспетчеризация;

- норма времени на разработку эскизного проекта программного продукта в зависимости от его функционального назначения и степени новизны; чел. дни;

Для данного проекта имеем следующие величины [8]:

(табл. 3);

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

- коэффициент учета режима обработки информации;

- коэффициент учета вида используемой информации.

, , - значения коэффициентов вида информации для переменной, нормативно-справочной информации и баз данных соответственно;

, , - количество наборов данных переменной, нормативно-справочной информации и баз данных соответственно.

Для данного проекта имеем следующие величины[8]: (табл. 4);

(табл. 17);

;

(табл. 18);

;

.

Получаем

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

- коэффициент учета сложности контроля информации;

- коэффициент учета уровня используемого алгоритмического языка программирования;

- коэффициент учета степени использования готовых программных модулей;

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

Для данного проекта имеем следующие величины[8]:

(табл. 19);

(табл. 20);

(табл. 21);

;

(табл. 22).

Получаем.

Трудоемкости отдельных этапов разработки программного продукта представлены в таблице 5-1.

Таблица 5-1.Трудоемкость разработки программного продукта

Этап разработки ПП

Трудоемкость, человеко-дней

Техническое задание

57

Эскизный проект

117

Технический проект

77.16

Рабочий проект

81.07

Внедрение

29.62

Продолжительность выполнения всех работ по этапам разработки программного продукта определяется из выражения:

где - трудоемкость i-й работы, чел. дни;

- трудоемкость дополнительных работ, выполняемых исполнителем, чел. дни;

- количество исполнителей, выполняющих i-ю работу, чел.

Принимая человек, получим:.

Определение цены программного продукта

Цена программного продукта определяется по формуле:

где С- затраты на разработку программной продукции (сметная себестоимость);

К - коэффициент учета затрат на изготовление опытного образца программного продукта, как продукции производственно-технического назначения (К = 1,1 .. 1,2);

П - нормативная прибыль,

Расчет сметной себестоимости программного продукта.

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

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

Материалы. В статье указывают суммарные затраты на материалы, приобретаемые для разработки данной ПП. Затраты состоят из стоимости материалов и транспортно-заготовительных расходов, т.е.

Так как разработка ПП не потребовала затрат на материал, то затраты по этой статье не учитываем при определении сметной стоимости программного продукта.

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

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

где - балансовая цена i-го вида оборудования;

- норма годовых амортизационных отчислений для оборудования i-го вида;

- действительный годовой фонд времени, ч.;

- время использования i-го вида оборудования при выполнении данной разработки, ч.

При разработке данного программного продукта использовались компактный встраиваемый компьютер MOXAUC 7420-LXPlusи терминал «ТОР 100-ЛОК».

Для данного проекта имеем следующие величины [8]:

(табл. 52);

(табл. 65);

(табл. 66);

;

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

Получаем

Дополнительная заработная плата. В статье учитываются все выплаты непосредственным исполнителям за время (установленное законодательством), не проработанное на производстве, в том числе: оплата очередных отпусков, компенсации за неиспользованный отдых, оплата льготных часов подросткам и др. Единый социальный налог. В статье учитываются отчисления в бюджет социального страхования по установленному законодательством тарифу от суммы основной и дополнительной заработной платы. В соответствии с Налоговым кодексом РФ, часть 2, введенным в действие федеральным законом №117-ФЗ от 5.08.2000 г., в сумму налога включены отчисления в государственные внебюджетные фонды: Пенсионный фонд РФ, Фонд социального страхования РФ и фонды обязательного медицинского страхования РФ.

Получаем

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

Производственные командировки. В статье учитываются все расходы на командировки, связанные с разработкой данного программного продукта.

Так как разработка ПП не потребовала командировок то затраты по этой статье не учитываем при определении сметной стоимости программного продукта.

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

Эта статья тоже не учитывается.

Результаты расчета сметной стоимости программной продукции представлены в таблице 5-2.

Таблица 5-2. Результаты расчета сметной стоимости программной продукции

Наименование статьи

Сметная себестоимость

Удельный вес, %

Примечание

Материалы

0.00

0.00

не приобретались

Специальное оборудование

1821.81

0.28

Основная заработная плата

271384

42.25

Дополнительная заработная плата

54276.81

8.45

Единый социальный налог

97698.25

15.21

Накладные расходы

217107.2

33.80

Производственные командировки

0.00

0.00

Контрагентские расходы

0.00

0.00

сторонними организациями работ не выполнялось

ИТОГО:

642288.1

100.00

Цена продукта будет равна:

Расчет и сопоставление капитальных вложений по сравниваемым вариантам

Для данного проекта имеем следующие величины:

;

Расчет и сопоставление эксплуатационных расходов по сравниваемым вариантам

Расходы, связанные с эксплуатацией программы (р./год на потребителя программы), определяются как:

Экономия эксплуатационных расходов, получаемая у одного потребителя данной новой программы (алгоритма), составит

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

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

Сводные экономические показатели по разработке программы приведены в таблице 5-3.

Таблица 5-3. Сводные экономические показатели по разработке программы

Показатель

Размерность

Программа

Затраты на разработку программы

руб./программу

642288.1

Капитальные вложения

руб./программу

832915

Эксплуатационные расходы

руб./программу

291972

Годовой экономический эффект

руб./год/программу

257010.7

Срок окупаемости

Год

2.18

Выводы по главе

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

6. БЕЗОПАСНОСТЬ И ЭКОЛОГИЧНОСТЬ ПРОЕКТА

6.1 Анализ и оценка вредных факторов при разработке драйвера

протокола

Микроклимат рабочей зоны программиста

Лаборатория является помещением І категории (выполняются легкие физические работы), поэтому должны соблюдаться следующие требования:

оптимальная температура воздуха- 22° С (допустимая - 20-24° С)

оптимальная относительная влажность - 40-60% (допустимая - не более 75%)

скорость движения воздуха не более 0.1 м/с.

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

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

Освещение рабочего места

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

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

Опасность повышенного уровня напряженности электромагнитного поля.

Электромагнитные поля, характеризующиеся напряженностями электрических и магнитных полей, наиболее вредны для организма человека. Основным источником этих проблем, являются дисплеи (мониторы). Они представляют собой источники наиболее вредных излучений, неблагоприятно влияющих на здоровье программиста. ПЭВМ являются источниками таких излучений как: мягкого рентгеновского, ультрафиолетового 200-400 нм, видимого 400-700 нм, ближнего инфракрасного 700-1050 нм, радиочастотного 3 кГц-30 МГц, электростатических полей.

Так как работа программиста по виду трудовой деятельности относится к группе В - творческая работа в режиме диалога с ЭВМ, а по напряженности работы ко II категории тяжести [12] предусмотрены 3 перерыва - 2 на чаепитие (10-20 минут каждая) и одно на обед (1 час). Для уменьшения электромагнитного поля на рабочем месте установлены жидкокристаллические мониторы.

Электробезопасность. Статическое электричество.

Помещение лаборатории по опасности поражения электрическим током можно отнести к 1 классу, т.е. это помещение без повышенной опасности (сухое, не пыльное, с нормальной температурой воздуха, изолированными полами и малым числом заземленных приборов).

На рабочем месте программиста из всего оборудования металлическим является лишь корпус системного блока компьютера, но здесь используются системные блоки, отвечающие стандарту фирмы IBM, в которых кроме рабочей изоляции предусмотрен элемент для заземления и провод с заземляющей жилой для присоединения к источнику питания. Таким образом, оборудование выполнено по классу 1 [13]. Электробезопасность помещения обеспечивается в соответствии с [13].

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

Для уменьшения напряжённости применяются увлажнители и нейтрализаторы, антистатическое покрытия пола. Кроме того, при неисправности каких-либо блоков компьютера корпус может оказаться под током, что может привести к электрическим травмам или электрическим ударам. Для устранения этого, в лаборатории металлические корпуса оборудования подсоединены к заземляющей жиле. Электробезопасность рабочего места обеспечивается в соответствии с [5].

6.2 Измеритель напряженности электрического и магнитного поля

промышленной частоты ИП-50

Назначение.

Измеритель ИП-50 предназначен для измерения напряжённости электрического и магнитного поля промышленной частоты при контроле за соблюдением ПДУ, касающихся гигиены труда и коммунально-бытовой гигиены, установленных в стандартах Российской Федерации.

Измеритель ИП-50 работает от источника постоянного напряжения 9 В, типа "КРОНА", АА, и др.

Рабочие условия эксплуатации измерителя ИП-50:

температура окружающего воздуха (293 ± 10)? К

относительная влажность воздуха (65 ± 15) %

атмосферное давление (100 ± 5) кПа

Технические данные.

Измеритель ИП-50 имеет следующие характеристики, представленные в таблице 6-1.

Таблица 6-1. Характеристики измерителя ИП - 50

Рабочая частота

50 ± 1 Гц.

Диапазон измерения среднеквадратического значения напряженности магнитного поля

0,01 - 100 А/м

Первый поддиапазон

0,01 -1 А/м

Второй поддиапазон

1 - 100 А/м

Диапазон измерения среднеквадратического значения напряженности электрического поля

1 В/м - 100 кВ/м

Первый поддиапазон с ПИП N1

0,01 - 1 кВ/м

Первый поддиапазон с ПИП N2

0,001 - 0,1 кВ/м

Второй поддиапазон с ПИП N1

1 - 100 кВ/м

Второй поддиапазон с ПИП N2

0,1-10 кВ/м

Погрешность измерения, не более

± 10%

Состав.

Измеритель ИП-50 состоит из следующих основных частей:

ПИП напряженности магнитного поля и электрического поля N1 и N2;

А1 - блок интеграторов;

А2 - входной делитель напряжения;

A3 - измерительный усилитель;

A3 - АЦП с жидкокристаллическим индикатором;

ПИП напряженности магнитного поля промышленной частоты (индукционного типа) расположен непосредственно в корпусе измерителя ИП-50 параллельно нижней части корпуса. Его выход, через входной разъем, подключен к входу усилителя.

ПИП напряженности электрического поля промышленной частоты N1 или N2 (емкостного типа) подключается к входному разъему, расположенному на верхней крышке ИП-50. При этом происходит автоматическое отключение ПИП напряженности магнитного поля от входа усилителя.

Блок интеграторов совместно с ПИП формирует амплитудно-частотную характеристику измерителя.

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

АЦП используется для прямого преобразования напряжения, поступающего с выхода измерительного усилителя в соответствующий ему цифровой эквивалент. Цифровая информация на выходе АЦП представляется в 7-сегментном коде. Цифровой отсчет производитсяна3,5-декадном жидкокристаллическом индикаторе.

Конструктивно измеритель ИП-50 выполнен в виде переносного прибора. Корпус измерителя разделен на отсеки, в которых размещены его функциональные узлы. На верхней панели корпуса измерителя расположен входной разъем. На передней панели корпуса находятся кнопка включения-выключения измерителя, кнопка переключения пределов измерения, цифровой индикатор и отверстие для подключения ручки-держателя ИП-50.

На задней панели корпуса измерителя, под крышкой, расположен батарейный отсек.

Измеритель, два ПИП емкостного типа, ручка-держатель, удлинитель ручки держателя, ТО и ИЭ, формуляр находятся в специальной упаковочной коробке для их перевозки и хранения.

Устройство и работа.

ПИП напряжённости магнитного поля измерителя ИП-50 представляет собой пассивный индукционный преобразователь. ПИП выполнен в виде катушки, которая содержит 4000 витков провода ПЭВ-1-0,1 мм и имеет диаметр 60 мм. Катушка жёстко крепится к нижней крышке корпуса измерителя.

При измерении переменного магнитного поля величиной 1 А/м частотой 50 Гц наведенная ЭДС катушки составит 5 мВ. Корпус измерителя служит электростатическим экраном и устраняет влияние на катушку электрического поля.

ПИП напряжённости электрического поля измерителя ИП-50 представляет собой пассивный преобразователь емкостного типа. ПИП выполнен из двустороннего стеклотекстолита толщиной 3 мм. Диаметр ПИП N1 равен 25 мм, а диаметр ПИП N2 - 100 мм. При измерении временного электрического поля напряженностью 1 кВ/м (верхняя граница первого амплитудного поддиапазона) на электродах ПИП N1 наведется ЭДС порядка 5 мВ, а на электродах ПИП N2 50 мВ. Таким образом, использование ПИП N2 при измерении напряжённости электрического поля повышает чувствительность измерителя ИП-50 в десять раз по сравнению с ПИП N1.

6.3 Проведение электромагнитного мониторинга на рабочем месте

пользователя ПК при разработке драйвера протокола

Инструментальный контроль электромагнитной обстановки на рабочих местах пользователей персонального компьютера (ПК) производится[9]:

при вводе ПК в эксплуатацию и организации новых и реорганизации рабочих мест;

после проведения организационно-технических мероприятий, направленных на нормализацию электромагнитной обстановки при аттестации рабочих мест по условиям труда;

по заявкам предприятий и организаций

Инструментальный контроль уровней ЭМП должен осуществляться приборами с допускаемой основной относительной погрешностью измерений ± 20%.

Для измерения уровней напряженности на экране ПК необходимо установить типичное для данного вида работы изображение (текст программы, графики и др.). При проведении измерений должна быть включена вся вычислительная техника, монитор и другое используемое для работы электрооборудование, размешенное в данном помещении. Измерения параметров электростатического поля проводить не ранее, чем через 20 минут после включения ПК.

Проведение измерений.

Измерение уровней переменных электрических и магнитных полей, статических электрических полей на рабочем месте, оборудованном ПК, производится на расстоянии 50 см от экрана на трех уровнях на высоте 0,5 м, 1,0 м и 1,5 м. Результаты мониторинга приведены в таблице 6-2.

Таблица 6-2. Результаты электромагнитного мониторинга.

Высота

Напряженность магнитного поля, А/м

Напряженность электрического поля, В/м

0,5 м

0,42

0,07

1,0 м

0,59

0,09

1,5 м

0,50

0,08

Максимальное значение напряженности (0.59 А/м) магнитного поля превышает допустимый уровень (0.2 А/м) превышает в 2.95 раза.

6.4 Аттестация рабочего места пользователя ПК по электромагнитной

безопасности при разработке драйвера протокола

Отнесение условий труда к тому или иному классу вредности и опасности [13] при воздействии ЭМП и излучений осуществляется в соответствии с таблицей 6-3.

Таблица 6-3. Классы условий труда при действии неионизирующих ЭМП и излучений

Показатель

Класс условий труда

оптимальный

допустимый

вредный

опасный

1

2

3.1

3.2

3.3

3.4

4

Электромагнитные поля на рабочем месте пользователя ПЭВМ

-

? ВДУ

>ВДУ

-

-

-

-

Таблица 6-4. Временные допустимые уровни (ВДУ) воздействия на человека электромагнитных полей

Виды поля

ВДУ ЭМП (СанПин)

Электрическое

25 В/м

Магнитное

0,2 А/м

Сравнив результаты измерения ЭМП на рабочем месте (таблица 6-2) с данными таблицы ВДУ ЭМП создаваемых ПК (таблица 6-4) и проанализировав по таблице классов условий труда при действии ЭМП (таблица 6-3) был сделан вывод, что класс условий труда на рабочем месте относится к классу 3.1 (вредные условия труда).

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

6.5 Расчет контурного защитного заземления ПК

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

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

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

В зависимости от расположения заземлителей по отношению к заземляемому оборудованию заземление бывает выносным и контурным. Заземлители выносных заземлений располагают сосредоточенно на расстоянии свыше 20 м от заземляемого оборудования, т е. вне зоны растекания тока замыкания на землю [5].

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

Контур заземления выполняют из стальных стержней, уголков, некондиционных труб и др. В траншее глубиной до 0,7 м вертикально забиваются стержни (трубы, уголки и др.), выступающие из земли верхние концы соединяются сваркой внахлест стальной полосой или прутком.

Расчет заземляющего устройства сводится к определению числа вертикальных заземлителей и длины соединительной полосы.

Заглубление полосы (глубина траншеи) принимается равным 0,7 м. Заглубление стержня можно определить по формуле:

Согласно (6.2):

Удельное сопротивление грунта принимается равным 100 Ом • м (тип грунта - суглинок). Тогда сопротивление вертикального одиночного заземлителя согласно (6.1):

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

где - нормируемое сопротивление растеканию тока заземляющего устройства согласно [5], Ом. Коэффициент сезонности для второй климатической зоны принимается равным 1.6.

Из формулы (6.3):

что, после округления в большую сторону, даст

Если принять, что вертикальные заземлители размещены в ряд, то длина полосы определяется:

где - расстояние между соседними вертикальными заземлителями, м.

Из (6.5) длина полосы равна:

Сопротивление растеканию тока соединительной полосы согласно (6.4):

Сопротивление вертикальных заземлителей с учетом сопротивления растеканию тока соединительной полосы:

Из (6.6):

Окончательное количество заземлителей:

где - коэффициент использования вертикальных заземлителей.

Полученная величина сопротивления заземляющего устройства должна удовлетворять требованиям ПУЭ для рассматриваемой установки с данными уровнями напряжения. Проверочный расчет группового заземлителя согласно (6.8):

Полученная величина удовлетворяет требованиям .

6.6 Расчет количества отходов при написании дипломного проекта

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

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

где - вес использованного картриджа, г.;

- количество использованных пачек бумаги, шт.;

- количество листов в пачке бумаги;

- ресурс картриджа, листов на одну заправку.

В паспортных данных на картриджи указывается ресурс, рассчитанный на 5% заполнения (экономичный режим). При реальной эксплуатации ресурс следует уменьшать на 30-50% (в зависимости от качества печати), поэтому вводим поправочный коэффициент равный 0,6.

Бытовые отходы

Количество бытовых отходов рассчитывается по формуле:

где - число сотрудников на предприятии, чел.;

- норматив образования бытовых отходов на одного работающего;

- плотность бытовых отходов [6].

Согласно (6.11): .

Среднегодовое количество бытовых отходов на одного сотрудника равно 66 кг/год. Согласно [14] это количество не должно превышать 108 кг/год (для административных и других учреждений, офисов), т.е. количество отходов не превышает установленной нормы.

Выводы по главе

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

программный алгоритм интерфейс тестирование

ЗАКЛЮЧЕНИЕ

В ходе выполнения данной дипломной работы был разработан драйвера протокола SPA-BUS, позволяющий вовремя и без потерь собирать данные с микропроцессорных терминалов ОМП для передачи на сервер системы.

Для программного модуля работы с документацией с помощью AllFusion Process Modeler был смоделирован бизнес-процесс.

К основным достоинствам разработанного программного продукта можно отнести:

Удобство и простота использования;

Надежность;

Кроссплатформенность (поддержка ОС Windowsи EmbeddedLinux);

Сбор информации с терминалов ОМП и ее передача на сервер.

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

Дальнейшее развитие программы можно произвести по следующим направлениям:

Добавление возможности дистанционного конфигурирования терминала;

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Шилдт Г. С++: базовый курс, 3-е издание. - Москва: Издательский дом «Вильямс», 2010. - 624 с.

2. Страуструп Б. Дизайн и эволюция языка С++. - Питер: ДМК Пресс, 2006. - 448 с.

3. Александреску А. Современное проектирование наС++: Обобщенное программирование и прикладные шаблоны проектирования. - Москва: Издательский дом «Вильямс», 2004. - 336 с.

4. Безопасность жизнедеятельности. Учебник/Под ред. С.В. Белова. - М.: Высшая школа, 2011 - 680 с.

5. ГОСТ 12.1.030-81 «Система стандартов безопасности труда. Электробезопасность. Защитное заземление, зануление.»

6. SPA-Bus Communication Protocol V2.5. TechnicalDescription. Finland, 2001. 28 p.

7. C37.111-1991 - IEEE Standard Common Format for Transient Data Exchange (COMTRADE) for Power Systems

8. Экономическое обоснование разработки программ и алгоритмов: Методические указания к выполнению организационно- экономической части дипломных проектов / Сост. Е.Ф. Перфилова; Чувашский ун-т. Чебоксары, 2001. 50 с.

9. Безопасность жизнедеятельности: методические указания и контрольные задания/ сост. В.В. Ашмарин, Э.Н. Рябинина; Чуваш. ун-т, Чебоксары, 2009, 92 с.

10. Экология: Метод.указания и контрольные задания/Сост. В.В. Ашмарин; Чуваш. ун-т. Чебоксары, 2010. 106 с

11. Техническое описание и инструкция по эксплуатации ИП-50, 25с.

12. Санитарно-эпидемиологические правила и нормативы. Гигиенические требования к персональным ЭВМ и организация работы. СанПин 2.2.2/2.4.1340-03. М.: "Книга сервис", 2003. - 16 с.

13. Руководство по гигиенической оценке факторов рабочей среды и трудового процесса. Критерии и классификация условия труда. Руководство Р 2.2.2006 -05. 2005, 129с.

14. http://www.regionz.ru Постановление администрации г. Чебоксары ЧР от 11.01.2009 № 2 «Об утверждении норм накопления твёрдых бытовых отходов от объектов санитарной очистки города Чебоксары»

15. http://ru.wikipedia.org/wiki/Microsoft_Visual_Studio

16. http://ru.wikipedia.org/wiki/Eclipse_(среда_разработки)

17. http://ru.wikipedia.org/wiki/C%2B%2B

18. http://ru.wikipedia.org/wiki/Си_(язык_программирования)

19. http://www.moxa.com/product/UC-7410_UC7420.htm

20. http://stackoverflow.com/

21. http://www.rsdn.ru/

22. http://www.boost.org/

23. http://ru.wikipedia.org/wiki/Boost

24. http://ru.wikipedia.org/wiki/Qt

Приложения

Приложение А

А1 Диаграммы декомпозиции

Рисунок А.1 - Диаграмма декомпозиции для работы «Разработка требований»

Рисунок А. 2 - Диаграмма декомпозиции для работы «Анализ требований и проектирование»

Рисунок А.3 - Диаграмма декомпозиции для работы «Написание кода приложения»

Рисунок А.4 - Диаграмма декомпозиции для работы «Тестирование»

Приложение Б

Б.1 Схема исследования и сводные экономические показатели

Приложение В

В.1 Пример осциллограммы в формате COMTRADE

Конфигурационный файл:

TOP100-LOC61,1

72,8A,64D

1,Ia,,,A,01.697052,0,0,-32768,32767

2,Ua,,,V,0155.5631,0,69.4444444444444,-32768,32767

3,Ib,,,A,01.697052,0,138.888888888889,-32768,32767

4,Ub,,,V,0155.5631,0,208.333333333333,-32768,32767

5,Ic,,,A,01.697052,0,277.777777777778,-32768,32767

6,Uc,,,V,0155.5631,0,347.222222222222,-32768,32767

7,Io,,,A,0.848526,0,416.666666666667,-32768,32767

8,Uo,,,V,031.11262,0,486.111111111111,-32768,32767

1,Внешн.сигн,0

2,ПО,0

3,I1>,0

4,I2>,0

5,I0>,0

6,dI1>,0

7,dI2>,0

8,dI0>,0

9,Н.изм.ц,0

10,НЦН,0

11,НЦТ,0

12,СДП,0

13,Вход1.1,0

14,Вход1.2,0

15,Вход1.3,0

16,Вход1.4,0

17,Вход1.5,0

18,Вход1.6,0

19,K1.1,0

20,K1.2,0

21,K1.3,0

22,K1.4,0

23,K1.5,0

24,no use,0

64,nouse,0

50

1

800,320

05/15/12,15:10:08.019000

05/15/12,15:10:08.119000

ASCII

Файл данных:

1,0,0,0,-1,1,-1,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

2,1250,0,0,-1,1,-2,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

3,2500,0,0,-1,1,-2,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

4,3750,0,0,-1,1,-2,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

5,5000,0,0,-1,1,-2,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

6,6250,0,0,-1,1,-2,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

7,7500,0,0,-1,1,-2,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

8,8750,0,-1,-1,1,-1,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

9,10000,0,0,-1,1,-2,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

10,11250,0,0,-1,1,-2,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

320,398750,0,0,-1,1,-2,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.