Daftar Isi:

Braço Robô Controlado Por Giroscópio Via Seluler: 3 Langkah
Braço Robô Controlado Por Giroscópio Via Seluler: 3 Langkah

Video: Braço Robô Controlado Por Giroscópio Via Seluler: 3 Langkah

Video: Braço Robô Controlado Por Giroscópio Via Seluler: 3 Langkah
Video: Policia brasileira x polícia Russa quem ganha #shorts 2024, November
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. Daftar materi
  2. Esquema eletrônico
  3. Movendo o Braço
  4. Capturando sebagai informaes do giroscópio
  5. Integrando seluler dan arduino

Perlengkapan

Voca ira precisar dos seguintes materiais:

  1. Arduino
  2. 3 motor servo
  3. Modulo Bluetooth untuk arduino
  4. Kasus para 4 pilhas AA
  5. 4 pilha AA

Langkah 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 alimentao dos servos não pode ser fornecida diretamente pelo Arduino pois não há potência disponível cukup untuk movimentar os 3 servos utilizados neste projeto. Dessa forma, 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).

Langkah 2: Codigo Arduino

Kodigo Arduino
Kodigo Arduino
Kodigo Arduino
Kodigo Arduino

O código lakukan Arduino é komposto das seguintes partes:

Bibliotecas e mendefinisikan

Memanfaatkan biblioteca Servo untuk komunikasi dan motor servo dan SoftwareSerial untuk realizar bluetooth conexão.

Mempersiapkan

Realisasikan inisialização dos servos dan iniciamos a conexão bluetooth.

Atur Posisi

Essa é a função que mendefinisikan sebuah posição dos servos.

Lingkaran

A função loop recebe os dados enviados pelo giroscópio do celular através de um protokol sederhana:

  • O valor 0 (nol) 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 intermediarios 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 as respectivas posies dos servos, atualizando a posição do braço.

Langkah 3: Android

Android
Android
Android
Android

O código gyroFungsi recebe o evento melakukan SensorManager dan proses 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.

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.

Direkomendasikan: