desvio de obstáculos por robôs semiautônomos usando ... · desvio de obstaculos por rob os...

6
DESVIO DE OBST ´ ACULOS POR ROB ˆ OS SEMIAUT ˆ ONOMOS USANDO PLANEJAMENTO DE CAMINHOS Elias J. R. Freitas * , Henrique A. B. Passos , Guilherme A. S. Pereira * Programa de P´os-Gradua¸ c˜ao em Engenharia El´ etrica - Universidade Federal de Minas Gerais - Av. Antˆonio Carlos 6627, 31270-901, Belo Horizonte, MG, Brasil Departamento de P´os-Gradua¸ c˜ao em Engenharia El´ etrica - Universidade Federal de Minas Gerais Emails: [email protected], [email protected], [email protected] Abstract— This paper deals with the problem of obstacle avoidance by semi-autonomous mobile robots. These robots may not have a map of the environment or a global localization system, since its mission is controlled by a human operator. In such situations, deliberative path planning-based approaches for obstacle avoidance, which usually requires localization, are difficult to be applied. In this paper, we propose a planning based strategy for obstacle avoidance that relies on local maps and a series of local reference frames. In this approach, global localization is not required and simple odometry is sufficient to make the robot to avoid obstacles. Different from reactive strategies, usually used by semi-autonomous robots, the avoidance strategy using planning is intelligent, choosing a good local path to be followed by the robot. In this paper, the approach is illustrated using a mobile robot moving in a corridor. We show that the robot is able to efficiently avoid obstacles at its maximum speed. Keywords— service robots, safe navigation, obstacle avoidance. Resumo— Esse artigo lida com o problema de desvio de obst´aculos por robˆ os m´ oveis semiautˆ onomos. Esses robˆos podem n˜ao ter um mapa do ambiente ou um sistema de localiza¸c˜ao global, uma vez que sua miss˜ ao ´ e controlada por um operador humano. Nessas situa¸ c˜oes,m´ etodos deliberativos baseados em planejamento de caminhos para desvio de obst´aculos, que geralmente necessitam de localiza¸c˜ao, s˜ ao dif´ ıceis de serem aplicados. Nesse artigo ´ e proposta uma estrat´ egia para desvio de obst´aculos que se vale de mapas locais e uma s´ erie de referenciais locais. Nessa estrat´ egia, localiza¸ c˜aoglobaln˜ ao ´ e necess´aria, tornando a odometria do robˆ o suficiente para fazˆ e-lo desviar de obst´aculos. Diferentemente de estrat´ egias reativas, normalmente utilizadas por robˆos semiautˆonomos, a estrat´ egia de desvio usando planejamento ´ e inteligente, escolhendo um bom caminho local para ser seguido pelo robˆo. Neste artigo, a estrat´ egia proposta ´ e ilustrada em um robˆo m´ ovel se locomovendo em um corredor. Os resultados mostram que o robˆo, em sua velocidade m´ axima, ´ e capaz de desviar eficientemente de obst´ aculos. Palavras-chave— robˆosdeservi¸ co, navega¸ c˜ao segura, desvio de obst´aculos. 1 Introdu¸c˜ ao Com o desenvolvimento da rob´ otica, robˆ os oveis de servi¸ co tem se aproximado dos seres hu- manos, estando cada vez mais presentes em seus ambientes de trabalho, estudo e lazer (Dayoub et al., 2015). Uma peculiaridade de alguns desses robˆ os ´ e a possibilidade deles serem diretamente co- mandados pelas pessoas, como ´ e o caso de cadeiras de rodas inteligentes (Simpson et al., 2008), robˆ os que devem seguir as pessoas pelo ambiente (M¨ uller et al., 2008) ou sistemas de assistˆ encia ` adire¸c˜ ao de autom´ oveis (Skog e Handel, 2009). O presente artigo est´ a principalmente interessado nesse tipo de robˆ o, onde o controle da miss˜ ao ´ e de responsa- bilidade do ser humano, estando o robˆ o respons´ a- vel por tarefas espec´ ıficas, em especial a seguran¸ca da miss˜ ao. Esses robˆ os semiautˆ onomos se diferem dos demais robˆ os de servi¸co em pelo menos trˆ es pontos: (1) eles n˜ ao precisam conhecer um mapa global do ambiente em que se deslocam; (2) eles ao precisam conhecer o objetivo ou alvo final; e (3) eles n˜ ao precisam se localizar no ambiente. Apesar dessas diferen¸ cas, esses robˆ os certamente ainda devem ser capazes de evitar colis˜ oes com obst´ aculos encontrados em seu caminho, preser- vando a si pr´ oprio e aos seus usu´ arios. A proposta de uma estrat´ egia para desvio inteligente de obs- aculos por robˆ os semiautˆ onomos ´ e o alvo deste artigo. Desde o in´ ıcio da rob´ otica, estrat´ egias para desvio de obst´ aculos tem sido propostas (Moravec, 1980; Khatib, 1986). Estas estrat´ egias podem ser classificadas como reativas, onde o robˆ o reage ins- tantaneamente ` a presen¸ ca de obst´ aculos rec´ em de- tectados sem se preocupar com as consequˆ encias de sua rea¸c˜ ao, ou deliberativas, onde o robˆ o, com o uso de mapas do ambiente, planeja um caminho que n˜ ao s´ o desvia dos obst´ aculos, mas tamb´ em considera a sua miss˜ ao principal. As estrat´ egias reativas s˜ ao muito eficientes e n˜ ao requerem localiza¸ ao global ou modelos complexos para os obst´ aculos e para o ambi- ente (Arkin, 1998). Assim, s˜ ao muito utiliza- das em robˆ os semiautˆ onomos, como os conside- rados nesse artigo (Chik et al., 2016; Baklouti et al., 2017). No entanto, como estas estrat´ egias ao consideram o futuro, muitas vezes o robˆ o pode ser levado a situa¸ oes indesejadas que podem faze- lo parar ou seguir trajet´ orias muito longas. Estrat´ egias deliberativas, por outro lado, pla- nejam ou replanejam caminhos que consideram, ao somente o obst´ aculo detectado, mas tamb´ em o horizonte futuro de movimento do robˆ o. Essa abordagem pode gerar trajet´ orias ´ otimas e segu- XIII Simp´osio Brasileiro de Automa¸ ao Inteligente Porto Alegre – RS, 1 o – 4 de Outubro de 2017 ISSN 2175 8905 1043

