Архив метки: DIY

Аппаратный бот для Android на базе Arduino Leonardo

Привет! Давно не виделись 🙂

И сразу к делу 🙂 После успешной разработки Dwar Rapid Bot решил написать еще одного бота для любимой игры на Android, в которую частенько играю по вечерам. И при этом столкнулся с некоторыми проблемами.

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

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

Тем не менее, решение было найдено достаточно быстро 🙂 Узнав из сети, что Arduino Leonardo умеет эмулировать мышь и клавиатуру при подключении по USB, я решил попробовать использовать эту функцию на Android, для автоматизации игровых действий!

О воплощении этой идеи я рассказываю в следующем видео.

Ниже приведен пример скетча для реализации аппаратного кликер-бота на базе Arduino Leonardo.

#include <Mouse.h>
#include <Keyboard.h>
 
void setup() {
  
}
 
void loop() {
  
 Mouse.begin();
 delay(900);

 //двигаем курсор в правый верхний угол
 moveRU();
 delay(500);

 delay(3500);

 //двигаем чуть ниже на кнопку с рулеткой
 moveRouleteBTN();

//щелкаем на рулетке
 delay(100);
 Mouse.click(MOUSE_LEFT);

//теперь двигаемся к самой рулетке
 delay(500);
 moveRoulete();

 //щелкаем на рулетку
 delay(100);
 Mouse.click(MOUSE_LEFT);

 Mouse.end();

 //смотрим рекламу 55 сек

 delay(55000);

 //щелкаем НАЗАД
Mouse.begin();
delay(900);


//Выход из рекламы нажатием правой кнопкой мыши (виртуальная кнопка НАЗАД)
Mouse.click(MOUSE_RIGHT);
delay(100); 
//Mouse.click(MOUSE_RIGHT); // есть некоторая реклама, которая просит повторное нажатие для выхода

// выход из рекламы нажатием клавиши ESC на клавиатуре
//Keyboard.begin();
//delay(900);
//Keyboard.write(KEY_ESC);
//delay(500);
//Keyboard.end();

//ждем пока раскрутится рулетка
delay(12000);

//забираем награду

Mouse.click(MOUSE_LEFT);
delay(500);
Mouse.end();
delay(1000);

 //и погнали все по новой
}

void moveRU(){
   for (int i=0; i <= 30; i++){
    Mouse.move(90,-90);
    delay(9);
   }
}

void moveRouleteBTN(){
   for (int i=0; i <= 3; i++){
    Mouse.move(-11,20);
    delay(9);
   }  
}

void moveRoulete(){
   for (int i=0; i <= 10; i++){
    Mouse.move(-33,16);
    // Mouse.move(-29,20); // 1920*1200
    delay(9);
   }  
}

Данный способ можно применять не только для планшета или телефона, но и для обычного ПК, а также любого другого устройства, которое поддерживает работу с клавиатурой и мышью по интерфейсу USB!

Спасибо за внимание! Жду ваших комментариев 🙂

Контроль отопления и вентиляции на базе ARDUINO своими руками (Часть 1. Подготовка материалов)

Система для управления отоплением и вентиляцией на базе Arduino. Вид изнутри
Система для управления отоплением и вентиляцией на базе Arduino. Вид изнутри

Всем привет!

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

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

Читать далее Контроль отопления и вентиляции на базе ARDUINO своими руками (Часть 1. Подготовка материалов)

Светодиодный ночник с регулятором яркости своими руками

Привет! 🙂

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

Ночник из светодиодной ленты и блока питания
Ночник из светодиодной ленты и блока питания

Вещица оказалась весьма полезной. Отдал на эксплуатацию супруге, и спустя некоторое время получил отзыв 🙂 Оказалось, что ночником трудно попасть в розетку в полной темноте, а если это все-таки удалось, то он непременно ослепит и нарушит весь сон! 🙂

Ночник из светодиодной ленты и блока питания работает
Ночник из светодиодной ленты и блока питания включен в сеть

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

Видео о получившемся ночнике с регулятором яркости.

 

Далее в этой статье я покажу процесс изготовления ночника с регулятором яркости из блока питания на 12 вольт и светодиодной ленты SMD 5050, а также приведу принципиальную схему регулятора яркости на транзисторе КТ-819. Читать далее Светодиодный ночник с регулятором яркости своими руками

Розетка с дистанционным управлением своими руками

Розетка с дистанционным управлением
Розетка с дистанционным управлением

Привет! 🙂

Для одного из новых проектов (система управления микроклиматом) потребовалось дистанционно включать и отключать нагрузку, а именно обогреватель в ванной комнате. И дабы не городить схемы с радиопередатчиками и приемниками, инфракрасными диодами и т.п., решил сделать по простому — управлять розеткой по проводному каналу при помощи 5 вольт. Читать далее Розетка с дистанционным управлением своими руками

Автоматическая заслонка для вентиляции на базе Arduino

Привет! 🙂

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

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