Как сделать робот пылесос
Перейти к содержимому

Как сделать робот пылесос

  • автор:

Умный робот-пылесос своими руками на Arduino

Привет, ребята, вы новичок в мире робототехники или электроники? ИЛИ Вы ищете простой, но мощный проект, чтобы произвести впечатление на ваших друзей и учителей? Тогда это самое место.

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

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

Необходимые материалы и компоненты:

Итак, теперь у нас есть идея нашего автоматического робота-уборщика пола, и мы знаем, что делаем. Итак, давайте посмотрим, с чего нам следует начать выполнение. Чтобы построить робота по нашей идее, нам сначала нужно определиться со следующим:

  • Тип микроконтроллера
  • Требуются датчики
  • Требуются двигатели
  • Материал шасси робота
  • Емкость батареи

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

Тип микроконтроллера:

Выбор микроконтроллера — очень важная задача, так как этот контроллер будет работать как мозг вашего робота. Большинство проектов DIY создаются на базе Arduino и Raspberry Pi, но не обязательно должны быть одинаковыми. Нет конкретного микроконтроллера, с которым можно было бы работать. Все зависит от требований и стоимости.

Как планшет не может быть разработан на 8-битном микроконтроллере, и нет смысла использовать ARM cortex m4 для разработки электронного калькулятора.

Выбор микроконтроллера полностью зависит от требований продукта:

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

2. Далее выбирается список контроллеров согласно техническим требованиям. В этом списке представлены контроллеры разных производителей. Доступно множество контроллеров для конкретных приложений.

3. Затем контроллер дорабатывается в зависимости от стоимости, доступности и поддержки от производителя.

Если вы не хотите делать много тяжелой работы и просто хотите изучить основы микроконтроллеров, а затем углубиться в них, тогда вы можете выбрать Arduino. В этом проекте мы будем использовать Arduino. Ранее мы создали множество типов роботов с использованием Arduino:

  • Робот, управляемый DTMF с использованием Arduino
  • Робот следящего за линией, использующий Arduino
  • Робот, управляемый компьютером, использующий Arduino
  • Робот, управляемый Wi-Fi, с использованием Arduino
  • Робот, управляемый жестами руки, на основе акселерометра с использованием Arduino
  • Игрушечная машинка с управлением по Bluetooth и Arduino

Требуемые датчики:

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

Есть много других классных датчиков, которые мы будем использовать в наших будущих проектах, но теперь давайте сосредоточимся на ИК-датчике и ультразвуковом датчике, поскольку эти два парня будут обеспечивать видение нашего робо-автомобиля. Проверить работу ИК-датчика можно здесь. Ниже показаны изображения модуля ИК-датчика и ультразвукового датчика:

Ультразвуковой датчик состоит из двух круглых глазков, один из которых используется для передачи американского сигнала, а другой — для приема американских лучей. Время, необходимое лучам для передачи и приема обратно, рассчитывается микроконтроллером. Теперь, когда известны время и скорость звука, мы можем рассчитать расстояние по следующим формулам.

  • Расстояние = Время x Скорость звука, деленная на 2

Значение делится на два, поскольку луч движется вперед и назад на одинаковое расстояние. Подробное объяснение использования ультразвукового датчика дано здесь.

Требуются двигатели:

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

Материал шасси робота:

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

Эта проблема полностью исчезла с поля зрения после появления 3D-принтеров. Я планирую когда-нибудь напечатать детали на 3D-принтере и сообщить вам то же самое. А пока давайте будем использовать деревянные листы для сборки нашего робота.

Емкость батареи:

Выбор емкости аккумулятора должен быть нашей последней частью работы, потому что он полностью зависит от вашего шасси и двигателей. Здесь наша батарея должна приводить в действие пылесос, который потребляет около 3-5A и четыре двигателя PMDC. Следовательно, нам потребуется тяжелая батарея. Я выбрал 12V 20Ah SLAB (герметичный свинцово-кислотный аккумулятор), и он довольно громоздкий, поэтому у нашего робота есть четыре двигателя PMDC, чтобы тянуть этого громоздкого парня.

Теперь, когда мы выбрали все наши обязательные компоненты, давайте перечислим их.

  • Деревянные листы для шасси
  • Датчики ИК и США
  • Пылесос, работающий от постоянного тока
  • Ардуино Уно
  • Аккумулятор 12В 20Ач
  • Микросхема драйвера двигателя (L293D)
  • Рабочие инструменты
  • Соединительные провода
  • Энергия энтузиазма учиться и работать.

Большинство наших компонентов описано в описании выше, я объясню оставшиеся моменты ниже.

Пылесос постоянного тока:

Поскольку наш робот работает от системы постоянного тока 12 В 20 Ач. Наш пылесос также должен быть пылесосом на 12 В постоянного тока. Если вы не знаете, где его взять, вы можете посетить eBay или Amazon, чтобы купить пылесосы для чистки автомобилей.

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

Драйвер двигателя (L293D):

Драйвер двигателя — это промежуточный модуль между Arduino и Motor. Это связано с тем, что микроконтроллер Arduino не сможет обеспечить ток, необходимый для работы двигателя, и может просто подавать 40 мА, поэтому потребление большего тока приведет к необратимому повреждению контроллера. Итак, мы запускаем драйвер двигателя, который, в свою очередь, управляет двигателем.

Мы будем использовать микросхему драйвера двигателя L293D, которая сможет подавать ток до 1А, поэтому этот драйвер будет получать информацию от Arduino и заставлять двигатель работать по желанию.

Это оно!! Я дал большую часть важной информации, но перед тем, как мы начнем строить робота, рекомендуется ознакомиться с таблицей данных L293D и Arduino. Если у вас есть какие-либо сомнения или проблемы, вы можете связаться с нами через раздел комментариев.

Сборка и тестирование робота:

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

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

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

Если все работает нормально, вы можете подключить датчики к Arduino, как показано на принципиальной схеме, и использовать полный код, указанный в конце. Как видите, я установил ультразвуковой датчик спереди и два ИК-датчика с обеих сторон робота. Радиатор устанавливается на L293D на тот случай, если микросхема быстро нагреется.

Вы также можете добавить несколько дополнительных частей, подобных этой

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

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

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

Принципиальная электрическая схема:

Код для этого робота-пылесоса можно найти в разделе кода ниже. Как только соединение установлено и программа загружена в Arduino, ваш робот готов приступить к действиям. Работа кода поясняется с помощью комментариев. Если вы хотите увидеть этого робота в действии, посмотрите видео ниже.

Кроме того, я также планирую полностью напечатать детали в 3D в следующей версии. Я также собираюсь добавить несколько интересных функций и сложных алгоритмов, чтобы он покрыл всю площадь ковра, был удобен в обращении и был компактным. Так что следите за обновлениями в будущем.

Робот-пылесос на ардуино

Несмотря на то, что на geektimes уже есть несколько статей про роботы-пылесосы на ардуино тут и тут, Думаю не будет лишним опубликовать еще один проект. Тем более он сделан чуть ближе к магазинным образцам и, поскольку проект постоянно продолжает развиваться, со временем превзойдет по функционалу некоторые из них. Данный пост я публикую с разрешения разработчика этого робота-пылесоса, поскольку у автора нет возможности публиковать статьи со своего аккаунта. Поэтому статья будет в форме небольшого интервью с создателем вперемешку со схемами, фото и кодом робота-пылесоса. Но начнем с видеодемонстрации уборки комнаты этим пылесосом.

Итак, начнем, пожалуй, с конструкции и принципа работы пылесоса.

Из схемы видно, что пылесос оборудован 6 инфракрасными датчиками. Они срабатывают при приближении пылесоса к препятствию, давая комманду остановиться и развернуться не врезаясь в него. Если же ни один из 6 датчиков не сработал и робот пылесос сталкивается с препятствием, то тогда срабатывает один из 2 выключателей, которые соединяют бампер (в котором находятся ИК датчики) и корпус робота.

Внимательные читатели заметили, что на схеме не показано питание робота. Тут решение вполне стандартное, использованы 4 аккумулятора формата 18650, подключенных последовательно две пары, через контроллер заряда-разряда АКБ. Далее с контроллера через выключатель подсоединены повышающий и понижающий DC-DC преобразователи. + 12 вольт питает моторы колес и моторы передних щеток. +5 вольт питает всю остальную электронику. Турбина питается от 7 — 8 вольт, так что для нее преобразователь не нужен. Выглядит это так:

В итоге список основных компонентов выглядит так:

ардуино про мини
L298N Motor Driver Module
колеса
повышающий конвертер
понижающий конвертер
ИК датчик 6 шт
контроллер заряда-разряда
крыльчатка для турбины (около 200 руб)
ПВХ для изготовления корпуса
АКБ 18650 4 шт.
2 моторчика для щеток (модель не сильно важна)
1 моторчик для турбины
2 выключателя столкновения.
Один из вариантов скетча для хаотичной уборки

