HacKeyboard, um teclado mecânico de hardware aberto – parte V

Olá a todos! Esta é a quinta parte da publicação sobre a construção do HacKeyboard. Caso não tenham visto as anteriores, podem ver aqui:

[HacKeyboard, um teclado mecânico de hardware aberto – parte I]

[HacKeyboard, um teclado mecânico de hardware aberto – parte II]

[HacKeyboard, um teclado mecânico de hardware aberto – parte III]

[HacKeyboard, um teclado mecânico de hardware aberto – parte IV]

Fazer a PCB

PCB do HacKeyboard

Esta parte do projecto foi talvez a que consumiu mais tempo e a mais frustrante. E vou dizer-vos porquê. A PCB é muito grande. Grande demais para mandar fazer numa empresa profissional porque iria ser cara demais e grande demais para fazer com os métodos caseiros de fabrico de PCBs habituais. Contudo, depois de algumas tentativas e muita paciência acabei por conseguir. Usei o método da transferência do toner, que é bastante simples:

  1. Imprimir a PCB em papel brilhante de revista numa impressora a laser;
    PCB do HacKeyboard transferência toner
  2. Limpar toda a gordura da PCB;
    Limpeza PCB HacKeyboard
  3. Colocar a folha impressa virada para baixo em cima da PCB;
  4. Aplicar o ferro de engomar por cima durante alguns minutos;
    ferro engomar PCB HacKeyboard
  5. Colocar a PCB com o papel agarrado dentro de uma tina de água, deixar o papel ensopar e proceder à remoção do mesmo com muito cuidado;
  6. Verificar que as pistas de toner ficaram agarradas à PCB;
    PCB HacKeyboard fabrico
  7. Colocá-la numa solução corrosiva de metais, como ácido muriático com água oxigenada, até que todo o cobre que não esteja coberto com toner seja removido;
  8. Remover a PCB da solução corrosiva e limpá-la com água  corrente;
    PCB HacKeyboard corrosão
  9. Remover o toner com um esfregão verde ou esfregão de aço;
  10. Fazer todos os furos da PCB;
    PCB HacKeyboard remoção toner
  11. PCB feita!

Poderia agora começar aqui a explicar ao pormenor, mencionando todos os pequenos truques e dicas, mas em vez disso vou apenas recomendar-vos alguns tutoriais muito bons que outras pessoas fizeram e que estão mesmo muito bem explicados:

Se seguirem estes guias vão perceber como funciona. Não tem nada que enganar 🙂

Contudo, esta não é uma PCB normal e deparei-me com vários problemas:

  • Uma vez que a PCB é maior que uma folha A4 tive de imprimi-la em 4 partes;
    HacKeyboard transferência toner
  • Visto que a PCB é de dupla-face, é necessário alinhar perfeitamente as 4 partes;
    PCB HacKeyboard alinhamento
  • Uma vez que a PCB é grande demais é necessário usar um ferro de engomar potente. Se se usar um ferro de engomar fraco, o toner e a PCB não aquecem o suficiente para que fiquem colados, pois a PCB irá funcionar como um dissipador gigante. Se forem tentar fazer isto e tiverem 2 ferros de engomar, usem os dois. Se tiverem três… sabem o que fazer; 🙂
  • Ao remover o papel, alguns pequenos bocados de toner também são removidos. Para corrigir estas falhas pode usar-se uma caneta de acetato;
    PCB HacKeyboard caneta acetato
  • O processo de corrosão tem de ser cuidadosamente controlado. Uma vez que teria de gastar muito ácido para corroer toda a PCB de uma vez, usei uma esponja para corroer apenas algumas partes da PCB (aprendi este método neste excelente instructable). Este processl leva algum tempo e requer alguma paciência mas permite monitorizar o processo de corrosão e pará-lo caso seja for necessário;
  • Usei ácido muriático (ácido clorídrico – 33%) com água oxigenada (peróxido de hidrogénio – 10 volumes) como solução corrosiva e tive de a substituir diversas vezes, pois a quantidade de cobre a ser corroída rapidamente saturava a solução. Geralmente uso 50% de ácido com 50% de água oxigenada.
    PCB HacKeyboard ácido luvas

No total tive de fazer 3 tentativas para conseguir fazer a PCB mas acabei por conseguir fazer uma suficientemente boa para continuar com o projecto.

Deixo-vos algumas dicas úteis para o caso de quererem fazer o vosso teclado:

  • Importante: Façam este processo numa área bem ventilada e, se possível, utilizem uma máscara para a vossa boca e nariz. Não se esqueçam das luvas e dos óculos de protecção! Não querem ácido nem nos vossos olhos nem nas vossas mãos 🙂
  • Importante: Quando misturarem o ácido com peróxido de hidrogénio num recipiente, coloquem sempre o peróxido de hidrogénio primeiro. Assim, se houverem salpicos durante o derrame do ácido, estes terão uma concentração mais baixa de ácido.
  • Façam a PCB em 4 passos:
    1. Façam a transferência do toner da primeira parte;
    2. Façam a transferência do toner da segunda parte, alinhando-a cuidadosamente com a primeira. Cubram o outro lado da PCB com fita cola larga ou papel autocolante, metam a PCB a corroer e depois limpem-na;
    3. Façam 3 ou 4 furos para servir de guia;
    4. Façam a transferência do toner da terceira parte, alinhando-a cuidadosamente com a primeira e com a segunda;
    5. Façam a transferência do toner da quarta parte, alinhando-a com as outras três. Cubram o lado já corroído com fita cola larga ou papel autocolante, metam a corroer e depois limpem-na;
  • Observem com atenção o processo de corrosão e se o toner começar a sair em algum sítio, parem retirem a PCB do ácido, limpem-na, corrijam as pistas com a caneta de acetato e continuem a corrosão;
  • Para alinhar entre partes do mesmo lado, cortem um X na zona onde as partes se sobrepoem e dobrem as pontas para fora. Depois alinhem as pistas da PCB com as pistas das partes dobradas;
    PCB HacKeyboard alinhamento
  • Quando usarem furos para servir de guia no alinhamento de partes em lados diferentes da placa, usem uma luz do outro lado da placa;
    PCB HacKeyboard alinhamento

