AVASS

De MediaWiki do Campus São José
Ir para: navegação, pesquisa

Descrição do Projeto

O AVASS (Ambiente Virtual de Aprendizagem de Sinais e Sistemas) é um aplicativo de software com código aberto para aprendizagem autônoma dos conteúdos curriculares desenvolvidos nas ementas de disciplinas da área de Sinais e Sistemas. No AVASS são ilustrados temas fundamentais da área tais como modulações, codifcações e operações com sinais. O ambiente provê uma completa interatividade com o usuário na escolha de propriedades dos sinais, tipos de visualização e ajustes de escalas. Além disso, permite que o código usado em cada módulo seja observado a fim de compreender o seu funcionamento.

O projeto foi realizado através de uma bolsa de pesquisa provida pelo IF-SC através do PIPCIT Edital 04 /2010/PRPPGI.

Aplicações

A principal aplicação do AVASS está no ensino dos cursos técnicos e superiores em telecomunicações, dos quais podem-se citar as seguintes disciplinas:

Módulos

Básico

A partir desse módulo o usuário pode gerar sinais contínuos e discretos no tempo, além de visualizar seu espectro de frequências. Algumas opções do sinal também estão disponíveis, como frequência do sinal, frequência de amostragem e intervalo do sinal.

Operações básicas com sinais

O módulo de operações básicas provê uma interface que possibilita a realização de operações sobre dois sinais distintos e exibe o resultado das mesmas. Ele conta com algumas funções pré-definidas e é a partir delas que o usuário do AVASS desenvolverá seus experimentos.

Modulação analógicas

AM

Este módulo tem como função principal denotar o funcionamento de uma modulação em amplitude, ele provê a configuração de vários parâmetros dos sinais envolvidos, como a frequência de cada um e o índice de modulação.

FM

Outro módulo desenvolvido para modulações analógicas foi o de modulação em frequência. Ele é muito similar ao módulo AM, entretanto não foi possível explicitar no sinal modulado a representação do sinal modulante, pois esse tipo de modulação não é linear.


Codificação de linha

Neste módulo foram implementados os códigos Unipolar NRZ, Unipolar RZ, Polar NRZ, Polar RZ, AMI NRZ e Manchester. Todos apresentam os bits correspondentes ao sinal modulado bem como o espectro do sina.

Modulação digital

Todas as modulações digitais desenvolvidas no AVASS (PSK, ASK e FSK) estão presentes nesse mesmo módulo, semelhantemente ao módulo de codificação de linha. Mantendo dessa forma o padrão e facilidade de uso. Tendo em vista que esse foi o último módulo a ser desenvolvido, o mesmo apresenta algumas características combinadas de outros módulos, tentando ao máximo prover uma interface de alto nível. No módulo de modulação digital são mostrados além do sinal digital modulado, a sequência binária utilizada e o espectro de frequências (amplitude e fase) do sinal obtido.

Como utilizar

Interface Principal

A partir dela é possível acessar todos os módulos desenvolvidos. A opção Arquivo oferece a opção de Sair do AVASS e futuramente poderia ser implementado a opção de carregar um cenário pré-estabelecido. Em Ajuda é possível obter informações sobre o sistema ou acessar a parte de tutoriais. A opção Módulos é uma alternativa aos botões, também é possível utilizar as teclas de atalho para acessar mais rapidamente conforme a tabela abaixo.

Interface principal do AVASS
Módulo carregado
Ctrl + B Módulo Básico
Ctrl + O Módulo de Operações Básicas
Ctrl + V Módulo de Captura de Voz
Ctrl + A Módulo de Modulação Analógica
Ctrl + D Módulo de Modulação Digital
Ctrl + L Módulo de Codificação de Linha


Módulo Básico

Para visualizar um sinal é necessário definir os parâmetros a seguir:

Módulo Básico
  • Tipo do sinal: contínuo ou discreto
  • Escolher o tipo do sinal:
    • Contínuo
    • Discreto
  • Escolher a função do sinal:
    • Cosseno
    • Seno
    • Degrau unitário
    • Sinc
  • Valor de pico, frequência do sinal e frequência de amostragem.

Na inserção manual, é possível plotar qualquer função. Só é necessário definir qual a frequência de amostragem. Um tipo de função que pode ser utilizada é a degrau unitário, definindo funções características de uma porta, por exemplo. A função u(t) já está definida na interface, sendo que para tempo discreto deve-se usar a função u(n).


Módulo de Operações Básicas

A

Módulo de Operações Básicas

realização de operações entre os sinais é feita definindo-se as propriedades dos dois sinais envolvidos, para isso existe um painel lateral esquerdo onde deve-se definir a frequência de cada sinal e qual o seu tipo de função. Também as opções de operações sobre cada sinal somente e depois a operação entre eles.

Módulo de Modulações Digitais

Módulo de Modulações Digitais

Após selecionar a opção de modulação, o usuário poderá definir algumas opções básicas como a quantidade de símbolos usada na modulação (M-ARY), a sequência de símbolos que serão representados no gráfico, a opção de manter os bits gerados e se a sequência binária será gerada automaticamente ou definida pelo usuário. Pode-se considerar como opções avançadas algumas funcionalidades como selecionar se no espectro de frequências será mostrado somente o módulo do sinal, a fase ou ambos. Existe ainda a opção de calcular a média acumulada de FFTs do sinal, que vai sendo feita à medida que novas sequências são moduladas.


Módulo de Codificações de Linha

Módulo de Codificações de Linha

Este módulo apresenta uma interface na qual o usuário escolhe qual será a codificação utilizada e o ambiente gera automaticamente uma sequência binária. Para facilitar a relação entre as codificações, a interface oferece a opção de não gerar uma nova sequência, ou ainda que o próprio usuário defina a sequência de bits. Ao mesmo tempo, sobre cada gráfico gerado são adicionados os valores do bit.

Obtenha o AVASS

Para obter o AVASS preencha o formulário disponível em http://bit.ly/downloadavass

Tarefas a fazer (TODO list)

Bugs encontrados
  • Em ASK não funciona quando selecionado Manual e M-ARY (8) --Marcos Moecke 08h20min de 2 de março de 2013 (BRT)

BUG 8FSK.png

  • EM FSK se M-ARY (8) o diagrama de tempo apresenta a soma de frequencias --Marcos Moecke 08h20min de 2 de março de 2013 (BRT)
  • EM PSK a tela da constelação não deveria ter zoom ativo.--Marcos Moecke 08h31min de 2 de março de 2013 (BRT)
  • No UBUNTU, a interface da Codificação Digital fica desformatada (ver figura) --Marcos Moecke 08h45min de 2 de março de 2013 (BRT)

BUG1CodDig.png

A ser terminado no TCC-Zilmar

  • Documentação do código fonte para uso nas telas explicativas
Proposta de solução:
Talvez criando uma função ou arquivo ".m" para cada bloco de que se deseja que o usuário conheça os detalhes.
  • Uso do help do Matlab para documentar o AVASS
Verificar como isso está funcionando?
  • Juntar os botões [Plotar] e [OK] em um único no módulo básico.
  • A escolha da frequencia de amostragem deve estar junto a escolha do sinal discreto no módulo básico.
  • Padronizar as barras de ferramentas em todos os módulos.
Proposta de solução:
Usar como padrão o visual e comportamento do módulo de modulação digital.
Agrupar todos os códigos chamando uma única função ou procedimento, atualmente as funções são repetidas.
  • Implementar a média dos espectros de frequência nas modulações digitais
Proposta de solução:
Usar o método da codificação digital.

Proposta para trabalhos futuros

  • Problema com memória do sistema, quando altera sucessivamente os parâmetros das modulações analógicas e digitais.
  • Implementar novas codificações digitais: 2B/1Q, HDB3, etc
Proposta de solução:
Usar a interface já desenvolvida, apenas é necessário criar os códigos.
  • Implementar novas modulações digitais: QAM, MSK, etc
Proposta de solução:
Usar a interface já desenvolvida, apenas é necessário criar os códigos.
  • Desenvolver uma opção de salvar os gráficos gerados para um arquivo de imagem ou imprimi-los, possibilitando a produção de relatórios de experimentos; Atualmente o processo usado é a captura de tela;
  • Aperfeiçoar o algoritmo para uso do sinal da voz como sinal modulante no módulo de modulações analógicas;
  • Gerenciar melhor o uso de memória do Matlab, pois em algumas situações ocorre o travamento do sistema.;
  • Implementar a opção de exibir o código atual fora do editor padrão do Matlab, mostrando somente o fragmento do código de interesse;
  • Comparar os valores obtidos através do cálculo da média acumulada de FFTs com outras formas de calculo do espectro de frequencias;
  • Desenvolver um pacote de linguagens para o AVASS, como inglês e espanhol, através do qual todos os comandos e interfaces passam a ser mostrados na linguagem selecionada;
  • Desenvolver módulos que realizem convolução discreta contínua, correlação discreta contínua e PCM, além de outras modulações digitais e codificações digitais;
  • Realizar a migração do ambiente AVASS para WEB assim como a transformação em um aplicativo executável fora do Matlab;
  • Padronizar as interfaces e formas de interação do usuário.
  • Desenvolver um conjunto de experimentos no qual os diferentes módulos são usados.