#define mot_ena 9 //пин ШИМа левого мотора
#define mot_in1 8 //пин левого мотора
#define mot_in2 7 //пин левого мотора
#define mot_in3 6 //пин правого мотора
#define mot_in4 4 //пин правого мотора
#define mot_enb 10 //пин ШИМа правого мотора

#define ir_1 A0 //пин 1 ИК-датчика
#define ir_2 A1 //пин 2 ИК-датчика
#define ir_3 A2 //пин 3 ИК-датчика
#define ir_4 A3 //пин 4 ИК-датчика
#define ir_5 A4 //пин 5 ИК-датчика
#define ir_6 A5 //пин 6 ИК-датчика

#define lev_vik 11 //пин левого выключателя
#define pra_vik 12 //пин правого выключателя

//для выравнивания скорости колес
byte max_skor_lev = 254;
byte max_skor_prav = 244;
//———————————

byte min_skor = 0;

randomSeed(analogRead(A7));
// пины энкодеров на вход
pinMode(3, INPUT); // пин левого энкодера на вход
pinMode(2, INPUT); // пин правого энкодера на вход
//————————-
// пины для левого и правого моторов на выход
pinMode(mot_ena, OUTPUT);
pinMode(mot_in1, OUTPUT);
pinMode(mot_in2, OUTPUT);
pinMode(mot_in3, OUTPUT);
pinMode(mot_in4, OUTPUT);
pinMode(mot_enb, OUTPUT);
//——————————————-
// пины ИК-датчиков на вход
pinMode(ir_1, INPUT);
pinMode(ir_2, INPUT);
pinMode(ir_3, INPUT);
pinMode(ir_4, INPUT);
pinMode(ir_5, INPUT);
pinMode(ir_6, INPUT);
//————————-
// пины левого и правого выключателей на вход
pinMode(lev_vik, INPUT);
pinMode(pra_vik, INPUT);
//—————————
delay(3000);

// если срабатывает левый выключатель на бампере
if (digitalRead(lev_vik) == LOW)
<
ROB_STOP();
delay(200);
ROB_NAZAD();
delay(150);
ROB_STOP();
delay(200);
ROB_PRAV();
delay(random(400, 1500));
ROB_STOP();
delay(200);
ROB_VPERED();
>
//————————————————
// если срабатывает правый выключатель на бампере
if (digitalRead(pra_vik) == LOW)
<
ROB_STOP();
delay(200);
ROB_NAZAD();
delay(150);
ROB_STOP();
delay(200);
ROB_LEV();
delay(random(400, 1500));
ROB_STOP();
delay(200);
ROB_VPERED();
>
//————————————————
// если срабатывает 2 ИК-датчик
if (digitalRead(ir_2) == LOW)
<
ROB_STOP();
delay(200);
ROB_PRAV();
delay(random(200, 1100));
ROB_STOP();
delay(200);
ROB_VPERED();
>
//————————————————
// если срабатывает 3 ИК-датчик
if (digitalRead(ir_3) == LOW)
<
ROB_STOP();
delay(200);
ROB_PRAV();
delay(random(200, 1100));
ROB_STOP();
delay(200);
ROB_VPERED();
>
//————————————————
// если срабатывает 4 ИК-датчик
if (digitalRead(ir_4) == LOW)
<
ROB_STOP();
delay(200);
ROB_LEV();
delay(random(200, 1100));
ROB_STOP();
delay(200);
ROB_VPERED();
>
//————————————————
// если срабатывает 5 ИК-датчик
if (digitalRead(ir_5) == LOW)
<
ROB_STOP();
delay(200);
ROB_LEV();
delay(random(200, 1100));
ROB_STOP();
delay(200);
ROB_VPERED();
>
//————————————————
// если срабатывает 1 ИК-датчик
if (digitalRead(ir_1) == LOW)
<
ROB_PRAV();
delay(10);
ROB_VPERED();
>
//————————————————
// если срабатывает 6 ИК-датчик
if (digitalRead(ir_6) == LOW)
<
ROB_LEV();
delay(10);
ROB_VPERED();
>
//————————————————

