За последние десять лет инвестиции в цифровизацию сельского хозяйства многокрастно возросли. AgroTech стал такой же реальностью, как FinTech и HRTech!
Сельская хозяйство — наукоемкое направления деятельности человека. Агротех-специалисты работают со сложными биологическими, инженерными системами и устройствами. Сложность делает востребованными множество современных цифровых технологий, таких как:
дроны и роботы;
интернет вещей;
геоинформационные системы;
системы виртуальной реальности;
инструменты data science;
blockchain;
3D-принтеры;
компьютерное зрение.
Подробнее о дронах, роботах и их программировании вы сможете узнать из этой статьи.
Откуда взялись дроны?
Сфера разработки дронов одна из наиболее интенсивно развивающихся. Такое положение вещей вызвано множеством факторов, но ключевым здесь является то, что дроны позволяют существенно снизить операционные затраты. Большие территории и необходимость выполнять множество рутинных технологических операций делают дроны идеальными помощниками.
Чем дроны отличаются от роботов?
Происхождение термина «дрон» до сих пор вызывает споры среди лингвистов. Предполагается, что название возникло на рубеже 1934-го 1935 г., когда низко летающими самолеты гудели, не могли резко маневрировать и ускоряться, а также издавали характерная монотонная жужжание, как трутни. Drone с английского как раз переводится как трутень. Длительное время дронами называли только самолёты мишени, но в 1950-ые и особенно в 1960-ые года к дронам как-то само собой причислили все беспилотники, начиная от крылатых ракет и заканчивая не пилотируемыми в то время космическими аппаратами.
Что такое дрон?
Вот так ChatGPT с помощью искусственного интеллекта объясняет, что такое дрон:
Дрон (квадрокоптер) – это беспилотное летательное аппарат с возможностью автоматического или удаленного управления. Они используются для различных назначений, включая фото- и видеосъемки, аэрофотосъемку, аэросканирование, оценку различных местностей, выявление угроз безопасности, полевые исследования и т.д.
Дроны подразделяются на:
летающие – самолетного, вертолетного и гибридного типа;
наземные и подземные – колёсные, гусеничные;
плавающие – подводные, надводные;
шоу-дроны и бытовые дроны – для развлечений и хобби;
комбинированные – разные виды дронов, сгруппированные друг с другом.
По способу применения дроны могут быть:
одиночными;
групповыми;
роевыми.
Летающие дроны подразделяется на три основных подвида:
самолётного типа, способные преодолевать огромные расстояния благодаря крыльям;
вертолетного типа, использующие схему несущих винтов;
гибридные – летающие дроны совмещающие в себе самолётное крыло и несущие вертолётные винты, способные переключаться на различные режимы работы.
Летающие дроны могут применяться в сельском хозяйстве для:
десекации (обезвоживания тканей растений перед уборкой урожая);
распыления пестицидов, гербицидов, инсектицидов и т.д.;
засева посевным материалом;
мониторинга оборудования, систем орошения садов и полей;
анализа состояния посадок;
контроля выполнения заданий;
охраны территорий.
Летающие дроны весьма эффективны, но наземные дроны имеют некоторые неоспоримые преимущества перед ними. Наземные дроны могут гораздо дольше выполнять свою работу, к тому же они более экономичны и точны при выполнении некоторых задачах, а также более универсальны и безопасны. Они могут выполнять практически все те же операции, что и летающие, за исключением мониторинга с воздуха и быстрого перемещения на большие расстояния.
Отдельно хочется отметить перспективу дальнейшего развития комбинированных дронов, которые в большей степени являются сложными роботами, нежели дронами.
Робот – это механизм, выполняющие запрограммированные действия. Он воспринимает окружающий мир с помощью сенсоров, датчиков, микрофонов и камер и строит модели своего поведения под определённую задачу, а также может тем или иным образов воздействовать на физический мир.
Дроны и роботы в сельском хозяйстве
Дроны и роботы сегодня активно используются в сельском хозяйстве. Задачи у них разные: вносить удобрения, засевать поля, лечить растения ультрафиолетом, мониторить поля, пасти овец. Приведем только некоторые примеры использования умных помощников «в полях»:
Оценка состояния посадок. Дрон собирает данные за счёт сенсоров, далее анализирует их и сигнализирует агроному о проблемах. Такой аппарат оснащён рукой-манипулятором, которая собирает спелые плоды. Если за таким дроном будет тянуться тележка, то он может ещё вносить необходимые препараты;
Прополка. Роботы-пропольщики могут целый день находиться в полях — до восьми часов. У них есть компьютерное зрение и специальные лазеры, которые выжигают сорняки. Они не только выполняет прополку, но и собирает данные и отправляют их на анализ;
Прогнозирование нападения вредителей на основании анализа изображения со спутников и дронов;
Картографирование и наблюдение за всходами, орошение плантации;
Дроны-спасатели: некоторые дроны ищут больных животных или растения и сигнализирует фермерам о проблеме, тем самым спасая урожай и скот от болезней и вымирания.
В подкасте РСХБ в цифре «Цифровая грядка» основатель и генеральный директор стартапа Agrofly Сергей Терёхин рассказал, выгодно ли сегодня фермеру в России покупать дрон или лучше взять его в аренду. А ещё — как можно применять летающих роботов.
Чем занимается программист дронов?
Инженер-конструктор проектирует дроны, занимается их сборкой и тестированием. Программист же разрабатывает программное обеспечение, без которого летательный аппарат не сможет выполнять практические задачи. Индустрия программирования дронов значительно прогрессировала около 10 лет назад, когда в рамках Open Source проекта по созданию Robot Operating System (ROS) были разработаны библиотеки и инструменты, позволяющие компилировать приложения для управления роботами. Создатели проекта в то время о коммерческом использовании ROS даже не задумывались. Сейчас ROS считается ведущей оперативной системой для создания робототехнических приложений. Платформа дает программистам массу возможностей и инструментов, работающие алгоритмы, а также доступ к глобальной экосистеме инженеров и научных специалистов.
Robot Operating System обеспечивает корректное взаимодействие сенсоров, 3D-карт, планировщика безопасного маршрута и SLAM. Программная среда состоит из набора отдельных узлов (node), которые взаимодействуют между собой. Основной узел ROS — «master node». Главная функция этого модуля — регистрация других узлов приложения. Каждый из таких узлов – это процесс Linux. Система ROS обеспечивает механизм синхронизации и передачи сообщений между отдельными узлами. Этими сообщениями могут быть сенсорные данные, облака точек, видеокадры, параметры и команды управления. Узлы могут запускаться на разных машинах и взаимодействовать через сетевой интерфейс.
По мнению самих разработчиков ROS, для программирования устройств не требуются какие-то исключительные навыки, необходимо лишь иметь базовые знания о встроенном программном обеспечении и системах управления. Поэтому тем, у кого уже есть опыт программирования, будет гораздо проще разобраться и приступить к разработке ПО для дронов.
Что делает программист дронов:
создает программное обеспечение для систем управления и навигации беспилотников;
разрабатывает циклограммы систем управления;
моделирует навигацию и траектории полётов;
создает системы обнаружения и облёта препятствий;
составляет карты пространств;
сопровождает и обслуживает ПО для дронов.
Требования к программисту дронов:
знание языков программирования C++ или Python на продвинутом уровне;
опыт работы с ROS или OpenCV;
отличные знания технического английского языка;
опыт разработки алгоритмов для дронов или любого встроенного программного обеспечения.
Программисты помогают ориентироваться в пространстве роботам и дронам с помощью маппинга. Автономная навигация робота строится на трёх фундаментальных принципах:
построение карт — Mapping;
локализация в пространстве — Localization;
планирование пути — Path planning.
Задача маппинга состоит в том, чтобы ответить роботу на вопрос: «Как выглядит окружающее пространство?» Во время картографирования данные с различных датчиков передаются роботу. На основе обработанных данных строится карта окружающего мира.
Задача локализации состоит в том, чтобы ответить на вопрос робота: «Где я нахожусь?» Во время локализации робот определяет своё положение относительно карты, которая может быть уже ему известна или сформирована в режиме реального времени. При локализации на заранее известной карте робот должен уметь определять своё положение, где бы он ни находился.
Задача планирования пути состоит в том, чтобы ответить на вопрос робота: «Как я могу добраться до целевой точки?» Целевая точка на карте может быть установлена оператором робота или самим роботом. Робот должен уметь самостоятельно прокладывать траекторию движения к целевой точке на карте и добираться до неё. Кроме этого, траектория движения должна быть оптимальна и безопасна.
Основные методы, использующиеся при программировании роботов
SLAM (Simultaneous Localization and Mapping) —самый популярный в робототехнике метод одновременной локализации и построения карты. Существует тесная связь между маппингом и локализацией: оба процесса не могут быть разделены в условиях неизвестной среды вокруг робота. При использовании данного метода робот должен знать своё точное текущее положение, чтобы построить карту. Ему нужна качественная карта, чтобы определить своё текущее положение. Пример использования метода: оператор дистанционно управляет движением робота, который не имеет подготовленной карты, а строит её в режиме реального времени с помощью сенсоров и локализуется в пространстве через одометрию и сенсоры.
Active localisation — метод активной локализации, который использует планирование пути, чтобы направлять робота к целевым точкам на карте для уточнения его текущего положения (локализации). Пример использования метода: робот имеет подготовленную карту окружающего его пространства и движется к целевой точке самостоятельно (автономно без оператора). При этом в процессе движения робот может специально проезжать через контрольные точки на карте, например, чтобы зафиксировать установленными на его корпусе камерами специальные черно-белые маркеры, расположенные на стенах. Анализируя каждый замеченный подобным образом маркер, робот уточняет свое положение на карте.
Exploration — метод исследования, который предполагает, что робот способен определять своё точное местоположение. Метод фокусируется на эффективном движении робота в неизвестной среде для построения им карты в реальном времени. Пример использования метода: робот не имеет подготовленной карты и движется самостоятельно без участия оператора. При этом в режиме реального времени робот движется в неизвестную для него территорию, непрерывно строит карту и планирует свой маршрут.
-
SPLAM (Simultaneous Planning, Localization and Mapping) — метод, комбинирующий локализацию, построение карт и планирование пути. Пример использования метода: робот автономен, не имеет подготовленной карты и практически никакой готовой информации об окружающем мире. Он в режиме реального времени самостоятельно строит карту, локализуется на ней и планирует своё дальнейшее движение.
Аппаратная часть
Полетный контроллер отвечает за полет дрона и вращение его моторов. Примером универсальной платформы является плата Pixhawk, оснащенная процессором ARM, а также прошивкой PX4. Программный код прошивки компилируется в специальном режиме «software in the loop», что позволяет проводить тесты на ПК.
Симуляция
Для симуляции работы дрона и оценки ПО используется программный симулятор реальности Gazebo.
В качестве базовой модели в виртуальной среде выступает виртуальная роботизированная овечка Долли, которая служит практическим введением в Gazebo и ROS2. Долли следует за вами повсюду, неся тяжелые вещи. Тележка оснащена двумя моторизованными колесами, которые позволяют роботу маневрировать и обнаруживать объекты, находящиеся впереди, с помощью лазерного сканера.
Для восприятия окружающей реальности роботы оснащают разнообразными датчиками, работа которых может быть также смоделирована в Gazebo:
лидарами;
камерами глубины;
лазерными/ультразвуковыми/инфракрасными дальномерами;
контактными датчиками;
радарами;
датчиками ускорения;
гироскопами;
магнитометрами;
барометрами.
Какие перспективы есть у программистов роботов и дронов?
Разработчики программного обеспечения для дронов требуются в военной и промышленной отраслях, в сельском хозяйстве, картографии, аэрофотосъемке, беспилотной логистике и других сферах. Востребованность этих профессии будет только расти.
Программисту доступны следующие ниши:
IT-компании;
поставщики и производители квадрокоптеров и дронов;
госкорпорации;
научно-исследовательские институты робототехники;
правоохранительные органы (ФСБ, ГИБДД, ФСО);
органы военного управления;
промышленные предприятия (строительство, добыча полезных ископаемых и др.);
рранспортные компании и службы доставки;
фермерские хозяйства и агрокомпании.
Подробнее об актуальных вакансиях в аротехе можно узнать в разделе «Вакансии» на «РСХБ в цифре», а также в нашем Телеграм-канале.
Комментарии (10)
amXCVI
27.01.2023 14:24+1Неплохая обзорная статья
Может быть, здесь есть люди, которые ближе сталкивались с обработкой сельхозкультур дронами? Было бы интересно почитать про практическое применение и реальные проблемы, с которыми сталкиваются люди в полях.
Насколько консервативно наше фермерское сообщество и готово ли оно применять такие устройства? По идее, такая обработка должна быть значительно качественнее традиционного опрыскивания. А местами может быть и дешевле уже...BugM
27.01.2023 15:15Его нет. Обрабатывают тоннами и десятками тонн веществ. Столько возить по воздуху нет смысла.
Беспилотные комбайны при этом работают и в них есть смысл.
amXCVI
27.01.2023 16:08Насколько знаю, ультрамалообъемное опрыскивание применяется.
Порядка 5-10 литров жидкости на гектар. И так как качество работы у дронов выше, чем у советского трактора, получается вполне неплохо. Они делают размер капли очень мелкий и потоками воздуха загоняют дисперсию под листья.
Но у меня это больше с диванной точки зрения, было бы очень интересно услышать отзыв людей, кто с этим сталкивался вживуюBugM
27.01.2023 17:46Типовые расходы это 100+ литров на гектар. Что в общем понятно. Ваши 10 литров на 100 на 100 метров это смешно. Они даже не на каждое растение попадут.
Может оно и используется, но чем-то очень особым. Вероятно параллельно с обычными средствами с обычным расходом.
Выглядит так что смысла нет. Отдельная дорогая методика для корнер кейса, который показывается типичными методами не умеет смысла.
bbs12
28.01.2023 18:58Обрабатывают тоннами и десятками тонн веществ. Столько возить по воздуху нет смысла.
Например вот дрон с грузоподъемностью около 100 кг. Они могут автоматически заправляться и заряжаться. Такой дрон за сутки вполне неплохие объемы может распылить над полем:
sentimentaltrooper
27.01.2023 17:39Мне летом надо "супервайзить" PhD студентку на удаленке которая гоняет, условно, "дрон с Yolo" над бескрайними полями кукурузы что бы по анализу изобржений обнаружить вредителей / болезни. С 2019го года гоняет. Что меня настораживает. Я пока сам не смотрел результаты, но если PhD занимает больше 3.5 лет, значит в процессе пришлось менять тему или сложности с публикацией результатов. Даже если кукурузы в США много, как и денег у John Deer. У последнего кстати репутациионные потери среди маленьких фермеров (которые не могу в своем гараже их починить теперь) и "простых людей" (которых увольняют, потому что их столько не надо), но кажется бизнес долларом голосует за "оптимизацию". Но это личное мнение основанное на шапочном знакомстве а агрикультурным бизнесом в Канаде.
Koyanisqatsi
27.01.2023 18:00+1"Индустриальные дроны" занимаются похожей тематикой. Довольно успешно - летает, поливает.
Gribovod
27.01.2023 21:21Позвольте, не за сельское хозяйство, а по поводу требований к программистам.
моделирует навигацию и траектории полётов
Мне кажется, что это делает ПО. MissionPlanner, QGroundControl.
составляет карты пространств
Лучше доверить это оператору БПЛА.
сопровождает и обслуживает ПО для дронов
Наверное, для техподдержки лучше тоже отдельных специалистов нанять.
Если раздел "Требования к программисту дронов" применить к упоминаемому ниже PX4, то нет такой категоричности в требованиях:
знание языков программирования C++ или Python на продвинутом уровне
Python там для сборки, в самом автопилоте C и C++. Ну т.е. если нужны какие-нибудь изыски, то конечно.
опыт работы с ROS или OpenCV
А как же NuttX? Да и без OpenCV вполне себе летает если есть ГНСС.
отличные знания технического английского языка
Прекрасно написанная документация + встроенный переводчик. Для общения с зарубежным сообществом (ну мало ли) тоже подойдёт.
опыт разработки алгоритмов для дронов или любого встроенного программного обеспечения
Документация и немного желания позволят сделать быстрый старт на уровне SITL. Даже без железки и программирования. Хотя с железкой конечно интереснее. Немного опыта в программировании позволит добавлять своей особой магии и нестандартных схем БПЛА (как например в комментарии выше).
Подробнее об актуальных вакансиях в аротехе можно узнать...
А, вот откуда "Требования".
oleg_rico
Статья очень похожа на статью из журнала техника молодёжи советских времён.
Хорошо это или плохо, я не знаю.
Dolios
Я как будто опять студенческий реферат прочитал )