Введение 4
1. Системы сбора данных 6
1.1. Определение и классификация 6
1.2. Цели и задачи 8
2. Техническое описание средств, используемых для реализации системы
сбора данных 9
2.1. Ethernet-контроллер Wiznet WIZ550io 9
2.1.1. Спецификация модуля WIZ550io 11
2.1.2. Назначение контактов разъема 12
2.1.3. Режимы работы в сети 15
2.1.4. Режим TCP сервера 15
2.1.5. Режим TCP клиента 16
2.1.6. Смешанный режим 17
2.1.7. Режим UDP 17
2.2. Последовательный интерфейс SPI 18
2.3. Ethernet 21
2.3.1. 10/100 Base-T. Спецификации физической среды 21
2.3.2. Назначение выводов разъема 22
2.3.3. Формат Ethernet - кадра 23
2.3.4. MAC-адрес 24
2.3.5. TCP/IP 25
2.4. Микросхема Wiznet W5500 27
2.5. Общие сведения о микроконтроллерах 31
2.6. Отладочный комплект Arduino Mega ADK 32
2.7. Среда разработки Arduino IDE 36
2.8. Датчик температуры и влажности DHT11 38
2.9. Сервис Thingspeak 40
3. Система сбора данных, реализованная на модуле Wiznet WIZ550io и
отладочном комплекте Arduino Mega ADK 42
3.1. Постановка цели и задачи 42
3.2. Конфигурация реализованной системы сбора данных 42
3.3. Принцип работы устройства 43
3.4. Обобщение полученных результатов системы сбора данных 44
Заключение 54
Литература 55
Приложения
Автоматизированные системы сбора данных в настоящее время являются общедоступным средством получения экспериментальной информации, и связано это, в первую очередь, с широким распространением персональных компьютеров. Системы сбора данных применяются в научных исследованиях , при управлении производственными процессами , в мониторинге промышленности, в медицине, метеорологии и других областях человеческой деятельности.
Системы сбора данных могут применяться в реальном времени, например , для мониторинга (наблюдения) различных процессов, идентификации аварийных ситуаций в технологических процессах, для управления, а также для архивирования данных , когда их обработка отделена от процедуры сбора через неопределенные интервалы времени.
Системы сбора данных могут быть построены на основе микроконтроллеров , микропроцессорных систем и Программируемой Логической Интегральной Схемы (ПЛИС). Данные, собранные на этих системах , передаются для обработки на компьютер через различные сопрягающие устройства и интерфейсы, например: последовательный интерфейс (UART - универсальный асинхронный приёмопередатчик, RS232 и т.д.), последовательный периферийны интерфейс SPI, USB-порт, или по технологии пакетной передачи данных Ethernet -порта для компьютерной сети (например, точка-точка), а также через различные флэш-накопители.
Системы сбора данных, построенные на основе компьютера, позволяют собирать и обрабатывать данные на одном и том же месте и часто с помощью одного и того же программного обеспечения (ПО), что может значительно удешевить процесс. Для сбора и обработки данных
можно использовать такие программные решения с довольно широкими возможностями, как MatLab, LabView, MS Excel и т.д.
Для регистрации быстропротекающих процессов используются системы с параллельной шиной, в том числе PCI-платы. Для регистрации медленных процессов удобнее внешние устройства , подключаемые к компьютеру через порты COM, USB или Ethernet. Внешние устройства отличаются меньшим уровнем шумов, в то время как платы, вставляемые в компьютер, подвержены влиянию наводок от цифровых цепей компьютера.
Система сбора данных может быть распределенной , когда устройства разнесены территориально, а полученные данные сходятся к единому накопителю и обработчику данных с помощью сетевых технологий. Сетевые (распределенные) системы сбора данных допускают практически неограниченное наращивание числа каналов ввода, однако имеют ограничения на скорость передачи данных. Также системы сбора данных могут быть построены по модульному принципу, т.е. систему с необходимым количеством входов можно собирать из модулей - отдельных цифровых блоков.
В связи с бурным развитием технологий и соответствующего программно-аппаратного обеспечения, произошло накопление огромных объемов разнородных данные. Это привело к тому, что в последние десятилетия особенно актуальной стала проблема оперативного анализа больших объемов разнородной информации. В данной работе рассматривается удаленный мониторинг за параметрами системы. Такая система может быть встроена в систему промышленности или домашнюю систему, подключив узлы или элементы управления.
В рамках данной работы ставились следующие задачи:
1. Прием, сбор данных с измерительного устройства.
2. Реализация подключения отладочного комплекта Arduino Mega ADK к WIZ550io по шине SPI.
3. Настройка сети типа точка-точка между сетевым модулем и персональным компьютером (ПК).
4. Интеграция двух датчиков DHT11 в комплекс.
5. Разработка кода программы для работы устройства.
6. Проведение тестирований и отладки системы, настройка передачи данных.
7. Визуализация сбора данные на сервере Thingspeak и на локальном сервере.
8. Обработка результатов в пакете MatLab.
В данной работе были рассмотрены основы построения систем сбора данных. Описаны технологии построения типовых систем сбора данных: распределенной, модульной, а также с быстро и медленно протекающими процессами. Разобраны протоколы пакетной передачи данных Ethernet и последовательный периферийный интерфейс SPI, используемые для построения систем сбора данных. Изучена документация и принцип работы Ethernet - контроллера Wiznet WIZ550io, а также его микросхемы W 5500 . Приобретен опыт работы с микроконтроллерами Atmel, в частности, с отладочным комплектом Arduino Mega ADK. Получен навык работы со средой разработки Arduino IDE и языком С++.
Собрана цифровая система, тестирование которой проводилось в течение календарного месяца с 03.04.2018 по 03.05.2018 года. За все время тестирования система показала устойчивую бесперебойную работу. В ходе работы было осуществлено:
- Настройка сети типа точка-точка между сетевым устройством и персональным компьютером (ПК).
- На отладочном комплекте Arduino Mega ADK реализовано считывание данных с датчиков температуры и влажности DHT11, которые передаются на Ethernet - контроллер WIZ550io, откуда по Ethernet-порту данные поступают на маршрутизатор и передаются на локальный сервер и облачный сервис Thingspeak в режиме реального времени.
- В среде MatLab были реализованы программы для обработки данных.