Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

AR Drone 2.0 + 1Sheeld: Streaming de Dados de Voo em Tempo Real para PC

Componentes e Materiais

Arduino Mega 2560 (×2)
1Sheeld (×1)
AR Drone 2.0 (×1)
Módulos XBee (×2)

Sobre o Projeto

Este projeto demonstra o controle e monitoramento de diversos dados de voo capturados por um smartphone e transmitidos em tempo real para o computador. Os sensores utilizados incluem acelerômetro, GPS, nível de ruído, orientação, giroscópio e mais.

A arquitetura emprega dois microcontroladores Arduino: um montado no drone e outro conectado ao PC. Dois módulos XBee estabelecem a comunicação sem fio entre o 1Sheeld (no drone) e o computador.

Uma forma divertida e acessível de aproveitar todos os recursos e sensores do smartphone, além de capturar ótimas imagens aéreas!

Código

Código Master (Receptor no PC)

Carregado no Arduino conectado ao computador, controla o Arduino no drone. Requer a biblioteca AltSoftSerial.

#include <AltSoftSerial.h>
int verifica = 0;
AltSoftSerial xBee;
char c, h, stop = 's';

void setup() {
  Serial.begin(115200);
  Serial.println("Master OK");
  Serial.println();
  Serial.println("Digite para:");
  Serial.println("'o' - valor do sensor de orientação");
  Serial.println("'a' - valor do sensor de aceleração");
  Serial.println("'b' - valor do sensor de brilho");
  Serial.println("'g' - posição GPS");
  Serial.println("'m' - ruído do microfone");
  Serial.println("'p' - tirar uma foto");
  xBee.begin(9600);
}

void loop() {
  Serial.flush();
  if (Serial.available() > 0) {
    c = Serial.read();
    if (c == 'o' || c == 'a' || c == 'm' || c == 'g' || c == 'b' || c == 'p') {
      // Cada bloco trata um sensor específico com lógica similar:
      // 1. Envia comando via XBee
      // 2. Loop de leitura (10 iterações)
      // 3. Verifica comando de parada ('s')
      // Sensores: Orientação, Aceleração, Brilho, GPS, Microfone, Foto
    }
  }
}

Nota: O código completo contém blocos repetitivos para cada sensor. A estrutura principal envia um caractere de comando via XBee, aguarda resposta do slave e imprime no Serial Monitor. A tecla 's' interrompe a leitura.

Código Slave (No Drone)

Carregado no Arduino montado no drone. Requer as bibliotecas AltSoftSerial e OneSheeld.

#include <OneSheeld.h>
#include <AltSoftSerial.h>

char variavel;
AltSoftSerial xBee;
char master;
int voce = 0;

void setup() {
  Serial.begin(115200);
  Serial.println("Slave ok");
  OneSheeld.begin();
  xBee.begin(9600);
}

void loop() {
  receiveEvent();
  requestEvent();
}

void receiveEvent() {
  while (xBee.available() > 0) {
    master = xBee.read();
    variavel = master;
  }
}

void requestEvent() {
  switch (variavel) {
    case 'o':
      xBee.print("Eixo X: "); xBee.print(OrientationSensor.getX());
      xBee.print(" Eixo Y: "); xBee.print(OrientationSensor.getY());
      xBee.print(" Eixo Z: "); xBee.println(OrientationSensor.getZ());
      break;
    case 'a':
      xBee.print("Eixo X: "); xBee.print(AccelerometerSensor.getX());
      xBee.print(" Eixo Y: "); xBee.print(AccelerometerSensor.getY());
      xBee.print(" Eixo Z: "); xBee.println(AccelerometerSensor.getZ());
      break;
    case 'g':
      xBee.print("Longitude: "); xBee.print(GPS.getLongitude());
      xBee.print(" Latitude: "); xBee.println(GPS.getLatitude());
      break;
    case 'm':
      xBee.print("dB: "); xBee.println(Mic.getValue());
      break;
    case 'b':
      xBee.print("Lumens: "); xBee.println(LightSensor.getValue());
      break;
    case 'p':
      Camera.setFlash(ON);
      Camera.rearCapture();
      xBee.println("Foto tirada");
      break;
    // Comandos de feedback por voz (TextToSpeech)
    case '1': TextToSpeech.say("análise de orientação"); break;
    case '2': TextToSpeech.say("análise de aceleração"); break;
    case '3': TextToSpeech.say("análise de intensidade de brilho"); break;
    case '4': TextToSpeech.say("análise de posição GPS"); break;
    case '5': TextToSpeech.say("análise de ruído em decibéis"); break;
    case '6': TextToSpeech.say("Tirando uma foto"); break;
    case '0': TextToSpeech.say("análise parada"); break;
  }
  variavel = 0;
}

Esquemáticos

A conexão entre Arduino e XBee é idêntica tanto para o Arduino no computador quanto para o no drone. Consulte a imagem do esquemático para detalhes de fiação.

Processo de manufatura

  1. A Revolução da Nuvem: Como a Computação em Nuvem Transforma TI, Segurança e Carreiras
  2. Evolução da Indústria Global de Corantes: Mudanças Ecológicas, Rigor Regulamentar e Inovação Tecnológica
  3. Drone Pi: Quadricóptero Multiwii & Raspberry Pi de Modo Duplo para Controle por Smartphone e Remoto
  4. Como Smartphones Estão Moldando o Futuro dos Carros Conectados
  5. 6 Maneiras que IA e IoT Estão Revolucionando Operações de Negócios em 2019
  6. Insights de Edge Computing e Estratégia de IoT do IoT World 2019
  7. IA Mapeia Assentamentos Informais Globais via Satélites de Baixa Resolução
  8. Elbit Systems: Soluções em Compósitos de Liderança para Israel e EUA
  9. Você Deve Revestir sua Bomba? Pesando Benefícios e Desvantagens
  10. Dominando a Documentação de Manutenção: Abordagem Confiável para Proteger Seus Ativos