// поворот направо на месте
void ROB_PRAV()
<
// левый мотор вперед
digitalWrite(mot_in1, LOW);
digitalWrite(mot_in2, HIGH);
analogWrite(mot_ena, max_skor_lev);
// правый мотор назад
digitalWrite(mot_in3, LOW);
digitalWrite(mot_in4, HIGH);
analogWrite(mot_enb, max_skor_prav);
>
//——————
// поворот налево на месте
void ROB_LEV()
<
// правый мотор вперед
digitalWrite(mot_in3, HIGH);
digitalWrite(mot_in4, LOW);
analogWrite(mot_enb, max_skor_prav);
// левый мотор назад
digitalWrite(mot_in1, HIGH);
digitalWrite(mot_in2, LOW);
analogWrite(mot_ena, max_skor_lev);
>
//———————
// езда вперед
void ROB_VPERED()
<
// левый мотор вперед
digitalWrite(mot_in1, LOW);
digitalWrite(mot_in2, HIGH);
analogWrite(mot_ena, max_skor_lev);
// правый мотор вперед
digitalWrite(mot_in3, HIGH);
digitalWrite(mot_in4, LOW);
analogWrite(mot_enb, max_skor_prav);
>
//————————————-
// езда назад
void ROB_NAZAD()
<
// левый мотор назад
digitalWrite(mot_in1, HIGH);
digitalWrite(mot_in2, LOW);
analogWrite(mot_ena, max_skor_lev);
// правый мотор назад
digitalWrite(mot_in3, LOW);
digitalWrite(mot_in4, HIGH);
analogWrite(mot_enb, max_skor_prav);
>
//————————————
// стоп
void ROB_STOP()
<
// левый мотор стоп
digitalWrite(mot_in1, LOW);
digitalWrite(mot_in2, LOW);
analogWrite(mot_ena, min_skor);
// правый мотор стоп
digitalWrite(mot_in3, LOW);
digitalWrite(mot_in4, LOW);
analogWrite(mot_enb, min_skor);
>
//———————————

Ну и небольшое интервью с автором этого проекта. Автора зовут Дмитрий Иванов, живет в г. Сочи.

— Дмитрий, как пришла идея сделать робот-пылесос?

— Увидел на ютубе видео, где робот-пылесос делал уборку, захотел себе купить такой, но когда посмотрел цену, то подумал и решил делать сам. Сначала сделал первую версию робота, у него были слабые моторы на колесах, несъемный контейнер для мусора и пыли, мало датчиков препятствия и я сделал вторую версию, лишенную этих недостатков.

— Сколько в итоге денег и времени ушло на его изготовление?

«Примерно 5000 тыс. руб. плюс два месяца работы»

— Что было самым сложным в процессе постройки?

Самое сложное сделать корпус и турбину, подогнать все детали.

— Есть планы продолжать совершенствование робота?

В планах покрасить корпус, сделать несколько режимов уборки, подключить блютус модуль и написать программу для телефона на андроиде (управление режимами, ручное управление, отображение заряда АКБ). Ну и сделать под пылесосом синюю подсветку для красоты.

Робот пылесос своими руками. Часть 2 ⁠ ⁠

Выдался выходной и пришли некоторые посылочки (прям как совпало). Распаковками мучать не народ нет желания, поэтому к делу. Решил все почти полностью разобрать чтобы удобней было внедрять новые «плюшки» ,а заодно и поведать о более детальном устройстве монстра)))

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Снимаем самое сердце — электронику.

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Крепится все на уголок для удобства разборки.

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Снимаем «подметалки» . Шайбы компенсируют неровности самого мотор-редуктора.

Скидываем АКБ и DC-DC переобразователи. Кстати АКБ закреплял их стяжками к раме. Снизу все банки изолированы.

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Вот кстати модель движка виднеется. Ссылки почти на все кину в конце поста.

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Вот попутно еще фото реализации крепления колес.

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Выемку сделал специально чтоб колесо на оси не проворачивалось.

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Теперь снимаем сам пылесос.

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Попутно еще фотки самого устройства пылесоса.

Чертеж крыльчатки есть в прошлом посте.

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Ну теперь продолжим с самим монстром. Делаем новую площадку под ардуино мега и драйвер двигателей.

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

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

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Крепим «Мегу» к площадке через латунные стоечки. А драйвер просто на болтики чтоб по высоте не мешал будущему второму этажу.

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Прикидываем второй этаж для экрана и датчиков (которые кстати все еще не пришли)

