Сделай сам: Российский веб-разработчик собрал робота-газонокосилку на базе Arduino и Raspberry Pi Статьи редакции

Программист из Подмосковья Вячеслав Голицын самостоятельно собрал газонокосилку из металла и покупных запчастей, автоматизировав её передвижение при помощи Raspberry Pi и Arduino. О процессе работы над роботом он рассказал в блоге на GeekTimes.

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

Вы спросите: почему газонокосилка, лето ведь заканчивается, а зимы у нас долгие? Не зря ведь в народе говорят: «The winter is coming...». Возможно, ответ — банальная лень или любознательность, возможно — всё вместе, но поддерживать газон в красивом виде — задача не из простых даже при скромных размерах угодий, кои и представлены у вашего покорного слуги.

Вячеслав Голицын, веб-разработчик

Каркас для будущей газонокосилки Голицын сварил из металлических профильных труб, а колёса от тележки купил на строительном рынке. Для ведущей пары колёс житель Подмосковья использовал два двигателя от стеклоочистителей ВАЗ-2108, для покоса — двигатель внутреннего сгорания от ручной газонокосилки, а в качестве питания — аккумулятор на 12 вольт.

От батареи разработчик запитал USB-свитч, от него — Raspberry Pi, а от компьютера подал электричество на плату Arduino, которая и управляла двигателями. Помимо этого изобретатель оснастил газонокосилку веб-камерой и «Wi-Fi-свистком».

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

Движение робота-газонокосилки автоматизируется через Raspberry Pi, который с помощью скрипта на Python записывает местонахождение устройства в таблицу MySQL в виде ячеек по 0,5 метра. В зависимости от известных роботу данных ячейки таблицы окрашиваются в разный цвет: серый — там косилка ещё не была, зеленый — трава не скошена, желтый — скошена, красный — есть препятствие, синий — местоположение самой машины.

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

Как именно газонокосилка выбирает траекторию для движения и насколько эффективна такая техника покоса, Голицын не уточнил.

Учитывая, как сильно Илон Маск (да и не только он) предупреждал меня (я таки надеюсь, что ко мне он тоже обращался) об опасности искусственного интеллекта, я решил пока его не внедрять в сие изделие, дабы внезапно обрушившаяся сингулярность не перекосила все хвойники на моём участке.

Вячеслав Голицын, веб-разработчик

Код для управления газонокосилкой Голицын разместил в открытом доступе. В дальнейшем разработчик собирается обновить библиотеку OpenCV, подключить вторую веб-камеру и создавать трёхмерную карту препятствий, а также внедрить в косилку систему прямого подключения аккумулятора к электросети, чтобы не заряжать его отдельно.

0
11 комментариев
Написать комментарий...
Откровенный Данила
Каркас Голицын спаял из чёрного металла

ШТО
Не спаял, а сварил, не из "черного металла", а как минимум, из труб из "черного металла".

Paspberry Pi анализирует примерный цвет того, что находится в кадре, и определяет, подстрижен ли газон или нет

Ну вообще ни разу не так. Сейчас он просто выводит картинку с вебки, в будущем хочет избегать тротуаров с помощью OpenCV и калибровать границы участка. Как вы вообще предлагаете определять подстриженность газона по цвету травы?
Я понимаю, что вы пытаетесь переписать статью с технического языка на понятный всем, но полную отсебятину-то не надо добавлять.

Ответить
Развернуть ветку
Партийный кот

Спасибо, я видимо неправильно понял фразу «оставить внедрение функционала, завязанного на OpenCV для версии 2.0». Про трубы тоже поправил.

Ответить
Развернуть ветку
Прежний пёс_анон

Комментарий недоступен

Ответить
Развернуть ветку
Структурный нос

Сварил, Никита! Он сварил, а не спаял >.<

Ответить
Развернуть ветку
Симпатичный космос
Raspberry Pi и Arduino

Набор "Я у мамы инженер"

Ответить
Развернуть ветку
Линейный крюк

"я у мамы не взял уроки как НЕ надо снимать видосы на телефон"

Ответить
Развернуть ветку
Школьный Влад

может он для инстаграма?

Ответить
Развернуть ветку
Справедливый танк88

Комментарий недоступен

Ответить
Развернуть ветку
Крохотный Мурод

Прям взял, и спаял?

Ответить
Развернуть ветку
Школьный Влад

Скажи спасибо, что не скрутил.

Ответить
Развернуть ветку
Отчаянный волк

При таком шуме и скорости легче самому покосить газон.

Ответить
Развернуть ветку
Читать все 11 комментариев
null