Создай своего робота для андроид

Создай своего робота для андроид

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

Платформер с роботом в главной роли. Помогите Робото добраться до космического корабля, чтобы встретится во своей возлюбленной в другой галактике. Используйте мини-турболет и во что бы то ни стало доберитесь до цели! Отбивайтесь от других роботов и собирайте бонусы!

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

Забавный робот, который будет Вас развлекать и веселить. Скачайте бесплатно приложение и не скучайте с новым механическим другом!

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

Битва роботов разных стран за установление монополии на ресурсы на вновь открытой планете. Земля истощена, ресурсов нет, появляется новая планеты, полная разнообразием ресурсов. Лакомый кусочек, который все хотят укусить! Но победитель только один.

Разрешение конфликтных ситуаций теперь возможно только с помощью роботов. Эти высоко технологические механизмы способны без лишних сантиментов уничтожить противника и произвести полную зачистку территории.

Robot Rampant Factory помоги роботу выбраться из шахты, он на тебя надеется, не подведи его!

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

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

Полчище воюющих скорпионов и ваш андроид смартфон/планшет. =)

Роботы имеют отличные боевые характеристики, а их башни смогут отбить любую атаку врага — Оружейная, Ракетная, Ледяная, Лазерная, Клей-башня, Электрическая, Башня пламени и пр.

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

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

Продолжение серии игр Реальная Сталь. Теперь вам предстоит сразится на мировом чемпионате.

v63.63.121 + Мод: много денег

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

Убегайте от огромного робота, преодолевая различные препятствия и не попадите обратно ему в плен.

Передвигайтесь по различным мирам и отстреливайтесь от врагов.

Улучшенная и расширенная версия игры Robot Bros с большим количеством уровней и роботов.

Соберите самого мощного робота из различных деталей.

Источник

Merge Robots 1.6.5

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

Все очень просто: чтобы создать нового робота, просто соедините два одинаковых. Продолжайте кликать и создавать новых роботов, производству нельзя стоять, иначе другие геймеры станут лидерами рынка. Не забывайте каждый день крутить колесо с призами, ведь в наше время без инвестиций – никуда! Скорее скачивайте Merge Robots и начинайте развивать свой бизнес уже сегодня!

Читайте также:  Как прошить старую версию андроид

Особенности игры Merge Robots:

  • Футуристическая графика;
  • Множество крутых роботов;
  • Бесконечный игровой процесс;
  • Всяческие улучшения;
  • Простой геймплей.

Источник

РОБОТ на базе: android, arduino, bluetooth. Рефлексный. Часть 2

Оглавление

Статья 1. РОБОТ на базе: android, arduino, bluetooth. Начало
Статья 2. РОБОТ на базе: android, arduino, bluetooth. Рефлексный. Часть 2.

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

Постановка задачи

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

Немного теории

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

Абстрагирование среды

Среда где будет обитать наш первый робот будет представлять собой двухмерный мир и обладать следующими характеристиками:
1) Полностью наблюдаемая, т.е. датчики робота предоставляют доступ к полной информации о состоянии среды в каждый момент времени. Полностью наблюдаемые варианты среды являются удобными, поскольку роботу не требуется поддерживать какое-либо внутреннее состояние для того, чтобы быть в курсе всего происходящего в этом мире.
2) Детерминированная. Если следующее состояние среды полностью определяется текущим состоянием и действием, выполненным роботом, то такая среда называется детерминированной; в противном случае она является стохастической.
3) Эпизодическая. В эпизодической проблемной среде опыт робота состоит из неразрывных эпизодов. Каждый эпизод включает в себя восприятие среды роботом, а затем выполнение одного действия. При этом крайне важно то, что следующий эпизод не зависит от действий, предпринятых в предыдущих эпизодах. В эпизодических вариантах среды выбор действия в каждом эпизоде зависит только от самого эпизода.
4) Статическая. Если среда может измениться в ходе того, как робот выбирает очередное действие, то такая среда называется динамической для данного робота; в противном случае она является статической.
5) Непрерывная — Различие между дискретными и непрерывными вариантами среды может относиться к состоянию среды, способу учета времени, а также восприятием и действиям агента. В нашем случае считается что состояние среды меняется непрерывно. К примеру игра в шахматы является дискретной, так как имеет конечное количество различных состояний.
6) Одноагентная это среда в которой находится один объект(робот), и другие объекты на него не влияют и не конкурируют с ним.

Абстрагирование действий робота

1) Движение – робот может передвигаться в двух направлениях(взад, вперед) и разворачиваться на месте(налево, направо)
2) Датчики робота (ультразвуковой сенсор), позволяет определить расстояние до объекта. Расстояние может быть определено от 0,02 метра до 4 метров.

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

Читайте также:  Book on android development

Краткая информация по используемым деталям и модулям

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

HG7881 – это двухканальный драйвер двигателей, питание возможно от источника 2,5 – 12 В. Описание выходов драйвера:
Таблица 1

Вывод Описание
B-IA Двигатель B Вход A (IA)
B-IB Двигатель B Вход B (IB)
GND Земля (Минус)
VCC Рабочее напряжение 2.5-12V (Плюс)
A-IA Двигатель A Вход A (IA)
A-IB Двигатель A Вход B (IB)

Для того чтобы заставить двигатели работать нужным нам образом на выводы (B-IA, B-IB, A-IA, A-IB) необходимо подавать логические сигналы (HIGH,LOW). Таблица истинности двигателей:
Таблица 2

IA IB Состояние двигателя
L L Off
H L Forward
L H Reverse
H H Off

Ультразвуковой сенсор измерения расстояния HC-SR04. Определяет расстояние до объекта, измеряя время отражения звуковой волны от объекта.

Сенсор излучает короткий ультразвуковой импульс (в момент времени 0), который отражается от объекта и принимается сенсором. Расстояние рассчитывается исходя из времени до получения эха и скорости звука в воздухе.
На вывод (Trig) подаётся импульс длительностью 10 мкс, ультразвуковой модуль излучает 8 пачек ультразвукового сигнала с частотой 40кГц и обнаруживает их эхо. Измеренное расстояние до объекта пропорционально ширине эха (Echo) и может быть рассчитано по формуле:
Ширина импульса/58 = расстояние в см.

Сборка робота и подключение всех модулей

Собираем платформу (рис.2).

Рисунок 2
Подключаем двигатели к драйверу (рис. 3). По два двигателя на один разъем драйвера, т.е. двигатели левой стороны платформы к разъему “Motor B”, двигатели правой стороны — “Motor A”. Управление платформой будет произведено аналогично гусеничной. При движении вперед и назад все двигатели работают синхронно в одном направлении, при повороте направо двигатели правой стороны платформы останавливаются, а левой двигаются синхронно, при повороте налево двигатели левой стороны останавливаются, а правой двигаются синхронно.

Рисунок 3
Прикручиваем верхнюю часть платформы. Соединяем драйвер двигателей, ардуино, аккумуляторы, БТ модуль и ультразвуковой сенсор к макетной плате (рис.4)

Рисунок 4
Схема подключения представлена на (рис.5). Питание ардуино, ультразвукового сенсора и драйвера двигателей (следовательно и самих двигателей) обеспечивают 4 подключенных последовательно аккумулятора (1,2 В., 2700 мА/ч), на БТ модуль питание подается от выхода ардуино 3,3 В.

Рисунок 5
Робот собран, необходимо его заставить выполнять команды, отправленные с андроида.

Скетч для Arduino ШАГ 1 – Удаленное управление роботом

