UNIVERSIDADE FEDERAL DO ABC MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Evolução da infraestrutura embarcada do projeto VERO considerando integração e migração de.

Slides:



Advertisements
Apresentações semelhantes
Sistemas Distribuídos Baseados em Objetos
Advertisements

Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Middlewares para Sistemas Embarcados (Embutidos)
Sistemas Distribuídos:Definições e Caracteristicas
Sistemas Distribuídos
Grid Anywhere Um Middleware Extensível para Grades Computacionais
Co-projeto de Sistemas Operacionais
1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)
Área de Desenvolvimento de Sistemas
Arquiteturas de Alto Desempenho
TIPOS DE TESTES APLICÁVEIS E NÃO APLICÁVEIS AO PROJETO
UNIVERSIDADE FEDERAL DO ABC MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Modelando restrições de Tempo Real no Orca Disciplina: Metodologia de Pesquisa em Computação.
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
UNIVERSIDADE FEDERAL DO ABC MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Evolução da infraestrutura embarcada do projeto VERO considerando integração e migração de.
UNIVERSIDADE FEDERAL DO ABC MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Evolução da infraestrutura embarcada do projeto VERO considerando restrições de Tempo Real.
UNIVERSIDADE FEDERAL DO ABC MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Evolução da infraestrutura embarcada do projeto VERO considerando restrições de Tempo Real.
UNIVERSIDADE FEDERAL DO ABC MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Evolução da infraestrutura embarcada do projeto VERO considerando integração e migração de.
UNIVERSIDADE FEDERAL DO ABC MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Evolução da infraestrutura embarcada do projeto VERO considerando integração e migração de.
UNIVERSIDADE FEDERAL DO ABC MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Evolução da infraestrutura embarcada do projeto VERO considerando integração e migração de.
UNIVERSIDADE FEDERAL DO ABC MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Evolução da infraestrutura embarcada do projeto VERO considerando integração e migração de.
1 Felipe L. SeverinoPDP Enhancing Grids for Massively Multiplayer Online Computer Games Felipe L. Severino Programação com Objetos Distribuídos paralela.
Objectivos do Curso de Engenharia Informática da ESTT/IPT
Middleware e Sistemas Distribuídos

Porto Alegre, 29 de Junho de 2007 Porto Alegre, 29 de Junho de 2006 PROJETO DE INTERFACE PARA UM SISTEMA DE PROGRAMAÇÃO DE ROTAS DE CAMINHÕES DE UMA DISTRIBUIDORA.
Um estudo exploratório da aplicação da engenharia de software orientada a agentes para o desenvolvimento de ferramentas de suporte a comunidades online.
Arquiteturas de Referência
Sistemas Distribuídos
Carlos Oberdan Rolim Ciência da Computação
Gestão de Redes e Sistemas Distribuídos Teresa Maria Vazão Fevereiro 2003 IST/INESC Contactos:IST/Tagus-Park Tel:
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Metodologia da Pesquisa em Ciência da Computação - INE – Luís Fernando Custódio Seminário de Metodologia GPU em Ambientes Compartilhados.
MAS-ML Tool: Um Ambiente de Modelagem de Sistemas Multi-Agentes
Fotografia automática
1 My GRID: Bio-informática personalizada em uma grade de informação. Francisco Silva
Sistemas Distribuídos
Orientedora: Prof a. Daniela Barreiro Claro Graduando: Anderson Tiago Barbosa de Carvalho Universidade Federal da Bahia Instituto de Matemática Departamento.
Computing on large scale distributed systems: experience of the XtremWeb project CMP-157 PROGRAMAÇÃO PARALELA E DISTRIBUÍDA Prof. Cláudio Fernando Resin.
APLICANDO O PROCESSO DIRIGIDO POR RESPONSABILIDADES PARA A CRIAÇÃO DE UM SUBFRAMEWORK PARA VALIDAÇÃO SINTÁTICA DE FÓRMULAS Autores: Rafael Hornung Simone.
Clique para adicionar texto NetGamesNRT Leonardo de Souza Brasil Orientador: Ricardo Pereira e Silva, Dr.
Sistemas Distribuídos Estrutura de Redes
Sistemas Distribuídos Introdução. Conceito Coleção de múltiplos processos que executam sobre uma coleção de processadores autônomos interligados em uma.
TVDesigner Uma Ferramenta para Criação de Aplicações MHP Interativas para TV Digital Orientador: Prof. Ph.D. Carlos André Guimarães Ferraz Aluno: Djaci.
Da Introdução à Prática
Representação Arquitetural
Processos.
Sistemas Distribuídos
Comunicação.
MONITORAMENTO DE REDE E SERVIDORES UTILIZANDO O CACTIEZ E SNMP
2 Integrantes André Schäffer Breno Neil (Gerente) Caio Lira Eduardo Cavalcanti Felipe Bartolomeu Felipe Maia Filipe Luiz Monteiro Hugo Calazans João Victor.
Clique para adicionar texto NetGamesNRT Leonardo de Souza Brasil Orientador: Ricardo Pereira e Silva, Dr Modelagem do framework Netgames.
UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO PROJETO FINAL
A High Performance Java Middleware with a Real Application HUERT, Fabrice; CAROMEL, Denis; Bal, Henri E. Supercomputing 2004 Trabalho desenvolvido por:
JR: Flexible Distributed Programming in an Extended Java Elmário Gomes Dutra Jr. Gustavo Romano.
Value type-based smart proxies: a concept for adaptable distributed applications Markus Aleksy, Ralf Gitzel ACM International Conference Proceeding Series;
Capítulo 6: SAD – Arquitetura e aspectos de rede e segurança
Desenvolvimento Global de Software
Design and Performance Analysis of a Distributed Java Virtual Machine Felipe Damasio Rita Kalile Almeida Andrade Mihai Surdeanu, Member, IEEE; Dan Moldovan,
Análise de estratégias para implantação de segurança em arquiteturas orientadas a serviços Dezembro/2010 Itabaiana/SE Universidade Federal de Sergipe –
Estilos Arquiteturais
Mestrando Gabriel G. Detoni Orientador Prof. Dante Barone Controle para Futebol de Robôs Utilizando Processamento Paralelo Seminário de Andamento.
Leonardo de Souza Brasil Orientador: Ricardo Pereira e Silva, Dr
Tecgraf PUC-Rio maio de 2011 Introdução ao Openbus.
Redes e Sistemas Distribuídos II – Cód Prof. MSc. Ronnison Reges Vidal.
Leandro Clementino Almeida.  Anos 50 - Sistemas Operacionais tipo Lote:  Aumentar a capacidade de processamento de programas  Usuário ia ao computador.
Laboratório B – Sistemas Supervisórios N8LB9
Laboratório B – Sistemas Supervisórios N8LB9 Prof. Dr. Cesar da Costa 3.a Aula: Driver de Comunicação e Comunicação OPC.
Uma Extensão do Fluxo de Análise e Projeto do RUP com suporte a Desenvolvimento Baseado em Componentes Eduardo Almeida
Web Services / SOA. O cenário de TI nas corporações Novas tendências batiam à porta das corporações Migraram o foco do “gerenciamento de dados” para o.
Compartilhamento nas nuvens para redes locais baseado em P2P Jerônimo Feijó Noble da Rosa Faculdade de Tecnologia SENAC Pelotas/RS Curso Superior de Tecnologia.
Transcrição da apresentação:

