Как доить коров роботами и сделать на этом промышленный стартап. История разработки R-SEPT
В 2017 году в СМИ звучала крайне интересная история про стартап, который роботизирует доение коров на промышленных молочных фермах. Компания называется R-SEPT, и тогда она получила 10 миллионов рублей инвестиций. Но год прошел, а новостей, что произошло дальше, все нет. Мы связались с Алексеем Хахуновым (AlexeiHahunov), основателем стартапа и поговорили о разработке. Оказывается весь год его команда доводила прототип робота до ума, и как раз неделю назад провела первые полевые испытания на ферме.
Под катом — история, как студент-робототехник, выросший на родительской ферме, превратил университетский диплом в промышленный стартап, как собирал с друзьями первые манипуляторы, а потом выходил на уровень государственных программ по роботизации сельского хозяйства. Ну и самое главное — чем железная рука робота и машинное зрение лучше живой доярки.
Алексей Хахунов
На этой неделе мы поставили робота на ферму и подоили им первую корову. Все прошло достаточно весело. У нашей семьи есть молочное предприятие, на котором я до этого работал. Оно находится в Сергиево-Посадском районе, деревня Кузьмино. У нас там полторы тысячи коров. Это крупное предприятие.
Я получил образование в области робототехники. Естественно, чесались руки использовать теоретические знания в бою. Я посмотрел, как обстоят дела с роботизацией в сфере молочного хозяйства, и пришел к интересному выводу. Все существующие роботы — а сейчас есть три основных производителя — создавались в Европе, а рынки Америки или Россий сильно отличаются от нее. В Европе распространены маленькие семейные фермы, до 200 коров. В России, Китае и Америке — очень крупные. У нас есть предприятие, где коров около 50 тысяч. При этом в Европе 40% ферм роботизированные, а на остальных рынках роботизация не превышает и одного процента. И проблема в том, что роботов, которых делали для маленьких ферм, никак не адаптировали под реалии больших.
В Европе фермер сам доит, кормит и делает вообще все. Корову надо в первый раз доить в пять-шесть утра. Это сложный процесс — реально сложный. Чтобы снять боль фермера, ему придумали робота, который помогает с этим справляться, но экономически не дает никакой выгоды. Он нужен просто чтобы фермеру легче жилось. А крупные предприятия нужны, чтобы извлекать прибыль. Стоимость робота, производительность, ремонтопригодность и прочие вещи должны отвечать большим количествам промышленных стандартов.
Практически все существующие роботы придумали ветеринары. Они очень классно знали, как работать с коровой, но многие конструкции у них получались не совершенными, избыточными и имели много очевидных недостатков.
Мы решили создать робота промышленного образца, который будет стоить дешевле, чем существующие, но в нем будут последние технологии из области робототехники и учтен весь опыт работы с коровой. Цель есть — осталось реализовать.
Робот для доения
По современным практикам на фермах у коров нет определенного закрепленного места — просто сто-двести коров гуляют по двору, могут лежать в любом стойле, есть в любое время. В этот же цикл ставится робот, и корова приходит туда сама.
Рацион коровы состоит из очень большого количества компонентов. Но самый приятный для нее — это комбикорм. Он все равно что сладость для человека. Чтобы загнать корову в робот, ей не дают комбикорм в обычное время, а дают только в роботе, и она приходит туда полакомиться. Пока мы это не делали, нормальной мотивации приходить доиться у коров не было. Они испытывали от этого стресс.
Робот — это по сути одноместное закрытое стойло. В нем есть две двери. Одна открывается, когда корова выходит, другая запускает следующую корову и закрывается.
Есть один миф, который люди любят рассказывать: якобы корова очень любит, чтобы ее доили доярки. Чтобы ее гладили, любили — и только тогда она будет давать много молока. На самом деле это абсолютная фигня. Единственное, что любит корова — это отсутствие стресса и абсолютную повторяемость. Если корову каждый день кормят одинаковым рационом, одинаково доят одинаковое время, дают одинаковое количество воды и желательно поддерживают одинаковую температуру, и вокруг нет громких шумов — тогда корова будет давать максимальное количество молока, потому что ей комфортно. Как только появляется любой внешний фактор, молока будет меньше. Фишка роботов в том, что они абсолютно идентично из раза в раз выполняют все операции.
Корова заходит, ей выдается корм. Под корову помещается рука-манипулятор. Там стоит доильный стакан. Сначала он очищается, потом проводится сдойка первых струек, чтобы у коровы запустился гормональный процесс отдачи молока. Эти струйки анализируются — нет ли у коровы никаких заболеваний, все ли с ней в порядке. Через полминуты начинается сам процесс доения.
Рука берет доильные стаканы, подводит их к соскам вымени. Внутри стоит пульсометр, который с определенной частотой включает и выключает отрицательное давление. И молоко начинает засасывать.
Есть датчик, который проверяет заполняемость. Когда подача молока падает, значит корова выдоилась. Доильный стакан отключается, и на вымя наносится специальный раствор, который «закрывает» вымя. После доения у коров открыт молочный канал, и нельзя чтобы туда попала инфекция. Раствор с йодом его как бы консервирует.
Роботом никто не управляет, он живет своей жизнью. Он знает, где находятся стаканы — те всегда в одном месте. Дальше работает компьютерное зрение. У робота стоит камера, которая получает трехмерную картинку с высокой частотой. Алгоритмика ищет на картинке, где находятся соски.
Все картинки в градации серого — без цветов, просто спектр от черного до белого. Камера 30 раз в секунду снимает происходящее вокруг себя с достаточно низким разрешением — 420 на 340. На первом этапе мы просто сажали людей, которые размечали, где на картинке находятся соски вымени. Сначала сегментировали, где находится весь сосок, затем где находится самые крайние нижние точки.
Пришлось собирать очень много данных — мы сняли несколько тысяч коров. Сначала применяли сверточные сети на объемные картинки, но сверткам очень тяжело на них учиться — нужен колоссальный объем данных. Поэтому перевели в стандартную детекцию на плоском изображении, в качестве фреймворка взяли PyTorch.
История разработки
Мои родители были ветврачами, и долгое время просто работали в колхозе. Сначала моему отцу предложили стать замдиректора предприятия, а потом возглавить предприятие по соседству, развивать его. У нас в семье есть шутка, что колхозник — это не профессия, а состояние души. С марта по октябрь работа начинается в пять утра и не заканчивается до девяти вечера. Это очень тяжело. Круглые сутки что-то происходит.
Сельское хозяйство — неоднозначная отрасль, и не сказать, что сильно денежная. Я вообще не видел себя сельхозником. Когда мы с братом ездили по разным предприятиям в Европе и анализировали роботов, меня удивляла их история про поколения. Особенно смешно, когда они говорили: «Я 13 лет после своего отца управляю этим предприятием. Мы отлично растем. У нас было 60 коров — а стало 70. Развиваемся!» Когда мой отец брал предприятие в двухтысячных, там было коров сто. Сейчас их полторы тысячи, и все сомневаются — достаточный ли это рост.
Я учился в одном из топовых физматов в московской области, в Сергиево-Посадском районе, и точно должен был стать технарем. Мне сильно нравилось программирование. Основные языки в физмате были Pascal и Delphi, и я знал немного C++. Сейчас не понимаю как, но мы много всего интересного умудрились сделать на «Паскале». В девятом классе препод нам сказал: «Я запрещаю вам играть в игры на уроках, только если вы сами их не напишете». И мы написали несколько за год. Сначала сделали свою змейку, потом танчики, причем в них можно было играть по сетке.
К поступлению в университет у меня были написаны несколько олимпиад: МФТИ, Бауманка. Я мог поступать куда угодно, оставалось только выбрать. Открывал списки всех специальностей, которые есть в университетах, читал, и мне становилось невероятно скучно. Не хотелось заниматься какими-то фундаментальными вещами, хотелось что-то более ориентированное на практику. Выбор постепенно пал на Бауманку, вместо МФТИ или МГУ.
Робототехника казалась идеальным сочетанием — ты создаешь что-то физическое, но при этом можешь написать код, и увидеть, как он существует в реальном мире. К сожалению у нас достаточно слабое образование по робототехнике. Оно не работает на уровне системы. Когда тебе дают список литературы, ни одна книжка не датируется 21 веком, это сильно демотивирует. Нас учили конструировать, решать задачи по термеху и сопромату. А реальную робототехнику приходилось учить самим.
Когда мы делали дипломы, я решил, что писать обычный — скучно, и надо выбрать что-нибудь, что потом можно будет использовать. В этот момент на последнем курсе, мы и начали наш проект. После защиты даже собрали небольшую команду из друзей. Кто-то занимался схемотехникой, кто-то программированием. Мы собрались в кучку по специальностям и начали делать первую версию.
Воодушевленные идеями из книжек решили, что нужно обязательно снять дом где-нибудь за пределами Москвы и там все лето жить и работать. Это была ужасная идея! Шесть парней, которые живут в одном месте, не очень хорошо следят за происходящим вокруг, но реально много работают.
Это был рассадник… всего подряд. Помню веселый момент, когда набирал популярность вейп. Ты открываешь комнату, где сидят двое разработчиков, а там ничего не видно, просто ничего! Заходишь и думаешь, а здесь вообще есть люди?
За это лето мы сделали самые-самые первые наброски манипулятора. Произвели какие-то первые детали — мы просто собирали чертежи и заказывали их на производстве. Конечно, допустили миллион ошибок — раньше у нас были очень неопытные конструктора. Сейчас нашли классного специалиста по робототехнике, и стали переходить от гаражной инициативной группы в компанию, продукт которой соответствует промышленным стандартам и современным требованиям робототехники.
Внутри проекта даже очень низкоуровневые вещи мы делаем самостоятельно, потому что все имеет свою специфику и существующие продукты нам не подходят. Для того, чтобы доить корову, мы не можем использовать существующие стандартные промышленные 6-степенные манипуляторы. Они избыточны для нашей конструкции и очень дорогие. У нас сейчас четыре степени свободы. И это в десятки раз дешевле любого промышленного манипулятора.
Всю схемотехнику с низкоуровневым программированием, все микропроцессоры, всю конструкторскую и программную часть пишем самостоятельно. Сами не производим разве что сенсоры, двигатели и другие подобные вещи.
Роботы для кормления, карусели и рационы на машинном обучении
Когда мы начали погружаться сильнее, то поняли, что одним роботом для доения нельзя закрыть все нужды фермы. Поэтому добавили еще два продукта.
Фидпушер
Когда коровам раскладывают корм на ферме, они едят через хэдхолдер — просовывают голову вперед — туда, где у них рассыпан корм. Но они по своей физиологии его постоянно отодвигают и перестают доставать, потому что хэдхолдер ограничивает их перемещения. Получается у них метр корма — они 30-40 см съедают, а еще 60 вне лежит зоны досягаемости.
Обычно ходит человек со снегоуборочной лопатой и двигает все им назад. Но человек имеет свойство забывать, лениться, плохо делать. Корова в этот момент начинает меньше есть — это плохо. Для этого и придумали этот тип робота.
Но опять же, большинство создавалось в Европе. Там они предназначены для работы всего в одном дворе или в одном помещении. В крупных предприятиях дворов много, обычно это три-пять стоящих рядом больших ферм, по-разному объединенных. Фидпушер как пылесос проезжает по своей траектории и возвращается на станцию зарядки.
Чтобы это было экономически выгодно, один робот должен обслуживать несколько дворов. Придумывать и внедрять особые кормушки тоже дорого и сложно. Во-первых переоборудовать фермы стоит дорого, так как придется делать капитальный ремонт. Во-вторых, во дворах требуется много свободного места — как минимум, чтобы проехал трактор. Поэтому робот — это простое и бесшовное решение.
Роботизация каруселей
Существуют специальные доильные залы, обычно их называют карусели. Это огромный ротер, где стоят двадцать-сорок коров. Он медленно вращается, и там по кругу стоят операторы. Сначала они очищают вымя, надевают и снимают аппараты. Но они делают это достаточно медленно, и карусель зачастую простаивает.
Полностью заменять эти карусели на роботизированные сейчас невозможно — это очень дорого стоит. Мы делаем манипуляторы, которые можно будет установить на любой тип карусели, и это очень сильно ее ускорит — процентов на тридцать. Уже с таким ускорением можно сильно увеличить поголовье скота и количество коров на ферме.
Исследование рациона
Сейчас коров пытаются кормить по теории балансировки. Каждый корове на литр молока нужно определенное количество питательных элементов, килоджоулей энергии, белка, жиров. Но абсолютно не учитываются особенности каждой коровы. Это все равно что кормить каждого человека, как мужчину средних лет ростом метр восемьдесят, как будто у всех одинаковый метаболизм.
Мы делаем систему, которая анализирует, как корова реагировала на разные компоненты, сколько давала молока и какого оно было качества. Исходя из этого собираем текущий правильный рацион по всем компонентам.
Мы просто берем максимальное количество входных данных о том, как коровы кормились до этого, какие энергетические ценности были у каждого из компонентов. Мы стараемся построить рацион не для максимального надоя молока, а для максимальной доходности предприятия. У каждого компонента есть своя себестоимость, плюс мы знаем, сколько стоит литр, и хотим найти баланс, когда корова дает достаточно много молока, но его стоимость достаточно низкая.
Корова дает в год до 13 тысяч литров. Но при таком надое литр стоит, например, 25 рублей. Если ты составляешь рацион на восемь с половиной тысяч литров, то себестоимость может быть около 12 рублей, и маржинальность при этом значительно выше чем, в варианте с максимизацией надоя. Модель нужна, чтобы найти баланс.
Но в тестировании есть ограничения, которые легко не учесть. Коровам нельзя убирать и добавлять компоненты быстро, потому что у них в желудке вырабатываются ферменты, отвечающие за разложение, например, пшеницы. И новые компоненты сначала не будут перевариваться, если вводить их резко. У человека, кстати, точно так же работает. Когда мы едим одну и ту же пищу, то очень хорошо ее перевариваем.
Инвестиции и отношение государства
На тот момент у меня были свои средства. Мы сначала жили на них. Это были очень темные времена. Иногда не получалось платить вообще никакие зарплаты. У одного парня был кредит на машину, и я ему в начале месяца скидывал 12 тысяч на карту, чтобы он заплатил банку. Потом уже получилось привлечь деньги, мы стали финалистами Statrtup Village в Сколково, становилось легче.
В тот же момент мы стали резидентами в Сколково, потому что я старался платить белую зарплату. Сколково выдавало налоговые преференции для этого, плюс мы надеялись получить гранты. Но там есть своеобразный разрыв. Чтобы в Сколково получить грант на первый продукт, у продукта уже должны быть деньги. Как это преодолеть, когда нет денег и есть желание делать — непонятно.
Сейчас, я думаю, нам еще минимум полгода до момента, когда мы начнем продавать роботов и это все превратится в работающий бизнес. Срок завязан на специфике работы с железом. У него долгий цикл производства, тестирование, сертификация. Но сейчас мы хорошо знаем все крупнейшие агрохолдинги, всех глав этих агрохолдингов, со всеми поддерживаем общение. Надеюсь, серьезных проблем больше не возникнет.
Конечно у всех есть консерватизм. Но тут надо не рассказывать, а показывать. Поэтому мы делаем первый двор у себя, чтобы можно было взять за руку и показать — вот робот, вот так он доит, вот его экономика.
Мы считаем есть много предпосылок, чтобы заниматься нашим проектом. Первое — это государственная поддержка. Роботы субсидируются, на них есть лизинги, куча налоговых преференций. Государство поддерживает переход на роботизацию сельского хозяйства. Есть программы, по которым государство делает практически все, чтобы ты мог купить поставить себе роботов.
Проблема в том, что люди не хотят жить в деревне. Деревня несовершенна как место жизни, там невозможно построить нормальную инфраструктуру. Роботизация — это выход.
Конечно, когда на предприятии стоит 20 роботов, там нужны и специалисты, которые будут их обслуживать. Роботизация не убирает рабочие места, она увеличивает эффективность предприятия. Обычно на месте сотрудников, которые занимались доением, появляются другие — те, кто взаимодействует с роботами. Мы выбрали несколько хороших аграрных колледжей, в которых хотим открыть кафедры, где будут учить людей обращаться с роботами. То есть, вместе с продажей роботов, мы будем давать и работу людям.
Мои родители — это самые большие скептики из всех и самая большая поддержка одновременно. Раньше, что ни спрашивали, чем я занят, все встречи да встречи — работа в бизнесе странная, она реально состоит из одних встреч. Сначала над этим шутили. Но уровень серьезности встреч все рос, люди, с которыми мы встречались, были все круче и серьезнее. И постепенно скепсис пропал. Осталась только уверенность, что все получится.