290 likes | 385 Views
Programação de Periféricos: Seminários. Motor Schemas. Tiago Cunha. Agenda. Robótica Robôs Classificação dos robôs Robôs e os periféricos Robôs móveis Comportamentos (Behaviors) Motor Schemas Ferramentas. Robótica.
E N D
Programação de Periféricos: Seminários Motor Schemas Tiago Cunha
Agenda • Robótica • Robôs • Classificação dos robôs • Robôs e os periféricos • Robôs móveis • Comportamentos (Behaviors) • Motor Schemas • Ferramentas
Robótica • Robótica é a ciência e a tecnologia dos robôs, seu desenvolvimento, fabricação e aplicação. • Sistemas Mecânicos Robóticos são uma subclasse dos Sistemas Mecânicos. • Sistemas Mecânicos são uma subclasse dos Sistemas Dinâmicos • Sistemas Dinâmicos são uma subclasse de Sistemas • Sistemas... • Ou seja, a robótica envolve mecânica, eletrônica e computação.
Robôs • Robôs são agentes virtuais ou mecânicos. • Agentes: qualquer entidade imersa ou situada em um ambiente, que percebe esse ambiente através de sensores e age sobre este através de atuadores. • “Eu não sei definir o que e um robô, mas eu os reconheço quando os vejo”. Joseph Engelberger
Classificação • Por função: • Manipuladores: braços e mãos robóticas. • Geradores de movimento: simuladores de vôo*. • Móveis: robôs com pernas ou rodas. • Aquáticos. • Aéreos.
Classificação (cont.) • Por tamanho: • Macro- (medidos em metros) e micro-robôs (em mm.) • Por aplicações: • Soldadores, segurança, operações cirúrgicas, reabilitação, entretenimento.
Robôs e os periféricos • Para realizar a interação entre o ambiente e o robô são necessários dispositivos periféricos, como os sensores. • Através dos sensores podemos extrair as características de um determinado ambiente. • Tais informações são utilizadas pelo micro-controlador, para gerar os movimentos do robô, realizados pelos atuadores.
Robôs e os periféricos (cont.) • Podemos determinar assim três tipos de dispositivos os quais precisam ser programados a fim de construir um robô: • Sensores • Atuadores • Controladores
Robôs e os periféricos (cont.) • Exemplo: Daisy. • Projeto de robô bombeiro. • Objetivos: • mover-se a partir de uma posição inicial • navegar através de obstáculos • detectar focos de incêndio durante o caminho e então apaga-los
Robôs e os periféricos (cont.) • Hardware utilizado: • Veículo de quatro rodas, com motor traseiro, direcional dianteiro. • Controlado por uma Handy Board. microprocessador 6811, motor driver chips, display LCD de 16 caracteres (2 linhas), interface serial, 7 entradas analógicas, 9 entradas digitais, uma campainha e sete botões
Robôs e os periféricos (cont.) • O processador é programado usando Interactive C, uma linguagem derivada do C. • A linguagem serve como interface interativa entre o PC a Handy Board, conectados através de um cabo serial. • Os programas são compilados em um PC e então copiado para a Handy Board para execução.
Robôs e os periféricos (cont.) • Outros exemplos de sensores: • Câmeras • Sensores de inércia, aceleração e direção • Medidores de distância • Sonares, sensores IR, detectores de toque • Outros...
Robôs e os periféricos (cont.) • Outros exemplos de atuadores: • Garras: • Garra de dois dedos, de três dedos, para objetos cilíndricos, para objetos frágeis, garra articulada, garra a vácuo e eletromagnética. • Motores: • Servo-motores CC, motores de passo, servo-motores CA, motores elétricos lineares.
Robôs e os periféricos (cont.) • Outros exemplos de controladores: • Lógica Simples • Micro-controladores • Microprocessadores
Robôs e os periféricos • Outros exemplos de LP:
Robôs Móveis • Utilizados para: • Transporte de materiais, combate a incêndios, desativação de explosivos, vigilância de armazéns, viagens submarinas e aeroespaciais e prestação de serviços interagindo com pessoas para auxílio a tarefas rotineiras. • Em robôs móveis, o sistema de locomoção desempenha um papel fundamental. • Este e o responsável por coordenar todos estes componentes a fim de atingir os objetivos do robô.
Robôs Móveis (cont.) • Basicamente, os robôs devem ser capazes de navegar a partir de uma posição conhecida para uma nova localização desejada. • Para isto, devem evitar colisões com objetos fixos e móveis durante sua rota. • Em ambientes desestruturados, desconhecidos ou dinâmicos, um robô móvel deve ser capaz de perceber as circunstâncias e gerar ações que são apropriadas para o ambiente e para os objetivos do sistema robótico.
Comportamentos • Muitas vezes, robôs moveis são controlados por “comportamentos” (behaviors) • Comportamentos: conjuntos de ações e reações, conscientes ou não, de um objeto ou organismo direcionados a um ambiente. • Sensores atuam como entrada de dados, comportamentos como processadores destes e seletores de ações, que são efetuadas pelos atuadores.
Motor Schemas • Exemplo de comportamento. • Respostas comportamentais são todas representadas por vetores. • A coordenação é conseguida através da soma de vetores. • Os comportamentos são configurados em tempo-real através das interações, capacidades e do meio envolvente.
Motor Schemas (cont.) • Todos os comportamentos são utilizados para determinar a direção. • Cada comportamento tem um valor de ganho associado. • O vetor relacionado a cada comportamento é multiplicado pelo seu ganho e somado aos outros vetores. • A soma dos vetores determina o movimento.
Motor Schemas (cont.) • Padrões comportamentais: • move-ahead, move-to-goal • avoid-static-obstacles • dodge • escape • stay-on-path • noise • follow-the-leader • outros
Ferramentas • Chamadas “Robotics suites”. • Fornecem um ambiente visual para a programação e simulação. • Objetiva gerar código que pode ser utilizado para simulação e aplicação, sem quaisquer modificações.
Exemplos de suites: Evolution Robotics ERSP OROCOS Skilligent iRobot AWARE OpenJAUS CLARAty Ferramentas (cont.) • Webots • Microsoft Robotics Studio • URBI • RUBIOS • AnyKode Marilou • Simbad • TeamBots
TeamBots • Conjunto de aplicações e pacotes para pesquisas com robôs moveis multi-agentes. • Suporta: • Prototipação • Simulação - através do aplicativo TBSim • Implantação - através do ambiente de execução TBHard. • Código aberto.
PUCRS • Laboratório CIM -Computer Integrated Manufacturing (http://www.ee.pucrs.br/~labcim/) • Utilizado para aulas de Sistemas Robotizados e Sistemas de Fabricação • RoboSoft Simulator • Tem como objetivo simular programas na linguagem ACL.