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

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

Рубрика Программирование, компьютеры и кибернетика
Вид магистерская работа
Язык русский
Дата добавления 15.02.2013
Размер файла 2,0 M

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

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

Блок «Измерение реакции»реализован в подмодуле Unit4. Он содержит реализацию методики «Измерение времени простой сенсомоторной реакции на световой сигнал». Цель опыта: сравнить быстроту реагирования при равномерном предъявлении сигнала и при предъявлении сигнала через различный промежуток времени. То есть данный эксперимент должен быть представлен двумя вариантами: первый вариант - сигнал предъявляется равномерно, второй - неравномерно. Кроме того, по методике сигнал должен быть двух видов: предупредительный и основной (рис. 3.1 и рис. 3.2 соответственно). При появлении предупредительного сигнала испытуемый должен приготовиться. После предупредительного сигнала появляется основной сигнал. В случае равномерного предъявления сигнала (первый вариант) интервал между предупредительным и основным сигналом всегда равен 1 секунды. Длительность предупредительного сигнала 1,5 секунды. В случае неравномерного предъявления основного сигнала (второй вариант) интервал между предупредительным сигналом и основным должен варьироваться от 0,5 секунды до 2,5 секунд.

Для визуализации данной методики требуется два изображения лампочки накаливания: во включённом состоянии и выключенном. Эти изображение будут предъявляться на объекте Form4 при помощи компоненты Image. Также необходимы таймеры, которые будут менять эти изображения для того, чтобы получить эффект «включения лампы». Первый вариант подразумевает, что появляться основной сигнал будет равномерно. Поэтому для получения сигнала нам достаточно три таймера: Timer2, Timer3, Timer4. Первый таймер (Timer2) запускает предупредительный сигнал и одновременно с этим включает второй таймер (Timer3), который через заданный интервал времени выключает предупредительный сигнал. Также второй таймер запускает третий таймер (Timer4) для основного сигнала. Данный третий таймер не только запускает основной сигнал, но и считает количество предъявлений сигнала (по методике их должно быть 30).

Рисунок 3.1

Рисунок 3.2

Однако необходим ещё один таймер (таймер-счётчик) для отсчёта времени реакции испытуемого. Интервал такого таймера равен 1 мс. Этот таймер запускается третьим таймером, который отвечает за основной сигнал, и содержит переменную, увеличивающую своё значение на единицу при каждом срабатывании таймера от нуля и до того времени, пока пользователь не отреагирует. Фиксация реакции осуществляется нажатием клавиши Enter. Подмодуль Unit4 содержит обработчик события нажатия данной клавиши Enter(TObject *Sender, char &Key). Данный обработчик, во-первых, проверяет, какой из таймеров запущен. Если запущен таймер, отвечающий за предупредительный сигнал, запускает счётчик ошибок, в случае если реакция правильная и запущен основной сигнал, происходит остановка таймера-счётчика, считывается значение переменной-счётчика в переменную result1. Значение данной переменной представляет собой сумму времени реакции испытуемого. Далее переменная-счётчик обнуляется и запускается вновь таймер, отвечающий за интервал между основным и предупредительным сигналом.

if (Timer2->Enabled==true || Timer3->Enabled==true) {

err1++;}

if (Timer4->Enabled==true) {

result1+=StrToInt(Edit2->Text);

n1++;

Edit2->Text="0";

Timer6->Enabled=false;

t1=0;}

Как видно из приведённого примера кода, при обработке события Enter(TObject *Sender, char &Key) осуществляется фиксация и обработка реакции испытуемого на предъявляемый сигнал. Полученные данные хранятся в глобальных переменных err1 и result1. Первая переменнаяerr1 хранит количество неправильных реакций (преждевременных нажатий на клавишу Enter), вторая переменная result_1 хранит суммарное время реакции на предъявляемый сигнал. Цикл предъявления сигналов продолжается пока количество предъявлений не достигнет 30. После чего происходит обработка результатов первого варианта и переход ко второму варианту.

