• Nenhum resultado encontrado

Ainda para o caso do quadrado de 10 cm de lado, a figura 4.13 apresenta a trajectória do robô com base na informação recebida pelos encoders. São notórios ligeiros desvios na mudança de direcção ao comparar com a figura 4.8 que descreve a trajectória planeada. A figura 4.14, ampliada na figura 4.15, apresenta a trajectória do ponto entre rodas com base na leitura dos encoders, permitindo compreender a forma como o robô se desloca para que se consiga produzir o quadrado. A figura 4.16 apresenta o resultado produzido pelo robô ao realizar o quadrado conforme planeado na figura 4.7.

Figura 4.13: Leituras dos encoders para uma trajectória que descreve um quadrado com 10 cm de lado.

Apesar de a trajectória estimada pelas leituras dos encoders ser aproximadamente um quadrado (fig. 4.13), o quadrado real é bastante diferente, sendo evidente que o ângulo interior é superior a 90◦ na segunda mudança de direcção. Este facto contribui para que o quadrado não seja fechado, faltando cerca de 6 mm para que isso aconteça. Para além do desvio induzido pelo deslize das rodas, já expec- tável na localização baseada em odometria como visto no capítulo 2.4.1, existem algumas questões dimensionais que se consideram relevantes e que contribuem para o mesmo desvio. Tais questões são o facto de as rodas não estarem totalmente perpendiculares ao corpo do robô, como pode ver ser visto em duas perspectivas distintas apresentadas na figura 4.17.

4.3 - Odometria 71

Figura 4.14: Trajectória do ponto entre rodas na descrição de um quadrado com 10 cm de lado com base nas leituras dos encoders.

(a) Primeira ampliação.

(b) Segunda ampliação.

Figura 4.15: Trajectória do ponto entre rodas na descrição de um quadrado com 10 cm de lado com base nas leituras dos encoders.

Figura 4.16: Resultado produzido pelo robô com localização baseada em odometria para uma trajec- tória que define um quadrado com 10 cm de lado.

(a) Perspectiva superior.

(b) Perspectiva frontal.

4.4 - Calibração 73

4.4

Calibração

Sabendo que f (ρ) = a0+ a2ρ

2+ ... + a

N, tal como apresentado na equação 2.29, é apresentado na

figura 4.18 o gráfico da função f (ρ) para o caso da câmara utilizada. É ainda apresentado o ângulo do raio óptico em função da distância euclidiana ao centro da imagem ρ. Estes gráficos, apesar de serem únicos para cada conjunto câmara e lente, apenas permitem ter uma noção de como se comporta a função f (ρ) e de que forma é que os raios ópticos incidem na lente, desta forma, não são mais do que características intrínsecas à câmara. O facto de os valores das ordenadas apresentarem um valor negativo é devido à escolha do referencial pelo autor da toolbox, tal como pode ser observado na figura 4.19. Nesta, são apresentados os planos para cada configuração do tabuleiro de xadrez utilizadas na calibração da câmara. Exemplos destas configurações são apresentadas na imagem 4.20, onde se encontram também a identificação dos cantos de cada quadrado, o centro de imagem calibrado e os eixos do referencial do tabuleiro, sendo que todos estes parâmetros foram obtidos através do cálculo da calibração. Na figura 4.21 é apresentada a distribuição do erro na estimação da posição de cada canto do tabuleiro de xadrez para as diferentes configurações, cada uma correspondente a uma cor. Com estes resultados é visível que a identificação dos cantos e a definição dos eixos que definem o plano do tabuleiro são satisfatórios e não se apresentam desvios. A dispersão do erro para cada ponto do tabuleiro apresenta-se bastante concentrado, tendo em conta que a figura é apresentada em píxel.

Figura 4.18: Função f (ρ) e ângulo do raio óptico em função da distância euclidiana ao centro da imagem.

Figura 4.19: Representação dos planos de cada tabuleiro de xadrez utilizado para a calibração.

(a) Primeiro caso. (b) Segundo caso.

Figura 4.20: Exemplos de imagens do tabuleiro de xadrez utilizadas na calibração com a representa- ção dos cantos identificados, o centro da imagem calibrada e os eixos cartesianos definidos.

Figura 4.21: Distribuição do erro na projecção para cada ponto do tabuleiro de xadrez para as dife- rentes configurações do mesmo (em píxel).

4.5 - Transformação de imagem 75

4.5

Transformação de imagem

Como mencionado em 3.6, a resolução utilizada para as imagens foi 800 × 600 para que não houvesse demasiada informação a ser processada e consequente aumento do tempo de computação do modelo. O parâmetro experimental atribuído foi f c = 5. A imagem original é apresentada em 4.22a onde se tem a câmara apontada para o tecto e é clara a deformação induzida pela lente de olho de peixe. A figura 4.22b apresenta a mesma imagem após sofrer a alteração imposta pelo algoritmo de transfor- mação de imagem proposto em 3.8. O motivo de se apresentarem regiões a preto com o formato de hipérboles está relacionado com o facto de a câmara utilizar uma perspectiva cónica.

De uma forma simples, a imagem original não é mais do que uma imagem circular ou elipsoidal. Para a imagem estar representada no mesmo plano, será necessário excluir os pontos que se encontram fora do mesmo quando representados na nova imagem transformada. Como se pode verificar, a imagem transformada apresenta o tecto todo com a mesma profundidade. Ao observar o canto da sala, é notório o resultado satisfatório, pois as linhas apresentam-se perpendiculares entre si.

(a) Não transformada. (b) Após o algoritmo de transformação de imagem. Figura 4.22: Imagem captada pela câmara.

4.6

Identificação de beacons

Como é visível na figura 4.22a, a imagem é demasiado clara para que seja possível distinguir as cores de cada beacon, sendo que neste caso o código de cor RGB que o beacon apresenta é perto da cor branca. Para resolver este problema, conseguindo produzir a imagem apresentada em 4.23, utilizou- se um tempo de exposição bastante pequeno. Por comparação a imagem 4.22a, é conseguida com um tempo de exposição superior. Esta solução não dá tempo suficiente ao sensor para ler os feixes de luz necessários para definir a luminosidade real do espaço, evidenciando as cores dos beacons visto que a imagem, apesar de o ambiente apresentar bastante contra-luz, está altamente escurecida.

Figura 4.23: Imagem captada pela câmara com um baixo tempo de exposição.

A binarização tendo em conta a tolerância, tal como descrito em 3.6 é apresentada na figura 4.24 onde se mostra a identificação do beacon da cor azul (cor definida para o presente exemplo) apresentada pela mancha amarela, juntamente com o ponto médio desta identificação apresentado pela cruz preta. Identificada a coordenada do píxel de interesse, este é identificado na imagem transformada, tal como pode ser visto na figura 4.25, onde para além do beacon está representado o ponto correspondente ao centro da imagem calibrada.

4.7 - Filtro de Kalman estendido 77

Figura 4.25: Imagem captada pela câmara com um baixo tempo de exposição após o algoritmo de transformação de imagem.

4.7

Filtro de Kalman estendido

Para aplicar o método apresentado na secção 3.10 para o filtro de Kalman estendido foram definidas, através de experimentação, as matrizes de covariância associadas ao estado inicial (P), à perturbação (Q) e à medição (R): P =      0.0052 0 0 0 0.0052 0 0 0 0.01752      Q =   0.0012 0 0 0.0012   R =      0.0052 0 0 0 0.0052 0 0 0 0.01752     

Na implementação do método definiu-se uma tolerância de 5cm entre a estimação dada pelo filtro de Kalman estendido e a odometria. Caso essa tolerância seja ultrapassada, um novo planeamento de trajectória é definido que assume como condição inicial a estimação dada pelo filtro de Kalman estendido. A observação introduzida no filtro é dada pelo algoritmo de localização baseada em visão descrito na secção 3.9.

Com as matrizes definidas, foi realizada uma experiência onde se definiu como trajectória uma linha recta com 10cm e onde as leituras da odometria, da localização baseada em visão e do filtro de Kalman estendido são apresentadas na figura 4.26. A dispersão das leituras por parte do algoritmo da visão são notáveis, contudo, tendo em conta a ordem de grandeza da variação dos valores, considera-se que a estimação por parte do filtro de Kalman estendido apresenta resultados coerentes. Os pontos mais distantes medidos por parte da visão, quando avaliados perpendicularmente à trajectória encontram- se a sensivelmente 4mm, permitindo definir a dispersão das leituras como aceitável para o estudo em questão.

Figura 4.26: Leituras de odometria, visão e estimação do filtro de Kalman estendido para uma trajec- tória de 10cm.

Uma vez que os resultados por parte da visão e do filtro de Kalman estendido para a primeira experi- ência não apresentaram desvios consideráveis nem leituras incoerentes, procedeu-se a uma tentativa de obter um quadrado com 10cm de lado, caso utilizado para o algoritmo de planeamento e odome- tria. O resultado para a segunda experiência é apresentado na figura 4.27. As interrupções na linha da odometria (verde) significam que a tolerância definida foi atingida, e que portanto uma nova trajectó- ria foi planeada com base na estimação utilizada para comparação (linha magenta). Por observação do gráfico é visível que o resultado pretendido não é conseguido, sendo produzida uma linha curva e não uma linha recta. Ao analisar os dados utilizados para a estimação, é notório que a odometria força o sistema a afastar-se da desejada perpendicularidade de trajectórias enquanto que a visão ac- tua no sentido contrário. A estimação está mais próxima da trajectória definida pela visão, o que se considera positivo uma vez que a odometria apresenta uma tendência não desejável. Esta poderá ser

4.7 - Filtro de Kalman estendido 79

explicada pelas folgas mecânicas, irregularidades no solo onde o robô opera e deslizes das rodas que apresentam maior influência quando uma rotação é induzida no robô. Uma vez que foi definido um comprimento de 10cm para a segunda trajectória é claro por análise da figura 4.27 que essa dimensão é ultrapassada. Isto poderá ser explicado pelo facto de a estimação ter passado "ao lado"da coorde- nada alvo, e fora da tolerância definida de 5cm. Desta forma, o robô irá apresentar uma trajectória em espiral onde procura tentar alcançar o ponto definido como alvo.

Figura 4.27: Leituras de odometria, visão e estimação do filtro de Kalman estendido para duas trajec- tórias perpendiculares de 10cm.

O resultado experimental é apresentado na figura 4.28, onde é descrita a trajectória curvilínea no segundo troço da operação. No primeiro troço, não são atingidos os 10cm inicialmente planeados, apresentado cerca de 1cm de erro. É difícil quantificar o erro associado ao segundo troço visto que o algoritmo não reconhece que a coordenada alvo foi atingida, contudo é notório que existe um desvio da trajectória mais acentuado a cerca de 5cm da intersecção das trajectórias. Ao acentuar cada vez mais esta curva, é visível o inicio da trajectória espiral já descrita.

(a) Primeira trajectória. (b) Segunda trajectória. Figura 4.28: Resultado experimental para duas trajectórias perpendiculares de 10cm.

Na figura 4.29 é introduzida uma medição do resultado real, denominado ground truth. Um exemplo de medição é apresentado na figura 4.30. Contudo, é difícil de transpor o espaço de trabalho definido pelos beacons para o espaço onde o robô opera. Desta forma, considera-se que as medições de ground truthsão pouco fiáveis, uma vez que deveriam estar relativamente próximas da estimação do filtro.

Figura 4.29: Leituras de ground truth, visão e estimação do filtro de Kalman estendido para duas trajectórias perpendiculares de 10cm.

4.7 - Filtro de Kalman estendido 81

Figura 4.30: Exemplo de uma medição efectuada através dos instrumentos de medida.

Tendo em conta os problemas impostos pelas questões dimensionais do robô, pela construção dos beaconse pela correcta definição do espaço de trabalho a partir do qual se determina o ground truth, considera-se que a abordagem para o filtro de Kalman estendido produz resultados coerentes, apesar de não atingir os valores desejados. Outra observação a ter em conta é o facto de os resultados obtidos a partir da visão serem os mais aproximados ao valores de ground truth apesar de estes não serem fiáveis.

Capítulo 5

Conclusões e desenvolvimentos futuros

Na presente dissertação foi apresentada uma abordagem para um robô móvel de tracção diferencial com localização baseada em visão com o intuito de ser aplicado em máquinas-ferramenta. Para de- senvolver o protótipo e os beacons foram utilizados componentes pouco dispendiosos, que permitem fazer uma primeira avaliação ao problema proposto. Procurando obter uma boa precisão durante a operação do robô, um primeiro desafio foi apresentado pela odometria onde existe um deslize por parte das rodas e folgas mecânicas que é necessário contornar. Outro problema apresentado pela odo- metria são as irregularidades do espaço de trabalho, que potenciam fortemente o fenómeno de deslize das rodas. Na tentativa de minimizar esse erro, surge a localização baseada em visão. Nesta abor- dagem revelou-se importante conseguir uma boa calibração do conjunto câmara-lente. Através dos resultados apresentados, é visível o quão desviado o centro da câmara está quando comparado com o centro da imagem captada. Este é um parâmetro importante quando se pretende avaliar distâncias relativamente à câmara. Outra mais valia do processo de calibração é a determinação dos parâmetros intrínsecos da câmara, que permitem retirar, através do algoritmo de transformação de imagem pro- posto, a deformação imposta pela lente. A transformação implica que a imagem final fique com uma resolução inferior à original, evidenciando a importância de uma câmara com capacidade de capturar imagens de elevada resolução. Desta forma, considera-se um correcto processo de calibração funda- mental para que a localização baseada em visão seja fiável. Uma vez que o protótipo apenas dispõe de uma única câmara, não se tem informação de profundidade sendo a sua quantificação um parâmetro experimental, pois é necessário saber a que distância se encontram determinados pontos observados e conhecidos para que seja possível definir um plano a essa profundidade. As avaliações de distâncias no dito plano relacionam-se com o plano da câmara através de um factor de escala. Uma vez que os beacons estão implementados no espaço de trabalho em posições conhecidas e todos à mesma altura (também esta conhecida), é possível utilizar uma única câmara, simplificando a abordagem da localização baseada em visão.

Na abordagem proposta para a identificação de beacons, recorre-se a um rastreamento de referências RGB. Esta solução requer algum cuidado, pois os níveis de iluminação no espaço tendem a variar consoante a altura do dia, não permitindo que os valores para as referências dos beacons sejam sempre constantes. O sensor da câmara revelou-se altamente sensível às ditas variações de luminosidade, reagindo a situações ténues como a passagem de uma nuvem, uma sombra por parte de uma pessoa no espaço de trabalho ou uma fonte luminosa distante que influencia muito pouco o espaço de trabalho do robô.

O algoritmo de localização baseado em visão, assumindo que os beacons são devidamente identifica- dos, é de simples implementação e apresenta um custo computacional reduzido, calculando a posição relativa do robô relativamente a pares distintos de dois beacons. Para o caso em estudo foram utili- zados três pares distintos que produziram resultados satisfatórios que poderiam ser melhorados com sucessivas adições de novos beacons.

