Depois de todo o trabalho construindo o protótipo e fazendo o código funcionar, chegou a hora de construir o circuito. Não é o objetivo explicar detalhadamente como fazer circuitos impressos, mas somente uma passada superficial sobre o assunto, além, é claro, apresentar as modificações no projeto para que ele funcione fora da placa do Arduino.
English version of this article: Arduino Volt-Ammeter - Final Part - Printed circuit board.
Essa é a continuação do artigo: Volt-Amperímetro com Arduino - Parte 1: Protoboard
Esquemático e layout da placa
O desenho da placa é feito em programas especializados. Existem diversos disponíveis, inclusive gratuitos. Nesse caso eu prefiri desenhar no Eagle da CadSoft dado o tamanho da biblioteca de componentes para ele disponíveis na web, inclusive uma dica interessante é baixar a biblioteca de compoentens da SparkFun que aparentemente possui todos os produtos que eles vendem, uma grande variedade, e pode economizar um bom tempo de desenho. O esquemático é uma visão lógica do circuito e é requisito para desenhar as trilhas e validá-las mais a frente.
Basicamente o que é necessário para rodar um projeto do Arduino em um circuito impresso independente é de uma fonte de alimentação de 5v, de um cristal oscilador de 16MHz e, claro, associar os contatos do microcontrolador com as portas analógicas e digitais da placa do Arduino. O esquema abaixo é popular na web e explica direitinho como precisamos montar o esquemático do projeto para funcionar como no protótipo:
Os componentes novos que devem ser adcionados ao protótipo para funcionar no circuito impresso são:
- 1 Soquete 28 pinos slim (para colocar o chip Atmega);
- 1 Conector Jack para placa;
- 1 Regulador LM78L05;
- 1 Capacitor 1uf;
- 1 Capacitor 10uf;
- 1 Cristal oscilador de 16MHz;
Com os novos componentes e a pinagem do microcontrolador, o esquemático ficou assim:
Através do desenho do esquemático é que é possível validar as trilhas para montar o layout do circuito. Após colocar todos os dispositivos na placa visando facilitar sua conexão, normalmente é necessário escrever o layout das trilhas manualmente, pois os recursos de autoroteamento normalmente não fazem um bom trabalho. Vejam como ficou o layout desenhado para esse projeto:
Confecção da placa de circuito impresso
Não é o objetivo desse artigo ensinar ninguem a corroer placas de cobre, para isso existem diversos artigos por aí. Porém gostaria de fazer umas considerações importantes.
O método utilizado nesse projeto foi a transferência térmica com ferro de passar roupa. Eu até tentei fazer com o toner da impressora direto como alguns artigos por aí tentam explicar, porém como cada impressora possui características diferentes é quase impossível determinar um procedimento que funcione em todos os casos, sem falar nos diversos tipos de ferro de passar roupa e tamanhos de placas a serem transferidas. Além disso é notável a deterioração da parte impressa, o que leva a crer que o tonner não protege o cobre durante a corrosão.
O jeito encontrado que funcionou melhor nesse método foi através do papel Press-n-Peel que eu adquiri pessoalmente em uma loja da Sta. Efigênia (região de São Paulo onde tem umas lojas de eletrônicos). A película azul de poliéster é transferida junto com o tonner e cria uma ótima proteção para a corrosão, além de soltar do papel (plástico, no caso) com bastante facilidade em comparação com a transferência usando somente o tonner com papel couche (ou de revista). Mas não se iludam, o processo não é trivial e também pode haver algum desperdício com tentativas mal sucedidas. Inclusive é recomendado muito cuidado ao manuseá-lo, pois a pelicula azul é bastante delicada e qualquer dobra ou arranhão no papel vai removê-la com facilidade (descobri da pior maneira) e destruir o papel (que não é barato).
Depois de alguns estragos pegando o jeito com o papel, uma transferência bem sucedida (note que ainda foram necessários alguns ajustes, mesmo que mínimos, com a caneta):
Em seguida, após a corrosão:
Por fim, cortada e perfurada:
Para fazer o corte e perfuração da placa foi utilizado uma mini-retífica Dremel com a seu suporte vertical (Workstation 220). Foi utilizado uma broca de 1mm para todos os furos, porém nota-se que ela não é muito adequada para todos os componentes e acabou abrindo demasiadamente algumas ilhas eliminando quase todo o seu contato, o que dificulta considerávelmente a soldagem no final. Nesses casos é importante utilizar um conjunto adequado de brocas CNC.
Montagem dos componentes
A posição dos componentes da placa pode ser visualizada corretamente através dos fontes do Eagle. Os componentes soldados ficaram dispostos como a seguir:
A fim de conservar mais a placa, pois o cobre oxida muito facilmente, ela foi toda estanhada. Esse procedimento torna a colocação dos componentes um pouco complicada, pois ela passa a puxar o estanho, porém é importante para conservar a placa se ela não tiver mascara de solda. Como dá pra notar, o visual dela estanhada não ficou dos melhores:
Por fim providenciei alguns cabos com conectores específicos para facilitar o trabalho com o novo dispositivo:
Conclusão
Para encerrar, uma pequena demonstração do dispositivo funcionando:
Muito Bom o Artigo. Deu até vontade de comprar uma placa de cobre pra brincar de corroer em casa. rs
ReplyDeleteDavid, se for fazer sujeira na sua casa não fala pra sua mulher que foi idéia minha! :D
ReplyDeleteAinda bem que existem pessoas como vc,que coloca todo o processo da montagem muito bem explicado.
ReplyDeleteEu rodei muito na rede para achar está jóia de montagem.parabéns e obrigado.
*Estou montando uma fonte ,em breve voltarei para mostrar.
Que bom que gostou, colega anônimo. Deixe a gente ver essa sua fonte. Ela será AC/DC ou DC/DC? Como voce pretende regulá-la?
ReplyDeleteBoa tarde! Gostei muito do seu projeto e vou montá-lo adicionando uma placa de rede para monitoramento remoto de carga de baterias. Você vê algum poblema em alimentar o circuito com as próprias baterias? Obrigado!
ReplyDeleteIsmael, legal que tenha gostado. Não vejo problema algum em alimentar o circuito pela própria fonte que vai ser medida. Na verdade você só precisa ficar atento para não jogar uma grande voltagem no circuito que poderá fazer o regulador esquentar dimais e desligar, além, é claro, de não jogar uma carga muito alta para esse circuito medir. Esse circuito consegue medir até cerca de 10A dependendo da calibração alcançada, porém não estou certo se ele vai aguentar essa carga durante muito tempo. Pode não ser significativo para o seu uso, mas a calibração pode variar entre a voltagem de pico e corte da sua bateria.
ReplyDeleteMeu caro , parabéns pelo projeto , estou aguardando chegar meu arduino e devo fazer esse projeto para colocar na minha fonte .
ReplyDeleteUma pequena dúvida até que tensão ele pode ser sem queimar ? Pelo que vi em algum lugar o arduino só pode receber entrada de até 5V mas parece que tem um divisor de tensão na entrada , é isso mesmo ?
Corretíssimo! O divisor é de 1/10 (10K/100K) e com isso ele mede até 50v. Nada impede de você usar outras combinações, só não esqueça de arrumar a variável VOLTAGE_MAP com a tensão máxima que seu divisor consegue abaixar para 5v. Só não use resistores de valor muito baixo (menor que 1K, por exemplo) no divisor para não ter que se preocupar com a potência deles.
ReplyDeleteMeu caro obrigado pela resposta , tenho mais uma perguntinha .
ReplyDeleteNos esquemas que ví da montagem do AtMega328 ele pede para colocar um capacitor junto ao cristal (http://arduino.cc/en/uploads/Main/standalone-schematic.jpg ) em seu esquema não existe esses capacitores , tem algum motivo especial para isso ?
Meu caro obrigado pela resposta , tenho mais uma perguntinha .
ReplyDeleteNos esquemas que ví da montagem do AtMega328 ele pede para colocar um capacitor junto ao cristal (http://arduino.cc/en/uploads/Main/standalone-schematic.jpg ) em seu esquema não existe esses capacitores , tem algum motivo especial para isso ?
Obs.: Essa sua mensagem foi postada quando o blogspot estava em manutenção e porisso eu acabei tendo que repostá-la à partir do email de notificação.
O motivo é que eu não tinha esse capacitor na época que montei esse projeto. Para esse tipo de aplicação o seu valor é muito sensível e geralmente não vale a pena utilizar um de valor errado, porisso eu optei por deixar sem nenhum. Até tentei os capacitores usados em PIC 4mhz que tenho aqui, mas o circuito nem ligava.
ReplyDeleteEnfim, se você tiver como conseguir esse capacitor eu recomendo que você o coloque sim no circuito. Hoje em dia eu não deixo mais isso faltar na minha caixa de tranqueiras eletrônicas. :P
tem como fazer um analizador de energia para ler corrente de 1500A e 220V usando garras ou adaptando alicate amperimetro
ReplyDeletelariuxi, claro que dá. Você só precisa do sensor específico para ler a informação, pois não será possível fazê-lo conectando direto na porta do microcontrolador com um divisor e shunt como este está feito. Creio que não seja um trabalho trivial. Se realmente o fizer, não deixe de compartilhar! :P
ReplyDeleteTem como fazer uma leitura da carga da bateria de forma generica e mostrar o resultado em percentual...
ReplyDeleteClaro que sim! Você pode calcular pelo intervalo de trabalho da bateria. A voltagem que ela fica quando está toda carregada seria o seu 100% e a voltagem mínima de trabalho seria o 0%. Entendeu? Basta fazer a conta ou usar a função map().
ReplyDeleteposso monitorar a bateria do meu carro com este projeto? vai funcionar o amperimetro tambem?
ReplyDeleteMonitorar a bateria em uso no carro? Creio que ele deva queimar durante a ignição do motor.
ReplyDeleteOk, você conhece alguma forma de monitorar a bateria atraves do arduino sem colocar ele em risco hehehe?
ReplyDeleteVocê já viu a grossura dos fios que conectam a bateria do carro? Você até pode usar esse modelo aí, só precisaria reforçar MUITO o circuito para maior amperagem e para a resolução/escala do conversor A/D. Esse módulo deve aguentar http://www.sparkfun.com/products/9028 e não é difícil de fazer.
ReplyDeleteAmigo desculpe as perguntas noobies, mas aqui vai mais uma hehehe, assim, no caso do seu projeto a tensao esta passando pelo arduino para alimentar outro aparelho, entao eu estava pensando, se eu usasse só para monitorar sem alimentar mais nada, isso também poderia danificar o meu arduíno, ou ele consumiria só a voltagem e a amperagem que precisa?
ReplyDeleteNão. O microcontrolador não pode alimentar nada, ele produz pouca corrente para ligar um LED ou coisa assim, mas em geral voce usa ele para controlar transistores e afins, esses sim vão gerir corrente. A alimentação do dispositivo é totalmente separada da corrente que entra para medição.
ReplyDeleteSe você olhar no esquemático vai ver que o POWER_JACK alimenta o circuito enquanto os IN e OUT dos bornes estão conectados diretamente entre si. Enfim, qualquer coisa conectada neles vão funcionar mesmo se o dispositivo não estiver sendo alimentado/ligado.
Boa tarde!
ReplyDeleteParabéns pelo o trabalho ficou show!
Sinceramente pretendo montar esse projeto com poucas alterações, eu acha :)
A ideia é ler a tensao e enviar via porta serial para o micro. Esse é um projeto.
E o outro seria conectar uma carga (dispositivo)e o arduino ficaria lendo e reportando para porta serial full time.
Poderia me auxiliar?
contato: engsfw@gmail.com
Ayres, os dois projetos me parecem iguais. :D
ReplyDeleteMas enfim, se você ativar o modo debug já consegue ler tudo no PC, corrente e tensão. Talvez seria legal aumentar a velocidade da porta também, mas basicamente já da pra fazer o que você quer.
Amigo conseguir montar. Ficou muito fera..
ReplyDeleteAgora quero montar um para tensão alternada. Eu tentei ligar esse modelo para medir corrente alternada e da o problema que porque o arduino fica lendo valores variaveis pq e uma onda senoidal ai ele fica lendo 0 depois 2v. Como que varia para consertar isso? valeuuu
Muito bom! :D
ReplyDeleteQuanto ao AC, não sei te dizer de cabeça. Creio que se der uma pesquisada você acha, como as potências normalmentes são outras, muita coisa deve mudar muita coisa no circuito. Se resolver algo posta aqui pra gente saber como você fez.
bom dia amigo Renato gostaria de dar os parabens pelo excelente trabalho era justamente oq eu preciso para construir minha fonte de bancada, sou tecnico formado recentemente, ainda estou bem "cru" na eletronica, acabo de comprar um arduino uno, e pretendo construir ao em vez de comprar, minha fonte pra uso na bancada de serviço... estava pensando em uma fonte simetrica de no minimo 6Amperes 24voltes oq pensa da ideia, poderia me ajudar com algumas dicas, projetos ideias? obrigado!!!
ReplyDeleteOla Renato...
ReplyDeleteGostaria de saber se consigo medir tensões entre 110V e 250V, ou se puder me dizer as alterações que devo fazer, pois tenho um projeto de medidor de fases e queria agrupar um visor para fazer junto a medição de tensão...
Valeu ate mais...
Julio santos
Sem chance, você deve estar querendo fazer algo para AC. Assim que fizer algo nesse sentido eu publico como faz.
DeleteRenato, disponibiliza o esquemático em outro servidor, pois o megaupload esta fechado(lamentável). Parabéns e agradeço.
ReplyDeleteTerrível, hein.. Ainda não tenho a menor idéia de onde colocar os arquivos. Sem falar que o blogspot mudou algo no tema que fez bagunçar o design também. Preciso arrumar mais tempo para colocar isso em ordem. Valeu!
DeleteRenato Otimo poster, estou a elaborar um TCC que estarei usando um multimetro desse, poderia me dizer qual é a voltagem mais alta que ele suporta caso for baixa da para aumentar? os dados do display passa para no software?
ReplyDeleteFicaria muito grato se puder responder.
Diego Fanali
diegofanali@hotmail.com
gostaria de baixar os arquivos que estavam no megaupload.
ReplyDeleteVoce teria um endereço para baixa-los ?
Lineuve Figueiredo
Lineuve@geld.net.br
bom dia amigo, gostaria de uma ajudinha se possivel claro, estou montando uma fonte pra minha bancada, 1,5V - 30V/3Amperes usando Lm350t seria de muita ultilidade usar esse projeto somado a minha fonte vc poderia me passar o layout da sua placa e o codigo de programação do c.i atmega? eu ja possuo o arduino uno, acho q nao seria tão complicado fazer tendo em vista q o mais caro eu ja tenho em casa.... obrigado pela atenção...meu email é junior.sanches@gmail.com
ReplyDeletejunior, queria dar uma olhada nos arquivos do mega upload. farmsid@pop.com.br
ReplyDeleteolá Renato, gostaria de baixar o layout da placa.. rrossco@hotmail.com . desde já agradeço!
ReplyDeleteCiao Renato
ReplyDeleteSono francese e sono molto interessato al progetto, ma ho bisogno del codice per programmare l'Atmega
mi puoi mandare sulla mia casella di posta?
Se questo è il caso, qui è il mio indirizzo
laurentxo1@gmail.com
la ringrazio molto per il progetto complimenti
presto
Laurent
Laurent, o código está disponível na primeira parte do artigo. Prefira usar o Inglês, ou até mesmo o Francês, comigo como alternativa ao Português. Tive de colocar seu Italiano no tradutor do Google.
DeletePode me ajudar com essa programação.Não entendo de arduino...Que software usou para gerar o hex?
ReplyDeletefilhotão(kkkk), no site do Arduino voce baixa a IDE: http://arduino.cc/en/Main/Software
DeleteEla compila e transfere o software para a placa Arduino. No final você pode retirar o chip ATMega do soquete do Arduino e colocá-lo no da PCI finalizada.
after uploading the program to arduino board, can this work in thier own board? without removing the micro controller and place into the pcb board layout?
DeleteGostaria de saber qual a tensão e a corrente máxima que o projeto aguenta da maneira que foi montado por você. E se eu pretendesse realizar a leitura de 220V com uma corrente que não ultrapasse 9A. É possível com o seu projeto? Os dados da leitura ficam armazenados na memoria ou não? E pra correntes e tensões maiores quais as mudanças deveriam ser feitas? Desculpe pelas perguntas um tanto que besta, mas possuo pouco conhecimento nessa área. Obrigado
ReplyDeleteEle só lê DC até 50v. Você pode até mexer no divisor para conseguir voltagens maiores, mas vai sacrificar a precisão. E volto a dizer: "ele só lê DC". E ele também só memoriza a calibração, não os valores. Para mexer na corrente, precisava pesquisar isso novamente para saber como aumentar, mas talvez valha mais a pena você pegar um módulo especializado que faça isso.
DeleteBoa noite amigo Renato. Gostaria de dar os parabéns pelo excelente trabalho. O projeto do volt-Amp era exatamente o que eu preciso para construir um prototipo de um volt-Amp que memorize em uma memoria EEPROM as 10 ultimas leituras e transmita utilizando um transceptor uma vez ao dia. Tem alguma coisa a respeito? O código roda em um Arduino Nano?
ReplyDeleteAté acho que roda em nano sim, mas você tem um belo trabalho a frente para incluir essas funcionalidades adicionais. Boa sorte!
DeleteBoa tarde, sou novo com o arduino e tentei montar este circuito. O voltímetro funcionou, porém estou tendo problemas com o amperímetro. Gostaria de saber se o shunt resistor é um resistor normal de baixa resistencia, no caso 0,47R ou tem que ser um resistor especial?
ReplyDeleteO resistor é normal, ele só precisa ser de maior potência. Os problemas que eu tive na montagem eram referentes ao contato entre as trilhas por essas serem muito próximas. Talvez fosse o caso de verificar essa hipótese.
DeleteThis comment has been removed by the author.
ReplyDeleteParabéns,
ReplyDeletePost muito bom e útil.
Montei aqui, dei uma personalizada para medir até 70 Amperes.
Só Alegria!
ola parabéns pelo projeto, vi que mudaste para medir ate 70a Carlos, seria possível mudar para medir ate uns 110a
ReplyDeletegrato
Parabéns pelo trabalho Renato. Sou novato na área e consegui fazer esse projeto. Fiz a leitura da tensão certinho, mas não consegui da corrente. Como eu faço para ler a corrente gerada por um motor "gerador"?? O que eu eu posso ligar no borne "out"?? Obrigado
ReplyDeleteA corrente é o consumo. No borne out você coloca algum dispositivo que consuma a energia. Sem consumo não tem corrente. A energia precisa passar pelo dispositivo para ele medir esse consumo.
Deletetem como fazer essa montagem sem a utilização desta placa
ReplyDeleteVocê pode fazer na protoboard, a parte 1 tem o esquema de como montá-la, ou você pode comprar aquelas placas já perfuradas. Só lembra de reforçar as trilhas que conduzem a energia.
DeleteBoa tarde, muito bacana esse seu projeto amigo, gostaria de saber se eu posso usar esse projeto em uma fonte ajustavel?
ReplyDeleteATT: marcelo
É justamente pra funcionar com essas fontes que ele foi criado! Curioso que eu só fiz essa parte do display, a fonte mesmo eu nunca terminei. :D
Deleteafter uploading the program to arduino board, can this work in thier own board? without removing the micro controller and place into the pcb board layout?
ReplyDeleteplease help..
If you see the first part of this project, it is showing the prototype phase where everything runs from Arduino board and the connections are made using a breadboard.
DeleteRenato montei em protoboard aqui porém de vez em quando ao colocar uma carga onde é mostrada a corrente, os caracteres do LCD apagam completamente, somente volta ao normal quando reseto o microcontrolador. Isso acontecia com você ? ou pode ser algum problema de compilação ?
Deletethanks sir for reply, can this work on ATMEGA168 ? because i dont have atmega8 microcontroller. please help
ReplyDeleteBoa tarde.
ReplyDeleteO projeto em questão mede corrente e tensão simultaneamente? É que no video só mediu tensão.
Grato!
boa tarde
ReplyDeleteSera que daria pra fazer um deses para medir a voltagem de uma fonte slim de computador? Gostaria de ficar medindo o 5V e 12V dela. Pois trabalho com informativa reparando fontes e esse projeto me adiantaria muito
obrigado
como faço pra baixar o esquema completo ???
ReplyDeleteTeria como modificar o código para ele fazer o calculo de potência e mostrar no LCD?
ReplyDeleteBoa tarde!
ReplyDeletec. tem alguma versão para display de LED ( 3 ou 4 dígitos de 7 segmentos)?
Abraço!
Montei na protoboard com um arduino nano, agora pretendo montar numa placa de circuito eletrico e testar se funciona com atmega8 (tenho uns 2 comigo) e depois colocar na minha fonte de bancada.
ReplyDeleteolhem como ficou:
https://www.youtube.com/watch?v=8aw-ms-VQPc
Muito bom o artigo, gostaria de saber se você pode me ajudar, eu quero fazer um volt-amperímetro, mas eu quero mostrar no display o resultado de uma equação que usa a voltagem e a amperagem lidas pelo aparelho.
ReplyDeleteComplica muito?
Ex: display=15*V/A mais ou menos isso.
Muito bom esse código.
ReplyDeleteComo faço para indicar no lugar do amperitro um valor que seria a tensão dividida pelo corrente. Transformado em ohmimetro