UNIVERSIDADE FEDERAL DO ABC MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Evolução da infraestrutura embarcada do projeto VERO considerando integração e migração de arcabouços de software e restrições de Tempo Real Aluno: Anderson Betoni Orientador: Prof. Luiz Gustavo Bizarro Mirisola

Tema Arcabouços de software para o desenvolvimento de sistemas robóticos. Veículo autônomo terrestre

Lacunas ORCA - Soluções de comunicação distribuída. – Problema 1: descontinuado – Problema 2: sem suporte a tempo real OROCOS – Características de software de tempo real. – Possibilidade de integração/comunicação

Justificativa Projeto Vero – Complementariedade de ferramentas – Necessidade de tempo real – Necessidade de evolução do projeto ICE – API Simplificada – Evitar introduzir novo middleware no ORCA – Necessidade de evolução do projeto

Objetivo & Hipótese Integração entre OROCOS e ORCA – Integração direta (via interfaces) – Integração indireta (via IceStorm) Implementação em tempo real no VERO – Testes de desempenho de algoritmos Compartilhar as características e ferramentas entre arcabouços Geração de templates e documentação p/ outros desenvolvedores – Migração gradual ORCA OROCOS – Posterior evolução do sistema

Método de pesquisa Estudo dos arcabouços: artigos, fóruns, documentação Aplicação das melhores práticas e conceitos de sistemas distribuídos (proxies, interfaces, mensagens, etc.) Estudo do middleware ICE (implementações utilizando IceStorm e IceGrid) Estudo das soluções de integração existentes OROCOS-ROS, OROCOS-YARP Desenvolvimento de componentes stand alone e em rede (OROCOS,ROS e ORCA) Estudo de Linux para Tempo Real (RTAI) Testes práticos em veículo autônomo terrestre

Ferramentas utilizadas Linux para Tempo Real (RTAI) Middlewares – CORBA – ICE IceGrid – Serviço de Nomes IceStorm – Serviço de Eventos

Ferramentas utilizadas Arcabouços de software – OROCOS Desenvolvido desde 2001 Funcionamento dos componentes baseado em máquinas de estado Voltado para tempo real

Ferramentas utilizadas Arcabouços de software – ROS Organizado em packages Bazar: Grande variedade de packages de terceiros disponíveis, mas, com qualidade muito variável Troca de mensagens utilizando middleware próprio Utilização crescente nos últimos anos

