Академический Документы
Профессиональный Документы
Культура Документы
(СПбГЭТУ «ЛЭТИ»)
К защите допустить
Зав. кафедрой Филатов Ю.В.
Санкт-Петербург
2020
ЗАДАНИЕ НА ВЫПУСКНУЮ КВАЛИФИКАЦИОННУЮ РАБОТУ
Утверждаю
Зав. кафедрой ЛИНС
Филатов Ю.В.
« » 2020г.
4
ABSTRACT
5
СОДЕРЖАНИЕ
ВВЕДЕНИЕ ................................................................................................... 9
6
Глава 3. АПРОБАЦИЯ АЛГОРИТМА НА ЭКСПЕРИМЕНТАЛЬНЫХ
ДАННЫХ ........................................................................................................... 45
ЗАКЛЮЧЕНИЕ ................................................................................................. 64
7
ОБОЗНАЧЕНИЯ И СОКРАЩЕНИЯ
ПВ — путеизмерительный вагон
РП — рельсовый путь
ЖД — железная дорога
ЖП — железнодорожный путь
8
ВВЕДЕНИЕ
9
Глава 1. ОБЗОР СОВРЕМЕННЫХ МЕТОДОВ И СРЕДСТВ
ДИАГНОСТИКИ РЕЛЬСОВОГО ПУТИ
11
различных повреждений. Принято использовать следующую структуру
кодового обозначения:
первая цифра кода указывает на тип дефекта рельсов и место его
возникновения (головка, шейка, подошва);
вторая цифра указывает на вид дефекта рельсов с учетом ключевой
причины его появления и развития;
третья цифра обозначает место расположения изъяна по длине
рельса (отсутствие третьей цифры, означает, что дефект может быть
на любом участке рельса).
Таблица 1.1 – классификация дефектов
Расположение Схематическое
Наименование дефекта и основная Кодовое
дефекта по изображение
причина его появления обозначение
длине рельсов дефекта
Трещины и выкрашивания
металла на поверхности катания
В стыке 10.1
головки из-за нарушений
вне стыка 10.2
технологии изготовления рельсов
(волосовин, закатов и пр.)
Выкрашивание металла
на боковой рабочей выкружке
головки из-за недостаточной В стыке 11.1
прочности металла рельсов и вне стыка 11.2
наличия местных скоплений
неметаллических включений.
12
окончание табл. 1.1
Отслоение и выкрашивание
закаленного слоя на поверхности В стыке 17.1
катания слое головки рельса (при вне стыка 17.2
отсутствии наплавки)
Выкрашивание наплавленного
слоя на поверхности катания 18.1
В любом месте
головки рельса из-за нарушения 18.2
технологии наплавки
13
оценки состояния пути, установление причин различных неисправностей,
рекомендации по исключению этих неисправностей.
Широко применяют следующие группы средств диагностики:
путеизмерительные вагоны (ПВ) и вагоны-лаборатории для комплексной
диагностики рельсовых нитей; тележки и шаблоны – ручные
измерительные средства, применяемые для текущего контроля размеров
пути.
Путеизмерительным вагоном называют подвижный вагон,
оснащенный специальными приборами, используемый для полного
скоростного контроля состояния рельсовых путей под динамической
нагрузкой. Вагоны оборудованы компьютерами для записи и расшифровки
полученной информации, применяя системы спутниковой навигации. Это
дает возможность проверять и оценивать ситуацию на рельсовых путях.
Обследовать можно тысячи километров с непрерывной записью по
основным контролируемым параметрам рельсовой колеи и
вспомогательным динамическим параметрам.
В каждой стране контролируемые параметры несколько различны.
Так, для РФ в путевом хозяйстве железных дорог, этими параметрами
являются: ширина колеи (шаблон), взаимное положение рельсовых нитей
по высоте (уровень), горизонтальная стрела изгиба (рихтовка),
вертикальная стрела изгиба (просадка).
Измерения осуществляются двумя способами:
1. контактным способом – с помощью специальных механизмов
(роликов, измерительных тележек), которые непосредственно
контактируют с рельсовой колеей;
2. бесконтактным способом (лазерными и оптическими
дальномерами).
На железнодорожных путях мира встречается большое разнообразие
ПВ, среди которых можно выделить созданные:
в США – разработки компании ENSCO (рисунок 1.1, а) и фирмы
14
Burlington Northern Santa Fe [4; 5];
в Германии – OMWE;
в Австрии − EM100U фирмы Plasser & Theurer (рисунок 1.1, б) [6];
в Швейцарии – разработки компании Matisa (рисунок 1.1, в) [7];
в Италии – путеизмерители компании MerMec (рисунок 1.1, г) [8].
Следует также выделить произведенные в США системы на
комбинированном ходу TrackSTAR производства Holland (рисунок 1.1, д)
[4] (на базе грузовика) и Track-Inspector фирмы Nordo (на базе джипа).
Среди отечественных разработчиков ПВ наиболее распространены:
ЗАО «Промышленно-инновационная компания «Прогресс»»
(вагоны ЦНИИ, рисунок 1.1, е) [9];
ЗАО Научно-производственный центр ИНФОТРАНС (вагоны
КВЛ, диагностический комплекс «ЭРА», рисунок 1.1, ж) [10];
ЗАО «Фирма ТВЕМА» (системы на комбинированном ходу,
диагностический комплекс «ИНТЕГРАЛ», рисунок 1.1, з) [11].
Что касается путеизмерительных тележек и шаблонов, то они, в
отличие от ПВ, производят измерения ширины колеи и возвышение одного
рельса над другим без использования нагрузки на рельсы.
Путеизмерительные тележки выпускаются: механические (ПТ-2, которая
перемещается вручную) и электромеханические (РПИ, ПТ-7МК, рисунок
1.2, б и в, соответственно).
Анализируя нынешнее состояние железных дорог, делаем
заключение о том, что нужно:
повысить уровень безопасности и надежности перевозок, которые
проводятся по железнодорожным путям;
увеличить результативность диагностики рельсовых нитей;
создать статистическую базу состояния РП
15
а) ENSCO б) EM100U
в) Matisa г) MerMec
ж) ИНФОТРАНС з) Твема
Рисунок 1.1 – Самоходная путеизмерительная техника
16
а) ПТ-2 б) РПИ в) ПТ-7МК
17
выявленных дефектов на достаточном уровне для создания
статистической базы.
Похожие системы, которые находятся на одном из пассажирских
вагонов, уже нашли свое применение в ряде зарубежных стран (к примеру,
TrackMon [12, 13]).
Среди диагностических систем, применяемых на отечественных
железнодорожных путях, уделяется особое внимание коллективной
разработке сотрудников кафедры ЛИНС (СПбГЭТУ «ЛЭТИ» им. В.И.
Ульянова (Ленина)) и ООО «ИНЕРТЕХ»: малогабаритной инерциальной
системе диагностики рельсового пути (МИСД РП) InerTrack [14–16]. Эта
система уже используется на вагоне-дефектоскопе АВИКОН-03М
производства ОАО «Радиоавионика» и выполняет постоянную проверку
состояния РП. В работе Подгорной Л.Н. представлены идея построения и
алгоритмы InerTrack. [17].
Система состоит из:
зафиксированной под кузовом вагона на хребтовой балке
бесплатформенной инерциальной навигационной системы (БИНС),
(рисунок 1.3, а);
четырех микромеханических датчиков, которые располагаются на
буксах колесных пар тележки вагона (рисунок 1.3, б);
датчиков линейных перемещений (ДЛП), необходимых, чтобы
контролировать перекосы, и закрепленных между буксой и кузовом
вагона (рисунок 1.3, б);
одометра, который дает возможность привязывать результаты
сделанных измерений к пройденному по РП расстоянию;
приемной аппаратуры спутниковых навигационных систем
(ПАСНС), которая позволяет определять местоположение вагона по
найденным географическим координатам;
бортового компьютера, на котором производится алгоритм МИСД
РП;
18
16-канальной платы синхронизации моментов опросов подсистем
(рисунок 1.4).
19
Рисунок 1.4 – Плата синхронизации моментов опросов подсистем МИСД РП InerTrack
20
Рисунок 1.5 – Малогабаритная инерциальная система мониторинга рельсового пути
21
пассажирские составы. Можно отметить, что использование этого подхода
создает предпосылки для формирования статистических баз данных по
состоянию каждого участка рельсового пути. Однако для решения этой
задачи необходимым этапом является разработка алгоритмов, позволяющих
в автоматическом режиме «сводить» результаты многократных проездов
диагностических систем в единую базу данных. Именно разработка такого
алгоритма в отношении МИСД РП и является целью настоящей работы.
22
Глава 2. РАЗРАБОТКА И ОПИСАНИЕ АЛГОРИТМА ПОИСКА
ВСПЛЕСКОВ
23
17: БИНС 100 Гц: Широта от НАП СНС
18: БИНС 100 Гц: Долгота от НАП СНС
Все расчеты проводились со значениями акселерометров, то есть
рассматривались данные с 5 столбца по 8 включительно.
Для дальнейшей обработки данных необходимо определить места
установки акселерометров на тележке вагона относительно друг друга.
Построим зависимость значений каждого из четырех датчиков первой базы
от пройденного пути, при этом приводя ускорения к нулевой средней
линии. Акселерометр записывает результаты измерений в базу данных в
единицах съема. Поэтому полученные данные с модулей были
отмасштабированы по имеющимся результатам калибровки. Каждые 5 мм
происходит запись данных от акселерометра. На рисунке 2.1 представлен
график ускорений на отрезке в 7,5 метров.
24
датчиков. Под «точками», здесь и далее, будем понимать количество
отсчетов акселерометров, сделанных с периодичностью в 5 мм. В среде
Matlab, (проведенные здесь и далее вычисления реализованы в виде скрипта
в MatLab, приведенном в приложении А), были рассчитаны координаты
максимумов ускорений на данном отрезке. Каждый цвет соответствует
одному из акселерометров. Так, для красного (6 столбец) максимум
находится на координате 2310 мм, для черного (8 столбец) – на координате
3670мм, для синего – на координате 4695 (5 столбец), для желтого (7
столбец) – на координате 6090. Исходя из этого и полученного графика,
заключаем, что за первым (красным) следует второй (синий), за третьим
(черным) следует четвертый (желтый). Изобразим схематически
расположение акселерометров на тележке вагона (рисунок 2.2).
25
на 1000 м и является накапливающейся. Погрешность можно представить в
виде следующей формулы [20]:
𝑚
δ𝑆 = δ𝑆0 + (𝑚 + 𝑚1 𝑉 + 𝑚2 𝑉̇ + 3) 𝑆 + δ𝑆𝑐 + 𝜈од , (2.1)
𝑅
26
2.3 Начальные сдвиги
27
После этого, необходимо совместить каждую пару датчиков во всех
пяти проездах. Для этого все координаты значений впередиидущих
акселерометров сдвигаются на 2400 мм назад для совмещения с
позадиидущими.
Следующим шагом будет поиск всплесков внутри базы для
корректировки масштабного коэффициента одометра.
28
число, которое расширяет границы всплеска на N3·5 мм в обе стороны,
чтобы вобрать в интервал весь всплеск от начала до конца.
29
Рисунок 2.4 – Некоторые этапы алгоритма поиска оптимального сдвига всплесков
(а) – начальное положение сигналов; (б) – второй сигнал смещён направо; (в) – один из
промежуточных сдвигов; (г) – последний проверяемый сдвиг
30
где 𝑀 − математическое ожидание, 𝐷 − дисперсия.
В нашем случае под коэффициентами соответствия двух функций y1 и
y2 подразумеваются несколько значений, рассчитанных тремя разными
способами:
1. Значение линейного коэффициента корреляции Пирсона.
∑(𝑦1 (𝑖) − ̅̅̅)(𝑦
𝑦1 2 (𝑖) − ̅̅̅)
𝑦2
,
√∑(𝑦1 (𝑖) − 𝑦
̅̅̅) 2 ∑(𝑦 (𝑖) − 𝑦
̅̅̅) 2
1 2 2
∑ 𝑦1 (𝑖) · 𝑦2 (𝑖).
𝑖=0
31
2.5.2 Корректировка интервалов между всплесками
где:
S — массив значений координат точек (до всех манипуляций имеет вид: 5,
10, 15, … , n∙5 , где n — количество значений в сигнале);
i — порядковый номер значения, для которого рассчитывается новая
координата;
x0 — порядковый номер значения, являющегося концом предыдущего
всплеска (для первого всплеска принимается за 1);
x1 — порядковый номер значения, являющегося началом текущего
всплеска;
x2 — порядковый номер значения, являющегося концом текущего всплеска;
x3 — порядковый номер значения, являющегося началом следующего
всплеска (для последнего всплеска принимается значение порядкового
номера последней точки функции).
Итог работы предлагаемых алгоритмов над одним из сигналов
проиллюстрирован на рисунке 2.5.
32
На рисунках 2.5 (а) и (б) представлены графики сигналов до
изменений и после соответственно. По оси ординат отложены значения
координат ускорений S, мм. По оси абсцисс отложены значения ускорений
a, м/с2. Жёлтым прямоугольником выделена область всплеска.
На рисунке 2.5 (в) представлены два графика ΔS1,2 – зависимости шага
оси абсцисс базового и скорректированных сигналов от порядкового номера
значения, n. Графики имеют красный и синий цвета соответственно.
Формула расчёта проста:
ΔS1(n) = S1(i + 1) – S1(i),
ΔS2(n) = S2(i + 1) – S2(i),
где:
S1 — массив координат значений ускорений базового сигнала;
S2 — массив координат значений ускорений, полученный в результате
произведённых изменений.
33
По графику хорошо видно, что базовый сигнал имел постоянный шаг
по оси абсцисс (5 мм). У скорректированного сигнала сначала идёт шаг,
значительно превышающий базовый (растянутый интервал). Далее следует
короткий интервал, где шаг равен базовому (интервал координат,
соответствующих всплеску), после чего до конца графика следует интервал
с шагом ниже базового (сжатый интервал).
В результате действий пунктов 2.5.1 и 2.5.2 мы должны получить два
сигнала, которые должны хорошо накладываться друг на друга, однако для
построения на их основе общей картины, необходимо произвести ещё одно
действие — интерполяция функции измененного сигнала.
2.5.3 Интерполяция
34
нужно определить интервал, в который попадает новое значение аргумента,
и на основе значений соседних точек рассчитать новое значение функции:
35
𝑥2
Рисунок 2.7 – Линейная интерполяция. Базовая (синяя) функция 𝑦 = , построенная с
2
36
условию;
j — номер точки, в которой необходимо рассчитать значение функции.
При первом несоответствии алгоритм завершает итерацию и
запоминает полученный результат в переменную x1. Результатом его работы
будет номер ближайшей точки слева. Номер точки справа получить очень
просто: всего лишь прибавить единицу к полученному ранее номеру.
Ожидаемо, что в результате интерполяции, хоть и некоторые значения
будут искажены, но самые важные интервалы (сами всплески) не будут
тронуты, так как при их сдвиге, шаг по оси абсцисс никак не должен
меняться, соответственно в данных интервалах интерполированная функция
должна в точности повторять исходную функцию.
Блок-схема данного алгоритма поиска соседних точек для первых n
точек:
Начало
x1 = 0; j = 0;
j = j + 1;
x1 = x1 + 1;
M(j) = j·5;
+
S(x1) ≤ M(j) x1 = x1 + 1
-
x1-= x1 - 1
x2 = x1 + 1
-
+ j<n Конец
37
Итогом работы пункта 2.5 должны стать две функции значений двух
следующих друг за другом акселерометров, значения которых смещены
друг к другу на базовый сдвиг (2400мм). После, у второго сигнала все
интервалы со всплесками были сдвинуты к первому для максимальной
корреляции между ними, откорректированы интервалы между всплесками,
и, в конце концов, значения были интерполированы под равномерный шаг
(5 миллиметров). Всё это было сделано для построения корреляционной
функции данных двух датчиков.
38
использовать алгоритм, описанный в пункте 2.4, задав другие входные
параметры. Итогом этого пункта должны послужить 5 таблиц с
координатами начал и концов всех всплесков каждой из баз.
39
среднем 125 миллиметров, что соответствует 25 отметкам одометра. Более
того, погрешность между двумя базами (величина несостыковок) будет
носить накапливаемый характер от одного всплеска к другому, что вносит
необходимость относительного позиционирования проверяемых
интервалов, взамен абсолютного.
Итогом работы пунктов 2.7 и 2.8 стали 5 таблиц с координатами начал
и концов всех всплесков каждой из базы, скорректированные относительно
друг друга. Далее необходимо свести полученные данные в одну таблицу.
40
Рисунок 2.8 – объединение интервалов
(а) – первый набор интервалов; (б) – второй набор интервалов; (в) – результат
их объединения
41
Для расчёта длинны и интенсивности всплеска по каждой базе,
предполагается проверять все значения каждой из корреляционных функций
в обозначенном интервале по алгоритму:
Начало
i = x1; n = 0; s = 0;
-
i ≤ x2 Конец
+
s = s + Z(i);
-
i = i + 1; Z(i) > Q·p
n = n + 1;
где:
Z — анализируемая корреляционная функция;
x1 и x2 — порядковые номера значений корреляционной функции,
являющиеся началом и концом рассматриваемого интервала
соответственно;
i — порядковый номер проверяемого значения;
Q — значение среднего уровня шума;
p — коэффициент, определяемый наблюдателем;
n — число, результат работы алгоритма, представляет собой число значений
функции, превышающих значение Q·p;
s — число, результат работы алгоритма, представляет собой сумму значений
функции на рассматриваемом интервале.
42
Длина всплеска в миллиметрах рассчитывается по формуле:
l = n·5.
Расчёт интенсивности всплеска предполагается рассчитывать по
формуле:
𝑠
𝑓= .
𝑄·𝑛
Полученное значение позволит сравнить интенсивность данного
всплеска с остальными и оценить развитие всплеска на данном интервале с
течением времени.
Если данный коэффициент принимает значение, близкое к единице,
значит по каким-либо причинам, на исследуемом интервале в
рассматриваемой базе дефект не обнаружен.
43
8 – 12 — интенсивность всплеска по каждой базе.
К недостаткам и упущением предлагаемого алгоритма можно отнести:
при коррекциях показаний одометра мы принимаем за истину
значения по одному из датчиков, когда корректируем показания внутри
каждой базы, и значения первой базы, когда корректируем показания
между базами. Это допущение не отражается на относительных и
сравнительных расчётах, но сказывается на расчётах абсолютных
показателей, таких как координаты всплесков или их длины в итоговой
таблице данных.
алгоритм объединения всплесков при составлении одной таблицы с
интервалами из пяти хоть и довольно прост, но на участках с близко
расположенными дефектами или при анализе большого промежутка
времени понижает точности и возможности дальнейшего анализа
развития дефектов. Для более точного анализа необходима разработка
дополнительных алгоритмов, учитывающие возможные развития
ситуации.
отсутствие нормировки ускорений по скорости в частности, и в
целом упущение возможностей дополнительного анализа по остальным
данным из предоставленных баз.
44
Глава 3. АПРОБАЦИЯ АЛГОРИТМА НА ЭКСПЕРИМЕНТАЛЬНЫХ
ДАННЫХ
45
Как уже отмечалось выше, подбор интервала для поиска на нём
максимальных значений по каждому из датчиков производился в ручном
режиме. В данном случае это интервалы от 0 до 25 метров для первых трёх
баз, от 25 до 50 метров для четвёртой базы, от 30 до 55 метров для пятой
базы.
Такой не самый элегантный способ был выбран за свою простую
реализацию, но в будущем может быть разработан дополнительный
алгоритм для поиска соответствующих друг другу «первых дефектов».
Далее необходимо скорректировать позиционирование сигналов
относительно друг друга внутри каждой из баз.
46
3.3 Коррекция шага одометра
47
Рисунок 3.3 – функции соответствия. Красная – значения коэффициентов корреляции
Пирсона. Синяя – сумма перемноженных значений. Жёлтая – сумма разностей значений.
48
Рисунок 3.5 – Результат корректировки интервалов между всплесками
3.3.3 Интерполяция
49
Рисунок 3.6 - Шаг по оси абсцисс функции скорректированного сигнала до
интерполяции (красный) и после (синий)
50
6.6%), что свидетельствует о достижении поставленной цели с неплохим
результатом (степень корреляции увеличена на порядок). Сравнение
взаимного расположения функций пары датчиков приведено на рисунке 3.8:
51
которые были произведены для двух сигналов внутри одной базы.
52
между базами, высказанные в пунктах 2.5.1 и 2.8 оказались верными, что
подтверждает рисунок 3.10:
53
гораздо сильнее, чем данные между следующими друг за другом датчиками
в одной базе. Ведь между первыми временной промежуток может
составлять дни, недели и месяцы, то между вторыми — лишь несколько
секунд.
Сравнение взаимных положений пяти корреляционных функций на
отдельно взятом промежутке до корректировок и после приведено на
рисунке 3.11:
54
Значение среднего уровня шума, которое было рассчитано на основе
4.658.077 абсолютных значений корреляционных функций в координатах,
не относящихся к всплескам (в данном случае использовались локальные
таблицы значений координат всплесков, полученные в ходе выполнения
пункта 3.5), получилось равным 15.4 м2/с4. Множитель значения среднего
уровня шума (p) для сравнения со значением корреляционной функции был
принят за 10.
На основании этих значений, а также координат интервалов со
всплесками, по формулам и алгоритмам пункта 2.9 были рассчитаны
оставшиеся значения: координата всплеска, его обобщённая длинна, длина
и интенсивность по каждой базе. Пример полученных данных представлен в
таблице 3.1 – результат выявления и анализа стыков на интервале 200
метров:
Таблица 3.1 – полученные результаты
l S0 S1 S2 S3 S4 S5 I1 I2 I3 I4 I5
403,7 0,86 0,30 0,23 0,29 0,39 0,34 31,82 21,16 35,89 55,34 38,21
428,7 0,93 0,22 0,23 0,31 0,39 0,38 17,13 16,77 46,30 49,75 45,89
453,7 0,90 0,19 0,31 0,27 0,30 0,27 12,40 18,50 27,22 26,28 18,38
478,6 0,91 0,21 0,20 0,31 0,26 0,23 12,22 14,43 31,40 22,85 13,20
503,5 0,90 0,23 0,28 0,33 0,38 0,32 13,01 16,64 33,82 30,85 18,42
528,5 0,91 0,23 0,22 0,23 0,32 0,29 16,49 19,12 42,84 40,41 23,59
553,4 0,81 0,20 0,22 0,28 0,32 0,25 11,67 21,27 19,03 20,65 16,65
578,5 0,96 0,20 0,21 0,22 0,23 0,24 8,13 13,15 13,23 12,42 12,37
603,4 0,94 0,26 0,25 0,20 0,31 0,31 14,83 16,93 22,57 18,99 16,73
55
мощности по значениям ускорений, полученных с акселерометров,
разработанные в теоретической части.
Одним из основных проделанных действий являлись алгоритмы,
позволяющие повысить взаимное соответствие между сравниваемыми
сигналами как внутри одной базы, так и между базами данных. И этой цели
удалось достигнуть, увеличив средние значения коэффициентов корреляции
интервалов со всплесками на порядок.
Полученные данные, объединённые в общую таблицу можно
использовать для анализа состояния пути, оценок развития дефектов для их
своевременного ремонта.
Итогом всех действий послужила таблица на 317 строчек и 12
столбцов с информацией по каждому выявленному всплеску:
1 — координата всплеска;
2 — длина всплеска;
3 – 7 — фактическая длина всплеска по каждой базе;
8 – 12 — интенсивность всплеска по каждой базе.
К выявленным недостаткам и упущением предлагаемого
алгоритма, помимо уже разобранных, можно отнести:
плохая реализация алгоритма первого сдвига баз друг к другу.
Предложенный вариант неплохо себя показывает, только если число
сравниваемых баз невелико. Автоматизированный вариант позволит
уменьшить потраченное время на получение данных и исключит
вероятность ошибки.
после корректировок, на каждом из интервалов между всплесками,
шаг одометра является константой. Теоретически можно сделать
равномерно меняющийся по линейному закону шаг одометра, учитывая
неравномерность движения на участке
56
Глава 4. ОЦЕНКА СООТВЕТСВИЯ РАБОЧЕГО МЕСТА ПРИ
НАПИСАНИИ ВКР ТРЕБОВАНИЯМ ЭРГОНОМИКИ
57
4.2 Требования к ПЭВМ и рабочему помещению
58
где β - угол между плоскостью экрана и направлением взгляда.
59
- оптимально разместить источники света и подобрать освещенность;
- обеспечить дистанцию и угол наблюдения за монитором дисплея;
- ограничить объем информации в соответствии с возможностями
зрительной системы человека;
- для окраски помещения правильно подобрать цвета;
- цифры, буквы и другие знаки представить в удобной форме для
зрительных анализаторов;
- правильно организовать режим работы, ввести перерывы и паузы,
делать специальные упражнения для уменьшения напряжения во время
работы и последующего утомления глаз человека.
60
регулировка в диапазоне до 0,15 м и по углу наклона опорной поверхности
подставки до 20 градусов.
Клавиатура находилась на рабочей поверхности стола на расстоянии
0,25 м от края.
Во время написания дипломной работы было выбрано кресло с
подъёмно-поворотной конструкцией, которое позволяло изменять высоту и
угол наклона спинки, регулировало расстояние спинки от переднего края
сиденья. Данная конструкция обеспечивает поддержание удобной рабочей
позы, позволяет менять позу. Это позволило снизить в мышцах шейно-
плечевой области и спины статическое напряжение, что предупредило
раннее наступление утомляемости.
Рабочее кресло имеет следующие параметры, которые соответствуют
требованиям эргономики:
- ширина поверхности сиденья 0,45 м, глубина – 0,44 м;
- передний край поверхности сиденья закруглен;
- высота поверхности сиденья регулируется от 0,46 до 0,56 м, а углы
наклона поверхности сиденья регулируются вперед до 15 градусов, а назад
до 5 градусов;
- высота опорной поверхности спинки сиденья 0,5 м, ширина 0,48 м;
- в вертикальной плоскости угол наклона спинки сиденья в диапазоне
±25 градусов;
- длина подлокотников сиденья 0,3 м, а ширина 0,06 м;
- высота подлокотников над сиденьем регулируется в диапазоне от
0,2 до 0,27 м, а внутреннее расстояние между подлокотниками может
меняться от 0,4 до 0,5 м.
При написании ВКР все основные требования к рабочему месту были
соблюдены. Рабочая поза была выбрана сидя, т.к. она более подходящая для
работ за ПК, данная поза соответствует ГОСТ Р ИСО 9241-5-2009. При
написании ВКР в основном бедра располагались горизонтально, ноги от
ступни до колена – вертикально, плечи – вертикально, предплечья –
61
горизонтально, позвоночник – вертикально, ступни – вертикально по
отношению к подколенной части ног. Во время работы почти не
требовалось сгибать или разгибать запястья, отсутствовали скручивания в
верхней части туловища.
Схема рабочего места оператора приведена ниже на рисунке 4.1.
62
4.4 Выводы по главе 4
63
ЗАКЛЮЧЕНИЕ
64
использовать для анализа состояния пути, оценок развития дефектов для их
своевременного ремонта.
Итогом всех действий послужила таблица на 317 строчек и 12
столбцов с информацией по каждому выявленному всплеску:
1 — координата всплеска;
2 — длина всплеска;
3 – 7 — фактическая длина всплеска по каждой базе;
8 – 12 — интенсивность всплеска по каждой базе.
И наконец, была выполнена оценка соответствия рабочего места при
написании данной работы требованиям эргономики.
Во время работы на ПК необходимо соблюдать правила безопасности
жизнедеятельности, а так же придерживаться правил и требований, при
соблюдении которых работа будет с минимальным риском для здоровья и
безопасности человека.
Необходимо соблюдать нормы труда при работе за компьютером,
проявлять внимательность к позе (положению тела), расстоянию от глаз до
экрана, расположению с учетом эргономики необходимых устройств около
рабочего места и непосредственно на нем, делать перерывы в работе на
упражнения для глаз и тела. Все это способствует комфортной работе
оператора, уменьшению физических, зрительных и умственных нагрузок.
65
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
66
обращения: 04.05.2020).
67
измерительные и управляющие системы (приборостроение), Автореферат.
68
Приложение А. Код программы в среде Matlab
clear all;
format compact;
A_def = 10001; %для приведения к единой длинне всех баз после их сдвига (5
база сдигается почти на 10к)
A = 989520 + A_def - 1 + 480; %сколько считать строк (фактически считается
на 10480к больше)
B = 0; %с какой позиции
ch1 = 0;
ch2 = 0;
ch3 = 0;
num = int2str(j);
file = strcat('C:\',num,'.txt');
[z1, z2, z3, z4] = textread(file,'%*f %*f %*f %*f %f %f %f %f %*f %*f %*f
%*f %*f %*f %*f %*f %*f %*f',A,'headerlines',B);%,A,'headerlines',B;A -
колличество читаемых строк, B - с какой строки читать
%1 2 3 4 5 6 7 8 9 10 11
12 13 14 15 16 17 18
Z1 = Z1/18.72;
Z2 = Z2/18.72;
Z3 = Z3/18.72;
Z4 = Z4/18.72;
69
min_max = [ 1 1 1 5001 6001;
5000 5000 5000 10000 11000];
[~,ind1] = max(Z1(min_max(1,j):min_max(2,j)));
[~,ind2] = max(Z2(min_max(1,j):min_max(2,j)));
[~,ind3] = max(Z3(min_max(1,j):min_max(2,j)));
[~,ind4] = max(Z4(min_max(1,j):min_max(2,j)));
%поиск всплесков +
for i = 50:length(Z2)
if abs(Z2(i)) >= N1
f1 = f1 + 1;
if f1 >= M1 && f2 == 0
surge(1,s) = i - M1 - N3; %координата начала
Z_vs(i - M1 - 20) = max(Z2)*0.8;
70
f2 = 1;
f3 = 0;
end
else
f1 = 0;
end
if f3 >= M2 && f2 == 1
surge(2,s) = i - M2 + N3; %координата конца
Z_vs(i - M2 + 20) = max(Z2)*0.8;
f2 = 0;
s = s + 1;
end
if f2 == 1
if abs(Z2(i)) <= N2
f3 = f3 + 1;
else
f3 = 0;
end
end
end
% figure(j);
% subplot(3, 1, 2);
% plot(1:length(Z_vs),Z_vs);
clear a1 a2;
%анализ смещений +
for p = 2:size(surge, 2) - 1
x1 = surge(1, p); %начало всплеска
x2 = surge(2, p); %конец всплеска
x0 = surge(2, p - 1); %конец предыдущего всплеска (для первого x0 = 1)
x3 = surge(1, p + 1); %начало следующего всплеска (для последнего x3 =
length(X1)
71
%масштабирование
for i = 1:length(del)
del(i) = del(i)*-1*k2 + 1;
in(i) = in(i)*k1;
end
%величина сдвига+
[~,ind1] = max(cor(1:end));
[~,ind2] = max(in(1:end));
[~,ind3] = max(del(1:end));
DEF(p - 1) = def;
X_def = diff(X2);
72
[X_max,X_ind] = max(X_def);
X2n = X1;
Z2n = zeros(1, length(Z1));
x1 = 0;
%интерполяция +
for i = 1:length(X1) - 1
x1 = x1 + 1;
if X2(x1) <= i*5
while X2(x1 + 1) <= i*5
x1 = x1 + 1;
end
else
if (x1 - 1) == 0
x1 = 0;
Z2n(i) = Z2(1);
end
x1 = x1 - 1;
end
if x1 ~= 0
Z2n(i) = Z2(x1) + (X2n(i) - X2(x1))/(X2(x1 + 1) - X2(x1))*(Z2(x1 + 1) -
Z2(x1));
end
end
Z2n(length(Z2n)) = Z2(length(Z2));
X2n(length(X2n)) = X2(length(X2));
%интерполяция -
Z2 = Z2n';
clear Z2n;
X2 = X2n;
clear surge;
for i = 1:length(Z1)
Z(j,i) = Z1(i)*Z2(i);
end
XZ(j,:) = (1:length(Z(j,:)))*5;
% figure(j);
% subplot(3, 1, 3);
% plot(XZ(j,:),abs(Z(j,:)));
%
% figure(j);
% subplot(3, 1, 1);
% plot(X2,Z2,'-b',X1,Z1,'-r');
%
%
% figure(100);
% subplot(baz, 1, j);
% plot(XZ(j,:),abs(Z(j,:)));
73
clear DEF;
end
ch1
ch2
ch3
figure(baz + 2);
subplot(2,1,1)
if baz == 2
plot(XZ(1,:),abs(Z(1,:)),'-r',XZ(2,:),abs(Z(2,:)),'-b');
end
if baz == 3
plot(XZ(1,:),abs(Z(1,:)),'-r',XZ(2,:),abs(Z(2,:)),'-
b',XZ(3,:),abs(Z(3,:)),'-k');
end
if baz == 4
plot(XZ(1,:),abs(Z(1,:)),'-r',XZ(2,:),abs(Z(2,:)),'-
b',XZ(3,:),abs(Z(3,:)),'-k',XZ(4,:),abs(Z(4,:)),'-g');
end
if baz == 5
plot(XZ(1,:)/1000,abs(Z(1,:)),'-r',XZ(2,:)/1000,abs(Z(2,:)),'-
b',XZ(3,:)/1000,abs(Z(3,:)),'-k',XZ(4,:)/1000,abs(Z(4,:)),'-
g',XZ(5,:)/1000,abs(Z(5,:)),'-m');
xlabel({"Расстояние, м";"(а)"});
end
%---------------------------------------------------------------------------
---------%
%работа с корреляционными функциями
% figure(baz + 1);
% if (baz > 1)
% for i = 1:baz
% subplot(baz,1,i)
% plot(XZ, abs(Z(i,:)),'-b');
% end
% else
% plot(XZ, abs(Z(i,:)),'-b');
% end
% figure(baz + 1);
% subplot(3, 1, 1);
% plot(XZ(1,:),abs(Z(1,:)),'-r',XZ(2,:),abs(Z(2,:)),'-b');
for j = 1:baz - 1
74
s = 1; %счётчик всплесков, в первую позицию забиваем начальную точку
surge(1,1) = 1;
surge(2,1) = 1;
s = s + 1;
%поиск всплесков +
for i = 50:length(Z(j,:))
if abs(Z(j,i)) >= N1
f1 = f1 + 1;
if f1 >= M1 && f2 == 0
if j == 1
surge(1,s) = i - M1 - N3 - 100;
Z_vs(i - M1 - N3- 100) = 1;
else
end
f2 = 1;
f3 = 0;
end
else
f1 = 0;
end
if f3 >= M2 && f2 == 1
if j == 3
surge(2,s) = i - M1 - N3 + 180;
Z_vs(i - M1 - N3 + 180) = 1;
else
surge(2,s) = i - M2 + N3; %координата конца
Z_vs(i - M2 + N3) = 1;
end
f2 = 0;
s = s + 1;
end
if f2 == 1
if abs(Z(j,i)) <= N2
f3 = f3 + 1;
else
f3 = 0;
end
end
end
75
%рассчёт текущей корреляции интервалов всплесков +
for i = 2:size(surge, 2) - 1
a1 = Z(j,surge(1,i):surge(2,i))';
a2 = Z(j + 1,surge(1,i):surge(2,i))';
COR1(l1) = corr(a1,a2);
l1 = l1 + 1;
end
%рассчёт текущей корреляции интервалов всплесков -
figure(baz + 1);
subplot(baz + 1, 1, j);
plot(1:length(Z_vs),Z_vs);
%анализ смещений +
for p = 2:size(surge, 2) - 1
x1 = surge(1, p); %начало всплеска
x2 = surge(2, p); %конец всплеска
x0 = surge(2, p - 1); %конец предыдущего всплеска (для первого x0 = 1)
x3 = surge(1, p + 1); %начало следующего всплеска (для последнего x3 =
length(X1)
dop = 100;
for i = 0:n-1
if i < n/2 + i_2
a1 = Z(j,x1:x2 + n/2 - 1 - i + i_2)';
a2 = Z(j+1,x1 - n/2 + 1 + i - i_2:x2)';
else
a1 = Z(j,x1 - (i - n/2 + 1 - i_2):x2)';
a2 = Z(j+1,x1:x2 + i - n/2 - i_2 + 1)';
end
cor(n - i) = corr(a1,a2);
in(n - i) = sum(a1.*a2);
del(n - i) = sum(abs(a1 - a2));
end
%сдвиги и рассчёт коэффициентов соотвествия -
%масштабирование
for i = 1:length(del)
del(i) = del(i)*-1*k2+1;
in(i) = in(i)*k1;
end
if j == 3 && p == 285
figure(200);
plot(x,del,x,in,x,cor);
76
end
%величина сдвига+
[~,ind1] = max(cor(1:end));
[~,ind2] = max(in(1:end));
[~,ind3] = max(del(1:end));
end
end
end
end
%величина сдвига-
DEF(p - 1) = def;
Xn = (1:length(XZ(j,:)))*5;
Zn = zeros(1, length(Z(j,:)));
x1 = 0;
%интерполяция +
for i = 1:length(XZ(j + 1,:)) - 1
x1 = x1 + 1;
if XZ(j + 1,x1) <= i*5
while XZ(j + 1,x1 + 1) <= i*5
77
x1 = x1 + 1;
end
else
if (x1 - 1) == 0
x1 = 0;
Zn(i) = Z(j + 1,1);
end
x1 = x1 - 1;
end
if x1 ~= 0
Zn(i) = Z(j + 1,x1) + (Xn(i) - XZ(j + 1,x1))/(XZ(j + 1,x1 + 1) - XZ(j +
1,x1))*(Z(j + 1,x1 + 1) - Z(j + 1,x1));
end
end
Zn(length(Zn)) = Z(j + 1,length(Z(j,:)));
%интерполяция -
for i = 2:length(surge)
unvs = Z(j,surge(2,i - 1) + 1:surge(1,i) - 1);
sum_unvs = sum_unvs + sum(abs(unvs));
in_unvs = in_unvs + surge(1,i) - surge(2,i - 1);
end
surge(:,1) = [];
if j == 1
surge1 = surge;
end
if j == 2
surge2 = surge;
end
if j == 3
surge3 = surge;
end
if j == 4
surge4 = surge;
end
clear surge;
78
figure(100 + j);
plot(DEF);
xlabel("Номер всплеска");
ylabel("Величина сдвига, отсчёты одометра");
clear DEF;
%
% DEF2 = diff(DEF);
%
% figure(6);
% plot(1:length(DEF),DEF,'-r');
%
% figure(7);
% plot(1:length(DEF2),abs(DEF2),'-r');
end
figure(baz + 2);
subplot(2,1,2)
if baz == 2
plot(XZ(1,:),abs(Z(1,:)),'-r',XZ(2,:),abs(Z(2,:)),'-b');
end
if baz == 3
plot(XZ(1,:),abs(Z(1,:)),'-r',XZ(2,:),abs(Z(2,:)),'-
b',XZ(3,:),abs(Z(3,:)),'-k');
end
if baz == 4
plot(XZ(1,:),abs(Z(1,:)),'-r',XZ(2,:),abs(Z(2,:)),'-
b',XZ(3,:),abs(Z(3,:)),'-k',XZ(4,:),abs(Z(4,:)),'-g');
end
if baz == 5
plot(XZ(1,:)/1000,abs(Z(1,:)),'-r',XZ(2,:)/1000,abs(Z(2,:)),'-
b',XZ(3,:)/1000,abs(Z(3,:)),'-k',XZ(4,:)/1000,abs(Z(4,:)),'-
g',XZ(5,:)/1000,abs(Z(5,:)),'-m');
xlabel({"Расстояние, м";"(б)"});
ylabel(" Ускорения, м/с^2");
fixfig(7);
end
%---------------------------------------------------------------------------
----------------------------%
%последняя база, имеет номер = baz
%поиск всплесков +
for i = 50:length(Z(baz,:))
if abs(Z(baz,i)) >= N1
f1 = f1 + 1;
if f1 >= M1 && f2 == 0
surge(1,s) = i - M1 - N3; %координата начала
Z_vs(i - M1 - N3) = 1;
79
f2 = 1;
f3 = 0;
end
else
f1 = 0;
end
if f3 >= M2 && f2 == 1
surge(2,s) = i - M2 + N3; %координата конца
Z_vs(i - M2 + N3) = 1;
f2 = 0;
s = s + 1;
end
if f2 == 1
if abs(Z(baz,i)) <= N2
f3 = f3 + 1;
else
f3 = 0;
end
end
end
figure(baz + 1);
subplot(baz + 1, 1, 5);
plot(1:length(Z_vs),Z_vs);
surge(1, s) = length(Z(2,:));
surge(2, s) = length(Z(2,:));
% figure(baz + 1);
% subplot(baz + 1, 1, baz);
% plot(1:length(Z_vs),Z_vs);
for i = 2:length(surge)
unvs = Z(1,surge(2,i - 1) + 1:surge(1,i) - 1);
sum_unvs = sum_unvs + sum(abs(unvs));
in_unvs = in_unvs + surge(1,i) - surge(2,i - 1);
l3 = l3 + 1;
end
l3 = l3 - 2;
surge(:,1) = [];
if baz == 2
surge2 = surge;
surge1
surge2
end
if baz == 3
surge3 = surge;
surge1
surge2
surge3
end
80
if baz == 4
surge4 = surge;
surge1
surge2
surge3
surge4
end
if baz == 5
surge5 = surge;
surge1
surge2
surge3
surge4
surge5
end
kef_unvs = sum_unvs/in_unvs;
kef_unvs
clear in k x1 x2 x3 x4 x surge data;
Z_new = zeros(1,length(Z(1,:)));
Z_new2 = zeros(1,length(Z(1,:)));
Z_new2(surge3(2,1)) = 1;
Z_new2(surge3(1,2)) = 1;
Z_new2(surge3(2,2)) = 1;
Z_new2(surge3(2,3)) = 1;
Z_new2(surge1(1,1)) = 1;
Z_new2(surge1(1,2)) = 1;
for i = 1:length(surge1)
for j = surge1(1,i):surge1(2,i)
Z_new(j) = 1;
end
end
for i = 1:length(surge2)
for j = surge2(1,i):surge2(2,i)
Z_new(j) = 1;
end
end
for i = 1:length(surge3)
for j = surge3(1,i):surge3(2,i)
Z_new(j) = 1;
end
end
for i = 1:length(surge4)
for j = surge4(1,i):surge4(2,i)
Z_new(j) = 1;
end
end
for i = 1:length(surge5)
for j = surge5(1,i):surge5(2,i)
81
Z_new(j) = 1;
end
end
figure(baz + 1);
subplot(baz + 1, 1, 6);
plot(Z_new);
figure(baz + 3);
subplot(3, 1, 3);
plot((1:length(Z_new2))/200,Z_new2);
xlabel({'Координата, м';'(в)'});;
fixfig(8);
% figure(7);
% subplot(3,1,3);
% plot(Z_new);
s = 1;
f = 0;
for i = 1:length(Z_new) - 1
if Z_new(i) > 0 && f == 0
surge(1,s) = i;
f = 1;
end
if Z_new(i) == 0 && f == 1
surge(2,s) = i;
f = 0;
s = s + 1;
end
end
for i = 1:size(surge, 2)
x1 = surge(1,i);
x2 = surge(2,i);
%data(i, 1) = i;
data(i, 1) = (x2 + x1)/2/200;
data(i, 2) = (x2 - x1)/200;
for j = 1:baz
Zn = abs(Z(j,x1:x2));
A = Zn > kef_unvs*10;
data(i, 2 + j) = length(Zn(A))/200;
data(i, 2 + baz + j) = sum(Zn)/kef_unvs/(x2 - x1);
end
end
82