O estudo da integridade de sinais em placas de circuito impresso é uma necessidade para qualquer projeto eletrônico. Conhecer os possíveis problemas, sua teoria e formas de identificação é sem dúvidas essenciais nas habilidades de depuração e validação de um projeto funcional e confiável. O Ground Bounce que vamos estudar aqui é uma fonte notória de ruídos.
Experiência
Para uma interessante prática, montei o circuito da figura 01, algo razoavelmente simples para o estudo do Ground Bounce:
O código implementado no Arduino UNO é simples também. Ligo e desligo todos os LEDs a cada 1 ms.
// define o tempo de pausa em milisegundos
const int pausa = 1;
void setup() {
// configurando pinos do port D (0~7) todos como saída.
DDRD = 0xFF;
/*
Não era para ser um comando do tipo pinMode(x,OUTPUT)?
Achou essa declaração de estranha?
Então recomendo estudar um pouco sobre acesso direto a registradores do atmega328p, é muito útil.
Confira o Livro AVR e Arduino: https://embarcados.com.br/livro-avr-e-arduino/
*/
}
void loop() {
// ligando as saídas do port D simultaneamente
PORTD = PORTD | 0xFF;
delay(pausa);
// desligando as saídas do port D simultaneamente
PORTD = PORTD & 0x00;
delay(pausa);
}
As saídas de número 0 a 7 do Arduino UNO está cada uma ligada a um resistor de 470 R através dos fios de cor lilás, que por sua vez, estão cada um em série com um LED e que por sua vez está em paralelo com um capacitor de 100 nF.
Os LEDs e os capacitores, apenas simulam cargas e capacitâncias inerentes de um circuito eletrônico. Fazem circular corrente elétrica.
O GND (ground) do circuito está representado pelos fios de cor cinza.
A saída 0 além do LED, está ligada também a ponta de prova do canal amarelo de um osciloscópio com sua respectiva garra ligado do GND.
Vamos fazer o trigger do osciloscópio, na subida ou descida desse sinal.
Até aí tudo certo! Vejamos o que temos mais:
Uma outra ponta de prova, do canal azul do osciloscópio, ligado ao um terminal de GND da placa Arduino UNO e sua garra também no GND? Estranho isso, só pode ter sido ligado errado! O canal azul não vai medir nada, a ponta e a garra estão em GND, ou seja, mesmo potencial elétrico!
Vejamos então a tela do osciloscópio:
Na figura 02, o canal azul apresentou um pico de aproximadamente 2V no momento de subida do sinal do canal amarelo. Ué, mas no canal azul a ponta de prova e a garra estão em GND! Como pode ter ocorrido uma diferença de potencial?
Na descida do sinal do canal amarelo temos:
Formou um pico no canal azul, só que agora negativo!
O problema
A palavra BOUNCE significa PULO, SALTO, então GROUND BOUNCE é salto do terra. E foi o que vimos, um pequeno salto da tensão, tanto positivo, quanto negativo nas transições de sinais.
Esse efeito, não é desejável em projetos de placa de circuito impresso e se estiver vendo em seu projeto uma quantidade excessiva de erros de bit em linhas de comunicação, instabilidade da tensão de alimentação e reset inesperados, em muitos casos, o problema pode ser ground bounce.
A mudança no referencial de tensão do GND ocasionada pelo Ground Bounce, faz com que a tensão de alimentação dos circuitos fique fora dos limites máximos ou mínimos dos componentes ou o nível de sinal de um barramento de comunicação seja interpretada erroneamente como 0 ou 1.
Nas próximas figuras, 04 e 05, vemos a linha de VCC (5 V) variando de acordo com a variação da tensão de referência GND.
O Ground Bounce é causado por um elemento fundamental: compreende a uma tensão na indutância total do circuito eletrônico, formado pelas indutâncias parciais intrínsecas das trilhas, planos, terminais dos componentes e conectores, tudo isso adicionado a caminhos de retorno (GND) mal projetados.
A tensão através dessa indutância total está diretamente relacionada à mudança de corrente, portanto, quanto mais rápido for subida e descida dos sinais, pior o problema se torna. Quanto mais saídas forem acionadas ao mesmo tempo, maior será o valor de corrente, agravando ainda mais o efeito.
Como mitigar
O Ground Bounce segue a seguinte relação:
V = L * [di / dt]
V: Tensão gerada na indutância do circuito, a tensão do Ground Bounce propriamente dito.
Sabemos como o Ground Bounce se comporta e também as relações entre as principais variáveis envolvidas, então para diminuir V (Ground Bounce) devemos:
- Diminuir o L (Indutância Total) trabalhando com a diminuição das indutâncias parciais:
- Criar planos de GND amplos e contínuos;
- Trilhas de GND mais curtos e largos possíveis;
- Mantenha os sinais próximos aos caminhos de GND.
- Invólucros de componentes com baixa indutância interna e nos seus terminais.
- Diminuir o [di / dt] (Variação da corrente por unidade de tempo):
Para di (corrente)
- Limitar a corrente instantânea com o uso de resistores em série com os sinais de comunicação;
- Usar mais caminhos de retorno;
- Não acionar várias saídas ao mesmo tempo, alterne entre os acionamentos;
- Usar sinais diferenciais.
Para dt (tempo)
- Aumentar o tempo de subida e descida dos sinais.
O uso de capacitores de desacoplamento entre VCC e GND, bem próximos às linhas de alimentação dos circuitos, também auxiliam no tratamento do problema.
Observação
Em alguns artigos são usados duas definições técnicas diferentes. Nas transições de subida do sinal o efeito é chamado de VCC Sag (Sag = Afundamento) e nas transições de descida é o Ground Bounce propriamente dito.










Muito bom artigo, parebéns!
Obrigado Thiago! Continue acompanhando o Embarcados!
Excelente artigo. No site temos poucas publicações sobre boas práticas para reduzir EMC em um circuito, assunto muito importante e pouco abordado na eletrônica brasileira. Vejo que você é um dos principais publicadores desse assunto no blog, parabéns!
Obrigado Pedro, tão logo vai ter outros tópicos relacionados à EMC. Sugere algum de sua preferência?
Excelente!
Esse é o tipo de problema que se a pessoa não souber onde atacar, vai perder muitas noites de sono.
Obrigado Ronaldo!
É preciso entender os problemas para encontrarmos uma solução e até mesmo nos anteciparmos a eles na criação dos projetos.
Excelente artigo, coisas assim conseguimos ver com anos de prática e muitas dores de cabeça
Obrigado Alexandre!
Existem problemas de difícil diagnóstico, que exigem equipamentos específicos e caros. No entanto podemos já mitigar alguns desses problemas já no projeto, bastando conhecer os mais comuns, como é o caso do Ground Bounce.