A estratégia e método de teste do software de equipamento de contramedida eletrônica

1. Composição do equipamento

O sistema ETest_RT é composto principalmente por uma parte de hardware e uma parte de software. A parte de hardware é composta por um computador superior e um computador inferior em tempo real.O computador superior usa um computador portátil comercial, e o computador inferior usa um computador de medição e controle PXI. O computador superior instala o sistema operacional Windows, executa gerenciamento de recursos de equipamento, design de teste, programação de teste, executa o servidor, data center, executa o cliente e o depurador de download de ação em tempo real; o computador inferior instala o sistema operacional em tempo real, executa o módulo carregador, o módulo de processo em tempo real, o módulo Uploader; o computador inferior é conectado ao sistema em teste por meio de várias placas de interface PXI. O diagrama esquemático da estrutura de hardware do sistema ETest_RT é mostrado na figura abaixo.
Insira a descrição da imagem aqui
ETest_RT adota uma estrutura de desenvolvimento de software baseada em componentes e em camadas. O código de software subjacente é baseado no ambiente de desenvolvimento GCC / CMake e é desenvolvido em linguagem C ++; a estrutura de integração de software de nível superior é baseada no ambiente de desenvolvimento Micosoft Visual Studio e é desenvolvido em linguagem C # Estrutura hierárquica.
O sistema é projetado de uma forma que melhora gradualmente o nível de abstração do hardware para o usuário e é dividido em camada de aplicativo, camada de gerenciamento, camada de transformação e camada de execução.
Camada de aplicação: o usuário lida com o negócio de teste. Para o acima, ele protege os usuários da tecnologia de implementação subjacente do sistema, permitindo que os usuários se concentrem no teste em si sem ter que prestar atenção aos detalhes técnicos do sistema. Em seguida, ele chama vários dados, publica scripts de teste e direciona o início ou a interrupção dos testes.
Camada de gerenciamento: o sistema recebe instruções dos usuários na camada de aplicativo e programa e coordena as ações de teste de acordo com as unidades lógicas. Na parte superior, ele protege os detalhes de implantação do sistema para a camada de aplicativo, de modo que a camada de aplicativo não precise ser alterada por diferenças de implantação; na parte inferior, ele distribui dados e instruções para vários componentes.
Camada de transformação: o sistema conclui o mapeamento e a transformação de conceitos lógicos em entidades físicas. Na parte superior, ele protege os detalhes de trabalho dos dispositivos físicos para a camada de gerenciamento e fornece dados organizados em unidades lógicas; na parte inferior, emite instruções de operação de hardware específicas para a camada de execução.
Camada de execução: o sistema executa ações físicas reais. Na parte superior, ele relata os dados de entrada e informações de status do dispositivo físico; na parte inferior, ele opera o hardware para interagir com o sistema em teste.
O software é dividido em estado de design e estado de execução. Quando o sistema funciona no estado de projeto, não é necessário realizar uma implantação completa de software e hardware. É usado para planejar cenários de teste, projetar planos de teste, elaborar casos de teste, escrever scripts de teste, preparar dados de teste e projetar monitoramento de dados.
Quando o sistema está funcionando no estado de execução, o software e o hardware relevantes devem ser implantados de acordo com os requisitos de design do plano de teste. É usado para implementar planos de teste, executar casos de teste, executar ações de teste, monitorar dados em tempo real, obter relatórios de teste e obter resultados de teste. O estado de execução pode ser dividido em final de controle e final de execução de acordo com a posição onde é implantado entre o DUT e o usuário, e o final de execução não precisa ser monitorado manualmente durante o trabalho.
Insira a descrição da imagem aqui
As etapas para usar a plataforma ETest_RT para testar o software do sistema embarcado do equipamento são as seguintes (ver Figura 3-3):
Primeiro, use o gerenciador de recursos do equipamento para planejar os recursos do equipamento, use o software de design de teste para construir o sistema em modelo de teste, design casos de teste e dados, Forme um arquivo de plano de teste.
Depois que a programação de teste é carregada no plano de teste, o servidor, o datacenter e o monitor de dados são iniciados e operados.
O servidor em execução analisa os scripts de teste para formar recursos do processo de teste, que são compilados e vinculados pelo subsistema de computador superior em tempo real e baixados para o computador inferior em tempo real.
O computador inferior em tempo real carrega o script em tempo real e forma um processo em tempo real por meio da configuração de parâmetros. Durante o teste, o processo em tempo real interage com o sistema em teste por meio de várias placas na forma de barramento PXI; durante o
processo de execução de teste, o computador inferior em tempo real progride para a posição superior em tempo real. A parte do computador relata todos os tipos de dados para o data center, e o data center distribui todos os tipos de dados operacionais para o monitor de dados e a bancada de despacho.
Durante o teste, os dados de teste podem ser monitorados, analisados ​​e avaliados por meio de software de gravação e visualização de dados de teste e software de monitoramento de teste.
Insira a descrição da imagem aqui

2. Principais funções de cada módulo

(1) Peça de hardware

O hardware consiste em um computador superior e um computador inferior em tempo real.O computador superior usa um computador portátil comercial e o computador inferior usa um computador de medição e controle PXI. A placa de interface é conectada diretamente ao computador inferior de teste por meio da interface PXI, formando um ambiente de teste que pode atender aos requisitos de vários tipos de interfaces. Os indicadores das principais peças de hardware são os seguintes:

① Chassi PXI

 Chassi PXI compacto de 9 slots com 1 slot de sistema, 1 slot de trigger bus e 7 slots periféricos PXI / PCI Compacto
 0 ° C a + 50 ° C faixa operacional ampla de temperatura
 Ruído de operação ultrabaixa 41,6dBA  Gerenciamento
inteligente de chassi
 Estrutura leve de alumínio / aço de
5,9 kg  Tamanho: 280 mm × 177 mm × 303 mm  Fonte de alimentação
CA de nível industrial de 350 W
 Fonte de alimentação, LED de monitoramento de temperatura e ventilador

② controlador PXI

 Processador Intel® Core ™ 2 Duo P8400 2,53 GHz
 Suporte VGA + DVI dual display
 Dual channel DDR3 SODIMM 16GB
 Capacidade máxima do sistema 132 MB / s
 Disco rígido SATA integrado 250G
 E / S integrada
 Temporizador de watchdog programável

Placa de barramento ③ 1553B

 Multi-função de canal duplo, cada canal é canais A e B dual-redundantes
 Suporte 1M / 2M / 4Mbps e taxa de transmissão definida pelo usuário
 Intervalo de quadro e tempo de intervalo de mensagem podem ser definidos por software
 Suporte timestamp, resolução de 1μs
 Suporta autoteste, injeção de erro
 Suporta interrupção e acionamento externo
 Modo BC (controlador de barramento)
 Quadro BC programável
 intervalo de mensagem programável  mensagem
não periódica pode ser inserida dinamicamente
 buffer duplo de dados
 programável
 BusA, BusB opcional
 Suporte mensagem de salto de ramal
 Injeção de erro de suporte
 Modo RT (terminal remoto)
 Buffer de dados único  Buffer de dados
duplo  Buffer de dados
de ciclo de sub-endereço
 Comando ilegal programável
 Suporta injeção de erro
 Modo BM (monitor de barramento)
 Registro de mensagens 100%
 filtragem programável de dados de monitoramento
 recebimento de carimbo de data / hora

④ Placa de interface de barramento ARINC429

 Número de canais: configuração flexível do número de canais, máximo de 8 enviando e 8 recebendo
 Taxa de comunicação: 100Kbps, 12,5Kbps, 50Kbps, 48Kbps, 98Kbps
Intervalo entre palavras: 4bits, programável

⑤ placa de barramento CAN

 2 canais
 Taxa de comunicação: Suporta qualquer taxa de baud entre 1Kbps ~ 1Mbps
 Suporta transmissão bidirecional, envio e recebimento CAN
 Compatível com protocolos CAN2.0A e CAN2.0B

⑥ Placa de interface de barramento RS232 / RS485 / RS422

 Número de canais: configure com flexibilidade o número de canais, até 4 canais
 Taxa de comunicação: até 8 Mbps
 Protocolo de comunicação: RS232 / 422/485 (configuração do software)

⑦ Entrada analógica AD

 8 canais de amostragem paralela
 Resolução ADC: 16 bits
 Taxa de amostragem máxima: 100KS / s
 Controle do programa da faixa de medição
 Armazenamento de capacidade: 4MSa / canal

⑧ Saída analógica DA

 Saída analógica de 8 canais
 Resolução DAC: 16 bits
 16 canais TTL / COMS digital IO, entrada / saída pode ser programada
 2 canais contador de 32 bits

⑨ Entrada / saída digital

 E / S digital compatível com nível TTL / COMS de 32 canais
 Cada canal é opticamente isolado
 A taxa de transmissão mais alta é 1 MHz
 Armazenamento em massa 4 MB / canal

⑩ Computador host

 CPU: dual-core i5-6200U 2,3 GHz
 Memória: DDR4 2133 MHz, 8 GB
 Unidade de estado sólido: 256 GB
 Tela: 14 polegadas, resolução 1920 * 1080
 Memória de vídeo independente: 2 GB

(2) Bancada de trabalho de design

O design workbench modela o sistema a ser testado e suas interfaces externas, realiza edição e análise de protocolo, cria monitoramento de teste, estabelece planejamento de hardware, cria e gerencia casos de teste e determina o número de dispositivos de interface a serem preparados para teste. Suas principais funções incluem:
 Executar o gerenciamento do plano de teste, as operações para o plano de teste incluem: criar um plano, abrir um plano e salvar um plano.
 Cada plano de teste pode conter um ou mais itens de teste.A existência de vários itens de teste permite que cada plano de teste complete o design de vários itens de teste, o que facilita o teste de integração de vários itens de configuração no sistema.
 O projeto de teste possui operações de criação, renomeação, exclusão e visualização de atributos.
 Descreva graficamente o sistema em teste, o sistema periférico e a interface externa do sistema em teste, incluindo o número e o tipo de interface, incluindo RS422, 1553B, CAN, AD, DA, DI, DO, CT, Freq-CT , TCP e outros tipos; capaz de definir parâmetros de interface.
 Crie um protocolo de interface e use a linguagem de descrição do protocolo para descrever o protocolo, incluindo cabeçalho do pacote, final do pacote, verificação, etc., descreva cada tipo de campo e método de codificação, bem como ramificação, loop e outras estruturas.
 A fim de atender às necessidades de comunicação de dados diversos, o campo de protocolo tem uma variedade de tipos, incluindo: inteiro (sem sinal e assinado, 8 bits / 16 bits / 32 bits / comprimento personalizado), tipo de ponto flutuante, Tipo booleano, tipo de declaração condicional, tipo de declaração de ramificação, campo calculado, campo de verificação, campo de matriz.
 Crie monitoramento de teste, descreva o conteúdo do monitoramento e a forma de exibição do monitoramento de dados em tempo real e defina as condições de alarme.
 Os usuários podem adicionar monitoramento de teste ao módulo de monitoramento de teste e adicionar instrumentos de monitoramento de dados no painel de monitoramento e vincular campos de protocolo ou resultados de cálculo de campo de acordo com uma determinada fórmula por meio de diferentes tipos de instrumentos de monitoramento, de modo a monitorar os indicadores ou valores Dos instrumentos durante a operação A alteração dos dados mostra visualmente a alteração dos dados durante a comunicação do teste.
 A barra de ferramentas de monitoramento de teste gerencia todos os instrumentos de monitoramento de teste, incluindo medidores digitais, medidores de disco, gráficos, tipos enumerados, etc. Selecione o instrumento de monitoramento apropriado e arraste-o para a posição apropriada no painel de monitoramento para adicionar o instrumento de monitoramento ao painel de monitoramento. Arraste a borda do instrumento de monitoramento com o mouse para ajustar seu tamanho.
 Abra a guia "Propriedades", você pode modificar as propriedades do instrumento de teste. O atributo mais importante é o atributo "segmento de protocolo", que indica a fonte de dados do instrumento de monitoramento.
 Por meio do botão expandir à direita da propriedade “Segmento de Protocolo”, é possível abrir a caixa de diálogo “Protocolo de Dados de Vinculação”, que mostra todos os protocolos e segmentos de protocolo no modelo de simulação do projeto atual.
 A fonte de dados do instrumento de teste pode ser um campo de protocolo ou uma fórmula composta de vários campos de protocolo.
 Insira o campo do protocolo ou a fórmula composta pelo campo do protocolo na caixa de entrada na parte inferior da caixa de diálogo "Binding Data Protocol". Clique duas vezes no nome do campo desejado para adicioná-lo à posição do cursor da fórmula personalizada.
 Crie um plano de hardware de teste, determine o equipamento da placa de interface a ser usado para o teste e os recursos correspondentes ao equipamento da placa de interface.
 Crie casos de teste e forneça métodos de gerenciamento para casos de teste, incluindo agrupamento, exclusão, renomeação, etc.
 O conteúdo da criação de casos de teste, incluindo o uso de scripts de teste para descrever o processo de teste, incluindo definições de variáveis, declarações condicionais, declarações de loop, declarações de saída, operações matemáticas, definições de funções, etc.
 Fornece uma interface estendida para scripts de teste, que podem realizar interação de dados e análise automática de dados para o DUT, e analisar o fluxo de bits em dados de usuário significativos.
 Fornece uma forma de controle de tempo e é capaz de realizar operações especificadas de acordo com um certo tempo.
 Forneça o método de configuração do ambiente operacional, defina o endereço IP e o número da porta do servidor do modelo de simulação, servidor do data center, servidor de execução de teste e cliente durante a operação de teste.
 Fornece a função de configuração de monitoramento de entrada e saída padrão e determina o tipo de configuração de monitoramento de entrada e saída padrão.
 Fornece um modo de execução de script de teste, que pode executar o script de teste selecionado pelo usuário; o usuário pode optar por encerrar a execução do script.
 Capaz de visualizar informações de saída e informações de erro.

(3) Teste e execute o software de serviço

O software de serviço de operação de teste inclui estação de despacho de teste, servidor de operação e centro de dados. Eles cooperam com o software cliente para conduzir os dados de teste e executar a execução de teste automatizada. Realizar principalmente as seguintes funções:
 Fornecer programa de execução em segundo plano do serviço de agendamento de processos, com a ajuda do agente de agendamento de processos, de acordo com o design do software de design de teste, iniciar a execução do teste, cliente, servidor e outros processos no host de teste, e coordenar através do serviço de agendamento de processos A lógica operacional de cada software.
 Fornecer o programa de execução em segundo plano do servidor de modelo de simulação, analisar o modelo de simulação estabelecido pelo projeto de teste por meio do servidor de modelo de simulação e realizar o serviço de análise de simulação de envio e recebimento de dados durante a execução do teste.
 Fornecer programas de execução em segundo plano do servidor do data center Durante a execução dos casos de teste, o servidor do data center processará de maneira centralizada e uniforme o recebimento e o envio de recibos no canal para garantir a realização distribuída do monitoramento de dados.
 Forneça o programa de execução em segundo plano do servidor de casos de uso para analisar e processar o processo de execução dos casos de teste escritos no design de teste.
 Fornece programa de janela de monitoramento de entrada e saída padrão, que pode exibir as informações de depuração durante a execução do servidor de modelo de simulação, servidor de data center, processo cliente e servidor de caso de uso.
 Analise as definições de variáveis, sentenças condicionais, sentenças em loop, sentenças de saída, operações matemáticas, definições de funções e outras sentenças no script de teste e execute as operações correspondentes.
 Analise a interface de extensão do script de teste para realizar o envio / recebimento de dados e a análise de dados para o sistema em teste.
 Analise o script de teste e opere de acordo com os requisitos de controle de tempo.
 Registre todos os dados de entrada quando o teste for iniciado; registre todos os dados de entrada / saída durante o teste; gere automaticamente um relatório de resumo após a conclusão do teste.
 Pare imediatamente a execução dos casos de teste de acordo com os requisitos do usuário.
 Registrar e exibir os resultados da execução dos casos de teste.

(4) Execute o cliente e o monitor de dados

O cliente em execução está entre o servidor de execução de teste e o computador host, executa o agente de comunicação, é responsável pelo encaminhamento de dados e gerenciamento e controle do processo de teste do cliente e extrai dados ambientais para o computador host. O monitor de dados exibe os dados de teste atuais na forma de instrumentos virtuais ou gráficos. Os dois módulos implementam principalmente as seguintes funções:
 Gerenciar o subsistema de tempo real e estabelecer a relação de conexão entre o subsistema de tempo real e o terminal de controle em execução.
 Fornece recursos operacionais para o subsistema de tempo real.
 Depois de fazer login no software de serviço de teste, todas as interfaces de monitoramento de teste projetadas pelo software de design de teste são exibidas e um ou mais painéis de monitoramento de teste podem ser selecionados para monitoramento de teste.
 Execute o monitoramento de teste especificado, exiba os dados de teste especificados em tempo real durante a execução do teste e forneça métodos de monitoramento de dados, como instrumentos digitais, painéis, itens de enumeração e gráficos.
 Ele pode exibir os dados do teste na execução do teste em tempo real;
 Ele pode exibir os dados do teste no formato de dados do protocolo analisado ou pode exibir os dados do teste em binário, octal, hexadecimal.
 As condições de filtragem de dados podem ser definidas para realizar a função de exibição de dados específicos na interface.
 As condições de alarme de dados podem ser definidas.Quando um determinado dado característico aparecer, o software exibirá os dados que atendem às condições de alarme de forma visível.
 Você pode consultar dados, pode consultar a mensagem de um determinado período de tempo ou pode consultar os dados de um determinado campo de protocolo.
 Você pode realizar estatísticas sobre os dados especificados e também pode visualizar o gráfico da curva de dados.

(5) Gestão de recursos de equipamentos

O módulo de software de gerenciamento de recursos de equipamento fornece o equipamento de teste e as funções de gerenciamento de canal suportadas pelo sistema e fornece uma interface para a expansão do equipamento do sistema. Ele realiza principalmente as seguintes funções:
 Adicionar e excluir equipamentos do sistema.
 Modifique o número de equipamentos do sistema.
 Adicione e exclua canais incluídos no dispositivo.
 Modifique o número e o tipo de canais incluídos no dispositivo.
 Salve as informações do dispositivo no arquivo de recursos do dispositivo e use-o no software de design de teste.

(6) Computador superior em tempo real do final da execução no modo de execução

O final da execução do estado de execução é o subsistema chave para realizar o desempenho em tempo real, incluindo computador superior em tempo real e computador inferior em tempo real. Sua forma é mostrada na figura abaixo (a caixa tracejada é a outra parte do sistema): o
Insira a descrição da imagem aqui
computador host de tempo real possui módulos como gerenciamento de ambiente, compilador, depurador de download, formatação de dados e assim por diante.
 O módulo de gerenciamento ambiental gerencia todos os metadados de entrada. Esses dados são usados ​​para análise de script e formatação de dados. A concepção da gestão ambiental é exigida pelo princípio da integração. Os dados ambientais são atualmente conhecidos nas seguintes categorias: planejamento de equipamentos, descrições de protocolos, modelos de simulação e scripts de ação.
 O compilador, os metadados fornecidos pelo gerenciamento abrangente do ambiente, compila e gera o código binário que pode ser executado pelo sistema operacional em tempo real do computador inferior. Como o trabalho de compilação principal foi concluído no estado de design, aqui está principalmente a vinculação. Os principais conteúdos do trabalho do compilador são: extrair o modelo de teste como um objeto de "linguagem de script de ação em tempo real"; otimização global; vincular as três partes do modelo de simulação, linguagem de descrição de protocolo e RASL, juntar o quadro principal para formar um programa em tempo real, quando o sistema é colocado Ao depurar, incorpore informações de depuração.
 Baixe o depurador e envie o resultado compilado do compilador para o computador inferior. Quando o sistema está no estado de depuração, o script de ação em tempo real é depurado. O depurador suporta as seguintes funções: depuração remota, carregamento de programa, interceptação de programa, interrupção manual, configuração de ponto de interrupção, observação de variável e execução em uma única etapa.
 Formatação de dados, formatar os dados carregados para o data center, principalmente usando dados de gestão ambiental para restaurar metadados, como nomes e estruturas.

(7) Computador inferior em tempo real do final da execução no modo de execução

O computador inferior em tempo real do final da execução do estado de execução inclui módulos como carregador, processo em tempo real e uploader.
 O carregador do computador inferior recebe o programa do computador superior, configura o ambiente, carrega e inicia o código. Ele pode receber instruções do computador host para notificar o programa para fechar. Quando o sistema está no estado de depuração, inicie o stub de depuração para que o depurador superior do computador se conecte.
 O processo em tempo real do computador inferior é gerado pelo carregador para iniciar o programa do computador superior, que especificamente conclui a ação de teste em tempo real. O quadro principal do código do processo em tempo real é fixo e armazenado no compilador do computador host na forma de uma biblioteca estática. Depois de incorporar o código de simulação e testar o código de ação no quadro principal, um programa completo é formado. Portanto, o processo em tempo real tem recursos de comunicação básicos universais, incluindo a capacidade de receber o comando de fechamento do carregador e enviar dados relevantes para o carregador. Quando o sistema está no modo de depuração, o processo em tempo real conterá o código de depuração necessário.
 O uploader do computador inferior recebe dados do processo em tempo real e os carrega de forma assíncrona para o computador superior.

(8) Ferramentas auxiliares

O software de ferramenta fornece algumas ferramentas de software comumente usadas para teste de sistema embarcado, principalmente incluindo os seguintes módulos de software:
 Ferramenta de geração de dados de curva: com edição de dados de curva, seleção de coordenadas, leitura de dados de curva, armazenamento de dados de curva e outras funções, pode cooperar com o software de execução de teste, Fornece um método de geração de dados de teste.
 Ferramenta de gravação e visualização de dados de teste: Durante a execução do teste, ela pode registrar os dados de execução do teste para visualização e análise após a execução do teste, incluindo seleção de protocolo, filtragem de dados e funções de configuração de condição de alarme.
 Ferramenta de geração de protocolo de aplicativo; fornece função de edição tabular do protocolo de aplicativo e pode definir a composição do campo, tipo de campo, valor padrão do campo, etc. do protocolo.
 Diagnóstico de plug-in CRC e gerador de plug-in CRC: fornece a função de design do algoritmo de verificação CRC, pode projetar um algoritmo CRC personalizado, diagnosticar sua correção e, finalmente, formar o plug-in do algoritmo de campo CRC na linguagem de descrição do protocolo.

Acho que você gosta

Origin blog.csdn.net/weixin_45013592/article/details/113353322
Recomendado
Clasificación