Aplicação do modelo do ator em um programa de teste e diagnóstico de circuitos eletrônicos / Antonio Carlos Luppi Junior; orientador, Fernando Rangel de Sousa, 2017. Foram criadas classes de atores para cada área de competência do teste: interface com multímetros, comunicação com o dispositivo em teste, teste de potência de RF, gerador de registro de teste e controle de execução. Melhorias na ergonomia foram consideradas durante o processo de desenvolvimento, e testes anteriores de execução de rotinas de teste mostraram melhorias no tempo de execução do teste e automação do processo.
Este trabalho aborda a reescrita e implementação de um programa de testes funcionais e estruturais para PCIM (Mounted Printed Circuit Board) utilizando o modelo de ator de computação concorrente (Hewitt, 2010; Hewitt e Zenil, 2013) com foco na flexibilidade, reusabilidade e escalabilidade para grandes produções.
OBJETIVOS
Além disso, como os ciclos de desenvolvimento são rápidos e adaptações de hardware são necessárias para quase todos os lotes produzidos, o desafio torna-se ainda maior, exigindo maior facilidade e flexibilidade na adaptação de scripts de teste e hardware.
MOTIVAÇÃO
Tecnologias de comunicação sem fio e barramentos de alta velocidade são incorporados em quase todos os sistemas embarcados fabricados, exigindo hardware de teste especializado. Ao trabalhar com programas de teste, é comum que um engenheiro de teste desenvolva programas difíceis de reutilizar ou manter devido à falta de método ou dinâmica de trabalho forçado.
CONTEXTO PRODUTIVO E CENÁRIO DE TESTE
Caso contrário, erros de PCB em soldas ou interconexões só serão detectados nas etapas finais de teste da linha de produção. A etapa de testes da linha de produção da fábrica apresentou problemas, como por exemplo a lentidão e o caráter rudimentar desta etapa em relação ao crescimento da produção.
ORGANIZAÇÃO DESTE MANUSCRITO O documento está organizado em sete capítulos
Os testes de circuitos eletrônicos estão presentes em toda a cadeia de projeto, fabricação e operação de um produto. Como este trabalho discute testes de fim de linha, o foco estará nas etapas finais de teste na cadeia de fabricação.
TESTE E DIAGNÓSTICO PELA CADEIA PRODUTIVA: DO CIR- CUITO INTEGRADO AO TESTE SISTÊMICO
No trabalho de Hird et al. 2002), o conceito de cobertura de teste é apresentado como uma medida de quanto da placa de circuito impresso está sendo verificado ou também como um indicador numérico da qualidade do teste. PCOLA/SOQ (Presença, Correção, Orientação, Alinhamento ao Vivo/Curto, Aberturas, Qualidade-Presença, Precisão, Orientação, Ao Vivo, Alinhamento/Curtos, Circuito Aberto, Qualidade), criado pela Agilent Technologies, estende as métricas de teste para questões de interconexão; Pino, malha de circuito e defeitos funcionais são testados no final da linha de produção por duas categorias de teste, testes estruturais e testes funcionais.
Os gabaritos de teste são uma ótima ferramenta para testar placas de circuito eletrônico. O padrão IEEE 1149.1 é baseado em células de teste incorporadas em todos os pinos de E/S do circuito integrado (Figura 3). BSDL é um subconjunto do VHDL e tem como objetivo descrever a infraestrutura de teste de um CI para tornar mais consistente a geração de testes e toda a cadeia de desenvolvimento envolvida.
Conforme mencionado anteriormente, o JTAG não permite a utilização de padrões de teste em velocidade nominal, deixando a classe de falhas de desempenho para testes funcionais. O processo de teste funcional em velocidade graduada é muito mais demorado em comparação com a varredura periférica (Thibeault et al., 2006). Como um sistema de caixa preta, o teste funcional consiste em dados de geração, a saída de teste resultante e também um script de teste.
A geração de scripts de teste geralmente é manual e os esforços de pesquisa de teste funcional se concentram em métodos de automatizar a geração de teste. O trabalho de Thibeault et al. investigação de otimização de script e reutilização de padrões de teste gerados diretamente por ferramentas de validação de design.
PADRÕES DE PROJETO EM LABVIEW
No entanto, a programação simultânea baseada em threads, bloqueios e estado compartilhado é considerada difícil de fazer e propensa a erros (Erb criou o modelo de ator como uma alternativa aos threads livres de problemas de computação simultânea e sistemas distribuídos. A abordagem no modelo de ator é totalmente diferente, pois remove completamente a ideia de estado compartilhado.
O modelo de ator utiliza troca de mensagens assíncronas para comunicação, atribuindo a cada ator sua própria caixa de mensagem (Figura 12), onde as mensagens são armazenadas enquanto o ator processa a mensagem anterior. Erb (2012) aponta que a implementação de estados privados é fundamental para o sistema no modelo de ator. A natureza assíncrona do modelo de ator sem estado é semelhante à comunicação de rede que permite a implementação de sistemas distribuídos.
De fato, muitas das implementações do modelo de ator oferecem essa funcionalidade e permitem fácil expansão do sistema para várias máquinas em um sistema concorrente e distribuído (Erb, 2012; Hewitt, 2010). O modelo ator possui implementações em diversas linguagens, tanto no paradigma orientado a objetos como também no paradigma funcional. Essa hierarquia, por um lado, força a criação de atores supervisores, mas também limita a comunicação entre a rede de atores.
O DISPOSITIVO SOB TESTE
A partir dos últimos testes e diagnósticos investigados, nota-se que a configuração do teste de produção investigado pode ser melhorada em vários aspectos, principalmente em hardware. No entanto, este trabalho limita-se ao desenvolvimento de um novo programa de teste de produção, tendo-se optado por limitar o âmbito do trabalho a um único produto e manter a mesma configuração de teste: bateria de testes, script e o mesmo gabarito. Pilha de protocolo TCP/IP incorporada e acessível com comandos AT, incluindo conexão segura via TLS/SSL; Serviços de DNS e Ping;
Isso pode ser evitado se a empresa responsável pela montagem possuir equipamentos de inspeção radiográfica. Por um lado, isso retira da empresa solicitante a responsabilidade de resolver problemas de baixo nível, bem como a necessidade de manter pessoal e equipamentos especializados para analisar esse tipo de falha. Devido a essas limitações no teste estrutural, o escopo do teste elaborado é limitado às verificações funcionais administradas pelo próprio produto.
As seguintes rotinas são executadas no teste funcional: captura do número de série, teste do botão liga-desliga e teste do temporizador de guarda. Vale ressaltar que as entradas e saídas digitais, assim como os LEDs, são controlados pelo modem através do expansor GPIO com endereçamento I2C. Neste caso, a potência do transmissor de radiofrequência é testada por meio de um instrumento específico mencionado na seção 3.3.2.
COBERTURA E ROTEIRO DE TESTE
A JIGA E OS INSTRUMENTOS DE TESTE
REQUISITOS DE SOFTWARE
Lendo o número de série armazenado no MC9S08QG8 e validando-o com o número de série colado na placa; 4 International Mobile Station Equipment Identity ou International Mobile Equipment Identification é um número de identificação único globalmente para cada telefone celular ou modem. Registro da execução do teste em arquivo de texto e resumo do teste em formato estruturado;
Ao considerar os requisitos de escalabilidade, simultaneidade, paralelismo e modularidade, deve-se notar que, dentre os padrões de projeto revisados, o framework de atores é o que melhor se adequa à base do programa, principalmente por permitir a criação de componentes isolados que são naturalmente concorrentes e utilizáveis em diferentes configurações de software e hardware. Além disso, é uma estrutura escalável, tanto na criação de múltiplos atores na mesma máquina quanto para sistemas distribuídos. Vários padrões de projeto foram usados na fase de implementação do ator: máquinas de estado, manipuladores de eventos, produtores-consumidores e outros.
MATERIAL UTILIZADO
MODELO DO SISTEMA NO FRAMEWORK DE ATORES
A leitura dos pacotes de instrumentos (figura 16), a sincronização e a conversão de dados são realizadas por ele, bem como a interface do usuário para o operador do multímetro e a validação das medições comparadas à tabela de referência. Entre suas funções estão: gerar um arquivo de log de teste completo para fins de depuração. O relacionamento entre as classes criadas com as classes base do framework pode ser visto no diagrama de classes UML da figura 19.
Observe que as mensagens entre atores possuem uma superclasse em comum e que para cada ator existem várias classes de mensagens associadas a ele. Para melhor legibilidade, neste diagrama as classes de mensagens são suprimidas, assim como muitos dos VIs (Virtual Instruments) das classes criadas.
IMPLEMENTAÇÃO
Caso contrário, prossiga para o próximo ponto de teste ou, se for o último ponto, passe na bateria de testes. A interface gráfica do usuário (GUI) é mostrada na Figura 22, onde o operador pode acompanhar as medições e qual ponto de teste a sonda deve sair. Em termos de configuração, este ator deve receber as seguintes informações: porta serial utilizada; tempo de estabilização da medição; número de tentativas; e a matriz de pontos de teste com os seguintes atributos para cada ponto: limite máximo; limiar mínimo; equipamento de medição.
Como o ator ModCOM, o DMM usa a sequência de mensagens do controlador para relatar o veredicto final sobre as medições e os dados de teste brutos. Este ator recebe dois conjuntos diferentes de dados do controlador de teste: os dados brutos de execução do teste e o cluster contendo os dados de teste resumidos. Recebe o cluster de dados do DUT e os resultados da bateria de teste e o transforma em um objeto JSON.
Outro método exposto por uma classe de mensagem é report status.vi, que é usado para enviar registros de execução de teste e saída de porta serial para o controlador. A Figura 26 revela a interface do usuário do programa, que oferece ao usuário duas saídas de texto: o dump da comunicação serial à esquerda e o registro de execução das baterias de teste e medição à direita. As etapas de teste envolvendo a interação do funcionário são projetadas para minimizar o esforço repetitivo e a fadiga do operador.
RESULTADOS E ANÁLISE DE DESEMPENHO
ANÁLISE DA IMPLEMENTAÇÃO
Neste trabalho foi possível mostrar a aplicação do framework ator para resolução de problemas no final da linha de montagem de placas eletrônicas. O trabalho atendeu aos requisitos de modularidade e flexibilidade de implementação, mas foi limitado pela falta de um interpretador de arquivo de configuração que estendesse a flexibilidade do sistema para a equipe de teste no local de produção. Em relação à produtividade, um upgrade de test jig pode melhorar a taxa de produção, e no caso específico de jigs com troca de ferramenta de teste, o sistema de atores e o uso de concorrência podem ser melhor explorados.
TRABALHOS FUTUROS
É possível melhorar significativamente a qualidade do teste aplicando técnicas de projeto orientadas à testabilidade a uma nova revisão de produto. Outra oportunidade de melhoria seria baseada em uma análise de cobertura de falhas, que é convertida em uma nova especificação de baterias de teste.
PALAVRAS FINAIS
IEEE standard for reduced-pin and enhanced-functionality test access port and boundary-scan architecture.IEEE Std pages 1–985. Ieee standard for boundary scan-based stimulus of interconnections to passive and/or active components. Provide it: