Проекты Raspberry Pi: Современные решения требуют более современных решений!

На этой неделе мы представляем вам несколько очень современный Проекты Raspberry Pi!

Вы когда-нибудь видели мем, который звучит так: "Современные проблемы требуют современных решений"?

А что будет, если ваши современные решения создадут современные проблемы?

Тогда вам нужно современное решение.

Поэтому современные решения требуют современных решений.

Иногда, однако, эти проблемы настолько незначительны, что производители не будут утруждать себя созданием решения для вас.

К счастью, как энтузиасты Raspberry Pi, наша изобретательность безгранична.

современные решения требуют современных решений

Отключение автоматического запуска двигателя

В наши дни, когда цены на бензин зашкаливают, пробег автомобиля имеет большое значение.

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

Но некоторые люди предпочитают обходиться без него, и я понимаю, почему.

Некоторое время назад я ездил на современном автомобиле, взятом напрокат. Я обнаружил, что при включенной системе автоматического старта мне приходится "планировать" давление на тормоз, чтобы успеть запустить двигатель до того, как загорится зеленый свет.

Иногда я забывал об этом и сидел на зеленом дольше, чем мне хотелось бы. Я компенсировал это, сильнее нажимая на газ. Не рекомендуется.

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

Больше нет!

План проекта

сервопривод, нажимающий кнопку клавиатуры
Raspberry Pi Pico с сервоприводом на клавиатуре.

То, что вы видите на видео выше, - это коммерческий продукт, но его можно легко реализовать с помощью Raspberry Pi Pico и сервопривода SG90. Питание для Raspberry Pi Pico может осуществляться через USB-порты автомобиля.

Основной код MicroPython выглядит следующим образом и предполагает, что вы подключили сигнальную линию сервопривода к GPIO 16.

from time import sleep

from machine import Pin

from machine import PWM

pwm = PWM(Pin(16))

pwm.freq(50)

pwm.duty_ns(2000000)

sleep(0.5)

pwm.duty_ns(500000)

В этом есть несколько сложностей:

Сначала нужно настроить угол наклона сервопривода. Он регулируется значением, передаваемым в pwn_duty_nsв наносекундах.

2 миллиона наносекунд (2 000 000) равны полному обороту, а 500 000 - полному обороту в противоположном направлении.

В итоге я использовал только 1 000 000 - 2 000 000 наносекунд, а не весь диапазон сервопривода.

Во-вторых, вам нужно знать, как отключить функцию "старт-стоп" в вашем автомобиле. Некоторые из них требуют нажатия и удержания кнопки, поэтому вам нужно будет настроить спать длина.

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

сервопривод raspberry pi pico
Соедините Raspberry Pi Pico с беспроводным контроллером, и вы больше никогда не встанете с кровати, чтобы выключить свет!

Но один и тот же проект - управление сервоприводом с помощью Raspberry Pi Pico - на самом деле может быть очень полезен для многих других проектов, например, для переключения тумблера. Я использую именно этот метод для лечь в постель и выключить свет в спальне.

raspberry pi pico клавиатура сервоконтроллер против бездействия
Не дайте этой заставке выскочить на экран!

Или же с его помощью можно остановить заставку, нажав случайную кнопку (например, INSERT).

OpenMower: Роботизированная газонокосилка с GPS

Косилка OpenMower с GPS-навигацией на Raspberry Pi
Детали от OpenMower, газонокосилки с GPS-навигацией. Скриншот с YouTube Клеменса Эльфлейна.

"Роботы-газонокосилки - отстой!"

Так считает Клеменс Эльфлейн, создатель OpenMower.

Он считает, что эти робокосилки слишком тупые.

"По сути, все эти боты едут в случайном направлении, пока не попадут на границу газона, поворачиваются на случайную длительность и повторяют. Я думаю, мы можем сделать лучше!"

Поэтому вместо произвольного метода стрижки газона Клеменс ищет что-то более точное, интегрируя GPS. Преимущество в том, что робокосилка может автономно перемещаться на задний двор и косить там траву!

Робокосилка - это современное решение, позволяющее сократить рутинную работу по стрижке газона. Но этого недостаточно.

Помните, почему вы это читаете... современные решения требуют более современных решений!

Цели проекта

Клеменс использовал коммерческий продукт под названием YardForce Classic 500 и установил в него Raspberry Pi 4 и Raspberry Pi Pico.

Как говорится в его GithubТаковы его цели:

Автономная стрижка газона: Очевидно, что устройство должно уметь автоматически подстригать газон.

  • Хорошая безопасность: Устройство должно быть безопасным, например, аварийная остановка при подъеме или падении.
  • Провод по периметру не нужен: Мы хотим быть гибкими и поддерживать несколько зон кошения.
  • Низкая стоимость: он должен быть дешевле, чем готовый продукт среднего ценового диапазона
  • Открытость: я хочу поделиться знаниями и дать возможность другим построить OpenMower.
  • Приятно смотреть: Вам не должно быть стыдно, что ваш газон стрижет OpenMower.
  • Избегайте препятствий: Косилка должна обнаруживать препятствия и избегать их во время кошения.
  • Обнаружение дождя: Устройство должно уметь определять плохие погодные условия и приостанавливать кошение до их улучшения.

Сможете ли вы это сделать?

Клеменс создал группу в Discord, и люди ежедневно принимают в ней участие.

Он не рекомендует делать это, если вы не знаете, что делаете.

Он дает понять, что если что-то пойдет не так, не стоит стучаться к нему в дверь.

Присоединяйтесь к OpenMower's Дискорд или посмотреть их GitHub.

Без какашек, Шерлок: как избавиться от собачьих какашек во дворе

У Калеба Олсона есть корги, который оставляет помет по всему двору.

Изначально он разработал систему, которая отмечает места, где его собака Твинки роняет какашки, и наносит их на изображение. Современное решение.

Но современное решение оказалось "слишком трудоемким", поскольку ему приходится обращаться к своему телефону, чтобы понять, где находятся те или иные места.

И что же он сделал? Он установил роботизированную руку с лазером, который указывает, где находится какашка.

Современные решения требуют более современных решений.

Калеб Олсон детектор собачьих какашек лазерный raspberry pi
Красная точка - это лазер, который направляет Калеба Олсона к местам, где гадит его собака. Скриншот с YouTube Калеба.
Калеб Олсон (скриншот с YouTube)

Компьютерное зрение имеет решающее значение для этой задачи, поскольку оно запускает лазерное наведение какашек. Скрестив руки, компьютер запускает систему наведения, указывая на первое место для какашек.

Затем, когда он нагибается, чтобы подобрать какашку, OpenCV обнаруживает это и перемещает его к следующему месту.

У вас есть какие-нибудь из этих... проектов?

Я ежедневно просматриваю Reddit, Twitter и другие сайты, чтобы найти интересные проекты для публикации в рассылке PiCockpit.

Вы также можете ознакомиться с нашей серией проектов Paragon здесь.

Если вы знаете интересный проект, оставьте комментарий ниже 👇.

Если вам понравилась эта серия, подпишитесь на нашу рассылку 👇.

Комментировать