Файл: Средства разработки клиентских программ (Аспекты разработки клиентских программ в области систем мониторинга для сельского хозяйства).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 25.06.2023

Просмотров: 74

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

ВВЕДЕНИЕ

ГЛАВА 1 ТЕОРЕТИЧЕСКИЕ АСПЕКТЫ РАЗРАБОТКИ КЛИЕНТСКИХ ПРОГРАММ В ОБЛАСТИ СИСТЕМ МОНИТОРИНГА ДЛЯ СЕЛЬСКОГО ХОЗЯЙСТВА

Объекты систем мониторинга

ГЛАВА 2 РАЗРАБОТКА КЛИЕНТСКИХ ПРОГРАММ

2.1Разработка структурной схемы теплицы с расположением датчиков

2.3 Разработка схемы подключения датчиков

2.4Разработка электрической схемы

2.5Разработка архитектуры системы мониторинга.

2.6Разработка метода отправки данных.

2.7Выбор используемых сервисов в облачной платформе.

ГЛАВА 3 ПРАКТИЧЕСКАЯ ЧАСТЬ

Создание датчиков

3.3 Тестирование системы

3.4 Анализ полученных результатов.

3.5 Развертывание сервера-брокера на облачной платформе

3.6 Развертывание облачного приложения по хранению в базе данных.

3.7 Тестирование облачного приложения.

3.8 Разработка клиентского приложения.

3.9 Описание клиентского приложения.

ЗАКЛЮЧЕНИЕ

СПИСОК ЛИТЕРАТУРЫ

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

  1. Самообслуживание по требованию – потребитель самостоятельно имеет возможность использовать те или иные вычислительные возможности без надобности обращения к поставщику.
  2. Широкая доступность через Интернет – с помощью любого устройства, имеющим доступ к Интернет сети, потребитель может обращаться к облаку.
  3. Объединение ресурсов в пул – все физические и виртуальные ресурсы объединяются в один пул, который доступен потребителю. Сам потребитель не имеет знаний о местонахождении ресурсов на составляющих облаков.
  4. Быстрая адаптация ресурсов – все ресурсы облака, которые использует потребитель, масштабируются в зависимости от возможностей самого потребителя. К примеру, потребитель может потребовать больше ресурсов на какой-либо проект. Он может сразу же расширить их, дополнительно оплатив за это, без обращения к поставщику. Также, имеет место пример, в котором потребитель, наоборот, меняет тариф, где предоставляется меньше ресурсов.
  5. Измеримая услуга – все ресурсы, предоставляемые поставщиком, оцениваются, контролируются и управляются через измеряемые абстрактные параметры. Данные параметры влияют на оказание услуг.
  6. Надежность – облачные ресурсы по сравнению с локальными имеют гораздо выше надежность, так как вероятность возникновения проблем с облаком крайне мала.

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

Все модели обслуживания облачных вычислений делятся на три категории:

  1. SaaS (Software as a Service) – потребителю предоставляется ПО, работающее на облачных вычислениях (Примеры: Google Drive, Dropbox)
  2. PaaS (Platform as a Service) – потребителю предоставляются средства для развертывания на облачных вычислений собственные ПО, которые могут быть созданы с помощью предоставляемых самим поставщиком инструментов.
  3. IaaS (Infrastructure as a Service) – потребителю предоставляется возможность развертывание произвольного ПО, в том числе и операционные системы.

Для реализации системы мониторинга наилучшим вариантом модели предоставления облачных вычислений будет PaaS.

Существует множество облачных платформ от различных крупных IT-компаний. К примеру, Windows Azure от Microsoft, Beanstalk от Amazon, Bluemix от IBM. Выбор облачной платформы осуществлялся среди выше предложенных.

Оценивались следующие требования от PaaS: доступность, предоставляемые услуги и ресурсы. Все три облачные платформы предоставляют бесплатный доступ к своим сервисам. Это возможно при наличии студенческого удостоверения. Среди предоставляемых услуг и ресурсов следующие были самыми предпочтительными: сервисы работы с Интернетом Вещей, сервисы базы данных. Каждая платформа предоставляет почти одинаковый набор необходимых сервисов и ресурсов.

