Контроль выращиваемых культур в фермерских теплицах

Программно-аппаратное обеспечение для фермерских теплиц
Проект позволяет автоматизировать фермерскую теплицу для выращивания культур.
Программно-аппаратное решение. Проект получил поддержку «Фонд содействия развитию малых форм предприятий в научно-технической сфере» (Фонд содействия инновациям).
Проект был частично внедрен в теплице 0.16Га.
Панель управления
Программное обеспечение, контролирующее за процессами необходимыми для правильного роста выращиваемых с/х культур. Что позволит сократить персонал, следящий за процессами роста и эффективно использовать отведенные ресурсы. Система предназначена для круглосуточной эксплуатации, постоянно контролируя и самостоятельно обучаясь на основе успешно принятых решениях, что позволяет принимать правильные и эффективные решения в критических случаях за короткое время. Программное обеспечение должно работать под управлением операционными системами Windows и Linux.
Функционал (состав) программы:

Модуль интеллектуального анализа - система самостоятельного принятия решений, составляет возможные решения и на основе базы знаний вычисляет вероятности достижения успеха каждого решения. Активируется в критических ситуациях.

Модуль самообучения - запускается после успешного решения серьезных проблем и на их основе вносит корректировки в базу знаний ("интеллект" системы).
Модуль оценки состояния окружения - оценивает серьезность проблемы и в зависимости от категории запускается определенный модуль, так в критических ситуациях запускается модуль интеллектуального анализа, а при не серьезных проблемах активируется модуль штатного управления.

Модуль штатного управления - управляет оборудованием жизнеобеспечения выращиваемых культур удерживая показатели в нужных границах. Активен при нормальном состоянии выращиваемых культур.

Модуль взаимодействия со сторонним оборудованием - набор протоколов для взаимодействия с различными сторонними устройствами.

Модуль удаленного управления - позволяет контролировать и следить за процессами удаленно.

Модуль планировщика - позволяет заранее указать действия(события), которые необходимо применить в определенное время или по условию в зависимости от состояния системы.

Модуль визуализации - отображает информацию в наглядном виде, в виде графиков, структур, показателей и т.д.

Супервизор - позволяет управлять процессами системы и следить за их состояниями, в случае непредвиденного зависания или выхода - перезапускает процесс для дальнейшего функционирования.

Адаптивные технологические карты (БД) - набор гибких технологических карт (справочников), в которых содержатся показатели эффективного роста выбранной культуры.


Основные технические параметры
Системные требования для запуска одной копии на одном компьютере с включенными процессами самообучения не более 1024:

Используемой памяти для хранения базы данных не более 50 Гб на момент обучения.
Использование от 3 до 4 ядер процессора на четырех ядерном процессоре для резервирования процессорного времени под задачи высокого приоритета.
Использование оперативной памяти до 8 Гб во время обучения.

Преимущества:
Устойчивость - при отказах и сбоях система должна сохранять значения всех параметров и состояния, при котором способна выполнять требуемые функции в заданных режимах и условиях применения, за счет модуля системы анализа ситуации, во время которой производится поиск возможных решений и выбирается наилучшее. Такое решение основывается на прошлом опыте принятых решений.

Достоверность - передаваемые и получаемые данные контролируются путем добавления контрольных сумм. Внутренний механизм контроля ошибок на всех этапах вычислений обеспечивает безошибочность преобразования информации.

Безопасность - обрабатываемые данные проверяются на целостность. Канал удаленного управления защищается современными алгоритмами шифрования, асимметричным алгоритмом для установления соединения и симметричным для передаваемых данных.

Безотказность - в случае фатальной ошибки системы, она самостоятельно перезапускается и восстанавливает все предыдущие параметры и настройки, которые были на момент непредвиденного закрытия.

Недостатки:
Сложнее в правильной первоначальной настройке, после настройки перед запуском систему нужно обучить на выборках.

Система (разрабатываемое программное обеспечение) должно отвечает требованиям:
Автономности - самостоятельное принятие решений в штатных ситуациях.

Самообучаемости - все принятые решения должны влиять на принятие будущих решений.
Универсальности - программное обеспечение должно поддерживать популярные операционные системы, различные протоколы коммуникации систем стороннего оборудования.

Расширяемости - загрузка новых технологических карт позволит применять систему для выращивания различных видов культур.

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

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

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

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

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

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

Разработано 10 технологических карт выращиваемых культур различных сортов – 5 сортов огурца и 5 сортов томата.

Разработанная система оптимизирована под популярную операционную систему Windows. Разработана вторая версия системы управления микроклиматом под бесплатную операционную систему Linux.

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

2. Разработанные технологические карты в количестве 10 штук (5 для томатов и 5 для огурцов), были доработаны, добавлены новые поля для функционально расширенной версии системы. В каждой из них содержится по

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

4. Разработан алгоритм работы модуля ядра машинного обучения.
Проведен анализ 5 различных методов обучения системы, проведен сравнительный анализ и выбран наиболее оптимальный, отвечающий основным требованиям: легкое распараллеливание (используется многопоточность разработанной системы - 1024 процесса с использованием 4х ядерного процессора) и сравнительно малое потребление памяти вычислительной машины (до 8 Гб оперативной памяти во время обучения). Выбранный алгоритм был реализован в виде модуля, который используется в разработанной системе (программе).
Разработан метод контроля ошибки переобучения/недообучения системы основанный на вероятностях, и реализован в виде алгоритма.

5. Разработанная система машинного обучения была обучена на собранной базе, которая состоит из:
1) базы входных данных dataset train. Используется для обучения системы на тренировочных данных - 55000 точек;

2) базы входных данных dataset test. Используется для тестирования системы на тестовых данных - 10000 точек;

3) базы входных данных dataset validation. Используется для проверки качества обученной системы и точности подбора решений - 5000 точек;

Была разработана модель отображения среза параметров, которая представлена в 15-и мерном векторном пространстве, и используется для хранения признаков поступающих данных в систему от сенсоров. Общий объем базы после обучения составил менее 50Гб.

6. Доработано программное обеспечения и выпущена финальная версия.
Созданы модульные тесты для проверки созданного программного обеспечения на ошибки и дальнейшего контроля во время разработки.

Проведен процесс тестирования в различных условиях: кратковременное отключение электропитания (перезагрузка вычислительной машины), передача ложных данные от сенсоров, эмуляция внешнего перехвата данных злоумышленниками.
Rocket-lab - занимаемся разработкой
веб-приложений и интеграции.
Контакты