Na implementação do filtro de Kalman estendido é evidente a limitação do hardware: a incapacidade de obter um ground truth fiável, o facto de os suportes para os beacons não permitirem definir posi- ções e alturas rigorosas, o facto de a imagem transformada apresentar uma resolução relativamente baixa, a variação das referências RGB dos beacons e as irregularidades no espaço de trabalho que potenciam os problemas inerentes à odometria, todas estas contribuem para que haja uma incerteza associada à conjugação de todas as medições. Para ser possível ao filtro compensar todos estes erros, seriam necessários múltiplos testes para tentar determinar o erro associado a cada leitura efectuada por cada um destes sistemas, em particular o da localização baseada em visão que é a informação que é introduzida como a referência para correcção. Outro aspecto importante seria uma definição rigorosa do ground truth, que permitiria avaliar se a trajectória real produzida pelo robô se encontrava maioritariamente dentro do raio de covariância da estimação produzida pelo filtro. Esta avaliação se- ria conseguida com, por exemplo, múltiplas câmaras estéreo exteriores ao sistema, capazes de avaliar a posição real do robô.

Apesar dos resultados apresentados não reflectirem precisão suficiente para a aplicação pretendida, onde se pratica operações à escala do milímetro, considera-se que controlando os erros descritos através das sugestões propostas poder-se-á obter resultados mais adequados.

85

Desenvolvimentos futuros

Para desenvolvimento futuro, propõe-se reformular o algoritmo de segmentação para melhor identifi- car as regiões identificadas de cada beacon. Para tal seria necessário adquirir valores para as referên- cias RGB para cara beacon ao longo de diferentes horas do dia e em diferentes posições no espaço de trabalho. Posteriormente, a partir da resposta da localização baseada em visão e do erro (calculado relativamente ao ground truth) criar-se-ia um algoritmo de ajuste automático dos thresholds. Como outra alternativa para a melhoria do resultado por parte da visão propõe-se a consideração de mais beaconsno espaço de trabalho.

Propõe-se também a implementação de um servo responsável pela actuação do instrumento de escrita. Para além de aumentar a proximidade da realidade da actuação de uma máquina ferramenta, permitiria corrigir pequenos desvios sem que fosse necessário alterar a trajectória do robô.

Outra abordagem a considerar seria a implementação de uma segunda câmara para que a informação acerca da profundidade seja conseguida. Desta forma, a preocupação com o conhecimento da altura dos beacons deixaria de existir.

Referências

O. A. Aider, P. Hoppenot, and E. Colle. A model-based method for indoor mobile robot localization using monocular vision and straight-line correspondences. Robotics and Autonomous Systems, 52 (2?3):229 – 246, 2005. ISSN 0921-8890. (Cit. em 5.)

J. P. Barreto and H. Araujo. Issues on the geometry of central catadioptric image formation. In Com- puter Vision and Pattern Recognition, 2001. CVPR 2001. Proceedings of the 2001 IEEE Computer Society Conference on, volume 2, pages II–422–II–427 vol.2, 2001. (Cit. em 32.)

G. Beccari, S. Caselli, F. Zanichelli, and A. Calafiore. Vision-based line tracking and navigation in structured environments. In Computational Intelligence in Robotics and Automation, 1997. CIRA’97., Proceedings., 1997 IEEE International Symposium on, pages 406–411, Jul 1997. (Cit. em 8.)

F. P. Beer, F. Beer, E. R. Johnston, P. J. Cornwell, and E. Eisenberg. Vector Mechanics for Engineers: Dynamics. McGraw-Hill Higher Education, 9th edition, 2009. ISBN 0390994162,9780390994165. (Cit. em 42.)

J.-Y. Bouguet. Camera calibration toolbox for matlab. Dept. of Electrical Engineering, California Institute of Technology. URL http://www.vision.caltech.edu/bouguetj/calib_ doc/index.html. Acedido em 16-10-2016. (Cit. em 10.)

F. Calabrese and G. Indiveri. An omni-vision triangulation-like approach to mobile robot localization. In Proceedings of the 2005 IEEE International Symposium on, Mediterrean Conference on Control and Automation Intelligent Control, 2005., pages 604–609, June 2005. (Cit. em 58 e 59.)

Z. Chen and S. T. Birchfield. Qualitative vision-based mobile robot navigation. In Proceedings 2006 IEEE International Conference on Robotics and Automation, 2006. ICRA 2006., pages 2686–2692, May 2006. (Cit. em 6.)

G. Cook. Mobile Robots: Navigation, Control and Remote Sensing. John Wiley & Sons, 1 edition, 2011. ISBN 0470630213,9780470630211. (Cit. em 19.)

P. Corke. Robotics, Vision and Control: Fundamental Algorithms in MATLAB. Springer Tracts in Advanced Robotics 73. Springer-Verlag Berlin Heidelberg, 1 edition, 2011. ISBN 3642201431,9783642201431. (Cit. em 12, 13, 14, 17, 33 e 57.)

S. Department. Statistical Department, International Federation of Robotics. URL http://www. ifr.org/industrial-robots/statistics/. Acedido em 16-10-2016. (Cit. em 2.) M. W. M. G. Dissanayake, P. Newman, S. Clark, H. F. Durrant-whyte, and M. Csorba. A solution to

the simultaneous localization and map building (slam) problem. IEEE Transactions on Robotics and Automation, 17:229–241, 2001. (Cit. em 8.)

P. Dyke. An Introduction to Laplace Transforms and Fourier Series. Springer Undergraduate Mathe- matics Series. Springer-Verlag London, 2 edition, 2014. ISBN 978-1-4471-6394-7,978-1-4471- 6395-4. (Cit. em 23.)

M. Fiala and A. Basu. Robot navigation using panoramic tracking. Pattern Recognition, 37(11):2195 – 2215, 2004. ISSN 0031-3203. (Cit. em 7.)

M. Frye. Elementary motion detectors. Current Biology, 25(6):R215 – R217, 2015. ISSN 0960-9822. (Cit. em 8.)

R. Gartshore, A. Aguado, and C. Galambos. Incremental map building using an occupancy grid for an autonomous monocular robot. In Control, Automation, Robotics and Vision, 2002. ICARCV 2002. 7th International Conference on, volume 2, pages 613–618 vol.2, Dec 2002. (Cit. em 5.) J. Gaspar, N. Winters, and J. Santos-Victor. Vision-based navigation and environmental represen-

tations with an omnidirectional camera. IEEE Transactions on Robotics and Automation, 16(6): 890–898, Dec 2000. ISSN 1042-296X. (Cit. em 7.)

C. Geyer and K. Daniilidis. Catadioptric projective geometry. International Journal of Computer Vision, 45(3):223–243, 2001. ISSN 1573-1405. (Cit. em 30 e 31.)

S. B. Goldberg, M. W. Maimone, and L. Matthies. Stereo vision and rover navigation software for planetary exploration. In Aerospace Conference Proceedings, 2002. IEEE, volume 5, pages 5– 2025–5–2036 vol.5, 2002. (Cit. em 7.)

R. F. Graf. Modern Dictionary of Electronics. Newnes, 7 edition, 1999. ISBN 0750698667,9780750698665. (Cit. em 50.)

J. Guivant and E. Nebot. Optimization of the simultaneous localization and map building algorithm for real time implementation. IEEE Transactions on Robotics and Automation, 17:242–257, 2001. (Cit. em 9.)

REFERÊNCIAS 89

M. Gutiérrez. El grupo ortogonal. Departamento de Álgebra, Geometría y Topología de la universi- dade de Málaga, Nov. 2005. (Cit. em 15.)

I. Horswill. Visual collision avoidance by segmentation. In Intelligent Robots and Systems ’94.

No documento Robô móvel para máquinas-ferramenta (páginas 96-118)

Documentos relacionados