Оглавление:

Игра Android + Arduino Labyrith: 5 шагов (с изображениями)
Игра Android + Arduino Labyrith: 5 шагов (с изображениями)

Видео: Игра Android + Arduino Labyrith: 5 шагов (с изображениями)

Видео: Игра Android + Arduino Labyrith: 5 шагов (с изображениями)
Видео: «Лабиринт на Arduino», Вадим Ипполитов 2024, Ноябрь
Anonim
Image
Image
Сбор компонентов
Сбор компонентов

Привет, ребята..

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

Что ж, вы попали в нужное место. Я построил его для себя, используя Arduino и android.

Не волнуйтесь, это просто … В этом проекте я покажу вам, как сделать:

1. Доска лабиринта (я сделал из лежащих старых деревянных ящиков).

2. Android-приложение в приложении-изобретателе для управления доской.

3. Написание программы на Arduino для управления платой и

4. Настройка схемы….

Позже вы сможете использовать полученную концепцию в других проектах, которые вы создадите.

Так что, не теряя больше времени, давайте начнем….!

Шаг 1: Сбор компонентов

Сбор компонентов
Сбор компонентов
Сбор компонентов
Сбор компонентов
Сбор компонентов
Сбор компонентов

Для этого проекта вам потребуются следующие предметы:

1. Два серводвигателя (я использовал мини, и они у меня работали).

2. Arduino Uno. (Я предлагаю купить его в Snapdeal, это клон, но он стоит каждой потраченной мной копейки).

3. Модуль Bluetooth.

4. Макетная плата.

5. Несколько перемычек.

6. Тонкие деревянные или твердые доски.

7. гвозди, некоторые ключевые стержни от старых клавиатур.

8. Thermocol (полистирол)

Шаг 2: Изготовление лабиринтной доски

Изготовление доски лабиринта
Изготовление доски лабиринта
Изготовление доски лабиринта
Изготовление доски лабиринта
Изготовление доски лабиринта
Изготовление доски лабиринта

Это механическая часть проекта.

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

Вырежьте два небольших прямоугольных дерева одинакового размера.

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

Теперь о верхней доске..

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

это будет прижимать верхнюю доску к раме и поможет при вращении.

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

приклейте столбы к основанию и также прикрепите к ним опоры.

Теперь добавим серводвигатели.

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

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

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

теперь доска готова.

Я сделал лабиринт, используя термокол и картон.

Шаг 3: Настройка схемы

Настройка схемы
Настройка схемы

Настройте схему, как показано на рисунке…

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

Модуль Bluetooth

Rx идет на вывод 1

Tx идет на вывод 0

Сигнальный провод базового сервопривода идет на контакт 5.

Сигнальный провод сервопривода кадра идет на контакт 6

Не забудьте добавить дополнительный источник питания для модуля сервопривода и bluetooth. Другой мудрый модуль не получит достаточного тока и будет продолжать отключаться, показывая ошибку 516. У меня было много проблем с его устранением и, наконец, выяснилась проблема и решение.

Шаг 4: Создание приложения

Image
Image
Создание приложения
Создание приложения

Хорошо, во-первых, вам нужно войти в систему Mit App Inventor для создания любых приложений.

перейдите на

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

Все остальное я показал в видео … посмотрите.

вот основные:

когда экран инициализируется в приложении (в данном случае это Screen1), -сенсор акселерометра включен и чувствительность установлена на максимум, т.е.3.

теперь, когда мы нажимаем средство выбора списка

- всплывает список со списком сопряженных устройств.

(вам нужно будет выполнить сопряжение модуля перед открытием приложения, как обычно, код пары - 1234)

Теперь, прежде чем выбирать средство выбора списка, -установить список с сопряженными устройствами и их адресами

После выбора устройства

- адаптер bluetooth подключится к выбранному устройству

Теперь модуль подключен

Теперь при изменении данных AcclerometerSensor

-Добавьте данные в текст метки и отправьте с помощью bluetooth send.

Теперь сложная часть - отправка двух данных за раз.

# данные акселерометра находятся в диапазоне от 0 до 9,5 при наклоне влево и от 0 до -9,5 при наклоне вправо, То же самое происходит, когда телефон наклоняется вверх и вниз.

Итак, у нас есть данные о наклоне осей x и y, которые нам нужно отправить…

пусть данные оси x будут X, а ось y - Y

так что я сделал вот что:

Текст = (X * 10 (удалить десятичные точки после этого) +95) * 1000 (умножить на 1000) + Y * 10 (удалить десятичные точки) +95»

поэтому теперь данные варьируются от 0 до 190 для каждой оси и добавляются, чтобы получить 190180, где первые 3 цифры - это ось x, а последние 3 - координаты оси y …

который будет отправлен в модуль bluetooth и будет разбит на фактические данные и сопоставлен с углами поворота сервопривода в коде Arduino …

Шаг 5: написание кода Arduino

Написание кода Arduino
Написание кода Arduino
Написание кода Arduino
Написание кода Arduino

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

код, полученный от bluetooth, представляет собой строку, содержащую наши данные оси..

теперь Serial.parseInt (); используется для чтения строки и преобразования строки в int в переменной pos.

теперь pos имеет значение = 190180 (скажем) наша цель теперь расшифровать данные, т.е. удалить ось x и координаты y

для оси x. разделите значение на 1000, это даст 190. т.е. значение / 1000 = 190

а для модульной оси Y разделите значение на 1000, что даст нам 180, т.е. значение% 1000 = 180

теперь рассчитайте максимальное и минимальное положение сервоприводов, которое вы хотите наклонить доску,… в моем случае это 180, 75 и….

теперь мы согласовали оси x и y, теперь нам просто нужно сопоставить координаты с минимальным и максимальным углами поворота, которые мы хотим для наших сервоприводов….

подробности см. в коде.

И мы закончили… загрузите код, откройте приложение, подключитесь и играйте….

Знаете ли вы, что Google сделал один для себя и представляет собой очень большой лабиринт, который вы когда-либо видели… что также является моей мотивацией для создания такого лабиринта для себя.

Так что до следующего раза, повеселимся..

Рекомендуемые: