por MOR_AL » 29 Jun 2012 21:35
Olá!
Tanto comentam sobre geradores com chips DDS que eu decidi criar um novo tópico sobre o assunto. Dei uma olhada no manual do AD9850 e tenho algumas considerações a fazer:
1 – A programação para se gerar uma senóide e uma onda quadrada até uns 40Mc/s é relativamente fácil.
2 – Para frequências mais altas, até o limite de 40Mc/s, é necessário introduzir um filtro passa-baixas, entre a saída do CDA e a entrada do comparador, para reduzir a distorção harmônica da senóide. Esse filtro não é simples. É recomendado (e mostrado) um filtro do tipo elíptico de 5a ordem. Pequenas variações na precisão dos componentes desse filtro provocam substancial alteração na sua curva de atenuação. Aumentando a atenuação na faixa de passagem, onde o sinal útil se encontra e diminuindo a atenuação na faixa de rejeição, onde queremos atenuar os harmônicos da fundamental e as frequências imagens, geradas quando se processam sinais digitais. Para se ter uma idéia da amplitude da primeira frequência imagem, ela possui 70% da fundamental, ou da desejada. Daí a necessidade de um filtro do tipo elíptico, pois este apresenta excelentes condições (pólos e zeros bem localizados).
3 – A máxima frequência possível de ser obtida é função da frequência do clock aplicado ao AD9850 e da capacidade de atenuação do filtro. Recomendam um clock máximo de 125Mc/s, quando a potência dissipada no AD9850 fica perigosamente próxima ao seu limite máximo. Nessas condições pode-se obter até uns 33% da frequência do clock, ou uns 40MHz de senóide na saída do filtro, ou 40Mc/s de onda quadrada na saída do comparador diferencial.
4 – Segundo o manual, é possível alterar-se a frequência rapidamente. O AD9850 não interfere na taxa dessa alteração, pois os tempos são da ordem de uns 3,5 a 7ns. Não que esse seja o tempo necessário para se alterar a frequência. São necessários diversos períodos deles, mas mesmo assim, poder-se-ia alterá-la rapidamente para produzir um sinal FM ou FSK. A limitação fica restrita à identificação da palavra que gera essa frequência. Há uma expressão que relaciona a frequência desejada com a frequência do clock e com o número de 32 bits que deverá ser gravado no AD9850.
freq. desejada = (número de 32 bits x FClock) / (2 elevado a 32).
Obviamente que, para se obter a frequência desejada, deve-se explicitar o número de 32 bits na expressão acima.
número de 32 bits = [(2 elevado a 32) x freq. desejada] / FClock
Aí é que vem a dificuldade, e conseqüentemente, o atraso em aumentar-se a taxa de variação da frequência desejada.
Suponha que se disponha de um aparelho com micro controlador (uC), LCD 2x16 e um teclado 4x4 para se gerenciar o AD9850. Suponha que se deseje alterar a frequência de 1MHz, já implementada, para 1,1MHz em passos de 0,01MHz. O firmware do uC já se encontra pronto para gerenciar a variação de frequência no AD9850. Forçosamente, esse programa terá que conter a expressão acima e em ponto flutuante. Esta expressão terá que ser calculada tantas vezes quantas serão as frequências envolvidas, que neste caso seriam 11 vezes. A primeira limitação depende de quanto tempo leva para se obter o tal número de 32 bits. Lembrando que após obter-se o número em ponto flutuante, tem-se que converter o seu formato de ponto flutuante para o formato codificado em binário. Pode-se contornar o problema e reduzir-se este tempo. Pode-se calcular esses 11 valores com 32 bits e guardá-los em uma memória RAM. Posteriormente pode-se apenas transferir dessa memória para o AD9850.
Há outro modo de se contornar este problema. Calcula-se o número para a frequência inicial e para a final e armazena-se na RAM. A partir do valor inicial, soma-se um valor fixo que corresponde à variação entre cada duas frequências adjacentes e transfere-se para o AD9850. Cada resultado da variação deve ser comparado com o valor máximo. Quando o resultado for superior ao valor máximo deve-se parar ou retornar-se ao início do processo. Para se aumentar ainda mais a taxa de variação, pode-se obter apenas o valor do número que corresponde à frequência inicial e depois ir somando o número que corresponde à variação entre duas frequências adjacentes. Deve-se fazer isso um determinado número de vezes. Número esse que corresponda a se alcançar a frequência final desejada.
O segundo impedimento seria então o principal. Observe que o uC precisa de 8 pinos para o teclado (multiplexado), 6 ou 7 pinos para o LCD, 2 pinos para o controle do AD9850 e um ou 8 pinos para a transferência de dados da frequência para o AD9850.
Então tem-se 16 ou 23 pinos, além dos 2 do clock do uC e 1 de reset, totalizando uns 19 a 26 pinos. Para reduzir-se de 26 para 19, tem que se optar pela entrada de dados no AD9850 via um pino, ou modo serial. Cada entrada de dados corresponde a 40 bits.
5 – Montagem e PCI. Há diversos sítios que recomendam como deve ser a placa de CI (PCI). Com frequências de 40Mc/s em onda quadrada, há componentes harmônicos múltiplos (ímpares). Pelo que observei no formato da onda quadrada distorcida, provavelmente deve haver até o quinto harmônico na composição da onda. Isso dá uns 200MHz.
Outro problema é a montagem do chip na PCI. Seus pinos são bem pequenos e próximos. Fica muito difícil, porém não impossível, de se fazer e montar a PCI em casa.
Atentar para o fato de que, em alguns sítios contendo o circuito, solicitam resistores com precisão de 1% onde ela não é realmente necessária.
Há também, diversos kits para vender, com a placa contendo o chip, disponíveis na internet, o que reduz o problema da PCI.
6 – Modulação AM. É possível, a partir do sinal senoidal, modulá-lo em amplitude. Isso requer um fet com poucos resistores, porém com montagem para alta frequência.
7 – Sinal de saída. Normalmente deve-se poder variar linearmente a tensão de saída e este sinal deve possuir resistência interna de 50 ohms. A resistência de carga também pose ser de 50 ohms. Isso requer um amplificador para altas frequências (até uns 40MHz para senóides e até uns 200 Mc/s para ondas quadradas).
Ficam então mostrados os detalhes necessários a uma implementação de geradores produzidos com o Ci AD9850.
MOR_AL
"Para o triunfo do mal só é preciso que os bons homens não façam nada." Edmund Burke.
"Nunca discutas com pessoas estúpidas. Elas irão te arrastar ao nível delas e vencê-lo por possuir mais experiência em ser ignorante". Mark Twain