LusoRobótica - Robótica em Português
Electrónica => Electrónica Geral => Tópico iniciado por: beirao em 19 de Junho de 2013, 10:20
-
Pessoal,
Tenho várias PCBs iguais, sendo que cada uma possui uma parte analógia (um oscilador que gera uma sinusoide e uma onda PWM), e uma parte digital (um PIC, FT232 e um DAC por SPI). Tenho plano de massa analógico e digital, ligado por um único ponto (agora até meti uma ferrite para fazer a ligação).
Quando tenho apenas uma ligada a uma fonte, tudo muito bem. Quando ligo mais do que uma, a dita sinusoide fica um pouco instável (nada de maior, mas o PIC a ler a frequência da onda PWM regista instabilidade). Separando as fontes, mas mantendo a massa comum entre placas, acontece o mesmo. Ou seja, desde que tenha o mesmo GND em ambas as placas, uma placa mete ruído na outra, e tem de ser pelo sinal de GND...
Agora, o que poderia fazer? Tenho planos de massa separados em cada PCB, e mesmo com fontes "separadas" (mas com o GND shuntado) existe inlfuência na mesma. Fará sentido colocar uma ferrite também entre PCBs?
(espero que não tenha sido muito confuso a explicar;) )
-
Viva beirao, podes por aqui o desenho das massas? E já agora um diagrama das ligações ou uma foto?
A alimentação é regulada tanto analogica como digitalmente? ISto é, tens um regulador para a componente analógica e outro para a componente digital?
É conveninente ter os planos de massa separados, idealmente só se devem encontrar na fonte, já depois dos reguladores e sim, uma ferrite entre eles ajuda a isolá-los.
A separação deles também deve ser física, uma boa distancia entre eles é algo bom. A placa ter um tratamento isolante também ajuda.
-
Eu colocava aqui os esquemas e fotos, mas como isto é para a minha dissertação (e em parceria com uma empresa) mas não me deixam divulgar grande coisa :S Meto uma imagem da bottom layer, sendo que a top é igual em termos de planos de GND (isto é, o plano analogico na top está em cima do plano analogico na bottom, e o mesmo para o digital).
Se eu ligar essa placa apenas, tudo bem. Se eu ligar duas placas dessas em paralelo, já não dá... Mesmo que ligue uma fonte de bancada a uma, e outra fonte de bancada a outra, com as massas em comum já fica instável.. Portanto sim, tenho uma fonte regulada para cada sinal..
É estranho, não é? :/
Achas que deva meter uma ferrite entre as duas PCBs?
-
Mas tens razão quanto à questão das massas se encontrarem apenas na fonte. Nas minhas placas isso não acontece: a massa que chega a cada uma é a DGND (que nem devia, pois a fonte é comutada) e depois ligar por um ponto à AGND. Vou experimentar ligar as massas apenas na fonte, tal como tu disseste e como está aqui: http://www.ti.com/lit/ml/sloa089/sloa089.pdf (http://www.ti.com/lit/ml/sloa089/sloa089.pdf) figure 17-5, página 11
-
Esta questao do ruido pode ser sempre bicuda. Hah mts pontos a considerar, por vezes a ligacao estrela da massa e do positivo pode nao ser sufice.
# As placas teem interligacao no fim em vista, ou so partilham a energia ?
# que tipo de PSU vai ser usada: SMPS ou Linear ? (ha diferencas e tu sabes quais sao)
# o teu shunt entre as massas parece-me q nao estah feito o mais proximo possivel da entrada de energia. Nao eh obrigatorio q o seja, vai depender do sentido de circulacao das correntes, pelas outras ligacoes dos teus sinais. Por vezes o problema pode nao ser do GND, mas manifestar-se no GND.
# as velocidades de comms digitais sao as minimas possiveis ?
# as velocidades de sampling rate sao as minimas posssiveis ?
# de acordo com a velocidade usada na comm digital, tens as linhas balanceadas ?
# para o sinal analogico, a impedancia estah casada ?
# qual a frequencia da interferencia? eh a mesma do comm SPI ou do Sampling Rate ?
# tens filtros na saida Analogica ?
ver TUTORIAL 5450 da MAXIM, eh excelente a explicar estes assuntos
- eu usaria um Common Mode Filter/Transformer na entrada de energia, em serie com o Positive e GND. Para a potencia necessaria, eh do tamanho de uma mosca. Isso cancela-te os sinais comuns q possam estar a passar na linha e q passam se so tiveres o GND ligado
- usar apenas uma ferrite pode resultar mas pode-te elevar o referencial de massa dentro das frequencias filtradas e dar-te valores erroneos de Analogico. Pode ser q nao haja importancia para a aplicacao.
- no balanceamento das linhas highspeed SPI, podes usar Resistors ou Resistor+Capacitor, dependendo
- com um scope, ver o SPI no mesmo ecran que o Analogico, comparar os sinais, tentar ver se hah algo comum aos dois e que nao devia haver
- ...
Posso dar-te muitas mais opinioes... mas sao apenas opinioes.
Sem ter mais resultados de experiencias eh dificil opinar.
Faz testes e poe os testes aqui. Qt mais documentados forem os mesmos, mais depressa conseguimos lah chegar ;)
-
Antes de mais, obrigado pela resposta asena! ;)
Ora bem:
Esta questao do ruido pode ser sempre bicuda. Hah mts pontos a considerar, por vezes a ligacao estrela da massa e do positivo pode nao ser sufice.
# As placas teem interligacao no fim em vista, ou so partilham a energia ?
Só partilham a energia
# que tipo de PSU vai ser usada: SMPS ou Linear ? (ha diferencas e tu sabes quais sao)
SMPS, mas talvez vá testar com linear para ver se noto alguma diferença.
# o teu shunt entre as massas parece-me q nao estah feito o mais proximo possivel da entrada de energia. Nao eh obrigatorio q o seja, vai depender do sentido de circulacao das correntes, pelas outras ligacoes dos teus sinais. Por vezes o problema pode nao ser do GND, mas manifestar-se no GND.
Está quase no final da placa...
# as velocidades de comms digitais sao as minimas possiveis ?
Para estes testes até já desliguei as comunicações digitais (SPI)
# as velocidades de sampling rate sao as minimas posssiveis ?
Yup
# de acordo com a velocidade usada na comm digital, tens as linhas balanceadas ?
Nao..
# para o sinal analogico, a impedancia estah casada ?
Não..
# qual a frequencia da interferencia? eh a mesma do comm SPI ou do Sampling Rate ?
Não a consigo reconhecer :S é que no osciloscópio não consigo perceber que ruído, ou se existe ruído, quando ligo a outra placa... :S
# tens filtros na saida Analogica ?
A saída analógica vai ser lida por um PLC, mas neste caso até tenho esse módulo desligado
- eu usaria um Common Mode Filter/Transformer na entrada de energia, em serie com o Positive e GND. Para a potencia necessaria, eh do tamanho de uma mosca. Isso cancela-te os sinais comuns q possam estar a passar na linha e q passam se so tiveres o GND ligado
- usar apenas uma ferrite pode resultar mas pode-te elevar o referencial de massa dentro das frequencias filtradas e dar-te valores erroneos de Analogico. Pode ser q nao haja importancia para a aplicacao.
- no balanceamento das linhas highspeed SPI, podes usar Resistors ou Resistor+Capacitor, dependendo
- com um scope, ver o SPI no mesmo ecran que o Analogico, comparar os sinais, tentar ver se hah algo comum aos dois e que nao devia haver
Experimentei com as ferrites na massa como tinha dito mas não resolveu :S
-
Pronto, o problema pode dever-se a muita coisa.
Ficam algumas notas e dicas para design futuros.
Vejo os teus planos a serem atravessados por vias e a distancia destas aos planos deve ser maior do que tens no caso das vias serem digitais e estarem a atravessar o plano analógico e vice-versa. Quando tens o mesmo plano separado em vários polignos e na mesma face, a ligação entre estes não se deve fazer por uma unica trace, deve haver várias e evitar-se o uso de traces fininhas. Quando o mesmo plano está separado por varios poligonos e estes estão em faces diferentes, a ligação entre eles não deve ser só atraves de uma via ou dar-se apenas pelos componentes que tenham patas a serem soldados na outra face (chips DIP, condensadores, resistencias etc) deves, quando possivel recorrer a uma tecnica chamada Via Stitching que consiste em fazer várias vias para aumentar a area de contacto entre os polignos das diferentes faces. Por exemplo uma grelha de vias com 4x4 (4 linhas de vias por 4 colunas) e metes assim umas quantas onde for possivel.
Já agora, quando ligas o gnd de uma placa à outra, qual é o GND que usas? O analogico ou o digital? E onde ligas, ao GND da outra placa na parte analogica ou digital?
No caso desse design ja ser final e n encontrares a fonte de ruido, uma opção será fazeres filtragem digital das amostras.
-
Obrigado pelas sugestões tr3s.
Quanto à dica de meter várias vias, a PCB já tem isso.. secalhar não da melhor forma, mas tem várias vias a ligar um plano de GND da top para a bottom layer. Quanto ao espaçamento entre vias e plano, vou ter isso em atenção.
Neste momento fiz o seguinte a nível de GND:
FONTE -> FERRITE -> AGND da PCB1
FONTE -> FERRITE -> DGND da PCB1
FONTE -> FERRITE -> AGND da PCB2
Já verifiquei com a instabilidade vem quando ligo a parte analógica de outra PCB, logo fiz isso. Também já experimentei com reguladores lineares e acontece o mesmo..
Olhando para as vossas sugestões, secalhar tenho de optar por um Common Mode Filter/Transformer nas entradas... acham boa ideia? ou em diferential mode? nunca usei, estou a ler umas coisas sobre isto...
-
Vai-nos contando os teus resultados nos testes.
Tenho curiosidade em saber como isso se corrigiu.
E tambem eh bom para o forum, como capital de informacao.
-
Viva,
Pois, isto não está fácil não ;) Hoje não peguei nisto, mas amanhã volto à carga. Tenho de fazer mais uma batulada de testes para ver de onde vem o gato...
-
Ora bem.. O que se passa é que a sinusoide mete ruído no plano de massa analógico.. ou seja, se meter o osciloscópio entre o DGND e o AGND, tenho uma onda quase PWM com a frequência da sinusoide. O que acontece é que se ligar outra PCB, como a frequência não é a mesma, nem estão sincronizadas, este ruído aumenta substancialmente, deixando de ser quase um PWM e ficando a soma das duas. Quanto mais placas ligo, mais ruído...
Ou seja, preciso de uma maneira de eliminar o ruído que existe entre planos de massa devido ao sinal que tenho..
-
Ora bem.. O que se passa é que a sinusoide mete ruído no plano de massa analógico.. ou seja, se meter o osciloscópio entre o DGND e o AGND, tenho uma onda quase PWM com a frequência da sinusoide. O que acontece é que se ligar outra PCB, como a frequência não é a mesma, nem estão sincronizadas, este ruído aumenta substancialmente, deixando de ser quase um PWM e ficando a soma das duas. Quanto mais placas ligo, mais ruído...
Ou seja, preciso de uma maneira de eliminar o ruído que existe entre planos de massa devido ao sinal que tenho..
Faz a experiencia com o Filtro primeiro e depois com a Separacao galvanica.
Tenho a certeza q vais ter bons resultados.
No filtro, faz uma construcao em PI, com condensadores antes e depois, se for precisa calcula os condensadores de acordo com as frequencias q queres limpar.