Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouMaria das Neves Domingos Vidal Alterado mais de 9 anos atrás
1
Robolog Ulisses Reina Montenegro [urma@di.ufpe.br]
2
Introdução Robolog –Camada de interface para C/C++ e Eclipse para simulador oficial da Robocup –Predicados básicos cobrem todas as primitivas oferecidas pelo servidor –Predicados de alto nível oferecem funções de triangulação, trigonometria e localização do cliente
3
Inicialização/Shutdown Para inicializar um cliente, utilizamos os predicados init/2 a init/5 –init(+Player,+Name [,+Server [,+Port [,+Protocol]]]) Para desativar a recepção de mensagens do servidor, o predicado stop/0 –stop
4
Predicados Básicos Os predicados básicos oferecem um mapeamento quase 1:1 de todas as primitivas de comunicação do protocolo do servidor –dash (+Power) Faz um cliente correr na direção para onde está virado –turn (+Moment) Muda a direção para onde o cliente está virado
5
Predicados Básicos –turn_neck (+Angle) Gira o pescoço do cliente com o dado ângulo –moveto (+X,+Y) Move o cliente para uma posição absoluta –kick (+Power,+Direction) Chuta a bola na direção dada com a força especificada –catch (+Dir) Goleiro apenas; agarra a bola na direção dada
6
Predicados Básicos –sense_body (?View_width, ?View_quality, ?Stamina, ?Effort, ?Speed, ?Kicks, ?Dashes, ?Turns, ?Says) Unifica todos os termos com os valores correspondentes aos do cliente no servidor
7
Predicados Básicos Como visto, os predicados básicos são apenas funções que geram ou recebem informações do servidor utilizam o protocolo do servidor Toda documentação referente aos comandos básicos pode ser encontrada tanto no manual do Soccer Server quanto no manual de Robolog
8
Predicados de Alto Nível Os predicados de alto nível oferecem uma funcionalidade que normalmente teria de ser implementada pelos clientes baseados nos dados recebidos do servidor Esses predicados não fazem parte do protocolo de comunicação com o servidor Robocup
9
Predicados de Alto Nível –kick_to (+Distance, +Direction) Chuta a bola na direção dada à distância especificada, utilizando mais de um comando kick, se necessário –self (+Time, ?X, ?Y, ?BodyDir [,?FaceDir) Retorna a posição absoluta do cliente no campo, além da direção para onde seu corpo e cabeça estão virados, no dado instante. Para a informação mais recente, utilizamos Time com valor -1
10
Predicados de Alto Nível Existe todo um conjunto de predicados para ajudar os clientes a determinar quem é quem no campo. Esses predicados são –my_side (?Side) Determina de que lado do campo o time do cliente joga –goal_side (?Side) Determina de lado está o gol onde o cliente deve chutar
11
Predicados de Comunicação
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.