Дипломная работа: Разработка программного комплекса моделирования характеристик оптических преобразователей

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Рассмотрим алгоритм построения функции преобразования (см. Приложение 3). В первую очередь происходит инициализация массива точек, где каждому значению точки на оси абсцисс соответствует значение точки на оси ординат. После этого инициализируются переменные максимальных и минимальных значений, необходимые для расчета диапазона и чувствительности функции. Для построения функции определено информативное расстояние в 200 миллиметров, которое позволяет анализировать функцию. Далее отражающая поверхность циклически отдаляется от 0 миллиметров до 200 миллиметров с инкрементальным шагом равным 1 миллиметр. На каждом шаге исследуются 10000 лучей, для повышения точности анализа, распространяющихся от нулевого угла, который падает перпендикулярно плоскости до максимального угла распространения света светодиодом. По закону отражения света от поверхности угол падения равен углу отражения, отсюда следует вывод, что луч попадая на отражающую поверхность проходит удвоенное расстояние по оси абсцисс. Для вычисления этого расстояния рассчитывается текущий исследуемый угол , где - максимальный угол распространения света светодиодом. Если данный луч попадает в рамки принимающей поверхности фотодиода, то он сохраняется в список лучей, которые попали на принимающую поверхность при текущем расстоянии до отражающей поверхности. Далее происходит расчет тока, попавшего на фотоприемник, в соответствии с заполненными пользователем динамическими параметрами и количеством лучей, поступивших на вход фотоприемника, и полученные результаты сохраняются в массив точек. После завершения формирования массива данные отображаются в виде графика и формируются значения для таблицы, как было продемонстрировано ранее.

Рис. 14 Подключение библиотеки для работы с excel файлами

Рассмотрим алгоритм выгрузки результатов работы программы в excel-файл (см. Приложение 4). Для работы с excel таблицами используется библиотека Apache POI. Данная библиотека подключается с помощью настройки конфигурационного файла Maven, путем добавления зависимости (рис. 14).

На вход функция принимает один параметр в виде списка моделей List<ExcelModel>, который содержит в себе заданные значения, выбранный датчик и результаты моделирования. После этого формируется, объект HSSFWorkbook, который формирует модель таблицы, необходимую для записи в файл. Префикс HSSF указывает на то, что необходимо создавать файл в формате *.xls. Далее создается объект таблицы Sheet, который хранит набор строк и столбцов таблицы. Затем происходит формирование первой строки таблицы путем создания объекта Row, который принимает на вход номер заполняемой строки. Для каждой строки формируется клетка, соответствующая объекту Cell, которая принимает на вход номер столбца в строке и значение. Аналогичная операция выполняется для списка моделей, которые необходимо вставить в таблицу. После заполнения таблицы данными, каждый столбец, приводится к размерам, которые позволяют видеть все содержимое столбца с помощью метода autoSizeColumn(), и сформированная таблица сохраняется в файл (рис. 15).

Рис. 15 Сформированный excel отчет

2.4 Разработка методики программных испытаний

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

Для анализа был выбран светодиод TLHE510, фотодиод с шириной принимающей поверхности 4 мм, и коэффициенты распространения среды, отражения от поверхности и шероховатости поверхности равные 0,5. При каждом следующем измерении один из коэффициентов поочередно был установлен в значение, равное 1 (рис. 16).

Рис. 16 Исследование зависимости функции преобразования от коэффициентов

Из построенной функции видно, что при увеличении одного из коэффициентов от 0.5 до 1, точка максимума функции преобразования возрастает прямо пропорционально значению измененного коэффициента. Соответственно, при изменении всех трех коэффициентов с 0.5 до 1 значение точки максимума функции увеличивается в 8 раз (отношение точки максимума синего графика к красному).

Рис. 17 Исследование зависимости функции преобразования от расстояния до фотоприемника

Рассмотрим функции преобразования для оптического преобразователя линейных перемещений при увеличении расстояния до фотоприемника. Для проверки были выбраны расстояния от светодиода до фотоприемника 20 мм, 40 мм, 60 мм (рис. 17).

Красным изображен график с расстоянием до фотоприемника 20 мм, оранжевым - 40 мм, зеленым - 60 мм. Из графика видно, что при увеличении расстояния до фотоприемника уменьшается точка максимума функции и увеличивается диапазон функции. Данное поведение обусловлено уменьшением количества лучей, попадающих на фотоприемник. Диапазон функции увеличивается из-за более длительного достижения точки максимума. Также, кроме сравнения функции были протестированы стандартные математические операции над функциями, такие как умножение, деление, сложение и вычитание.

Рассмотрим зависимость функции преобразования с фотоприемниками с различной шириной поверхности 4 мм, 5 мм и 6 мм соответственно (рис. 18).

Рис. 18 Исследование зависимости функции преобразования от ширины фотоприемника

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

Рис. 19 Сохранение результатов анализа оптических преобразователей линейных перемещений

Протестируем сохранение данных в excel файл. Для этого построим 4 функции преобразования и нажмем на кнопку “Сохранить отчет” Далее необходимо выбрать расположение генерируемого файла и нажать кнопку “Сохранить”. В результате в указанном месте сохранения создан файл с полученными результатами при построении функции (рис. 19).

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

Заключение

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

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

2) Построена математическая модель для оптических преобразователей линейных перемещений.

3) Разработанная математическая модель внедрена в программное обеспечение.

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

5) Проведено тестирование программного обеспечения для проверки достоверности полученных результатов.

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

Перечень сокращений

ПО - программное обеспечение

JVM - Java Virtual Machine

JRE - Java Runtime Environment

MVC - Model View Controller

Список использованных источников

1. Зак Е.А., Волоконно-оптические преобразователи с внешней модуляцией. М. Энергоатомиздат, 1989.

2. Крупкина Т.Ю., Пивкин А.Г., Способ измерения микроперемещения и волоконно-оптический преобразователь перемещения для его осуществления // Труды Международного симпозиума «Надежность и качество». 2006.

3. Ruzicka V., JavaFX Tutorial: FXML and SceneBuilder. URL: https://habr.com/ru/post/474982/ (дата обращения 23.03.2020).

4. Brandi P., Architecture Patterns: Model-View-Controller. URL: https://android.jlelse.eu/architecture-patterns-model-view-controller-de312417b4bd (дата обращения 26.03.2020).

5. Pop D., Altar A., Designing an MVC Model for Rapid Web Application Development // Procedia engineering. 2014.

6. Закон Бугера-Ламберта-Бера. URL: https://www.booksite.ru/fulltext/1/001/008/001/732.htm (дата обращения 26.03.2020).

7.

Приложения

Ввод десятичных значений

Чтение и запись файла

Расчет функции преобразования

Приложение Формирование excel отчета