Второй вариант данного эксперимента отличается от первого тем, что промежуток между предупредительным и основным сигналом должен варьироваться от 0,5 секунды до 2,5 секунд. Соответственно реализация появления сигналов такая же, как и у предыдущего варианта, однако время срабатывания таймера, запускающего основной сигнал должно лежать в выше указанных границах и меняться в произвольном порядке. Для этого используется функция rand()%5, которая создаёт число от одного до пяти. Далее мы увеличиваем это число в 500 раз и присваиваем получившееся значение переменной, которая изменяет интервал таймера. В итоге получается, что каждый раз при запуске таймера формируется новый для него интервал срабатывания равный от 500 мс до 2500 мс. Когда достигается требуемое число предъявлений, происходит остановка всех таймеров, результаты фиксируются и обрабатываются. Также происходит возврат в меню.

Фиксация реакции испытуемого во втором варианте осуществляется также нажатием клавишей Enter, что означает, что задействуется вновь обработчик данного события Enter(TObject *Sender, char &Key).

if (Timer9->Enabled==true) {

err2++;}

if (Timer11->Enabled==true) {

result2+=StrToInt(Edit4->Text);

n2++;

Edit4->Text="0";

Timer7->Enabled=false;

t2=0; }

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

Блок «Измерение точности» содержит в себе реализацию методики «Исследование точности реагирования на совмещение двух сигналов-меток» в виде эксперимента с одним вариантом. Цель опыта: исследование характера и точности реагирования в условиях, когда отметка-цель появляется по ходу движения сигнала за некоторый интервал времени до их совмещения. Реализация данного эксперимента содержится в подмодуле Unit2. Соответственно визуальное представление эксперимента осуществляется с помощью объекта Form2.

Для визуализации данного эксперимента средствами BuilderC++ были нарисованы два шара чёрного и красного цветов (компоненты Shape1 и Shape2). По требованиям методики один из шаров остаётся неподвижным (красный), другой движется ему навстречу (чёрный). Движение осуществляется за счёт перемещения чёрного шара в сторону красного. Данное движение осуществляется двумя таймерами. Первый таймер перемещает чёрный шар на заданный промежуток (130 точек) через заданный промежуток времени (90 мс). Второй таймер делает чёрный шар видимым для испытуемого через заданный промежуток времени (89 мс). Таким образом, возникает эффект движения шара по прямой.

Испытуемый должен нажать Enter, когда чёрный шар достигает красный. Когда происходит это событие, останавливаются таймеры, осуществляющие движение, считывается положение чёрного шара, запускается следующий таймер, время срабатывания которого лежит в интервале от 1 с до 2 с.

Timer2->Enabled=false;

Timer3->Enabled=false;

Timer4->Enabled=true;

l+=(Shape2->Left)-(Shape1->Left);

Как видно из приведённого кода, при фиксации реакции в переменную l считывается расстояние между шарами как разность между положением чёрного и красного шара по горизонтали. Данная разность суммируется и по окончанию эксперимента в переменной l содержится суммарное отклонение положения чёрного (движущегося) шара от красного (неподвижного). Запускаемый Timer4 срабатывает через изменяющийся промежуток времени, что и требуется по методике. Это необходимо для того, чтобы оценить индивидуальные особенности организации нервной системы человека [5]. При преобладании у него возбудительного процесса наблюдается увеличение числа запаздывающих реакций. Соответственно разность l должна быть больше нуля. При преобладании у человека тормозного процесса происходит увеличение числа преждевременных реакций. Поэтому разность l будет меньше нуля.

Цикл повторяется пятнадцать раз, после чего результат последнего предъявления фиксируется, обрабатывается, и происходит возврат в меню. Однако в меню можно возвратиться посредством клавиши Esc. Пример обработки данного события приведён ниже:

if (Key==27){

Form1->Visible=true;

Form2->Visible=false;

Shape2->Visible=false;

}

Следующий блок - блок «Измерение точности» содержит в себе реализацию методики «Измерение времени и точности сенсомоторной реакции выбора». Заключает в себе два варианта эксперимента. Цель опыта: определение, насколько возрастает время реакции от числа возможных выборов.

Для данного эксперимента необходимы те же изображения ламп накаливания, которые используются объектами класса TImage. Только теперь необходимо появление двух изображений одновременно (Рис.3.3).

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