Робот пылесос своими руками. Часть 2 Робот-пылесос, Своими руками, Arduino, Длиннопост

Теперь по деталюхам :

Аллюминиевый уголок — стоительный магаз.

Критика (по делу) и идеи по улучшению приветствуются. Надеюсь пост будет полезен кому нибудь. ВСЕМ ДОБРА.

1.2K постов 20K подписчиков

Правила сообщества

В нашем сообществе запрещается:

• Добавлять посты не относящиеся к тематике сообщества, либо не несущие какой-либо полезной нагрузки (флуд)

• Задавать очевидные вопросы в виде постов, не воспользовавшись перед этим поиском

• Выкладывать код прямо в посте — используйте для этого сервисы ideone.com, gist.github.com или схожие ресурсы (pastebin запрещен)

• Рассуждать на темы политики

Жаль что датчики не пришли. можно было бы уже обкатывать.

Иллюстрация к комментарию

Продолжение постройки будет по мере появления всего необходимого

А я вот для своего робота такую цацку заказал:

В каждом ардуинщике помирает электронщик 🙂 травление не практикуешь?

Как придумать велосипед⁠ ⁠

И так, сидел я как то вечером, отдыхал. И тут подходит жена и говорит, чё ты тут разлегся. иди автоматизируй. Тыж сисадмин. А просьба была простая, нужно было выводить показания температуры и влажности воздуха и включать и выключать фитолампы в нужное время, поняв что хочется страдать я решил сделать свой проект а не покупать) И так идея очень простая. Посидев пораскинув мозгами я пришел к выводу что мне нужна Arduino nano, датчик влажности и температуры(DHT22) , часы реального времени(DS3231), экран 1602 с i2c и реле для управление 220В. Отлично, пошел закупился рассыпухой. Теперь это надо всё соеденить на макетке и написать код. Учитвая что мой первый проект на ардуино то было не легко.

Как придумать велосипед Самоделки, Рукожоп, Рукоделие с процессом, Своими руками, Электроника, Arduino, Электрика, Длиннопост

Сказано сдланно, с одним условием) Что С++ я не знаю от слова совсем и пришлось прибегнуть к помощи друга который поог написать код) В планах изучить потому как ну очень это интересно) Ну и пилили мы код на чистом C++. Через VScode и PlatformIO. Спасибо @slava594 тебе за помощь) Потестили работает) Теперь самое веселое, надо собрать это все дело в корпус. О, забыл прикрепить схему, точно)

Как придумать велосипед Самоделки, Рукожоп, Рукоделие с процессом, Своими руками, Электроника, Arduino, Электрика, Длиннопост

Берем значит пластиковую коробочку для корпуса купленную на радиорынке(100Х60Х25), и прикидываем как у нас будут лежать компоненты.

Как придумать велосипед Самоделки, Рукожоп, Рукоделие с процессом, Своими руками, Электроника, Arduino, Электрика, Длиннопост

Дальше начинаем редактировать наш корпус и сразу примерим как оно будет выгялядеть

Как придумать велосипед Самоделки, Рукожоп, Рукоделие с процессом, Своими руками, Электроника, Arduino, Электрика, Длиннопост

Как придумать велосипед Самоделки, Рукожоп, Рукоделие с процессом, Своими руками, Электроника, Arduino, Электрика, Длиннопост

Как придумать велосипед Самоделки, Рукожоп, Рукоделие с процессом, Своими руками, Электроника, Arduino, Электрика, Длиннопост

Самое сложное это было выпилить ровное отверстие) Сначала пытался ножом, потом фрезой и потом решил уже отпилить отрезным диском на дремеле) Поэтому много пришлось работать рашпилем что бы хоть что то ровное получить) Ну ничего. Как мы видим при работе с корпусом у нас появились косяки, а так как я не очень люблю белые корпуса и хочу перекрасить в чёрный то при покраске все косяки откроются поэтому шпаклюем, я это делал автомобильной шпаклёвкой. Не забываем добавить затвердитель!

Как придумать велосипед Самоделки, Рукожоп, Рукоделие с процессом, Своими руками, Электроника, Arduino, Электрика, Длиннопост

Теперь дело за малым, пошкурить и покрасить, в начале грунт потом краска и потом матовый лак, по итогу имеем вот такую картину, я корпус внутри прикрепил на шпашки и горячие сопли)

Как придумать велосипед Самоделки, Рукожоп, Рукоделие с процессом, Своими руками, Электроника, Arduino, Электрика, Длиннопост

