Tutorial: Como Construir uma Controladora Estabilizadora de Voo para Aeromodelos Usando Arduino Nano.




Se você é apaixonado por aeromodelismo e deseja personalizar seu projeto com uma controladora de voo feita em casa, utilizar um Arduino Nano é uma excelente escolha. Este tutorial irá guiá-lo passo a passo na construção de uma controladora básica, que pode ser adaptada a diferentes tipos de aeromodelos.


# Materiais Necessários


Você precisará dos seguintes componentes:


- Arduino Nano.    Comprar Aqui



- Sensor MPU-6050** (Acelerômetro e Giroscópio)   Comprar Aqui



- Módulo receptor de rádio (compatível com seu transmissor)

- Motores e ESCs (Electronic Speed Controllers) ou servos para o acelerador

- Servos para controle das superfícies de comando** (1 para profundor, 2 para os ailerons)

- Bateria LiPo (Lítio-Polímero)

- Jumpers e fios de conexão

- Breadboard (opcional)

- Software Arduino IDE


# Passo 1: Montagem do Circuito


Comece conectando os componentes ao Arduino Nano conforme as instruções abaixo.


# Conexões do Receptor de Rádio:


- Acelerador (Throttle): Conecte o canal de acelerador ao *pino digital 3* do Arduino Nano.

- Ailerons: Conecte o canal dos ailerons ao *pino digital 4*

- Profundor (Elevator): Conecte o canal do profundor ao *pino digital 5*

- Leme (Rudder): Conecte o canal do leme ao *pino digital 6*

- Alimentação: Conecte o pino de *+V* do receptor ao *5V* do Arduino Nano.

- Terra: Conecte o pino de *GND* do receptor ao *GND* do Arduino Nano.



# Conexões dos Servos:


- Servo do Aileron Esquerdo: Conecte o fio de sinal ao *pino digital 9*

- Servo do Aileron Direito: Conecte o fio de sinal ao *pino digital 10*

- Servo do Profundor: Conecte o fio de sinal ao *pino digital 11*

- Servo do Acelerador (se necessário) Conecte o fio de sinal ao *pino digital 12*



Todos os servos devem ter seus fios de alimentação (+) conectados ao 5V e os fios de terra (GND) ao GND do Arduino Nano.


# Conexões do MPU-6050 com o Arduino Nano:


- VCC (ou +V): Conecte ao 5V do Arduino Nano.

- GND: Conecte ao GND do Arduino Nano.

- SCL: Conecte ao pino A5 no Arduino Nano.

- SDA: Conecte ao pino A4 no Arduino Nano.



# Passo 2: Programação do Arduino Nano


Agora que o hardware está configurado, vamos programar o Arduino Nano para atuar como uma controladora de voo. Abra o Arduino IDE e instale as bibliotecas necessárias:


Código:
#include <Wire.h>
#include <MPU6050.h>
#include <Servo.h>

MPU6050 mpu;

Servo aileronLeftServo;
Servo aileronRightServo;
Servo elevatorServo;
Servo throttleServo;

int throttlePin = 3;
int aileronPin = 4;
int elevatorPin = 5;
int rudderPin = 6;

float rollCorrection = 0;
float pitchCorrection = 0;

void setup() {
  Wire.begin();
  mpu.initialize();

  aileronLeftServo.attach(9);
  aileronRightServo.attach(10);
  elevatorServo.attach(11);
  throttleServo.attach(12);

  pinMode(throttlePin, INPUT);
  pinMode(aileronPin, INPUT);
  pinMode(elevatorPin, INPUT);
  pinMode(rudderPin, INPUT);
}

void loop() {
  int throttle = pulseIn(throttlePin, HIGH);
  int aileron = pulseIn(aileronPin, HIGH);
  int elevator = pulseIn(elevatorPin, HIGH);
  int rudder = pulseIn(rudderPin, HIGH);

  // Leitura dos ângulos do MPU-6050
  mpu.getMotion6(&ax, &ay, &az, &gx, &gy, &gz);

  // Calculo básico das correções (ajuste conforme necessário)
  rollCorrection = -gx / 131.0; // Correção de rotação (roll)
  pitchCorrection = gy / 131.0; // Correção de cabeceio (pitch)

  // Ajustando os servos dos ailerons
  int aileronLeftPosition = map(aileron, 1000, 2000, 0, 180) + rollCorrection;
  int aileronRightPosition = map(aileron, 1000, 2000, 180, 0) + rollCorrection;
  aileronLeftServo.write(aileronLeftPosition);
  aileronRightServo.write(aileronRightPosition);

  // Ajustando o servo do profundor com correção
  int elevatorPosition = map(elevator, 1000, 2000, 0, 180) + pitchCorrection;
  elevatorServo.write(elevatorPosition);

  // Ajustando o motor ou servo do acelerador
  throttleServo.write(map(throttle, 1000, 2000, 0, 180));

  delay(20);
}


#Passo 3: Testes e Ajustes

Depois de carregar o código no Arduino Nano, teste o sistema. Sem ligar os motores, verifique se os servos respondem corretamente aos comandos do transmissor e se a estabilização está funcionando como esperado. Ajuste o código conforme necessário para otimizar o desempenho.

# Considerações Finais

Este projeto de controladora de voo com Arduino Nano é uma excelente maneira de aprender sobre o controle de aeromodelos e experimentar a estabilização automática. Com essa base, você pode expandir as funcionalidades e personalizar sua controladora conforme as necessidades específicas do seu aeromodelo.

Bons voos e continue explorando!



Nenhum comentário:

Postar um comentário

Tutorial: Como Construir uma Controladora Estabilizadora de Voo para Aeromodelos Usando Arduino Nano.

Se você é apaixonado por aeromodelismo e deseja personalizar seu projeto com uma controladora de voo feita em casa, utilizar um Arduino Nano...