NOTA: Algumas das fotos neste post são das versões iniciais da PCB mas servem para ilustrar o processo de fabrico da mesma.

Depois de ter a PCB corroída, foi altura de fazer todos os furos para os componentes “through-hole” e para as vias. Este passo levou algum tempo mas foi relativamente fácil de fazer, especialmente com um pequeno berbequim de bancada. Coloquei uma broca de 0.7mm no mini-berbequim e efectuei a furação de toda a placa. Para tornar o processo mais fácil, usei o KiCAD para imprimir numa folha uma PCB sem quaisquer pistas, apenas com os furos, e fui marcando cada um dos furos à medida que os fazia na PCB. Uma vez que haviam mesmo muitos furos para fazer, seria fácil esquecer-me de algum se não fizesse a marcação dos mesmos. Estas folha de ajuda está disponível em formato postscript aqui.

PCB HacKeyboard folha furos

PCB HacKeyboard furos

Assim que terminei os furos, coloquei uma broca de 1mm no mini-berbequim e procedi à furação dos furos do interruptor e do conector de programação perto das portas micro USB.

Depois deste passo “super divertido” em que tive que fazer dezenas ou centenas de furos na PCB, chegou o momento de fazer algo “ainda mais divertido”… ligar todas as vias (/ironia). Embora seja também um processo muito fácil de fazer, também levou algum tempo. Para ligar cada uma das vias descarnei um cabo multifilar, separei 2 ou 3 dos condutores finos, enrolei-os e inseri-os em no furo da via, soldando-os em ambos os lados. Depois cortei o excesso e repeti o processo para todas as vias da PCB. Mais uma vez, ter uma folha com a localização e todos os furos impressa ajudou bastante, servindo para registar todas as vias que já tinham sido ligadas.

PCB HacKeyboard vias

PCB HacKeyboard vias

PCB HacKeyboard vias

Finalmente, chegou a altura de soldar todos os componentes. Segui a localização dos componentes no ficheiro da PCB do KiCAD e comecei pelos componentes SMD como o microcontrolador, a EEPROM, o regulador charge-pump, as portas micro USB, as resistências e os condensadores SMD, os LEDs WS2812B e só depois procedi à soldadura dos díodos e do conector de programação. Tomei especial atenção para me certificar de que soldei os LEDs WS2812B na posição correcta, uma vez que a orientação dos mesmos não é fácil de determinar à primeira vista. Consultar o datasheet também é sempre útil. 🙂

Os díodos tiveram de ser soldados dos dois lados da PCB, uma vez que as patas dos mesmos também são usadas para fazer ligações entre os dois lados da placa.

Se se estão a perguntar para que são os díodos, eles são necessários para prevenir um problema chamado “ghosting”. O “ghosting” ocorre quando se pressionam duas teclas e o teclado não sabe que teclas estão a ser pressionadas. Quando e porque é que isto acontece? Bem, o teclado é uma grande matriz de interruptores e, tal como todas as matrizes, é composto por linhas e colunas. Se não existirem díodos, quando se carregam em dois interruptores em duas linhas diferentes e duas colunas diferentes, quando o microcontrolador vai ler a matriz existem quatro teclas possíveis, em vez de duas, e não consegue saber quais são as correctas.

Camos considerar um exemplo: assumindo que temos um teclado QWERTY, imaginem pressionar no ‘Q’ e no ‘S’. Se não existirem díodos, o processador não vai saber se estamos a pressionar o ‘Q’ ou o ‘W’ e também não sabe se estamos a pressionar o ‘A’ ou o ‘S’ porque o ‘Q’, o ‘A’, o ‘W’ e o ‘S’ estão nas mesmas colunas e nas mesmas linhas. Os díodos previnem que isto aconteça uma vez que isolam cada coluna ou linha das outras.

Dica para soldadura: para o caso de componentes SMD como o microcontrolador, a EEPROM ou o regulador Charge Pump, pode usar-se uma técnica chamada “drag soldering” (soldadura por arrasto) que está muito bem explicada neste instructable: How to Solder SMD ICs the easy way!

PCB HacKeyboard soldar componentes

PCB HacKeyboard soldar componentes

PCB HacKeyboard soldar componentes

E a PCB finalmente ficou completa! 🙂 Hora de ligar os dispositivos “extra” 🙂

Estão a gostar do projecto? Sigam o link para ler o resto e para ver o conjunto completo de fotos da construção: [HacKeyboard, um teclado mecânico de hardware aberto – parte VI]


Achou esta publicação útil? Deseja contribuir para outros projectos envolvendo ciências computacionais, electrónica, robótica ou mecatrónica que serão publicados neste blog? Se sim, pode fazer uma doação utilizando o botão do Paypal abaixo. Obrigado! 🙂

Donate



  • Facebook
  • Twitter
  • Google Plus
  • LinkedIn
  • Reddit
  • Delicious
  • StumbleUpon
  • Digg
  • RSS
  • Email
  • Print