Ferramentas utilizadas Arcabouços de software – ORCA Camadas finas Utiliza middleware baseado em objetos distribuídos Tolerância a falhas Subprojeto Gearbox: alguns device drivers com processo de revisão por pares (catedral)

Integração OROCOS/ROS Mensagens Serviços rtt_toolkit Conexão das portas é feita através de script ou xml como é feito entre componentes OROCOS

Integração OROCOS/CORBA Instalação do CORBA é feita juntamente com o OROCOS Conexão das portas é feita através de script ou xml com comandos específicos para CORBA Disponibilização do nameservices do CORBA Componentes são desenvolvidos de forma transparente, somente no momento da implementação a configuração via CORBA é realizada.

Integração OROCOS/ORCA Para integrações ORCA->OROCOS basta implementar um componente OROCOS como subscriber de um tópico do IceStorm. Para integrações OROCOS->ORCA além de implementar um publisher é necessário implementar uma interface (servant) que possibilite receber requisições de um componente cliente. Para ambos os casos foram feitas classes com para serem reconfiguráveis de acordo com a interface especifica, de forma a facilitar o desenvolvimento. Além disso, como a compilação do ORCA está difícil em versões de Linux mais novas, deve-se evitar usar as libs do ORCA diretamente.

Integração OROCOS/ORCA Componente ORCA valida as interfaces dos componentes e aproveita para buscar configurações que não precisam ser repetidas sempre, antes de receber dados de outros componentes. É necessário que o IceGrid e o IceStorm estejam disponíveis (em execução)

Trabalhos relacionados L. Chaimowicz and A. Cowley and V. Sabella and C.J. Taylor, "ROCI: A distributed framework for multi-robot perception and control", in Intelligent Robots and Systems, 2003.(IROS 2003). Proceedings IEEE/RSJ International Conference on vol. 1, (, 2003), pp R. Bischoff and T. Guhl and E. Prassler and W. Nowak and G. Kraetzschmar and H. Bruyninckx and P. Soetens and M. Haegele and A. Pott and P. Breedveld and others, "BRICS-Best practice in robotics", in Robotics (ISR), st International Symposium on and th German Conference on Robotics (ROBOTIK) (, 2010), pp. 18. Piotr Trojanek and Cezary Zieliński, "A method of integrating robot programming frameworks", 17th CISM-IFToMM Symposium on Robot Design, Dynamics, and Control (RoManSy'08) (2008). K. Buys and S. Bellens and N. Vanthienen and W. Decre and M. Klotzbücher and T. De Laet and R. Smits and H. Bruyninckx and J. De Schutter, "Haptic coupling with the PR2 as a demo of the OROCOS-ROS-Blender integration", status: accepted (2011). Service Component Architectures in Robotics: the SCA-Orocos integration - D. Brugali, L. Gherardi, M. Klotzb ̈cher, H. Bruyninckx – ISOLA 2011 Spirit of berlin: An autonomous car for the darpa urban challenge - hardware and software architecture. Rojo, J., Rojas, R., Gunnarsson, K., Simon, M., Wiesel, F., Ruff, F., Wolter, L., Zilly, F., Santrac, N., Ganjineh, T., Sarkohi, A., Ulbrich, F., Latotzky, D., Jankovic, B., and Hohl, G. (2007)

Trabalhos relacionados Artigo: Piotr Trojanek and Cezary Zieliński, "A method of integrating robot programming frameworks", 17th CISM-IFToMM Symposium on Robot Design, Dynamics, and Control (RoManSy'08) (2008). Arcabouços envolvidos: MRROC++ e Player Metodologia: Thread de comunicação dentro de uma classe transmissora Player. Cenario: Joystick (Player) controlava um manipulador MRROC++

Classes implementadas Em elaboração (gerar figura a partir do doxgen) Composição Thread – responsável por conectar e receber as requisições. Também implementa métodos para configurar a conexão com parâmetros do IceGrid e IceStorm. Consumidor/Provedor – responsável por implementar o recebimento/envio dados.

Possíveis contribuições teóricas e práticas Facilidade de migração de componentes de um arcabouço para o outro Geração de documentação para a continuação do projeto Funcionalidades de tempo real para o projeto VERO Evolução do projeto VERO Possibilidade de integração do OROCOS com sistemas baseados em infraestrutura ICE.

Possíveis limita ç ões do trabalho Sensores sem possibilidade de leitura em tempo real Integração com arcabouços diferentes dos listados no escopo deste projeto (ROS/ORCA/OROCOS) Transporte de dados em tempo real

Conclusões Familiarização com os arcabouços ORCA, ROS e OROCOS Integração entre os arcabouços Identificação de alguns conceitos utilizados no ORCA Familiarização com o middleware ICE Criação de typekits no OROCOS para viabilizar o transporte de objetos

Trabalhos futuros Estudo de restrições de tempo real (RTAI) Testes práticos no VERO do código desenvolvido Análise e comparação dos resultados obtidos