Upload: others

Post on 23-Sep-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Desvio de obstáculos por robôs semiautônomos usando ... · DESVIO DE OBSTACULOS POR ROB OS SEMIAUT^ ONOMOS USANDO^ PLANEJAMENTO DE CAMINHOS Elias J. R. Freitas , Henrique A. B

DESVIO DE OBSTACULOS POR ROBOS SEMIAUTONOMOS USANDOPLANEJAMENTO DE CAMINHOS

Elias J. R. Freitas∗, Henrique A. B. Passos†, Guilherme A. S. Pereira†

∗Programa de Pos-Graduacao em Engenharia Eletrica - Universidade Federal de Minas Gerais - Av.Antonio Carlos 6627, 31270-901, Belo Horizonte, MG, Brasil

†Departamento de Pos-Graduacao em Engenharia Eletrica - Universidade Federal de Minas Gerais

Emails: [email protected], [email protected], [email protected]

Abstract— This paper deals with the problem of obstacle avoidance by semi-autonomous mobile robots. Theserobots may not have a map of the environment or a global localization system, since its mission is controlled bya human operator. In such situations, deliberative path planning-based approaches for obstacle avoidance, whichusually requires localization, are difficult to be applied. In this paper, we propose a planning based strategyfor obstacle avoidance that relies on local maps and a series of local reference frames. In this approach, globallocalization is not required and simple odometry is sufficient to make the robot to avoid obstacles. Different fromreactive strategies, usually used by semi-autonomous robots, the avoidance strategy using planning is intelligent,choosing a good local path to be followed by the robot. In this paper, the approach is illustrated using a mobilerobot moving in a corridor. We show that the robot is able to efficiently avoid obstacles at its maximum speed.

Keywords— service robots, safe navigation, obstacle avoidance.

Resumo— Esse artigo lida com o problema de desvio de obstaculos por robos moveis semiautonomos. Essesrobos podem nao ter um mapa do ambiente ou um sistema de localizacao global, uma vez que sua missao econtrolada por um operador humano. Nessas situacoes, metodos deliberativos baseados em planejamento decaminhos para desvio de obstaculos, que geralmente necessitam de localizacao, sao difıceis de serem aplicados.Nesse artigo e proposta uma estrategia para desvio de obstaculos que se vale de mapas locais e uma serie dereferenciais locais. Nessa estrategia, localizacao global nao e necessaria, tornando a odometria do robo suficientepara faze-lo desviar de obstaculos. Diferentemente de estrategias reativas, normalmente utilizadas por robossemiautonomos, a estrategia de desvio usando planejamento e inteligente, escolhendo um bom caminho localpara ser seguido pelo robo. Neste artigo, a estrategia proposta e ilustrada em um robo movel se locomovendo emum corredor. Os resultados mostram que o robo, em sua velocidade maxima, e capaz de desviar eficientementede obstaculos.

Palavras-chave— robos de servico, navegacao segura, desvio de obstaculos.

1 Introducao

Com o desenvolvimento da robotica, robosmoveis de servico tem se aproximado dos seres hu-manos, estando cada vez mais presentes em seusambientes de trabalho, estudo e lazer (Dayoubet al., 2015). Uma peculiaridade de alguns dessesrobos e a possibilidade deles serem diretamente co-mandados pelas pessoas, como e o caso de cadeirasde rodas inteligentes (Simpson et al., 2008), robosque devem seguir as pessoas pelo ambiente (Mulleret al., 2008) ou sistemas de assistencia a direcaode automoveis (Skog e Handel, 2009). O presenteartigo esta principalmente interessado nesse tipode robo, onde o controle da missao e de responsa-bilidade do ser humano, estando o robo responsa-vel por tarefas especıficas, em especial a segurancada missao. Esses robos semiautonomos se diferemdos demais robos de servico em pelo menos trespontos: (1) eles nao precisam conhecer um mapaglobal do ambiente em que se deslocam; (2) elesnao precisam conhecer o objetivo ou alvo final;e (3) eles nao precisam se localizar no ambiente.Apesar dessas diferencas, esses robos certamenteainda devem ser capazes de evitar colisoes comobstaculos encontrados em seu caminho, preser-vando a si proprio e aos seus usuarios. A propostade uma estrategia para desvio inteligente de obs-

taculos por robos semiautonomos e o alvo desteartigo.

Desde o inıcio da robotica, estrategias paradesvio de obstaculos tem sido propostas (Moravec,1980; Khatib, 1986). Estas estrategias podem serclassificadas como reativas, onde o robo reage ins-tantaneamente a presenca de obstaculos recem de-tectados sem se preocupar com as consequenciasde sua reacao, ou deliberativas, onde o robo, como uso de mapas do ambiente, planeja um caminhoque nao so desvia dos obstaculos, mas tambemconsidera a sua missao principal.

As estrategias reativas sao muito eficientese nao requerem localizacao global ou modeloscomplexos para os obstaculos e para o ambi-ente (Arkin, 1998). Assim, sao muito utiliza-das em robos semiautonomos, como os conside-rados nesse artigo (Chik et al., 2016; Bakloutiet al., 2017). No entanto, como estas estrategiasnao consideram o futuro, muitas vezes o robo podeser levado a situacoes indesejadas que podem faze-lo parar ou seguir trajetorias muito longas.

Estrategias deliberativas, por outro lado, pla-nejam ou replanejam caminhos que consideram,nao somente o obstaculo detectado, mas tambemo horizonte futuro de movimento do robo. Essaabordagem pode gerar trajetorias otimas e segu-

XIII Simposio Brasileiro de Automacao Inteligente

Porto Alegre – RS, 1o – 4 de Outubro de 2017

ISSN 2175 8905 1043

Page 2: Desvio de obstáculos por robôs semiautônomos usando ... · DESVIO DE OBSTACULOS POR ROB OS SEMIAUT^ ONOMOS USANDO^ PLANEJAMENTO DE CAMINHOS Elias J. R. Freitas , Henrique A. B

ras. Um trabalho recente muito interessante naarea e (Yang et al., 2016), que planeja a trajeto-ria do robo em um ambiente com pessoas, con-siderando explicitamente as incertezas associadasa velocidade e posicao dessas pessoas. Ao con-trario das estrategias reativas, essa estrategia e asdemais estrategias deliberativas dependem de ma-pas do ambiente e principalmente da localizacaoglobal do robo, necessaria para planejar e paraseguir o caminho planejado (Choset, 2005). Essesrequisitos, que tambem sao necessarios em estrate-gias hıbridas que combinam tecnicas deliberativase reativas, podem ser difıceis de serem obtidos poralguns robos semiautonomos, como as cadeiras derodas se locomovendo em ambientes internos des-conhecidos (Baklouti et al., 2017).

Visando aproveitar as vantagens dos metodosdeliberativos, esse artigo propoe uma estrategiade desvio de obstaculos que utiliza planejadoresde caminho globais em mapas locais do ambiente.Para nao depender de localizacao global, a estrate-gia proposta utiliza uma sequencia de referenciaislocais com tempo de vida curto. Esses referenciaissao utilizados pelo robo para planejar e seguir oultimo caminho criado. Transformacoes de coor-denadas com baixa incerteza entre os referenciaislocais sao obtidas por meio da odometria, devido aproximidade geometrica entre esses referencias. Seplanejadores completos forem utilizados, a estra-tegia proposta garante desvio de obstaculos estati-cos e, dentro de uma regiao do campo de visao dorobo determinada por sua velocidade, velocidadedo obstaculo e tempo de calculo do planejador,tambem permite o desvio de obstaculos dinami-cos. Pelo conhecimento dos autores, a proposta doartigo, com carater pratico e tecnologico, e inova-dora, uma vez que nao foi encontrado outro artigona literatura que usa estrategia similar para desviode obstaculos. Os trabalhos anteriores que usamplanejamento de movimento requerem a localiza-cao metrica do robo em relacao a um referencialglobal fixo no ambiente (Minguez et al., 2016).

Para ilustrar a estrategia proposta, apresen-tada na Secao 2, utilizou-se um robo planar tra-balhando em um corredor. Conforme sera des-crito na Secao 3, para o planejamento do caminhonesse ambiente, utilizou-se um planejador localassintoticamente otimo, RRT* (Optimal Rapidly-exploring Random Trees) (Karaman et al., 2011),cuja funcao de custo depende de um campo veto-rial que codifica a direcao de movimento especifi-cada por um usuario humano, conforme propostoem (Pereira et al., 2016). Resultados dos experi-mentos sao mostrados na Secao 4. Conclusoes etrabalhos futuros sao discutidos na Secao 5.

2 MetodologiaA metodologia proposta neste artigo assume a

existencia de um planejador de caminhos completocom tempo maximo de execucao, ou seja, casoexistam caminhos possıveis, o planejador deve for-

necer um caminho a cada intervalo de tempo, ts.Essa caracterıstica e comum, por exemplo, em pla-nejadores anytime (Karaman et al., 2011), que cal-culam um caminho rapidamente e o otimizam casotenham mais tempo disponıvel.

Para deteccao dos obstaculos e obtencao deum mapa local, a metodologia tambem assume aexistencia de um sensor de distancia instalado norobo, como um laser (LADAR) ou um Kinect. Porfim, para garantir a localizacao do robo em rela-cao a um referencial local, assume-se que o robo edotado de um sistema de odometria, que pode sercomposto por encoders, unidade de medicao iner-cial ou ate mesmo cameras para odometria visual.A metodologia proposta e explicada em detalhes aseguir em forma de um algoritmo computacional.

2.1 Algoritmo propostoA estrategia de desvio de obstaculos proposta

nesse artigo pode ser sumarizada no Algoritmo 1.

Algoritmo 1: Desvio de obstaculos.

1: k = 0 ; vr = 0.0 ; τ0 = {} ;2: L0 = DeterminaReferencial() ;3: mapa0 = ObtemMapa(L0) ;4: k← k + 1 ;5: enquanto VERDADE faca6: Lk = DeterminaReferencial() ;7: τc = TransformaCaminho(τk−1,Lk) ;8: mapak = TransformaMapa(mapak−1,Lk) ;9: oc = Integra(τc, pr , ts, vr ) ;

10: faca em paralelo:11: τs = Planejador(mapak, oc) ;12: vr = Controlador(τc) ;13: fim paralelo14: τk = ConcatenaCaminho(τc, τs, pr, oc) ;15: mapak = ObtemMapa(Lk) ;16: k← k + 1 ;17: fim enquanto

Considerando que o tempo pode ser discreti-zado em um perıodo ts, correspondente ao tempode calculo do planejador escolhido, a metodolo-gia proposta em um tempo tk, k = 1, 2, . . . , ini-cialmente determina um referencial local {Lk}, oqual sera a referencia durante o intervalo de tempotk − tk−1 = ts (linha 6 do Algoritmo 1).

Apos a determinacao de {Lk}, transforma-se ocaminho calculado pelo planejador e o mapa localobtidos em relacao ao referencial {Lk−1} (calcu-lado em tk−1) para {Lk} (linhas 7 e 8). Apos essatransformacao, cujo tempo de calculo e muito pe-queno em relacao a ts e pode ser desprezado, umanova instancia do planejador e lancada (linha 11).Como parametros, esse planejador utiliza o mapalocal que acaba de ser transformado para {Lk} (li-nha 8) e o ponto de origem do novo caminho, oc.Nesse ponto, o leitor pode estranhar a ausencia deum ponto alvo como entrada do planejador. De

XIII Simposio Brasileiro de Automacao Inteligente

Porto Alegre – RS, 1o – 4 de Outubro de 2017

1044

Page 3: Desvio de obstáculos por robôs semiautônomos usando ... · DESVIO DE OBSTACULOS POR ROB OS SEMIAUT^ ONOMOS USANDO^ PLANEJAMENTO DE CAMINHOS Elias J. R. Freitas , Henrique A. B

Figura 1: Estrategia de desvio de obstaculos proposta em dois instantes de tempo. O robo e representadocomo uma circunferencia verde, possui uma velocidade vr e esta dentro da Zona Estatica (Zest). Emt0, o robo comeca a seguir o caminho representado pela linha tracejada em azul escuro. Esse caminhofoi fornecido pelo planejador no referencial local L0. O trecho desse caminho, sinalizado em vermelho,representa o caminho comprometido (committed path). Enquanto o robo segue esse caminho, desviandodos obstaculos que estao representados pela cor cinza, o planejador esta calculando um novo caminho,tendo como origem o ponto oc. No instante t1, o robo ja percorreu o caminho em amarelo e o planejadorfornece o novo caminho em azul, no novo referencial local L1. Esse novo caminho considera, inclusive,uma pessoa em movimento representada pela cor lilas. O trecho do caminho comprometido que nao foicumprido ate t1, em vermelho, e concatenado com o novo caminho, formando o caminho completo, τ1.O novo ponto de origem determinado nesse instante e indicado por um cırculo vermelho.