Кроме данных критериев также оценивалось предоставляемое ПО поставщиками. Поставщики данных платформ предлагают собственные SDK для разработки на популярных языках программирования, а также IDE для разработок на этих языках. Дополнительно, IBM предоставляет собственную визуальную среду программирования NODE-RED, которая управляет потоком информации. Данная среда программирования проста в использовании, интуитивна и позволяет объединять использование облачных сервисов.

После анализа платформ по данным критериям выбор пал на IBM Bluemix как самый оптимальный выбор.

ГЛАВА 2 РАЗРАБОТКА КЛИЕНТСКИХ ПРОГРАММ

2.1Разработка структурной схемы теплицы с расположением датчиков

С точки зрения метрологии, данные с показателя одного датчика не всегда являются надежными, так как в случае, например, с датчиком температуры в теплице, показания могут сильно различаться в случае, когда солнце светит на датчик, и его температура выше, и когда датчик находится в тени, хотя в обоих этих случаях температура в теплице является одинаковой. Более того, промышленные теплицы имеют достаточно большой объем, и показаний одного датчика будет явно недостаточно. Также принимая во внимание то, что по законам физики более теплый воздух поднимается вверх, то температура внизу теплицы и вверху будет различной. Может быть случай, когда температура измеряется одним датчиком, расположенном под крышей теплицы, и находится около нижней границы температуры, когда в теплице должно включиться отопление, но температура внизу теплицы может быть на пару градусов ниже, и растения начнут замерзать. Чтобы такого не случилось необходимо измерять температуру в нескольких независимых местах в теплицы. Например, один датчик находится снизу в углу, и практически измеряет температуру земли, а второй находится сверху в противоположном углу, и измеряет только температуру воздуха. В таком случае, датчики находятся максимально друг от друга и измеряют показания разных сред, что делает совокупность их измерений наиболее правдоподобной.


Для измерения влажности были выбраны датчики DHT11, которые могут измерять температуру и влажность одновременно. Однако данные датчики подходят только для изменения влажности воздуха, они не могу получать влажность почвы, так как будут сломаны из-за короткого замыкания. Для измерения влажности воздуха подходит схема, как для измерения температуры, те же датчики будут помимо температуры изменять ещё и влажность рядом с поверхностью почвы и под крышей теплицы. Для измерения влажности самой почвы, чтобы узнать о необходимости полива, будут использоваться специальные датчики, которые погружаются в землю. Так как, в промышленном сельском хозяйстве нет возможности ставить датчик под каждое растение, используются также несколько датчиков, принимая во внимание то, что вода просачивается в почву равномерно. В нашем прототипе, исходя из размеров, будет использоваться один датчик для каждого уровня теплицы.

Для измерения освещенности в телице был выбран цифровой модуль светочувствительности LM393. Исходя из того, что в теплица является много уровневой и ее отделения находятся рядом, то для измерения освещенности в теплице можно использовать всего один модуль LM393, так как он будет показывать освещенность сразу во всех отделениях теплицы.

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

  • 4 датчика температуры и влажности DHT11 (по 2 на каждый уровень);
  • 2 датчика влажности (по 1 на каждый уровень);
  • 1 датчик освещенности LM393 (один на всю теплицу).

Полученная схема с расположением датчиков изображена на рис. 1.

Рис. 1. Схема расположения датчиков теплице

