Página 1 de 2
Como Multiplicar sinais de audio

Enviado:
28 Dez 2006 21:35
por Vonnilmam
Tenho o seguinte problema:
Meu circuito esta gerando um sinal de audio com forma de onda senoidal, na verdade esse sinal é obtido de um conversor D/A.
Eu preciso multiplicar essa frequencia por 2,4,8 e 16 vezes da sua fundamental que no meu caso vai de 100 htz até 1khz aproximadamente...
O meu problema é que esse sinal é analogico, alguém sabe como eu poderia fazer isso e se alguem entre os ilustres colegas tem como fazer isso através de algum DSP ou outro chip dedicado favor me informar...trata-se de equipamento comercial,
Grato,
Marcos,

Enviado:
28 Dez 2006 22:51
por MOR_AL
Olá Vonnilmam.
Se o seu sinal for analógico, você poderia usar um PLL. Veja os blocos básicos no endereço a seguir.
http://rapidshare.com/files/9343811/PLL_Senoidal1.JPG.html
Existem integrados que possuem quase todos os blocos mostrados. Ex.: CD4046 ou LM565, ambos da National.
Dê uma pesquisada no Databook.
MOR_AL

Enviado:
29 Dez 2006 08:24
por proex
Grande Vonnilmam, nao ficou de passar por aqui? O café até esfriou.
Vc arruma cada coisa complicada heim !!!!
Multiplicar a frequencia de uma senoide e manter a forma de onda na saida nao é tão facil assim no dominio analógico.
Ainda mais se a frequencia a ser multiplicada sofre variaçoes dentro da escala que vc mencionou.
Se a frequencia de entrada fosse fixa e se fosse onda quadrada, seria mais facil ainda.
Com os PLLs mencionados, seu circuito vai sofrer para manter a precisao pois o resultado irá depender da tolerancia dos valores de capacitores e resistores.
Com PLLs puramentes digitais, vc terá um resultado extremamenta preciso mas só conseguirá forma de onda quadrada na saida.
Além do mais, nao faço a menor idéia onde arrumar um PLL puramente digital. A nao ser dentro de MCUs cujo sinal de clock passa pelo PLL.
Se o sinal a ser multiplicado vem de um D/A, vc poderia pegar esse sinal, ainda no formato digital na entrada do D/A, e manipula-lo com um DSP, DSPIC ou algum MCU rapido.
Quanto mais rapido melhor pois vc nao teria tanto atraso no processamento até obter o sinal de saida.
No dominio digital, existem duas técnicas de fazer a multiplicaçao de uma senoide que esta sendo amostrada.
A primeira chama-se Pitch Shifting. Nela vc memoriza um ciclo completo do sinal num buffer e depois lê esse buffer com o dobro da velocidade com que gravou. (para o caso de multiplicar por 2)
Ou seja, se vc amostrou o sinal de entrada com sampling rate de 10Khz, vc tera que reproduzi-lo com 20Khz de sampling rate, para multiplica-lo por 2.
A deficiencia do Picth Shifting é que se o sinal de entrada nao for puramente senoidal, vc terá na saida o sinal fundamental multiplicado + harmonicos indesejados.
A outra forma chama-se Picth Scaling que faz uso de tabelas de FFT.
Mais complicado mas, mais perfeito pois nao gera harmonicos idesejaveis mesmo se o sinal de entrada for um sinal complexo, como uma musica por exemplo.
Vc percebe que, tanto no dominio analogico como no digital, essas coisas nao sao simples de implementar, mas as técnicas no dominio digital são mais precisas.
Mas afinal, quem esta gerando o sinal a ser multiplicado nao pode gerar os multiplos que vc precisa ? Ou vc nao tem acesso a isso?

Enviado:
29 Dez 2006 09:20
por MOR_AL
O dispositivo PLL funciona perfeitamente. Os capacitores não precisam ser de precisão, a exceção é quando você quiser fazer o filtro analógico de segunda ou terceira ordem, segundo ou terceiro tipo. É o caso em que além de um erro zero de frequência gerada, você consegue um erro de fase zero e de derivada da fase zero. Nestes casos o projeto do PLL é bem complexo, pois além de colocar os polos na origem (em loop aberto), você tem que controlar os zeros para que seu sistema (Root-Locus) seja estável e sem overshoot.
O PLL também é usado em demodulação analógica. O multiplicador ao invés de ser o "ou exclusivo" é um multiplicador analógico, ou integrado ou que utiliza as características não lineares de uma junção PN.
Já fiz diversos PLLs, com blocos analógicos e digitais combinacionais, inclusive um que gerava uma frequência 360 vezes maior que a frequência da rede. Devo dizer que poucos são imediatos, vai depender de sua aplicação.
Boa sorte.
MOR_AL

Enviado:
29 Dez 2006 10:02
por Viktor
Tô com o Proex. Isso não vai funcionar. A dinâmica seria péssima. Por que você não gera esses sinais com as frequências desejadas logo de cara ?
aos amigos...

Enviado:
06 Fev 2007 15:09
por Vonnilmam
Caro Proex, eu estou atravessando uma fase muito complicada...
Mas irei até sua casa para conversarmos e trocarmos muitas ideias e tomar o cafezinho...heheh,
Infelismente eu não tenho acesso a essas frequencias senoidais que na verdade são sinais de audio que já passaram por um DAC de audio de 16 bits, trata-se de um chip dedicado, é que eu tenho 1.000 peças desse chip porem para ele ter um aplicação no nivel que eu desejo tenho que gerar apartir da frequencia principal 4 saidas com multiplos de 2 ou seja, a frequencia principal multiplicada por 2, por 2 por 2 + a principal e teria-se 4 saidas...gerando a mesma frequencia da principal.
Vou testar do PLL que nosso amigo Mor_Al sugeriu e postarei os resultados aquí.
Alguem entre voces sabe quem pode me soldar um chip numa plaquinha PCI no involucro QFN 44....
Necessito com urgencia colocar um item em produção e não estou conseguindo alguem que faça esse trabalho...soldar um QFN 44 numa pci...
Grato, pela ajuda,
Marcos vonnilmam
Re: aos amigos...

Enviado:
07 Fev 2007 08:03
por andre_luis
Já usei um OTA para realizar uma multiplicacao analógica e funcionou razoavelmente. Foi um CA3080 da National, se nao me engano.
Dá uma olhada na figura 2.d desse documento :
http://amesp02.tamu.edu/~sanchez/multipli.pdf
Foi por onde me baseei para fazer o circuito, que implementava uma equacao de 2o grau, do tipo:
Vo = a.Vi^2 + b.Vi + c
O único problema foi a sensibilidade aos componentes utilisados ( resistores )
que tiveram de ser de precisão.
+++

Enviado:
07 Fev 2007 08:23
por KrafT
Desculpa me meter nesse assunto de gente grande, mas eu na minha infinita ignorância, ia medir o sinal de saída e gerar as novas frequencias a partir do zero, com um mcu ou dsp, se soubesse utiliza-lo.

Enviado:
07 Fev 2007 09:05
por Adauto sampaio
Caro Vonnilmam, e se vc transformas esse sinal senoidal em uma onda quadrada, aplicar em um módulo CCP do PIC (capture), processar esse sinal (com as multiplicações necessárias) e mandasse para outro módulo CCP (pwm) para transformar novamente em senoide? Como vc vai trabalhar com sinais de frequencia fixa na entrada, acredito que possa ser possível.

Enviado:
07 Fev 2007 10:45
por andre_luis
Eu também preferiria trabalhar com DSP, pois se pode incorporar uma série de recursos de tratamento de sinal ( filtragem, pre-scaler, antialiazing,... ) , mas realmente - creio - o buraco seria mais embaixo do que uma mera simulaçao/montagem de circuito ( pspice ) como foi meu caso, antes de montar o prototipo.
+++
Para todos os amigos

Enviado:
18 Fev 2007 17:58
por Vonnilmam
Meus amigos,
Suas sugestões foram de grande valia, porem o negocio é um pouco mais complicado...
O negocio é o seguinte:
Eu tenho uma "Amostra" de um Timbre Feito a razão de 44.100Khz, esse sinal é semelhante a uma "Senoide" (é um sinal analogico que esta saindo de DSP através de um DAC de audio de 16 bits de resolução).
Imagine esse timbre (wave) sendo colocado na saida do DAC em di versas frequencias na forma de notas musicais aleatoriamente, agora esse timbre poderá ter mais de um "canal" sendo enviado ao mesmo tempo ao DAC, daí teremos a somatoria dessas duas Amostras formando um "Acorde" musicalmente falando....Na realidade temos 8 canais sendo enviados com o mesmo timbre "amostra" simultaneamente.
Fato é que eu possuo uma boa quantidade desse DSP dedicado para musica eletronica e o mesmo me solta na sua saida esse timbre e necessito saber se alguém saberia ou teria uma forma de elevar esse "TOM (notas musicais)" em niveis multiplos partindo da frequencia BASE e multiplicando-a por 2,4 e 8 vezes o seu valor...
Caso alguns do amigos tenha como fazer isso utilizando um DSP por exemplo, favor me contactar
mcupic@itelefonica.com.br para conversarmos, eu necessito de muitos chips que façam essa façanha.
Explicando mais: O Chip elevador de oitavas teria que pegar o meu sinal e multiplica-lo por 2 (primeira saida), por 4 (segunda saida) e por 8 (terceira saida) além da saida principal é claro, mantendo-se os mesmos niveis de volume e forma de onda que no caso é um timbre amostrado a 44.100khz (é um som de flauta doce).
Eu não tenho tempo para trabalhar em cima desse digamos "multiplicador de frequencia", porque estou envolvido em outro trabalho complexo com DSP da analog...
Se um dos amigos tiver interesse me avise que lhe envio um chip desses com a literatura para analize, estou pretendendo formar uma produção de 3.500 produtos com esse chip, e nesse caso cada chip iria levar um "multiplicador de frequencias" também...
Valeu,
Marcos vonnilmam

Enviado:
18 Fev 2007 20:02
por fj82
Oi, pra fazer um oitavador, você pode usar um CI MC1496(modulador analógico balanceado). Ele na verdade é um multiplicador analógico. A teoria é bem simples, quando você multiplica dois sinais no tempo, é como convoluísse na freqüência. Uma senoide convoluida com ela mesma dá um nível DC e uma senoide com o dobro da freqüência(parecido com a potência em uma carga resistiva, a tensão e corrente estão em fase a potência é um nível médio mais uma oscilação com o dobro da freqüência da tensão). Depois um simples filtro CR corta a componente DC do sinal resultante. Tem um esquema bem parecido na aula prática 5 dessa apostila daqui:
http://del.ufrj.br/~baruqui/Elet_IV.pdf. Lá tem até um modelo que funciona muito bem pra substituir o MC1496, mas esse nem é caro.
Re: aos amigos...

Enviado:
19 Fev 2007 09:30
por Viktor
andre_teprom escreveu:Já usei um OTA para realizar uma multiplicacao analógica e funcionou razoavelmente. Foi um CA3080 da National, se nao me engano.
Imagino que você tenha multiplicado a amplitude e não as frequências como é o caso aqui. Correto ?

Enviado:
19 Fev 2007 15:15
por Vonnilmam
Valeu amigos,
Caro, não consegui abrir o site que voce descreveu...dá um erro no pdf...
Vou testar o MC1496, parece que ele irá atender a necessidade, depois comentarei aquí os resultados,
Muito obrigado amigos,
Marcos,

Enviado:
19 Fev 2007 16:16
por fj82
O problema era o ponto no fim do endereço. Tenta agora:
http://del.ufrj.br/~baruqui/Elet_IV.pdf
E o melhor é que a potência do sinal oitavado é a mesma do sinal de entrada.