fato, como um robo semiautonomo nem sempreconhece seu destino, caso esse ponto seja neces-sario para o planejador em questao, ele pode serescolhido arbitrariamente e sem perda de genera-lidade como um ponto a frente do robo e no limitedo campo de visao de seus sensores.

O ponto de origem, oc, e obtido integrando-se(ou simulando-se) o caminho anterior (calculadoem relacao a {Lk−1} e transformado para {Lk}),durante um tempo ts a partir da posicao real dorobo, pr, representada no referencial atual (linha9). Para essa integracao e considerada a velo-cidade media do robo, vr. A ideia por traz dese escolher um ponto do caminho anterior comosendo o inıcio do proximo caminho e manter acontinuidade do caminho do robo. Com essa es-trategia, evita-se, por exemplo, situacoes de cami-nhos pertencentes a classes homotopicas diferen-tes. Observe que essa estrategia define um trechodo caminho anterior a ser seguido enquanto o novocaminho e calculado. Esse trecho do caminho echamado na literatura de caminho comprometido(commited path) (Karaman et al., 2011).

Enquanto e solucionado o novo problema deplanejamento, ou seja, durante o intervalo ts,um controlador de caminhos fornece os devi-dos comandos de velocidade para manter o roboseguindo o caminho comprometido (linha 12).Como esse caminho e enviado para o controla-dor ja no referencial {Lk}, nao ha necessidadede transformacao do caminho pelo controlador,bastando-se usar como realimentacao a posicao dorobo em relacao ao referencial atual ({Lk}).

Uma vez que o planejador finaliza o seu cal-culo, o caminho comprometido ainda nao seguidopelo robo e concatenado com o caminho recem

calculado (linha 14), um novo mapa com as ulti-mas informacoes dos sensores e obtido (linha 15)e o processo se repete fazendo a transformacao donovo caminho e do novo mapa para o recem criadoreferencial {Lk+1}.

Note que para que todo o processo funcioneadequadamente, sempre e necessario se conhecer atransformacao entre o referencial anterior e o refe-rencial atual. Como ts e normalmente um tempomuito pequeno (na ordem de 1 a 2 s), uma boaodometria e geralmente suficiente para calcularas transformacoes de coordenadas necessarias combaixa incerteza.

A Figura 1 ilustra a estrategia de desvio deobstaculos proposta neste trabalho. Pode-se ob-servar em t = t0 o caminho planejado no refe-rencial atual, {L0}, que levou em consideracao osobstaculos dentro do campo de visao do robo noinstante anterior a t0. Tambem esta sinalizado devermelho nesse caminho o ponto de partida queo planejador utilizara para fornecer o novo cami-nho mostrado em t1 = t0 + ts. Nesse instante detempo, e mostrado o novo referencial local atual,{L1} e o caminho comprometido. A seguir e rea-lizada uma analise do algoritmo proposto.

2.2 Analise

Uma maneira de analisar comportamento ea eficiencia da metodologia proposta e avaliar ocomportamento do robo com respeito as possıveisconfiguracoes dos obstaculos durante o intervalode planejamento. Para facilitar esta analise saocriadas duas zonas circulares centradas na posi-cao do robo no tempo tk, k = 1, 2, . . . , mostradasna Figura 1: a Zona Dinamica (Zd) e a Zona Es-tatica (Zest).

A Zona Dinamica e delimitada externamente

XIII Simposio Brasileiro de Automacao Inteligente

Porto Alegre – RS, 1o – 4 de Outubro de 2017

1045

Page 4: Desvio de obstáculos por robôs semiautônomos usando ... · DESVIO DE OBSTACULOS POR ROB OS SEMIAUT^ ONOMOS USANDO^ PLANEJAMENTO DE CAMINHOS Elias J. R. Freitas , Henrique A. B

pelo raio de planejamento Rp e internamente peloraio da Zona Estatica Rs. O valor de Rp e, defato, um parametro do planejador, que pode serescolhido, por exemplo, em funcao da capacidadecomputacional (regioes maiores demandam maiscalculos), velocidade e numero de obstaculos (umhorizonte de planejamento maior pode resultar emtrajetorias melhores) e campo de visao dos senso-res (e necessario um conhecimento dos obstaculosdentro da regiao de planejamento). Independen-temente da escolha de Rp, a estrategia propostanesse artigo garantira que o robo nao entrara naZona Dinamica no intervalo de planejamento detrajetorias, ts, e por isso, a ausencia de colisoescom obstaculos estaticos e dinamicos nessa regiaosera assegurada. Apesar do robo nao se moverpara a Zona Dinamica, e interessante notar que ocaminho planejado ja preve a existencia de obsta-culos nessa regiao se esses forem detectados pelossensores no instante inicial do planejamento.

