collapse

* Links de Robótica

* Posts Recentes

Ideias para construir um quadrúpede simples por Njay
[Hoje às 03:04]


Ajuda com TRIAC por senso
[17 de Novembro de 2017, 18:00]


TV LG White Screen por almamater
[15 de Novembro de 2017, 08:37]


Pergunta sobre prototipagem ( Pesquisa ) por luisjustin
[14 de Novembro de 2017, 23:22]


Medir Agua que está no Poço por Njay
[14 de Novembro de 2017, 13:28]


Amplificador audio por beirao
[12 de Novembro de 2017, 23:43]


Power_OK Enermax por edeweld
[12 de Novembro de 2017, 17:15]


Driver motor por beirao
[11 de Novembro de 2017, 17:40]


Preciso de uma fonte de corrente constante ? por samc
[09 de Novembro de 2017, 14:18]


Pressoestato 0-10V por artur36
[07 de Novembro de 2017, 23:22]

Autor Tópico: Projecto FanController  (Lida 14372 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline almamater

  • Mini Robot
  • *
  • Mensagens: 1.518
    • GrcByte - Projectos
Projecto FanController
« em: 07 de Junho de 2010, 15:41 »
Post actualizado! - 29-10-2010 - Projecto concluído  ;D

O mesmo está disponível na página que criei: https://sites.google.com/site/grcbyte/electronica/fancontroller e neste caso trata-se da versão 2.0  :)

Objectivo:
  • Controlar automaticamente todas as ventoinhas da caixa do PC consoante a temperatura recebida de um sensor
  • Visualizar em tempo real a temperatura do sensor nos displays de 7 segmentos
  • Ajustar a velocidade das ventoinhas consoante a temperatura (através de Software no PC)
  • Informações diversas no LCD 16x2
  • Isto tudo com um Arduino a comandar as operações :)

Vídeo 'Preview':



Inicialmente fiz uma placa e que, após imenso trabalho, não funcionou como esperado e como podem confirmar nos posts abaixo, o sensor de temperatura usado (LM35/60) não indicava um valor certo e o circuito para controlar as Fans não era muito bom:


Alterei assim o sensor de temperatura para o DS18b20 (muito mais estável) e no circuito das Fans usei dois TIP122.

Ideias iniciais para a caixa:


A primeira versão do software que desenvolvi em Visual Basic:



Após várias tentativas e ideias para a caixa, comecei a fazê-la em acrílico e ficou algo assim:
(parte traseira para se ligarem as ventoinhas):




Passo seguinte,colocar isto tudo na caixa de acrílico:


Após ter alterado a aplicação que desenvolvi, adicionando novas funções, o resultado geral de todo o sistema é este:

Hardware:
  • Ao iniciar faz um diagnóstico aos componentes (fans, displays de segmentos, etc.).
  • No 1º arranque aguarda 5 segundos ("Boot Waiting") se quisermos estabelecer ligação ao Software no PC, caso contrário prossegue com o aranque.
  • 2 botões, para iniciar o modo de configuração onde podemos Desligar/Ligar os vários compoenentes [Fans, Displays, Lcd, Bezouro]. 1 Botão escolhe o Modo o outro altera o Estado

Software:
  • Estabelece e testa a ligação com o Arduino.
  • Podemos obter os valores PWM guardados na memória do Arduino (11 valores que estão associados a 11 diferenças de temperaturas de <10 até >60), isto para os 2 grupos de Fans (cada um com 4 ou 8 fans).
  • Podemos obter a temperatura actual do sensor.
  • Podemos Ligar /Desligar o aviso sonoro (bezouro) e configurar uma temperatura máx. para a qual ele apita caso seja atingida.
  • Podemos também definir o intervalo em segundos (que depois converte para milisegundos) para que seja lida a temperatura do sensor (pelo Arduino).

Aspecto da aplicação:


Teste final ainda na placa de ensaio:


Imagens da placa "agregadora" dos componentes para interligar tudo com o Arduino, etc.:


Caixa de acrílico preparada:


Aspecto final:


Demonstração Final:



(disponível em 720 HD)



« Última modificação: 25 de Janeiro de 2011, 10:32 por almamater »

Offline Fifas

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 2.060
  • El RoboSapiens
Re: Projecto FanController
« Responder #1 em: 09 de Junho de 2010, 23:37 »
Eu comecei a fazer um projecto idêntico a uns tempos (deve andar por aí o tópico :P ) mas por falta de tempo tive de o meter em standby :(

Tenho uma dúvida no teu projecto. Porque utilizas displays de 7 segmentos e não metes a informação a aparecer toda no display alfanumérico?

Offline AcidDagger

  • Mini Robot
  • *
  • Mensagens: 364
  • Make Bits, Making robotics in Portugal
    • Make Bits
Re: Projecto FanController
« Responder #2 em: 10 de Junho de 2010, 00:09 »
Acho que ja vi este rapaz noutro forum :P

Pessoal do modding é que é  ;D

Grande projecto :P

Offline almamater

  • Mini Robot
  • *
  • Mensagens: 1.518
    • GrcByte - Projectos
Re: Projecto FanController
« Responder #3 em: 10 de Junho de 2010, 01:01 »
 :) Bom.. estou na parte da programação  :o

Juntei o código do LM35, que mostra o valor nos Segmentos, com o do LCD que mostra a info recebida do Lcd Smartie.. o resultado é +/-...

Qdo não tenho o LCD Smartie ligado parece tudo normal, mas se estou a receber info do LcdSmartie os displays de segmentos parece que actualizam ao mesmo tempo que o LCD e os números ficam a tremer..

Vídeo:

Isto acontece pq tenho de meter tudo no Loop, inicialmente tinha um delay(50) no código do LM35 mas substituí por:

Código: [Seleccione]
if(currentMillis - previousMillis > interval) {
         previousMillis = currentMillis; 
       }

Que permite executar ambos os códigos (do LCD e do LM35/Displays Segmentos) ao mesmo tempo sem parar, mas acontece este pequeno promenor



Offline Fifas

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 2.060
  • El RoboSapiens
Re: Projecto FanController
« Responder #4 em: 10 de Junho de 2010, 01:54 »
Acho que ja vi este rapaz noutro forum :P

Pessoal do modding é que é  ;D

Grande projecto :P

Pessoal do modding partilha dos mesmos gostos...electronica/robotica/informatica :P

@almamater, que microcontrolador estás a usar?

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.400
  • Helpdesk do sitio
Re: Projecto FanController
« Responder #5 em: 10 de Junho de 2010, 01:58 »
Pelo pedacinho de código que ele mostrou, um atmega168 ou 328 aka arduino.
Avr fanboy

Offline Fifas

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 2.060
  • El RoboSapiens
Re: Projecto FanController
« Responder #6 em: 10 de Junho de 2010, 02:00 »
Pelo pedacinho de código que ele mostrou, um atmega168 ou 328 aka arduino.

referia-me mesmo ao IC...pois se for um mega168 não sei se vai conseguir processar tudo ao mesmo tempo :P

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.400
  • Helpdesk do sitio
Re: Projecto FanController
« Responder #7 em: 10 de Junho de 2010, 02:40 »
Só se for por falta de espaço de código, e mesmo assim não sei, se o lcd está a receber dados do pc e o resto é pwm e adc e pouco mais..
Avr fanboy

Offline almamater

  • Mini Robot
  • *
  • Mensagens: 1.518
    • GrcByte - Projectos
Re: Projecto FanController
« Responder #8 em: 10 de Junho de 2010, 11:26 »
Só se for por falta de espaço de código, e mesmo assim não sei, se o lcd está a receber dados do pc e o resto é pwm e adc e pouco mais..

Yep.. é um ATMEGA168.. portanto é probelma certo?  :-[

Offline Fifas

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 2.060
  • El RoboSapiens
Re: Projecto FanController
« Responder #9 em: 10 de Junho de 2010, 11:56 »
Pode não ser problema...Mas também pode começar a ficar um pouco lento com tantas tarefas ao mesmo tempo. Mas não posso dizer nada, pois nunca levei um mega aos limites...o único IC que me aconteceu isso foi um Picaxe :P por isso vai fazendo, se notares problemas, aí sim será grave :D

Offline almamater

  • Mini Robot
  • *
  • Mensagens: 1.518
    • GrcByte - Projectos
Re: Projecto FanController
« Responder #10 em: 10 de Junho de 2010, 12:03 »
Pode não ser problema...Mas também pode começar a ficar um pouco lento com tantas tarefas ao mesmo tempo. Mas não posso dizer nada, pois nunca levei um mega aos limites...o único IC que me aconteceu isso foi um Picaxe :P por isso vai fazendo, se notares problemas, aí sim será grave :D

Pois mas devem ser de facto muitos processos, tenho que meter a opção de ter a monitorização da temperatura ou a apresentação da info do LcdSmartie..  :( >:(

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.400
  • Helpdesk do sitio
Re: Projecto FanController
« Responder #11 em: 10 de Junho de 2010, 16:09 »
Mas o picaxe se não me engano corre a 0,5Mhz, e o atmeaa corre a 16Mhz, se o código for bem feito corre isso tudo na boa e ainda sobra tempo, o pwm é gerado com timers e não consome cpu, escrever no lcd ou assim é esporádico, assim como ler a adc.
Avr fanboy

Offline Fifas

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 2.060
  • El RoboSapiens
Re: Projecto FanController
« Responder #12 em: 10 de Junho de 2010, 22:26 »
Mas o picaxe se não me engano corre a 0,5Mhz, e o atmeaa corre a 16Mhz, se o código for bem feito corre isso tudo na boa e ainda sobra tempo, o pwm é gerado com timers e não consome cpu, escrever no lcd ou assim é esporádico, assim como ler a adc.

sim...por isso eu disse que tem de ser um código bem feito :P

Offline almamater

  • Mini Robot
  • *
  • Mensagens: 1.518
    • GrcByte - Projectos
Re: Projecto FanController
« Responder #13 em: 11 de Junho de 2010, 09:36 »
O código bem feito? Eu acho que não consigo dar a volta a isto, pois estou a usar o código deste projecto:

LCD smartie on Arduino, mais propriamente este: http://www.nuelectronics.com/download/projects/lcd_smartie_v1.pde

com este: http://ricardo-dias.com/node/77

e tudo junto não dá, se meto um delay qualquer na parte do código da temperatura a informação vinda do LcdSmartie já chega com muito atraso ao LCD, ou se meter tudo a correr ao mesmo tempo acontece aquilo que mostrei no vídeo.. os digitos nos displays de segmentos ficam "nervosos".

Offline microbyte

  • Mini Robot
  • *
  • Mensagens: 1.322
    • http://ricardo-dias.com/
Re: Projecto FanController
« Responder #14 em: 11 de Junho de 2010, 10:00 »
Mas esse código que estás a usar, gera saídas para o display de 7 segmentos.
Tu estás a usá-los?