Как придумать велосипед Самоделки, Рукожоп, Рукоделие с процессом, Своими руками, Электроника, Arduino, Электрика, Длиннопост

Как придумать велосипед Самоделки, Рукожоп, Рукоделие с процессом, Своими руками, Электроника, Arduino, Электрика, Длиннопост

Отлично, ну и теперь нам всё надо собрать согласно схеме) и прикрепить экран к корпусу, а а на что будем крепить? Правильно как всегда горячие спопли) А учитвая что места у нас не так много то чувствую что будет не легко) ну почти так и получилось) Да да я знаю что не очень красиво но я к этому и не стремился)

Как придумать велосипед Самоделки, Рукожоп, Рукоделие с процессом, Своими руками, Электроника, Arduino, Электрика, Длиннопост

В итоге почти всё собрав мы понимаем что мы не правильно прикреили экран) и потому надо всё пересобирать) Так как мноигие провода в притык по длине, и учитвая что я очень устал я решил сделаю потом) Когда нибудь) В итоге получается вот такая игрушка которая показывает температуру, влажность воздуха и управляет светом)

Как придумать велосипед Самоделки, Рукожоп, Рукоделие с процессом, Своими руками, Электроника, Arduino, Электрика, Длиннопост

Как придумать велосипед Самоделки, Рукожоп, Рукоделие с процессом, Своими руками, Электроника, Arduino, Электрика, Длиннопост

Сзади два провода потому как один на питание ардуинки а второй на управление реле(Светом).

На проект ушло около недели)

В целом мне нравится, есть конечно косяки, но мы ведь учимся) Есть идеи по даработке) Как минимум поставить аккум прикрепить WI-FI да и много всего)Всё это безобразие мне обошлось порядка 800Р, не считая краски, грунта и лака. Но я всё покупал в РФ, если брать у китайцев то будет минимум в два раза дешевле) Если будут какие то вопросы, пожелания, улучшения с радость выслушаю =) До скорых встреч!

Самодельный робот OTTO — открытый проект детского интерактивного робота на Arduino⁠ ⁠

По наводке levoslavievseti узнал о замечательном проекте: детском интерактивном роботе, пригодном для самостоятельной сборки, с открытым исходным кодом, с бесплатными моделями, чертежами, инструкциями, с бесплатной средой разработки «блочного типа» для детей, с бесплатным приложением для управления роботом в режиме прямого управления и т.д.

Спешу поделиться впечатлениями — мне кажется эта затея достойна популяризации!

Самодельный робот OTTO - открытый проект детского интерактивного робота на Arduino Arduino, Робот, Своими руками, Otto, Видео, YouTube, Длиннопост

Можно купить готовый набор для сборки (продаются как в РФ, так и на Али), можно самостоятельно распечатать пластиковые детали и купить отдельно электронику.

Помимо корпуса минимально желательно:

— 4 сервомашинки SG90;

— ардуинка (есть модели корпуса под разные варианты, я использовал Arduino Nano);

— подходящий шилд для сервомашинок;

— ультразвуковой датчик HC-SR04;

— с десяток коротеньких проводов dupont connector;

— аккумулятор для питания ардуинки;

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

По-моему желательно сразу добавить датчик касания и блютусный модуль — они ставятся сразу в базовый корпус без дополнительных деталей, и здорово расширяют фукнционал. (без блютуса нельзя будет управлять роботом напрямую, как радиоуправляемой игрушкой)

Самодельный робот OTTO - открытый проект детского интерактивного робота на Arduino Arduino, Робот, Своими руками, Otto, Видео, YouTube, Длиннопост

Вариантов дальнейшего апгрейда множество, там одних только моделей робота несколько — есть колёсный вариант, четвероногий. А к любому можно добавлять руки, дисплеи, микрофон, разные датчики и т.д.

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

Совсем уж без понимания как работает Ардуино будет, по-моему, сложновато, но в качестве «нижней планки» упомяну, что я, например, настолько тупой, что сжёг два контроллера, подключая 9V батарейку ко входу 5V вместо VIN. Ну то есть, если Вы хотя бы понимаете куда подключать питание контроллера — Вы уже справитесь лучше меня! :))

