• Nenhum resultado encontrado

Desenvolvimento de Veículos Autônomos em Escala, Sistemas de Comando, Visualização do Movimento e Aquisição de Dados.

N/A
N/A
Protected

Academic year: 2021

Share "Desenvolvimento de Veículos Autônomos em Escala, Sistemas de Comando, Visualização do Movimento e Aquisição de Dados."

Copied!
13
0
0

Texto

(1)

Desenvolvimento de Veículos Autônomos em Escala,

Sistemas de Comando, Visualização do Movimento e

Aquisição de Dados.

Aluno: Luiz Felipe Helt Santos Orientador: Mauro Speranza Neto

Laboratório de Desenvolvimento de Controle - ECA 1) Introdução:

As áreas de veículos autônomos, sistemas de comando, instrumentação embarcada, visualização do movimento e aquisição de dados estão diretamente ligadas à Engenharia de Controle e Automação. Atualmente, qualquer tipo de estudo baseado nesses tópicos, são de extrema importância para o desenvolvimento da indústria automobilística.

Este projeto agrega princípios computacionais e mecatrônicos para a resolução de problemas nessa área. As simulações devem ser as mais realísticas possíveis, envolvendo o veículo como um todo. Pode-se perceber, que é inviável usar veículos comerciais para tais simulações, já que seria economicamente impossível fazer testes com tais veículos. Por isso, são utilizados veículos em escala que possuem a mesma base teórica de um veículo em tamanho normal. Além disso, todo o procedimento é feito em um ambiente controlado, para que não exista nenhuma fonte de extrema adversidade.

Cabe ao Engenheiro de Controle e Automação, ter um bom embasamento mecânico, eletrônico e computacional para conseguir desenvolver um projeto relacionado à essas áreas.

(2)

2) Objetivos:

O principal objetivo é construir uma eletrônica de controle no veículo (figura 3), possibilitando que o veículo em escala seja rádio controlado por um volante, por um acelerador e por um freio externos, e os sinais de comando sejam transmitidos para ele. Além disso, há a necessidade da instalação de uma câmera onboard no veículo, pois este equipamento é de fundamental importância para a sua pilotagem.

Um outro objetivo seria, posteriormente, testar, validar e instalar o sistema de comando no veículo em escala e a visualização do movimento e a aquisição de dados.

O procedimento tem como base o estabelecimento, por meio de modelos matemáticos e simulação computacional, da trajetória e atitude desejada em uma pista ou traçado pré-estabelecidos, que são baseados em um microcontrolador embarcado. A partir dos sinais medidos por uma central inercial (acelerômetros e girômetros) comercial, tratados e manipulados convenientemente, é realizada a comparação dos comportamentos previstos e efetivamente alcançado e, consequentemente, são estabelecidas as eventuais correções nos comandos de velocidade e esterçamento.

(3)

3) Metodologia:

Inicialmente, para fins de compreensão dos tópicos envolvidos, foram estudados os sistemas de comando, e analisados os resultados do projeto anterior. Por fim houve a desmontagem de todos os componentes do sistema para observar o funcionamento das suas diferentes partes (figuras 5,6 e 7).

Depois do aprendizado inicial, retomou-se o projeto, com o desenvolvimento de uma plataforma de acrílico, que foi acoplada em cima do veículo, devido a necessidade de espaço para instalar a eletrônica embarcada (figura 8).

Em seguida, foram refeitos todos os sistemas de controle do veículo desde a programação do microcontrolador até as placas nas quais será instalada a eletrônica. Consequentemente, foram realizados testes de tais aparatos para a visualização de resultados e posteriormente a adequação às necessidades.

Posteriormente, quando toda a eletrônica do veículo estiver funcionando satisfatoriamente, ou seja, quando o veículo estiver sendo rádio controlado de acordo com as premissas estabelecidas, será iniciada a aquisição de dados, através de uma central inercial, que possui acelerômetros e girômetros.

Figura 5: Desmontagem do veículo Figura 6: Desmontagem do controlador

(4)

Figura 9: Esboço da eletrônica 4) Resultados:

4.1) Plataforma em acrílico:

A falta de espaço para a eletrônica embarcada, para acelerômetros e girômetros faz com que fosse projetado, inicialmente, um aparato que conseguisse suprir a necessidade de espaço encontrada no veículo, sem afetar suas características dinâmicas.

Desenvolveu-se então um primeiro protótipo, baseado em uma chapa de alumínio, que foi manufaturada pelo próprio aluno. No entanto, constatou-se que a plataforma não se comportava bem dinâmicamente devido seu material não se tão resistente e sua fixação era precária (figuras 10,11 e 12).

(5)

Figura 11: Desenho da Plataforma 1 Figura 12 : Plataforma 1, versão teste

Então decidiu-se, utilizar uma plataforma em acrílico com suportes em alumínio para conseguir uma melhor fixação e uma maior robustez(figuras 13,14,15 e 16). Esse protótipo apresentou, um resultado bastante satisfatório, já que a plataforma ficou bastante rígida. Esta plataforma, contava com uma superfície plana de acrílico e quatro barras fixadoras de alumínio, todas foram projetados e manufaturados nas instalações da PUC-Rio. Com isso conseguiu-se, uma área de aproximadamente 380 cm² (figuras 17 e 18).

(6)

Figura 14: Esboço dos cilindros de alumínio de sustentação.

Figura 15: Desenho dos cilindros de alumínio de sustentação. Figura 16: Desenho da Plataforma de acrílico.

(7)

4.2) Programação no microcontrolador

Foi escolhido, o Arduino Uno para ser o microcontrolador do projeto, já que para o que é necessário ele se adequou bem. Além disso, ele possui uma interface de fácil aprendizagem e utiliza uma linguagem que os alunos da PUC-Rio já estão familiarizados(Linguagem C). Foi utilizado também, dois transceptores ShangHai Sunray Technology modelo SRWF-1028 (1.2), com 500mW de potencia, alimentação 5VDC e taxa de transmissão de dados 9600bps e um kit de joystick contendo um volante e um acelerador e freio.

A necessidade inicial, era a utilização de dois microcontroladores, um emissor e um receptor. O microcontrolador emissor, a partir de uma leitura analógica, identificaria a posição do potenciômetro (volante ou pedais) e enviaria através do transmissor para o receptor. Sendo assim, o microcontrolador receptor receberia os dados através do seu transceptores e comandaria o veículo somente no esterçamento e no controle de velocidade. A partir desta etapa fez-se necessário a implementação de um freio para o veículo, que seria uma mudança súbita da polaridade no motor do veículo.

Primeiro fez-se necessário ,testar com a programação, todos os elementos mecânicos do veículo, para constatar se havia algum problema. Com o veículo em cima de cavaletes, utilizou-se um programação em arduino para testar o esterçamento do veículo.

#include <Servo.h> Servo servo1; void setup () { Serial.begin(9600); //inicialização// servo1.attach(9); } void loop () { int pot_vaule; pot_vaule = analogRead(A0); pot_vaule = pot_vaule * 0.087; Serial.println((int)pot_vaule); servo1.write(pot_vaule); delay(15);

(8)

Tal programa, realiza uma leitura analógica do potenciômetro, que se encontra no volante utilizado (figura 19). Existe uma conversão de unidades, já que o microcontrolador lê de 0 a 1023 e o esterçamento vai de 0 a 90 graus. Além disso, foi necessário imprimir na tela, o valor do esterçamento, para conseguir ver se o tempo de loop estava suficientemente bom. No final, o valor da leitura analógica vai para o servomotor, que controla o esterçamento do veículo. Com isso, fez-se a ratificação de que o servomotor e o esterçamento estavam funcionando perfeitamente para uso.

Figura 19: Teste realizado.

Depois disso, testou-se o motor traxxs summit 775 titan escovado, que é o motor do veículo utilizado. O teste foi feito com o auxilio de uma bateria e um speed control para conseguir variar a intensidade do motor. Utilizou-se, novamente, uma programação no microcontrolador para testar o motor.

#include <SoftwareSerial.h> #include <Servo.h> Servo motor; char mt; int val; void setup() { Serial.begin(9600); motor.attach(8); } void loop() { mt= analogRead(A0);

val = map(mt, -127,127, 10,110); //pedal

(9)

motor.write(val); Serial.println(val); delay(50); }

Tal programa, realiza também uma leitura analógica similar a de esterçamento, nesse caso foi utilizado uma função que já realiza a conversão de unidades dado o valor da leitura analógica como parâmetro. Depois disso, o microcontrolador envia um sinal para o motor ligar com a intensidade dada no pedal(potenciômetro). Novamente, fez-se a ratificação que o motor estava funcionando adequadamente. Terminada a etapa de testes, decidiu-se então começar a fazer a programação completa de cada microcontrolador. Fazendo então um emissor que faça as leituras de esterçamento e de intensidade no pedal e as envie e um receptor que receba estes dados em tempo real e consiga fazer as conversões necessárias e dê o comando para o veículo.

Programa Emissor #include <SoftwareSerial.h> SoftwareSerial emissor(2,3); //rx,tx int leitura_volante=0; int leitura_pedal=0; float conta1=0; float conta2=0; void setup() { Serial.begin(9600); emissor.begin(9600); } void loop() { for(int i=0;i<10;i++) {

leitura_volante= leitura_volante + analogRead(A0); leitura_pedal= leitura_pedal + analogRead(A1); }

conta1=leitura_volante/10.0; leitura_volante = (int)conta1;

(10)

leitura_pedal=map(leitura_pedal,0,1023,-127,127); emissor.write(leitura_volante); emissor.write(leitura_pedal); Serial.write(leitura_volante); Serial.print(" "); Serial.write(leitura_pedal); Serial.print("\n\r"); leitura_volante=0; leitura_pedal=0; delay(30); }

O programa emissor, começa inicializando o serial e o emissor com a velocidade necessária de transmissão. Depois começa a rotina principal, onde primeiramente faz-se um loop de 1 até 10 para conseguir média dos dados que foram lidos analogicamente. Os dados das leituras do pedal e do volante são incrementados a cada looping para posteriormente fazer as médias para obter um melhor resultado. Em seguida, há a conversão das unidades de leitura e logo em seguida são enviadas via transmissores. Por fim, faz-se a impressão dos dados no vídeo e as variáveis de leitura do volante e do pedal são reinicializada(recebem atribuição 0).

Programa Receptor

#include <SoftwareSerial.h> SoftwareSerial receptor(2,3); //rx,tx #include <Servo.h>

Servo servomotor, motor; char volante; char pedal; int valor_volante; int valor_pedal; void setup() { Serial.begin(9600); receptor.begin(9600); servomotor.attach(9); motor.attach(8);

(11)

} void loop() { if(receptor.available()) { volante= receptor.read(); pedal= receptor.read();

valor_volante = map(volante,-127,127,60,120); //volante valor_pedal = map(pedal, -127,127, 10,110); //pedal servomotor.write(valor_volante); motor.write(valor_pedal); Serial.println(valor_volante); Serial.print(volante); Serial.print(" "); Serial.println(valor_pedal); Serial.print(pedal); Serial.print(" "); delay(30); } }

O programa receptor, começa inicializando o serial e o receptor com a velocidade de transmissão necessária e também inicializa o motor e o servomotor, cada um em seu pino. Depois começa a rotina principal, onde o programa só começa quando a função "receptor.available()" reconhece que existe um sinal oriundo da rotina emissora. Em seguida, recebe o valor das leituras do volante e do pedal e faz as conversões necessárias. Posteriormente, o microcontrolador manda o valor das leituras feitas para o servomotor e para o motor. Por fim, é feita a impressão na tela dos dados recebidos e do valor já convertido.

Tais programas, conseguiram fazer um boa comunicação entre os dois microcontroladores e o resultado obtido foi satisfatório.

4.3) Eletrônica embarcada

(12)

Começou-se então a implementação de tais circuitos em um placa de cobre. Inicialmente, foi utilizado a teoria para conseguir elaborar um circuito que se adequasse a necessidade. Posteriormente, fez-se um esboço de cada circuito visando a melhor arquitetura possível e o menor espaço.

Foi então empregada uma placa de cobre, sempre realizando testes de continuidade e de resistência. Devido, à falta de experiência, essa etapa sofreu um atraso considerável em relação ao previsto. Além disso, a placa teve que receber alguns jumpers já que algumas soldas não ficaram boas. Posteriormente, foram realizados os testes do veículo em bancada para determinar se o seu comportamento era o esperado (figuras 21, 22 e 23). No entanto, os testes mostraram que a arquitetura da placa eletrônica possuía um erro. Decidiu-se realizar todos os testes em uma protoboard para que não fossem cometidos novos erros e uma outra placa só será construída quando todo os sistema estiver completamente validado.

Figura 20: Eletrônica do veículo na Figura 21 : Teste com a Eletrônica no veículo. protoboard e em placas de cobre.

Figura 22: Teste com a Eletrônica no volante Figura 23: Teste de todo o sistema. e no pedal.

4.4) Visualização do movimento e a aquisição de dados

A Visualização do movimento e a aquisição de dados foram dois objetivos que ainda não conseguiram se alcançados, já que não houve tempo suficiente para conseguir fazer a implementação da câmera onboard e da central inercial (acelerômetros e girômetros). Além disso, esta etapa só será implementada quando toda a eletrônica do veículo estiver completamente testada e devidamente validada.

(13)

5) Referências

1 - http://arduino.cc/en/Tutorial/HomePage

2 - http://labdegaragem.com/

Referências

Documentos relacionados

Posteriormente, em Junho de 1999, ingressei no grupo Efacec, onde fui responsável pela elaboração de projetos e propostas para a construção de Estações de Tratamento

forficata recém-colhidas foram tratadas com escarificação mecânica, imersão em ácido sulfúrico concentrado durante 5 e 10 minutos, sementes armazenadas na geladeira (3 ± 1

c.4) Não ocorrerá o cancelamento do contrato de seguro cujo prêmio tenha sido pago a vista, mediante financiamento obtido junto a instituições financeiras, no

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

De seguida, vamos adaptar a nossa demonstrac¸ ˜ao da f ´ormula de M ¨untz, partindo de outras transformadas aritm ´eticas diferentes da transformada de M ¨obius, para dedu-

No final, os EUA viram a maioria das questões que tinham de ser resolvidas no sentido da criação de um tribunal que lhe fosse aceitável serem estabelecidas em sentido oposto, pelo

As autoras descrevem a criação de um Wiki central onde constam: um guião para a elaboração de um Wiki através do Pbworks (anteriormente Pbwiki), as regras e prazos do trabalho

• Expressão para a energia cinética do sistema 0.8 • Expressão para a energia potencial do sistema 0.8 • Aplicação da equação de Lagrange para obter a equação de movimento