При появлении сигнала справа (появляется изображение включённой лампы) пользователю необходимо будет нажать правую стрелку на клавиатуре, при появлении слева - левую. Предупредительным сигналом в данном эксперименте будет служить появление сигнала одновременно и справа, и слева. По условиям методики интервал между предупредительным и основным сигналом варьируется в диапазоне от 500 мс до 2500 мс. Для реализации необходимы таймеры отдельно для правого сигнала, отдельно для левого. Кроме того, срабатывать они должны в случайном порядке. При запуске эксперимента стартует таймер, отсчитывающий время появления предупредительного сигнала и время запуска таймера, который отключит этот предупредительный сигнал. Данный таймер в свою очередь, используя функцию rand()%5, которая создаёт число от одного до пяти. Далее мы увеличиваем это число в 500 раз и присваиваем получившееся значение переменной, которая изменяет интервал таймера. В итоге получается, что каждый раз при запуске таймера формируется новый интервал срабатывания, равный от 500 мс до 2500 мс. Также это число используется для появления сигнала справа или слева. Получается, что данный таймер запускает таймер, отвечающий за сигнал справа или слева, и задаёт ему интервал.

Рисунок 3.3

Фиксация реакции происходит по нажатию клавиши < или >. В случае если пользователь нажимает на левую стрелочку < при появлении сигнала слева, время реакции считывается в переменную result_1. Если нажимает на клавишу >, то есть происходит ошибочная реакция, то значение переменной errL увеличивается на 1, тем самым фиксируется ошибка реакции. В случае если пользователь нажимает на правую стрелочку > при появлении сигнала справа, время реакции считывается в переменную result_2. Если нажимает на клавишу <, то есть происходит ошибочная реакция, то значение переменной errR увеличивается на 1, тем самым фиксируется ошибка реакции. Цикл предъявлений по методике должен повторяться тридцать раз. Затем происходит переход ко второму варианту.

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

Рисунок 3.4

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

– цифре один будет соответствовать клавиша с цифрой семь;

– цифре два будет соответствовать клавиша с цифрой восемь;

– цифре три будет соответствовать клавиша с цифрой девять;

– цифре четыре будет соответствовать клавиша с цифрой нуль;

– цифре пять будет соответствовать клавиша с символом «минус».

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

Рисунок 3.5

При нажатии клавиши, соответствующей цифре на экране и расположенной с нужной стороны, происходит считывание времени реакции.

Но переменных для сохранения времени реакции всего одна - result_2r. А каждое ошибочное нажатие фиксируется в отдельную переменную n1, n2, n3, n4, n5, n6, n7, n8, n9, n10. По окончании данного эксперимента все эти значении суммируются. Полученная сумма и будет являться общим количество неправильных реакций, которое необходимо также найти по условию методики. После прохождения второго варианта описываемого эксперимента происходит фиксация, обработка полученных данных в фоновом режиме, а перед пользователем вновь появляется меню программы. Текст процедуры по реализации данного блока представлен в Приложении А.

Блок «Измерение реакции» содержит в себе реализацию методики «Реакция на движущийся объект». Цель данной методики: оценить уровень организованности функциональной системы реагирования испытуемого. Для реализации данного эксперимента необходимо изображение секундомера и движущаяся метка. Изображение секундомера отображается на форме с помощью компоненты Image. Метка реализована посредством использования компоненты Shape и представлена в виде чёрного квадрата. С помощью таймеров осуществляется передвижение метки по циферблату. Реализация перемещения метки сходна с реализацией перемещения шара в блоке «Измерение точности».То есть через интервал времени, равный 50 мс, который отсчитывается таймером Timer1, изображение метки исчезает, но при этом запускается Timer2. Этот таймер через интервал времени, который также равен 50 мс, предъявляет метку пользователю, только уже в новом месте экрана, переместившись вперед по секундной стрелке. Timer2 в свою очередь запускает Timer1, который через 50 мс делает метку невидимой и запускает вновь Timer2. Данный цикл прерывается нажатием пользователя на клавишу фиксации реакции Enter.