Вся исчерпывающая информация представлена на сайте https://www.ottodiy.com/ Всё разжёвано прям очень подробно, даже иногда слишком подробно: некоторые моменты пересекаются, и иногда не совсем понятно, что лучше читать отдельную инструкцию по, например, блютусу, чем пытаться разобраться по одной картинке в общей инструкции. Всё поделено на разделы: вот модели, вот сборка, вот код, вот моддинг. Очень круто, и всё даром!

Весьма недурственная среда блочного программирования, вполне доступная и привычная современным детям — тоже даром. (можно программироать и напрямую через Arduino SDK при желании, естественно)

Самодельный робот OTTO - открытый проект детского интерактивного робота на Arduino Arduino, Робот, Своими руками, Otto, Видео, YouTube, Длиннопост

Приложение для прямого управления роботом (через Bluetooth) удобное, надёжное. Куча всяких движений, эмоций. Особенно детям нравится как робот «умирает».

Самодельный робот OTTO - открытый проект детского интерактивного робота на Arduino Arduino, Робот, Своими руками, Otto, Видео, YouTube, Длиннопост

Да, самостоятельно без помощи взрослых такого робота сможет собрать, пожалуй, уже только старший школьник — в отличии от наборов Лего. Но и с Лего — он у нас тоже есть — не всё так однозначно. Собирать-то они его собирают — чё там хитрого: вот инструкция пошаговая в телефоне, вот детали. А понимания как именно чё там работает — не очень-то. Мой старший (7 лет), по крайней мере, собирает ровно по инструкции, что-то там самостоятельно конструировать — как-то нет. С этим же проектом даже сидя рядом с отцом — понимания куда больше, как мне показалось.

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

Самодельный робот OTTO - открытый проект детского интерактивного робота на Arduino Arduino, Робот, Своими руками, Otto, Видео, YouTube, Длиннопост

Последняя затея пришлась ОЧЕНЬ по душе младшему роботостроителю. Костюм «панды» мгновенно сделал из робота лучшего друга и любимую игрушку. Возился с ним весь вечер, сам записал ролик о приключениях Бабука. 🙂

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

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

А если знаете ещё похожие проекты, с хорошей проработкой инструкций, моделей, среды программирования — буду рад услышать в комментах.

Беспроводные кнопки для своей игры на Ардуино (SiGame)⁠ ⁠

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

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Все это работало, но периодически возникали самопроизвольные нажатия или же срабатывание одной кнопки при нажатии другой, да и провода по всей квартире не добавляли удобств. Все это привело меня к разработке беспроводных кнопок на контроллерах.
В качестве контроллера была выбрана Arduino Pro Micro, так как имеет маленький размер и на борту есть аппаратный USB, что позволяет ей притворятся клавиатурой, то есть эмулировать нажатии клавиши. В качестве приемопередатчика был выбран радиомодуль nrf24l01. Затарил все у китайцев, добавил аккумулятор от HQD, написал прошивку и собрал тестовую схему.

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Работать она не хотела от слова совсем, точнее при сканировании всех каналов, она прекрасно видела «Шум» на каналах моего роутера, но общаться со второй такой же штукой не хотела. Позже было выяснено, что nrf24l01 категорически против разъемных соединений, поэтому, пришлось все припаять. Также добавил небольшую задержку при старте контроллера, так как радиомодуль не всегда успевал инициализироваться После этих манипуляций работать стало более менее стабильно. Запихал в те «корпуса», которые были под рукой, чтобы протестировать на ближайшей игре.

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Тесты прошли успешно и я перешел к следующему этапу, разведению платы в Altium и последующему ее изготовлению методом ЛУТ.

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

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

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Да, на фотках разные версии плат, но какие нашлись..
Дальше все это дело лудим и распаиваем рассыпуху. SMD элементы паял впервые, но в целом приловчился.

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Арудиуну и контроллер заряда расположил с обратной стороны.

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Дополнительно докупил аккумуляторы, лотки для них и более удобные кнопки. Ну и заменил «корпуса» на более удобные из FixPrice. Поскольку корпуса временные, то зафиксировал все внутри на изоленту и двусторонний скотч.

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Очередной тест показал, что все ок и нужно делать еще 4 таких кнопки. Так как сделать нужно было к ближайшим выходным, то пригласил товарища помочь и мы поставили производство на поток. Я травил, лудил, сверлил и мыл, а он паял. Для сверления приобрел себе дремель со стойкой для вертикального сверления, который сильно упростил мне работу.

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Готово, можно играть.

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

Беспроводные кнопки для своей игры на Ардуино (SiGame) Самоделки, Arduino, Своя игра, Кнопка, Своими руками, Длиннопост

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

