25
A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi - Agent Systems Carlos Eduardo Pantoja João Victor Guinelli

A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

Embed Size (px)

Citation preview

Page 1: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

A Middleware for Using PIC Microcontrollers and Jason

Framework for Programming Multi-Agent Systems

Carlos Eduardo Pantoja

João Victor Guinelli

Page 2: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

1. Introdução

2. Problema

3. Objetivo

4. Arquitetura

5. O Middleware Javic

6. Embarcando Jason + Javic

7. Trabalhos Relacionados

8. Trabalhos Futuros e Conclusão

Sumário

Page 3: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

1. Introdução

Um robô pode ser comparado a um agente inteligente, queé capaz de perceber, raciocinar e agir em um ambiente real(RUSSEL; NORVIG, 2004).

De forma similar, agentes podem ser definidos comoentidades físicas ou virtuais que são capazes de perceber eagir sobre o ambiente onde estão situados.

Por conta desta similaridade, é sensata a utilização da abordagem de Sistema Multi-Agentes (SMA) no campo da robótica.

1

Page 4: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

2

2. Problema

Embarcar agentes BDI em robôs não é uma tarefa simples:

O ciclo de raciocínio desses agentes pode gerar delays indesejados naatuação do robô em ambientes reais (SANTOS; HUBNER, 2015).

Na comunicação entre Hardware e Software pode ocorrer falhas demensagens e perda de informações.

Alguns trabalhos abordam esta temática:

(BARROS et al., 2014);

(JENSEN, 2010);

(LAZARIN; PANTOJA, 2015).

RXTX

Page 5: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

3

2. Problema

Embarcar agentes BDI em robôs não é uma tarefa simples:

O ciclo de raciocínio desses agentes pode gerar delays indesejados naatuação do robô em ambientes reais (SANTOS; HUBNER, 2015).

Na comunicação entre Hardware e Software pode ocorrer falhas demensagens e perda de informações.

Alguns trabalhos abordam esta temática:

(BARROS et al., 2014);

(JENSEN, 2010);

(LAZARIN; PANTOJA, 2015).

Lejos

Page 6: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

4

2. Problema

Embarcar agentes BDI em robôs não é uma tarefa simples:

O ciclo de raciocínio desses agentes pode gerar delays indesejados naatuação do robô em ambientes reais (SANTOS; HUBNER, 2015).

Na comunicação entre Hardware e Software pode ocorrer falhas demensagens e perda de informações.

Alguns trabalhos abordam esta temática:

(BARROS et al., 2014);

(JENSEN, 2010);

(LAZARIN; PANTOJA, 2015). Javino

Page 7: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

5

3. Objetivo

Propor o middleware Javic:

Permitir a utilização de microcontroladores PIC em SMAembarcados.

Utilizar a biblioteca desenvolvida para o lado PIC e nolado Java utilizar a biblioteca Javino.

Page 8: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

6

4. Arquitetura

Page 9: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

7

Programação de softwares em alto

nível com linguagens baseadas em JAVA.

Page 10: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

8

Biblioteca de comunicação para o nível de Software.

Page 11: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

9

Biblioteca de comunicação para o nível de hardware

(microcontroladores).

Page 12: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

10

Outras Bibliotecas de comunicação para o nível de hardware

(microcontroladores), que são controladas

pelo mesmo software.

Page 13: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

11

5. O Middleware Javic

Implementa o mesmo protocolo utilizado no Javino.

Fonte: (LAZARIN; PANTOJA, 2015).

Page 14: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

12

5. O Middleware Javic

É necessário que o modelo do microcontrolador PICutilizado possua ao menos 256 bytes de RAM.

Para manter a compatibilidade, os métodos presentes noJavic são os mesmos presentes no Javino.

Page 15: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

13

5.1. Testes Preliminares

Foi utilizado um microcontrolador PIC 18F4520 conectado aum sensor ultrassônico e a um LED.

O agente, programado em Jason (BORDINI et al., 2007),deve acender o LED quando perceber que há algumobstáculo a sua frente.

Page 16: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

14

Código PIC

5.1. Testes Preliminares

Page 17: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

15

Ambiente Jason

Agente Jason

5.1. Testes Preliminares

Page 18: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

16

6. Embarcando Jason + Javic

É necessário interferir em 4 camadas, de acordo com Lazarine Pantoja (2015):

Hardware;

Microcontroller;

Environment;

Agent.

Page 19: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

17

6. Embarcando Jason + Javic

É necessário interferir em 3 camadas, de acordo comPantoja et al. (2016):

Hardware;

Microcontroller;

Environment;

Agent.

Page 20: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

18

7. Trabalhos Relacionados

(BARROS et al., 2014):

Não utiliza nenhum protocolo para realizar a comunicação entre osoftware e o hardware, o que pode causar falhas no sistema porconta de interferência e perda de dados.

(JENSEN, 2010):

Arquitetura é limitada ao Lego Mindstorm NXT.

Page 21: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

19

8. Trabalhos Futuros

Desenvolver uma versão do middleware que funcione emmicrocontroladores PIC que possuem menos de 256 bytesde RAM.

Desenvolver uma biblioteca para microcontroladores daIntel.

Analisar e validar a arquitetura em um cenário maiscomplexo.

Aplicar na arquitetura customizada do Jason, o ARGO.

Page 22: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

20

8. Conclusão

Foi apresentado o middleware JAVIC para comunicaçãoserial entre microcontroladores do tipo PIC e o JAVA.

Utilizar o middleware para implementação de SMArobóticos e supervisórios utilizando um microcontrolador“mais voltado” para a indústria.

Permitir uma flexibilização na utilização demicrocontroladores em um mesmo projeto.

Page 23: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

21

9. Referências Bibliográficas

• R. S. Barros, V. H. Heringer, C. E. Pantoja, N. M. Lazarin, and L. M. de Moraes. Anagent-oriented ground vehicle's automation using jason framework. In ICAART(2), pages 261-266, 2014.

• R. H. Bordini, J. F. Hübner, and M. Wooldridge. Programming multi-agentsystems in AgentSpeak using Jason, volume 8. John Wiley & Sons, 2007.

• A. S. Jensen. Implementing lego agents using jason. Disponínel em:arXiv:1010.0150, 2010.

• N. M. Lazarin and C. E. Pantoja. A robotic-agent platform for embeddingsoftware agents using raspberry pi and arduino boards. 9th Software Agents,Environments and Applications School, 2015.

• S. Russel and P. Norvig. Inteligência artificial. Editora Campus, página 26, 2004.

• F. R. Santos and J. Hubner. Avaliação do uso de agentes no desenvolvimento deaplicações com veículos aéreos não-tripulados. 9th Software Agents,Environments and Applications School, 2015

Page 25: A Middleware for Using PIC Microcontrollers and Jason Framework for Programming Multi-Agent Systems

A Middleware for Using PIC Microcontrollers and Jason

Framework for Programming Multi-Agent Systems

Carlos Eduardo Pantoja

João Victor Guinelli