skip to main content
Tipo de recurso Mostra resultados com: Mostra resultados com: Índice

Checagem de arquiteturas de controle de veículos submarinos: uma abordagem baseada em especificações formais.

Assis, Fábio Henrique De

Biblioteca Digital de Teses e Dissertações da USP; Universidade de São Paulo; Escola Politécnica 2009-07-08

Acesso online. A biblioteca também possui exemplares impressos.

  • Título:
    Checagem de arquiteturas de controle de veículos submarinos: uma abordagem baseada em especificações formais.
  • Autor: Assis, Fábio Henrique De
  • Orientador: Maruyama, Newton
  • Assuntos: Arquitetura De Software (Especificação); Submersíveis Não Tripulados; Software Architecture (Specification); Underwater Vehicles
  • Notas: Dissertação (Mestrado)
  • Notas Locais: Programa Engenharia Mecânica
  • Descrição: O desenvolvimento de arquiteturas de controle para veículos submarinos é uma tarefa complexa. Estas podem ser caracterizadas pelos seguintes atributos: tempo real, multitarefa, concorrência e comunicações distribuídas em rede. Neste cenário, existem múltiplos processos sendo executados em paralelo, possivelmente distribuídos, e se comunicando uns com os outros. Neste contexto, o modelo comportamental pode levar a fenômenos como deadlocks, livelocks, disputa por recursos, entre outros. A fim de se tentar minimizar os efeitos de tais dificuldades, neste trabalho será apresentado um método para checagem de modelos de arquiteturas de controle de veículos submarinos baseado em Especificações Formais. A linguagem de especificação formal escolhida foi CSP-OZ, uma combinação de CSP e Object-Z. Object-Z é uma extensão orientada a objetos da linguagem Z para a especificação de predicados, tipicamente pré e pós condições, além de invariantes de dados. CSP (Communicating Sequential Process) é uma álgebra de processos desenvolvida para descrever modelos comportamentais de processos paralelos. A checagem de modelos especificados formalmente consiste na análise das especificações para verificar se um sistema possui certas propriedades através de uma busca exaustiva em todos os estados em que este pode entrar durante sua execução. Neste contexto, é possível checar corretude, livelocks, deadlocks, etc. Além disso, pode-se relacionar duas especificações diferentes a fim de se checar relações de refinamento. Para as especificações, o verificador de modelos FDR da Formal Systems Ltd. será utilizado. A implementação é desenvolvida utilizando um perfil da linguagem Ada denominado RavenSPARK, uma junção do perfil Ravenscar (desenvolvido na Universidade de York) com a linguagem SPARK (um subconjunto da linguagem Ada desenvolvido pela Praxis, Inc.). O Ravenscar é um perfil para desenvolvimento de processos, e portanto os processos de CSP, incluindo seus canais de comunicação, podem ser facilmente criados. Por outro lado, SPARK é uma linguagem onde podem ser inseridos predicados para os dados (originalmente especificados em Object-Z) utilizando anotações da própria linguagem. A linguagem SPARK possui uma ferramenta, o Examinador, que pode checar códigos de modelos baseado nestas anotações. Em resumo, o método proposto permite tanto a checagem de modelos em CSP quanto a checagem no nível de código. Para isso, as especificações em Object-Z devem inicialmente ser convertidas em um código na linguagem SPARK juntamente com suas respectivas anotações, para que então a checagem do modelo possa ser realizada no código. O desenvolvimento de uma arquitetura de controle reativa para um ROV denominado VSOR (Veículo Submarino Operado Remotamente) é utilizado como exemplo de uso do método proposto. Toda a arquitetura de controle é codificada utilizando a linguagem Ada com o perfil RavenSPARK e embarcada em um computador do tipo PC104 com o sistema operacional de tempo real VxWorks, da Windriver, Inc.
  • DOI: 10.11606/D.3.2009.tde-15092009-163107
  • Editor: Biblioteca Digital de Teses e Dissertações da USP; Universidade de São Paulo; Escola Politécnica
  • Data de criação/publicação: 2009-07-08
  • Formato: Adobe PDF
  • Idioma: Português

Buscando em bases de dados remotas. Favor aguardar.