A Zona Estatica, definida pelo raio Rs < Rp,e uma zona crıtica na qual durante o intervalots os obstaculos sao considerados estaticos. Paraobstaculos estaticos, a estrategia proposta garantea ausencia de colisao nessa zona. O valor de Rs,representa uma relacao de compromisso entre avelocidade do robo e o tempo de planejamento.Para o pior caso, quando um robo segue uma linhareta com velocidade maxima vmax, define-se:

Rs = vmax · ts , (1)

ou seja, se a velocidade do robo e/ou o tempo deplanejamento aumentarem, a Zona Estatica torna-se maior. Como nesta zona o robo segue um planocalculado ts segundos atras (caminho comprome-tido), esse plano somente considera obstaculos quenao se moveram nesse perıodo. Assim, para evi-tar colisao com obstaculos dinamicos nessa zona,a navegacao devera tambem apresentar um cara-ter reativo, ou seja, se um obstaculo for detectadomuito proximo ao robo, este devera parar ime-diatamente antes que ocorra uma colisao. Caso otempo de solucao do planejamento tendesse a zero(ts → 0), o tamanho da regiao estatica tambemtenderia a zero (Rs → 0) e, assim, a navegacaopoderia ser totalmente deliberativa e com desviode obstaculos garantida, mesmo na existencia deobjetos moveis no ambiente.

Pode-se entao concluir que o desempenho doalgoritmo proposto depende de alguns fatores.Apesar de ser sempre possıvel desviar de obsta-culos estaticos com seguranca (desde que esses se-jam percebidos pelos sensores do robo), o desviode obstaculos dinamicos depende do tempo de pla-nejamento e da velocidade do robo. O desejavele entao diminuir ao maximo o tempo de planeja-mento (por meio de algoritmos mais eficientes ouaumento do poder computacional) de forma a per-mitir que o robo se desloque com uma velocidademais alta e mesmo assim seja capaz de desviar de

obstaculos dinamicos sem parar o seu movimento.

3 Estudo de caso

Para exemplificar o algoritmo proposto em umrobo real, utilizou-se o robo de servico MARIA,cuja base movel e um Pioneer3-AT equipado comsensores de contato (bumpers) e um sensor a la-ser SICK-LMS 100, com campo de visao de 270◦

e frequencia de amostragem de 50Hz. O ambientedos experimentos foi um dos corredores da Escolade Engenharia da UFMG de largura 2, 35 m. Aestrategia proposta foi implementada em C++,utilizando o ROS (Robot Operating System) jun-tamente com a biblioteca OMPL (Open MotionPlanning Library). O processamento foi realizadopor um notebook com processador [email protected] ro-dando Linux Ubuntu 14.04.

3.1 Planejador de caminhos

O objetivo do planejador de caminhos e gerarcaminhos que levem o robo a seguir o corredor ateo final, mantendo-se a uma distancia desejada daparede da direita (mao convencional) e desviandode possıveis obstaculos, que nao sao conhecidos apriori. A direcao em que o robo deve se mover eespecificada pelo usuario, uma vez que o robo esemiautonomo e nao conhece o objetivo final datarefa. Como criterio de parada para o algoritmo,foi usado um detector de cruzamento de corredo-res. Dessa forma, o robo tem autonomia e segue ocorredor na direcao especificada ate que nao sejadetectado nenhum cruzamento, ou seja, ate o fimdo corredor.

Na implementacao atual do metodo proposto,um mapa local do tipo Octomap OccupancyGrid (Hornung et al., 2013) e fornecido ao plane-jador. Esse mapa e criado utilizando os dados dolaser momentos antes do inıcio do planejamento,conforme proposto no Algoritmo 1.

Para os resultados desse artigo, foi esco-lhido um planejador probabilisticamente com-pleto, assintoticamente otimo e anytime, baseadono RRT*. Esse planejador e descrito em (Pereiraet al., 2016). A grande vantagem desse metodopara a estrategia proposta e o fato de ele nao ne-cessitar de um ponto alvo, ja que esse ponto nao econhecido pelo robo semiautonomo. No lugar doalvo, para ditar o objetivo do caminho, esse me-todo utiliza em seu funcional de custo um campovetorial, que deve ser seguido pelo caminho na au-sencia de obstaculos. Para o caso em questao,foi especificado um campo vetorial bi-dimensionalformado por uma componente longitudinal (para-lela as paredes do corredor) constante e uma com-ponente transversal proporcional a distancia entrea posicao real do robo e a linha situada a 0, 6 mda parede da direita. Essa distancia foi escolhidade forma que o robo ficasse o mais proximo daparede, levando em consideracao sua dimensao.

XIII Simposio Brasileiro de Automacao Inteligente

Porto Alegre – RS, 1o – 4 de Outubro de 2017

1046

Page 5: Desvio de obstáculos por robôs semiautônomos usando ... · DESVIO DE OBSTACULOS POR ROB OS SEMIAUT^ ONOMOS USANDO^ PLANEJAMENTO DE CAMINHOS Elias J. R. Freitas , Henrique A. B

3.2 Localizacao e determinacao dos referenciaislocais

A localizacao local do robo e realizada pormeio de odometria, calculada pelo sistema internodo robo a partir da combinacao de dados dos en-coders conectados as suas rodas e de um girome-tro que mede sua velocidade angular. A cada in-tervalo de tempo, essa odometria e transformadapara o referencial corrente. Esse referencial e atu-alizado a cada ts segundos com base na orientacaorelativa entre o robo e a parede do corredor. Nesseproblema em especıfico, a orientacao do referencialfoi escolhida como sendo a orientacao da paredepara facilitar o calculo do campo vetorial, que temuma das componentes paralela ao corredor.

Nos experimentos mostrados nesse artigo, adeteccao das paredes do corredor foi realizada uti-lizando um metodo baseado na Transformada deHough Probabilıstica (Galamhos et al., 1999). Osdados do laser foram convertidos em uma ima-gem binaria antes da aplicacao do metodo. Dessaforma, por meio da transformada de Hough pode-se detectar as retas mais significativas na imagem,que representam as paredes do corredor. Tendo-seobtido os parametros das retas, e possıvel deter-minar a distancia do robo as paredes e a sua ori-entacao com respeito as mesmas. Obtidas essasinformacoes, define-se a orientacao do referenciallocal atual, {Lk}, sempre paralela a parede e no

centro do corredor. E importante mencionar que,conhecendo-se a largura do corredor, e possıvel de-terminar esse referencial mesmo que apenas umadas paredes seja detectada. Resultados com o sis-tema descrito nessa secao sao mostrados a seguir.

4 Resultados

A Figura 2 mostra quatro instantes de exe-cucao da estrategia proposta. Durante o experi-mento, o robo foi configurado para se mover comsua velocidade maxima, 0, 75 m/s. O tempo decalculo do planejador, ts, foi de 2, 0 s e o raio deplanejamento, Rp, foi de 6, 0 m. Nessa figura, omapa, conforme percebido pelo sensor laser dorobo e mostrado em azul, a arvore RRT* em ver-melho e o caminho a ser seguido em verde. As Fi-gura 2(a) e (b) mostram instantes distintos do se-guimento do caminho comprometido definido emt = 0 s, cujo limite e o ponto vermelho. Duranteo seguimento desse caminho, um novo caminhoesta sendo calculado pelo planejador. Em t = 2 s,o calculo desse caminho e finalizado e um novocaminho comprometido e definido e seguido (Fi-guras 2(c) e (d)). Um vıdeo com os experimentosmostrados nessa secao pode ser encontrado em:http://coro.cpdee.ufmg.br/movies/sbai2017.

A Figura 3 mostra uma foto do robo MARIAdurante os experimentos. Note que nesses expe-rimentos nao foi considerado o desvio de pessoasem movimento. Foram utilizados apenas cones deseguranca como obstaculos ao movimento do robo.

(a) t = 0 s

(b) t ≈ 1, 8 s

(c) t ≈ 2, 0 s

(d) t ≈ 3, 8 s

Figura 2: Dados experimentais obtidos com o robose movendo em um corredor e desviando de obs-taculos estaticos desconhecidos. O robo e repre-sentado por um retangulo preto e o caminho a serseguido e indicado em verde. A arvore gerada peloplanejador baseado no RRT* e mostrada em ver-melho e o ponto de origem para o proximo cami-nho (ponto final do caminho comprometido) estaem vermelho. A parede e os obstaculos sao repre-sentados por quadrados azuis. O cırculo em azulrepresenta a Zona Estatica, atualizada a cada in-tervalo de tempo de planejamento, definido como2, 0 s. (a) e (b) mostram instantes de seguimentodo caminho comprometido definido em t = 0 s.Durante o movimento do robo um novo caminhoe calculado. Em t = 2, 0 s, esse novo caminho eusado para definir um novo caminho comprome-tido, cujo seguimento e mostrado em (c) e (d).

XIII Simposio Brasileiro de Automacao Inteligente

Porto Alegre – RS, 1o – 4 de Outubro de 2017

1047

Page 6: Desvio de obstáculos por robôs semiautônomos usando ... · DESVIO DE OBSTACULOS POR ROB OS SEMIAUT^ ONOMOS USANDO^ PLANEJAMENTO DE CAMINHOS Elias J. R. Freitas , Henrique A. B

Figura 3: Foto do experimento da Figura 2.

5 Conclusao e Trabalhos Futuros

Esse artigo apresentou uma estrategia de des-vio de obstaculos baseado em planejadores de mo-vimento que nao requer localizacao global. A ideiada estrategia proposta e manter um referencial lo-cal somente pelo tempo necessario para que o robosiga o ultimo caminho calculado pelo planejador epara que um novo caminho seja calculado. Aposesse tempo, um novo referencial local e definido eo caminho previamente calculado e transformadopara o novo referencial. Como os referenciais lo-cais estao muito proximos entre si, e possıvel de-finir uma transformacao de baixa incerteza entreeles somente usando a odometria do robo. A es-trategia proposta pode ser aplicada diretamente arobos semiautonomos, que devem seguir trajeto-rias seguras mas nao possuem um mapa do ambi-ente ou um sistema de localizacao global.

Uma analise do algoritmo proposto mostraque a estrategia e capaz de fazer o robo desviarde obstaculos estaticos e, dependendo da relacaoentre a velocidade do robo e o tempo de calculo docaminho, tambem de obstaculos dinamicos. Vi-sando aumentar a chance de desvio de obstacu-los dinamicos, inclusive pessoas, trabalhos futurosconsiderarao um aumento da eficiencia dos pla-nejadores. Isso pode ser obtido, por exemplo,com a implementacao de algumas de suas funcoes,como a deteccao de obstaculos, em GPU ou al-gum hardware dedicado. Trabalhos futuros tam-bem incluem o teste da metodologia em veıculoscom dinamicas diferentes, como uma cadeira derodas inteligente e um veıculo aereo do tipo qua-drirrotor.

Agradecimentos

O presente trabalho foi realizado com o apoiofinanceiro da FAPEMIG, do CNPQ e da CAPES -Brasil. Os autores agradecem o financiamento doINCT-SAC – Sistemas Autonomos Cooperativos(proc. CNPq 465755/2014-3)

Referencias

Arkin, R. C. (1998). Behavior-based robotics, MITpress.

Baklouti, E., Amor, N. B. e Jallouli, M. (2017). Re-active control architecture for mobile robot au-tonomous navigation, Robotics and AutonomousSystems 89: 9 –14.

Chik, S., Yeong, C., Su, E., Lim, T., Subramaniam,Y. e Chin, P. (2016). A review of social-awarenavigation frameworks for service robot in dyna-mic human environments, J. Telecom., Electronicand Computer Engineering 8(11): 41–50.

Choset, H. M. (2005). Principles of robot motion: the-ory, algorithms, and implementation, MIT press.

Dayoub, F., Morris, T. e Corke, P. (2015). Rubbingshoulders with mobile service robots, IEEE Ac-cess 3: 333–342.

Galamhos, C., Matas, J. e Kittler, J. (1999). Progres-sive probabilistic hough transform for line detec-tion, IEEE Conference on Computer Vision andPattern Recognition, p. 560 Vol. 1.

Hornung, A., Wurm, K. M., Bennewitz, M., Stachniss,C. e Burgard, W. (2013). OctoMap: An efficientprobabilistic 3D mapping framework based on oc-trees, Autonomous Robots 34(3): 189–206. Soft-ware available at http://octomap.github.com.

Karaman, S., Walter, M. R., Perez, A., Frazzoli, E.e Teller, S. (2011). Anytime motion planningusing the RRT*, IEEE International Conferenceon Robotics and Automation, pp. 1478–1483.

Khatib, O. (1986). Real-time obstacle avoidance formanipulators and mobile robots, The internatio-nal journal of robotics research 5(1): 90–98.

Minguez, J., Lamiraux, F. e Laumond, J.-P. (2016).Motion Planning and Obstacle Avoidance, Sprin-ger International Publishing, pp. 1177–1202.

Moravec, H. P. (1980). Obstacle avoidance and navi-gation in the real world by a seeing robot rover.,Technical report, DTIC Document.

Muller, J., Stachniss, C., Arras, K. e Burgard, W.(2008). Socially inspired motion planning for mo-bile robots in populated environments, Proc. ofInternational Conference on Cognitive Systems.

Pereira, G. A., Choudhury, S. e Scherer, S. (2016). Aframework for optimal repairing of vector field-based motion plans, International Conference onUnmanned Aircraft Systems, pp. 261–266.

Simpson, R. C., LoPresti, E. F. e Cooper, R. A.(2008). How many people would benefit from asmart wheelchair?, Journal of rehabilitation rese-arch and development 45(1): 53.

Skog, I. e Handel, P. (2009). In-car positioning andnavigation technologies—a survey, IEEE Tran-sactions on Intelligent Transportation Systems10(1): 4–21.

Yang, H., Lim, J. e eui Yoon, S. (2016). AnytimeRRBT for handling uncertainty and dynamic ob-jects, IEEE/RSJ International Conference on In-telligent Robots and Systems, pp. 4786–4793.

XIII Simposio Brasileiro de Automacao Inteligente

Porto Alegre – RS, 1o – 4 de Outubro de 2017

1048