1 Обзорная часть 7
1.1 Устройство термопары 7
1.2 Типы термопар и их параметры 9
1.3 Устройсто Arduino 10
1.3.1 Аппаратная часть 10
1.3.2 Arduino UNO 11
1.3.3 Программная часть 12
1.4 Получение значений температуры с термопары 13
1.4.1 Библиотека max6675 14
1.5 Средние величины и их виды 14
1.5.1 Среднее арифметическое 15
1.5.2 Медиана 15
1.5.3 Мода 16
1.6 Язык программирования 16
1.7 Среды разработки 17
1.7.1 Eclipse 18
1.7.2 Geany 19
1.7.3 CodeLite 20
1.8 Последовательный порт (COM-порт) 21
2 Разработка и реализация программы 23
2.1 Модуль для получения данных о температуре 23
2.2 Описание экспериментальной установки 25
2.3 Программа для получение данных о температуре 25
2.4 Средства для построения графиков 26
2.5 Использование различных типов усреднений 27
2.6 Способ получения данных из COM-порта 29
2.7 Описание основной программы 30
2.7.1 Основные функции программы 33
2.8 Тестирование и получение результатов работы программмы . . . 39
Заключение 43
Список использованной литературы 44
Приложение 1 46
Приложение 2 63
Актуальность работы подтвержается следующими факторами:
1. Заказ с кафедры Физической и неорганической химии на автоматизацию научного эксперимента, который состоит в получении данных с экспериментальной установки и занесения этих данных в программу для дальнейшей работы с ними.
2. Высокая индивидуальность в написании программмы для конкретной экспериментальной установки, что означает отсутствие аналогов.
3. Повышение качества эксперимента и увеличение количества исследуемых объектов.
Цель
Основной целью работы является автоматизация процесса получения и обработки экспериментальных данных, создание удобного программного обеспечения для упрощения проведения экспериментов.
Экспериментальная установка включает в себя: вакуумный сушильный шкаф, RLC-измеритель и ЭВМ с программным обеспечением.
Для автоматизации подобного процесса необходимы датчики температуры, способные выдерживать высокие температурные нагрузки в заданном диапазоне. Таким простым и удобным датчиком температуры являются термопары.
Основными преимуществами термопар являются высокая точность и большой диапазон измерения температур.
Также дополнительной целью работы будет решение проблемы точности измерения температуры. Интерфейсом между компьютером и термопарой К-типа выступает АЦП MAX6675. Так как у данного АЦП шаг измерения температуры равен 0.25 градуса, то необходимо реализовать функцию усреднения исходных данных для получения более точных значений.
Термопары К-типа достаточно популярны в промышленности и научных исследованиях из-за того, что они затрагивают большой диапазон температур. Также у данных термопар высокий коэффициент Зеебека, небольшая цена и хорошая устойчивость к окислению.
Конечной целью является написание кроссплатформенного ПО, которое будет получать данные о температуре и других характеристиках с экспериментальной установки и выводить их в удобном для пользователя виде.
Задачи
1. Получение данных с термопары через АЦП max6675.
2. Решение проблемы точности измерения АЦП.
3. Получение данных с ”АМ-3016 Измеритель RLC” через интерфейс RS232.
4. Создание программы с командо-строчным интерфейсом.
5. Построение графиков с возможностью их вывода на экран и сохраниения.
6. Сохранение данных эксперимента в файлы.
По итогам работы:
• реализовано получение данных с термопары;
• реализовано получение данных с RLC-измерителя;
• исследовано влияние нескольких типов усреднения на; различные наборы данных
• реализовано 3 типа программных фильтров на основе разных видов усреднения;
• написана программа, полностью выполняющая поставленные задачи.
В ходе работы было создано программное обеспечение для автоматизации процесса получения данных с нескольких установок для их визуализации в виде графиков. Были усовершенствованы навыки программирования на языке C++, получен опыт программирования Arduino и работы с термопарой. Программа была передана в лабораторию физических проблем мониторинга агросистем для проведения экспериментов.