Sommario:

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

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

Video: Braço Robô Controlado Por Giroscópio Via Celular: 3 Steps
Video: Braço Robótico com Arduino 2024, Giugno
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 dei materiali
  2. Esquema elettronico
  3. Movendo o Braço
  4. Capturando as informações do giroscópio
  5. Integrando celular e arduino

Forniture

Você ira precisar dos seguintes materiais:

  1. Arduino
  2. 3 Servomotori
  3. Modulo Bluetooth per arduino
  4. Caso para 4 pilhas AA
  5. 4 pile AA

Fase 1: Esquema Elettronico

Esquema Elettronico
Esquema Elettronico

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

L'alimentazione dei servi non è necessaria per la fornitura diretta di Arduino e poi non è disponibile una potenza sufficiente per il movimento di 3 servi utilizzati nel progetto. Dessa forma, deve-se utilizar uma fonte esterna di circa 5v (foram utilizadas 4 pilhas AA da 1.5V cada, totalizzante 6v, dentro dos limiti operacionais dos servi).

Passaggio 2: codice Arduino

Codice Arduino
Codice Arduino
Codice Arduino
Codice Arduino

O código do Arduino é composto dalle seguenti parti:

Biblioteche e definizioni

Utilizza una biblioteca Servo per la comunicazione con i servomotori e SoftwareSerial per realizzare una connessione bluetooth.

Impostare

Realizamos un'inizializzazione dei servi e l'inizializzazione di una connessione bluetooth.

Imposta posizione

Essa é una funzione che definisce una posizione dei servi.

Ciclo continuo

A funçã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 identificam 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 come rispettiva posizione dei servi, atualizando a posição do braço.

Passaggio 3: Android

Android
Android
Android
Android

O código gyroFunction recebe o evento do SensorManager e processa os dados retornados pelo giroscópio, convertendo a matriz de 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.

Sono disponibili interi servizi per bluetooth per Arduino come una stringa char(0) + X + Y + Z + char(255).

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

Consigliato: