ENCICLOPÉDIA DE RÁDIO ELETRÔNICA E ENGENHARIA ELÉTRICA Sistema de aquisição e processamento de dados de dois canais baseado em PC. Enciclopédia de rádio eletrônica e engenharia elétrica Enciclopédia de eletrônica de rádio e engenharia elétrica / informática Um dia, o autor do artigo precisou medir as características de combustão de uma chama (a intensidade da radiação em duas faixas estreitas do espectro, a relação entre as intensidades e sua mudança ao longo do tempo dependendo da velocidade do movimento do ar, do volume de substância combustível, etc.). Um osciloscópio digital poderia ter feito o trabalho, mas eu não tinha nenhum à minha disposição. Era necessário desenvolver urgentemente um sistema de coleta e processamento de dados que pudesse produzir pelo menos 100 medições por segundo em cada canal com um atraso de tempo entre amostras de mesmo nome não superior a 0,5 ms. As informações de saída são a tensão do sinal em cada canal, a proporção de seus níveis e a diferença entre as amostras de sinal anteriores e subsequentes em cada canal. É claro que é improvável que muitos leitores precisem resolver o mesmo problema, mas o complexo de hardware e software proposto pode ser considerado um exemplo de construção de um sistema de coleta de dados viável e pode servir como um impulso inicial para o desenvolvimento do seu próprio. . O sistema descrito consiste em um dispositivo de coleta e transmissão de dados (vamos chamá-lo de DSD) e um software para PC. O diagrama esquemático do DSD é mostrado na Fig. 1 (o fotoconversor não é mostrado nele). Sua base é o microcontrolador flash AT90S4433-8PI (DDI) da ATMEL, que inclui um ADC de 10 bits com um multiplexador analógico. Neste caso, entretanto, é utilizado um comutador de canal externo usando teclas DA1 integradas. Isso parecia mais conveniente, pois permitia o uso de um amplificador buffer baseado no amplificador operacional DA3 com ganho variável Kу. Este último depende do estado da chave DA4.1: se estiver aberta, Ku = (R8/R6)+1, e se fechada, Ku = [R8/(R6||R7)]+1 (aqui R6| |R7 é a resistência nos resistores conectados em paralelo R6 e R7). O estágio de entrada do amplificador operacional DA3 é construído em transistores MOS. Isso possibilitou o uso de resistores de proteção (R1 e R2) na entrada de cada canal sem reduzir a precisão da medição causada pela corrente de entrada (a corrente de fuga das chaves do chip DA1 também é insignificante). Os resistores são necessários para garantir que os diodos de proteção de entrada embutidos no chip DA1 não falhem quando o sinal medido exceder a tensão de alimentação do DA1 (a corrente máxima permitida através desses diodos é de 10 mA). Outra característica importante do amplificador operacional usado é que suas tensões de entrada e saída podem atingir os valores de tensão de alimentação (o chamado amplificador operacional rail-to-rail). Graças a isso, você pode usar uma fonte de alimentação para o amplificador operacional e o microcontrolador sem estreitar a faixa dinâmica do sinal medido. O chip DA2 contém um estabilizador de tensão de alimentação do dispositivo e o DA5 contém uma fonte de tensão de referência para o ADC do microcontrolador. O chip DA6 é usado para comunicar o microcontrolador transceptor serial assíncrono universal (UART) com um PC por meio da interface serial RS232. Os LEDs HL1 e HL2 são indicadores dos modos de operação do SD. O conector XP1 é necessário para programação serial do microcontrolador no dispositivo, por exemplo, com o programador AS1 no circuito. O conector XS1 conecta o SD à porta serial do PC. O programa do microcontrolador é escrito em assembler AVR no ambiente AVR-Studio, que é distribuído gratuitamente pela ATMEL. A aplicação Windows responsável pela comunicação com o SD e processamento das informações recebidas foi criada no ambiente Delphi 5. Ao escrever o programa, fui muito ajudado pelo artigo de R. Kusyapkulov “Trabalhando com portas seriais no Windows 95” (“Rádio”, 2000, nº 1, página 23). Na janela do ambiente Delphi, a aplicação se parece com a mostrada na Fig. 2. Consideremos o funcionamento do software e hardware do controlador de dados como um todo. Depois que todo o sistema estiver montado e todas as conexões necessárias tiverem sido feitas, você poderá iniciar o aplicativo. Sua janela aparecerá no monitor do computador. Neste momento, o microcontrolador SD está em modo de pesquisa constante do receptor UART. O indicador HL1 (Pronto para Receber) acende. O programa do microcontrolador verifica constantemente o estado do bit RXC no registrador UCSRA, esperando que ele vá para o estado único. O sistema está em modo de espera pelas ações do usuário. Você pode alterar o ganho do caminho de medição do SD ou iniciar um ciclo de medição. No primeiro caso, você deve “clicar” no botão “Ky=0,5” ou “Ky=1”. Os componentes RadioButton 1 e Radiobutton 2 são responsáveis por chavear o ganho no programa aplicativo. Por exemplo, se você “clicar” no botão “Ku=0,5”, o manipulador de eventos RadioButton2Click será iniciado e a variável Kamp assumirá o valor 110 Este código corresponde a um ganho reduzido (condicionalmente Ku=0,5). Agora você pode pressionar o botão “Iniciar” (não é visível na Fig. 2, pois há um botão “Concluir” em cima dele), iniciando assim o ciclo de medição. Aqui é aconselhável considerar a ideologia geral da troca de dados entre o USD e o PC. Uma vez iniciado, o ciclo de medição deve ser interrompido em algum momento. O sistema descrito adota as seguintes táticas. A medição não é realizada continuamente, mas em intervalos de pouco mais de 2 s (definidos pela propriedade Interval do componente Timerl no programa aplicativo). Trezentas medições em cada canal levam pouco menos de 2 s. Assim, se o evento Timer1Timer iniciar um ciclo de medição (300 medições em cada canal), então ao final dele, antes que ocorra o próximo evento Timer1Timer, restará um curto tempo, suficiente para a aplicação reagir ao evento bbCompleteKeyPress (se o botão "Concluir" foi pressionado). Observe que em um ciclo de medição o USD enviará 1200 bytes de informação ao PC, já que o resultado de cada medição consiste em dois bytes. Assim, após pressionar o botão “Iniciar”, é iniciado um temporizador com período de 110 ms (ver programa aplicativo, procedimento TForml bbStartClick). Após esse tempo expirar, o controle passa para o manipulador de eventos Timer1Timer. Através da porta serial, o código 110 ou 130 (ganho reduzido ou normal, respectivamente) é transmitido para o USD - a variável Kamp. O microcontrolador recebe esses dados, ajusta o ganho necessário fechando ou abrindo a chave DA4.1 e aguarda o recebimento de novas informações. Neste momento, o PC transmite o código 100 para o USD (variável ActionKey no programa aplicativo). O microcontrolador, tendo recebido esta informação, desliga o indicador HL1, liga o indicador HL2 (“Transferência em andamento”) e inicia um ciclo de medição (etiqueta de ação no programa do microcontrolador). Tendo realizado uma medição em cada canal, o o microcontrolador transmite os dados para o PC e faz uma pequena pausa para garantir a frequência de amostragem do sinal necessária. Em seguida, as medições, transferência de dados e pausa são repetidas mais 299 vezes, após as quais o microcontrolador entra em modo standby para obter informações do PC (o indicador HL2 apaga e o HL1 acende). Se o botão “Complete” foi pressionado durante o ciclo (≈2,1 s), imediatamente após receber o último dos 1200 bytes, o controle é transferido para o manipulador bbCompleteKeyPress. O computador transmite ao USD o código 120, que não é reconhecido pelo microcontrolador como conhecido, pelo que o USD permanece em modo de espera por um comando do PC. Caso o botão “Complete” não tenha sido pressionado, um novo ciclo de medição será iniciado após a ocorrência do evento Timer1Timer. E assim sucessivamente até que o botão "Concluir" seja pressionado. O manipulador bbCompleteKeyPress também processa as informações recebidas e gera um arquivo de texto no qual os resultados da medição são apresentados de forma conveniente. Cada ciclo de medição é nomeado aqui como um bloco com um número correspondente. Um fragmento do arquivo de texto data_temp.txt é mostrado na Fig. 3. O texto contém alguma aparência de “cabeçalho” da tabela, onde “Nº de medições” é o número da medição (de 1 a 300 no primeiro bloco); IR - tensão do sinal do canal 1; dif IR - diferença entre as medições anteriores e subsequentes do canal 1; kr - tensão do sinal do canal 2; dif кр - diferença entre as medições anteriores e subsequentes do canal 2; dif - a relação entre o nível do sinal do primeiro canal e o nível do segundo. A configuração do DSD se resume a definir a tensão +5 V selecionando o resistor R5 (deve ser pelo menos o exemplar na entrada AREF DD1, mas não superior a 6 V) O microcircuito KR1157EN1 (DA2) pode ser substituído por um analógico importado LM317L, bem como qualquer estabilizador de tensão ajustável de polaridade positiva com corrente de saída de pelo menos 30 mA. Em vez do amplificador operacional KR1446UD1A (DA3), você pode usar KR1446UD4A; o uso de modificações com outros índices de letras é indesejável devido à maior tensão de deslocamento zero. Resistores - metal-dielétrico C2-23, C2-33; capacitores C1-C3 - óxido semicondutor de tântalo K53-1, K53-4; o restante é cerâmico KM, K10-17. Acelerador L1 - DM unificado, DPM. Conectores XP1 - PLD10, XS1 - DRB-9FB. Ressonador de quartzo ZQ1-RK169MA-6AP-6000K. Programas para microcontrolador (programa 1) e PC (programa 2) Autor: M.Bogdanov, Sarov, região de Nizhny Novgorod. Veja outros artigos seção informática. Leia e escreva útil comentários sobre este artigo. Últimas notícias de ciência e tecnologia, nova eletrônica: Máquina para desbastar flores em jardins
02.05.2024 Microscópio infravermelho avançado
02.05.2024 Armadilha de ar para insetos
01.05.2024
Outras notícias interessantes: ▪ Aprendendo coisas novas, esquecemos o velho ▪ Teletransporte de energia solar ▪ Cães podem detectar radiação de calor ▪ Pulseira fitness Garmin vivosmart 5 ▪ Poderoso microscópio quântico Feed de notícias de ciência e tecnologia, nova eletrônica
Materiais interessantes da Biblioteca Técnica Gratuita: ▪ Seção do site: Resolvendo um Cubo de Rubik. Seleção de artigos ▪ Artigo Fundamentos da caça em condições de sobrevivência autônoma. Noções básicas de uma vida segura ▪ artigo Por que o Porsche 901 teve que ser renomeado para 911? Resposta detalhada
Deixe seu comentário neste artigo: Todos os idiomas desta página Página principal | Biblioteca | Artigos | Mapa do Site | Revisões do site www.diagrama.com.ua |