Innehållsförteckning:

Braço Robô Controlado Por Giroscópio Via Celular: 3 steg
Braço Robô Controlado Por Giroscópio Via Celular: 3 steg

Video: Braço Robô Controlado Por Giroscópio Via Celular: 3 steg

Video: Braço Robô Controlado Por Giroscópio Via Celular: 3 steg
Video: Marvel's Spider-Man Gameplay Walkthrough [Full Game Movie - All Cutscenes Longplay] No Commentary 2024, Juni
Anonim
Braço Robô Controlado Por Giroscópio Via Celular
Braço Robô Controlado Por Giroscópio Via Celular

Este projeto ira te auxiliar na criação de um braço robótico controlado pelo giroscópio de um celular, irei separa em x partes:

  1. Lista de materiais
  2. Esquema eletrônico
  3. Movendo o Braço
  4. Capturando as informações do giroscópio
  5. Integrando celular e arduino

Tillbehör

Você ira precisar dos seguintes materiais:

  1. Arduino
  2. 3 servomotorer
  3. Modulo Bluetooth för arduino
  4. Fall para 4 pilhas AA
  5. 4 pilhas AA

Steg 1: Esquema Eletrônico

Esquema Eletrônico
Esquema Eletrônico

Os servos utilizados deverão ser ligados nas portas habilitadas para PWM no Arduino (indicadas por esta sigla ou por um asterico [~] em algumas versões).

A alimentação dos servos não pode ser fornecida diretamente pelo Arduino pois não há potência disponível suficiente para movimentar os 3 servos utilizados nästa projeto. Dessa förma, deve-se utilizar uma fonte externa de aproximadamente 5v (foram utilizadas 4 pilhas AA de 1.5V cada, totalizando 6v, dentro dos limites operacionais dos servos).

Steg 2: Código Arduino

Código Arduino
Código Arduino
Código Arduino
Código Arduino

O código do Arduino é composto das seguintes partes:

Bibliotecas e definierar

Använda och biblioteca Servo para comunicação com os servos motores e SoftwareSerial for realizar and conexão bluetooth.

Uppstart

Realizamos and inicialização dos servos e da iniciamos and conexão bluetooth.

SetPosition

Essa é a função que definiera en posição dos servos.

Slinga

En funcão loop recebe os dados enviados pelo giroscópio do celular através de um protocolo simples:

  • O valor 0 (zero) significa um início de um comando (a sequencia da posição dos servos 1, 2 e 3)
  • O valor 255 significa o final do comando
  • Valores intermediários identifieram a posição de cada servo, ficando então limitados a valores entre 1 e 254

Ao receber o valor 255, a função setPosition é chamada com as respectivas posições dos servos, atualizando a posição do braço.

Steg 3: Android

Android
Android
Android
Android

O código gyroFunction recebe o evento do SensorManager e processa us dados retornados pelo giroscópio, convertendo and matriz of acelerações em um array de angulos, variando de pi a -pi.

(fonte:

Esses angulos, armazenados originalmente como floats, devem ser convertidos para char, sendo que -pi equivale a 1 e pi equivale a 254.

Esses inteiros serão enviados por bluetooth para o Arduino como uma string char (0) + X + Y + Z + char (255).

A conversão e envio dos dados é feito pela função enviaCoordenadasBluetooth.

Rekommenderad: