Mudanças entre as edições de "AVASS"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
 
(31 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 24: Linha 24:
  
 
== Módulos ==
 
== 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 ===
 
=== Operações básicas com sinais ===
Com esse módulo é possível observar conceitos
+
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.
referentes a operações realizadas sobre sinais que são
+
 
comuns na área de processamento de sinais e sistemas.Estas operações podem ser realizadas com sinais contínuos ou
+
=== Modulação analógicas ===
discretos.
+
 
 +
; 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.
  
=== Modulação analógica ===
+
 
Neste módulo é possível realizar modulações AM e FM.
+
 
A interface do módulo permite ao usuário escolher a frequência da portadora e da
+
=== Codificação de linha ===
modulante, tipo do sinal modulante, e o índice de
+
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. O usuário pode visualizar os sinais no
 
domínio do tempo, assim como no domínio da
 
frequência.
 
  
 
=== Modulação digital ===
 
=== Modulação digital ===
No módulo de modulação digital são mostrados além
+
 
 +
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.
 
do sinal digital modulado, a sequência binária utilizada e o espectro de frequências (amplitude e fase) do sinal obtido.
 
=== Codificação digital ===
 
No módulo de codificação digital de sinais, são
 
mostrados o sinal digital codificado, a sequência binária
 
utilizada e o espectro de frequências do sinal obtido. O
 
usuário pode escolher o tipo de codificação e a
 
quantidade de bits a serem codificados. A sequencia de
 
bits usada pode ser gerada aleatoriamente, digitada, ou
 
mantida uma anterior para a visualização da mesma
 
sequência binária com diferentes codificações.
 
  
 
== Como utilizar ==
 
== Como utilizar ==
Linha 58: Linha 54:
 
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.
 
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.
  
{| border=0 cellpadding="5" cellspacing="0" align="center"
+
[[Arquivo:Avass_principal.png|300px|thumb|right|Interface principal do AVASS]]
|-
+
 
|
+
{| border=1 cellpadding="5" cellspacing="0" align="left"
{| border=1 cellpadding="5" cellspacing="0"
 
 
|-
 
|-
 
|
 
|
Linha 83: Linha 78:
 
! Ctrl + L
 
! Ctrl + L
 
| align="left"| Módulo de Codificação de Linha
 
| align="left"| Módulo de Codificação de Linha
|}
+
|}<br style="clear:both;">
|[[Arquivo:Avass_principal.png|300px|thumb|center|Interface principal do AVASS]]
 
|}
 
  
 
=== Módulo Básico ===
 
=== Módulo Básico ===
Para visualizar um sinal é necessário definir os parâmetros a seguir:
+
Para visualizar um sinal é necessário definir os parâmetros a seguir: [[Arquivo:Avass_basico.png|300px|thumb|right|Módulo Básico]]
* Tipo do sinal: contínuo ou discreto
+
* Tipo do sinal: contínuo ou discreto  
* Escolher o tipo do sinal:
+
* Escolher o tipo do sinal:  
** Contínuo
+
** Contínuo  
** Discreto
+
** Discreto  
* Escolher a função do sinal:
+
* Escolher a função do sinal:  
** Cosseno
+
** Cosseno  
** Seno
+
** Seno  
 
** Degrau unitário
 
** Degrau unitário
** Sinc
+
** Sinc  
* Valor de pico, frequência do sinal e frequência de amostragem.
+
* 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).
 +
 
 +
<br style="clear:both;">
 +
 
 +
=== Módulo de Operações Básicas ===
 +
A[[Arquivo:Avass_operacoes.png|300px|thumb|right|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.<br style="clear:both;">
 +
 
 +
=== Módulo de Modulações Digitais ===
 +
[[Arquivo:Avass_modulodigital.png|300px|thumb|right|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.
 +
<br style="clear:both;">
 +
 
 +
=== Módulo de Codificações de Linha ===
 +
[[Arquivo:Avass_modulocod.png|300px|thumb|right|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.
 +
<br style="clear:both;">
 +
 
 +
== Obtenha o AVASS ==
 +
Para obter o AVASS preencha o formulário disponível em http://bit.ly/downloadavass
 +
 
 +
== Tarefas a fazer (TODO list) ==
 +
{{collapse top | Bugs encontrados}}
 +
* Em ASK não funciona quando selecionado Manual e M-ARY (8) --[[Usuário:Moecke|Marcos Moecke]] 08h20min de 2 de março de 2013 (BRT)
 +
[[Arquivo:BUG_8FSK.png | 200 px]]
 +
 
 +
* EM FSK se M-ARY (8) o diagrama de tempo apresenta a soma de frequencias --[[Usuário:Moecke|Marcos Moecke]] 08h20min de 2 de março de 2013 (BRT)
 +
* EM PSK a tela da constelação não deveria ter zoom ativo.--[[Usuário:Moecke|Marcos Moecke]] 08h31min de 2 de março de 2013 (BRT)
 +
* No UBUNTU, a interface da Codificação Digital fica desformatada (ver figura) --[[Usuário:Moecke|Marcos Moecke]] 08h45min de 2 de março de 2013 (BRT)
 +
[[Arquivo:BUG1CodDig.png | 200 px]]
 +
{{collapse bottom}}
 +
 
 +
===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.
  
[[Arquivo:Avass_basico.png|300px|thumb|left|Módulo Básico]]
 
 
[[Categoria:Trabalhos de Alunos]]
 
[[Categoria:Trabalhos de Alunos]]
 
[[Categoria:Projeto de Pesquisa]]
 
[[Categoria:Projeto de Pesquisa]]

Edição atual tal como às 15h24min de 11 de dezembro de 2014

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.