Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ
Painel Eletrônico de LED
Projeto Físico
Ângelo André Barreto Lima Eduardo Francisco Colares
_________________________________________
Orientador: Afonso Ferreira Miguel
4º Bimestre de 2011
1
Sumário
Índice de Figuras .............................................................................................................. 3
Índice de Tabelas .............................................................................................................. 4
1. Resumo ..................................................................................................................... 5
2. Introdução ................................................................................................................. 5
3. Detalhamento do Projeto .......................................................................................... 6
3.1. Diagrama de Contexto ....................................................................................... 7
3.2. Módulo Interface ................................................................................................ 9
3.2.1. Especificação dos Processos ....................................................................... 9
3.3. Módulo Processamento .................................................................................... 11
3.4. Módulo Tratamento ......................................................................................... 13
3.4.1. Especificação dos Processos ..................................................................... 13
3.5. Módulo LED Drive .......................................................................................... 15
3.6. Módulo Display ............................................................................................... 19
4. Cronograma ............................................................................................................ 20
5. Procedimentos de Teste e Validação do Projeto .................................................... 21
5.1. Testes em Caixa Preta ...................................................................................... 21
5.1.1. Teste de Inserção de Texto ....................................................................... 22
5.1.2. Teste de Expansão de Área Visível .......................................................... 22
5.2. Testes em Caixa Branca ................................................................................... 23
5.2.1. Teste de Inicialização da Interface ........................................................... 23
5.2.2. Teste de Abertura, Salvamento e Visualização de Texto na Interface ..... 23
5.2.3. Teste de Expansão de Área Visível .......................................................... 24
5.3. Plano de Teste .................................................................................................. 25
6. Riscos ..................................................................................................................... 32
7. Resultados ............................................................................................................... 35
2
7.1. Dificuldades ..................................................................................................... 35
7.2. Facilidades ....................................................................................................... 36
7.3. Resultados ........................................................................................................ 36
8. Conclusão ............................................................................................................... 37
9. Referências Bibliográficas ...................................................................................... 38
Anexo 1 .......................................................................................................................... 39
Anexo 2 .......................................................................................................................... 40
Anexo 3 .......................................................................................................................... 41
3
Índice de Figuras
Figura 1 - Diagrama dos módulos .................................................................................... 7
Figura 2 - Representação ilustrativa dos módulos ............................................................ 7
Figura 3 - Diagrama de Contexto ..................................................................................... 8
Figura 4 - Interface do Usuário......................................................................................... 9
Figura 5 - DFD individual CANCELAR ........................................................................ 10
Figura 6 - DFD individual SALVAR ............................................................................. 10
Figura 7 - DFD individual ABRIR ................................................................................. 10
Figura 8 - DFD individual VISUALIZAR ..................................................................... 11
Figura 9 - DFD individual ATUALIZAR ...................................................................... 11
Figura 10 - Foto ilustrativa do Arduino .......................................................................... 11
Figura 11 - Projeto elétrico do Arduino ......................................................................... 12
Figura 12 - Diagrama de interação do Processamento ................................................... 12
Figura 13 - Diagrama de interação do Tratamento ......................................................... 13
Figura 14 - Diagrama temporal de funcionamento ......................................................... 13
Figura 15 - Porta lógica "AND" com diodos .................................................................. 14
Figura 16 - Expansão de área visível .............................................................................. 15
Figura 17 - MAX7219 vista superior ............................................................................. 16
Figura 18 - Diagrama funcional do MAX7219 .............................................................. 16
Figura 19 - Projeto Lógico ............................................................................................. 18
Figura 20 - Projeto Elétrico ............................................................................................ 18
Figura 21 - Matriz de LED ............................................................................................. 19
Figura 22 - Displays de LED desconectados .................................................................. 23
4
Índice de Tabelas
Tabela 1 - Lista de Eventos do PLED .............................................................................. 8
Tabela 2 - Características elétricas do MAX7219 .......................................................... 17
Tabela 3 - Características elétricas máximas da matriz .................................................. 20
Tabela 4 - Características elétricas das cores da matriz ................................................. 20
Tabela 5 - Tabela verdade da porta lógica "AND" ......................................................... 24
Tabela 6 - Teste nº1 ........................................................................................................ 25
Tabela 7 - Teste nº2 ........................................................................................................ 25
Tabela 8 - Teste nº3 ........................................................................................................ 26
Tabela 9 - Teste nº4 ........................................................................................................ 27
Tabela 10 - Teste nº5 ...................................................................................................... 27
Tabela 11 - Teste nº6 ...................................................................................................... 28
Tabela 12 - Teste nº7 ...................................................................................................... 28
Tabela 13 - Teste nº8 ...................................................................................................... 29
Tabela 14 - Teste nº9 ...................................................................................................... 30
Tabela 15 - Teste nº10 .................................................................................................... 30
Tabela 16 - Teste nº11 .................................................................................................... 31
Tabela 17 - Teste nº12 .................................................................................................... 32
Tabela 18 - Análise de Riscos ........................................................................................ 33
5
1. Resumo
O projeto Painel Eletrônico de LED visa aproximar as empresas do seu público-
alvo através de mensagens eletrônicas dinâmicas. A utilização de módulos de conversão
de texto, processamento e display interligados, torna esse conceito viável, juntamente
com abordagens de linguagem de programação (C/C++/C# e arduino DSL),
microprocessadores, diodos emissores de luz, entre outros componentes auxiliares.
2. Introdução
O Brasil será o foco televisivo nos próximos anos devido a Copa do Mundo
(2014) e as Olimpíadas (2016). Esta será uma grande oportunidade para empresas de
Marketing e Propaganda. Tendo em vista essa expansão do mercado, na qual é
necessário transmitir mensagens, o desenvolvimento de meios de comunicação se
tornou uma necessidade real e o projeto Painel Eletrônico de LED vem para suprir essa
demanda.
O projeto consiste em desenvolver um painel de LED de tamanho fixo (8x8
pixel), capaz de transmitir mensagens em apenas uma cor (vermelho) envolvendo letras
do alfabeto brasileiro, sem acentuação. O painel de LED deverá ser capaz de se
interligar com outro painel igual e assim expandir automaticamente sua área visível,
tanto na vertical como na horizontal.
Este documento é subdivido em nove tópicos, sendo que o Resumo é uma
descrição sucinta do projeto com dados sobre o problema, a solução e as tecnologias.
A Introdução aborda o escopo do projeto, com os problemas que serão
solucionados e os que não serão, e também o projeto a ser desenvolvido.
O Detalhamento do Projeto relata, com o auxílio de blocos, módulos e
diagramas, o problema a ser solucionado pelo projeto, assim como os aspectos
tecnológicos relevantes e suas justificativas de uso para cada módulo do sistema.
6
A descrição detalhada das datas, marcos e etapas do processo são exibidas no
tópico Cronograma.
Tendo os objetivos e métodos de execução bem exemplificados e definidos, é
necessário obter parâmetros que definam a conclusão das metas, tanto em conjunto
como individualmente. Esses critérios são estabelecidos em Procedimentos de Teste e
Validação do Projeto e serão executados em duas etapas: caixa preta e caixa branca.
Uma análise dos problemas potenciais e os impactos desses problemas sobre o
projeto é detalhado em Riscos e os resultados obtidos estão descritos em Resultados.
E por fim, a Conclusão, juntamente com as Referências Bibliográficas, traz o
fechamento do estudo realizado, apresentando os passivos e ativos dos dados
levantados.
3. Detalhamento do Projeto
Há tempos a publicidade vem sendo uma maneira específica de apresentar
informações, ideias ou apenas de deixar uma mensagem sobre certo produto, marca ou
empresa. Pensando nisso surgiu o problema de qual será a melhor solução para que haja
o mais perfeito entendimento da comunicação entre quem gera a informação e o
público.
Através disso, o projeto Painel Eletrônico de LED visará facilitar a maneira que
essa mensagem será passada para o público, criando assim um dinamismo agradável
entre ambos.
O projeto Painel Eletrônico de LED consiste em cinco módulos, representados
pelas Figuras 1 e 2, que integrados disponibilizam uma solução prática para transmissão
de mensagens com tamanho ajustável.
7
Figura 1 - Diagrama dos módulos
Figura 2 - Representação ilustrativa dos módulos
3.1. Diagrama de Contexto
O diagrama de contexto (Figura 3) representa todo o sistema como um único
processo e é composto por fluxos de dados que mostram as interfaces entre o sistema e
as entidades externas; para auxiliar a representação do sistema uma lista de eventos é
idealizada (Tabela 1), na qual demonstra como o sistema responde à estímulos externos.
8
Figura 3 - Diagrama de Contexto
Tabela 1 - Lista de Eventos do PLED
# Nome Estímulo Ação Resposta Tipo
1 Usuário atualiza
arduino Usuário
Atualizar
arduino
(Arduino
atualizado) F
2 Usuário salva
arquivo Usuário Salvar arquivo
Salvar dados e
(Arquivo salvo) F
3 Usuário abre
arquivo Usuário Abrir arquivo Abrir dados F
4 Usuário
visualiza texto Usuário Visualizar texto
Simulação de
texto F
5 PLED conecta
módulos PLED
Conectar
módulos
Expandir área
visível F
6 PLED salva
dados PLED Salvar dados Arquivo *.txt F
7 PLED abre
dados PLED Abrir dados
Texto carregado
com dados do
arquivo
F
9
3.2. Módulo Interface
O Módulo Interface é o que interage primeiramente com o ser humano;
composto de uma interface (Figura 4) que é responsável pela inserção de textos a ser
transmitidos para o Módulo Processamento.
Este módulo é puramente software e será desenvolvido sobre a linguagem C#
com Windows Forms na plataforma Microsoft Visual Studio.
Figura 4 - Interface do Usuário
3.2.1. Especificação dos Processos
O Módulo Display é subdivido em cinco funções principais: Salvar, Cancelar
Abrir, Visualizar e Atualizar. Essas funções são apresentadas abaixo em forma de
pseudocódigos e diagramas de fluxos individuais (Figuras 5 ~ 9).
10
Função CANCELAR
Texto IGUAL NULL
FIM-CANCELAR
Cancelar texto
Usuário
texto
Figura 5 - DFD individual CANCELAR
Função SALVAR
SE texto IGUAL NULL
Função CANCELAR
FIM-SE
SENÃO
Salvar texto no
arquivo *.TXT
FIM-SENÃO
FIM-SALVAR
Salvar arquivo
Usuário
texto
dados
Salvar dados Cancelar dados
Figura 6 - DFD individual SALVAR
Função ABRIR
SELECIONAR arquivo
ABRIR arquivo
CARREGAR texto do arquivo
FIM-ABRIR
Abrir arquivo
Usuário
arquivo
arquivo
Carregar arquivo
Figura 7 - DFD individual ABRIR
11
Função VISUALIZAR
LER texto
SCROLL texto
FIM-VISUALIZAR
Visualizar texto
Usuário
texto
dados
Figura 8 - DFD individual VISUALIZAR
Função ATUALIZAR
LER dados
ATUALIZAR arduino
FIM- ATUALIZAR
Atualizar arduino
Usuário
dados
dados
Arduino
Figura 9 - DFD individual ATUALIZAR
3.3. Módulo Processamento
O sistema de controle do projeto será embarcado em um Arduino Mega
ATmega1280 (Figura 10-11). Nesta etapa, o controlador é responsável por entender
todos os Módulos subsequentes e ativá-los de acordo com sua necessidade.
Figura 10 - Foto ilustrativa do Arduino
12
Figura 11 - Projeto elétrico do Arduino
Este módulo funciona como o cérebro do projeto (Figura 12), realizando o
processamento das chamadas de comunicação do Módulo Interface e repassando para o
Módulo Tratamento e ativando o Módulo LED Drive, que por sua vez reenvia os dados
para o Módulo Display.
O Arduino Mega é uma placa de micro controle baseada no ATmega1280. Ela é
composta de 54 terminais digitais, 16 analógicos, 4 UARTs (portas seriais), um cristal
oscilador de 16 MHz, conexão USB e botões de controles internos. (ARDUINO
MEGA, 2011).
Módulo Arduino
texto
Módulo Interface
Módulo
Tratamento
dados
Módulo LED Drive
Módulo Display
dados
dados
dados
Figura 12 - Diagrama de interação do Processamento
13
3.4. Módulo Tratamento
O Módulo Tratamento é dividido em duas etapas (Figura 13): Processamento de
Texto e Expansão de área visível. O primeiro remete a questão de conversão do texto de
"string" para o formato linha e coluna (estilo matriz 8x8), para que este possa ser
interpretado pelo Módulo LED Drive; já a etapa de Expansão de área visível verifica se
novos módulos de display foram conectados a placa central e com isso a necessidade de
readequar o texto a nova matriz de exibição, tanto horizontal como verticalmente.
O módulo de software será desenvolvido utilizando a linguagem do Arduino
DSL (domain specific language) inspirado no C e C++.
Módulo
Processamento
Módulo
Tratamento
dados
formatadosdados
Nº de
módulossolicitar
módulos
Figura 13 - Diagrama de interação do Tratamento
3.4.1. Especificação dos Processos
Função TRATAMENTO
ESCREVE load IGUAL 0
REPITA 8 vezes
ESCREVE clock IGUAL 0
ESCREVE dados
ESCREVE clock IGUAL 1
FIM-REPITA
ESCREVE load IGUAL 1
ESCREVE load IGUAL 0
FIM-TRATAMENTO
Figura 14 - Diagrama temporal de funcionamento
14
A funcionalidade de expansão de área visível será desenvolvida em hardware
aplicando a ideia de um circuito lógico “AND” com diodos. Para implementar a porta
lógica “AND” é necessário ligá-los em paralelo (Figura 15) sendo que o catodo dos
mesmos será conectado ao terminal DATAOUT (seja do arduino ou dos MAX7219) e o
anodo será ligado em comum na saída e em um resistor R1 acoplado ao VCC.
Figura 15 - Porta lógica "AND" com diodos
Para identificar o número de Painéis de Led conectados é necessário
verificar a saída AB (Figura 15), que terá dados digitais ligados ao arduino, e contar o
número de ciclos de clock que a saída AB demora em atingir o nível alto ao ser aplicado
1 (nível alto) em todas as entradas.
15
Figura 16 - Expansão de área visível
Sabendo que a ligação em cascata dos MAX7219 leva 16 ciclos de clock para
transmitir a informação de um para outro, é possível apresentar uma formulação
matemática simples para deduzir o número de painéis:
(
)
3.5. Módulo LED Drive
O MAX7219 (Figura 17) é um driver serial I/O que interopera com displays de 7
segmentos, bargraphs e 64 LED’s (matriz 8x8). O chip possui internamente um
decodificador BCD code-B, um scan multiplexador, drivers de segmento e dígitos, e
memória RAM estática 8x8. É possível limitar a corrente do segmento (linha) com o
auxílio de um resistor externo; além de ser compatível com protocolos SPI™, QSPI™, e
MICROWIRE™.
16
Figura 17 - MAX7219 vista superior
Figura 18 - Diagrama funcional do MAX7219
O MAX7219 ainda permite ativar o modo shutdown, que reduz a corrente para
150µA (Tabela 2), o modo de controle de brilho, que controla o brilho da matriz
analógica ou digitalmente, e o modo de teste que acende todos os LED’s para verificar
se estão funcionando corretamente.
17
Tabela 2 - Características elétricas do MAX7219
O Projeto Lógico é descrito na Figura 19, demonstrando a ligação do MAX7219
com a matriz de LED (linha x coluna), e as conexões “IN” e “OUT” que serão
conectados ao arduino e em outro módulo de display, respectivamente.
O resistor ligado ao terminal nº 18 limita a corrente de pico de cada linha
(SEGDP – SEGG); os dois capacitores são para minimizar o efeito de ripple da
18
alimentação e devem ser ligados entre o VCC e o ground e de preferência o mais perto
possível do chip.
Figura 19 - Projeto Lógico
Figura 20 - Projeto Elétrico
19
3.6. Módulo Display
Uma vez que os díodos só deixam passar corrente numa direção e os LED’s
fazem parte dessa categoria, estes dispositivos só acendem se a corrente estiver
passando do cátodo (+) para o ânodo (-), e os LED’s não se danificam se a corrente
estiver tentando passar ao contrário, apenas não acendem.
Conforme Figura 21, cada LED é colocado num ponto de intercepção entre uma
linha e uma coluna de fio condutor. O contato positivo fica ligado na linha, e o negativo
na coluna. Para ligar apenas um dos LED’s, primeiro passam-se as linhas para ground e
as colunas para positivo, o que desliga todos. Depois, envia-se a corrente na polaridade
certa para a linha e a coluna que se pretende acender, os outros LED’s em contato com
essa mesma linha estariam recebendo corrente pelos seus dois contatos e, como a
corrente procura o caminho com menor resistência, não passa por esses porque não têm
ground.
Figura 21 - Matriz de LED
As matrizes de LEDs apresentam características elétricas semelhantes às
descritas nas Tabela 3 e 4.
20
Tabela 3 - Características elétricas máximas da matriz
Tabela 4 - Características elétricas das cores da matriz
4. Cronograma
O cronograma (Anexo 1) definido para o 1º semestre de 2011 foi dividido em
três etapas: Preparação, etapa que determinava a aprovação do projeto a ser realizado;
Planejamento, definições básicas do projeto (desde módulos e suas interações até etapas
de testes); e por fim Desenvolvimento, que terá início ainda no 1º semestre e adentrará o
2º, sendo marcado pelo início da construção dos módulos.
O cronograma do 1º semestre culminou na definição dos módulos, interações,
testes e componentes – apresentados neste documento – e também no início da
construção do Módulo Interface, também presente neste documento.
O foco para o 2º semestre (Anexo 2 e Anexo 3) é a construção física do projeto,
iniciando com a definição das características elétricas dos módulos e, em sequência, a
construção dos protótipos de cada módulo.
21
Após a conclusão da etapa citada acima, serão iniciados os testes individuais de
cada módulo e por fim o teste em conjunto, no qual cada módulo será testado com o seu
vizinho (Interface + Processador, Processador + Tratamento, etc.).
Em paralelo aos estudos e construções do projeto, reuniões internas (apenas
membros do projeto) decidirão o rumo do projeto, analisando os riscos até o momento e
a necessidade de correções, e uma vez por mês um roteiro será repassado para o
orientador a fim de deixar o mesmo a par da situação do projeto e também para repassar
sua análise critica.
5. Procedimentos de Teste e Validação do Projeto
Para a etapa de teste e validação do projeto Painel Eletrônico de LED iremos
descrever os testes em caixa preta, que consiste em verificar a saída dos dados de acordo
com os estímulos de entrada, e os testes em caixa branca que usam a perspectiva interna
(código fonte e circuitos) do sistema para modelar os casos de teste.
O documento foi atualizado com o tópico 5.3 Plano de Testes que determina de
forma bastante simples o tipo de teste, como será realizado e o resultado obtido. Este
tópico se apresenta como um guia para que os testes possam ser realizados para obter
um padrão de qualidade nas respostas solicitadas.
5.1. Testes em Caixa Preta
Os testes em caixa preta serão realizados pelo usuário onde o mesmo não tem
conhecimento das funcionalidades internas do sistema, ou seja, do código fonte e dos
circuitos. Para estes testes serão envolvidos todos os módulos definidos no plano de
projeto, onde nós temos o Módulo Interface, Módulo Tratamento, Módulo Display,
Módulo Led Drive e Módulo Processamento.
22
5.1.1. Teste de Inserção de Texto
O usuário entrará com a mensagem de no máximo 80 caracteres no software
instalado e configurado no computador onde pode ser vista a interface do usuário na
Figura 4. Na tela, o usuário tem os seguintes botões como opções: Salvar, Cancelar,
Abrir, Visualizar e Atualizar, e os campos TextBox e Label.
O Botão Salvar trará a função de salvar a mensagem escrita no TextBox em
formato TXT no computador.
O Botão Cancelar trará a função de limpar o texto do TextBox.
O Botão Abrir trará a função de abrir um arquivo de formato TXT e carregar a
informação contida no mesmo para o campo TextBox.
O Botão Visualizar trará a função de simular a mensagem que será reproduzida
no Display de LED.
O Botão Atualizar terá a função de enviar a mensagem definida pelo usuário
para o Módulo Processamento, que irá implementar os parâmetros necessários para
encaminhar a mensagem para o Módulo LED Drive, que por fim acionará os LED’s
correspondentes do Módulo Display.
Feito a inserção do texto, bastará o usuário selecionar o botão Atualizar para que
a mensagem seja carregada no Arduino e assim exibida no Módulo Display de LED.
5.1.2. Teste de Expansão de Área Visível
Com o painel inteiramente desligado da fonte de alimentação, o usuário bastará
conectar o Display de LED em outro idêntico utilizando os cabos e conectores
necessários, como pode ser visto na Figura 22. A conexão em cascata poderá ser feita
tanto na vertical quanto na horizontal, feito isso, basta religar na fonte de alimentação e
o sistema se incumbirá de identificar e ajustar automaticamente o texto para que a
mensagem percorra toda a nova área visível do Painel de LED.
23
Figura 22 - Displays de LED desconectados
5.2. Testes em Caixa Branca
Os testes estruturais, também conhecidos como testes em caixa branca serão
realizados pelos desenvolvedores do código fonte e circuitos do Painel Eletrônico de
LED, os quais têm o conhecimento de todas as funcionalidades internas do sistema seja
ela lógica de programação ou circuitos eletrônicos. Os testes executarão todas as
decisões lógicas para valores falsos ou verdadeiros que forem inseridos no sistema.
5.2.1. Teste de Inicialização da Interface
Este teste consiste em apenas verificar se o programa está inicializando
corretamente. Para isso basta executar o programa e aguardar que o mesmo inicialize
com todas as funcionalidades na tela.
5.2.2. Teste de Abertura, Salvamento e Visualização de Texto na
Interface
Este teste consiste em verificar se o programa está respondendo aos comandos
determinados pelos desenvolvedores do projeto; ao clicar nos botões Abrir, Salvar e
Visualizar o sistema deve assegurar que o software cumpra com suas especificações e
atenda as necessidades atribuídas.
24
Botão Abrir: Ao clicar no botão abrir o sistema deve trazer as opções de seleção
de pasta (semelhante ao do Windows), e ao selecionar o arquivo em formato “*.TXT”
bastará clicar em abrir e o texto passará por uma filtragem, removendo os caracteres
inválidos do escopo e, então, será carregado na interface do programa.
Botão Salvar: Ao clicar no botão salvar o sistema deve trazer as opções de
seleção de pasta (semelhante ao do Windows) para o destino da mensagem que será
salva no formato “*.TXT”; o mesmo filtro aplicado na opção abrir deverá ser utilizado.
Botão Visualizar: Ao clicar no botão visualizar o sistema deve ser capaz de
simular no campo label da interface a mensagem que será reproduzida no Display de
LED.
5.2.3. Teste de Expansão de Área Visível
O teste de Expansão de área visível será realizado com o auxílio de um
osciloscópio, conectado ao catodo do diodo, para verificar se o número de ciclos de
clock de saída está correto, sendo o valor válido de 16 ciclos por módulo a partir do
primeiro.
Os diodos em paralelo devem funcionar como portas lógicas “AND” e para
validação será verificado a leitura do osciloscópio atribuindo valores de acordo com a
tabela abaixo.
Tabela 5 - Tabela verdade da porta lógica "AND"
Entrada A Entrada B Saída
0 (zero) 0 (zero) 0 (zero)
0 (zero) 1 (um) 0 (zero)
1 (um) 0 (zero) 0 (zero)
1 (um) 1 (um) 1 (um)
25
5.3. Plano de Teste
Tabela 6 - Teste nº1
Número: 1 Tipo/Nome: Software / Interface
Funcionalidade:
Tela de comunicação homem-máquina.
Dependências:
Objetivos:
Inicializar corretamente a tela de interface.
Valores de Entrada:
Passos:
1. Selecionar o executável e pressionar “enter”;
2. Verificar a abertura do programa com 5(cinco) botões: SALVAR, CANCELAR,
ABRIR, VISUALIZAR e ATUALIZAR, além de 1(um) campo para inserção de texto
(TextBox) e 2(dois) campos para exibição de texto (Label).
Observações:
Resultados Esperados:
Interface inicializada e pronta para utilização.
Necessidades de Ambiente:
Windows Xp+
Tabela 7 - Teste nº2
Número: 2 Tipo/Nome: Software / Salvar
Funcionalidade:
Salvar o texto em um arquivo “TXT”.
Dependências:
Módulo Interface.
Objetivos:
Verificar a existência de um arquivo “*.TXT” com o texto salvo.
Valores de Entrada:
26
Texto do TextBox do Módulo Interface
Passos:
1. Selecionar o botão SALVAR e pressionar “enter”;
2. Escolher um nome para o arquivo e pressionar salvar;
3. Localizar arquivo salvo e verificar se o texto encontra-se no arquivo.
Observações:
Resultados Esperados:
Arquivo salvo.
Necessidades de Ambiente:
Windows Xp+
Tabela 8 - Teste nº3
Número: 3 Tipo/Nome: Software / Cancelar
Funcionalidade:
Limpar os buffers do Módulo Interface.
Dependências:
Módulo Interface.
Objetivos:
Limpar o campo TextBox.
Valores de Entrada:
Passos:
1. Selecionar o botão CANCELAR e pressionar “enter”;
2. Verificar se o texto no campo TextBox da interface foi limpo.
Observações:
Resultados Esperados:
Buffers limpos.
Necessidades de Ambiente:
Windows Xp+
27
Tabela 9 - Teste nº4
Número: 4 Tipo/Nome: Software / Abrir
Funcionalidade:
Abrir um arquivo “TXT” e carregar a informação no sistema.
Dependências:
Módulo Interface.
Objetivos:
Abrir corretamente apenas um arquivo “*.TXT” e carregar apenas caracteres válidos no sistema.
Valores de Entrada:
Arquivo “*.TXT”.
Passos:
1. Selecionar o botão ABRIR e pressionar “enter”;
2. Escolher um arquivo e pressionar abrir;
3. Verificar se o texto do arquivo foi corretamente inserido no campo TextBox.
Observações:
Resultados Esperados:
Arquivo salvo.
Necessidades de Ambiente:
Windows Xp+
Tabela 10 - Teste nº5
Número: 5 Tipo/Nome: Software / Visualizar
Funcionalidade:
Simular o texto conforme seria no Módulo Display.
Dependências:
Módulo Interface.
Objetivos:
Verificar a correta simulação e visualização do texto.
Valores de Entrada:
Texto do TextBox do Módulo Interface
Passos:
1. Selecionar o botão VISUALIZAR e pressionar “enter”
2. Aguardar que texto deslize da direita para esquerda.
28
Observações:
Caracteres fora do alfabeto brasileiro sem acentuação não serão impressos
Resultados Esperados:
Efeito de rolamento do texto da direita para a esquerda.
Necessidades de Ambiente:
Windows Xp+
Tabela 11 - Teste nº6
Número: 6 Tipo/Nome: Software / Atualizar
Funcionalidade:
Enviar a mensagem para o Módulo Processamento.
Dependências:
Módulo Interface e Módulo Processamento.
Objetivos:
Verificar o correto envio da mensagem via porta USB.
Valores de Entrada:
Texto do TextBox do Módulo Interface
Porta que o Módulo Processamento está conectado.
Passos:
1. Selecionar o botão ATUALIZAR e pressionar “enter”;
2. Aguardar mensagem de envio concluído.
Observações:
Resultados Esperados:
Envio concluído e mensagem de conclusão exibida.
Necessidades de Ambiente:
Windows Xp+, Arduino
Tabela 12 - Teste nº7
Número: 7 Tipo/Nome: Software / Fechar
Funcionalidade:
Fechar o aplicativo interface.
Dependências:
29
Módulo Interface.
Objetivos:
Verificar o correto fechamento do programa com opções de salvar.
Valores de Entrada:
Passos:
1. Pressionar o botão “X” da janela;
2. Aguardar aparecimento da opção de salvar o texto (Verificar teste nº2).
3. Aguardar fechamento automático do programa.
Observações:
O passo 2 só será exibido caso o texto seja alterado.
Resultados Esperados:
Programa finalizado com sucesso.
Necessidades de Ambiente:
Windows Xp+
Tabela 13 - Teste nº8
Número: 8 Tipo/Nome: Software / Conversão de Texto
Funcionalidade:
Converter caracteres do formato matriz 8x8 para novo formato linha e coluna.
Dependências:
Módulo Tratamento
Objetivos:
Verificar a correta formatação de formatos
Valores de Entrada:
Pattern.h
Passos:
1. Selecionar um caractere no formato ASCII e enviar via comando “imprime(caractere)”;
2. Verificar a localização do caractere no banco de dados.
3. Verificar a resposta da função “imprime()” para write(linha) e write(coluna).
Observações:
Por serem funções que não retornam um valor, mas chamam funções adjacentes, é necessário
percorrer toda a função para localizar a resposta.
Resultados Esperados:
Conversão do formato char ASCII para formato inteiro decomposto em linha e coluna.
30
Necessidades de Ambiente:
Windows Xp+, Arduino.
Tabela 14 - Teste nº9
Número: 9 Tipo/Nome: Hardware / Funcionamento dos LEDS
Funcionalidade:
Acender os LEDS para o público com brilho padrão.
Dependências:
Objetivos:
Verificar se todos os LEDS funcionam corretamente e se a intensidade luminosa de cada LED é
de aproximadamente 6000 MCD (millicandela).
Valores de Entrada:
Passos:
1. Com os cabos positivo e negativo da fonte de alimentação energizados, bastará conectá-
los nos terminais catodo e anodo dos LEDS.
2. Com o medidor de intensidade luminosa ligado, bastará aproximá-lo de cada LED e
realizar a leitura no painel do aparelho.
Observações:
Resultados Esperados:
LEDS funcionando e com brilho de aproximadamente 6000 MCD cada.
Necessidades de Ambiente:
Fonte de alimentação calibrada pra 2,2 Volts e um medidor de intensidade luminosa.
Tabela 15 - Teste nº10
Número: 10 Tipo/Nome: Hardware/Teste de funcionamento de integração de
módulos.
Funcionalidade:
Reproduzir uma mensagem para o público.
Dependências:
Módulo Interface, Módulo Processamento, Módulo Tratamento, Módulo LED Drive e Módulo
Display.
31
Objetivos:
Verificar se o módulo LED drive aciona os LEDS da matriz 8x8.
Verificar se no pino DOUT do CI MAX7219 aparece em binário às informações referentes à
linha e coluna para cada caractere com uma defasagem de 16 ciclos de clock para o DIN.
Valores de Entrada:
Texto do TextBox do Módulo Interface.
Passos:
1. O usuário bastará entrar com a mensagem no Módulo Interface, e aguardar que esta
informação apareça em binário no visor do osciloscópio, que deverá esta conectado no
pino LOAD do CI MAX7219, e o mesmo acionar os LEDS correspondentes na matriz
de LED.
Observações:
Resultados Esperados:
Acionamento correto dos LEDS na matriz e visualização dos bits correspondente a cada
caractere no visor do osciloscópio.
Necessidades de Ambiente:
Osciloscópio
Tabela 16 - Teste nº11
Número: 11 Tipo/Nome: Hardware/ Teste de gravação no processador do
arduino.
Funcionalidade:
Assegurar que o código foi gravado no Módulo Processamento.
Dependências:
Módulo Processamento.
Objetivos:
Verificar se o código foi gravado corretamente no arduino.
Valores de Entrada:
Código do Projeto
Passos:
1. Na interface do compilador do próprio arduino, bastará o programador acionar o botão
upload e aguardar a mensagem de “Done Uploading” na interface do compilador,
2. Observar os LEDS TX e RX da placa do arduino piscarem simultaneamente.
Observações:
32
Resultados Esperados:
Código do projeto gravado no processador do arduino.
Necessidades de Ambiente:
Compilador do arduino instalado no computador, cabo USB e o kit de desenvolvimento do
arduino ATMEGA 1280.
Tabela 17 - Teste nº12
Número: 12 Tipo/Nome: Hardware Teste de expansão de área visível.
Funcionalidade:
Expansão de área visível.
Dependências:
Módulo Interface, Módulo Processamento, Módulo Tratamento, Módulo LED Drive e Módulo
Display.
Objetivos:
Ampliar a área de exibição da mensagem automaticamente.
Valores de Entrada:
Passos:
1. Desligar o painel (8x8) da fonte de alimentação.
2. Conectar a saída do painel na entrada de outro painel idêntico.
3. Religar a fonte de alimentação do painel.
Observações:
Resultados Esperados:
Ampliação automaticamente da área visível do painel eletrônico, Ex.: de (8x8) para (8x16).
Necessidades de Ambiente:
6. Riscos
Os riscos potenciais serão mostrados na Tabela 18, junto o seu impacto, que será
classificado em baixo, médio e alto, e a probabilidade que terá uma escala de 1 a 5 de
33
ocorrer, podendo gerar atrasos ou a não conclusão do projeto, assim como será
apresentado a ação de prevenção e contingência para que o projeto seja desenvolvido e
entregue no prazo.
Tabela 18 - Análise de Riscos
Nº Descrição do Risco Probabilidade Impacto Ação de Prevenção Ação de
Contingência
1 Alteração do escopo 1 Alto
Pesquisar por
alternativas de
desenvolver o
projeto
Buscar
alternativas de
desenvolver o
projeto
2 Atraso no
desenvolvimento 2 Alto
Iniciar o
desenvolvimento
antecipado
Alterar
linguagem de
programação
3 Cronograma inviável 1 Médio
Definir prazos
maiores para o
projeto
Aumentar a
carga horária de
trabalho
4 Dificuldade com a
eletrônica aplicada 4 Alto
Iniciar o estudo
antecipado de
técnicas de
eletrônica
Buscar auxílio
com o
orientador do
projeto
5
Dificuldade nas
linguagens de
programação
2 Médio
Iniciar um estudo
antecipado sobre
as linguagens
Buscar auxílio
com um
desenvolvedor
especializado
6
Falha na aquisição de
componentes
específicos
2 Médio
Iniciar a busca
antecipada para a
aquisição dos
componentes
Adquirir
componentes
equivalentes
7
O não entendimento
da tecnologia
utilizada
2 Médio
Iniciar o estudo
durante o período
de elaboração do
projeto lógico
Buscar auxílio
com o
orientador do
projeto
34
8 Sobrecarga dos
recursos 4 Médio
Reorganizar a
agenda dos
recursos
envolvidos
Alterar
prioridade das
atividades dos
recursos
9
Falha no
desenvolvimento do
módulo Tratamento
(Circuito e código
responsável pela
identificação
automática de novos
Displays de LED na
horizontal)
4 Alto
Iniciar o estudo
antecipado de
técnicas de
programação e de
eletrônica
Buscar auxílio
com o
orientador do
projeto
10
Falha no
desenvolvimento do
módulo Tratamento
(Circuito e código
responsável pela
identificação
automática de novos
Displays de LED na
vertical)
4 Alto
Iniciar o estudo
antecipado de
técnicas de
programação e de
eletrônica
Buscar auxílio
com o
orientador do
projeto
11
Falha na
programação C/C++
que realizará a
comunicação entre a
interface e o
Arduino.
3 Médio
Iniciar um estudo
antecipado sobre
as linguagens
C/C++ para a
realização da
comunicação
Alterar a
linguagem de
comunicação
para Plataforma
Processing
(Arduino)
Durante a execução do projeto e os novos estudos realizados, verificou-se que os
riscos de nº 3, 4, 5 e 7 tiveram suas probabilidades de ocorrer reduzidas, visto que os
responsáveis adquiriram conhecimento na área específica. Contudo, o risco nº 8,
referente aos recursos (membros do projeto), teve um aumento de um – indo de 3 para 4
– em probabilidade.
35
Por fim, o risco nº 11 foi completamente anulado; a fase de testes referentes a
esse risco teve início dia 13/09, de acordo com o cronograma, e apresentou resultados
satisfatórios em todos os casos, demonstrando que o risco não mais existe.
7. Resultados
O projeto em geral foi um case de sucesso. As dificuldades, facilidades e o
resultado final estão descritos abaixo.
7.1. Dificuldades
A primeira dificuldade encontrada ocorreu após a definição básica dos
componentes, na qual a importação dos mesmos se mostrou bastante difícil frente à
burocracia.
O desenvolvimento de um protótipo que aceitasse e entendesse a inserção de
novos módulos apresentou falhas em grande demasia, sendo somente solucionado com
a intervenção do orientador.
O trabalho de soldagem dos componentes foi repetitivo e cansativo, e em muitas
etapas exauriu os membros da equipe, todavia o processo é bastante simples, exigindo
apenas trabalho braçal e atenção.
Por fim, as dependências do laboratório alocado para o projeto, em vários
momentos, apresentou deficiência referente aos instrumentos básicos para
desenvolvimento do sistema.
36
7.2. Facilidades
O trabalho realizado com o arduino agregou um enorme valor ao projeto, tanto
pela capacidade de incorporar novos módulos, assim como pela facilidade em
desenvolver o software, visto que a linguagem é bastante específica e se encontra bem
documentada, além do fato de existir uma forte comunidade disposta a auxiliar.
A internet propiciou uma enorme quantidade de exemplos de interação arduino-
led, que auxiliou para o desenvolvimento do software próprio, além de bibliotecas
prontas.
7.3. Resultados
O estudo e desenvolvimento do hardware foram exaustivos para que fosse
construído um modelo único para todos os módulos e que não fosse necessário que o
usuário apresentasse qualquer forma de conhecimento em eletrônica para utilizar.
O software de interface foi construído para que exibisse uma tela limpa e
amigável para o usuário, sendo apenas disponibilizadas pequenas alterações de forma
que melhore a experiência do cliente com o produto.
O levantamento dos riscos envolvendo o projeto se mostrou eficiente no que
condiz com o item nº10, o que nos obrigou a ativar o gatilho e a ação de prevenção;
visto que a dificuldade não foi sanada, a ação de contingência foi tomada, o que resultou
em alteração do escopo para remoção do item.
37
8. Conclusão
As várias abordagens pesquisadas durante esta nova etapa de coleta de
informações trouxeram propostas que permanecem ainda compatíveis com a ideia
inicial do projeto, tendo como foco a publicidade para apresentar informações de certo
produto ou marca de uma empresa, por meio da comunicação visual de mensagens
dinâmicas utilizando tecnologias de LED’s.
Para o desenvolvimento do Módulo Interface vimos que a ferramenta Microsoft
Visual Studio, utilizando a linguagem C# é a mais adequada por ser frequentemente
atualizada e de fácil utilização. A escolha do Arduino ATmega1280 como micro
processador, juntamente com a linguagem DSL, através de análises mostrou-se
satisfatório ao que a ferramenta se propõe a fazer, agregando flexibilidade e poder,
enquanto os componentes citados no Módulo LED Drive apresentam controle
específico do display.
Através da nova análise dos riscos pode se considerar que o risco do projeto
ainda permanece como médio, visto que será necessário gastar a maior parte do tempo
no desenvolvimento do módulo tratamento, mais especificamente no sistema de
reconhecimento automático de novos displays quando conectados tanto na vertical
quanto na horizontal.
Com o decorrer da elaboração da etapa do projeto físico percebeu-se que o
projeto proposto é competitivo comercialmente, visto que os componentes são mais
robustos que o necessário para agregar flexibilidade porém o custo ainda permanece
abaixo dos propostos por similares no mercado.
38
9. Referências Bibliográficas
MICROSOFT VISUAL STUDIO. Disponível em:
http://www.microsoft.com/visualstudio/pt-br/visual-studio-2010-launch. Acesso em 14
de abril de 2011.
CPROGRAMMING.COM. Disponível em: http://www.cprogramming.com/. Acesso
em: 14 de abril de 2011.
ARDUINO MEGA. Disponível em: http://arduino.cc/en/Main/ArduinoBoardMega.
Acesso em 25 de março de 2011.
LEDCOM – Soluções em LED. Disponível em:
http://www.ledcom.com.br/venda/paineis-outdoor/outdoor-25mm. Acesso em 15 de
abril de 2011.
FLOYD, Thomas L., Electric Circuit Fundamentals, 2ª ed. Pearson Addison Wesley,
Merrill, 1991.
FLOYD, Thomas L., Electronic Devices 3ª ed. Pearson Addison Wesley, Merrill, 1992.
SOMMERVILLE, Ian. Engenharia de Software. 6ª ed. São Paulo: Pearson Addison
Wesley, 2003.
39
Anexo 1
40
Anexo 2
41
Anexo 3