Este projeto eletrônico consiste em robô móvel denominado Quadricóptero, capaz de se deslocar por meio aéreo e os atuadores que possibilitam levantar vôo são quatro motores com hélices dedicadas para aeromodelismo.
Um vôo estável torna-se possível sem necessidade de habilidade por parte do usuário (via RF), pois o quadricóptero possui controle em malha fechada no mínimo em dois eixos (X e Y) e atualmente na maioria dos casos, também no eixo Z, controlando inclusive a altura.
Integração com GPS e sistema de navegação para o quadricóptero tambem é uma implementação viável.
Objetivo deste projeto Eletrônico:
O projeto eletrônico não objetiva a simples montagem de um drone e sim sua criação. Nos tempos atuais, utilizando os recursos ja desenvolvidos por outras empresas seria uma tarefa bastante simples executar a montagem de um drone, porem o objetivo desse projeto é a construção do "zero" de um quadricóptero, criando inclusive o "cerebro" dele que é a placa controladora, desenvolvimento da IMU , implementação dos algoritmos, firmwares etc...Considerações Iniciais:
Este foi o trabalho de graduação em engenharia na universidade são judas tadeu de um dos fundadores da ControlChip e foi desenvolvido em 2011.Pouco se ouvia falar sobre drones e similares em 2011, a não ser em trabalhos universitários que exploravam o tema e os recursos tecnológicos como sensores e IMU quase não existiam para esse propósito, sendo a criação da IMU (Inertial measurement unit) "de longe" o maior desafio desse projeto.
Projeto eletrônico proposto à Banca de Avaliação
Nosso objetivo como estudantes sempre foi fazer o quadricóptero voar, no entanto os orientadores do TCC nos aconselharam a não propor isso a banca, ainda que continuassemos com o objetivo de faze-lo voar, porem sem o compromisso disso, afinal eram nossos diplomas em jogo.
A proposta oficial do trabalho de graduação foi desenvolver um projeto eletrônico capaz de controlar o quadricóptero apenas no eixo X, apoiado em uma estrutura com rolamentos.
Dessa forma estariamos abordando os conceitos de controle em malha fechada com profundidade, alem de inúmeros outros assuntos que fizeram parte do curso de engenharia na USJT.
Essa proposta era o suficiente para ser aceito pela banca como trabalho de graduação. E assim foi feito !
A proposta oficial do trabalho de graduação foi desenvolver um projeto eletrônico capaz de controlar o quadricóptero apenas no eixo X, apoiado em uma estrutura com rolamentos.
Dessa forma estariamos abordando os conceitos de controle em malha fechada com profundidade, alem de inúmeros outros assuntos que fizeram parte do curso de engenharia na USJT.
Essa proposta era o suficiente para ser aceito pela banca como trabalho de graduação. E assim foi feito !
Primeira estrutura do Quadricóptero:
Faz parte do aprendizado em um TCC criar soluções para resolver problemas impostos por restrições de verba, afinal o mercado real é assim, e a verba que a engenharia da universidade são judas tadeu destinou ao projeto era restrita. Diante destas restrições optamos por fazer a primeira estrutura composta por quatro hastes de PVC.No centro da estrutura de PVC está a placa eletrônica que aloja o microcontrolador ARM LPC-2138, um módulo de comunicação RF Xbee e os sensores acelerômetro e giroscópio.
Na extremidade de cada haste encontra-se um motor com hélices balanceadas e específicas para aeromodelismo, bem como os modulos de controle trifásico denominados ESCs.
Motores Brushless (Aeromodelismo)
Os Motores Brushless são motores trifásicos, portanto surge a necessidade de um controlador eletrônico de velocidade (ESC - Electronic Speed Control) responsável pela conversão. Quase invariavelmente o sinal de entrada do ESC para controle de velocidade é um PWM, de 50 a 400Hz.Ao contrário dos motores brushed, os brushless não utilizam escovas, o Estator é constituído por bobinas e o rotor por um ímã indutor. São motores onde o consumo de corrente é menor por rendimento/força motriz disponível comparativamente aos motores brushed e por esse motivo dão-se ao luxo de usarem Hélices maiores sem perderem a sua eficácia permitindo-se a serem usados em aeromodelos onde o peso ou carga alar é maior.
PWM da placa eletrônica (Pulse Width Modulation)
O sinal de PWM é utilizado nesse projeto para controle dos 4 motores bem como na programação dos modulos ESCs. Apesar do PWM ser um sinal digital que possui apenas "0" ou "1" essa técnica nos permite variar o sinal de 0 a 100%, como se fosse um sinal analógico.A intensidade do sinal é controlada alterando o Duty Cycle que vai de 0 a 100%, sendo 0% o sinal sempre em "0" e 100% o sinal sempre em "1".
Modulos ESC (Electronic Speed Control)
Os módulos ESC são microcontrolados e se comunicam através de PWM. Alem de controlar a velocidade do motor os modulos ESCs tambem tem seus parâmetros programados via PWM onde, através de sons, é possível saber em qual parâmetro será feita a configuração desejada.Alguns parâmetros configuráveis são: tipo de freio, nível de corte para proteção de carga da bateria, modo de partida, número de células da bateria dentre outros.
Baterias Aeromodelismo
Para prover energia aos motores, placa eletrônica e periféricos utilizamos uma bateria de LiPo de 4000mAh com três células, portanto 11.1 V e capacidade de descarga de 40C.Uma célula de 1200mAh (1.2Ah) pode dar 1.2A por 1Hr. A medida “C” é define quanta energia esta sendo consumida em relação a capacidade da bateria. Por exemplo: uma célula de 700mAh que esteja fornecendo 1400mAh, é descarregada a 2C. Baterias de Lithium Polymero só devem ser carregadas em carregadores específicos para Lithium Polymero, por causa de suas características especiais que diferem completamente das demais baterias.
Controle do quadricóptero
Visando explorar ao máximo os conhecimentos adquiridos ao longo do curso de engenharia foi decidido desenvolver absolutamente todo o hardware necessário para o projeto eletrônico sem o uso de plataformas pre-prontas como Arduino.Até mesmo as placas de circuito impresso foram feitas em processo caseiro com fenolite e corrosão em percloreto de ferro, e se por um lado isso da um "ar" de amadorismo as placas feitas, por outro lado explora-se muito mais conceitos adquiridos no curso, sendo exatamente essa a idéia de um trabalho de graduação.
Os acelerômetros e giroscópios possuem encapsulamento LGA o que dificulta muito uma soldagem manual, porem, assim foi feito, incluindo a criação das placas adaptadoras de fenolite.
Projeto eletrônico - Esquemático
Aqui temos o esquemático da placa eletrônica de controle com todos os elementos que devem ser embarcados no quadricóptero como, Arm Cortex M0, modulo Radio Frequencia Xbee-Pro, acelerômetro, giroscópio, reguladores e conectores para os modulos ESCs.Durante o desenvolvimento desse projeto eletrônico foram utilizados diferentes sensores, alguns com sinal analógico e outros com comunicação digital, e no caso digital o protocolo de comunicação com os sensores é o I2C, estando todos na mesma linha de comunicação com o ARM.
Como a planta do nosso sistema é muito suscetível a ruidos, é necessário efetuar muitas leituras consecutivas para execução de uma média de cada ciclo de leitura e portanto a amostragem deve ser alta, essa é a razão de ser necessário uma comunicação com um clock alto em um protocolo eficaz, nesse caso operando a 400Khz.
Gerber da placa Controladora.
Em qualquer projeto eletrônico esse é o arquivo que devemos fornecer para a fabricação da PCI , para posteriormente ser montada com os componentes eletrônicos.
No caso expecífico deste projeto eletrônico, tratando-se de um trabalho de graduação, optamos por fazer manualmente a placa de circuito impresso com fenolite, e ao optarmos por essa técnica fomos obrigados a fazer a placa com face simples BOTTOM (azul).
Repare que temos poucas trilhas na face TOP (vermelho) justamente porque as "trilhas" da outra face deveriam ser feitas com fios, e por essa razão fizemos todas as trilhas possiveis de um lado só, tendo em vista que teriamos que fazer a outra face manualmente.
As dimensoes finais da placa controladora ficaram em 90 x 105 mm, porem em uma placa dupla face seria possível diminui-la consideravelmente.
As dimensoes finais da placa controladora ficaram em 90 x 105 mm, porem em uma placa dupla face seria possível diminui-la consideravelmente.
ARM CORTEX M0 (Microcontrolador de 32Bits)
Um microcontrolador é um microprocessador ja com periféricos embutidos no mesmo chip que possibilite o processador operar, sendo esse o cérebro do projeto eletrônico e absolutamente tudo é controlado pelo ARM .80% de todo o intelecto do projeto esta dentro desse chip em forma de código, sendo essa codificação que possibilita o controlador executar:
- Correta Leitura dos sensores (acelerômetro e giroscópio)
- Algoritmo do filtro de Kalman p/ determinação do ângulo.
- Calculos do Controlador Proporcional/Derivativo para estabilização do quadricóptero
- Controle da velocidade independente dos 4 motores.
- Tomada de decisões
- Lógica e intertravamentos de todo o sistema
Projeto eletrônico do Rádio Controle
Este segundo projeto eletrônico foi desenvolvido com base em um microcontrolador básico (8 Bits), porém capaz de atender as necessidades de processamento destinadas a ele.O controlador em questão é da família 8051 (At89S52/ Atmel) e a função deste controlador é basicamente interpretar os acionamentos dos botões do rádio controle (feitos pelo usuário) e enviar via Rádio frequência as informações para o quadricóptero para que ele possa atender aos comandos do usuário.
O desenvolvimento do Rádio Controle é um projeto a parte que esta detalhado em outra sessão do site.
Controle em Malha Fechada no quadricóptero
Os Controles em malha fechada são técnicas aplicadas em projetos eletrônicos e sistemas em geral com uma realimentação vinda de sensores em que ciclicamente a eletrônica mede o valor atual via sensores e com base no valor lido efetua cálculos para acionar um atuador, visando corrigir o erro existente.Um exemplo para uma melhor compreensão do controle em malha fechada seria pensarmos no funcionamento de um ar condicionado.
Nesse caso temos 3 parâmetros principais.
- Entrada: Set Point (valor de temperatura desejada pelo usuário)
- Entrada: Temperatura atual (Vinda da leitura do sensor de temperatura)
- Saída: Atua no acionamento da quantidade de ar gelado que deve ser aplicado no ambiente
Vamos imaginar 2 situações:
-
Set Point = 25 °C e Temperatura atual = 26°C
Nessa primeira situação a placa eletrônica aplicará pouco ar gelado no ambiente, pois o erro é pequeno, ou seja, a temperatura ambiente já esta quase no valor desejado pelo usuário. -
Set Point = 16 °C e Temperatura atual = 28°C
Nessa segunda situação a placa eletrônica aplicará todo o ar gelado que consegue no ambiente para corrigir o erro que é grande.
O erro é a diferença entre a Temperatura atual obtida do sensor e o SetPoint que é a temperatura desejada pelo usuário.
A idéia geral para o controle em malha fechada é o mesmo para qualquer projeto eletrônico, o que muda são as variaveis de entrada e saída, que no caso desse projeto eletrônico são:
- Entrada: Set Point (Valor da angulação desejada.)
- Entrada: Leitura do ângulo atual (Obtida da fusão dos sensores, Acelerômetro e giroscópio)
- Saída: Atua na velocidade dos 2 motores de cada eixo para buscar a angulação desejada do quadricóptero
Existe uma infinidade de técnicas destinadas ao controle em malha fechada dos mais variados tipos de sistemas, e controladores como o Proporcional Integral Derivativo (PID), Proporcional Derivativo (PD), FUZZY, LQR entre outros podem ser empregados.
Qual implementar em nosso projeto eletrônico ?
Desde o inicio desse projeto eletrônico muita pesquisa foi necessária, e nesse trajeto encontramos alguns trabalhos universitário que nos serviu como referência.Neste video podemos ver um desses trabalhos (University of Zurich) em que se compara na prática a resposta do sistema na estabilização do quadricóptero. No video vemos o comportamento na estabilização com diferentes ganhos do controlador proporcional (Kp) alem de ver o comportamento com outra técnica de controle, o LQR.
Nessas pesquisas constatamos que os melhores resultados eram aqueles que empregaram o controlador PD ou PID e por essa razão optamos por seguir na implementação do controlador PD para esse projeto eletrônico.
O controle Proporcional:
Trata-se de um controlador que aplica na saída um valor proporcional ao erro encontrado no sistema para corrigi-lo.Quando utilizado individualmente em um sistema qualquer, não se consegue bons resultados, não havendo estabilização no Set Point desejado por existir erro estacionário ou entrando em oscilação, dependendo da constante Kp.
O controle derivativo:
não é, isoladamente, uma técnica de controle, pois, não pode ser empregado separado de uma ação proporcional. A ação derivativa consiste em uma resposta na saída do controlador que é proporcional a velocidade de variação do desvio. A ação derivativa tem o efeito de reduzir a velocidade das variações do sistema, evitando que eleve ou reduza muito rapidamente, portanto podemos dizer que é uma predição, possibilitando que o controlador aumente ou diminua sua saída em função do que ainda irá acontecer.O derivativo atua quando há variação no erro, se o processo está estável seu efeito é nulo. Durante perturbações na partida do processo, quando o erro está variando, o derivativo sempre atua no sentido de atenuar as variações, sendo sua principal função, melhorar o desempenho do processo durante os transitórios. De maneira bem simples, podemos dizer que se o derivativo fosse aplicado individualmente ele nada faria para corrigir um determinado erro, caso não sofresse variação. Portanto a ação derivativa quando combinada com a ação proporcional tem a função de "antecipar" a ação de controle a fim de que o processo reaja mais rapidamente. Neste caso, o sinal de controle a ser aplicado é proporcional a uma predição da saída do processo.
A estrutura básica do controlador PD é dada por:
Considerando que e(t + Td) pode ser aproximado por: Tem-se que u(t) ≈ K e(t + Td) ou seja, o sinal de controle é proporcional a estimativa do erro de controle unidades de tempo a frente.Em outras palavras, a predição é feita extrapolando o valor do erro pela reta tangente a curva do erro no instante t:
Caracteristicas da interpretação do controlador proporcional-derivativo(PD)
Esta ação preditiva tende a aumentar a estabilidade relativa do sistema e tornar a resposta transitória, mais rápida.
Variável de entrada para o Controlador PD no Quadricóptero
Apesar deste projeto eletrônico possuir diversos aspectos complexos, esse tópico é considerado sem dúvida o de maior complexidade.A variável de entrada para o controlador PD é o ângulo, e uma vez com o ângulo em "mãos" o controlador PD consegue atuar de modo a efetuar as correções, em busca do Set Point, obtendo assim, a angulação desejada para o sistema.
O principal problema, é que não existem sensores sem vínculo físico com o plano terrestre que sejam capazes de informar a angulação de um determinado corpo e nesses casos, faz-se uso de sensores que medem outras grandezas para obter-se uma boa estimativa de ângulo.
A questão é que os sensores utilizados (acelerômetro X,Y,Z) e (Giroscópio X,Y) são sensíveis a grandezas físicas presentes no sistema, o que fornece medições incorretas.
Independente das dificuldades dessa abordagem foi necessário seguir em frente por ser a única opção viável.
Muitas pesquisas foram feitas sobre o assunto, quase invariavelmente, sempre que encontrado um projeto que efetuava leitura de ângulo de forma eficiente, a solução empregada, era o mesmo, filtro de Kalman, e a solução adotada foi uma simplificação do filtro de Kalman, dado o alto grau de complexidade matemático do filtro original, principalmente o que se relaciona a determinação do coeficiente de ruido branco e essa simplificação será abordada mais a frente.
Acelerômetro:
Os acelerômetros são sensores que medem aceleração, e existem diversos tipos fabricantes e características relacionadas aos acelerômetros.O acelerômetro utilizado no projeto foi de 3 Eixos (XYZ) com range de 2G (-G a +G ) e saída analógica (0,99 a 2,31V ).
Como mencionado, o acelerômetro mede aceleração, porém é possível obter informação de ângulo, no caso particular, em que o dispositivo está apenas sob a aceleração da gravidade, pois essa aceleração é conhecida (≈9,8m/s2) e, nesse caso,pode-se calcular o ângulo com uma relação trigonométrica simples.
Soma Vetorial:
ax(t)= Acelerações sofridas no eixo X do acelerômetro ao longo do tempo.
az(t) Acelerações sofridas no eixo Z do acelerômetro ao longo do tempo.
Logo:
ax(t) = gsenθ (3)
az(t) = gcosθ (4)
Como:
tan θ = senθ / cosθ (5)
Entao:
θ = tan-1 ax(t) ÷ az(t) (6)
Em que ax(t) e az(t) são as medidas obtidas do acelerômetro após os cálculos para conversões dos ADs para as medidas de aceleração.
Nesse caso particular necessariamente temos que:
Lembrando que nesse cenário ideal o dispositivo sofre aceleração apenas da gravidade, porem essa situação particular claramente não se enquadra nesse projeto eletrônico, tendo em vista que, o quadricóptero sofrerá outras acelerações continuamente além da gravidade.
Idealmente o acelerômetro, deve ser posicionado no centro do quadricóptero de modo que suas mudanças de ângulos não gerem acelerações no acelerômetro. Outro ponto extremamente crítico são as vibrações, pois vibrações nada mais são do que grandes acelerações sofridas em diversas direções, e em diversas freqüências distintas. Essas acelerações são capturadas pelo acelerômetro, afinal, essa é a grandeza que ele mede.
Visando minimizar os erros vindo de vibrações, um filtro passa baixa (FPB) é fundamental para atenuar as altas freqüências que nada dizem sobre as reais oscilações do sistema.
Percebe-se então que nesse contexto, medir ângulo diretamente pelo acelerômetro certamente não trará bons resultados, no entanto, é uma estimativa inicial válida, desde que seja agregada a outras medições, que também ajudem a trazer uma melhor estimativa.
Giroscópio
O giroscópio utilizado é o LPR4150, possui dois eixos (x e y) e pelos testes que executamos podemos dizer que é bastante preciso ao representar a velocidade angular em sua saida analógica..
O giroscópio mede a velocidade angular e nesse caso retorna um sinal analógico proporcional a velocidade de rotação. O LPR4150 tem uma sensibilidade de 2.0mV/°/s, significa que a saída muda 2.0mV para cada °/s de rotação.
Pode-se integrar o giroscópio lendo graus por-segundo para graus:
θn+1 = θn + (θgyro x dt) (7)
Para cada iteração, a velocidade angular multiplicada pela duração de tempo resulta na mudança incremental do ângulo.
O ângulo total consiste na soma desses incrementos, entretanto, há um problema. Se o sinal do giroscópio não for exatamente zero quando a plataforma não estiver em rotação (e nunca será) a integração irá acumular erro, e sem referência, não há forma de corrigir o erro do giroscópio.
Para períodos muito pequenos, o giroscópio provê um ângulo estimado bastante coerente e imune à aceleração da planta, ou seja, o giroscópio provê uma excelente medida no curto prazo, enquanto o acelerômetro provê uma medida média confiável no longo prazo.
Filtro de Kalman e sua implementação:
O filtro de Kalman, criado por Rudolf Kalman, é usado principalmente em aplicações onde os sinais provenientes dos sensores não são 100% confiáveis, o que engloba as situações onde as grandezas desejadas deverão ser adquiridas de forma indireta, que é o caso desse projeto.De maneira muito simplificada, pode-se dizer que o filtro de Kalman baseia-se em 3 passos fundamentais.
allaboutcircuits.com
- Leitura do ponto atual através de sensores
- Estimação do ponto atual;
- Execução de uma média ponderada das duas medidas
Os pesos dado a cada uma das medidas são alteradas continuamente, com base nas analises de ruídos vindos do sensor.
Essa determinação de ruído dos sensores possibilita que o algoritmo dê mais peso ao valor estimado quando sabe-se que a leitura atual tem muito ruído, ou mais peso ao valor lido, quando sabe-se que a leitura atual tem pouco ruído.
Como a eletrônica sabe quando tem pouco ou muito ruído na leitura do sensor?
Pois é exatamente ai que a coisa começa a complicar, e foi justamente essa a proeza de Rudolf Kalman. Existem equações do filtro de Kalman que possibilitam essa análise de ruído por meio de um coeficiente, chamado de coeficiente de ruído branco, que pode ser determinado através de aquisição de dados do sistema. Com esse coeficiente em mãos as equações são resolvidas em matrizes com equações que dado o tempo excasso para o desenvolvimento do projeto não foi possível compreendermos com profundidade e sua resolução em matrizes. A abordagem utilizada neste projeto eletrônico é uma simplificação do filtro de Kalman, que em muitas pesquisas, observou-se ser de fato eficiente e posteriormente constatado que se consegue uma ótima estimativa de ângulo.
A diferença entre o Kalman original e a simplificação implementada é que o peso dado a cada uma das medidas (lida e estimada), não são atualizadas continuamente e sim valores fixos, encontrados experimentalmente, de modo que o algoritmo não prevê análise contínua para determinação de níveis de ruídos no valor lido.
Como visto anteriormente, existem sérios problemas em ler ângulo diretamente do acelerômetro, pelo fato desse sensor ser muito sensível a trepidações, além de medidas incorretas provenientes de acelerações externas.
Já o giroscópio não apresenta o problema de ser sensível a trepidação, porém possui um problema diferente, ele acumula erro, quando mede-se ângulos calculados através da velocidade angular.
Percebe-se que um complementa o outro, e uma boa solução é mesclá-los. Nessa implementação, o giroscópio é o estimador e pode-se determinar qual a angulação atual do sistema com base no ângulo anterior.
Como a eletrônica sabe quando tem pouco ou muito ruído na leitura do sensor?
Pois é exatamente ai que a coisa começa a complicar, e foi justamente essa a proeza de Rudolf Kalman. Existem equações do filtro de Kalman que possibilitam essa análise de ruído por meio de um coeficiente, chamado de coeficiente de ruído branco, que pode ser determinado através de aquisição de dados do sistema. Com esse coeficiente em mãos as equações são resolvidas em matrizes com equações que dado o tempo excasso para o desenvolvimento do projeto não foi possível compreendermos com profundidade e sua resolução em matrizes. A abordagem utilizada neste projeto eletrônico é uma simplificação do filtro de Kalman, que em muitas pesquisas, observou-se ser de fato eficiente e posteriormente constatado que se consegue uma ótima estimativa de ângulo.
A diferença entre o Kalman original e a simplificação implementada é que o peso dado a cada uma das medidas (lida e estimada), não são atualizadas continuamente e sim valores fixos, encontrados experimentalmente, de modo que o algoritmo não prevê análise contínua para determinação de níveis de ruídos no valor lido.
Como visto anteriormente, existem sérios problemas em ler ângulo diretamente do acelerômetro, pelo fato desse sensor ser muito sensível a trepidações, além de medidas incorretas provenientes de acelerações externas.
Já o giroscópio não apresenta o problema de ser sensível a trepidação, porém possui um problema diferente, ele acumula erro, quando mede-se ângulos calculados através da velocidade angular.
Percebe-se que um complementa o outro, e uma boa solução é mesclá-los. Nessa implementação, o giroscópio é o estimador e pode-se determinar qual a angulação atual do sistema com base no ângulo anterior.
Onde:
Rate Gyro = Velocidade angular lida.
T= Tempo entre uma medição e outra.
A idéia é obter duas medidas de ângulo, e executar uma média ponderada.
Fusao dos Sensores:
Alguns cálculos para interpretação dos sensores foram ocultados, visando o melhor entendimento da fusão dos sensores em si.
As principais equações dessa implementação são:
Finalmente:
Onde:
w1 e w2 ditam o quanto acredita-se em cada uma das 2 medidas (lida e estimada). Na implementação original do filtro de Kalman, esses valores são atualizados continuamente, na abordagem simplificada esses valores são fixos, e foram encontrados experimentalmente. w1 e w2 devem estar entre 0 e 1, de modo que a soma dos 2 seja 1. (0 a 100%)
Na equação abaixo:
Repare que a medida que θ se aproxima de 90º a medida az(t) tende a zero e os valores extrapolam, tendendo ao infinito, de modo que o ARM não terá condições de calculá-los. Existem algumas alternativas para essa situação, porém, não é o objetivo abordá-las aqui.
Comunicação do Quadricóptero com o Radio Controle.
Para a comunicação com o quadricóptero a solução mais simples seria a utilização de um Radio Controle dedicado ao Aeromodelismo, pois com o receptor no quadricóptero seria basicamente ler os PWMs de cada canal.A estabilidade da comunicação tambem é confiavel e de longa distancia sendo um dispositivo mais que validado por ser usado ja a tanto tempo no aeromodelismo.
Porem, por se tratar de um trabalho de graduação, novamente optamos por desenvolver um rádio controle próprio buscando explorar mais o conteudo ofertado ao longo do curso de engenharia.
Diante dessa decisão muitas pesquisas foram feitas buscando a melhor interface RF para incorporar em nosso Controle.
Levamos em consideração o alcance das interfaces, a suscetibilidade a ruídos internos (gerados pelo próprio circuito) e externos (fatores ambientais), o custo de aquisição e a disponibilidade no mercado.
O XBee, fabricado pela Digi International, foi a interface que melhor adequou-se a este projeto, por conta dos recursos fornecidos e pela facilidade em relação à busca de informações sobre configuração e operabilidade.
A escolha pelo modelo XBee-PRO, deve-se exclusivamente ao seu maior alcance em relação ao XBee.
Troca de mensagens Radio controle x Quadricóptero
A comunicação com os modulos X-BEE é feita via UART, portanto em ambos os lados Quadricóprtero=>Uart=>Arm e Radio-Controle=>Uart=>8051, de modo que é como se o Xbee fosse invisivel aos Microcontroladores (ARM e 8051), para eles é como se estivessem se comunicando diretamente via UART.
Foi definido e implementado também um protocolo para troca de informação entre o rádio controle (8051) e a CPU do quadricóptero (ARM7).
As mensagens são compostas por 2 bytes, o primeiro sinaliza qual o tipo de informação ou solicitação, e o segundo indicando o valor da informação, que pode assumir valores de 0 a 255.
Foi definido e implementado também um protocolo para troca de informação entre o rádio controle (8051) e a CPU do quadricóptero (ARM7).
As mensagens são compostas por 2 bytes, o primeiro sinaliza qual o tipo de informação ou solicitação, e o segundo indicando o valor da informação, que pode assumir valores de 0 a 255.
Resultados obtidos:
Apresentamos aqui os resultados obtidos durante o desenvolvimento do projeto Eletrônico Quadricóptero.Muitas aquisiçõe de dados foram feitas e serão omitidos os dados sem maior relevância para a compreensão do projeto eletrônico em si.
Linearização dos motores
Para que o controlador PD possa atuar de forma adequada o motor precisa ser linear, caso contrário, deveria ser linearizado via software.
Foram feitos ensaios com um sensor infravermelho apontado para a hélice e fizemos a aquisição de dados para levantamento da curva do motor PWM x RPM.
Obtivemos esse gráfico e a relação é praticamente linear, portanto não há a necessidade de efetuar a linearização.
Foram feitos ensaios com um sensor infravermelho apontado para a hélice e fizemos a aquisição de dados para levantamento da curva do motor PWM x RPM.
Obtivemos esse gráfico e a relação é praticamente linear, portanto não há a necessidade de efetuar a linearização.
Filtro passa Baixa
É de fundamental importância ter um FPB em todos os eixos dos sensores analógicos (Acelerômetro X,Y,Z, Giroscópio X,Y).
A freqüência de amostragem do acelerômetro usado é de 1,8Khz, e do giroscópio é de 2Khz.
Uma vez que deseja-se medir ângulo do sistema, sabe-se que oscilações vindas acima de 20Hz (Ensaios demonstraram isso) nada dizem sobre oscilações reais do sistema.
Para minimizar os efeitos provenientes de ruídos, trepidações deve-se necessariamente implementar o FPB. Foram feitos ensaios com o acelerômetro (que é muito sensível a trepidações) no sistema. O ensaio foi expor o acelerômetro a trepidações, sem alteração de ângulos, e medir-lo com um osciloscópio.
A freqüência de amostragem do acelerômetro usado é de 1,8Khz, e do giroscópio é de 2Khz.
Uma vez que deseja-se medir ângulo do sistema, sabe-se que oscilações vindas acima de 20Hz (Ensaios demonstraram isso) nada dizem sobre oscilações reais do sistema.
Para minimizar os efeitos provenientes de ruídos, trepidações deve-se necessariamente implementar o FPB. Foram feitos ensaios com o acelerômetro (que é muito sensível a trepidações) no sistema. O ensaio foi expor o acelerômetro a trepidações, sem alteração de ângulos, e medir-lo com um osciloscópio.
Percebemos nitidamente que, não apenas houve ruídos, como esses ruídos saturaram o acelerômetro, indo da menor medida (–G) a (+G).
Isso demonstra como é absolutamente impossível usar um acelerômetro visando medir ângulo sem, no mínimo, o uso de um FPB. Observou-se que esses ruídos “caminham” em freqüências acima de 1Khz Foi implementado um FPB ativo de 4º ordem com freqüência de corte em 20hz. Vemos na imagens a Curva do Filtro Passa Baixa de 4 ordem que foi implementado.
Isso demonstra como é absolutamente impossível usar um acelerômetro visando medir ângulo sem, no mínimo, o uso de um FPB. Observou-se que esses ruídos “caminham” em freqüências acima de 1Khz Foi implementado um FPB ativo de 4º ordem com freqüência de corte em 20hz. Vemos na imagens a Curva do Filtro Passa Baixa de 4 ordem que foi implementado.
Comparativo FPB 1 Ordem e FPB 4 Ordem na Planta
A inserção de filtro ativo de 4 ordem no circuito impactaria na criação de uma nova placa controladora, e portanto resolvemos fazer testes práticos com os 2 Filtros (1 Ordem e 4 Ordem) para ver qual o real benefício q teriamos de fato nessa implementação.
Executamos a montagem do filtro em protoboard para testes antes de passar para a placa eletrônica.
O teste seria aplicar uma trepidação na placa, medindo as entradas e saidas dos filtros o que nos traria uma real noção dos ruidos envolvidos nesse sistema.
Executamos a montagem do filtro em protoboard para testes antes de passar para a placa eletrônica.
O teste seria aplicar uma trepidação na placa, medindo as entradas e saidas dos filtros o que nos traria uma real noção dos ruidos envolvidos nesse sistema.
Teste com FPB Ativo de 4 Ordem
Entrada
Saída
Teste com FPB Passivo de 1 Ordem
Entrada
Saída
Diante desta constatação, optamos por seguir com o filtro de 1 ordem no circuito.
Controle do Quadricóptero no Eixo X
Neste video vemos o quadricóptero controlando o ângulo do Eixo X e apoiado no eixo Y.São solicitados via rádio frequencia 3 SetPoints diferentes (0 Graus, 30 Graus -30 Graus). Vemos tambem o comportamento com os motores em baixa Rotação e em alta Rotação em cada um dos SetPoints, pois quanto maior a rotação mais trepidação e mais influência o sistema sofre.
Consideramos uma boa estabilização, o próximo passo seria replicar o Eixo Y para tentar coloca-lo no ar. Para esta estabilização o Controlador Proporcional esta com um ganho Médio.
Vôo do Quadricóptero
Ja nos ultimos dias do TCC resolvemos colocar o quadricóptero no ar implementando mais uma malha de controle no eixo Y. Sabiamos que não haveria tempo hábil para melhorias.A Estabilidade do quadricóptero em si estava boa, porem constatamos diversos outros problemas que precisariam ser resolvidos. No video podemos observar o quadricóptero girando, isso é porque não existe nenhuma malha de controle para atuar no diferencial dos 2 pares de motores.
Alem disso constatamos que seria necessário fechar outra malha de controle no eixo Z (Altura) pois sem isso fica difícil operar, como vemos no video sem esse controle ou ele sobe muito, ou desce muito.
Agradecimentos:
Existe um carinho muito especial por esse projeto e por todos que participaram dele, foi o projeto que a muitos anos nos conferiu a formação como engenheiros. Uma grande vitória, e também o início
de uma nova jornada, de muitos desafios e aprendizados.Integrantes do Grupo:
Agradecimentos especiais:
Muitos professores foram importantes, outros, fundamentais em nossa trajetória como aspirantes à engenheiros, porem, temos um agradecimento mais do que especial ao nosso orientador e sempre mestre, Alexandre Brincalepe Campo, um verdadeiro expert em automação e controle que tanto nos tolerou, compreendeu e ensinou no decorrer dos longos 6 anos de curso.
Gratidão !
Muitos professores foram importantes, outros, fundamentais em nossa trajetória como aspirantes à engenheiros, porem, temos um agradecimento mais do que especial ao nosso orientador e sempre mestre, Alexandre Brincalepe Campo, um verdadeiro expert em automação e controle que tanto nos tolerou, compreendeu e ensinou no decorrer dos longos 6 anos de curso.
Gratidão !