Объявляем переменные: R_A_IA, R_A_IB – определяют номера выводов управляющих двигателем А (двигатели правой стороны), L_B_IA, L_B_IB — выводы управляющие двигателем B(двигатели левой стороны. Инициируем последовательное соединение и задаем скорость передачи данных в бит/c (бод) – 38400. Устанавливаем режим работы выводов управляющих двигателями – OUTPUT (выходы). Подаем на все выходы значение HIGH, что означает — двигатели отключены(таблица 2).
Определяем функции: go_forward(), go_back(), go_right(), go_left(), stop_robot(), которые запускают двигатели в прямом или обратном направлении вращения, тем самым приводя робота в движение – вперед, назад, направо, налево, стоп, соответственно.
В основном цикле программы происходит считывание и обработка данных полученных в последовательный порт от БТ модуля. В зависимости от полученной команды выполняется та или иная функция и по последовательному порту передается текст об ее выполнении.

Android приложение ШАГ 1 – Удаленное управление роботом

Вот так будет выглядеть основное activity:

Текстовое поле «txtrobot», будет отображать всю необходимую нам информацию. Кнопки b0, b1, b2, b3, b4 будут отправлять команды в arduino (0, 1, 2, 3, 4)
Переходим в src/../MainActivity.java здесь и будет располагаться наш основной код.
В предыдущей статье на шаге 4, был представлен код позволяющий передавать и принимать данные по БТ. За основу возьмем этот код.
В состояния активити onPause() и onResume() добавим условие проверки существования БТ у андроида и определения включен ли он. В предыдущей статье это условие отсутствовало в связи, с чем при запуске приложения, если был отключен БТ, оно завершалось с ошибкой и только после этого предлагало включить БТ.

Читайте также:  Android поменять карты памяти

Объявим переменные для хранения кнопок:

Находим их по ID:

Напишем обработчики нажатия этих кнопок, для отправки команд:

Полный код приложения:

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

Скетч для Arduino ШАГ 2 – Режим автономного управления роботом

Для работы с ультразвуковым сенсором, воспользуемся готовой библиотекой
ultrasonic-HC-SR04.zip
Распаковываем файлы и помещаем в каталог где расположен скетч
Подключаем библиотеку

Конструктор Ultrasonic принимает два параметра — номера выводов к которым подключены Trig и Echo, соответственно:

Получаем данные о расстоянии до объекта в сантиметрах:

Передаем данные на последовательный порт, для последующей передачи их через БТ модуль.

Символы «*» и «#» означают начало и конец передаваемого блока информации о расстоянии до объекта. Это необходимо для того чтобы четко отделять необходимые данные друг от друга, так как при их передачи часть теряется либо приходит с запозданием.
Полный скетч для загрузки в ардуино:

Android приложение ШАГ 2 – Режим автономного управления роботом

Таким образом, основное activity примет вид:

Объявим переменную b5:

И флаг позволяющий определить включен режим автоуправления или нет:

Находим ее по ID:

Создадим обработчик ее нажатия:

А также внесем изменения в обработчик кнопки «b0»(Стоп)

Осталось создать алгоритм позволяющий роботу самостоятельно перемещаться по помещению и объезжать препятствия.
Обработаем полученные данные о расстоянии до объекта отправленные ардуино. Если расстояние до объекта менее 50 см. то поворачиваем направо в противном случае едим прямо:

Ниже приведен полный код Activity:

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

Наименование Ссылка Цена y.e Цена руб Кол-во Сумма
Wifi модуль dx.com/p/hi-link-hlk-rm04-serial-port-ethernet-wi-fi-adapter-module-blue-black-214540#.UutHKD1_sd0 14,99 524,65 1 524,65

ИТОГ: 524,65

В комментариях к предыдущей статье, хабра пользователь commanderxo порекомендовал не изобретать велосипед, а воспользоваться стандартным протоколом Firmata (протокол для обмена данными между ардуино и сервером). К сожалению работоспособной библиотеки, для андроида в связке с БТ, я не нашел. Написать свою библиотеку у меня не хватает времени и сил, поэтому в данной статье я продолжаю изобретать велосипед. Если кто из Хабра пользователей обладает информацией о такой библиотеке просьба поделиться.

Источник

Оцените статью