Analisadores lógicos: Descobrindo suas utilidades

Este post faz parte da série Analisadores lógicos

Introdução

Nesta série de artigos, iremos aprender mais sobre os incríveis analisadores lógicos, um instrumento fundamental e de extrema importância para quem trabalha com microcontroladores, sistemas digitais e afins! Também veremos algumas situações e análises feitas a partir deste instrumento que facilita nossa vida de muitas formas.

O que é e para que serve um analisador lógico?

Um analisador lógico pode parecer muito similar a um osciloscópio à primeira vista (ou vice-versa), mas cada um é utilizado em momentos diferentes com seus próprios benefícios. O analisador lógico é um instrumento dedicado para medição de sinais digitais, onde é necessário capturar alguns ou até dezenas (32, 64…) de sinais simultaneamente para que possamos analisar as mais variadas situações, como por exemplo:

  • Análise de circuitos digitais e seus sinais.
  • Decodificação de protocolos.
  • Latência de interrupções e ações.
  • Diferença de temporizações entre sinais.
  • Rastreamento dos estados de low power (mostraremos melhor ao longo da série).
  • Longas análises dos sinais na ordem de minutos ou até horas.
Figura 1 – Diferentes analisadores lógicos.

Além disso, os analisadores lógicos em geral costumam ser bem mais baratos que os osciloscópios, tendo opções simples desde R$50 ou até outros modelos bem mais potentes de por exemplo R$20mil. Grande parte dos bons analisadores lógicos para aplicações do nosso dia a dia estão na faixa de R$300-2000. O mercado atualmente conta diversos tipos de analisadores lógicos, desde pequenos que cabem no bolso e utilizam softwares no computador como interface ou até instrumentos dedicados em bancada (similares a osciloscópios).

Alguns analisadores lógicos também contam com canais analógicos para auxiliar na medição de sinais que, por exemplo, seu microcontrolador está medindo e interpretando, facilitando muito o entendimento da situação completa, visto que você vai conseguir, ao mesmo tempo, analisar os canais digitais e também canais analógicos do seu microcontrolador. Este é o caso por exemplo dos analisadores lógicos da Saleae que serão utilizados ao longo desta série de artigos.

Particularmente para o meu tipo de trabalho, o aspecto mais importante e utilizado do analisador lógico é a grande capacidade de decodificação de protocolos desde pequenos pacotes ou até longas análises que podem durar minutos em algumas situações. Também prefiro opções portáteis para conseguir se adequar melhor ao meu setup móvel com notebook (home office).

Já os osciloscópios são especializados em analisar sinais analógicos e suas formas de ondas (incluindo sinais digitais) em tempo real como por exemplo:

  • Sinais de alta frequência.
  • Formas de ondas complexas.
  • Rápidas variações na tensão.
  • Distorções, ruídos, spikes, ringing, etc.
Figura 2 – Osciloscópio de bancada.

Em contrapartida, costumam ser mais caros e maiores, ter poucos canais para análise simultânea e menor memória. Alguns osciloscópios também contam com analisador lógico embutido e são chamados de Mixed Signal Oscilloscopes (MSO), dessa maneira você tem o melhor dos dois mundos em um único equipamento.

Quais especificações escolher ao comprar um analisador lógico?

Agora que sabemos o que é um analisador lógico e algumas situações em que ele é útil, precisamos entender as especificações técnicas para saber se irá atender nossa demanda ou precisaremos de outro mais potente.

Quantidade de canais: Indica quantos sinais é possível ler ao mesmo tempo. A maior parte inicia-se com 8 canais e pode ir até algumas dezenas de canais como 32 ou 64.

Taxa de amostragem: Medida em “amostras por segundo (Samples per second)” define a velocidade máxima que o analisador lógico captura os sinais. Aqui é muito importante se atentar que para ler um sinal digital de, por exemplo, 10 MHz, a taxa de amostragem do analisador lógico deve ser idealmente 4x maior. Neste caso, precisamos ler o sinal a uma taxa de pelo menos 40MS/s.

Profundidade/quantidade de memória: Indica por quanto tempo é possível capturar os sinais para analisar. Essa especificação é muito importante para quem precisa fazer longas análises, porém, temos que ficar atentos em uma situação peculiar. Os analisadores lógicos portáteis que utilizam USB para se comunicar com o computador, costumam utilizar a própria memória RAM do computador como buffer de dados, ou seja, se seu computador tiver 32GB de RAM, você pode usar toda essa memória para dados pois o analisador lógico captura os sinais e envia para o computador em tempo real. Isso é muito legal pois permite que você capture sinais altamente complexos (aumentando consumo de memória) e ainda tenha um longo tempo de captura.

Os analisadores lógicos que não utilizam a técnica de utilizar a memória do computador como buffer, contam com uma “pequena” memória embarcada para guardar a captura e você analisar posteriormente. Nestes casos é de extrema importância que você calcule se a memória disponível juntamente com a velocidade e quantidade dos sinais será suficiente para analisar o tempo necessário de suas aplicações.

Protocolos suportados para decodificação: Cada software de analisador lógico suporta uma quantidade específica de protocolos para decodificação, como por exemplo: UART, SPI, I2C, Modbus, etc. Você deve verificar se há os protocolos que você utiliza e também caso precise de novos protocolos no futuro, teria que entrar em contato com fabricante? Desenvolver o meu próprio decodificador? O que fazer nessa situação?

Grande parte dos analisadores lógicos atualmente contam com uma vasta lista de protocolos suportados nativamente que deve atender a maior parte dos desenvolvedores, mas caso o protocolo que você vá utilizar não esteja na lista, comunique-se com a fabricante do produto para saber o que fazer neste caso ou se é melhor comprar outro produto que possa suportá-lo.

Interface de utilização: Os analisadores lógicos de bancada têm uma interface integrada ao próprio equipamento, com sua própria tela e botões para navegação. Já os analisadores lógicos USB contam com softwares construídos para computadores, que levam vantagem na versatilidade e facilidade de manuseio com o mouse/teclado, além de que podemos utilizar um monitor de qualquer tamanho para visualizar os dados e isso também ajuda bastante. Ainda sim, há pessoas que preferem a navegação com botões e quem prefira navegação com mouse, vai de gosto pessoal!

Independente de onde esteja essa interface, ela tem que ser robusta, versátil e limpa para que você possa analisar os dados de forma eficiente. Não adianta ter um super analisador lógico mas ser horrível de analisar os dados com uma interface antiga ou pouco desenvolvida.

Triggers: Cada analisador lógico pode implementar diferentes tipos de triggers via hardware ou software. O trigger é essencial quando você precisa esperar que alguma condição específica nos sinais aconteça para que o analisador lógico capture os dados e te mostre justo essa parte importante. Você deve verificar se o hardware ou software é capaz de criar triggers condizentes com a sua realidade, como aguardar bordas de descida ou subida, aguardar que certos canais estejam em certos níveis lógicos ou até mesmo que esperar uma mensagem específica do protocolo decodificado.

Níveis lógicos suportados: Atualmente existem diversos níveis lógicos padrões utilizados no mercado, sendo os mais comuns 3.3V e 5V, mas existem outros como por exemplo 1.8V e 1.2V. Dependendo do circuito a ser analisado, seu analisador lógico pode ou não ser capaz de interpretar os níveis lógicos, onde você precisará verificar se o analisador lógico é compatível com tal nível. Existem analisadores lógicos com níveis lógicos fixos e alguns que podem ser alterados via software para atender cada demanda em particular.

Proteções nos canais: Além dos níveis lógicos suportados, você também deve ficar atento na tensão mínima e máxima suportada pelos canais do analisador lógico. Alguns só toleram 0-5V enquanto outros suportam -25V até +25V e assim por diante. Isso é importante de ser mencionado, pois te ajudará a evitar a queima do produto por falta de atenção ou até mesmo utilizar diretamente em barramentos como RS-232/485.

Qual analisador lógico comprar?

De forma básica e resumida, você deve comprar o melhor que seu orçamento permite e seja compatível com as análises que você fará. Não adianta querer analisar um protocolo a 100MHz se seu analisador lógico tem taxa de amostragem de 24MS/s ou ele não suporte decodificar este protocolo. Você deve encaixar os requisitos do seu uso e comprar o que atende ao seus gostos pessoais.

Continua…

Devidamente introduzido sobre os analisadores lógicos, agora vamos começar a ver as aplicações na pratica desta incrível ferramenta, onde preparamos algumas situações para demonstrar seu uso em artigos separados desta série para ficar mais organizado.

Fonte: https://www.keysight.com/used/us/en/knowledge/guides/logic-analyzer-vs-oscilloscope

https://articles.saleae.com/logic-analyzers/logic-analyzer-vs.-oscilloscope

Analisadores lógicos

Analisador lógico: Analisando sinais digitais
Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.
Comentários:
Notificações
Notificar
0 Comentários
recentes
antigos mais votados
Inline Feedbacks
View all comments
Home » Hardware » Ferramentas de Desenvolvimento » Analisadores lógicos: Descobrindo suas utilidades

EM DESTAQUE

WEBINARS

VEJA TAMBÉM

JUNTE-SE HOJE À COMUNIDADE EMBARCADOS

Talvez você goste: