Система управления автоматизированным тепличным хозяйством
СОДЕРЖАНИЕ
ВВЕДЕНИЕ…………………………………………………………
1.ИССЛЕДОВАНИЕ ПРЕДМЕТНОЙ
1.1.Описание тепличного хозяйства………………..……………….…6
1.2.Методы устранения
существующих недостатков………………
1.3.Обзор существующего
Выводы………………………………………………………………
2.ПРОЕКТИРОВАНИЕ ПРОГРАММНОГО ПРОДУКТА...………………..13
2.1. Выбор методологии проектирования
и модели жизненного цикла программного
продукта…….…………..………………….……………
2.2. Архитектура программного продукта …………………………..18
2.3. Логическая модель…………………………………………………19
Выводы………………………………………………………………
3.РЕАЛИЗАЦИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ...………………….23
3.1.Выбор программно-аппаратной платформы……………………23
3.2. Выбор среды разработки ………………..……………………….24
3.3.Выбор системы управления базами данных………….…………25
3.4. Реализация программного продукта………………….…………26
Выводы………………………………………………………………
4.РЕАЛИЗАЦИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ...………………….35
4.1.Выбор программно-аппаратной платформы……………………35 4.2. Выбор среды разработки ………………..……………………….35
4.3.Выбор системы управления базами данных………….…………36
4.4. Тестирование на стадии внедрения ПП ……………….…………37
4.5. Предложения по сопровождению и улучшению качества разработанного ПП ……………………………………….……………….…………40
Выводы………………………………………………………………
ЗАКЛЮЧЕНИЕ……………………………………………………
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ…………………………..…..42
ВВедение
В условиях севера большое значение приобретает тепличное сельское хозяйство. Климат не позволяет круглый год выращивать растения, поэтому приходится использовать теплицы. В больших тепличных хозяйствах, используемых для промышленного использования, все процессы и показатели контролируются вручную: освещение, полив, температура, влажность. Все это требует большого персонала для соблюдения всех показателей. Большой персонал в свою очередь требует больших затрат.
В целях экономии средств разрабатываются различные средства автоматизации процессов выращивания, которые позволяют сократить расходы на содержание тепличных хозяйств, а также повысить эффективность этих процессов. Для управления автоматизированной теплицей требуется также специализированное ПО. Этим фактом обусловлена практическая значимость продукта. Программный продукт предназначен для эффективного управления автоматизированным тепличным комплексом на основе микроконтроллера Arduino Uno.
Целью курсовой работы является разработка программного продукта «Green House», предназначенного для управления автоматизированным тепличным хозяйством, предоставляющего пользователю необходимую информацию о параметрах среды и возможность управлять данным тепличным хозяйством.
Объектом исследования являются процессы управления тепличным хозяйством.
Предметом исследования – разработка программного продукта, предоставляющего информацию о состоянии теплицы и показателях среды, а также доступ пользователю к управлению основными системами теплицы (полив, вентиляция, освещение).
Для достижения цели были поставлены следующие задачи:
- изучить и проанализировать материалы по теме работы тепличного хозяйства
- построить логическую модель программного продукта
- спроектировать интерфейс и базу данных для хранения данных о состоянии теплицы, данных с датчиков, и настроек теплицы
- выбрать технологии и средства разработки
- разработать программный продукт, реализовать модули взаимодействия с контроллером и базой данных
- провести тестирование и отладку программного обеспечения
Для решения поставленных задач были применены следующие общепринятые методы исследования:
- теоретические (анализ литературы по проблеме исследования, изучение технологий программирования и программных средств, необходимых для создания ПП);
- эмпирические (выбор средств разработки);
- статистические (анализ качества разработанного программного продукта).
Новизна данной работы заключается в том, что разрабатываемый программный продукт обеспечивает возможность управления автоматизированным тепличным хозяйством с помощью персонального компьютера пользователя.
Пояснительная записка к курсовой работе выполнена на 42 страницах машинописного текста, содержит 15 рисунков 1 таблицу и 2 DFD-диаграммы. Состоит из введения, четырех разделов, заключения и 1 приложение. Список используемых источников содержит 16 работ отечественных и зарубежных авторов.
Во введении определены цель и задачи данной курсовой работы, выявлены методы исследования, обозначена новизна курсовой работы и доказана её практическая значимость.
В первом разделе произведён анализ предметной области, рассмотрена и проанализирована существующая информационная система работы тепличного хозяйства, а так же установлены требования к программному продукту.
Во втором разделе выбрана модель проектирования разрабатываемого программного продукта, рассмотрена архитектура программного обеспечения, описана логическая модель.
Третий раздел содержит описание выбора программно-аппаратной платформы для реализации проекта, выбор СУБД для реализации базы данных, представлен выбор среды разработки для модулей проекта, реализация программного продукта.
В четвертом разделе произведён анализ качества разработанного программного продукта, выявлены критерии оценки качества программного обеспечения, описаны результаты тестирования программного продукта, выдвинуты предложения по сопровождению и улучшению качества созданного программного обеспечения.
В заключении представлены результаты данной курсовой работы. Сделаны выводы в целесообразности использовании данного программного обеспечения для управления автоматизированным тепличным хозяйством.
В приложении представлены техническое задание на разработку программного продукта, документированный листинг программы.
- ИССЛЕдование предметной области
Автоматизация любой информационной системы должно начинаться с изучения предметной области. Автоматизация информационной системы без понимания того, как она устроена неэффективна и неправильна. Поэтому при разработке программного продукта для обеспечения его максимальной эффективности очень важно учитывать все особенности информационной среды, в которой будет происходить эксплуатация. Именно поэтому на стадии анализа необходимо уделить большое внимание описанию предметной области функционирования продукта. Важно составить общее понимание о предмете, изучить справочные материалы, опросить конечных пользователей.
Анализ предметной области является первым этапом построения проекта. Процесс исследования заключается в наблюдении свойств объектов с целью выявления и оценки важных, закономерных отношений между показателями данных свойств. В связи с этим в данной главе будут рассмотрены процессы работы тепличного хозяйства.
1.1. Описание работы тепличного хозяйства
Современное тепличное хозяйство - очень сложный технологический объект. Основные технологические задачи решаемые на объекте - оптимальное поддержание микроклимата (освещение, полив, поддержание оптимальной температуры) возможно решить только на уровне современных технологий, включая компьютерное управление. Для повышения урожайности теплицы важен минимальный временной режим созревания культур - он может быть достигнут при помощи интенсивных методов выращивания растений.
Интенсивные методы выращивания растений включают следующие элементы технологии:
- малообъемный метод выращивания на инертных субстратах (кокос, перлит фракции 1,5-4 мм, пемза, верховой торф с добавками, в том числе перечисленных компонентов, минеральная вата и др.);
- системы капельного полива;
- автоматизированные установки для приготовления и подачи питательных растворов, сбалансированных по концентрации и соотношению макро- и микроэлементов;
- определенные уровни рН и ЕС в растворах и дренажах;
- компьютеризированные программы поддержания микроклимата;
- светокультура для круглогодичного получения продукции;
- углекислотная подкормка растений для повышения урожайности и качества продукции, особенно в осенне-зимне-весенний период, то есть в период ограниченной вентиляции теплиц.
Все они нацелены на то, чтобы повысить урожайность растений или получать урожай там, где этого не позволяет климат, но не все аспекты тепличного хозяйства на данный момент можно автоматизировать.
Очень важная часть работы любого тепличного хозяйства – контроль качества продукции. Осуществляется два вида контроля визуальный и лабораторный. По мере поступления продукции в торговую сеть все овощи проходят производственный контроль на содержание нитратов в аттестованной лаборатории тепличного комплекса. Вся выпускаемая продукция сертифицируется (декларируется) органом по сертификации, который подтверждает качество и безопасность овощей и зелени закрытого грунта.
Продукция проверяется аккредитованными лабораториями на содержание:
- нитратов,
- остаточного количества пестицидов,
- солей тяжелых металлов,
- радионуклидов,
- на паразитарные показатели и т.п.
Соблюдается строгая технологическая дисциплина производства овощей и зелени закрытого грунта. В производстве используются материалы, имеющие сертификаты соответствия, подтверждающие их качество и безопасность. Несмотря на то что этот процесс длительный и трудоемкий и требует дополнительных затрат автоматизировать данный процесс достаточно сложно.
Несмотря на это есть процессы, полная автоматизация которых вполне осуществима. Важнейшей технологической задачей в теплице является поддержание уровня определенных показателей необходимых для быстрого роста и развития растений. Этими показателями являются:
- Температура внутри теплицы;
- Температура снаружи теплицы;
- Влажность воздуха в теплице;
- Влажность грунта в тепличных горшках;
- Уровень углекислого газа в теплице;
Из этих параметров одним из самых важных является поддержание уровня необходимой, оптимальной по спектру и уровню, освещенности.
Рост растений определяется процессами фотосинтеза, для которого главным источником энергии является свет, а темпы роста и развития растений пропорциональны уровню их освещенности. Поэтому рационально использование технологии досвечивания, особенно в зимний, весенний и осенний периоды, когда низкий уровень естественной солнечной радиации сопровождается коротким световым днем.
Использование правильных технологий
освещения позволяет вдвое
Рис.1.1 Поглощение света хлорофиллом
Поддержка всех этих параметров в нужной для каждого растения пропорции позволяет получать урожай в кратчайшие сроки, что очень важно для любого тепличного хозяйства.
1.2. Методы устранения существующих недостатков
Исходя из вышеизложенного, следует вывод о том, что процесс выращивания достаточно сложен и кропотлив, и как следствие высока вероятность ошибки в процессе выращивания, производительность труда также снижается.
Основным вариантом решения этой проблемы и устранения функциональных недочетов и является автоматизация процесса поддержания параметров среды.
Такое решение возможно только на уровне современных технологий, включая компьютерное управление.
Программный продукт в целом должен обеспечить высокую эффективность производительности труда, надежность и своевременность принимаемых мер для поддержания нужного микроклимата теплицы.
Также программный продукт призван решать следующие задачи:
- Освободить работников теплицы от трудоемкой и монотонной работы по слежению за поддержанием микроклимата в теплице;
- Предотвратить нарушения температурного режима;
- Обеспечить своевременный полив, вентиляцию;
- Сформировать отдельный цикл выращивания для каждого растения индивидуально;
Для решения данных задач программный продукт должен удовлетворять следующим требованиям:
- ПП должен предоставлять возможность ручного управления основными системами теплицы. (Полив, проветривание, освещение);
- ПП должен осуществлять контроль и вывод информации с датчиков (температура, освещение, влажность воздуха и земли, количество воды для полива, уровень углекислого газа);
- ПП должен предоставлять дополнительные функции, такие как вывод графиков по данным с датчиков и вывод отчетов в MS Excel;
- ПП должен обеспечивать создание и редактирование индивидуального профиля для каждого растения;
- ПП должен осуществлять контроль за состоянием (исправностью) датчиков;
- ПП должен оповещать пользователя о критических событиях (отсутствие воды в баке для полива)
Предполагается, что после внедрения данного ПО трудоемкость процесса выращивания и затраты на содержание большого персонала значительно уменьшаться. Таким образом, основная проблема будет решена.
1.3. Обзор существующего программного обеспечения
В России большое распространение получили малые тепличные комплексы и гидропонные микросистемы. В Хакасии представлены следующие поставщики тепличных комплексов:
1. ЮВИС, ООО, торговая компания;
2. Производственная компания, ИП Влотников И.И.
3. Завод МЕТАЛЛ-СЕРВИС
Максимум автоматизации этих теплиц представляет собой включение выключения света при помощи простейшего реле или, как в случае завода МЕТАЛЛ-СЕРВИС, автоматическое открытие форточки.
Интеллектуальное комплексное управление выращиванием продукции по циклу отсутствует.
Для крупных тепличных хозяйств, свойственны большие размахи и сдача теплицы под ключ, что несет большие расходы для производителя.
Пример: ЗАО "Курскпромтеплица"
производит металлоконструкции современных
зимних блочных и пленочных теплиц,
систем зашторивания и отопления, осуществляет
полный цикл услуг в области
Необходимо отметить, что в вышеперечисленных примерах поставки теплиц отсутствуют пункты минимизация участия человека в выращивании продукции за счет компьютерного управления, а также отсутствует пункт экономии энергоресурсов.
Выводы:
- В ходе изучения предметной области – была проанализирован процесс интенсивного выращивания растений в теплице и доказана необходимость его автоматизации.
- Исходя из основных требований к процессу выращивания растений , были разработаны требования к программному продукту.
- Были проанализированы существующие системы автоматизации, выявлены их недостатки, доказано их несоответствие задачам автоматизации процесса выращивания.
- ПрОектирование программного продукта
При проектировании особое внимание было уделено структуре программного продукта. От правильного проектирования структуры программного продукта зависит качество его функционирования. На этапе проектировании важно правильно подобрать методологию, по которой будет создаваться программный продукт, модель жизненного цикла, и тщательно разработать его общую архитектуру.
2.1.Выбор методологии
проектирования и модели
Каскадная модель — модель процесса разработки программного обеспечения, в которой процесс разработки выглядит как поток, последовательно проходящий фазы анализа требований, проектирования, реализации, тестирования, интеграции и поддержки (Рис.2.1).
Рис.2.1.Каскадная модель жизненного цикла
Следуя каскадной модели, разработчик переходит от одной стадии к другой строго последовательно. Сначала полностью завершается этап «определение требований», в результате чего получается список требований к ПО. После того как требования полностью определены, происходит переход к проектированию, в ходе которого создаются документы, подробно описывающие для программистов способ и план реализации указанных требований. После того как проектирование полностью выполнено, программистами выполняется реализация полученного проекта. На следующей стадии процесса происходит интеграция отдельных компонентов, разрабатываемых различными командами программистов. После того как реализация и интеграция завершены, производится тестирование и отладка продукта; на этой стадии устраняются все недочёты, появившиеся на предыдущих стадиях разработки. После этого программный продукт внедряется и обеспечивается его поддержка — внесение новой функциональности и устранение ошибок.
Тем самым, каскадная модель подразумевает, что переход от одной фазы разработки к другой происходит только после полного и успешного завершения предыдущей фазы, и что переходов назад либо вперёд или перекрытия фаз — не происходит.
V-Model (или VEE модель) является моделью
разработки информационных
Рис.2.2 V - модель жизненного цикла
Основной принцип V-образной модели заключается в том, что детализация проекта возрастает при движении слева направо, одновременно с течением времени, и ни то, ни другое не может повернуть вспять. Итерации в проекте производятся по горизонтали, между левой и правой сторонами буквы.
Применительно к разработке информационных систем V-Model — вариация каскадной модели, в которой задачи разработки идут сверху вниз по левой стороне буквы V, а задачи тестирования — вверх по правой стороне буквы V. Внутри V проводятся горизонтальные линии, показывающие, как результаты каждой из фаз разработки влияют на развитие системы тестирования на каждой из фаз тестирования. Модель базируется на том, что приемо-сдаточные испытания основываются, прежде всего, на требованиях, системное тестирование — на требованиях и архитектуре, комплексное тестирование — на требованиях, архитектуре и интерфейсах, а компонентное тестирование — на требованиях, архитектуре, интерфейсах и алгоритмах.
Спиральная модель - представляет собой процесс разработки программного обеспечения, сочетающий в себе как проектирование, так и постадийное прототипирование с целью сочетания преимуществ восходящей и нисходящей концепции, делающая упор на начальные этапы жизненного цикла: анализ и проектирование (Рис.2.3).
Каждый виток спирали
- оценка и разрешение рисков,
- определение целей,
- разработка и тестирование,
- планирование.
На каждом витке спирали могут применяться разные модели процесса разработки ПО. В конечном итоге на выходе получается готовый продукт. Модель сочетает в себе возможности модели прототипирования и водопадной модели. Разработка итерациями отражает объективно существующий спиральный цикл создания системы. Неполное завершение работ на каждом этапе позволяет переходить на следующий этап, не дожидаясь полного завершения работы на текущем. При итеративном способе разработки недостающую работу можно будет выполнить на следующей итерации. Главная задача — как можно быстрее показать пользователям системы работоспособный продукт, тем самым активизируя процесс уточнения и дополнения требований.
Для того чтобы наглядно показать принцип работы программного продукта могут быть использованы графические материалы, например DFD – диаграммы. Диаграмма потоков данных (data flow diagram, DFD) — один из основных инструментов структурного анализа и проектирования информационных систем, существовавших до широкого распространения UML. Несмотря на имеющее место в современных условиях смещение акцентов от структурного к объектно-ориентированному подходу к анализу и проектированию систем, данные структурные нотации по-прежнему широко и эффективно используются как в бизнес-анализе, так и в анализе информационных систем.
Основная проблема спирального цикла — определение момента перехода на следующий этап. Для ее решения необходимо ввести временные ограничения на каждый из этапов жизненного цикла. Переход осуществляется в соответствии с планом, даже если не вся запланированная работа закончена. План составляется на основе статистических данных, полученных в предыдущих проектах, и личного опыта разработчиков.
Одним из возможных подходов
к разработке программного
- небольшую команду программистов (от 2 до 10 человек);
- короткий, но тщательно проработанный производственный график (от 2 до 6 месяцев);
- повторяющийся цикл, при котором разработчики, по мере того, как приложение начинает обретать форму, запрашивают и реализуют в продукте требования, полученные через взаимодействие с заказчиком.
Жизненный цикл программного обеспечения по методологии RAD состоит из четырёх фаз:
- фаза определения требований и анализа;
- фаза проектирования;
- фаза реализации;
- фаза внедрения.
Рис.2.3 Спиральная модель жизненного цикла
В результате анализа всех существующих методологий для разработки ПП была выбрана методология RAD. В качестве модели жизненного цикла ПП была выбрана спиральная модель. Схему взаимодействия отдельных модулей ПП предполагается описывать с помощью DFD диаграмм.
Обоснование выбора:
- Методологию RAD целесообразно использовать при небольшой команде разработчиков и сжатых сроках выполнения работы;
- Повторяющийся цикл разработки позволяет наиболее точно реализовать все требования заказчика, благодаря тесному взаимодействию разработчика с заказчиком;
- DFD – диаграммы обеспечивают наиболее полное и понятное описание взаимодействия отдельных модулей ПП;
- Спиральная модель жизненного позволяет изменять ПП в соответствии с изменяющимися требованиями заказчика.
2.2. Архитектура программного продукта
Программный продукт имеет клиент – серверную архитектуру. Для описания данной архитектуры следует четко определить обязанности каждого из ее компонентов и изучить методы их взаимодействия.
Серверная часть выполняет следующие функции:
- Прием и обработка информации, поступающей от теплицы (усредненные данные с датчиков и состояние системы);
- Хранение поступающей информации в базе данных;
- Взаимодействие с клиентским программным обеспечением;
- Слежение за показателями системы в режиме реального времени и оповещение в случае критических событий. Система оповещения сигнализирует о событии путем передачи сообщения о событии на клиентское программное обеспечение, отправки SMS-сообщения, отправки письма на электронную почту обслуживающего персонала;
- Передача команд нижнему уровню (включение\отключение полива, освещения, вентиляции, обогрева);
- Хранение и передача оптимальных значений для каждого из этапов жизненного цикла культуры на нижний уровень для выполнения автоматической корректировки параметров среды (максимальная и минимальная температура, влажность и т.д.);
Функции клиентской части:
- Взаимодействие с серверной частью (запрос данных с сервера, передача команд);
- Визуализация данных;
- Подача звукового сигнала, отображения сообщения на экране клиентского устройства при получении сообщения о критическом событии;
- Экспорт журнала событий в Microsoft Excel или в формат XML для последующей обработки и анализа.
Клиентская и серверная части взаимодействуют друг с другом через локальную сеть или сеть Интернет. Такая архитектура обеспечивает наиболее эффективное взаимодействие системы с клиентом (рис.2.1).
2.3. Логическая модель
Логическая модель проекта описывается с помощью DFD – диаграмм. Представлены два уровня диаграмм с разным уровнем детализации (рис. 2.2., 2.3). Первый уровень показывает обмен информацией между разрабатываемым ПП и автоматизированной теплицей, второй – обмен информацией между 3 основными модулями системы.
Рис.2.1 Архитектура ПП
Рис.2.2 DFD - диаграмма 1-го уровня