На схеме, приведенной выше, использованы следующие обозначения:

  • T1, H1 и T3, H4 обозначают температуру и влажность, полученные с датчиков DHT11, находящимся в верхней части 1 и 2 уровнях теплицы;
  • T2, H2 и T4, H5 обозначают температуру и влажность, полученные с датчиков DHT11, находящимся рядом с почвой в 1 и 2 уровнях теплицы;
  • H3 и H6 обозначают данные о влажности почвы в 1 и 2 уровнях теплицы;
  • Ev обозначает данные об освещенности в теплицы, полученные с модуля светочувствительности LM393.
    1. Разработка алгоритма сбора и обработки измеренной информации


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

  • если показания с датчика освещенности говорят о том, что уровень освещенности в теплице снизился, это может случиться потому что наступает ночь или солнце ушло за тучи, то система дает сигнал на включение освещения;
  • если показания с датчиков о влажности почвы показывают что влажность почвы стала ниже заданного пользователем уровня, то система должна выдают сигнал на полив растений;
  • если в теплице температура превышает установленную пользователем, то система должна выдать сигнал на открытие форточки;
  • если показания с датчика освещенности говорят о том, что уровень освещенности в теплице повысился, и стал достаточно сильным для установленного режима существования растений, то система дает сигнал на выключение освещения;
  • если в теплице температура становится ниже установленной пользователем, то система должна выдать сигнал на закрытие форточки;

После применения действий для поддержания микроклимата теплицы в установленном состоянии, система анализирует полученные данные на предмет аномалий, а именно, если параметры с датчиков близки к граничным значениям, которые могут измерять датчики или сильно отличаются от установленных пользователем, система фиксирует критическое состояние в теплице (это также может быть вызвано и поломкой датчика). После анализа данных данные преобразуются для отправки на облачную платформу, и если было критическое состояние, оно тоже добавляется туда. После формирования данных, данные отправляются на облачную платформу, после чего система переходит в режим ожидания, перед следующими измерениями. Это необходимо для того, чтобы у микроклимата было время для того чтобы устояться. Данным способом решается необходимость открывать форточки несколько раз, так как при последующем форточка может быть открыта на большее расстояние, пока не достигнет максимума, а если и дальше температура будет расти, то система отправить сообщение о критическом состоянии. Также каждый пользователь сможет настроить режим ожидание под себя, тем самым решая проблемы с избыточностью данных, и наоборот, их недостатком. Схема работы алгоритма приведена на рис. 2.


Рис. 2. Алгоритм сбора и обработки данных измерительной информации

2.3 Разработка схемы подключения датчиков

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

  • лампы;
  • актуаторы;
  • помпы.

Также система должна передавать данные в сеть Интернет, для этого будет использоваться Ethernet модуль. Для получения данных об освещенности используется только один датчик на все уровни, но в каждом уровне установлены свои лампы. Все управляющие и измерительные модули, а также модуль Ethernet подключены к одноплатному компьютеру. Данная схема представлена на риc. 3.

Рис. 3. Схема подключения датчиков.

2.4Разработка электрической схемы

В данном прототипе используются датчики, работающие с разным напряжением, а именно 5 и 12 вольт. Моторы, лампы и помпы используют для работы 12 вольт, а измерительные устройства используют для работы 5 вольт. Высокое напряжение, может быть опасно для микрокомпьютера, поэтому схему необходимо обезопасить, чтобы микрокомпьютер не имел прямого доступа к источникам высокого напряжения. Для этих целей отлично подойдет метод не прямого управления, где питание на элемент подается только через специальный ключ, который с свою очередь открывается с помощью более низкого напряжения. В данной схему в качестве элементов не прямого управления будут использоваться транзисторы.

В схеме актуатор должен иметь возможность вращаться в обе стороны, чтобы открывать и закрывать окно. Для решения этой задачи будет использоваться Н-мост данная схема на транзисторах позволяет управлять направлением вращения мотора, тем самым регулируя открывание и закрывание окна теплицы [28]. Электронная схема прототипа показана на рис. 8. На данном рисунке провода питания обозначены черным цветом, а провода управления и получения данных синим и красным. Это было сделано для удобной читабельности схемы. Синий и красный провода на моторах, обозначают разные направления вращения этих моторов. В соответствии и принципом работы схемы Н-моста, только один из них может иметь положительное напряжение. Комбинация, когда оба провода передают достаточное напряжение для открытия транзисторов запрещена, так как в таком случае образуется короткий путь, без участия мотора, что ведет к короткому замыканию.