В данной статье рассматривается проблема введения новейших технологий в сельскохозяйственную отрасль.
Ключевые слова: коптер, робот, сельское хозяйство.
This article considers the problem of the introduction of new technologies in the agricultural sector.
Keywords: copter, robot, agriculture.
Внедрение роботов является достаточно серьезным вопросом в наши дни. Агропромышленный комплекс является весьма перспективным направление развития промышленности. В сельском хозяйстве наиболее распространенным трудом является уход за посадками, а именно их поливка и распыление удобрений и химикатов против насекомых-вредителей. Сейчас это делают люди, но это занимает большое количество времени и затрат человеческой силы. Поэтому в перспективе этим могут заняться коптеры. Предполагается в обслуживании обрабатываемых полей движение коптеров по схеме (рис.1.).
Коптер опиратся на восемь винтов, что позволяет ему поднимать жидкость для распыления весом до 10 кг. Таким образом дроны могут распылять удобрения или пестициды. Одной заправки хватает для области 80 x 120 м в час дрон может обрабатывать от 60 до 80 м². Жидкость попадает на распылители, которые расположены под четырьмя винтами из восьми. Она поступает из резервуара по четырем трубкам.
Рис. 1. Схема движения коптеров
Дрон управляется дистанционно через пульт управления. Индикация зарядка аккумулятора и жидкости в резервуаре указывается на пульте на специальном экране. Можно регулировать высоту распыления жидкости и скорость распыления в литрах в минуту. Скорость полета может регулироваться автоматически. Дрон самостоятельно определяет положение через датчики GPS, профиль полета можно задавать по трем точкам. С помощью ультразвука определяется высота, возможен подъем до 8 м (рис.2.).
Рис.2. Распыление жидкости дроном
Для этих коптеров предлагается использовать программирование высокого уровня. Предназначенная для работы программа интегрального управления несколькими параллельно работающими коптерами является отличительной особенностью нашей разработки. Соответствующая система с выбором базового языка программирования, имеет следующие требования: наличие средств описания параллельно функционирующих компонент; обеспечение возможности решения проблем координации и синхронизации таких компонент; наличие развитых языковых средств, позволяющих описывать алгоритмы планирование действий коптера и перемещения объектов в рабочей зоне; структурность и ясность базовых программных конструкций; возможность быстрой адаптации языка к широкому классу ЭВМ. Рассматривая система включает два небольших экспериментальных коптера, два контролера, реализованных на базе InteliAPX с реализацией операций на вспомогательном процессоре Intel. Основная ЭВМ поддерживает верхний уровень системы управления, обеспечивая передачу команд и прием сообщений от контроллеров и системы технического зрения, подключенных через последовательный интерфейс. При этом основная ЭВМ и контролеры iAPX работают в режиме «главный — подчиненный». Информационно-управляющее взаимодействие между ЭВМ осуществляется в соответствии со специальным протоколом, который включает команды нормального приема/передачи данных (эти команды могут накапливаться по мере поступления в буферных областях контроллеров и исполняться последовательно по принципу «первый пришел — первый выполняется») и команды оперативного управления, исполняемые сразу же, как только они поступают в контроллер (к ним относятся, например, требования приостановки процесса управления, отработка сбоев и аварийных ситуаций). Базовый язык программирования дает возможность описания задач планирования и алгоритмов управления коптером: последовательно реализованная в языке концепция модульного программирования; включение в систему специального системного модуля, обеспечивающего доступ к периферийным устройствам ЭВМ непосредственно на машинном уровне; обеспечение гибких возможностей организации параллельного и квазипараллельного исполнения программных процессов. Пользователь описывает алгоритмы управления коптерами на языке MODULA-2, используя процедуры специализированного пакета программ RP. Пакет RPвключает, в частности, программу TEACH, обеспечивающую программную поддержку режима прямого обучения коптеров. С помощью разработанной программы можно непосредственно провести коптер по требуемой траектории и присвоить каждой из выбранных при этом позиций траектории некоторое логическое имя. Это имя может быть использовано в дальнейшем в других фрагментах программы управления для идентификации соответствующего положения коптера.Эти возможности включают: задание констант, определяющих граничные значения параметров системы управления (например, максимальное число контроллеров, которые могут обслуживаться системой программирования); определение специальных проблемно-ориентированных типов данных; введение переменных, фиксирующих реальные (текущие) значения параметров системы управления.Процедуры инициализации и завершения обеспечивают инициализацию последовательных портов и контроллеров после начальной активизации процессов, связанных с работой коптеров; генерацию списка процессов, прохождение которых должно контролироваться системной программой «диспетчер процессов»; установку коптеров в исходное положение; завершение процесса управления коптерами.Процедуры прямого управления позволяют приостановить, возобновить или полностью прекратить работу одного или обоих коптеров. Процедуры модификации обеспечивают изменение положения или скорости перемещения выбранного коптера.Процедуры четвертой группы позволяют пользователю контролировать состояние выбранного коптера. Пятая группа процедур ориентирована на работу с сенсорными системами коптера.Процедуры ввода/вывода используют стандартные средства языка MODULA-2, дополненные в ряде случаев обращениями к «диспетчеру процессов».Последняя группа процедур является наиболее важной и обеспечивает пользователя механизмами диспетчеризации (упорядочивания) и синхронизации развивающихся процессов. Процедуры этой группы позволяют пользователю обращаться (в большинстве случаев косвенно) к «диспетчеру процессов», организуя псевдопараллельное развитие процессов, активизированных на этапе инициализации системы.«Диспетчер процессов» получает управление всякий раз, когда некоторый процесс обращается к одной из процедур пакета RP. При этом «диспетчер» реализует циклическую передачу управления на множестве процессов, не находящихся в состоянии ожидания какого-либо события.
Важной характеристикой работы является принцип управления. Разработанная система управления коптерами позволяет манипулировать сразу несколькими коптерами на расстоянии. При этом система помогает коптерам работать не столкнувшись или не сбиться с установленного маршрута, сохраняя заданную высоту.Предложенный язык управления высокого уровня, совместно с контроллерами коптеров, является частью работающей системы, использованной для реализации ряда прикладных программ управления робототехническим комплексом в сельском хозяйстве.