segunda-feira, 18 de março de 2013

Caixa de Som Microcontrolada

    19/feb/2013
    Tenho essa caixa de som para o PC. No entanto, de uns dias para agora ela começou a apresentar problemas de super aquecimento. Na verdade essa caixa de som sempre teve problemas com aquecimento, como ela era nova aguentou essas altas temperaturas.


    O dissipador de calor da caixa é grande para o espaço interno disponível, então quando a caixa esta trabalhando com um som mais alto acontece o problemas de aquecimento exagerado. Como a caixa já tem uns bons anos de vida, a placa de circuito impresso já não esta lá com aquela qualidade original de fábrica. E com a exposição a altas temperaturas por muitos anos, foram os principais problemas.
    O problema que a caixa esta apresentando atualmente é de mau contato dos componentes. Quando o dissipador atinge altas temperaturas, a solda da placa aquece e ruídos aparecem junto ao som. Para tentar resolver tal problema, irei acoplar um cooler no interior da caixa de som, porém esse cooler não ficara ligado constantemente.

Placa do amplificador
    Acimo segue uma imagem da placa do amplificador. Onde pode-se notar que as trilhas já estão bem danificadas. A principal causa da degradação das trilhas foi o grande calor gerado pelo dissipador. Como pode-se notar, algumas trilhas tiveram que ser substituídas por Jumpers.    Para monitorar a temperatura usarei um microcontrolador que tem a habilidade de converter a temperatura em dados totalmente digitais, esse CI é o DS18B20. 

    27/feb/2013
    Esse Microcontrolador facilita muito o trabalho de obtenção de dados. Portado de somente três fios, alimentação, GND e data esse dispositivo é de fácil trabalho. Como os dados são transmitidos para o PIC diretamente em forma de dados digitais é muito simples estipular limites para a temperatura. Como o PIC a alimentação do DS18B20 pode ser de 3 a 5.5V, o que facilita muito o trabalho.
    Abaixo segue a tabela com exemplos dos valores de temperatura em decimal, binário e hexadecimal fornecidos pelo DS18B20.

    Os valores acima serão lidos pelo PIC e trabalhados pelo programa. A temperatura de acionamento do cooler será de 50ºC.
    O cooler utilizado é um cooler comum usado em informática para resfriar processadores. Utilizarei um cooler menor que era utilizado em computador mais antigos como por exemplo o 486.
Cooler 12V/100mA
    Abaixo o desenho da placa que será feita na Plotter PCB.
Layout da placa
    13/mar/2013
    Abaixo o diagrama elétrico do circuito. Como pode-se observar o circuito é de simples montagem e portado de componentes de fácil aquisição. O trabalho na verdade ficará sob responsabilidade do Microcontrolador. O qual fará a leitura da temperatura e trabalhará os dados, acionando ou não o cooler.
Diagrama elétrico
    Para simples efeito de monitoração. Instalei atrás da caixa de som um LED verde que pisca de acordo com a execução do programa e também de acordo com a temperatura. Quanto maior a temperatura mais rápido o LED irá piscar. LED piscando significa que o PIC esta rodando o programa normalmente, LED piscando lentamente significa que a temperatura esta baixa e LED piscando rapidamente significa que a temperatura esta alta. O LED pisca em várias velocidades diferente, para cada faixa de temperatura. Abaixo foto da parte traseira da caixa de som o LED de monitoração.
Parte traseira da caixa de som
    Abaixo imagem da parte interna da caixa de som. Já com a placa do Microcontrolador instalada. Foi necessário realizar um pequeno corte no duto de ar da caixa para alojar o Cooler corretamente no interior da caixa.
Circuito instalado
   
    18/mar/2013
    Segue abaixo trechos dos códigos que realizam a monitoração da temperatura e acionamento do Cooler.

...
float temperature;
int y;
int16 x=1000;
while (1)
{
  temperature = ds1820_read();
...
}

    Trecho acima utiliza a rotina ds1820_read() para receber os dados do DS18B20. Esse dados são armazenados na variável temperature. Após o valor armazenado na variável, basta realizar as ações desejadas.


  if(temperature > 50.0){
  ...
}


    A possibilidade de ações é imensa. No meu caso usei o valor maior que 50 para acionar o cooler e piscar o LED verdade de monitoração de temperatura.