Essa vai pra você que quer comodidade total (assim como eu), afinal de contas,se ar condicionado tem controle remoto, pq não há no mercado um simples ventilador assim ? afinal de contas, muitas vezes um simples ventilador de mesa é tudo que você precisa.
Eu sou do tipo calorento, porém tenho sinusite crônica, ou seja não vivo sem um bom ventilador. Apesar disso, muitas vezes eu acordo a noite ou incomodado com calor e o ventilador está desligado, ou incomodado com o vento excessivo que eu deixei ao dormir, sendo obrigado a levantar da cama para ligar/desligar/alterar a potência. Depois de muito pesquisar e ler possíveis soluções, cheguei a conclusão de que a maneira mais fácil e barata para controlar o ventilador remotamente é utilizando o Arduino.
O Arduino Mini
No meu projeto estou levando em conta a reciclagem de diversos componentes que já tenho em casa, para baratear o máximo possível, então eu encontrei no mercado uma solução bem simples e barata do arduino chamado Arduino Mini:
Considerando o preço (em torno de R$15,00), fiquei impressionado com o tamanho e a versatilidade, ele é tão pequeno que pode ser encaixado em qualquer protoboard, porém ele faz tudo que o UNO também faz (só que é bem mais barato), ele somente não tem a saída USB, ou seja, a sua programação tem que ser por serial TTL. Eu não vejo problema algum nisso, pois de nada vai adiantar uma interface USB depois que o projeto estiver pronto. Na verdade as placas arduino com interface USB, contem embutido um conversor de USB para TTL Serial, algo que a encarece.
Bom, meu PC tem uma saída serial, porém eu não posso utiliza-la diretamente no arduino, pois ele é um serial RS-232 que trabalha com sinal digital de 12v. Procurando na internet eu encontrei um pequeno e simples (e de baixo custo) circuito que converte a saída digital de 12v do RS-232 para os 3.3v da saída TTL:
Clique na imagem para amplia-la
A única coisa que faltou foi o pino DTR, necessário para resetar a placa do arduino antes de enviar o sketch. Eu resolvi isso ligando um capacitor cerâmico de 0,1uF entre o pino RTS da serial e o pino DTR (ou reset) do arduino (conforme sugere no proprio site da arduino). Na verdade não é necessário usar o DTR, porém você terá que apertar o botão reset logo antes do IDE do arduino enviar o sketch, e muitas vezes saber a hora exata de apertar o reset pode ser um problema. Com esse capacitor, você verá o arduino resetar automaticamente antes do PC enviar o sketch para a placa do aduino. E é claro, usei um simples cabo USB para pegar os 5v necessários para alimentar a plaquinha conversora e a plaquinha do Arduino. Ahh e lembre-se que as saidas Tx e Rx entre a serial e a placa do arduino são em "crossing over" ou seja, é invertido: Rx no Tx e Tx no Rx.
Resultado Final
A modificação
Inicialmente eu pensei que seria necessário adaptar um DIMMER controlado pelo arduino, para desligar/ligar e controlar a velocidade, (cheguei inclusive à comprar as peças e fazer o código para isso), porém eu pensei melhor, e percebi que eu estava na verdade fazendo da forma mais difícil e menos funcional, pois desta forma ele somente seria controlável pelo controle remoto. Não é necessário ter outro mecanismo de velocidade, pois o próprio ventilador já tem ! O ventilador em questão é um "Arno Alívio", que tem 3 velocidades controladas por um botão frontal:
As velocidades são selecionáveis por 3 fios internos que sobe para o motor, cada um para uma velocidade, quando nenhum dos 3 está energizado, o ventilador desliga. A ideia é transferir esse chaveamento para 3 relês e controla-los pelo arduino, e ainda não desativar a chave frontal física do ventilador, essa agora foi redirecionada para 3 portas no arduino, assim eu posso controlar o ventilador tanto pelo controle remoto como pelo botão original. O primeiro passo foi desligar a chave física e no lugar ligar o +5v e quando é acionada a chave, ela redireciona para uma das 3 saídas, essas ligadas em 3 portas do arduino ele sabe se você mexeu na chave (alterou o estado dela) e assim a velocidade e até mesmo se você quer desliga-lo por ela (não há +5v em nenhuma das 3 portas). Para entender melhor, de uma olhada nesse esquema.
Clique na imagem para ampliar
Software
Nada disso vai funcionar se não tiver o código implementado. Se quiser copiar o que eu fiz, clique aqui, nele eu usei uma biblioteca para codificar controle remoto, que está junto, afinal de contas , reinventar a roda não é preciso.
O Resultado final é esse:
Repare que eu deixei os pinos da serial disponíveis para futura atualização da firmware
Programando o Controle Remoto
Resultado Final
Agora é adeus sair da cama no meio da noite !
Atualização 02/12/2016
O projeto já vai fazer mais de um ano, e funciona perfeitamente ! Eu considero um projeto de sucesso que já ajudou muita gente a modificar seu ventilador, e proporcionar mais conforto ao seu utilizador. Parece algo simples, mas esse projeto já virou trabalho de TCC em curso de engenharia e já foi até copiado para outros projetos maiores.
Devido a grande procura de pessoas sobre ele, eu tive um sério problema de pessoas sem conhecimento algum em eletrônica me procurando no meu e-mail e me "perturbando" com questões básicas que poderiam ser resolvidas com um pouco mais de dedicação e estudo. Sinceramente, já é de muita boa vontade eu perder meu tempo postando o projeto aqui, e disponibilizando inclusive o código fonte (a parte mais complicada), fotos e videos do funcionamento. Eu trabalho como todo mundo e nunca ganhei nada com ele (nem com outros projetos), nem mesmo oferecendo consultoria. Por isso eu dei um basta e removi os comentários e meu e mail dos projetos a fim de ter paz.
Porém eu não quero prejudicar aquele que realmente tem condições técnicas de realizar o projeto, por isso eu criei um grupo no Yahoo, para que eu e inclusive outros usuários possam ajudar a construir você mesmo o seu próprio Ventiduíno e até mesmo outros que possam surgir. Então se você precisa de uma ajuda de nível intermediário, peça sua inscrição aqui:
Irei aprovar assim que possível.