Картинка youtube-канал «Machinery Nation»
Разгар лета диктует иной раз любопытные идеи, которые могут помочь прокачаться в куче технических направлений сразу: помочь закрыть гештальт на тему самореализации в качестве робототехника (ведь одно дело — участвовать в конкурсах по робототехнике, со схемами на базе breadboard-ов, и совсем другое — разработать нечто действительно полезное). А в качестве вишенки на торте это может стать интересным и с коммерческой точки зрения — разработка своей собственной роботизированной газонокосилки.
В современном мире газонокосилки облегчают труд владельцев земельных участков, позволяют очень быстро и качественно подстригать траву на больших площадях.
Причём, если для начального уровня могут использоваться простые механические устройства, то более продвинутые могут содержать двигатели, а ещё более продвинутые — иметь систему удалённого управления и даже собственный «искусственный интеллект», делающий их неким подобием робота-пылесоса.
Далее мы поговорим о средней модификации, которая позволяет управлять собой удалённо. А вы же, в свою очередь, вполне можете со временем произвести и дальнейший апгрейд этой системы, чтобы она самостоятельно могла выполнять свою работу.
Как правило, такие устройства достаточно просты аппаратно и программно, и их вполне может собрать самодельщик средней руки.
Но для начала посмотрим, какие же управляемые газонокосилки существуют (мы не будем изучать все возможные варианты, рассмотрим буквально пару-тройку наиболее привлекательных из них).
Итак, о каких же газонокосилках идёт речь? Я имею в виду нечто вот такое (смотрится довольно привлекательно и брутально, не так ли?):
Есть ещё и вот такой аналог:
Как можно понять по гидравлическим шлангам, выглядывающим с бортов устройства — оно не такое уж простое, как может показаться на первый взгляд ;-)
Насколько мне удалось понять, изучая официальные спецификации, — у аппаратов подобного типа (если брать последний пример) в качестве силовой установки используется гибридный подход. Бензиновый четырёхтактный двигатель на 26 л.с. приводит в действие гидравлическую систему, которая состоит из аксиально-поршневого гидравлического насоса, нагнетающего давление в систему и гидравлических двигателей типа «gerotor», преобразующих это давление во вращение:
Насколько можно судить, эти двигатели установлены по одному на каждую гусеницу и используются для непосредственного приведения гусеницы во вращение.
Принцип не новый, подобная связка широко используется в мощной технике, например, в экскаваторах.
Иногда такой принцип применяется и достаточно необычно, например, для приведения в движение мотоциклов особой проходимости, с обоими ведущими колёсами:
Что можно сказать по применению этого принципа в газонокосилках: понятно, почему он используется в конструкции газонокосилки, показанной выше — для надёжного перемещения газонокосилки большого веса по пересечённой, заросшей травой местности.
Но в целом это очень дорого и сложно. Соответственно, нам это надо? Нет, нам это не надо :-) Потому что есть способы намного проще, например, вот такой:
Вот это уже другое дело: нетрудно заметить, что в качестве приводных двигателей для гусениц используются электрические коллекторные двигатели, которые обычно можно найти на али, по ключевым словам, что-то типа щёточный мотор со звёздочкой.
Обычно они там позиционируются как двигатели для электровелосипедов, бывая в том числе и со встроенным редуктором.
Приятным бонусом является то, что они частенько поставляются ещё и с управляющей электроникой (но не факт, что она будет нужна, об этом ниже).
Если мы снова обратимся к конструкции последней газонокосилки, то наличие электрических двигателей позволяет предположить, что где-то там внутри запрятан и генератор, питающий это всё великолепие.
Тем не менее, явного подтверждения этого мне найти не удалось — возможно, там бензиновый двигатель используется исключительно для приведения в действие режущего траву ножа, а питание двигателей, вращающих гусеницы, реализовано от аккумулятора.
Немного муторно, но, с другой стороны, почему бы и нет, не исключаю такого варианта…
Во всех трёх видео выше, где показываются газонокосилки, можно заметить любопытный момент — режущий нож для травы может подниматься и опускаться (обычно вместе с бензиновым двигателем, расположенным сверху).
Для чего это нужно: насколько мне удалось понять — благодаря этому можно регулировать длину подстригаемой травы, то есть, другими словами, высоту «ёжика», который остаётся после стрижки.
Одним из самых простых способов реализации такого подъёмника является, на мой взгляд, использование линейных актуаторов (винт + гайка + коллекторный двигатель с редуктором). Бывают разной длины и разной мощности (т.е. могут поднимать разный вес) — как можно видеть в видео выше, справа и слева от двигателя как раз расположены такие актуаторы и поднимают платформу с ножом и двигателем:
Картинка: aliexpress.ru
Ещё одним простым способом является использование обычного двигателя для электростеклоподъёмников легкового авто:
Почему:
Это означает, что после отключения питания двигатель заблокируется в достигнутом положении.
То есть, если к двигателю прикреплены некие тяга или трос, поднимающие платформу с режущим ножом — они останутся в достигнутом положении (которое нужно оператору), при этом для удержания такого положения не будут требоваться затраты электроэнергии.
Альтернативным этому подходу является использование шарико-винтовой передачи и шагового двигателя с интегрированным планетарным редуктором.
Но это решение будет несколько сложнее (на мой взгляд) в монтаже и саму систему будет сложнее защитить от загрязнений (а это увеличение износа и уменьшение ресурса), ввиду её габаритных размеров.
Не нужно быть оракулом, чтобы предсказать, что загрязнений там будет «моё почтение» — любой, кто имел дело с газонокосилкой или видел её в работе, понимает, о чём я…
Поэтому лично я согласен с разработчиками косилки выше и на первое место поставил бы линейный актуатор, а на второе — двигатель от электростеклоподъёмников, так как в этих случаях, весь редукторный механизм полностью закрыт, а поднимающие платформу с ножом тяга или трос не так чувствительны к загрязнениям (грубо говоря, могут спокойно работать, будучи полностью облепленными резаной травой и пылью).
Ещё один плюс двигателя электростеклоподъёмников (если выбрать его) — очень компактное устройство (что совсем не факт, учитывая что это полуфабрикат и к нему нужна ещё тяга — и, соответственно, габариты ещё увеличатся).
Самый простой способ реализовать привод режущего ножа в нашем случае — использовать точно такой же двигатель, который описан в качестве привода для гусениц, только на его вал насадить стандартный режущий нож от любой газонокосилки. Решение будет простое и, думается, довольно эффективное.
Как можно понять по всему предыдущему повествованию, исполнительные механизмы устройства будут электрическими, потребляющими достаточно большие токи, соответственно, потребуется и соответствующая система питания.
Причём эта система питания должна динамически покрывать скачки потребления. На мой взгляд, одним из самых простых решений… просто-напросто построить систему на базе покупного электрического бензогенератора!
Такой подход легко решает проблемы энергогенерации:
Но генератор — это ещё не всё: как можно было видеть по описаниям электрических двигателей выше — их типичное напряжение питания находится в пределах до 50 вольт, а генератор выдаёт 220 вольт, соответственно, логично предположить, что потребуется преобразователь напряжения.
На базе приведённых выше электрических двигателей (300 Ватт, 24 Вольта — если брать по максимуму), рассчитаем требующуюся силу тока: I = P/U = 300/24 = 12,5 А. Будем ориентироваться на эту цифру (но лучше взять с запасом, желательно, чтобы один блок тянул все моторы сразу).
В качестве такого преобразователя, думаю, весьма удобно будет использовать импульсные блоки питания, аналогичные тем, которые обычно используются на 3D принтерах и не только:
Картинка: aliexpress.ru
Их в продаже имеется весьма широкая номенклатура и можно подобрать по мощности и напряжению.
UPD: Совершенно случайно, уже после написания статьи, я наткнулся вот на это видео:
Где с 4:17 рассказывается о том, что тяговые моторы гусениц (и, вероятно, вся остальная электросистема тоже) питаются от аккумуляторов, спрятанных в железном ящике сзади, и аккумуляторы постоянно подзаряжаются от генератора, который крутится бензодвигателем. Хорошая информация для понимания системы…
Как можно видеть у газонокосилок выше, в качестве движителей — применены гусеницы, и это не просто так: передвижение газонокосилки подразумевается по весьма пересечённой местности, зачастую с повышенной влажностью, густо заросшей травой, поэтому гусеницы видятся достаточно эффективным решением, потенциально позволяющим избегать пробуксовываний.
Но если мы обратим внимание на то, какие гусеницы использованы у заводских газонокосилок, то мы увидим, что они резиновые, достаточно сложной конфигурации, что в приличной степени затрудняет изготовление их собственными силами для самодельщика.
Одним из любопытных, но не самых дешёвых вариантов является изготовление их самостоятельно с применением 3D печати, например, печать из того же самого TPU полимера.
Правда выльется это в копеечку. Кроме того, для этого подхода потребуется весьма крупногабаритный 3D принтер.
Хотя можно пойти и альтернативным путём, сделав гусеницы из отдельных секций, тогда их можно будет напечатать практически на любом 3D принтере.
Но есть способ намного проще и дешевле: просто-напросто сделать гусеницы из обычной старой покрышки, отрезав у неё боковины тем или иным способом, например, используя аккумуляторные ножницы — смотреть с 2:15:
Кстати, в видео выше можно увидеть интересный подход, который заключается в том, что в качестве опорных катков для гусениц используются надувные колёса для садовых тачек из хозмага (вполне себе интересный вариант).
Тут нужно оговориться: понятно, что такие самодельные гусеницы подойдут только для собственного применения, для себя. Для коммерческого продукта нужно будет что-то посерьёзнее… А для себя — почему бы и нет?
Не нужно думать, что такой подход позволяет делать только условно неповоротливые большие конструкции — кое-кто с использованием такого подхода делает даже гусеничные байки:
И даже гусеничные моторизованные кресла (что интересно само по себе):
Так что, как можно видеть, старые покрышки — вполне себе неплохой донор для создания дешёвых, износоустойчивых и недорогих гусениц.
Как было уже сказано выше, зачастую имеющиеся в продаже двигатели снабжаются собственным драйвером для управления ими.
Однако если вы хотите «прокачаться» в знаниях и использовать более гибкий подход, то вы можете собрать драйвер самостоятельно, так как для управления коллекторным двигателем всего лишь необходима сборка так называемого H-моста, который можно составить из четырёх транзисторов, подобранных по току. Более детальный пример и разбор конкретной сборки Н-моста можно глянуть, например, вот здесь. Такой подход даёт возможность собрать свой собственный драйвер, не надеясь на покупной.
Соответственно, учитывая, что у нас используется четыре двигателя (по одному на каждую гусеницу, подъёмник платформы с ножом, привод самого ножа) — потребуется собрать 4 таких драйвера.
Кроме того, самодельный драйвер даёт возможность всё это смонтировать на самодельной плате, соответственно, уменьшив количество соединительных проводов и увеличив надёжность в целом.
Одним из самых простых способов управления, на мой взгляд, является использование микроконтроллера esp32: так как газонокосилкой никто не управляет, «находясь от неё в километрах», то стандартная дальность управления, доступная с помощью Wi-Fi соединения, вполне годится для контроля газонокосилки, находясь от неё в пределах прямой видимости.
В случае выбора такого решения можно взять код вот отсюда — только его потребуется доработать: так как у нас две отдельные гусеницы, с двумя отдельными двигателями — необходимо будет синхронизировать скорости вращения двигателей, чтобы машинка могла ехать прямо. Внизу я написал некоторые соображения, которые могут вам помочь в доработке кода выше.
Одним из самых простых способов для синхронизации скоростей вращения двигателей является установка на вал каждого двигателя энкодера — например, пластикового диска, распечатанного на 3D принтере, с расположенными по кругу щелями или отверстиями, которые проходят мимо цифрового инфракрасного датчика.
При появлении щели/отверстия напротив датчика, сигнал с него изменяется. Отслеживая сигналы с двух датчиков одновременно, а также временные интервалы, в течение которых сигнал повторяется (например, отслеживаем повторение LOW или HIGH) на каждом датчике — можно понять, с какой скоростью вращается каждый двигатель. И методом замедления более быстрого двигателя — синхронизировать скорости их вращения.
В качестве альтернативного способа использованию дырчатого диска энкодера можно использовать диск с неодимовыми магнитиками, отслеживая изменение магнитного поля с помощью цифрового датчика Холла.
Такой способ хорош тем, что он совершенно не боится изменений в освещении, случайного лучика солнца, проникшего через щель в устройстве, нагрева устройства во время работы на солнце (после чего потенциально могут начаться сбои — так как всё вокруг начнёт «фонить» в инфракрасном диапазоне) и т.д.
На практике могу сказать, что такая синхронизация происходит практически мгновенно, и в жизни это выглядит так, как будто платформа сразу начинает прямолинейное движение (хоть это и не так, и постоянно происходит коррекция скоростей, например, в тех машинках, которые я когда-то собирал, коррекция производилась 12 раз на каждый оборот колеса).
Чтобы коррекция не производилась скачкообразно (и таким способом весьма затруднительно достичь синхронизации) — используют ПИД-алгоритм.
И таким образом, в общем случае последовательность шагов при коррекции скоростей двух двигателей выглядит следующим образом:
Таким образом, мне удавалось достигать прямолинейного движения.
Тем не менее у такого подхода (не у алгоритма) в целом есть серьёзный изъян: несовершенство реальных физических исполнительных устройств зачастую не позволяет реализовать прямолинейное движение в полной мере, даже если всё настроено и подключено правильно (начинает сносить в какую-либо из сторон).
Связано это с кучей разных причин: разные физические размеры двигателей, их расположенность немного на разной высоте, перекособоченность самой платформы и т.д.
Поэтому по моему опыту могу сказать, что гораздо более предпочтительным вариантом реализации прямолинейного движения, на мой взгляд, является использование платы гироскопа-акселерометра. Это сразу отвязывает нас от несовершенства физического исполнения устройства, и оно в теории будет ехать прямо, даже если «кривое-косое и собрано левой ногой» :-)
Подытоживая, можно сказать, что сборка дистанционно управляемой газонокосилки — весьма любопытная задача как сама по себе, так как позволит как прокачаться сразу во множестве областей, так и вполне может стать коммерчески успешным проектом. Ведь каждый ролик на YouTube, где показываются аналогичные газонокосилки, сопровождается большим количеством комментариев со всех концов света, которые можно обобщить как «где купить???» :-)
Заниматься робототехникой, производя (даже условно штучно) интересный всему миру товар — что может быть лучше? ;-) Кроме того, международные продажи (например, через тот же самый AliExpress) позволяют защититься от ухудшения экономической ситуации в какой-либо конкретной стране, так как товар продаётся сразу везде.
В качестве дальнейшего логичного апгрейда можно попробовать соединить такую косилку с видеокамерой и обработкой изображений, чтобы косить только выделенные пользователям участки. В любом случае занятие весьма интересное и есть куда двигаться…
И напоследок, в качестве мотиватора: а кое-кто уже не стал долго думать и создал завод по производству электротранспорта, одним из изделий которого являются разнообразные гусеничные платформы, в том числе и гусеничное кресло:
Только надо будет учесть, что если производить такие газонокосилки серийно, то надо будет суметь конкурировать вот с этим. Тем не менее полагаю, что, применив описанные выше подходы — это более чем возможно.
Разгар лета диктует иной раз любопытные идеи, которые могут помочь прокачаться в куче технических направлений сразу: помочь закрыть гештальт на тему самореализации в качестве робототехника (ведь одно дело — участвовать в конкурсах по робототехнике, со схемами на базе breadboard-ов, и совсем другое — разработать нечто действительно полезное). А в качестве вишенки на торте это может стать интересным и с коммерческой точки зрения — разработка своей собственной роботизированной газонокосилки.
В современном мире газонокосилки облегчают труд владельцев земельных участков, позволяют очень быстро и качественно подстригать траву на больших площадях.
Причём, если для начального уровня могут использоваться простые механические устройства, то более продвинутые могут содержать двигатели, а ещё более продвинутые — иметь систему удалённого управления и даже собственный «искусственный интеллект», делающий их неким подобием робота-пылесоса.
Далее мы поговорим о средней модификации, которая позволяет управлять собой удалённо. А вы же, в свою очередь, вполне можете со временем произвести и дальнейший апгрейд этой системы, чтобы она самостоятельно могла выполнять свою работу.
Как правило, такие устройства достаточно просты аппаратно и программно, и их вполне может собрать самодельщик средней руки.
Но для начала посмотрим, какие же управляемые газонокосилки существуют (мы не будем изучать все возможные варианты, рассмотрим буквально пару-тройку наиболее привлекательных из них).
Итак, о каких же газонокосилках идёт речь? Я имею в виду нечто вот такое (смотрится довольно привлекательно и брутально, не так ли?):
Есть ещё и вот такой аналог:
Как можно понять по гидравлическим шлангам, выглядывающим с бортов устройства — оно не такое уж простое, как может показаться на первый взгляд ;-)
▍ Силовой привод
Насколько мне удалось понять, изучая официальные спецификации, — у аппаратов подобного типа (если брать последний пример) в качестве силовой установки используется гибридный подход. Бензиновый четырёхтактный двигатель на 26 л.с. приводит в действие гидравлическую систему, которая состоит из аксиально-поршневого гидравлического насоса, нагнетающего давление в систему и гидравлических двигателей типа «gerotor», преобразующих это давление во вращение:
Насколько можно судить, эти двигатели установлены по одному на каждую гусеницу и используются для непосредственного приведения гусеницы во вращение.
Принцип не новый, подобная связка широко используется в мощной технике, например, в экскаваторах.
Иногда такой принцип применяется и достаточно необычно, например, для приведения в движение мотоциклов особой проходимости, с обоими ведущими колёсами:
Что можно сказать по применению этого принципа в газонокосилках: понятно, почему он используется в конструкции газонокосилки, показанной выше — для надёжного перемещения газонокосилки большого веса по пересечённой, заросшей травой местности.
Но в целом это очень дорого и сложно. Соответственно, нам это надо? Нет, нам это не надо :-) Потому что есть способы намного проще, например, вот такой:
Вот это уже другое дело: нетрудно заметить, что в качестве приводных двигателей для гусениц используются электрические коллекторные двигатели, которые обычно можно найти на али, по ключевым словам, что-то типа щёточный мотор со звёздочкой.
Обычно они там позиционируются как двигатели для электровелосипедов, бывая в том числе и со встроенным редуктором.
Приятным бонусом является то, что они частенько поставляются ещё и с управляющей электроникой (но не факт, что она будет нужна, об этом ниже).
Если мы снова обратимся к конструкции последней газонокосилки, то наличие электрических двигателей позволяет предположить, что где-то там внутри запрятан и генератор, питающий это всё великолепие.
Тем не менее, явного подтверждения этого мне найти не удалось — возможно, там бензиновый двигатель используется исключительно для приведения в действие режущего траву ножа, а питание двигателей, вращающих гусеницы, реализовано от аккумулятора.
Немного муторно, но, с другой стороны, почему бы и нет, не исключаю такого варианта…
▍ Подъёмный механизм
Во всех трёх видео выше, где показываются газонокосилки, можно заметить любопытный момент — режущий нож для травы может подниматься и опускаться (обычно вместе с бензиновым двигателем, расположенным сверху).
Для чего это нужно: насколько мне удалось понять — благодаря этому можно регулировать длину подстригаемой травы, то есть, другими словами, высоту «ёжика», который остаётся после стрижки.
Одним из самых простых способов реализации такого подъёмника является, на мой взгляд, использование линейных актуаторов (винт + гайка + коллекторный двигатель с редуктором). Бывают разной длины и разной мощности (т.е. могут поднимать разный вес) — как можно видеть в видео выше, справа и слева от двигателя как раз расположены такие актуаторы и поднимают платформу с ножом и двигателем:
Картинка: aliexpress.ru
Ещё одним простым способом является использование обычного двигателя для электростеклоподъёмников легкового авто:
Почему:
- такого типа двигатели весьма дешёвые, их очень просто найти практически в любом магазине автомобильных запчастей, по цене порядка 500 рублей и даже дешевле,
- что для нас особенно важно: такие двигатели содержат в своём составе интегрированный червячный редуктор.
Это означает, что после отключения питания двигатель заблокируется в достигнутом положении.
То есть, если к двигателю прикреплены некие тяга или трос, поднимающие платформу с режущим ножом — они останутся в достигнутом положении (которое нужно оператору), при этом для удержания такого положения не будут требоваться затраты электроэнергии.
Альтернативным этому подходу является использование шарико-винтовой передачи и шагового двигателя с интегрированным планетарным редуктором.
Но это решение будет несколько сложнее (на мой взгляд) в монтаже и саму систему будет сложнее защитить от загрязнений (а это увеличение износа и уменьшение ресурса), ввиду её габаритных размеров.
Не нужно быть оракулом, чтобы предсказать, что загрязнений там будет «моё почтение» — любой, кто имел дело с газонокосилкой или видел её в работе, понимает, о чём я…
Поэтому лично я согласен с разработчиками косилки выше и на первое место поставил бы линейный актуатор, а на второе — двигатель от электростеклоподъёмников, так как в этих случаях, весь редукторный механизм полностью закрыт, а поднимающие платформу с ножом тяга или трос не так чувствительны к загрязнениям (грубо говоря, могут спокойно работать, будучи полностью облепленными резаной травой и пылью).
Ещё один плюс двигателя электростеклоподъёмников (если выбрать его) — очень компактное устройство (что совсем не факт, учитывая что это полуфабрикат и к нему нужна ещё тяга — и, соответственно, габариты ещё увеличатся).
▍ Режущий нож и его привод
Самый простой способ реализовать привод режущего ножа в нашем случае — использовать точно такой же двигатель, который описан в качестве привода для гусениц, только на его вал насадить стандартный режущий нож от любой газонокосилки. Решение будет простое и, думается, довольно эффективное.
▍ Система питания
Как можно понять по всему предыдущему повествованию, исполнительные механизмы устройства будут электрическими, потребляющими достаточно большие токи, соответственно, потребуется и соответствующая система питания.
Причём эта система питания должна динамически покрывать скачки потребления. На мой взгляд, одним из самых простых решений… просто-напросто построить систему на базе покупного электрического бензогенератора!
Такой подход легко решает проблемы энергогенерации:
- система получается модульной, что хорошо уже само по себе (сломался генератор — вынул его и починил, или поставил вместо него другой),
- автоматическая поддержка выработки электроэнергии, в зависимости от потребления — любой покупной генератор уже снабжён этой функцией. В противном случае пришлось бы её сооружать самостоятельно,
- большой выбор таких генераторов в продаже.
Но генератор — это ещё не всё: как можно было видеть по описаниям электрических двигателей выше — их типичное напряжение питания находится в пределах до 50 вольт, а генератор выдаёт 220 вольт, соответственно, логично предположить, что потребуется преобразователь напряжения.
На базе приведённых выше электрических двигателей (300 Ватт, 24 Вольта — если брать по максимуму), рассчитаем требующуюся силу тока: I = P/U = 300/24 = 12,5 А. Будем ориентироваться на эту цифру (но лучше взять с запасом, желательно, чтобы один блок тянул все моторы сразу).
В качестве такого преобразователя, думаю, весьма удобно будет использовать импульсные блоки питания, аналогичные тем, которые обычно используются на 3D принтерах и не только:
Картинка: aliexpress.ru
Их в продаже имеется весьма широкая номенклатура и можно подобрать по мощности и напряжению.
UPD: Совершенно случайно, уже после написания статьи, я наткнулся вот на это видео:
Где с 4:17 рассказывается о том, что тяговые моторы гусениц (и, вероятно, вся остальная электросистема тоже) питаются от аккумуляторов, спрятанных в железном ящике сзади, и аккумуляторы постоянно подзаряжаются от генератора, который крутится бензодвигателем. Хорошая информация для понимания системы…
▍ Движитель
Как можно видеть у газонокосилок выше, в качестве движителей — применены гусеницы, и это не просто так: передвижение газонокосилки подразумевается по весьма пересечённой местности, зачастую с повышенной влажностью, густо заросшей травой, поэтому гусеницы видятся достаточно эффективным решением, потенциально позволяющим избегать пробуксовываний.
Но если мы обратим внимание на то, какие гусеницы использованы у заводских газонокосилок, то мы увидим, что они резиновые, достаточно сложной конфигурации, что в приличной степени затрудняет изготовление их собственными силами для самодельщика.
Одним из любопытных, но не самых дешёвых вариантов является изготовление их самостоятельно с применением 3D печати, например, печать из того же самого TPU полимера.
Правда выльется это в копеечку. Кроме того, для этого подхода потребуется весьма крупногабаритный 3D принтер.
Хотя можно пойти и альтернативным путём, сделав гусеницы из отдельных секций, тогда их можно будет напечатать практически на любом 3D принтере.
Но есть способ намного проще и дешевле: просто-напросто сделать гусеницы из обычной старой покрышки, отрезав у неё боковины тем или иным способом, например, используя аккумуляторные ножницы — смотреть с 2:15:
Кстати, в видео выше можно увидеть интересный подход, который заключается в том, что в качестве опорных катков для гусениц используются надувные колёса для садовых тачек из хозмага (вполне себе интересный вариант).
Тут нужно оговориться: понятно, что такие самодельные гусеницы подойдут только для собственного применения, для себя. Для коммерческого продукта нужно будет что-то посерьёзнее… А для себя — почему бы и нет?
Не нужно думать, что такой подход позволяет делать только условно неповоротливые большие конструкции — кое-кто с использованием такого подхода делает даже гусеничные байки:
И даже гусеничные моторизованные кресла (что интересно само по себе):
Так что, как можно видеть, старые покрышки — вполне себе неплохой донор для создания дешёвых, износоустойчивых и недорогих гусениц.
▍ Силовой драйвер
Как было уже сказано выше, зачастую имеющиеся в продаже двигатели снабжаются собственным драйвером для управления ими.
Однако если вы хотите «прокачаться» в знаниях и использовать более гибкий подход, то вы можете собрать драйвер самостоятельно, так как для управления коллекторным двигателем всего лишь необходима сборка так называемого H-моста, который можно составить из четырёх транзисторов, подобранных по току. Более детальный пример и разбор конкретной сборки Н-моста можно глянуть, например, вот здесь. Такой подход даёт возможность собрать свой собственный драйвер, не надеясь на покупной.
Соответственно, учитывая, что у нас используется четыре двигателя (по одному на каждую гусеницу, подъёмник платформы с ножом, привод самого ножа) — потребуется собрать 4 таких драйвера.
Кроме того, самодельный драйвер даёт возможность всё это смонтировать на самодельной плате, соответственно, уменьшив количество соединительных проводов и увеличив надёжность в целом.
▍ Система удалённого управления и микроконтроллер
Одним из самых простых способов управления, на мой взгляд, является использование микроконтроллера esp32: так как газонокосилкой никто не управляет, «находясь от неё в километрах», то стандартная дальность управления, доступная с помощью Wi-Fi соединения, вполне годится для контроля газонокосилки, находясь от неё в пределах прямой видимости.
В случае выбора такого решения можно взять код вот отсюда — только его потребуется доработать: так как у нас две отдельные гусеницы, с двумя отдельными двигателями — необходимо будет синхронизировать скорости вращения двигателей, чтобы машинка могла ехать прямо. Внизу я написал некоторые соображения, которые могут вам помочь в доработке кода выше.
Одним из самых простых способов для синхронизации скоростей вращения двигателей является установка на вал каждого двигателя энкодера — например, пластикового диска, распечатанного на 3D принтере, с расположенными по кругу щелями или отверстиями, которые проходят мимо цифрового инфракрасного датчика.
При появлении щели/отверстия напротив датчика, сигнал с него изменяется. Отслеживая сигналы с двух датчиков одновременно, а также временные интервалы, в течение которых сигнал повторяется (например, отслеживаем повторение LOW или HIGH) на каждом датчике — можно понять, с какой скоростью вращается каждый двигатель. И методом замедления более быстрого двигателя — синхронизировать скорости их вращения.
В качестве альтернативного способа использованию дырчатого диска энкодера можно использовать диск с неодимовыми магнитиками, отслеживая изменение магнитного поля с помощью цифрового датчика Холла.
Такой способ хорош тем, что он совершенно не боится изменений в освещении, случайного лучика солнца, проникшего через щель в устройстве, нагрева устройства во время работы на солнце (после чего потенциально могут начаться сбои — так как всё вокруг начнёт «фонить» в инфракрасном диапазоне) и т.д.
На практике могу сказать, что такая синхронизация происходит практически мгновенно, и в жизни это выглядит так, как будто платформа сразу начинает прямолинейное движение (хоть это и не так, и постоянно происходит коррекция скоростей, например, в тех машинках, которые я когда-то собирал, коррекция производилась 12 раз на каждый оборот колеса).
Чтобы коррекция не производилась скачкообразно (и таким способом весьма затруднительно достичь синхронизации) — используют ПИД-алгоритм.
И таким образом, в общем случае последовательность шагов при коррекции скоростей двух двигателей выглядит следующим образом:
- На каждой гусенице находится по одному датчику на энкодере двигателя, который описан выше.
- Этот датчик подключается к коду с использованием функции attachInterrupt(). Задача этой функции заключается в том, чтобы приостановить выполнение основного потока программы, выполнить небольшую подпрограмму (вашу, самописную, которая корректирует скорости), вызываемую с помощью attachInterrupt() и вернуть управление основному потоку.
- После появления прерывания, отслеживание прерываний останавливается (чтобы новое появившееся прерывание не прервало наш процесс вычислений и корректировки скорости) с использованием функции detachInterrupt().
- Далее происходит сверка скоростей двигателей и запись в часть программы, отвечающую за скорость одного из двигателей (более быстро вращающегося) — значения ШИМ, полученного с помощью алгоритма ПИД-регулятора.
- Далее снова подключаются отслеживания прерываний, с помощью attachInterrupt().
- Управление возвращается основному потоку программы.
Таким образом, мне удавалось достигать прямолинейного движения.
Тем не менее у такого подхода (не у алгоритма) в целом есть серьёзный изъян: несовершенство реальных физических исполнительных устройств зачастую не позволяет реализовать прямолинейное движение в полной мере, даже если всё настроено и подключено правильно (начинает сносить в какую-либо из сторон).
Связано это с кучей разных причин: разные физические размеры двигателей, их расположенность немного на разной высоте, перекособоченность самой платформы и т.д.
Поэтому по моему опыту могу сказать, что гораздо более предпочтительным вариантом реализации прямолинейного движения, на мой взгляд, является использование платы гироскопа-акселерометра. Это сразу отвязывает нас от несовершенства физического исполнения устройства, и оно в теории будет ехать прямо, даже если «кривое-косое и собрано левой ногой» :-)
Подытоживая, можно сказать, что сборка дистанционно управляемой газонокосилки — весьма любопытная задача как сама по себе, так как позволит как прокачаться сразу во множестве областей, так и вполне может стать коммерчески успешным проектом. Ведь каждый ролик на YouTube, где показываются аналогичные газонокосилки, сопровождается большим количеством комментариев со всех концов света, которые можно обобщить как «где купить???» :-)
Заниматься робототехникой, производя (даже условно штучно) интересный всему миру товар — что может быть лучше? ;-) Кроме того, международные продажи (например, через тот же самый AliExpress) позволяют защититься от ухудшения экономической ситуации в какой-либо конкретной стране, так как товар продаётся сразу везде.
В качестве дальнейшего логичного апгрейда можно попробовать соединить такую косилку с видеокамерой и обработкой изображений, чтобы косить только выделенные пользователям участки. В любом случае занятие весьма интересное и есть куда двигаться…
И напоследок, в качестве мотиватора: а кое-кто уже не стал долго думать и создал завод по производству электротранспорта, одним из изделий которого являются разнообразные гусеничные платформы, в том числе и гусеничное кресло:
Только надо будет учесть, что если производить такие газонокосилки серийно, то надо будет суметь конкурировать вот с этим. Тем не менее полагаю, что, применив описанные выше подходы — это более чем возможно.
Telegram-канал со скидками, розыгрышами призов и новостями IT 💻