Stanley

20/07/2016 18:47

Introdução

 A Agência de Pesquisas Avançadas de Defesa, DARPA, com o intuito de incentivar o avanço tecnológico na área de veículos autónomos realiza os chamados Desafios DARPA [1]. O grande desafio DARPA baseia-se na competição de diversas equipes do mundo inteiro em uma prova de navegação autónoma em ambientes hostis, isto é, em terrenos Off-Road. O primeiro veículo que conseguir completar o percurso em um tempo inferior a 10 h ganha o desafio, com um prémio de $1000000. Porém a primeira competição, 2004, não houve vencedor, pois todos veículos deram defeito durante o percurso e conseguiram no máximo completar 5% do percurso de 142 milhas. Grandiosamente no ano seguinte, com o dobro do valor do prémio inicial, o carro Volkswagem Touareg R5 denominado por sua equipe(Stanford) de Stanley venceu o grande desafio em 6 h, 53 min e 58 s. Este evento ocorreu graças a uma grande equipe de pesquisadores e estudantes que dispostos em várias equipes realizando determinadas parte do sistema souberam manipular os dados recebidos dos sensores, computa-los e atua-los no próprio ambiente gerando um controle de direção e velocidade suficientes para vencer o desafio.

Hardware

 Todos os dispositivos físicos utilizados para tornar o veí- culo Volkswagem Touareg R5 em um veículo autónomo são classificados como hardware do sistema. Sendo assim o Stanley detém os seguintes hardwares:

  • Seis computadores Pentium M Blade;
  • Banco de baterias reservas;
  • Um bagageiro modificado contendo todos sensores descritos posteriormente;
  • Atuadores localizados no interior do veículo, descritos posteriormente;
  • Sirene de sinalização;
  • Luz de alerta;
  • Uma tela Touch-Screen (IHM);
  • Botões mecânicos para paradas de emergência;
  • Antenas para o GPS, bússola, e sistema sem fio da DARPA. 

Com tais componentes, o Stanley realiza não só a coleta dos dados (sensores) mas também faz seu devido processamento através dos computadores [2]. Os demais componentes do sistema são necessários para ou se enquadrarem nos requisitos do desafio DARPA ou para suprir determinadas falhas, como é o caso do banco de baterias reservas.

Controle

 O sistema de controle do Stanley é baseado num controle de aprendizagem, isto é, de acordo com uma amostra feita por um humano dirigindo parte do percurso em um determinado tempo, o veículo tenta se aproximar dos valores obtidos pelo humano juntamente com suas próprias decisões. A figura 1 mostra um gráfico comparando a velocidade atingida por um humano e pelo Stanley em um percurso de 2 milhas.

Figura 1: Controle de aprendizagem do Stanley.

Navegação

O sistema de navegação do veículo baseia-se em: base de dados RDDF, sensores LIDARs, radares, visão da câmera colorida e sistemas GPS e IMU. O primeiro recurso utilizado para navegação do Stanley é a base de dados RDDF, que nada mais é do que um arquivo distribuído pelos organizadores da DARPA contendo cerca de 3000 pontos de coordenadas de latitude e longitude. Através desse arquivo a primeira rotina a ser implementada é a de suavização ou alisamento das retas entre os pontos através de algoritmos baseados na técnica de aproximação por mínimos quadrados. Isto é feito para que o veículo evite de fazer curvas acentuadas que o levem a possíveis colisões ou que o fazem capotar. Através da navegação pelos sensores LIDAR, o Stanley realiza um reconstrução do ambiente em três dimensões e classifica cada ponto como ou dirigível ou obstáculo ou não rotulado. O resultado deste mapeamento expresso na figura 2. O método de identificação dos obstáculos baseia-se em duas leituras sucessivas de forma que se a segunda leitura indicar uma distância menor do que a primeira é identificado um obstáculo com altura dada pela diferença entre as duas distâncias. Este método possui uma falha, pois como se trata de um terreno Off-Road, o veículo possui muitas vibrações que o levam a registar medidas incoerentes. Para contornar esse impasse, é realizado um algoritmo probabilístico com base na aceleração vertical no carro. Mesmo com tal correção o mapeamento a laser é limitado a uma distância de 15 m, isto afeta diretamente na velocidade máxima que o veículo pode atingir.

Figura 2: Mapeamento por sensor LIDAR.

Para aumentar o alcance de visão do veículo é utilizado dois radares de 2.4 GHz que permitem detetar alvos a uma distância de 200 m a frente. Apesar de possuir uma precisão baixa, seus dados são úteis para o cálculo probabilístico dos terrenos não alcançáveis pelos sensores LIDAR. Como forma de identificar literalmente o que é terreno ou não, é utilizado uma câmera digital colorida localizada na parte central do bagageiro do carro. Como a definição de terreno off-road para um computador é algo difícil de se interpretar é realizado um método de adaptação do ambiente de acordo com as características de intensidade de cor e de luminosidade de forma a gerar uma imagem onde cada pixel é rotulado como dirigível ou não. A figura 3 mostra uma imagem onde a cor verde representa o terreno não dirigível.

Figura 3: Mapeamento pela visão da câmera.

Por fim para localizar-se em torno do percurso, o Stanley possui um sistema de GPS com base em uma unidade de medidas inerciais com a função de suprir as baixas taxas de atualização do GPS o que acarretaria em um erro acumulativo de posicionamento.

Software

O software de todo o sistema do veículo Stanley organiza-se em seis camadas principais, são eles:

  • Interface Sensora: Responsável por fazer toda a receção dos dados dos sensores bem como a marcação do instante de suas ocorrências. Os sensores são lidos a uma taxa de 75 Hz, a visão da câmera é atualizada a taxa de 12 Hz, o GPS à 10 Hz e o IMU à 100 Hz;
  • Camada de Perceção: Faz o mapeamento dos dados para o os modelos internos. O módulo primá- rio possui um filtro de kalman UKF para estimar a melhor posição do veículo. O mapeamento é separado em três módulos para a realização em 3D da visão: laser, câmera e radar;
  • Camada de controle: Responsável por fazer o controle da direção, aceleração e frenagem do Stanley. Responsável por definir a trajetória do veículo com base em sua direção e velocidade. Composto por dois controladores, o da direção e o da aceleração e do freio. Responsável também por controlar as plataformas Touch-Screen e E-Stop wireless;
  • Camada de interface com o veículo: Controla todas as interfaces dos atuadores do veículo e a demanda de energia elétrica para o sistema;
  • Camada de interface com o usuário: Responsável por selecionar o modo d operação do carro entre manual e automático bem como interromper o sistema todo através dos botões E-Stop;
  • Camada de serviços gerais: Faz o controle dos processos como a saúde do veículo. Responsável por fazer o sincronismo entre os diversos computadores do sistema. Possui um servidor centralizado que mantém um banco de dados de todos os parâmetros do veículos e atualiza-os de forma constante.

Sensores

Com o intuito de realizar toda a leitura das características do ambiente a sua volta, o Stanley possui os seguintes sensores: Cinco sensores a laser LIDAR, dois radares de 2.4 GHz, uma câmera colorida, um sistema GPS e uma unidade de medidas inerciais (IMU), figura 4.

Figura 4: Sensores do Stanley.

Os sensores LIDAR modelo SICK 290 a bordo do Stanley possui a função de deteção de objetos a curta distância, no máximo 15 m. Cada um LIDAR é disposto em um ângulo específico para detetar diferentes camadas e níveis do terreno. Assim o software utiliza os dados obtidos dos sensores e cria um quadrilátero que posteriormente é inserido no processamento da imagem, de forma a garantir que todos os pixel presentes dentro deste quadrilátero representam o caminho sem obstrução.

Atuadores

Os responsáveis por tornar o processamento de todos os sensores e algoritmos do sistema em ações mecânicas são os atuadores. O veículo autónomo Stanley realiza o controle de sua direção através de um motor DC anexo a uma coluna vertical feita por uma corrente fixa ao eixo do motor DC e ao eixo do volante do veículo. Já para o controle da tração, possui um atuador linear fixo ao câmbio do veículo, que por simplicidade trata-se de um carro automático. Por fim a interface de controle de aceleração e frenagem do veículo dá-se por uma atuação eletrónica direta a ambos acelerador e freio.

Aplicações

Apesar de ainda não serem completamente confiáveis e viáveis economicamente, o Stanley foi projetado para lidar com situações semelhantes a de um motorista comum, de forma que sua substituição não seja percetível e assim possa evitar acidentes de transito e uma maior comodidade ao passageiro.

Robôs semelhantes

Existem vários veículos autónomos atualmente como é o caso do Boss e Talos II [3], que foram desenvolvidos para operarem em ambientes urbanos, e os veículos autónomos Highlander e TerraMax, que competiram com o Stanley o desafio DARPA 2005 [4], figura 5.

Figura 5: Veículos autónomos: (a) Boss, (b) Talos II, (c) Highlander e (d) TerraMax.

Conclusões

Portanto através de desafios de competição como os da DARPA, tecnologias que antes eram tratadas como ficção científica estão cada vez mais sendo tratadas como parte integrantes da atual sociedade.

Referências

[1] S. Thrun. Stanley: The robot that won the darpa grand challenge. In OCEANS, 2005. Proceedings of MTS/IEEE, 2005.

[2] Racing Team Stanford. Darpa urban challenge. In https://cs.stanford.edu/group/roadrunner/, 2005.

[3] Drew Bagnell Christopher Baker Robert Bittner M. N. Clark Chris Urmson, Joshua Anhalt. Autonomous driving in urban environments: Boss and the urban challenge. In https://www.cs.cmu.edu/ curmson/urmsonRobots.html, 2006.

[4] Fei-Yue Wang. Ohio state university at the 2004 darpa grand challenge: Developing a completely autonomous vehicle. In https://www2.ece.ohiostate.edu/ion/documents/x5its1.pdf, 2008.