IDENTIFICAÇÃO DA DINÂMICA DE UM ROBÔ MÓVEL A PARTIR DE UMA REDE NEURAL ARTIFICIAL DO TIPO MULTI-LAYER PERCEPTRON Stéfano Coelho Santos (bolsista do PIBIC/CNPq), José Medeiros de Araújo júnior (Orientador, Departamento de Engenharia Elétrica – UFPI) Introdução A robótica é um ramo da tecnologia que estuda o desenvolvimento de máquinas controladas por circuitos integrados. Neste ramo, tem se destacado o uso de sistemas denominados de robótica móvel, uma área de ampla aplicação não só na indústria, mas também, por exemplo, na vida doméstica. O trabalho conjunto de especialistas das áreas de engenharia elétrica, engenharia mecânica e ciência da computação tem permitido o aperfeiçoamento constante no controle de robôs móveis, proporcionando maior eficiência na otimização desses sistemas. Uma das técnicas usadas para se aperfeiçoar sistemas como estes são as redes neurais artificiais (RNAs). Uma rede neural artificial (RNA) é um tipo de processador constituído de unidades de processamentos distribuídas paralelamente, mais simples que a estrutura de neurônios do cérebro. Ou seja, o processamento de informações de uma rede neural se assemelha ao processamento do cérebro, já que o conhecimento adquirido pela rede também se dá a partir de um processo de aprendizagem por meio de seu ambiente de estudo. Além disso, assim como no cérebro, o armazenamento de conhecimento na rede neural é obtido por meio de conexões entre as unidades de processamento, através de forças de conexão conhecidas como pesos sinápticos. Este procedimento é conhecido como algoritmo de aprendizagem. No presente trabalho, a rede neural será aplicada na identificação de um modelo não linear que represente a dinâmica do Robotino, que é um robô móvel didático fabricado e desenvolvido exclusivamente para o treinamento no campo de automação e tecnologia. Este robô possui utilização em diversas linhas de desenvolvimento, pois além de sua capacidade física para implementação de aplicações diversas, permite desenvolver uma navegação autônoma através da criação de algoritmos de controle por meio de programação. Com a realização da identificação de um modelo que represente a dinâmica do Robotino, é possível otimizar o seu funcionamento por meio da utilização deste modelo no controle de posição e velocidade, bem como no auxílio aos sistemas de sensores do robô. Metodologia Para o desenvolvimento deste trabalho, foi utilizado o Robotino, um robô móvel desenvolvido para fins de pesquisa educacional, fabricado pela Festo Didactic. Inicialmente foram feitos testes com o robô, para que se tivesse o conhecimento e domínio necessário para implantação do projeto a ser desenvolvido. Para os testes, além do robô, foram utilizados o simulador Robotino® SIM Demo e o software de programação Robotino® View, também fornecidos pela Festo Didactic. Através da figura 1 a seguir é possível visualizar o sistema de robô móvel (Robotino) utilizado. Figura 1. Robotino Com a conclusão dos testes realizados, desenvolveu-se uma rede neural artificial através do MatLab, um software de programação. Em seguida, a rede foi associada ao robô móvel, com o objetivo de aplicá-la na identificação da dinâmica do robô. Para a obtenção das amostras de dados a serem utilizadas nas etapas de treinamento e validação do treinamento da rede neural, utilizou-se a interface de simulação do Robotino juntamente com a linguagem de programação do software MatLab. Resultados e Discussões Foram testadas diversas configurações de rede, variando-se o número de neurônios de camada oculta, a magnitude dos grupos de dados para o treinamento e validação do modelo encontrado. Os melhores resultados foram obtidos a partir do grupo de dados de 1300 amostras, com a MLP apresentando uma estrutura 3:4:3 (3 neurônios de entrada, 4 neurônios na camada oculta, 3 neurônios de saída). O erro médio quadrático (EMQ) de treinamento foi de aproximadamente 0,0116, sendo sua curva de convergência apresentada na figura 2 a seguir. Figura 2. Erro médio quadrático. Embora a rede neural possa estimar as velocidades nas direções frontal e lateral, no presente trabalho optou-se por estimar a dinâmica do omnidrive apenas em termos de ômega, que é a variável que representa o deslocamento angular do robô. Em futuros trabalhos, na validação do modelo dinâmico do omnidrive, serão consideradas as velocidades nas direções frontal e lateral em conjunto com o deslocamento angular. O gráfico de validação na direção ômega do modelo dinâmico construído através de uma MLP está representado pela figura 4. Figura 4. Validação do modelo neural obtido – Linha preta: Deslocamento angular real; Linha vermelha: deslocamento angular estimado pela rede neural. Conclusão Com os testes desenvolvidos no início do trabalho, foi possível obter uma excelente compreensão acerca do Robotino e suas capacidades. Isso possibilitou a construção de uma boa linha de raciocínio e desenvolvimento para o projeto. Tendo como base os conhecimentos adquiridos no início do projeto, foi feito um estudo direcionado à criação de uma rede neural artificial com o objetivo de identificar a dinâmica do omnidrive do Robotino. O trabalho foi consolidado através da implementação da RNA utilizando os dados coletados durante todo o projeto. Sendo assim, pretende-se que a aplicação de uma rede neural para modelagem da dinâmica do Robotino, faça com que o mesmo execute seus movimentos de uma forma mais dinâmica e inteligente. Dessa forma, conclui-se que, o êxito na conclusão do projeto foi essencial para objetivo criado no início da pesquisa. Referências 1. HAYKIN, Simon. Redes neurais: princípios e prática. trad. Paulo Martins Engel. 2.ed. - Porto Alegre: Bookman, 2001. 2. CAMARGO, J. T. Franco; VERASZTO, E. Vizconde; BARRETO, Gilmar. Simulação do modelo cinemático inverso de um robô através do uso de redes neurais artificiais: um complemento ao ensino de robótica. COBENGE – Congresso Brasileiro de Educação em Engenharia, São Paulo, 2014. 3. WEBER, Ralph-Christoph. Robotino Manual. Festo Didactic – Denkendorf, Germany, 2007.