Итак, фиксация реакции осуществляется нажатием клавиши Enter и только в том случае, если метка находится ровно в позиции 0. Этого требует методика. Получается, что при каждом нажатии клавиши Enter происходит считывание координат положения метки, если положение верное, то засчитывается результат. В случае если положение неверное, происходит фиксация ошибки. Кроме того, по условиям методики необходимо, чтобы пользователь проделал 50 правильных нажатий. То есть метка будет продолжать перемещение по циферблату, пока пользователь не остановит её на положении нуль. Соответственно, при нажатии клавиши Enter происходит увеличение счётчика числа оборотов метки на единицу (rob++). Если пользователь среагировал неправильно и метка не находилась в требуемом положении, срабатывает счётчик количества неверных нажатий(ob++). Таким образом, по окончании эксперимента результатом будет являться количество неверных нажатий ob и количество предъявлений rob. По окончании эксперимента пользователю выводится сообщение о том, что эксперимент пройдён.

Блок «Измерение концентрации внимания» содержит в себе реализацию методики «Красно-чёрно-синие таблицы». Методика предназначена для определения уровня развития внимания. Также "Красно-черно-синие таблицы" могут использоваться для оценки кратковременной памяти [3].Реализация данной методики представлена таблицей, состоящей из элементов SpeedButton. Каждый элемент представляет собой или символ русского алфавита (от А до К), или символ английского алфавита (от А до L), или цифры по возрастанию от 1 до 12. Символы русского алфавита - синего цвета, символы английского алфавита - красного цвета, и, наконец, цифры - чёрного цвета (см. рисунок 3.6). Пользователю необходимо будет нажать последовательно на каждую кнопку, соответствующую определённому символу, согласно инструкции. Кроме того, в течение эксперимента пользователю будет предоставлены эти наборы в виде подсказки. В ходе эксперимента срабатывают таймеры на каждый символ, фиксирующие время нахождения каждого символа.

Рисунок 3.6

Седьмой блок -блок «Измерение способности выделения главного». Данный блок содержит в себе реализацию методики «Сложные аналогии». Цель методики - выявления того, насколько испытуемому доступно понимание сложных логических отношений и выделение абстрактных связей[3]. Программная интерпретация методики представлена в виде элемента RadioButton, на котором расположены пары слов, представляющих собой логическую связь (рис. 3.7). Этот элемент представляет собой «шифр». В отдельном элементе RichEdit испытуемого предлагается новая пара слов. Испытуемый должен определить отношение между словами в паре, затем подобрать наиболее близкую к ним по аналогии (ассоциации) пару слов из таблицы "шифр". После того, как испытуемый определит логическую связь по «шифру» (нажав кнопку напротив соответствующей пары), испытуемый жмёт на кнопку «Следующее предъявление». Программа фиксирует время, потраченное на поиск «шифра» для каждой новой пары слов. Кроме того, на весь эксперимент отводиться 3 минуты, в которые должен уложиться испытуемый.

Рисунок 3.7

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

По окончанию прохождения всех экспериментов программа сохраняет результаты прохождения экспериментов в файл *.xls. Для того чтобы это сделать, необходимо из среды разработки С++ Builder передать значения переменных в Excel. Это реализуется посредством работы с OLE-сервером Excel. Для этого необходимо получить доступ к интерфейсу Application для Excel. То есть необходимо загрузить библиотеку типов Microsoft Word/Exel Object Library в библиотеку типов среды С++ Builder. Затем подключить к программному модулю подмодули ComObj.hpp и utilcls.h. После создания объекта автоматизации (CreateOleObject("Excel.Application")) начинается работа с рабочими книгами и ячейками Excel. Файл с данными имеет название по фамилии, имени, отчеству испытуемого. В случае, если испытуемый проходит не в первый раз данный комплекс, все его данные сохраняются в уже созданный ранее, под его фамилией файл. Это позволяет проследить динамику развития качеств данного испытуемого.

Рисунок 3.8

Так как результаты у нас получаются от шести экспериментов, то следует в текущей рабочей книге заполнить последовательно шесть ячеек с названиями «Измерение реакции В1», «Измерение точности В1», «Измерение точности В2», «Измерение реакции В2», «Измерение концентрации внимания», «Измерение способности выделения главного» которые будут служить заголовком. Результаты должны записываться под каждым заголовком. Такое представление результатов эксперимента позволит лучше воспринимать информацию и анализировать её. По умолчанию файл с результатами *.xls создаётся в текущей директории, то есть в той директории, где находится программный модуль. Сохранение происходит в фоновом режиме. Сохранённые данные не предъявляются испытуемому.

