Когда я был в 8 классе, я играл в игры с поддержкой акселерометра на Nokia 5800. Мне очень нравилось управлять машиной в игре, просто наклоняя телефон, и я мечтал сделать такую же машину в реальном мире. Сейчас, в 11 классе, имея Arduino Uno и научившись программировать, я смог построить свою управляемую машинку «Геркулес».
Я назвал свое творение Геркулесом, потому что машинка имеет огромный крутящий момент и высокую скорость. Модель управляется с помощью Android телефона через Bluetooth. Преимуществом использования Android телефона для управления машинкой, является то, что для этой цели можно использовать любой Android телефон, а не ограничиваться одним пультом. Также это значительно снижает стоимость проекта, т.к. нет необходимости покупать или делать пульт ДУ.
Геркулес был построен для 2012 Indian Institute of Technology, Mumbai’s IIT Techfest (Индийский технологический институт в Мумбаи) (крупнейший фестиваль технологий в Азии). Целью было создание управляемой движущейся машинкой.
Необходимые компоненты
Детали:
1. Arduino Uno.
2. Bluetooth трансивер (последовательный Bluetooth модем).
3. Интегральный двойной драйвер двигателя с Н-мостом L298.
4. 4шт двигателя с редукторами (характеристики зависят от применения робота).
5. 4шт колес.
6. 12v 1Ah SLA аккумулятор.
7. Шасси для компонентов.
8. Макетная плата 3cms х 7cms.
9. 4шт корпуса/коробки.
10. Переключатель SPST.
11. Штырьки BLS.
12. Провода.
13. Маленькие винты и гайки.
14. Резисторы (1шт 10кОм, 1шт 20кОм).
15. Android телефон.
Инструменты:
1. Паяльник.
2. Припой.
3. Флюс.
4. Дрель.
Ходовая часть и колеса
Винты перед валом двигателей позволяют легко закрепить их на шасси при помощи гаек. Колеса насаживаются на вал двигателя до упора.
Два левых мотора включаются параллельно. Два правых мотора также включаются параллельно.
После установки 4-х двигателей и колес, ваша модель должен выглядеть как на первой картинке.
Корпус для Arduino
Принцип разделяй и властвуй может быть применен в каждом аспекте нашей жизни. Этот простой принцип также применим к этой схеме. Схема разделена на несколько корпусов. Такая модульная конструкция позволяет легко поддерживать схему и устранять неисправности. Если какой-то из компонентов сгорел или поломался, то его можно быстро заменить.
Корпус Arduino:
1. Вырежьте из макетной платы ножовкой 4 части — 2 шт. по восемь отверстий в длину и три отверстия в ширину и 2 шт. по шесть отверстий в длину и три в ширину, как это показано на картинке.
2. Припаяйте BLS штырьки на длинную часть каждой платы, как это показано на картинке.
3. Припаяйте провода около 4 дюймов в длину к каждому штырьку на макетной плате, как показано на рисунке. Теперь провода не оторвутся от Arduino, т.к. нагрузка равномерно распределяется между ними.
4. Изготовление корпуса для Arduino Uno: положите Arduino Uno в корпус так, чтобы USB-порт касался одной из стенок. Отметьте и вырежьте отверстие для него. USB порт должен немного выступать из корпуса. Это поможет нам прошивать Arduino даже после его установки в робота. Просверлите шестнадцать маленьких отверстий на одной стороне корпуса так, чтобы провода, идущие от платы, проходили через эти отверстия. По диагонали напротив просверлите двенадцать маленьких отверстий для проводов от второй платы. Просверлите четыре небольших отверстия для крепления Arduino(на нём есть крепёжные отверстия) на дне корпуса.
5. Поместите Arduino в корпус и закрепите его с помощью небольших винтов и гаек. Провода выведите через отверстия.
6. Вы сделали корпус для Arduino. Он должен выглядеть как на первой фотографии.
Корпус Bluetooth трансивера
Наиболее сложной частью этой статьи является пайка проводов к Bluetooth трансиверу. Эту задачу может облегчить третья рука.
1. Припаяйте проводник длиной 10см к контакту 1. Это вывод Tx.
2. Припаяйте проводник длиной 10см к контакту 2. Это вывод Rx.
3. Припаяйте проводник длиной 10см к контакту 12. Это +3,3В.
4. Припаяйте проводник длиной 10см к контакту 13. Это GND.
Поместите Bluetooth трансивер в небольшой корпус с отверстиями для проводов. Приклейте провода к коробке. Это делается для предотвращения отрыва проводов от Bluetooth трансивера. Bluetooth-модуль я купил на Ebay.
Корпус резисторов
Через вывод Tx Arduino посылает сигнал с напряжением 5 В, а модуль Bluetooth трансивера работает с напряжением 3.3В. Необходимо преобразовать 5В в 3.3В. Это делается при помощи делителя напряжения. Следуя схеме, припаяйте резистор на оставшуюся часть макетной платы. Если корпус Arduino достаточно большой, то вы можете поместить эту схему там, или вам придется использовать ещё один небольшой корпус для этой схемы.
Драйвер двигателя
Я использовал двойной интегральный драйвер двигателя с Н-мостом L298 IC. Он используется для контроля 4-х двигателей. Я сделал для него плату(рис.3), что облегчает пайку проводов к нему. Если у вас нет возможности изготовить плату, то вы можете просто припаять к нему провода. После пайки проводов, поместите драйвер в небольшой корпус с отверстиями для проводов как показано на рисунке.
Окончательная сборка
Соедините все модули как показано на первой картинке.
L298 (цоколевка на рисунке выше) и Arduino соединяются так:
1 —- GND.
2 —- Первый контакт левых моторов.
3 —- Второй контакт левых моторов.
4 —- +12В от аккумулятора.
5 —- Arduino Pin 2.
6 —- Arduino Pin 3.
7 —- Arduino Pin 4.
8 —- GND.
9 —- +5В с Arduino.
10 —- Arduino Pin 5.
11 —- Arduino Pin 6.
12 —- Arduino Pin 7.
13 —- Первый контакт правых моторов.
14 —- Второй контакт правых моторов.
15 —- GND.
Подключите +12В от аккумулятора к выводу Vin Arduino и к контакту 4 L298.
Подключите GND аккумулятора GND Arduino.
Программа Arduino
Прежде, чем вы прошивать Arduino Uno, вы должны установить библиотеку Amarino для Arduino.
1. Скачать библиотеку Amarino для Arduino (ссылка).
2. Извлечь архив в папку: arduino_install_dir/libraries/extract_meetandroid.zip_here
3. Теперь вы увидите библиотеку в «Sketch -> Import Library» в Arduino IDE.
4. Вы можете приступить к программированию Arduino Uno.
Ниже в архиве приведен исходный код для Arduino.
Программа для Android
Что такое Amarino?
Amarino представляет собой набор инструментов, предназначенный для работы со смартфонами на базе операционной системы Android. Вам не нужны никакие знания, чтобы начать писать программу под Android. Вы можете начать прямо сейчас, просто установив приложение на Android телефон. Оно имеет много команд и примеров, и вы можете отправлять их на Arduino.
На видео показана установка Amarino и плагинов:
Вот инструкция по установке Amarino:
Скачайте приложение и плагин Amarino на компьютер.
Скопируйте приложение и плагин Amarino на SD-карту Android телефона.
Установить приложение и плагин Amarino на Android телефон.
Включите машинку.
В Android телефоне перейдите в раздел «Настройки -> Беспроводные сети -> Параметры Bluetooth». Включите Bluetooth и ищите Bluetooth модуль. Как лишь Bluetooth-модуль обнаружиться, выберите его, но не подключайтесь к нему.
Откройте приложение Amarino на Android телефоне. Нажмите «Add BT Device». Выберите модуль Bluetooth из списка устройств.
Ваш Bluetooth модуль появится на рабочем столе Amarino.
Нажмите на красную кнопку file рядом с именем Bluetooth модуля.
Выберите «Add Events» и выберите «Accelerometer Sensor».
Вы закончили установку программного обеспечения на Android телефон.
Управление Геркулесом
Вы закончили изготовление машинки и пришло время пользоваться ей.
Шаги для управления Геркулесом:
Включите.
Откройте приложение Amarino на Android телефоне.
Нажмите кнопку «Connect» для подключения Android телефона к машинке.
Наклоняйте телефон, чтобы управлять ей.
Обратите внимание, что скорость машинки пропорциональна тому, на сколько вы наклоните ваш телефон. Если машинка передвигается в неправильном направлении, поменяйте местами провода идущие к двигателям.
Прикрепленные файлы:
- hercules.rar (11 Кб)