Escolar Documentos
Profissional Documentos
Cultura Documentos
por
Karim H. Erian
Charlotte
2019
Aprovado por:
ii
c 2019
Karim H. Erian
TODOS OS DIREITOS RESERVADOS
Machine Translated by Google
iii
ABSTRATO
KARIM H. ERIAN. Integração do sistema através de um barramento CAN para um veículo todo-
o-terreno autocontrolado e autônomo de baixo custo. (Sob a direção do DR. JAMES M.
CONRAD)
Esta tese apresenta pesquisas para tornar um veículo todo-o-terreno (ATV) autônomo.
O objetivo desta pesquisa é ter uma plataforma padronizada para ATV autônomo
módulos incluindo um sensor GPS e um sensor IMU. Todos os módulos são conectados a um
Barramento CAN que está conectado a um controlador central. O projeto e implementação do sistema
mentação foi demonstrada pelo veículo dirigindo de forma autônoma em linha reta,
RECONHECIMENTOS
Gostaria de agradecer ao meu orientador, Prof. Dr. James M. Conrad por ser muito
apoio durante esta pesquisa e por fornecer seu tempo para me apoiar com o
Também gostaria de agradecer aos membros do meu comitê, Dr. Hamed Tabkhi e Dr.
Também gostaria de agradecer a Eddie Hill, da equipe do laboratório, por ceder seu tempo
e suporte com todos os equipamentos de laboratório necessários para alcançar esses resultados, e o ECE
Certamente meus colegas de laboratório são muito apreciados por seu suporte técnico e con
ajuda contínua, especialmente Shantanu Mhapankar por seu trabalho e apoio no fornecimento
Eu gostaria de agradecer principalmente aos meus pais pelo amável apoio que eles forneceram
Pelo menos, mas não por último, agradeço ao meu Senhor e Deus por Seus preciosos dons por fazer
tudo possível. Eu não seria capaz de alcançar resultados sem o Seu apoio.
Machine Translated by Google
ÍNDICE
LISTA DE ABREVIAÇÕES x
CAPÍTULO 1 INTRODUÇÃO 1
1.4. Limitações 8
1.6. Organização 9
3.5.1. Atuador do 36
vi
3.7.5. O algoritmo do cérebro para chegar ao destino final usando o GPS e IMU 49
4.9. Fase cerebral 8: mover o ATV para conduzir a figura '8' para trás e pará-lo no 68
ponto de partida
4.10. Fase 9 do cérebro: fazer uma curva de 90 graus para a direita enquanto corre 68
para trás
Machine Translated by Google
vii
4.11. Fase 10 do cérebro: fazer uma curva de 90 graus para a esquerda enquanto 69
corre para trás
5.1. Conclusão 70
REFERÊNCIAS 73
Machine Translated by Google
viii
LISTA DE FIGURAS
ix
FIGURA 4.7: O projeto do modelo 3D para a caixa usada para conter a maior parte 57
os módulos
LISTA DE ABREVIAÇÕES
XI
CAPÍTULO 1 INTRODUÇÃO
OEMs de carros elétricos de alta tecnologia estão aumentando diariamente. veículos autônomos
ainda estão em uma fase inicial de pesquisa, e os produzidos por alguns OEMs são muito
os chineses podem contribuir para economizar horas não produtivas para os motoristas que se deslocam diariamente para
e de sua área de trabalho para serem usados em tarefas mais úteis. Eles também podem contribuir
para transporte público e entregas de remessas. Recursos mais essenciais são tráfego
os veículos serão programados para seguir as regras de trânsito pela lei. Eles vão manter correto
para detectar objetos como humanos ou animais passando pelas ruas ou outros obstáculos na estrada
[2].
dentes [3]. Máquinas semelhantes podem ser usadas em trabalhos de maior prestígio do que apenas deslocamento
ing. Eles podem ser usados para fornecer suprimentos de emergência em áreas de furacões, terremotos
zonas e outros. Essas áreas não são acessíveis por veículos convencionais, e o
estradas podem ser perigosas para motoristas humanos. Outro uso a ser considerado seria
derstudy se movem de uma posição inicial para um destino final e param sem qualquer
interface humana.
muito esforço de pesquisa foi realizado para tornar este ATV autônomo.
sistema e controlador de direção conectados ao ATV. Também teve que ler da estação
sensores ários para identificar a estrada. O veículo era controlado por um controle remoto
• O Módulo do Acelerador: O ATV na mão é equipado com um acelerador acionado por fio
beneficiando-se de ter um acelerador acionado por fio inicialmente controlado por uma alavanca. O
estudo anterior tinha um servo motor elétrico que simula o movimento do fio.
através de 3 fios usados como fonte de energia, terra e sinal de controle. os 3 fios
módulo assistente de direção feito pelo OEM. O módulo Steering Assist não é um
situação de torque em uma direção para fazer o assistente de direção entrar em cena
valor dos resistores que simulam a saída do Sensor de Torque. A ideia principal do
comunicar com sensores na estrada usados como solução SLAM para locais sem
Sinais do Sistema de Posicionamento Global (GPS). Os sensores na estrada usados para desenhar
velocidade a ser usada com o módulo de direção, um conjunto de dois codificadores de roda foi
implementado e conectado aos 2 pneus traseiros. Eles foram usados para contar o
para "The Brain", que era uma placa de avaliação e demonstração da Renesas chamada
e atuadores neste ponto, exceto para o módulo de direção que estava ficando
ATV totalmente autônomo sem a necessidade de uma interface humana. Em vez de controlar
Além disso, este estudo também aborda como corrigir problemas existentes no sistema antigo, como
ponto deste estudo, o ATV ficou estacionado na garagem da universidade por um longo período
e precisava de algum serviço para poder chegar ao estado de execução. Um servo motor foi
pedal de freio e fixado no ATV. Além disso, o módulo de velocidade foi anexado ao
veículo. No entanto, esses módulos não possuíam controladores conectados a eles. Também,
o codificador do ângulo de direção existia e estava conectado ao ATV com todos os fios rotulados.
Machine Translated by Google
A pesquisa atual visa a integração total do sistema para ter um ATV autônomo
sem interação humana. Nesta tese, para atingir esse objetivo, alguns marcos
tinha sido alcançado primeiro. Foi necessário padronizar alguns dos módulos existentes,
melhorar e aprimorar outros módulos, ter uma reutilização mínima dos módulos antigos,
e construir novos módulos conforme necessário. Utilizando todas as lições aprendidas nos últimos 9
anos, o objetivo final é ter o ATV autocontrolado sem o uso do controle remoto
Esta versão da pesquisa visa reutilizar o módulo de direção com pequenos ajustes
com o pressuposto de que está em boa situação, sabendo que a última tentativa
conectá-lo antes do início deste estudo teve um caso de conexões erradas que podem levar
a danos no módulo. Neste caso, será necessário um novo módulo. Além disso, este
sistema para evitar problemas existentes como quebra do pedal do freio por sobrecarga.
rede de distribuição em todo o ATV para evitar conexões erradas que podem levar a
muitas pequenas unidades de processamento, através do barramento CAN. Esta ideia é usada para distribuir o
usando o barramento Local Interconnect Network (LIN). Em alguns casos, alguns OEMs podem
use o FlexRay, que é mais rápido, mas mais caro que o barramento CAN ou Ethernet
barramento, pois é usado para conectar todos os módulos à unidade de processamento principal juntos.
Como o CAN Bus está conectado a todos os módulos disponíveis, é uma maneira perfeita de
use o mesmo barramento para distribuir energia. Esta parte do estudo será sobre
e a configuração do software.
servo motor tric anexado ao veículo. Esta parte da tese discutirá como
para controlar este motor usando um novo controlador, a unidade de processamento principal e o
Ônibus pode.
• Módulo de Direção: O antigo módulo de direção é usado, mas com uma mudança de conexão
tor para corresponder a todo o sistema. Nesta seção, uma descrição da interface
precisava usar o antigo módulo de direção com mais detalhes sobre como controlá-lo.
ção. O plano é utilizar um sensor GPS Adafruit e uma bússola 3-D Adafruit
sensor para fins de localização e direção. O módulo deve ser lido por um
microcontrolador que deve enviar as leituras como mensagens usando o barramento CAN.
para chegar ao destino final. Trabalhando como maestro, não influencia diretamente
ralar todos os módulos anteriores juntos. Principalmente, todos os sensores e atuadores, são
ônibus. Além disso, o barramento CAN servirá como fonte de alimentação para outros módulos. O
O barramento CAN também está conectado à unidade central de processamento, que fará a leitura do
O ATV só deve funcionar na primeira marcha com uma velocidade máxima de 10 mph.
• Teste do Sistema: Este estudo inclui três tipos diferentes de teste com diferentes
estratégias diferentes. Principalmente no início, um teste de módulo é usado para cada módulo para
tempo. Em seguida, integrando 3 módulos para testes e assim por diante. Todos os testes de integração
devem ser monitorados e controlados para segurança também. Alguns dos casos de teste serão
ser feito primeiro ao levantar o veículo do chão. Outros casos de teste serão
feito com uma pessoa dirigindo o veículo para assumir o controle em caso de emergência.
Machine Translated by Google
Por fim, após a integração de todos os módulos, será realizado um teste de validação do sistema
departamento.
1.4 Limitações
Esta tese limita-se a mover o ATV de uma posição para outra de forma autônoma,
Além disso, este ATV em teste tem um ATV de transmissão manual. Este estudo faz
para rodar na primeira marcha apenas com uma velocidade máxima de 10 mph.
Esta tese contribuirá para uma prova de conceito de que é possível transformar
um ATV já feito para um ATV autônomo com materiais de baixo custo. Isso pode
incentivar a levar este estudo para níveis mais avançados e integrar mais sensores para ter
Como mencionado anteriormente, é importante ter um ATV autônomo por vários motivos
incluindo, mas não limitado à necessidade de entregar suprimentos de emergência para locais
estradas rurais destruídas ou bloqueadas ou quando as estradas estão em condições inseguras para a saúde humana
motoristas para chegar ao destino final. Outra razão a ser considerada é a necessidade
para descobrir áreas não rurais como bosques ou sobremesas para a civilização ou procurar por perdidos
campistas.
Machine Translated by Google
1.6 Organização
Esta tese está organizada em 5 capítulos. O Capítulo Dois fornece informações sobre
situação no início deste estudo. O Capítulo Três descreve minha contribuição para este
pesquisar. Este capítulo fornece informações sobre o projeto geral do sistema. discute
para construir os novos módulos. O Capítulo Quatro ilustra a integração do sistema, o teste
planos e execução, os resultados dos testes e as etapas tomadas para corrigir os erros encontrados no
sistema. Por fim, o Capítulo Cinco sintetiza as conclusões a que chegamos ao final deste
STATUS
entender o que pode ser usado nesta tese que sirva ao seu propósito. Como uma introdução
este projeto foi publicado em 2010 [9]. A pesquisa foi iniciada pelo Zapata
Empresa de engenharia que encontrou a necessidade de um Robô que pudesse rebocar um reboque através
Carolina um Honda ATV para um projeto de design sênior, a fim de torná-lo um controle remoto
dispositivo controlado.
Na pesquisa anterior, um controle remoto foi usado para controlar o ATV enviando
comandos a uma banca de avaliação. Esta placa de avaliação controlava um regulador de pressão
troller, um sistema de freios e um controlador de direção. O ATV também teve que ler
Muitos artigos e pesquisas foram feitos neste domínio antes. Abaixo está uma representação
ção para alguns dos trabalhos feitos anteriormente para diferentes módulos atualmente implementados
acelerador acionado com retorno por mola [9] onde um fio é preso a uma alavanca
pela válvula da bomba de gasolina. Quando a alavanca é pressionada, a válvula de gás é aberta permitindo
Machine Translated by Google
11
o gás para ir para o motor. Quanto mais pressão na alavanca, maior a velocidade
o ATV irá adquirir. O primeiro paper abordando este projeto, publicado em 2010,
e fabricado [9] como mostrado na imagem Figura 2.1. Neste trabalho, o ATV foi
controlado usando um controle remoto que se comunica com uma avaliação Renesas
usado. No início deste estudo, o servo motor de paralaxe do acelerador foi conectado
ao conjunto original do acelerador conforme mostrado na Figura 2.1. não estava conectado
para um controlador.
que inclui um sensor de torque. Este sensor é responsável por fazer o Steer
ing Assist módulo para começar a engajar para auxiliar a direção ou não. Figura
2.2 mostra o motor implementado pela Honda para o módulo de assistência de direção.
Machine Translated by Google
12
No primeiro artigo publicado em 2010 [9], foi inicialmente assumido que o sistema poderia
ser enganado simulando os valores do sinal para fazê-lo assumir o controle. este primeiro
jornal descobriu que não é tão fácil estabelecer alguns problemas elétricos com
Neste trabalho, uma ponte H dupla foi usada como controlador de motor para a direção
Outro artigo para o mesmo ATV foi publicado dois anos depois [8]. Nisso
papel, um problema no design antigo foi resolvido. A principal questão para o primeiro
não foi perfeito. Também pode causar danos aos circuitos iniciais do ATV. No segundo
papel, um PWM é usado como entrada para uma ponte H em vez de um poder contínuo
13
de ter uma tensão constante por um circuito. A Figura 2.4 apresenta um diagrama para
assinado para estar sempre energizado. Foi planejado pela Honda para funcionar apenas na necessidade
módulo [7] no qual o sensor de torque foi usado para controlar o power assist
Machine Translated by Google
14
Figura 2.5: Circuito de direção usando microcontrolador para controlar o motor usando PWM [8].
módulo usando o controlador OEM inicialmente implementado pela Honda. Este projeto
manipulá-lo da primeira maneira que foi projetado. De acordo com este trabalho, quando o
enviando dois resistores de saída separados. Um resistor é para o ângulo do lado direito
valor e outro para o lado esquerdo. A simulação da saída do sensor foi feita
interruptores para introduzir resistores paralelos para alterar os valores de resistência. Tendo
esquerda. Este módulo foi então implementado usando interruptores analógicos, resistores e um
Microcontrolador PIC. Este circuito pode simular o ângulo usando um sinal PWM
15
• Sistema de freios: Existem dois sistemas de freios diferentes no Honda ATV. Mão
freios de alavanca que controlam os freios das rodas dianteiras e freios de pedal que
O artigo de 2010 [9] forneceu uma imagem do atuador linear usado para o freio
sistema de conexão com um H-Bridge customizado. A Figura 2.6 mostra o sistema de frenagem
Outro artigo publicado em 2014 [7] que melhorou o sistema de frenagem do ATV.
Nesse trabalho, o Sistema de Frenagem foi implementado usando o mesmo atuador linear.
A ponte H personalizada foi substituída por um controlador de motor Pololu para superar
16
Figura 2.7: Tabela de diferentes estágios do sistema de frenagem em estudo anterior [5].
De acordo com um artigo recente em 2018 [5], um estudo sobre o controle do ATV
sistema de travagem foi apenas totalmente liberado ou totalmente aplicado. Neste estudo,
usando o ROS, o sistema de frenagem tinha outros três estágios, conforme mostra a Figura 2.7.
Ele usa dois sinais para dados: CAN-H e CAN-L para CAN High e CAN Low.
caso do ATV. Como o ATV é uma máquina que possui alguns motores e altera
Essa interferência pode afetar um sinal em um fio que pode fornecer mensagens falsas.
ambos os fios quase da mesma maneira. Enquanto se preocupa apenas com a diferença entre
ambos os fios, os valores de diferença não mudarão à medida que o viés de ruído for adicionado a
ambos.
Machine Translated by Google
17
cols. FlexRay é o mais rápido, mas é caro comparado a CAN e LIN. LIN é
com muitos componentes. LIN é uma comunicação de um mestre e muitos escravos. PODE
O barramento CAN consiste em quatro fios, dois fios são usados para sinais CAN como
mencionado acima, e dois fios são usados para alimentação. O primeiro e o último nó
esses resistores não existirem, as mensagens CAN não serão propagadas. A lata
O quadro CAN consiste em bit de início, sinais de controle, endereço de destino, dados,
total de 29 bits. Usar apenas o padrão ou ambos deve ser especificado no controle
sinais. O tamanho dos dados em cada quadro pode variar de 1 byte até 8 bytes. O
o tamanho dos dados também deve ser especificado nos sinais de controle. A Figura 2.8 mostra uma
A Rede CAN deve ser configurada para a mesma taxa de transmissão e o mesmo
ponto de amostragem para evitar dados perdidos. A taxa de transmissão e o ponto de amostragem são
18
Na pesquisa anterior, um artigo escrito em 2014 [10] foi sobre o uso de um CAN
ônibus para controlar o ATV. Este artigo usou o padrão SAE J1939 para CAN
kbps como taxa de transmissão e 87,5% como ponto de amostragem. Neste artigo, um projeto de uso
Transceptor para comunicação entre todos os nodos com o Cérebro como Renesas
RX63N foi implementado. No entanto, as APIs CAN não podem ser usadas neste
• Cérebro: A placa RX63N da Renesas foi usada anteriormente como o Cérebro. foi conectado
a um receptor de controle remoto do qual recebe as ordens. Foi usado para controlar
O cérebro também foi usado para controlar o sistema de frenagem, fornecendo um sinal para o
H-bridge para o atuador linear. Além disso, o conselho da Renesas estava controlando o
módulo de direção enviando mensagens CAN para o PCB do módulo de direção [5, 4].
neste ponto, exceto para o módulo de direção que estava recebendo leituras de
sensores de velocidade. Além disso, este cérebro não foi usado para tomar suas próprias decisões para controlar
Machine Translated by Google
19
o ATV, pois não estava processando os dados dos sensores. Em vez disso, estava ficando
destino.
para controlar o ATV, ele precisa pressionar o acelerador para se mover. O operador também precisa
para poder parar o ATV usando os freios. Como a condução nem sempre é direta,
existe a necessidade de mudar de direção usando o volante. Todas essas ações são
representando o operador humano que controla o ATV. Como o estudo visa substituir
necessário.
A observação não parou neste ponto, pois o operador humano deveria ter um
razão para pressionar o acelerador ou os freios, ou mesmo virar a direção. De acordo com
observação, o operador humano depende de seus sentidos como visão e audição para evitar
Machine Translated by Google
21
Para o destino final, o GPS é a maneira mais fácil de marcar um destino para um robô,
especialmente quando está fora de um prédio viajando por uma longa distância sem um ser humano
operador. Outra forma de detectar a estrada e o destino final, caso não haja
Sinal de GPS na área, é usar a técnica de sensores de migalhas de pão ao redor da estrada
rumo ao destino. Este sensor ainda está em estudo por outro grupo de estudos da
O GPS fornece a posição atual, e isso pode ser comparado ao destino final
posição pode ser facilmente mapeada para um plano XY, um ângulo entre a direção norte
O GPS pode mostrar a localização atual, a distância até o destino e o ângulo entre o
destino final, é necessária uma bússola 3-D. No entanto, como o ATV não vai funcionar
somente em terreno plano e horizontal, a inclinação afetará a precisão da bússola. Então uma
bússola. Um estudo é feito em paralelo a este estudo fala com mais detalhes sobre o
olhos do erador. No caso de um robô, existem muitas alternativas como câmeras, luz
decidir qual usar, uma comparação foi feita, e os LIDARs foram escolhidos entre
• O sensor da câmera é usado para capturar o reflexo da luz visível. Ele pode gravar
Machine Translated by Google
22
muitas imagens, mas precisa de um alto poder de processamento para detectar e entender
o conteúdo das imagens. Isso pode ser feito por técnicas de aprendizado de máquina ou por
técnicas de processamento de imagem mais simples. No entanto, ainda precisa de muito processamento
poder. Outro ponto sobre o sensor da câmera é que ele não é muito bom
opção em ambientes com pouca luz, e pode não funcionar direito em caso de brilho
• Sensores ultrassônicos são sensores que emitem ondas ultrassônicas e detectam o reflexo
detectar obstáculos em alta velocidade não será útil, quando o obstáculo for detectado,
isto. Além disso, os sensores ultrassônicos estão sujeitos a muita interferência. Além disso, ultra-som
as ondas podem ser facilmente refletidas e desviadas à medida que se propagam pelo ar
• LIDARs são Radares LASER. Eles funcionam de maneira semelhante aos sensores ultrassônicos
exceto que as ondas usadas são LASER e não ultrassônicas. Como um radar, ele vai para o
para a direita e para a esquerda para escanear uma área. Um feixe de LASER se propaga em quase um
linha sem espalhar. Se ele reflete algo, ele vai voltar direto para o
fonte que determina a distância para o obstáculo. Ele se propaga com velocidade
de luz, e o LASER pode percorrer distâncias muito longas sem atenuação de sinal
o que o torna o sensor perfeito para o trabalho. Os LIDARs podem fornecer a posição
23
No entanto, o LIDAR não está planejado para ser incluído nesta implementação. Apenas o
cronograma, o controlador LIDAR e a integração não estão planejados para serem feitos durante
esta tese.
Outra parte da observação foi que os olhos humanos não são responsáveis por
aplicando os freios. Em vez disso, ele apenas entrega uma mensagem ao cérebro através do
coordenar as mensagens e lidar com as decisões de acordo com o feedback dos sensores
O Cérebro para se comunicar com os outros controladores precisa de uma rede semelhante à
sistema nervoso. A Rede aplicada aqui é o CAN Bus. Como mencionado anteriormente em
Capítulo 2, o barramento CAN foi escolhido por ser um barramento multimestre e ter um custo menor
do que o FlexRay. Sua velocidade média é atualmente adequada à velocidade necessária para
Conforme discutido no Capítulo 2, algum trabalho já foi feito e alguns módulos foram
mais robusto e confiável. A Figura 3.1 ilustra a visão geral do sistema para o atual
estudar.
Conforme mostrado na Figura 3.1, o sistema consiste em vários nós trabalhando com o
ideia de processadores distribuídos para reduzir o poder de processamento necessário pela central
é responsável por sincronizar o sistema lendo todos os dados dos sensores e reagindo
Machine Translated by Google
24
enviando ordens aos controladores através do barramento CAN. Os controladores estão recebendo apenas
as mensagens CAN como ordens, e cada controlador é responsável pela execução da ordem.
depois disso adicionando os sensores um de cada vez. O Brain Code é implementado de forma ágil
loops por ter uma história adicional por atuador e por sensor.
O microcontrolador foi escolhido primeiro para ser o MSP430G2553 por ser barato e confiável.
O único problema a princípio era que ele não continha periférico CAN. A opção
MSP430 além de um CAN Shield. O MSP430G2553 possui uma porta SPI que é
usado na comunicação CAN Shield. Para adicionar outros dispositivos, como o IMU e
GPS que precisa de comunicação I2C e UART. Isso introduziu a necessidade de ter
software diferente e PCBs para interface de módulos diferentes, como o SPI pode estar no primeiro
Machine Translated by Google
25
ou segunda porta, mas o I2C e o UART estão limitados a portas diferentes. Para ter
módulos padronizados e PCBs, uma atualização foi feita para MSP430F5529LP que
inclui oito portas em vez de duas portas para MSP430G2553. A série F também tem
maior tamanho de memória e maior clock do processador com maior velocidade. A diferença em
preço não é perceptível. No entanto, reduzirá o custo geral por ter padrão
esforço de atualização foi um dia de trabalho para mudar as bibliotecas para as portas F-series 8
microcontrolador.
O software foi implementado em uma arquitetura padronizada [2, 12]. este arqui
camada. Esta camada é uma biblioteca para o microcontrolador utilizado. A biblioteca é implementada
em um estudo paralelo [11]. A camada HWI é considerada uma camada de abstração para
Machine Translated by Google
26
independente do H/W usado. Essa ideia é útil em caso de necessidade de alterar o H/W
depois de implementar muitos módulos. Evita perder tempo e esforço para reconstruir o
software do módulo em caso de mudança de H/W. Apenas o HWI precisará de ajustes, não
todo o software.
A próxima camada é a camada de drivers. Esta camada usa as funções da camada HWI para construir
as camadas de drivers são as mesmas para todos os módulos e todos os aplicativos implementados.
A camada mais alta é a camada de aplicação. Esta camada é diferente de um módulo para
outro conforme a aplicação do módulo. Esta camada usa as bibliotecas das outras camadas para
Uma camada vertical que está envolvida com todas as outras camadas é a camada Scheduler [13].
O Agendador é um tipo simples de sistema operacional que possui múltiplas tarefas com
temporização diferente. O design do Agendador inclui um super loop (loop de loop contínuo)
em que ele verifica se há sinalizadores. Os sinalizadores são definidos usando interrupções de temporizadores. Cada tarefa tem
um sinalizador correspondente e, se este sinalizador estiver definido, as funções desta tarefa são chamadas e
a bandeira é redefinida.
o Módulo CAN. Abaixo está uma ilustração das diferentes partes do módulo CAN
implementação: