Artigo 5859
Transcrição
Artigo 5859
CONTROLE DE VELOCIDADE DE UM CARRO AUTÔNOMO Jullierme Emiliano Alves Dias†∗, Guilherme Augusto Silva Pereira∗†, Reinaldo Martinez Palhares∗ ∗ Programa de Pós-Graduação em Engenharia Elétrica † Grupo de Pesquisa e Desenvolvimento de Veı́culos Autônomos Universidade Federal de Minas Gerais Av. Antônio Carlos, 6627, Pampulha, 31270-901, Belo Horizonte, Minas Gerais, Brasil Emails: [email protected], [email protected], [email protected] Abstract— This paper presents the velocity control processes of the autonomous car developed by the PDVA (Group for Research and Development of Autonomous Vehicles at UFMG). A longitudinal model of the car was used on the controller, as a way to compensate the nonlinearities of its dynamics. Furthermore, the use of a proportional and integrative actions related to the velocity error had the objective of attenuating the multiple disturbances that affect the plant. The brake and throttle actuations were performed through a switching logic. Also, in this work we propose a way to compensate for abrupt changes in the longitudinal dynamics caused by gear changes that occur when the gearshift lever is in automatic mode. The validation of the controller were conducted by computer simulations and real experiments. Autonomous Car; Control System; Velocity Control. Keywords— Resumo— Este artigo apresenta o desenvolvimento do controlador de velocidade do carro autônomo desenvolvido pelo Grupo de Pesquisa e Desenvolvimento de Veı́culos Autônomos da UFMG. Um modelo longitudinal do carro foi utilizado na concepção do controlador, como forma de compensar as não linearidades da sua dinâmica. Além disso, o uso de uma ação proporcional e integrativa relacionado ao erro de velocidade teve o objetivo de amenizar as diversas perturbações que incidem sobre a planta. A atuação do freio é realizada mediante uma lógica de chaveamento. Ainda neste trabalho é proposta uma forma de compensar as mudanças abruptas na dinâmica longitudinal causadas pelas trocas de marchas, que ocorrem quando a alavanca de câmbio está selecionada em modo automático. A validação do controlador foi realizada tanto por meio de simulações computacionais quanto de experimentos reais. Palavras-chave— 1 Carro Autônomo; Sistema de Controle; Controle de Velocidade. Introdução Um carro autônomo é um tipo de veı́culo inteligente capaz de se locomover sem a necessidade de um motorista. Carros autônomos estão, certamente, inseridos no futuro da mobilidade, uma vez que sua utilização traz diversos benefı́cios para a sociedade, como o aumento da segurança dos usuários e a melhor utilização das vias públicas. Em 2007, o grupo de Pesquisa e Desenvolvimento de Veı́culos Autônomos (PDVA) iniciou o trabalho de concepção do Carro Autônomo Desenvolvido na UFMG (CADU), que é um automóvel comercial, modelo Chevrolet Astra Sedan 2003, com transmissão automática, freios ABS e acelerador do tipo drive-by-wire (Figura 1). Os comandos de acelerar, frear, girar o volante e selecionar o câmbio foram automatizados e passaram a ser também comandados por meio de um computador. O movimento de carros autônomos é realizado através de controladores longitudinal e lateral. O primeiro refere-se à regulação do movimento do eixo principal do veı́culo, envolvendo os atuadores de aceleração e frenagem. Já o segundo, relaciona-se com o esterçamento das rodas direcionáveis, atuando no volante com o intuito de seguir uma determinada trajetória. Neste trabalho é tratado apenas o controle longitudinal, es- Figura 1: Carro Autônomo Desenvolvido na UFMG (CADU) - Automóvel comercial de modelo Chevrolet Astra Sedan 2003 adaptado para adquirir caracterı́sticas de um robô autônomo. pecificamente a regulação da velocidade de cruzeiro. Há duas formas comuns de se realizar o controle longitudinal, segundo Khodayari et al., 2010. Uma se dá através da imitação da forma humana de dirigir, geralmente utilizando lógica nebulosa, em que não há necessidade de um conhecimento profundo da dinâmica do sistema a ser controlado (Chiang et al., 2006). A outra forma, que é a utilizada neste trabalho, é a realização do controle com base num modelo matemático da dinâmica do veı́culo (Girard et al., 2005). O objetivo do trabalho descrito neste artigo é projetar um controlador responsável por regular a velocidade de cruzeiro do CADU. Para isso, um modelo da dinâmica longitudinal foi concebido anteriormente em (Dias et al., 2012) por meio de identificação caixa cinza (Aguirre, 2007), tendo como entrada o nı́vel de acelerador e saı́da a velocidade longitudinal do veı́culo. A entrada de freio e uma compensação para as trocas de marchas foram adicionadas ao modelo, tornando possı́vel realizar controle de velocidade para todas as possı́veis formas de operação do veı́culo. Este artigo está organizado como se segue: a seção seguinte mostra o modelo matemático que representa a dinâmica longitudinal do CADU e a Seção 3 descreve a concepção do controlador de velocidade. A Seção 4 apresenta os resultados obtidos através de simulações computacionais e experimentos reais e, finalmente, as conclusões são discutidas na Seção 5. 2 Modelagem Longitudinal Em nosso trabalho anterior (Dias et al., 2012) foi obtido um modelo matemático da dinâmica longitudinal do CADU partindo do equacionamento das forças envolvidas na dinâmica de um automóvel (2a Lei de Newton). Porém, era sabido que o conjunto motor-transmissão apresentava caracterı́stica predominante não linear. Também era de conhecimento que o levantamento de todas as equações das forças que afetavam a dinâmica longitudinal seria uma tarefa complexa, já que seria necessário acesso a informações que geralmente são restritas à montadora do veı́culo. Assim, a saı́da proposta foi considerar que a parcela de força resultante do motor fosse representada por uma função de transferência de primeira ordem com atraso puro de tempo e a parcela referente à carroceria foi tratada classicamente como uma força inercial. Foi considerado ainda uma força de atrito do tipo viscoso para representar a perda de energia pelos elementos da transmissão e rodas. O equacionamento das forças resultou em uma estrutura cuja função de transferência é de segunda ordem tendo como entrada o nı́vel de acelerador e a saı́da a velocidade longitudinal. Porém, haviam vários parâmetros cujos valores eram desconhecidos e que são de difı́cil obtenção, pois exigiria um conhecimento aprofundado do sistema dinâmico em estudo ou a realização de testes individuais para cada componente do conjunto motortransmissão. A saı́da encontrada foi utilizar técnicas de identificação de sistemas, utilizando a estrutura concebida pelo equacionamento das forças juntamente com uma base de dados obtidos experimentalmente em primeira marcha através da inserção na entrada de acelerador de sinais binários pseudo aleatórios (PRBS), que tem como caracterı́stica uma alta persistência de excitação. Os parâmetros foram estimados utilizando o método dos mı́nimos quadrados. A representação do modelo obtido por função de transferência discreta foi G(z) = α + βz −1 V (z) z −1 , = U (z) 1 + γz −1 + σz −2 (1) sendo V (z) a saı́da de velocidade longitudinal, U (z) a entrada de nı́vel de acelerador, z −1 o operador de atraso, α, β, γ e σ os parâmetros estimados pelo método dos mı́nimos quadrados. Foi notado um padrão de crescimento ou decrescimento nos valores dos parâmetros estimados de acordo com o aumento do nı́vel máximo de acelerador dos PRBS. Para abranger todos os pontos de operação do motor, os parâmetros foram interpolados por funções quadráticas. Assim, para cada um destes pontos de operação foi determinado um modelo linear, e a composição destes modelos gerou um modelo geral para o carro para a entrada de acelerador (Figura 2). A validação deste modelo foi mostrado em (Dias et al., 2012). Figura 2: Diagrama do modelo obtido para a entrada de acelerador. A modelagem do carro tendo como entrada o nı́vel de freio possui algumas dificuldades. Primeiramente não é possı́vel obter um modelo da sua dinâmica utilizando as técnicas utilizadas para a entrada de acelerador, pois a aplicação do pedal de freio por meio de PRBS levaria o veı́culo à situações de imobilidade. Além disso, é sabido que sua dinâmica é dependente de condições fı́sicas como temperatura e atrito, que são caracterı́sticas variantes no tempo e não lineares, respectivamente. A solução proposta foi obter um modelo simples que relacionasse cada intensidade de aplicação do pedal com sua correspondente desaceleração longitudinal média. Testes práticos de resposta ao degrau foram realizados com o CADU envolvendo apenas a aplicação do pedal de freio, em um terreno aproximadamente plano e com trajetória retilı́nea com cinco intensidades (65, 80, 85, 90 e 95) dentro do intervalo de trabalho percentual do atuador linear instalado no pedal de freio. Para estender a abrangência do modelo além destes cinco pontos, foi feita uma interpolação cúbica segmentada, resultando em uma tabela de pontos (lookup table), que relacionam as posições do pedal com as desacelerações respectivas. A Figura 3 apresenta o comportamento da desaceleração de acordo com a pressão no pedal. Os pontos em destaque são os valores medidos. −0.5 Aceleração (m/s2) −1 Figura 4: Diagrama da relação de transmissão entre motor e rodas. Adaptado de (Rajamani, 2012). −1.5 −2 3 −2.5 −3 65 70 75 80 85 Nível do pedal do freio 90 95 Figura 3: Interpolação da desaceleração longitudinal média em função dos nı́veis do pedal do freio. O carro utilizado nesse trabalho não permite a fixação das marchas 2, 3 e 4 durante o movimento, portanto um modelo que contemple as trocas de marchas não pode ser obtido apenas utilizando a metodologia de identificação caixa cinza. A caixa de transmissão altera a relação de velocidade entre o motor e as rodas através de razões definidas. Então, exceto durante o rápido tempo de ação do conversor de torque (elemento da transmissão de carros automáticos), a troca de marcha pode ser simplificadamente considerada como um chaveamento de ganho da força aplicada nas rodas. A forma sugerida neste trabalho para obter os modelos aproximados referentes às marchas 2, 3 e 4 consiste em multiplicar o ganho do modelo do conjunto motor-transmissão por RT n, sendo este definido nesse trabalho como a razão entre as relações de transmissão rodas-motor da marcha conhecida n (1, 2, 3 e 4) e da primeira marcha, RT n = Rn , R1 (2) sendo R1 a relação de transmissão entre rodas e motor correspondente à primeira marcha. A relação de transmissão rodas-motor para qualquer marcha escolhida (Rn) pode ser obtida através de Rn = ω rodas =R ω motor c.torque ×R c.trans. ×R dif. , (3) sendo ω rodas e ω motor as respectivas velocidades angulares da roda e do motor. A força gerada pelo motor é propagada para às rodas por meio dos elementos da transmissão, que possuem relações de transferência de velocidade, tais como do conversor de torque R c.torque , da caixa de transmissão R c.trans. e do diferencial R dif. (Veja a Figura 4). Neste trabalho é assumido que R c.torque tem sempre valor unitário, R dif. tem valor fixo e R c.trans. possui relações definidas. Assim, a compensação das trocas de marchas é realizada no modelo pela medição instantânea de ω rodas e ω motor no CADU. A validação deste método pode ser vista em detalhes em (Dias, 2013). Controle de Velocidade A ideia deste trabalho é projetar um controlador que regule a velocidade do CADU em ambientes urbanos. Portanto, deve-se contemplar as baixas velocidades, inclusive as situações de imobilidade. Como o controlador concebido é aplicado a um carro autônomo, que é um tipo de robô móvel, algumas precauções devem ser tomadas. Este trabalho almeja que o carro autônomo seja capaz de transportar pessoas em segurança, evitando situações que possam causar medo aos passeiros, outros motoristas e pedestres. Segundo (Christensen e Pacchierotti, 2005), em situações em que há interação entre robôs e humanos, as leis de controle devem gerar movimentos que sejam socialmente aceitáveis. O controle de velocidade desejado deve ser simples, ao ponto de ser implementado em tempo real na plataforma experimental, e ao mesmo tempo tenha um bom desempenho, com a capacidade de controlar a velocidade de cruzeiro do CADU de forma suave. A estratégia de controle escolhida consiste em um algoritmo do tipo PI (Proporcional e Integral), justificado pela sua estrutura versátil, robustez e facilidade de sintonia. Objetiva-se utilizar a ação PI para rejeitar as perturbações, como as causadas pelas mudanças na inclinação do terreno, pela componente longitudinal da força de esterçamento, pelos mecanismos internos que são eventualmente acoplados ao motor, além de corrigir possı́veis erros. O modelo da dinâmica longitudinal obtido na Seção 2 tem como entradas os nı́veis de acelerador e de freio, que devem ser as variáveis manipuladas pelas ações de controle, ou seja, as saı́das do bloco controlador. Neste trabalho é proposta a utilização do modelo inverso do CADU com o intuito de compensar as não linearidades da dinâmica longitudinal do carro, resultado dos comportamentos não lineares do motor, da transmissão e do freio, tornando-a aproximadamente linear. Essa técnica é semelhante à utilizada no “Controle por Torque Computado”, comumente aplicada ao controle de manipuladores robóticos, como visto em (Craig, 1989). Uma ilustração da estratégia de controle adotada neste trabalho é vista na Figura 5. Esta estratégia é parecida com a apresentada em (Rajamani, 2012). As informações do ponto de operação que partem do carro para o bloco do modelo inverso (Fi- Figura 5: Ilustração da estratégia de controle. gura 5) referem-se a variáveis medidas relacionadas ao funcionamento do carro. O modelo inverso necessita dessas informações para definir as condições de funcionamento em cada instante e gerar as ações de controle correspondentes, dada uma certa informação advinda do bloco PI. Baseado na Figura 5, o diagrama de blocos para ambas as ações do acelerador e freio é mostrado na Figura 6. No laço superior, o erro entre as velocidades desejada e medida é calculado e inserido no bloco PI. O sinal resultante é analisado por uma estratégia anti-windup. Após esta etapa, o modelo inverso para o acelerador (G(z)−1 ) obtido na Seção 2 produz os valores de uacel correspondentes e que são aplicados ao carro. Porém, antes de enviar os comandos de acelerador ao carro, é necessário filtrar este sinal (F (z)), pois este pode apresentar um nı́vel de oscilação não permitido pela Unidade de Comando do Motor (ECU). Na ausência deste filtro, uma informação luminosa surge no painel de instrumentos do veı́culo, alertando sobre alguma falha no motor e a ECU reage reduzindo o ganho do acelerador. Esta observação só pôde ser feita experimentalmente, e, portanto, os parâmetros c0 e d1 foram obtidos por ensaios tentativa e erro. Após a filtragem, o sinal de acelerador deve ser saturado para não extrapolar os limites requeridos pela ECU. O limite inferior é o nı́vel de marcha lenta necessário para manter o motor em funcionamento, e o limite superior é um valor de segurança adotado nos testes do controlador. O laço inferior segue a mesma ideia do superior, onde há um novo bloco PI, como forma de compensar as incertezas do modelo inverso do freio e perturbações que acometem a planta. O modelo inverso para o freio é uma composição inversa da lookup table definida na Seção 2. Ainda no laço do freio da Figura 6 há uma condição especı́fica de imobilidade do veı́culo para garantir sua parada total e não gerar desconforto de alta desaceleração aos passageiros. Uma lógica de chaveamento é responsável por fazer a comutação entre os laços, pois, mecanicamente, não é permitido pressionar os pedais de acelerador e freio ao mesmo tempo em um automóvel. Esta restrição deve ser obedecida para não causar danos ao powertrain. O critério de chaveamento adotado neste trabalho leva em consideração as acelerações requeridas (em m/s2 ) para atingir o valor de velocidade desejado. Dois patamares de aceleração foram escolhidos por meio de ensaios para representar a transição entre os modos. A utilização de dois patamares, e não apenas um, permite formar uma região de histerese e evitar que sucessivos chaveamentos sejam ativados desnecessariamente, como sugerido em (Hedrick et al., 1997). Sempre que a aceleração requerida for positiva, o controlador estará em modo acelerador. Quando a aceleração for menor que 0.25 m/s2 , a atuação do freio estará ativa e a do acelerador desativada. A zona de histerese está compreendida entre estes dois valores. A compensação dos efeitos causados pelas trocas de marchas é realizada de forma aproximada ao multiplicar RT n (definido na Seção 2) pelos parâmetros α e β do modelo inverso de primeira marcha. 4 Resultados Experimentais Os experimentos desenvolvidos neste trabalho são baseados no Carro Autônomo Desenvolvido na UFMG, cujas caracterı́sticas principais foram apresentadas na Seção 1. O nı́vel de controle da arquitetura de hardware do CADU é composto por sistemas de sensoriamento e de atuação. Os sensores e atuadores se comunicam a um computador por meio de um barramento com camada fı́sica RS-485, através do protocolo Modbus. O computador em questão executa um sistema de tempo real (Linux com patch RTAI) que garante determinismo temporal para aplicações de controle. Os gráficos da Figura 7 mostram simulações feitas com o laço superior (acelerador) do controlador apresentado na Figura 6, sendo o bloco “Carro” representado pelo seu próprio modelo encontrado na Seção 2. No primeiro caso o modelo inverso é retirado do laço de controle, resultando, então, em um controle puramente PI. Como o modelo do carro é não linear, foi escolhido um ponto de operação mediano (que consiste na mediana de seus parâmetros) para sintonizar o PI. O comportamento tomado como base nesta sintonia foi de resposta superamortecida. Como efeito de comparação, mostra-se o gráfico do controlador que utiliza o modelo inverso (Figura 7 inferior). As simulações foram feitas para diferentes patamares de referência. Note que estes patamares foram normalizados, de forma que fosse possı́vel analisar mais claramente a variação do comportamento para os diferentes set-points. O gráfico superior da Figura 7 revela que o comportamento da resposta varia em função do degrau de referência aplicado. A explicação para isto está na não linearidade do modelo do carro. Os parâmetros variam de acordo com o ponto de operação e como neste caso não há nenhuma estrutura que compense estas mudanças, a resposta do controlador será indesejável em muitas situações, causando oscilações e perda de 1.2 1 0.8 0.6 0.4 0.2 0 Degrau de referência normalizado 5 m/s 6 m/s 7 m/s 8 m/s 9 m/s 10 m/s 11 m/s 12 m/s 13 m/s 14 m/s 0 20 30 40 50 5 m/s 6 m/s 7 m/s 8 m/s 9 m/s 10 m/s 11 m/s 12 m/s 13 m/s 14 m/s 1.2 1 0.8 0.6 0.4 0.2 0 10 Nível do Freio Degrau de referência normalizado 1.4 0 10 Nível do Acelerador desempenho. Já no gráfico inferior da mesma figura observa-se que as variações nos degraus de referência pouco modificaram a qualidade da resposta, justificando o uso do modelo inverso nas malhas de controle. Velocidade (km/h) Figura 6: Diagrama de blocos do controlador com as ações do acelerador e do freio. Velocidade 40 Set−point 20 0 350 400 450 500 550 350 400 450 500 550 350 400 500 550 100 80 60 40 20 100 80 60 450 Tempo (s) Figura 8: Resultados do experimento realizado na validação do controlador com freio. 20 30 40 50 Tempo (s) Figura 7: Simulação do controlador com a ausência do modelo inverso (gráfico superior) e com a presença do modelo inverso (gráfico inferior) para diferentes patamares de referência. Na Figura 8 são apresentados os gráficos das velocidades de referência e medida, assim como os comandos de acelerador e freio de um experimento real em primeira marcha realizado no Campus Pampulha da UFMG com ocontrolador apresentado na Figura 6. É possı́vel observar que o controlador foi capaz de seguir as referências de velocidade e a atuação do freio foi necessária apenas em momentos em que haviam requisições de desaceleração, como era esperado pela lógica de chaveamento proposta. Os gráficos dos comandos dos atuadores revelam o comportamento de segurança esperado, que era não permitir a atuação simultânea dos pedais. Um outro experimento foi realizado com referência de velocidade constante de 20 km/h onde haviam desnı́veis no terreno e variações de direção também no campus Pampulha da UFMG. Os gráficos resultantes do experimento estão mostrados na Figura 9. Os dois gráficos inferiores referemse à inclinação do terreno e à orientação do veı́culo. Ao circular por áreas de inclinações positivas, houve uma leve queda na velocidade, porém o controlador reagiu, aumentando o nı́vel do acelerador. Em contrapartida, na zona de inclinação negativa foi notado um pequeno acréscimo na velocidade, acompanhado da reação do controlador no sentido de desacelerar o carro. Era esperado que as mudanças de direção do carro pudessem afetar consideravelmente a velocidade. Com intuito de testar esta hipótese, o veı́culo foi colocado para contornar uma rotatória. Porém, não foi observado uma alteração significativa durante o trajeto. Este experimento permitiu avaliar o comportamento esperado do controlador de rejeição de perturbações. Testes semelhantes ao da Figura 8 foram realizados com o controlador em que o carro trocava as marchas. Para compensar o efeito causado por estas trocas no controle, foi utilizado a técnica mencionada no fim da Seção 3. Como aspecto geral, foi notado uma capacidade de amenizar os efeitos das trocas de marchas, além de proporcionar uma maior suavidade durante as desacelerações, mas houve uma queda no desempenho do controle quando comparado ao controlador de pri- Velocidade (km/h) Nível do Acelerador Nível do Freio Inclinação (º) Orientação (º) Velocidade Set−point 20 0 0 20 40 60 80 100 120 140 160 180 200 100 cas de marchas. A ideia foi usar a informação de relação de transmissão instantânea medida no modelo encontrado para a primeira marcha. Agradecimentos 50 0 20 40 60 80 100 120 140 160 180 200 0 20 40 60 80 100 120 140 160 180 200 60 80 100 160 180 200 100 80 60 10 Inclinação positiva 0 Inclinação negativa −10 0 20 40 120 140 O presente trabalho é financiado pela FAPEMIG. J. Dias, G. Pereira e R. Palhares são bolsistas do CNPq. Os autores agradecem ao Centro de Tecnologia da Mobilidade da UFMG (CTM) e a Fundação Centro Tecnológico de Minas Gerais (CETEC) por ceder equipamentos e ferramentas durante a execução dos experimentos. Referências 0 −200 −400 −600 0 20 40 60 80 Rotatória 100 120 140 Tempo (s) 160 180 200 Figura 9: Resultados experimentais da validação do controlador em situações de desnı́veis no terreno e variações de direção. meira marcha. A principal justificativa para isto reside no fato de que as trocas de marchas causam mudanças abruptas na dinâmica longitudinal e o método utilizado neste artigo é aproximado. 5 Conclusões Neste trabalho foi proposto um controlador longitudinal para o Carro Autônomo Desenvolvido na UFMG, capaz de regular a sua velocidade de cruzeiro. O controlador concebido utiliza modelo inverso da dinâmica longitudinal para as entradas de acelerador e freio concatenado com uma ação PI para compensar as não linearidades e rejeitar as perturbações inerentes ao sistema dinâmico em estudo. A inserção do modelo inverso no controlador foi validado por simulações computacionais, comparando-se os efeitos resultantes da sua ausência e sua presença no laço de controle. Uma lógica de chaveamento foi proposta neste artigo, já que ambos atuadores (acelerador e freio) não podem atuar ao mesmo tempo. Os experimentos reais realizados com o controlador mostraram a capacidade de seguir os degraus de referência de acordo com as caracterı́sticas desejadas apresentadas na Seção 3. Um ensaio realizado para testar o comportamento do controlador em situações em que o CADU era submetido a distúrbios revelou a capacidade de amenizar os efeitos indesejados causados por inclinações na pista tanto positivas quanto negativas. Não foram constatados distúrbios consideráveis durante as mudanças de direção, como havia sido imaginado. Este artigo ainda apresentou uma proposta de amenizar os efeitos causados pelas mudanças abruptas na dinâmica longitudinal devido às tro- Aguirre, L. A. (2007). Introdução à Identificação de Sistemas: Técnicas Lineares e NãoLineares Aplicadas a Sistemas Reais, 3a edição, Editora UFMG, Belo Horizonte - MG. Chiang, H.-H., Ma, L.-S., Perng, J.-W., Wu, B.F. e Lee, T.-T. (2006). Longitudinal and lateral fuzzy control systems design for intelligent vehicles, IEEE Int. Conf. on Networking, Sensing and Control, pp. 544–549. Christensen, H. I. e Pacchierotti, E. (2005). Embodied social interaction for robots, Convention of the Society for the Study of Artificial Intelligence and Simulation of Behaviour, Hertfordshire 2005: 40–45. Craig, J. J. (1989). Introduction to Robotics: Mechanics and Control, 2nd edn, AddisonWesley Longman Publishing Co., Inc., Boston, MA, USA. Dias, J. E. A. (2013). Modelagem longitudinal e controle de velocidade de um carro autônomo, Master’s thesis, Universidade Federal de Minas Gerais. Disponı́vel em http: //www.ppgee.ufmg.br. Dias, J. E. A., Pereira, G. A. S. e Palhares, R. M. (2012). Identificação do modelo dinâmico longitudinal de um carro autônomo, XIX Congresso Brasileiro de Automática pp. 461– 468. Girard, A., Spry, S. e Hedrick, J. (2005). Intelligent cruise control applications: real-time embedded hybrid control software, IEEE Robotics Automation Magazine 12(1): 22–28. Hedrick, J., Gerdes, J., Maciuca, D. e Swaroop, D. (1997). Brake system modeling, control and integrated brake/throttle switching:phase i, California PATH Research Report . Rajamani, R. (2012). Vehicle Dynamics and Control, 2a edição, Springer, Minneapolis, Minnesota, USA.