Sumáro Sstemas Robótcos Navegação Introdução Onde estou? Para onde vou? Como vou lá chegar? Carlos Carreto Curso de Engenhara Informátca Ano lectvo 2003/2004 Escola Superor de Tecnologa e Gestão da Guarda Introdução Um robô móvel enfrenta 3 problemas: Introdução Exemplo de um algortmo de navegação Onde estou? Para onde vou? Como vou lá chegar? A navegação é o processo usado pelo robô móvel para resolver esses três problemas. http://www.mec.ua.pt/actvtes/dscplnas/robotcaautonomamovel/sldesaulas2003/4-navegacao-introducao_fles/frame.htm
Introdução Exemplo de um algortmo de navegação O Mapa Conceto generalzado de descrção do ambente ou conjunto de nstruções de movmento de acordo com o ambente conhecdo ou esperado O Objectvo (goal) Coordenadas espacas (local geográfco) e/ou temporas (duração da actvdade de navegação). Exemplos: Atngr um local específco de estaconamento Deambular durante um certo período numa dada regão para efetos de patrulha Poderá haver sstemas com objectvos dnâmcos, como sera um caso de uma persegução! As nstruções de comportamento Informação sobre como se pode fazer a movmentação nstantânea face à percepção do ambente. Reactvdade. Onde estou? (Posconamento) Algumas metodologas de posconamento: Posconamento relatvo (Dead-Reckonng) A posção actual é determnada com base na últma posção conhecda e na medção do movmento do robô. Odometra Navegação nercal... Posconamento absoluto A posção actual é determnada com base em nformação sobre pontos de referênca do mundo exteror. Por farós Por marcas Por mapas... Posconamento msto A posção actual é determnada recorrendo a métodos mstos de posconamento relatvo e posconamento absoluto. Posconamento relatvo Posconamento relatvo Odometra O posconamento é determnado de forma ncremental através da contagem do deslocamento angular das rodas. É um sstemas totalmente auto-contdo (não depende de partes externas ao robô). Está no entanto sujeto a erros que pela natureza ncremental do método podem crescer muto depressa e sem controlo. Sensores para Odometra Codfcadores (Encoders) Óptcos (absolutos e ncrementas) Magnétcos Capactvos Calculo da Odometra Seja: D = dâmetro da roda P v = número de pulsos por volta r = relação de transmssão motor/roda Qual o deslocamento do robô por pulso? k = π.d/r.p v = deslocamento por pulso L E Potencómetros Apresentam uma resstênca proporconal a um deslocamento angular. Normalmente lmtados a sstemas com poucas revoluções (menos de uma, por vezes) Tacómetros Dspostvos que medem uma velocdade angular e, através de transformações adequadas, uma velocdade lnear. P E = número de pulsos na roda esquerda após tempo T P D = número de pulsos na roda dreta após tempo T L E = k.p E = Deslocamento da roda esquerda após temo T L E = k.p D = Deslocamento da roda dreta após tempo T L D
Posconamento relatvo Posconamento relatvo Calculo da Odometra Erros da Odometra LE + L Dstânca percorrda pelo ponto médo do robô: L = D Da fgura obtém-se: tg ( θ ) = LD - L D E D L E θ Erros sstemátcos: Rodas com dâmetros dferentes Rodas não alnhadas Valor médo do dâmetro dferente do exo nomnal Encoder de resolução fnta e tempo de amostragem dscreto Como θ << 1, podemos consderar Assm: θ = θ + θ -1 y = L sen( θ ) x = L cos( θ ) x = x + x -1 θ = LD - L D Na fgura θ parece gual a θ, porque para efetos de representação θ -1 = 0. E L L D x θ y Erros não-sstemátcos Movmento em terreno rregular Derrapagem das rodas Solo escorregado Grandes acelerações Forças nternas (rodas de apoo) Forças externas (nteracção com obstáculos) Rodas sem apoo y = y + y -1 Posconamento relatvo Posconamento relatvo Erros da Odometra Regão de ncerteza Navegação nercal A navegação nercal basea-se na medção da rotação e aceleração, usando respectvamente groscópos e acelerómetros. Os valores meddos são ntegrados uma vez (ou duas vezes no caso dos acelerómetros), para determnar a posção. É também um sstema auto-contdo e está sujeto a erros ncrementas devdo à ntegração ao longo do tempo. Sensores para navegação nercal Groscópos Acelerómetros
Posconamento absoluto Por farós Os farós são dspostvos que permtem obter nformação sobre pontos do mundo exteror cuja localzação é conhecda. Os farós envam essa nformação ao robô por va óptca ou rádo, a qual é depos usada para determnar a posção do robô através de trangulação ou trlateração. Posconamento absoluto Trlateração A posção do robô é determnada com base na dstânca deste a um conjunto de farós. Exstem duas confgurações típcas: 3 ou mas farós em localzações conhecdas e um receptor no robô, ou um transmssor no robô e receptores em localzações conhecdas. O sstema GPS é um exemplo de um sstema que usa trlateração. Posconamento absoluto Posconamento absoluto Trangulação A posção (x 0, y 0 ) e a orentação θ 0 do robô são determnadas a partr dos ângulos θ 1, θ 2, e θ 3, que o snal emtdo por três farós de coordenadas conhecdas, faz com o exo de drecção do robô Y F 1 y θ 2 θ 1 F 2 Trangulação vs. Dead-Reckonng Atrbuto Processo Requer condções ncas? Erros Dead-Reckonng Integração de varáves cnemátcas Sm Dependem do tempo Trangulação Resolução de sstema de equações nãolneares. Não Dependem da posção Y 0 θ 3 X 0 θ 0 F 3 x X Frequênca de actualzação Propagação do erro Requer marcas especas no ambente? Determnada pela precsão desejada Depende das estmatvas anterores Não Determnada apenas pelos requstos de actualzação Não depende das estmatvas anterores Sm
Posconamento absoluto Posconamento por marcas As marcas são snas que o robô detecta e que lhe permtem determnar a sua posção usando métodos semelhantes aos usados com os farós, e/ou comparando as marcas com mapas do mundo. Posconamento absoluto Marcas Artfcas São objectos ou marcadores especalmente desenhados para serem usados como pontos de referênca para a navegação do robô. Adqurr nformação sensoral Detectar e segmentar as marcas Determnar correspondênca entre os dados sensoras e o mapa do mundo Calcular a posção A detecção é muto mas fácl neste caso porque as marcas são especalmente desenhadas para que sso aconteça. Para além dsso as marcas são conhecdas à partda o que smplfca os algortmos de detecção e e correspondênca. Tal como no caso das marcas naturas, mutos sstemas de posconamento são baseados em vsão por computador. Outros usam códgos de barras como marcas. Detectar e determnar correspondêncas, são as tarefas mas complexas. Após ter sdo determnada a correspondênca, podemos usar trangulação para calcular a posção do robô. As marcas artfcas são também usadas como base de sstemas de navegação, como é o caso da navegação por lnha, onde um cabo normalmente enterrado no solo, ou uma fta reflectora servem de gua para os chamados Automatc Guded Vehcles (AGVs) Posconamento absoluto Marcas naturas São objectos ou característcas do meo ambente cuja função especfca não é o auxlo na navegação de robôs, mas que podem ser usados como pontos de referênca caso sejam detectados pelo robô. Um sstema de posconamento baseado em marcas naturas tem as seguntes característcas: Posconamento absoluto Posconamento por mapas O robô usa a nformação sensoral para construr um mapa do seu meo ambente. Este mapa é depos comparado com um mapa global prevamente armazenado em memóra. Se for encontrada uma correspondênca o robô poderá calcular a sua posção e orentação actual. Sensores (vsão por computador), para detectar marcas naturas (arestas vertcas, portas, esqunas de corredores, etc), e contrasta-las com o fundo. Um método para determnar a correspondênca entre as marcas observadas e um mapa de marcas conhecdas. Adqurr nformação sensoral Construr mapa local Determnar correspondênca entre o mapa local e o mapa global Calcular a posção Um método para calcular o posconamento e possíves erros, a partr das correspondêncas. O posconamento por mapas permte ao robô apreender um novo meo ambente através da exploração. Pode também ser usado para gerar actualzações de mapas que são mportantes em outras tarefas da navegação como por exemplo o planeamento de camnhos.
Posconamento absoluto Posconamento por mapas O mapa é o ponto de partda para a maora das acções de navegação, em especal para: Posconamento absoluto Classfcação e característcas de mapas a sua construção (se o não houver, e se for necessáro) o planeamento (prever camnhos a percorrer) o guamento (saber onde se está ao executar um camnho) A estrutura dos mapas é essencal para: procura efcente no mapa recuperação efcente de um camnho Estes últmos requstos podem ser confltuosos, por sso, a estrutura de dados para representar o mapa normalmente determna o algortmo a usar. http://www.mec.ua.pt/actvtes/dscplnas/robotcaautonomamovel/sldesaulas2003/4-navegacao-introducao_fles/frame.htm Posconamento absoluto Construção de Mapas O robô poderá já ter um mapa em memóra, ou poderá ter que construr o seu própro mapa. Caso tenha que o construr o robô deverá ser capaz de segur uma estratéga exploratóra com o objectvo de explorar a maor área possível no menor tempo. O mapa é construído com a nformação obtda pelos sensores, por exemplo dstâncas a obstáculos detectados por sensores ultrasóncos. Alguns nvestgadores defendem o uso de mas do que um tpo de sensores para capturar todos os detalhes relevantes do meo ambente. O processo de combnar dados provenentes de dferentes sensores é conhecdo por sensor fuson. Posconamento absoluto Grelhas de ocupação Método que fragmenta o ambente numa grelha e atrbu a uma probabldade de ocupação a cada célula. Essa probabldade é ncalmente 50% (estado desconhecdo) e após as sucessvas leturas dos sensores será refnada. Há dversas formas de actualzar os valores das células. O mas smples é de o fazer a cada nova medda. Se, por exemplo, esse valor varar de um grande passo (10%, ou mas) o mapa pode atngr rapdamente a forma fnal mas será muto mas sensível a meddas erradas (ruído) Há essencalmente duas formas prncpas para a (re)construção de ambentes Grelhas de ocupação (raster maps) Mapa de característcas (vector maps)
Posconamento absoluto Mapa de característcas Obtdos com um método que consste na detecção de propredades do ambente e construr uma defnção analítca do mapa do ambente (mapas vectoras), através da determnação de lnhas (2D), áreas (3D), cores, texturas, etc. Posconamento absoluto Correspondênca entre mapas (Map matchng) Os algortmos podem ser classfcados como sendo do tpo conc-based ou feature-base. No prmero caso procura-se uma correspondênca entre a nformação obtda pelos sensores e a sua correspondente representação no mapa. No segundo caso procura-se uma correspondênca entre um conjunto de característcas dentfcado na nformação obtda pelos sensores e a sua correspondente representação no mapa