3.3 Результаты исследования

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

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

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

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

ЗАКЛЮЧЕНИЕ

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

– была проанализирована специфика работы оператора газораспределительной станции и изучены профессионально важные качества данной специальности;

– были проанализированы предложенные методики по определению профессионально важных качеств и выбраны основные для разработки комплекса;

– были проанализированы и распределены функции системы «человек-компьютер-среда»;

– были разработаны эргономические требования к системе «человек-компьютер-среда»;

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

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

– были проанализированы результаты разработки.

Разработанный программный комплекс «Биометрический комплекс» по выявлению профессионально важных качеств оператора газораспределительной станции «быстрота реакции», «точность», «концентрация внимания», «способность к выделению главного» представляет собой дополнительный автоматизированный профотбор, который вместе с традиционными способами профессионального отбора поможет отобрать действительно подходящих кандидатов. Таким образом, получиться добиться минимального отрицательного влияния человеческого фактора на стабильность и надёжность работы газораспределительного предприятия. Данный комплекс может быть использован для проведения серий экспериментов над разными категориями людей в зависимости от возраста, профессии, пола и т.д. Автоматизированные психологические методики позволяют сохранить людские ресурсы, время обработки и повысить точность и объективность экспериментов.

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

[1] Ел-Грейд, М. Разработка информационной модели деятельности операторов газотранспортных предприятий с целью снижения риска совершения ошибок в их работе / М. Ел-Грейд, К. Яшин, В. Егоров // Электроника. - 1989. - №12. - С. 21 - 25.

[2] Егоров, В. Исследование безопасности работы специалистов опасных производств в зависимости от уровня их профессионально значимых качеств/ В. Егоров, К. Яшин, М. Ел-Грейд // Электроника. - 1989. - №12. - С. 21 - 25.

[3] Крылова, А.А. Практикум по общей, экспериментальной и прикладной психологии : 2-е издание дополненное и переработанное / А.А. Крылова, С.А. Маничева. - СПб, 2003.

[4] Оператор газораспределительной станции 4-й разряд / Единый тарифно-квалификационный справочник работ и профессий рабочих: утв. Постановлением Гос. Комитета СССР по труду и соц. вопр. 07.07.84. №171/10-109 - Вып. 36. Разд.: Переработка нефти, нефтепродуктов, газа, сланцев, угля и обслуживание магистральных трубопроводов.

[5] А. Я. Психология: описания психологических тестов, тестирование он-лайн, тренинги, упражнения, статьи, советы психологов [Электронный ресурс]. - Режим доступа :http://azps.ru

[6] Ел-Грейд, В. Информационные методы исследования профессионально важных качеств специалистов опасных производств / М. Ел-Грейд, К. Яшин, В. Егоров // Электроника. - 1989. - №12. - С. 21 - 25.

[7] Практикум по общей, экспериментальной, и прикладной психологии: учеб. пособие / В.Д. Балин[и др.] - СПб: Питер, 2000. - 560с.

[8] Шупейко, И.Г. Психология восприятия и переработки информации: лаб. практикум / И.Г. Шупейко. - Минск.: БГУИР, 2008.

[9] ГОСТ Р 50923-96 Дисплеи. Рабочее место оператора. Общие эргономические требования и требования к производственной среде. Методы измерения.

[10] ГОСТ Р ИСО 9241-3-2007 Эргономические требования к проведению офисных работ с использованием видеодисплейных терминалов (ВДТ). Часть 3. Требования к визуальному отображению информации.

[11] ГОСТ Р ИСО 9241-8-2007 Эргономические требования к проведению офисных работ с использованием видеодисплейных терминалов (ВДТ). Часть 8.Требования к отображаемым цветам.

[12] Архангельский А.Я. Программирование в C++ Builder. 7-е издание. / А.Я. Архангельский. - СПб, 2010.

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

...

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

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