Изготовление робота-пылесоса в домашних условиях своими руками

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

Робот-пылесос самодельный

Теоретические аспекты проблемы

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

  • рекомендуется изготавливать робот в форме небольшого цилиндра;
  • для того, чтобы автомат мог осуществлять развороты на месте – колеса следует размещать по диаметру;
  • дополнительному рулевому колесу привод не требуется;
  • механизм должен собирать мусор в легко вынимаемый мусороприемник;
  • робот обязательно должен быть оснащен контактным бампером, занимающим минимум половину его окружности;
  • зарядку аппарата следует проводить от зарядного устройства, без его разборки;
  • наилучшим местом размещения центра тяжести у робота являются колеса, также допускается располагать его рядом с ними;
  • оптимальная скорость движения – от 25 до 35 см/с;
  • двигатели работают совместно с редукторами, оснащенными пружинами.

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

Способы обеспечения движения, уборки и питания робота-пылесоса

Движение роботизированного устройства в общем случае осуществляется двумя способами: по спирали (с центра наружу) и зигзагами. В микроконтроллеры можно также занести и схемы комнат по отдельности.

Пространственную ориентацию, объезд препятствия на пути следования пылесос осуществляет благодаря встроенным контактным и инфракрасным датчикам — они образуют систему обратной связи. Инфракрасные регулируют движение, определяя расстояние до стен, предметов, перепады высот. Контактные датчики срабатывают в бамперах при ударах о препятствия (подробнее о том, как работает прибор — в статье принципы работы роботов пылесосов).

Автоматизированный пылесос с автономным источником питания, конечно же, не развивает такую мощность всасывания, как ручной вариант. Практические испытания показали большую эффективность использования маленькой щетки совместно с всасывающей турбиной. Для уборки по углам передняя часть пылесоса оснащается 2 щетками, которые при работе подгребают мусор к главной.

Питание роботизированной системы можно осуществлять от нескольких аккумуляторов, напряжение на клеммах которых – 12 V (18 V), а его емкость равняется 7 А*ч. Зарядка осуществляется при прямом контакте либо беспроводным способом. Применение последнего увеличивает расходы на комплектующие детали.

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

Любая автоматизированная модель собирается на базе контроллера (мозга системы). Поэтому следует изучить язык его программирования для занесения алгоритма команд. Следует также учитывать интуитивную направленность командного интерфейса, что значительно облегчает процесс. Как микроконтроллер, так и используемые датчики часто имеют стандартизированные разъемы для подсоединений, поэтому пайка требуется редко.

Плата контроллера

Подготовка к практической реализации проекта

Рассмотрим применение вышеизложенных принципов на базе платформы Arduino Mega 2560. Процесс создания будет состоять из нескольких этапов:

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

Идея реализуется с помощью следующих материалов и инструментов:

  • контроллер Arduino – 1 шт, с драйверами;
  • лист фанеры (либо плотный картон) – 1 м.кв;
  • колеса – 3 шт;
  • провод сечением не более 0,75 мм.кв (подойдет витая пара) – около 2 м;
  • блок питания – 4 аккумулятора по 18 V, индикатор заряда к ним, зарядное устройство;
  • инфракрасные датчики – 4 шт, контактные – 2 шт;
  • электродвигатели: для турбины – 1 шт, вращающий щетку – 1 шт, 2 мотора с редуктором обеспечивают передвижение;
  • поливинилхлоридный корпус – 1 шт;
  • клей – 1 упаковка, саморезы – 10 шт, скотч – 1 шт, набор магнитов;
  • набор отверток и сверл, плоскогубцы, нож канцелярский, карандаш, линейка, шуруповерт, электролобзик.

Сборка робота-пылесоса

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

  1. Создаем корпус цилиндрической формы из картона либо поливинилхлорида: диаметр – 30 см, высота – 9 см, толщина стенок – 0,6 см. Дно лучше вырезать из фанеры.
  2. Закрепляем на корпусе поливинилхлоридный бампер при помощи скотча, предварительно установив в него датчики инфракрасные и реагирующие на удар.

Датчик

Пылесос с бампером

Щетка

Важным моментом работы является возвращение бампера в исходное положение после удара о препятствие, то есть достаточная его упругость.

Все детали закрепляются на имеющиеся для этих целей у них разъемы саморезами либо клеем, скотчем. Полученный результат представлен на фотографии:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *