universidade federal do paraná setor de tecnologia departamento

Propaganda
UNIVERSIDADE FEDERAL DO PARANÁ
SETOR DE TECNOLOGIA
DEPARTAMENTO DE ENGENHARIA ELÉTRICA
ARIELTON TRENTO
FERNANDO PATRICK RUIZ SANTICHE PILATO
FRESADORA MICROCONTROLADA PARA PLACAS DE
CIRCUITO IMPRESSO
CURITIBA
2010
UNIVERSIDADE FEDERAL DO PARANÁ
REITORIA
Reitor: Zaki Akel Sobrinho
Vice-Reitor: Rogério Andrade Mulinari
COORDENAÇÃO DO CURSO DE ENGENHARIA ELÉTRICA
Prof. Dr. Ewaldo Luiz de Mattos Mehl
SETOR DE TECNOLOGIA
DEPARTAMENTO DE ENGENHARIA ELÉTRICA
Chefe Departamento
Professor Doutor Eduardo Parente Ribeiro
ARIELTON TRENTO
FERNANDO PATRICK RUIZ SANTICHE PILATO
FRESADORA MICROCONTROLADA PARA PLACAS DE CIRCUITO
IMPRESSO
Trabalho de Conclusão de Curso para Graduação na
área de Engenharia Elétrica apresentado aos
professores do Setor de Tecnologia, Departamento de
Engenharia Elétrica, da Universidade Federal do
Paraná, como requisito parcial para a obtenção do
título de Engenheiro Eletricista.
Orientador: Márlio José do Couto Bonfim
Professores: Alessandro Zimmer e Ademar Luiz Pastro
CURITIBA
2010
ARIELTON TRENTO
FERNANDO PATRICK RUIZ S. PILATO
FRESADORA MICROCONTROLADA PARA PLACAS DE CIRCUITO
IMPRESSO
Este Trabalho de Diplomação foi julgado e aprovado como requisito parcial para a
obtenção do Título de Engenheiro Eletricista, do Curso Superior de Engenharia
Elétrica da Universidade Federal do Paraná.
Curitiba, 7 de Julho de 2010
Prof. Dr. Ewaldo Luiz de Mattos Mehl
Coordenador de Curso
Departamento de Engenharia Elétrica
BANCA EXAMINADORA
Prof. Dr. Alessandro Zimmer
Universidade Federal do Paraná
Prof. M. Sc. Ademar Luiz Pastro
Universidade Federal do Paraná
Prof. Dr. Marlio J. do C. Bonfim
Universidade Federal do Paraná
Orientador
Prof. Dr. Marlio J. do C. Bonfim
Universidade Federal do Paraná
AGRADECIMENTOS
A Deus por estar sempre presente em nossa vida e ao nosso lado, iluminando o
nosso caminho e a nossa mente;
Aos nossos pais e aos nossos amores, pela inspiração e compreensão pelos
momentos não compartilhados, dedicados à execução do projeto, pelo apoio e pela
verdadeira amizade;
Aos nossos irmãos por estarem sempre prontos à colaborar quando necessário;
A todos aqueles que de alguma forma incentivaram, colaboraram e contribuíram
para com a pesquisa;
À Universidade Federal do Paraná, pela oportunidade da realização do curso de
engenharia elétrica e deste trabalho de conclusão de curso;
A todos os professores desta Universidade, pelo incentivo, colaboração, apoio,
correções e ensinamentos.
Para diminuir os problemas no mundo e inovar,
as pessoas deverão, primeiramente,
estar amparadas pelo otimismo,
dedicação, esperança,
paixão e
possuir conhecimento,
que deverá ser alimentado constantemente
pela sua aplicação prática e pelo
aperfeiçoamento contínuo.
Dos autores.
I
RESUMO
Este trabalho apresenta o desenvolvimento de uma fresadora de baixo custo,
em relação às soluções disponíveis no mercado, que tem a finalidade de prototipar
placas de circuito impresso. Trata-se de uma alternativa aos métodos já existentes,
que são muito caros quando se busca qualidade, ou rústicos, quando considerados
os trabalhos artesanais e domésticos, que apresentam limitações ou resultados não
confiáveis. O objetivo de criar de uma fresadora microcontrolada, economicamente
viável, precisa e que utiliza um pendrive como entrada de dados, foi atingido. Para a
validação do projeto foi utilizado os softwares Eagle e CamBam. Uma vez criado o
layout da placa, todo trabalho de furação, corte e desenho das trilhas poderá ser
realizado, sem a necessidade de um microcomputador acoplado, bastando apenas a
utilização de um pendrive com os arquivos no formato Gcode. O isolamento mínimo
atingido foi de 0,4mm, limitado principalmente pela fragilidade das brocas mais finas,
que representa um valor aproximadamente 1400 vezes maior que a resolução da
máquina.
Palavras chaves: fresadora, PCI, pendrive.
II
ABSTRAT
This work presents the development of a low-cost milling machine, compared
to solutions available in the market, which aims to prototype printed circuit boards.
This is an alternative to existing methods, which are very expensive when seeking
quality, or rustic, when considering the rustic and domestic work, which have
limitations or unreliable results. The purpose of creating a microcontrolled milling
machine, economically viable, with a good accuracy and that uses a flash drive as
data entry, was reached. To validate the design the following softwares were used:
Eagle and Cambam. Through the board layout, previously created, all work of drilling,
cutting and drawing of the tracks could be accomplished without a computer attached
to the machine, just by using a flash drive with the Gcode files into. The minimum
isolation achieved was 0.4 mm, limited mainly by the weakness of the finest drills,
which represent a value approximately 1400 larger than the machine resolution.
Key words: miling machine, PCB, pendrive.
III
SUMÁRIO
1
INTRODUÇÃO
1
2
CONTEXTUALIZAÇÃO
2
3
OBJETIVOS
3
4
FUNDAMENTAÇÃO TEÓRICA
3
4.1
MECÂNICA
6
4.1.1
ESTRUTURA
6
4.1.2
MOVIMENTAÇÃO DOS EIXOS
6
4.2
MOTORES
4.2.1
PARA OS EIXOS
4.2.2
PARA O DESBASTE
8
8
10
4.3
FONTE DE ALIMENTAÇÃO
11
4.4
ELETRÔNICA
12
4.5
COMANDO NUMÉRICO
12
DESENVOLVIMENTO
15
5
5.1
MECÂNICA
15
5.2
BROCAS
16
5.3
HARDWARE
18
5.3.1
MICROCONTROLADOR
20
5.3.2
DRIVER PARA OS MOTORES
21
5.3.2.1
Linistepper
23
5.3.3
INTERFACE HOMEM-MÁQUINA
26
5.3.4
INTERFACE COM O PENDRIVE
28
5.3.4.1
Principais pinos do VNC1L e suas funções
29
5.3.4.2
Gravação do firmware no VNC1L
31
5.4
FIRMWARE
32
5.4.1
MICROCONTROLADOR
32
5.4.2
VNC1L
34
5.4.2.1
Interface SPI
34
IV
5.4.2.2
5.4.3
Comandos utilizados
DISPLAY GRÁFICO
36
38
6
VALIDAÇÃO
39
7
RECURSOS FINANCEIROS
40
7.1
HARDWARE
41
7.2
MECÂNICA
46
7.3
CUSTO FINAL
46
8
CRONOGRAMA DO PROJETO
47
9
CONCLUSÃO
49
10
REFERÊNCIAS
50
ANEXO A – COMANDOS G-CODE
52
ANEXO B – CÓDIGOS M
54
APÊNDICE A – FLUXOGRAMA GERAL DO FIRMWARE
56
APÊNDICE B – FLUXOGRAMA: TESTE DOS SENSORES
57
APÊNDICE C – FLUXOGRAMA: TESTE DO EIXO X
58
APÊNDICE D – FLUXOGRAMA: ESTE DO EIXO Y
59
APÊNDICE E – FLUXOGRAMA: TESTE DO EIXO Z
60
APÊNDICE F – FLUXOGRAMA: POSIÇÃO INICIAL DO EIXO Z
61
APÊNDICE G – FLUXOGRAMA: POSIÇÃO INICIAL DOS EIXOS X E Y
62
APÊNDICE H – FLUXOGRAMA: FRESAGEM DO ARQUIVO ESCOLHIDO
63
APÊNDICE I – FLUXOGRAMA: INTERPOLAÇÃO LINEAR
64
V
APÊNDICE J – ESQUEMÁTICO: PLACA CONTROLADORA
65
APÊNDICE L – ESQUEMÁTICO: CONVERSOR SERIAL/USB
66
APÊNDICE M – ESQUEMÁTICO: PICKIT2
67
APÊNDICE N – ESQUEMÁTICO: PLACA DO LCD
68
APÊNDICE O – ESQUEMÁTICO: PLACA DO SENSOR
69
APÊNDICE P – ESQUEMÁTICO: PLACA DO VNC1L
70
APÊNDICE Q – ESQUEMÁTICO: DRIVER LINISTEPPER
71
APÊNDICE R – FOTOS DA FRESADORA
72
VI
LISTA DE FIGURAS
Figura 1: Exemplo de fresadora horizontal..................................................................4
Figura 2: Trens de fresas ............................................................................................4
Figura 3: Exemplo de fresadora vertical......................................................................5
Figura 4: Fuso de esferas ...........................................................................................6
Figura 5: Guia linear....................................................................................................6
Figura 6: Castanha......................................................................................................7
Figura 7: Guias cilíndricas e fuso montados em uma CNC .........................................7
Figura 8: Solução adotada para movimentação dos eixos..........................................8
Figura 9: Exemplos de servo-motores.........................................................................9
Figura 10: Exemplos de motores de passo .................................................................9
Figura 11: Motor de passo utilizado no projeto..........................................................10
Figura 12: Ferramenta utilizada como spindle...........................................................11
Figura 13: Exemplo do inicio de um arquivo G-Code ................................................14
Figura 14: Exemplo do final de um arquivo G-Code..................................................14
Figura 15: Diagrama em blocos da fresadora ...........................................................15
Figura 16: Brocas de corte lateral com apenas uma borda cortante .........................16
Figura 17: Brocas cônica e paralela ..........................................................................17
Figura 18: Brocas de aço rápido ...............................................................................17
Figura 19: Cônica invertida .......................................................................................18
Figura 20: Cônica dentada ........................................................................................18
Figura 21: Cônica Diamantada..................................................................................18
Figura 22: Cônica Lisa ..............................................................................................18
Figura 23: Cilíndrica dentada ....................................................................................18
Figura 24: Diagrama em blocos do hardware............................................................19
Figura 25: Famílias de microcontroladores da Microchip ..........................................20
Figura 26: Circuito de driver sugerido pela ST ..........................................................22
Figura 27: Modo full step ...........................................................................................24
Figura 28: Corrente nas bobinas usando Full-step....................................................24
Figura 29: Modo half step..........................................................................................25
Figura 30: Corrente nas bobinas usando micro-step com 3 níveis............................26
Figura 31: Corrente nas bobinas usando micro-step com 9 níveis............................26
VII
Figura 32: Pinagem do display gráfico (medidas em mm) ........................................27
Figura 33: Display e botões na máquina ...................................................................28
Figura 34: Pinagem do VNC1L..................................................................................30
Figura 35: Conexões do VNC1L com o FT232..........................................................32
Figura 36: Exemplo de uma sequência de leitura de um byte do VNC1L .................35
Figura 37: Exemplo de uma seqüência de escrita de um byte no VNC1L ................35
Figura 38: Seqüência de leitura do byte de Status do VNC1L ..................................36
Figura 39: Seqüência de inicialização do GLCD .......................................................38
Figura 40: Layout e Placa fresada.............................................................................39
Figura 41: Projeto CAD da moto ...............................................................................40
Figura 42: Resultado da fresagem do arquivo dxf.....................................................40
VIII
LISTA DE TABELAS
Tabela 1 - Característica dos motores ......................................................................10
Tabela 2 - Modos de operação do driver...................................................................24
Tabela 3 - Conexões para selecionar o tipo de interface ..........................................30
Tabela 4 - Pinos de uso geral do VNC1L utilizados ..................................................31
Tabela 5 - Bits de direção e endereço da interface SPI ............................................34
Tabela 6 - Significados do bit de status do VNC1L ...................................................35
Tabela 7 - Significado dos bits do byte de Status do VNC1L ....................................36
Tabela 8 - Comandos curtos utilizados .....................................................................37
Tabela 9 - Mensagens de resposta do VNC1L..........................................................37
Tabela 10 - Bytes identificadores da porta a ser lida ou escrita ................................38
Tabela 11 - Lista de materiais do módulo principal - Controladora ...........................41
Tabela 12 - Lista de materiais do módulo DO VNC1L...............................................42
Tabela 13 - Lista de materiais dos drivers.................................................................43
Tabela 14 - Lista de materiais do módulo do display ................................................43
Tabela 15 - Lista de materiais dos módulos dos sensores........................................43
Tabela 16 - Lista de materiais do módulo dos botões ...............................................44
Tabela 17 - Lista de materiais do módulo do FT232 .................................................44
Tabela 18 - Lista de materiais do Pickit 2..................................................................45
Tabela 19 - Lista dos principais materias para a estrutura........................................46
Tabela 20 - Preço de custo aproximado....................................................................47
Tabela 21 - Cronograma do projeto ..........................................................................48
IX
LISTA DE ABREVIATURAS E SIGLAS
CAN - Controller Area Network
CAD – Computer-Aided Design
CARBIDE – Composto de carbono com um elemento menos eletronegativo
CI - Circuito Integrado
CNC – Controle Numérico Computadorizado
CPU _ Central Processing Unit
CS - Chip Select
I²C - Inter-Integrated Circuit
FAT - File Allocation Table
FIFO - First In, First Out
GLCD - Graphic Liquid Crystal Display
GPIO - General Purpose Input/Output
LCD - Liquid Crystal Display
MDF – Medium Density Fiberboard
MIPS - Milhões de instruções por segundo
PCB - Printed Circuit Board
PCI - Placa de circuito impresso
PLL - Phase-Locked Loop
SDI - Serial Data In
SPI - Serial Peripheral Interface Bus
SRAM - Static Random Access Memory
TCC – Trabalho de Conclusão de Curso
TCP/IP - Transmission Control Protocol / Internet Protocol
UART - Universal Asynchronous Receiver/Transmitter
USB – Universal Serial Bus
1
1
INTRODUÇÃO
Este trabalho apresenta o desenvolvimento de uma fresadora de baixo custo,
em relação às soluções disponíveis no mercado, que tem a finalidade de prototipar
placas de circuito impresso. Trata-se de uma alternativa aos métodos já existentes,
que são muito caros quando se busca qualidade, ou rústicos, quando considerados
os trabalhos artesanais e domésticos, que apresentam limitações ou resultados não
confiáveis.
Normalmente as fresadoras CNCs comerciais utilizam softwares proprietários
para o controle do equipamento e o comando numérico utilizado nem sempre segue
uma normatização. Por este motivo, sempre há a necessidade de um
microcomputador próximo ao equipamento, geralmente dedicado à tarefa, além de
exigir a capacitação do operador. Como base nessas informações, o grupo fixou
como objetivo o desenvolvimento de uma máquina de simples operação, que seja
capaz de interpretar uma linguagem padronizada, que possa equipar laboratórios
sem a necessidade de um operador exclusivo e que não necessite de um
microcomputador acoplado à máquina.
A geração do comando numérico será responsabilidade do usuário, que
deverá atentar para limitações e restrições do equipamento, mas para validar o
projeto, e também servir como referência, o grupo utilizou softwares que geram o
código a partir de fontes distintas de dados. O primeiro software foi um editor de
placas de circuito impresso enquanto o segundo cria o comando numérico a partir de
arquivos CAD.
Com o editor de PCI, uma vez criado o layout da placa, todo trabalho de
furação, corte e desenho das trilhas poderá ser realizado na fresadora, sem a
necessidade de um microcomputador acoplado, bastando apenas a utilização de um
dispositivo de armazenamento digital contendo os arquivos com o código.
2
2
CONTEXTUALIZAÇÃO
A atividade industrial em especial àquela ligada à área tecnológica requer
organização, controle eficiente, precisão e agilidade.
Infelizmente, as grandes
empresas trabalham hoje com custos fixos e variáveis muito elevados, que não as
permitem parar as suas linhas de produção, para produzir poucas unidades
destinadas a experimentos.
Rapidez e agilidade no ato de industrializar esses produtos, também para
atender a pequenas unidades, passaram então, a ser decisivos tanto para a garantia
de novos projetos, como também, para reduzir os seus custos e prazos de entrega
das encomendas.
Percebe-se que atualmente o parque fabril de placas de circuito impresso,
pelas suas características e metas de produção, não atendem satisfatoriamente as
pessoas ligadas ao mundo acadêmico, ou, a pequenos pedidos de unidades fabris
especiais, prejudicando o desenvolvimento de novas pesquisas, estudos e criação
de novos equipamentos.
Atualmente, encontram-se no mercado diversas opções de equipamentos
capazes de solucionar o problema descrito. Através de uma vasta pesquisa sobre
esses equipamentos os alunos encontraram fresadoras convencionais – por
desbaste – e outras, que utilizam canhões à laser para a retirada do cobre
excedente. Entretanto, todas elas utilizam o software de controle do fabricante,
sendo necessário que um microcomputador sempre esteja conectado à máquina
para sua utilização.
Analisando esse cenário, os alunos notaram que um equipamento que não
necessitasse estar conectado a um microcomputador e fosse capaz de interpretar
uma linguagem de comando numérico normatizada seria uma inovação e abriria
horizontes para novos desenvolvimentos.
3
3
OBJETIVOS
Desenvolver uma fresadora de placas de circuito impresso (PCI) com
hardware dedicado capaz de interpretar o código numérico normatizado RS274D
(Gcode), controlar todos os dispositivos necessários para o funcionamento do
equipamento e com uma interface USB para entrada de dados através de
dispositivos
de
armazenamento
de
dados
em
massa,
como
pendrives.
Adicionalmente dispor opções de controle manual dos eixos e interface paralela
(DB25) para conexão com o computador.
4
FUNDAMENTAÇÃO TEÓRICA
A fundamentação deste TCC está baseada na realização de uma pesquisa
prático/teórica, que embasa todas as conclusões e recomendações finais, de forma
a contribuir nos processos de fresagem de placas de circuito impresso. Segundo
entendimento de Carozzi (2005, p.17):
Uma fresadora é uma “máquina ferramenta” composta
basicamente por um motor de alta velocidade (em torno de 60.000
RPM), em movimento rotativo contínuo. O motor faz girar um eixo
com mandril (spindle - tipo de porta ferramentas), onde são fixados
os desbastadores (fresas), que são cortadores giratórios de ângulos
diversos, que podem possuir um ou vários freses (elementos de ação
de desbaste).
Fresadoras são geralmente utilizadas para desbastar e cortar materiais
metálicos (como aço, alumínio, latão) ou outros tipos de materiais (madeira, plástico,
entre outros). Este processo é chamado de usinagem. Devido às suas
características de operação, materiais e aspectos construtivos que prioriza a
precisão e a repetibilidade, as fresadoras de placas de circuito impresso, possuem
custo de aquisição mais elevado que as demais.
As fresadoras são classificadas de acordo com a posição do eixo principal em
relação à mesa. São três os principais tipos de fresadoras: horizontal, vertical e
universal.
Na fresadora horizontal – Figura 1 (Cimm, 2010) – o eixo rotativo ocupa a
posição horizontal, paralela à superfície da mesa da máquina, podendo se deslocar
4
em qualquer eixo horizontal (X e Y). É capaz de executar diversas operações de
usinagem, como fresamento de vários tipos de ranhuras, de roscas, de guias
prismáticas e de formas complexas. Ainda permite a utilização de várias fresas Figura 2 (Cimm, 2010).
Figura 1: Exemplo de fresadora horizontal
Figura 2: Trens de fresas
No tipo vertical – Figura 1 (Cimm, 2010) – o eixo rotativo ocupa uma posição
perpendicular à superfície da mesa da máquina, podendo se deslocar também nos
eixos X e Y. É capaz de realizar fresamento frontal, de cantos a 90°, de ranhuras em
T, de alguns tipos de guias, entre outros.
5
Figura 3: Exemplo de fresadora vertical
A fresadora do tipo universal reúne as características dos tipos horizontal e
vertical, sendo portanto a mais versátil, chamada assim porque permite que sejam
efetuados diversos tipos de trabalhos diferentes. Essa versatilidade deve-se à
mobilidade de suas partes, como mesa e eixo principal inclinável, permitindo que a
peça a ser fresada seja deslocada em qualquer um dos eixos (X, Y e Z) e ainda seja
rotacionada nos sentidos horário e anti-horários simultaneamente aos movimentos
tridimensionais.
Considerando assim as características apresentadas para cada tipo de
fresadora, a solução mais adequada para o objetivo proposto é a fresadora vertical.
Portanto todo desenvolvimento, estudo e propostas foram baseados levando-se em
conta que este tipo de fresadora seria utilizado.
Para o desenvolvimento deste projeto, diversos assuntos não correlacionados
diretamente à engenharia elétrica tiveram que ser estudados, cada um possuindo
diversas soluções que atenderiam as necessidades do projeto, as quais foram
caracterizadas e ponderadas antes da adoção de uma solução definitiva. Assim, nos
itens que fazem seqüência as necessidades serão contextualizadas, dado mais
enfoque evidentemente às soluções adotadas, com uma breve justificativa de sua
utilização.
6
4.1
Mecânica
4.1.1 Estrutura
Utilização de madeira MDF (Medium Density Fiberboard) e parafusos devido
à facilidade de manipulação desse material com as ferramentas disponíveis ao
grupo. Outras opções, como estrutura em aço ou alumínio, apresentariam um
resultado mais confiável em relação à precisão de movimento e não deformação da
estrutura ao longo do tempo, mas iriam exigir um alto investimento, pois as peças
deveriam ser feitas em empresas especializadas.
4.1.2 Movimentação dos eixos
Há soluções específicas para CNCs, disponíveis comercialmente, que formam
o conjunto ideal para a movimentação dos eixos da máquina. Este conjunto é
composto essencialmente por fusos de esferas e guias lineares ou cilíndricas Figura 4 e Figura 5 (Kalatec, 2009).
Figura 4: Fuso de esferas
Figura 5: Guia linear
7
As guias são utilizadas para dar sustentação ao eixo e mobilidade e quanto
ao fuso, uma das suas extremidades é conectada diretamente ao eixo do motor e
outra a um rolamento. A conexão do fuso com o eixo da máquina se dá através da
“castanha” (Figura 6), uma espécie de porca especial para fusos, a qual está fixada
ao eixo. Este arranjo pode ser verificado na Figura 7, onde a barra central é o fuso e
as laterais são as guias cilíndricas.
Figura 6: Castanha
Figura 7: Guias cilíndricas e fuso montados em uma CNC
Devido ao custo elevado e necessidade de usinagem dessas peças, a
utilização de cantoneiras de alumínio, rolamentos de skate e barras roscadas
comerciais formaram o conjunto de movimentação adotado (Figura 8).
8
Figura 8: Solução adotada para movimentação dos eixos
4.2
Motores
4.2.1 Para os eixos
Para a escolha dos motores utilizados nos eixos levou-se em conta a massa
que
a
ser movimentada,
a
velocidade de
deslocamento e
controle
do
posicionamento.
Durante a pesquisa, verificou-se que dois tipos de motores são mais utilizados
para este propósito: o servo-motor e o motor de passo.
O servo-motor é constituído por um motor de corrente contínua ou alternada
com um encoder – dispositivo utilizado para medir a velocidade e o posicionamento acoplado ao eixo – veja Figura 9 (DirectIndustry, 2010). O servo pesquisado foi o de
corrente contínua, este motor possibilita uma ampla variação de velocidade sem
apresentar vibração além de atingir rotações elevadas, em torno de 3000 RPM. O
inconveniente na utilização deste tipo de motor está na dificuldade para obter
precisão no posicionamento.
9
Figura 9: Exemplos de servo-motores
Já o motor de passo é um tipo especial de motor que não basta apenas
alimentá-lo para que entre em funcionamento. É constituído por duas ou quatro
bobinas que devem ser alimentadas sequencialmente para movimentar seu eixo.
Para tanto, deve-se utilizar um circuito de controle, mais conhecido por driver, para
se obter o sentido e a velocidade desejada. Sua principal característica é a precisão
no posicionamento, pois a cada pulso em uma bobina há um deslocamento angular
fixo. Como pontos negativos podem-se destacar a velocidade máxima que não
ultrapassa 1500 RPM e o torque que decai proporcionalmente ao aumento da
velocidade. Há motores de passo de vários tamanhos e formatos, relacionados
principalmente com o torque do motor, da mesma forma para os servo-motores. A
Figura 10 (Kalatec, 2009) mostra alguns modelos que são mais facilmente
encontrados.
Figura 10: Exemplos de motores de passo
A forma mais simples de controle é utilizar uma fonte de alimentação de
corrente contínua com a tensão nominal do motor e transistores para chavear as
bobinas. Técnicas mais avançadas utilizam fontes de alimentação com tensões
10
maiores e circuitos capazes de controlar a corrente em cada bobina, desta forma o
motor atinge velocidades maiores e apresenta movimentos com menor vibração.
Com esses circuitos ainda há a possibilidade de fazer circular outros níveis de
corrente de forma sincronizada para que haja uma divisão do passo, resultando em
uma maior precisão no seu movimento. Esse modo de funcionamento trás outro
benefício: reduz a vibração por não haver uma desmagnetização completa de uma
bobina para magnetizar a outra.
Diante desta análise o grupo escolheu utilizar um motor de passo em cada um
dos três eixos que compõem a máquina. Como a equipe não dispunha de
equipamentos para mensurar o torque necessário em cada eixo, foi adquirido um
motor usado que, após testes, demonstrou suprir as necessidades do equipamento.
Figura 11: Motor de passo utilizado no projeto
Os três eixos foram equipados com motores iguais, com as seguintes
características:
TABELA 1 - CARACTERÍSTICA DOS MOTORES
MODELO
Tensão nominal
Corrente por fase
Resistência por fase
Indutância por fase
Torque
Resolução nominal
Tipo
23 KM C-05
4V
2A
2 ohms
4,4 mH
9,9 kgf/cm
1,8º por passo
Unipolar 6 fios
4.2.2 Para o desbaste
Como o objetivo era criar peças com grande precisão, este item também
representava um ponto crítico para o projeto. Considerando o fato de que quanto
menor a broca maior deve ser sua rotação para se obter os mesmos resultados
11
utilizando brocas maiores (Antares, 2004), o conjunto deveria apresentar uma
rotação superior a 15.000 RPM e a menor vibração possível, pois caso contrário, a
movimentação perpendicular ao eixo de rotação e as sucessivas trocas de direção
diminuiriam a precisão e poderiam quebrar as brocas utilizadas.
A melhor solução seria utilizar um motor de corrente contínua conectado a um
eixo auxiliar, usinado de forma a não ter folgas, e este a um sistema de polias e
correias para aumentar o giro da broca. Esta solução não foi implementada devido
ao custo e tempo de fabricação, levando-se em conta ainda que esta não seria a
única alternativa para o caso. Outra forma seria utilizar uma micro-retífica comercial
(Figura 12), acoplada ao eixo através de um suporte. Esta foi a alternativa adotada,
pois atendia os requisitos de precisão e velocidade necessários e demandou menor
tempo para integração ao equipamento.
Figura 12: Ferramenta utilizada como spindle
4.3
Fonte de alimentação
Como os dispositivos de maior potência instalados na máquina utilizam
corrente contínua, fez-se necessário a utilização de uma fonte de alimentação. Os
requisitos principais eram a estabilidade das tensões de saída e potência disponível,
já que seriam utilizados vários motores que poderiam funcionar simultaneamente.
A solução adotada foi a utilização de uma fonte chaveada de computador,
devido à maior eficiência, baixo custo e tamanho e peso menores em relação a uma
fonte linear. Além desses benefícios, utilizando uma fonte chaveada o grupo
economizou esforços e tempo para desenvolver o circuito de controle da fresadora.
A fonte utilizada dispõe de várias tensões de saída e potência suficiente para
alimentar toda a máquina. Entre as tensões disponíveis, foi utilizada a saída de +5V
para alimentar os circuitos de controle e a saída de +12V para alimentar os motores
dos eixos.
Já o motor para desbaste é alimentado direto da rede de 127V.
12
4.4
Eletrônica
O controle do equipamento será feito por um microcontrolador que deverá ser
capaz de ler os dados gravados no pendrive, manipular esses dados e movimentar
os eixos. Além disso, será utilizado um display, para a interface visual do
equipamento, que mostrará as informações que forem necessárias ao usuário e
botões para seleção das opções disponíveis.
4.5
Comando Numérico
Existem inúmeras linguagens de comando numérico para o controle que
equipamentos CNC. Esse projeto será capaz de interpretar códigos que seguem a
sintaxe do protocolo RS274D, também conhecido por G-Code, que foi desenvolvido
pela EIA na década de 1960 e sua última revisão foi aprovada em fevereiro de 1980.
Todas as próximas informações sobre o G-code, devido ao grande número de
instruções, serão focadas nas instruções pertinentes ao projeto em questão,
desconsiderando, por exemplo, aquelas para fresagem de peças 3D, que não é o
escopo do projeto.
A forma básica de uma instrução é uma letra seguida de dois números (G00,
G01, G90, F30, M30). A letra G identifica comandos preparatórios, que são
utilizados para mover os eixos ou definir a unidade dos dados de entrada. Já a letra
M identifica as instruções de entradas e saídas da máquina, como troca de
ferramenta e fim de programa. Outras letras são utilizadas para complementar certas
instruções, como a letra F que indica a velocidade de movimentação dos eixos e
acompanha algumas instruções G.
A estrutura de um arquivo G-Code normalmente é formada pela seguinte
seqüência:
1. Comentários não funcionais (data de geração, software que o gerou, autor,
entre outros);
2. Algumas instruções de configuração da máquina (indicação da unidade
métrica adotada, coordenadas relativas ou absolutas, ligar fuso, etc);
3. Conjunto de instruções com as coordenadas (em torno de 96% do arquivo,
desconsiderando os comentários);
13
4. Instruções para finalização da fresagem.
No projeto proposto, todos os comentários são descartados pelo firmware do
microcontrolador, pois são dados irrelevantes e não afetam o resultado de qualquer
processo de fresagem. Já as instruções iniciais de configuração são geralmente
duas, no caso dos arquivos para fresar PCIs: uma com a finalidade de indicar o tipo
de coordenada utilizada no código – relativa (G91) ou absoluta (G90) – e outra para
indicar o tipo de unidade de medida utilizada – métrica (G21) ou imperial (G20). O
comando que informa a ativação e sentido de rotação do fuso geralmente é omitido.
Os principais comandos do arquivo G-Code são representados por
coordenadas que indicam a posição para onde o fuso de ser deslocado e o tipo de
interpolação a ser realizado (circular ou linear). Para facilitar a validação e não
atrasar o cronograma foi implementado apenas a interpolação linear, ou seja, o
código G-Code é formado apenas por segmentos de reta. Desta forma, o comando
preparatório pode ser G00 ou G01. O G01 informa ao controlador que se trata de
uma interpolação linear que deve ser realizada com a velocidade normal de
deslocamento (valor pré-definido empiricamente no firmware do microcontrolador) e
o G00 para deslocamentos rápidos (normalmente utilizados para deslocar o fuso
quando o eixo Z não se encontra na posição de desbaste), com uma velocidade
superior em relação ao G01. Logo após o comando preparatório, pode-se conter um
comando que indica a velocidade do deslocamento em unidades/minuto ou unidades
por revolução, dependendo do modo ativo, representado pela letra “F” seguida de
um número. Uma vez executado um deslocamento com uma velocidade definida
(através do comando F), não é necessário defini-la novamente nos próximos
comandos de deslocamento, pois uma vez informada a velocidade ela será a
mesma para todos os comandos subseqüentes, até o momento em que for
redefinida. A velocidade é geralmente informada apenas nas primeiras instruções do
G-Code. Por último, há os comandos que informam a coordenada (X, Y ou Z),
utilizando números geralmente com 4 casas decimais ou mais dependendo do
software utilizado para gerar o G-Code.
Para informar à máquina que o processo chegou ao fim, há o comando M05
(desligar fuso) seguido do comando M30 ou M02 (fim do programa).
Os arquivos G-Code podem ser facilmente editados através de qualquer
editor de textos no PC. A Figura 13 mostra um exemplo do início de um arquivo G-
14
Code gerado pelo software Eagle (Cadsoft, 2010) e na Figura 14 está exposto o final
desse mesmo arquivo.
Figura 13: Exemplo do inicio de um arquivo G-Code
Figura 14: Exemplo do final de um arquivo G-Code
A relação de todos os comandos G-Code e códigos M (AST, 1999) encontrase nos itens “Anexo A” e “Anexo B”.
15
5
DESENVOLVIMENTO
Toda a execução do projeto foi realizada, mesmo que em ambiente
acadêmico, quase que artesanalmente, sendo, contudo, incorporados componentes
industrializados, serviços de marcenaria e materiais reaproveitados, entre outros.
A Figura 15 mostra a relação das partes que constituem a fresadora, que
serão descritas em detalhes nos próximos itens.
Mecânica
Motores
Sensores
+5V e +12V
Dispositivo de
Button
armazenamento
Controle
+5V
Fonte de
alimentação
Botões de
Button
controle
+3.3V e +5V
Periféricos
Interface
Button
gráfica
Figura 15: Diagrama em blocos da fresadora
5.1
Mecânica
A estrutura mecânica do projeto foi desenvolvida com MDF – Medium Density
Fiberboard – de 15 mm de espessura, barras roscadas, canaletas de alumínio e
rolamentos de skate para possibilitar a movimentação e fibra de vidro para o painel
frontal, além de arruelas, porcas, parafusos para fixação, cabos e espirais de
polietileno. Optou-se por materiais alternativos devido ao alto custo dos materiais
16
recomendados e específicos para fresadoras, como fusos, esferas, acopladores e
pecas de aço usinado.
5.2
Brocas
As brocas são fabricadas com diferentes materiais e produzidas com uma
variedade de formas, cada uma específica para determinada aplicação. A maioria
das brocas indicadas para desbaste é de corte lateral com apenas uma borda
cortante, como indicado na Figura 16 (Antares, 2004), de aço rápido ou de carbide.
Figura 16: Brocas de corte lateral com apenas uma borda cortante
Carbide é um material extremamente duro e resistente à abrasão, com uma
alta resistência e durabilidade. Brocas de carbide duram aproximadamente de 5 a 10
vezes mais que as de aço rápido, dependendo do material onde são utilizadas. Já as
brocas de aço rápido não têm a mesma dureza e ficam sem corte com menos tempo
de uso em relação às de carbide, mas, por outro lado, não são tão frágeis e por isso
são as mais indicadas para fresadoras.
Há basicamente duas categorias para esse tipo de broca: cônicas e paralelas
– Figura 17 (Antares, 2004). As cônicas possuem uma borda de corte angulada e
com a ponta levemente achatada, lembrando o formato da letra “V”. Já as paralelas
possuem uma borda de corte reta, paralela ao eixo do fuso, que produz cortes com
paredes retas e fundo achatado, lembrando o formato da letra “U”.
17
Figura 17: Brocas cônica e paralela
Devido aos fatos apresentados, o grupo realizou os primeiros testes da
fresadora com brocas de aço duro de 0,3mm (Figura 18). Infelizmente os resultados
não foram os esperados, pois as duas brocas adquiridas quebraram devido à sua
fragilidade e em grande parte à vibração da máquina durante os testes iniciais.
Figura 18: Brocas de aço rápido
Depois de muitas pesquisas e procura de brocas mais resistentes, surgiu a
opção de utilizar brocas de uso odontológico, que são geralmente de dois tipos: com
ponta diamantada e de carbide. No caso das diamantadas há mais de 400 modelos
diferentes. Testes realizados mostraram que este tipo de broca não é indicado para
desbastar cobre de placas de circuito impresso, pois resulta em um acabamento
com imperfeições e o desgaste da broca é muito rápido. As brocas carbide foram as
que apresentaram os melhores resultados, em especial a cônica dentada.
O grupo teve que testar vários tipos de brocas, devido principalmente à falta
de especificações por parte do fabricante, como diâmetro da ponta e rigidez.
Portanto, o diâmetro de corte das brocas foi aproximado com base em testes
realizados na máquina. As brocas utilizadas, vide figuras a seguir, são fabricadas
18
pela KG Sorensen e apresentam um preço menor em relação às de aço rápido.
Enquanto uma broca de 0,3mm de aço rápido, específica para fresagem, custa a
partir de R$30,00, as brocas carbide de uso odontológico testadas não ultrapassam
R$6,00 e são facilmente encontradas no comércio, diferentemente da primeira.
Figura 19: Cônica invertida
Figura 20: Cônica dentada
Figura 21: Cônica Diamantada
Figura 22: Cônica Lisa
Figura 23: Cilíndrica dentada
5.3
Hardware
A utilização de um microcontrolador foi inevitável para o projeto devido à
independência da fresadora em relação ao computador. Sua utilização se justifica
essencialmente pelo controle da operação dos motores de passo, necessários para
a movimentação dos eixos da máquina, de acordo com as instruções contidas nos
arquivos armazenados no pendrive. Em decorrência da utilização dos pendrives, os
quais se comunicam através da interface USB, surgiu outra premissa: o
microcontrolador deveria ser capaz de ler os arquivos gcode do dispositivo USB,
comunicando-se diretamente com o pendrive ou indiretamente através de um
19
dispositivo intermediário. Pelas razões descritas no item 5.3.4 (Interface com o
pendrive), o grupo utilizou o componente VNC1L (Vinculum, 2009) para essa função.
A máquina realiza os movimentos dos eixos com base em coordenadas
absolutas, portanto sempre são referenciados a uma posição padrão (origem dos
eixos). Para que fosse possível posicionar os eixos em suas origens, independente
da posição em que se encontram, surgiu a necessidade de utilizar sensores nos
eixos. Ao total foram utilizados seis sensores, posicionados fisicamente um em cada
extremo dos eixos, os quais mudam de estado lógico quando o eixo atinge seu limite
de deslocamento (pode ser a posição de origem ou o outro extremo). Além de serem
utilizados para o posicionamento dos eixos, os sensores também são utilizados para
que evitar que a máquina efetue um deslocamento maior que seus limites.
Foi necessário também desenvolver uma interface com o usuário, para
informá-lo de possíveis erros ou avisos e para possibilitar a escolha das opções de
funcionamento da fresadora (através do pendrive, do computador ou controle
manual). Conseqüentemente, houve a necessidade de utilizar botões para a seleção
dos modos de controle.
Os motores utilizados no projeto trabalham com uma corrente nominal de 2A
por bobina, como já descrito anteriormente. Portanto, é necessário um circuito de
potência adicional (driver) entre o microcontrolador e cada um dos motores para que
seja possível controlá-los através dos pinos do microcontrolador.
A Figura 24 demonstra, na forma de um diagrama em blocos, a visão geral do
Figura 24: Diagrama em blocos do hardware
dir
enable
led IR
hardware desenvolvido.
20
5.3.1 Microcontrolador
Para a escolha do microcontrolador o grupo considerou como principais
requisitos a facilidade para programação e uso de seus recursos, a capacidade de
processamento e o número de pinos disponíveis. Em função da convivência do
grupo com os microcontroladores da Microchip, inclusive em ambiente acadêmico, e
da vasta variedade de modelos disponíveis, a busca foi delimitada entre os
microcontroladores desse fabricante.
A Microchip possui microcontroladores com núcleo de 8 bits, 16 bits e 32 bits.
Os modelos de 16 e 32 bits possuem vários recursos que não são essenciais para o
projeto em questão, como suporte aos protocolos TCP/IP, CAN, ZigBee, altíssima
capacidade de processamento por unidade de tempo (MIPS – milhões de instruções
por segundo), conversores AD (analógico para digital) de 10 ou 12 bits. Devido às
suas características, esses modelos são mais indicados para processamento digital
de sinais. Dentre os modelos de 8bits, o grupo optou pela família PIC18, com a
maior funcionalidade e maior performance do grupo, veja Figura 25 (Microchip,
2009).
Figura 25: Famílias de microcontroladores da Microchip
O modelo utilizado para o projeto foi o PIC18F2550 (Microchip, 2009),
escolhido principalmente devido às suas características, descritas logo abaixo, e ao
seu custo-benefício. Muito embora tenha suporte à comunicação USB, optou-se por
utilizar um componente dedicado para fazer a interface do microcontrolador com o
pendrive (VNC1L da Vinculum), pelos motivos descritos no item “Interface com o
pendrive”.
21
•
Principais características do PIC18F2550:
•
Memória de programa (Flash) – 32KB
•
Memória de dados (SRAM) – 2048 bytes
•
Pinos de entrada/saída – 24
•
Protocolos de comunicação – SPI, I²C e USB
•
Timers: 1 (8 bits) e 3 (16 bits)
•
Tensão de operação: 2V – 5,5V
•
Velocidade da CPU: 12 MIPS
Foi utilizado um cristal de 4MHz para gerar o sinal de clock para o
microcontrolador e o circuito interno de PLL foi habilitado, resultando em um clock de
48MHz. Este circuito multiplicador de clock está disponível devido ao suporte à
comunicação USB, todavia uma parcela deste clock (ajustável via firmware) também
pode ser utilizada para o ciclo de máquina. Deste modo, o microcontrolador foi
configurado de tal forma a trabalhar com o menor ciclo de máquina possível
(consultar o item Microcontrolador, na seção de firmware, para mais detalhes).
A princípio o grupo achou que a quantidade de pinos de entrada/saída
disponíveis no PIC18F2550 seria suficiente para controlar os dispositivos externos,
porém à medida que o projeto foi sendo desenvolvido percebeu-se que não seria.
Para evitar a compra de outro microcontrolador com as mesmas características,
porém com mais pinos (PIC18F4550), percebeu-se que alguns pinos do VNC1L
(Vinculum, 2009) poderiam ser empregados para este propósito.
5.3.2 Driver para os motores
As opções encontradas para a implementação do circuito de potência para os
motores, conhecido como driver, foram:
•
Utilizar apenas um arranjo de transistores para cada motor e desenvolver a
lógica para controle de cada um no firmware do microcontrolador;
•
Utilizar CIs dedicados para o controle de motores de passo, com circuitos
sugeridos pelos fabricantes;
•
Utilizar circuitos inteligentes, com microcontroladores, e confiáveis divulgados
pelos desenvolvedores em literatura específica (revistas, livros e Internet).
22
Em uma análise prévia das possíveis alternativas, a primeira delas foi
descartada, pois iria exigir recursos extras do microcontrolador exclusivos para essa
função, esforços dos alunos para desenvolver um circuito funcional e para integrar a
lógica no firmware sem conflitos, além de exigir um tempo considerável para o
desenvolvimento de um circuito que suprisse as necessidades, como o controle de
corrente nas bobinas.
Analisando o período de tempo disponível para concluir o projeto e sabendo
que este circuito não era o objetivo principal do trabalho, esta opção oferecia um
grau de risco muito grande.
A segunda opção pareceu muito atraente à primeira vista, em especial o
circuito sugerido pela STMicroelectronics, utilizando o CI L297 em conjunto com o
L298 (STMicroelectronics, 2000) e poucos componentes externos (Figura 26).
Utilizando este circuito o motor pode trabalhar no modo full-step ou half-step com
controle de corrente, sendo necessário apenas aplicar os sinais de direção da
rotação e de clock, utilizado para gerar o passo. Os demais pinos são sinais
auxiliares, como sincronização, reset, etc.
Figura 26: Circuito de driver sugerido pela ST
Dispostos a testar o circuito, o grupo pesquisou no comércio local a
disponibilidade e o preço dos componentes. Devido ao valor elevado desses
componentes, novas pesquisas foram iniciadas a fim de encontrar outras soluções.
A troca de informações e constante atualização é o que possibilita a criação
de equipamentos cada vez mais desenvolvidos. Pensando assim, os estudantes
participam de fóruns especializados em eletrônica e inscreveram-se em outros
23
voltados às máquinas CNC. Foi assim que o grupo achou um projeto, disponibilizado
por seus desenvolvedores, de um driver microcontrolado para motores de passo
unipolares (Newton, 2009).
Foi então feito um estudo para verificar a possibilidade de utilizar este driver
no projeto da fresadora. Constatou-se que o circuito proposto seria capaz de
controlar os motores, que já haviam sido definidos, que necessitava de poucos
sinais de controle e ainda possuía recursos para trabalhar com divisão de passos.
Outros pontos positivos foram o fácil acesso aos componentes utilizados e o custo
do circuito, que na época da montagem representou aproximadamente 40% do
custo da solução anterior, fazendo este o circuito escolhido para equipar o projeto.
5.3.2.1 Linistepper
O circuito do driver escolhido possui um microcontrolador, responsável pela
interpretação dos dados de entrada e controle do movimento do motor, quatro
transistores para chavear as bobinas e dois resistores de potência, um para cada
par de bobinas, para controlar a corrente nos enrolamentos. Estes resistores de
potência devem ser escolhidos de forma que se tenha uma queda de tensão de 1V
na corrente desejada. Outros componentes auxiliares para o controle de corrente e
acionamento dos transistores de saída também são utilizados. Trata-se de um
circuito exclusivo para motores de passo unipolares, possuindo as seguintes
características (Newton, 2009):
•
Controle de motores unipolares;
•
Tensão máxima de alimentação: 100V;
•
Corrente máxima por fase: 1,5;
•
Low-power – utilizado para manter o eixo magnetizado sem movimentação;
•
Modos de operação: full-step, half-step, microstep 6th, microstep 18th.
O funcionamento do driver não será descrito detalhadamente aqui sendo que
não foi desenvolvido pelos próprios alunos, pois trata-se de um projeto open-source,
denominado Linistepper (Newton, 2009). Em relação ao circuito original, houve
apenas a necessidade de alterar o valor dos resistores, utilizados para o controle da
corrente, para que o driver fornecesse 1,5A por fase.
24
O controle do driver é feito através de cinco pinos, que trabalham com níveis
TTL: dois para seleção do modo de operação, um para o clock, um para o sentido de
rotação do eixo e um para escolha de full/low power. Os modos de operação são
quatro, configurados de acordo com a Tabela 2. Para exemplificar esses modos
serão utilizadas as características do motor escolhido - resolução nominal de 1,8º
por passo (200 passos por revolução).
TABELA 2 - MODOS DE OPERAÇÃO DO DRIVER
Modo
J1
J2
Full step
L
L
Half step
H
L
Microstep 6th
L
H
Microstep 18th
H
H
Passos por revolução
200
400
1200
3600
L= nível lógico baixo, H= nível lógico alto
No modo Full-Step, a cada pulso na entrada do driver uma bobina é
energizada na seqüência mostrada na Figura 27 (Brites, 2008), movimentando o
motor com sua resolução nominal. A Figura 28 (Newton, 2009) mostra como fica a
corrente em cada bobina do motor utilizando este modo de acionamento.
Figura 27: Modo full step
Figura 28: Corrente nas bobinas usando Full-step
No modo Half-Step, o microcontrolador do driver cria um artifício para dividir o
passo nominal em dois, alternando entre uma e duas bobinas energizadas. Quando
25
duas bobinas estão energizadas o rotor mantem-se em uma posição intermediária
entre as duas bobinas – veja Figura 29 (Brites, 2008).
Figura 29: Modo half step
Já nos modos de micropasso o microcontrolador divide a corrente nominal em
níveis. No caso do Microstep 6th são três níveis, além de 0A, os quais são gerados
através de uma lógica de conversão digital-analógica com uma malha de resistores
e distribuídos entre duas bobinas. Assim a resolução do motor fica seis vezes maior,
ou seja, o passo nominal é dividido em seis partes. Para o modo Microstep 18th o
mesmo princípio é utilizado, porém a corrente nominal é dividida em nove níveis, os
quais são gerados por PWM desta vez para uma melhor precisão.
No início dos testes de integração (hardware, firmware e mecânica), a
movimentação dos eixos era realizada com os drivers configurados para o modo fullstep e com velocidade constante, porém foi verificado que desta forma a vibração
gerada pelo equipamento era muito alta e o deslocamento dos eixos apresentava
diferenças em relação ao esperado.
A primeira providência foi configurar os drivers para trabalhar com a divisão
do passo por dezoito (modo micro-passo com 9 níveis), o máximo admitido para este
circuito. Assim seriam necessários 3600 pulsos para completar uma volta. As figuras
a seguir (Newton, 2009) mostram as formas de onda da corrente nas bobinas do
motor, medida indiretamente, quando o driver está configurado para micro-step (3
níveis) e micro-step (9 níveis), respectivamente.
26
Figura 30: Corrente nas bobinas usando micro-step com 3 níveis
Figura 31: Corrente nas bobinas usando micro-step com 9 níveis
Com esta modificação a vibração no movimento dos eixos reduziu
consideravelmente, mas o deslocamento ainda apresentava erros. Isto foi resolvido
com a implementação, por software, de rampas de aceleração e desaceleração para
compensar a inércia do movimento dos eixos.
Estas duas medidas possibilitaram também o aumento da velocidade máxima
de deslocamento, que no início era de 224mm/min (clock=747Hz) para 357mm/min
(clock=21.428Hz), um acréscimo de 59,38%.
5.3.3 Interface Homem-Máquina
A interface entre o usuário e o equipamento é feita através de um display LCD
gráfico e um grupo de sete botões do tipo push-buttom. Os botões são utilizados
para navegar nos menus exibidos no display e também controlar os eixos da
máquina quando o usuário escolher a opção manual.
Em relação ao display, os estudantes optaram por utilizar um display de
celular (do modelo Nokia 3310), pelo fato de conter um número de informações
satisfatório a seu respeito na Internet e possuir um tamanho de tela suficientes o
bastante para exibir todas as informações que foram julgadas necessárias na tela –
27
área ativa de 84x48 pixels. Esse display possui um controlador da Phillips embutido,
o PCD8544 (PHILLIPS, 1999), cuja interface se dá através do protocolo de
comunicação SPI. Há apenas 8 pinos para conexão externa, sendo que 3 são
reservados para a comunicação SPI ( Clock, Entrada de dados e Enable). A
pinagem e a dimensão do display estão indicadas na Figura 32 (Myplace, 2010).
Figura 32: Pinagem do display gráfico (medidas em mm)
Um pulso no pino de reset deve ser aplicado na inicialização do display no
máximo 100ms após a tensão Vdd ficar em alto, com o risco de danificá-lo caso não
respeitado este tempo.
Em função de o display trabalhar com a tensão de +3,3V e o circuito do
microcontrolador com +5V foi necessário projetar um circuito auxiliar para permitir a
comunicação entre as duas partes sem danificar o display. Para tanto, utilizou-se
dois circuitos integrados 74LVT125, com a função de buffer com saídas tristate, os
quais possuem entradas para +5V e saídas de +3,3V.
Foi feito um painel frontal em fibra de vidro (Figura 33) para acomodar os
botões, display, conector USB, chave liga/desliga, conector de programação e
internamente as placas com os circuitos.
28
Figura 33: Display e botões na máquina
5.3.4 Interface com o pendrive
O principal componente responsável por adicionar conectividade USB ao
projeto foi o circuito integrado VNC1L da Vinculum, que oferece uma interface
transparente entre sistemas embarcados e dispositivos USB (host ou slave). Com
um microcontrolador de 8/32-bits e uma memória flash embarcados, o VNC1L além
de incluir o protocolo de controle USB também manipula a estrutura de arquivos
FAT, comunicando-se via UART, SPI ou interface paralela do tipo FIFO através de
comandos simples de serem implementados. Possui dois controladores USB 2.0
independentes, configuráveis para low speed (1.5Mbps) ou high speed (12Mbps),
que podem ser utilizados para a comunicação com vários dispositivos USB de
acordo com o firmware programado na flash do VNC1L, que é fornecido pelo
fabricante. Atualmente a Vinculum disponibiliza os seguintes firmwares:
•
VDAP (Vinculum Disk And Peripheral interface) - Para interface entre um
Microcontrolador e um Flash Disk ou periférico USB;
•
VDPS (Vinculum Disk And Peripheral interface) - Para interface entre um
microcontrolador e uma porta host USB no PC;
•
VDIF (Vinculum Disk Interface FTDI) - Para interface entre um Flash Disk e
periféricos FTDI;
•
VCDC (Communication class device) - Para trabalhar com dispositivos USB
de classe de comunicação (Modem etc.);
29
•
VMSC (Music player) - Firmware com recursos para manipular arquivos de
música no formato MP3;
•
VF2F (Disk to disk copier) - Firmware com funções para copiar dados de um
Flash Disk para outro.
O firmware adotado para o projeto foi o VDAP versão 3.65 (Vinculum, 2010)
por ser o único que possibilita a interface de um pendrive com um microcontrolador.
No momento em que esta documentação foi escrita o firmware estava na versão
3.68.
O microcontrolador utilizado para o projeto, PIC18F2550 da Microchip,
também possui suporte ao protocolo USB (apenas no modo slave), porém com
muito menos recursos e com uma interface muito mais complexa. Deste modo, o
grupo optou por utilizar o VNC1L, pois não haveria a necessidade de estudar a
fundo o protocolo USB nem de implementar a complexa estrutura de arquivos FAT,
o que iria despender de muito tempo, fugindo do escopo do projeto e
comprometendo sua conclusão.
A interface escolhida para a comunicação com o microcontrolador foi a SPI
pelos seguintes motivos:
•
Trata-se de um protocolo para comunicação serial que pode compartilhar
seus pinos de dados com vários dispositivos, minimizando o número de pinos
necessários para efetuar a interface;
•
Mesmo protocolo utilizado pelo display gráfico, sendo necessário apenas 5
pinos do microcontrolador para realizar a comunicação com o VNC1L e com o
display – 1 pino para entrada de dados, 1 pino para saída de dados, 1 pino
para o sinal de sincronismo (clock) e mais 2 pinos de chip select (um para
cada dispositivo);
•
Protocolo simples de ser implementado no microcontrolador.
5.3.4.1 Principais pinos do VNC1L e suas funções
Disponível no encapsulamento LQFP de 48 pinos (veja pinagem na Figura
34), o VNC1L necessita de um cristal de 12MHz (ou um clock externo) para gerar o
clock de referência, o qual passa por um PLL interno para gerar 24MHz e 48MHz.
30
Quando utilizando um cristal, como é o caso do projeto da fresadora, o pino
ACBUS7 (pino 48) deve estar conectado ao terra do circuito através de um resistor
de 47K ohms.
Figura 34: Pinagem do VNC1L
Os pinos ACBUS5 e ACBUS6 são utilizados para selecionar o tipo de
interface de comunicação, de acordo com as conexões descritas na Tabela 3.
Todavia estes pinos NÃO devem ser conectados diretamente ao VCC ou ao GND.
Deve-se obrigatoriamente utilizar resistores de 47K ohms aproximadamente para
VCC ou GND. Estes pinos são lidos apenas após o reset do VNC1L, podendo ser
utilizados como pinos de saída logo após, porém neste projeto eles foram
reservados apenas para a função de selecionar o modo de comunicação.
TABELA 3 - CONEXÕES PARA SELECIONAR O TIPO DE INTERFACE
Pino 47 (ACBUS6)
Pino 46 (ACBUS5)
Pull-up
Pull-up
Pull-up
Pull-down
Pull-down
Pull-up
Pull-down
Pull-down
Modo
UART
SPI
FIFO
UART
O VNC1L disponibiliza ainda 17 de seus pinos para uso geral (entrada/saída)
se configurado para a interface SPI. Deste total, foram utilizados 13 GPIOs (General
Purpose Input/Output) para suprir a falta de pinos do microcontrolador, com a
seguinte distribuição:
31
TABELA 4 - PINOS DE USO GERAL DO VNC1L UTILIZADOS
Pino
Número
Finalidade
Enable do driver do eixo X
BDBUS0
11
BDBUS1
12
Direção de rotação do motor do eixo X
Enable do driver do eixo Y
BDBUS2
13
BDBUS3
14
Direção de rotação do motor do eixo Y
Enable do driver do eixo Z
BDBUS4
15
BDBUS7
19
Direção de rotação do motor do eixo Z
ACBUS0
41
Botão DOWN
ACBUS1
42
Botão UP
ACBUS2
43
Botão RIGHT
ACBUS3
44
Botão LEFT
ACBUS4
45
Botão OK
Botão Z_OK (para futura
ADBUS5
36
implementação)
ADBUS6
37
Botão Z_ DOWN
ADBUS7
38
Botão Z_UP
Tipo
Saída
Saída
Saída
Saída
Saída
Saída
Entrada
Entrada
Entrada
Entrada
Entrada
Entrada
Entrada
Entrada
5.3.4.2 Gravação do firmware no VNC1L
Como mencionado anteriormente, antes de utilizar o VNC1L é necessário
programar o firmware fornecido pelo fabricante. Há dois modos para programar o
VNC1L: através de um computador utilizando a comunicação serial ou através de
um pendrive contendo um arquivo com a extensão “.ftd” (também fornecido pela
Vinculum), porém esta opção não é indicada pelo fabricante. Para o projeto da
fresadora, a gravação do firmware do VNC1L foi realizada através de uma porta
USB do computador, utilizando um circuito simples com o circuito integrado FT232
(FTDI, 2005) para emular uma porta serial – pela USB – no PC. O diagrama da
Figura 35 mostra como foi realizada a conexão do PC com o VNC1L, utilizando os
procedimentos para programá-lo descritos logo abaixo.
32
Figura 35: Conexões do VNC1L com o FT232
Para preparar o VNC1L para entrar no estado de programação alguns
procedimentos devem ser executados:
1. Configurar o modo de comunicação do VNC1L para UART, inserindo
resistores de pull-down nos pinos ACBUS5 e ACBUS6;
2. Conectar os pinos ADBUS0 até o ADBUS3 (RXD, TXD, CTS e RTS) nos
respectivos pinos do FT232, para estabelecer o caminho de comunicação,
incluindo resistores de pull-up nos pinos RXD e CTS do VNC1L;
3. Habilitar a programação aterrando o pino PROG#;
4. Ligar o circuito, conectar o cabo USB do PC até o circuito do FT232;
5. Fazer o download do firmware mais atual Erro! Fonte de referência não
encontrada. e utilizar o software “Vprog.exe” (Vinculum, 2006) para transferilo para o VNC1L.
5.4
FIRMWARE
5.4.1 Microcontrolador
Os estudantes contavam com duas possibilidades de linguagem de
programação que seria utilizada para desenvolver o firmware do microcontrolador: C
e assembly. Muito embora o C forneça várias facilidades ao programador, a
linguagem escolhida para o projeto foi o assembly, devido aos diversos motivos
descritos logo abaixo:
33
•
O conhecimento da linguagem C não era dominado por ambos os integrantes
do grupo;
•
Evita assim prováveis erros (bugs) em funções do compilador C;
•
O controle das temporizações é muito mais preciso em relação ao C, pois o
programador tem acesso a todas as instruções utilizadas no firmware;
•
Precisão na temporização era uma das exigências do projeto, pois o período
do clock utilizado no passo dos motores deve ser curto (na faixa de 50us para
resultar em uma velocidade aceitável);
•
Aumenta a confiabilidade do firmware, uma vez que todas as rotinas são
implementadas pelo programador;
•
Apenas o código necessário é programado no microcontrolador, ao contrário
do C (principalmente quando bibliotecas são utilizadas), economizando
memória de programação;
•
Compilador do assembly não é pago e não possui restrições em relação ao
tamanho do código;
•
Código não fica atrelado ao compilador, pois no caso do C há diversos
compiladores disponíveis, cada um com funções diferentes, dificultando assim
a migração do código para outro compilador C.
O ambiente de programação utilizado foi o MPLAB IDE 8.36 (Microchip,
2010),
fornecido
abertamente
pelo
mesmo
fabricante
do
microcontrolador
(Microchip), que inclusive disponibiliza também o circuito completo, livre para
modificações, de um programador USB com vários recursos, denominado PicKit2
(Microchip, 2008), uma ferramenta que foi extremamente útil principalmente durante
a fase de verificação de erros do firmware.
Os fluxogramas que descrevem as principais rotinas implementadas no
microcontrolador estão na seção Apêndices.
34
5.4.2 VNC1L
5.4.2.1 Interface SPI
Quando configurado para o modo SPI, o VNC1L pode operar em velocidades
de até 12MHz como escravo, ou seja, deve existir um dispositivo master para
fornecer o sinal de clock e setar o pino chip select (CS) durante as transações.
A comunicação difere da maioria das outras implementações, pois usa 13
seqüências de clock para transferir um único byte de dado. O primeiro bit é o start bit
(para demarcar o início da transmissão) e os dois bits subseqüentes indicam a
direção (leitura ou escrita) e o “endereço”, respectivamente. A combinação destes
dois bits (bits de setup) é decodificada na Tabela 5. Para a transmissão do byte, o bit
mais significativo deve ser transmitido por primeiro.
TABELA 5 - BITS DE DIREÇÃO E ENDEREÇO DA INTERFACE SPI
Direção
Endereço
operação
significado
Lê byte do buffer de
1
0
Leitura
transmissão
Leitura do
1
1
Lê o status da interface SPI
Status
Adiciona um byte no buffer
0
0
Escrita
de recepção
0
1
Não definido
Não definido
Depois de enviar o último bit do dado, o VNC1L retorna um bit de status
indicando se a operação ocorreu com sucesso (Tabela 6). Logo na seqüência deve
ser enviado mais um bit para finalizar a transmissão, o stop bit.
O início da transferência acontece quando os pinos CS e SDI estão em nível
lógico alto durante a borda de subida do clock, sendo que aquele deve permanecer
em “1” durante toda o processo. Para transferência de dados o pino CS deve ser
mantido em 0V por pelo menos um ciclo de clock após a transação se completar,
diferentemente das operações para leitura do Status em que não há a necessidade
de mudança no estado do CS.
35
Tabela 6 - Significados do bit de status do VNC1L
Bit de
status
0
1
significado durante leitura
significado durante escrita
Dado transferido é válido. Byte
é removido do buffer de
transmissão.
Dado já foi lido. Deve-se repetir
o ciclo de leitura até que um
novo dado chegue.
Dado transferido foi aceito e
colocado no buffer de
recepção do VNC1L.
Dado não foi aceito. Deve-se
repetir o ciclo de escrita.
Figura 36: Exemplo de uma sequência de leitura de um byte do VNC1L
Figura 37: Exemplo de uma seqüência de escrita de um byte no VNC1L
O VNC1L disponibiliza também um byte de status que determina o estado dos
buffers de transmissão/recepção. Os bits de start e de setup são enviados ao
VNC1L pelo master e, nas subidas de clock subseqüentes, este envia o byte de
status seguido pelo bit de status (sempre zero para esta operação, indicando novo
dado), como representado na Figura 38.
36
Figura 38: Seqüência de leitura do byte de Status do VNC1L
O significado dos bits do byte de Status enviado pelo VNC1L é descrito na
Tabela 7. Para cada ciclo de escrita e leitura efetuado pelo microcontrolador o byte
de Status é solicitado, com a finalidade de manter o controle das informações
contidas nos buffers do VNC1L e evitar o processamento de informações repetidas
ou erradas.
TABELA 7 - SIGNIFICADO DOS BITS DO BYTE DE STATUS DO VNC1L
bit
nome
descrição
0
RXF#
Buffer de recepção cheio
1
TXE#
Buffer de transmissão cheio
2
3
4
RXF IRQEn
Ativa interrupção de buffer RX cheio
5
TXE IRQEn
Ativa interrupção de buffer TX cheio
6
7
-
5.4.2.2 Comandos utilizados
A comunicação entre o microcontrolador e o VNC1L, independente do
protocolo utilizado, é realizada através de um conjunto de comandos próprios do
VNC1L. Todavia, há dois modos de comandos: estendidos e curtos. Nos comandos
estendidos todos os caracteres do nome do comando devem ser enviados, sendo
assim também nas mensagens retornadas pelo VNC1L. Por outro lado, nos
comandos curtos são enviadas apenas “siglas” de duas ou três letras, geralmente
representadas por números hexadecimais, acompanhada, em alguns casos, de um
complemento. Exemplo: o comando para mostrar informações sobre o disco no
modo estendido é “IDDE” e no modo curto é “0x94”. Independente do modo, todos
os comandos terminam com 0x0D (caractere “enter”).
37
Logo após o reset o VNC1L inicializa no modo estendido, porém o modo
escolhido pelo grupo foi o curto, pois economiza espaço da memória de programa
do microcontrolador e permite uma comunicação mais rápida entre os dois
componentes. O protocolo de comunicação escolhido, como já citado anteriormente,
foi o SPI. A seguir, na Tabela 8, há uma lista com os comandos curtos (exceto
aquele para alterar o modo) utilizados no projeto e na Tabela 9 as mensagens
retornadas pelo VNC1L. Em ambas as tabelas o caractere 0x0D, ao final de cada
comando, foi suprimido para melhor visualização.
Para cada comando enviado ao VNC1L, dois bytes são retornados no caso de
sucesso na operação ou três bytes no caso de erro, já considerando o 0x0D. No
firmware desenvolvido para o microcontrolador, após cada interação com o VNC1L
esta informação é lida e comparada apenas com “>” (comando executado com
sucesso). No caso de alguma falha acontecer o firmware tem conhecimento disso,
mas não o suficiente para identificá-la a partir do comando recebido pelo VNC1L
(apenas reconhece que é diferente do comando de sucesso). Posteriormente,
quando o grupo incorporar mais recursos ao projeto, essas mensagens serão
identificadas e exibidas ao usuário.
TABELA 8 - COMANDOS CURTOS UTILIZADOS
Função
Altera para o modo de comando curto
Lê um arquivo inteiro
Fecha o arquivo atualmente aberto
Lê, do arquivo aberto, o número de bytes especificado
no 1º parâmetro
Desloca leitura do arquivo aberto para a posição de
bytes indicada no 1º parâmetro
Lê byte de porta (GPIO) do VNC1L (“byte” é o número da
porta)
Escreve byte em uma porta (1º parâmetro é o nº da
porta, o 2º é a direção e o 3º é o valor)
Comando
SCS
0x04 0x20 file
0x0A 0x20 file
0x0B 0x20 dword
0x28 0x20 dword
0x29 0x20 byte
0x2A 0x20 byte
byte byte
TABELA 9 - MENSAGENS DE RESPOSTA DO VNC1L
Comando
descrição
>
Comando executado com sucesso
ND
Sem disco
Nome do arquivo ou do diretório não
CF
encontrado
BC
Comando não reconhecido
38
Para os comandos de ler ou escrever nos pinos do VNC1L deve-se utilizar a
seguinte codificação:
TABELA 10 - BYTES IDENTIFICADORES DA PORTA A SER LIDA OU ESCRITA
Porta
byte
AD
0x00
AC
0x01
BD
0x02
BC
0x03 a 0xFF
5.4.3 Display Gráfico
Semelhante aos displays de LCD, logo após a energizacão do display, devese obrigatoriamente aplicar o sinal de reset o quanto antes (no máximo 100ms
aproximadamente) e logo em seguida configurá-lo, para que assim o controlador
interno possa interpretar qualquer do seu set de instruções recebido do
microcontrolador e os execute. Essa seqüência de inicialização é mostrada no
gráfico da Figura 39 com todos os detalhes necessários.
Figura 39: Seqüência de inicialização do GLCD
39
Os dois últimos bytes enviados para o display (0x08 e 0x0C) são necessários
para
a
correta
inicialização.
Após
executar
esses
procedimentos
no
microcontrolador, o display estará apto a receber dados e exibí-los na tela.
6
VALIDAÇÃO
Para a validação do equipamento projetado foram gerados arquivos no
formato suportado a partir de dois softwares. Foi utilizado o software de
desenvolvimento de layout de PCI, Eagle v5.8.0 (Cadsoft, 2010), para desenhar uma
placa e então gerar o código para fresagem. O resultado pode ser verificado na
Figura 40.
Figura 40: Layout e Placa fresada
A partir do software de conversão de arquivos “.dxf” para G-code, CamBam
(HEXRAY, 2007), foi transformada uma imagem, encontrada na internet,
transformada em Gcode e fresada. As figuras abaixo mostram o resultado obtido.
40
Figura 41: Projeto CAD da moto
Figura 42: Resultado da fresagem do arquivo dxf
Após os testes funcionais realizados verificou-se o correto funcionamento de
todo o equipamento. Não foram registrados desvios de trajetória nem perda de
dados durante a comunicação com o VNC1L ou o display gráfico. Devido à
indisponibilidade de equipamentos capazes de determinar a precisão da máquina,
este levantamento não foi realizado. Entretanto, após inúmeros testes não foi
verificado visualmente nenhum desvio ou imperfeição nas peças usinadas.
7
RECURSOS FINANCEIROS
Apesar dos vários percalços advindos durante a fase de teste do firmware,
provocados por queima de componentes (display GLCD) e quebra de brocas
principalmente, os responsáveis pelo projeto entendem que o projeto final revelou-se
econômico, já que os seus custos foram rateados entre os acadêmicos envolvidos.
Nas tabelas que fazem seqüência são apresentadas as listas de materiais com os
41
respectivos preços, separadas por parte mecânica e por módulos de hardware, para
facilitar a leitura.
7.1
Hardware
Em relação aos componentes, os estudantes tiveram a necessidade de
importar alguns devido a indisponibilidade ou até mesmo ao elevado preço no
mercado nacional, que foi o caso do VNC1L (Vinculum, 2009), PIC18F2550
(Microchip, 2009), alguns componentes do Pickit2 (Microchip, 2008), entre outros.
Nas tabelas apresentadas o frete não foi computado, porém já está incluso no custo
total do projeto citado anteriormente - um acréscimo de aproximadamente R$60,00
no custo final do projeto. As placas de circuito impresso para os módulos, projetadas
pelo grupo, foram fabricadas em uma empresa especializada sem custo algum,
devido à parceria firmada entre a UFPR e a empresa.
TABELA 11 - LISTA DE MATERIAIS DO MÓDULO PRINCIPAL - CONTROLADORA
Componente
Descrição / Valor
Qtde.
subTotal
Circuito integrado
PIC18F2550
1
R$ 20,64
Diodo
1N4148
2
R$ 0,10
Cristal
12MHz
1
R$ 0,90
Capacitor
22pF
2
R$ 0,20
Capacitor
100nF
1
R$ 0,10
Resistor
10K ohms
2
R$ 0,30
Resistor
4,7K ohms
3
R$ 0,30
Conector
Barra de 40 pinos F
3
R$ 1,92
Conector
Barra de 40 pinos
1
R$ 0,64
Conector
Barra de pinos dupla F
1
R$ 0,80
Conector
Barra de pinos dupla M
1
R$ 0,80
Conector
Tipo KK 4 pinos (M+F)
3
R$ 1,42
Conector
Tipo KK 5 pinos (M+F)
3
R$ 1,59
Conector
Tipo KK 7 pinos (M+F)
1
R$ 0,61
Conector
Tipo KK 9 pinos (M+F)
1
R$ 0,74
Diversos
Terminais para KK
30
R$ 2,10
TOTAL
R$ 33,16
42
TABELA 12 - LISTA DE MATERIAIS DO MÓDULO DO VNC1L
Componente
Descrição / Valor
Qtde.
Circuito integrado
VNC1L
1
Circuito integrado
MC33269
1
Conector
USB tipo A
1
Conector
Barra de 40 pinos
3
Cristal
12MHz
1
Filtro
Indutor 10uH
1
Conector
Jumper
2
Led
SMD Verde
1
Led
SMD Vermelho
1
Capacitor smd (0805)
47pF
4
Capacitor smd (0805)
68pF
2
Capacitor smd (0805)
1nF
1
Capacitor smd (0805)
10nF
1
Capacitor smd (0805)
100nF
4
Capacitor smd (1206)
10uF / 6,3V
1
Capacitor smd (1206)
47uF / 10V
1
Resistor smd (0805)
0R ohms
1
Resistor smd (0805)
27 ohms
4
Resistor smd (0805)
180 ohms
1
Resistor smd (0805)
10K ohms
3
Resistor smd (0805)
47K ohms
4
Resistor smd (0805)
100K ohms
1
TOTAL
Total
R$ 43,60
R$ 2,72
R$ 0,75
R$ 1,92
R$ 0,90
R$ 0,80
R$ 0,20
R$ 0,52
R$ 0,48
R$ 0,32
R$ 0,16
R$ 0,08
R$ 0,08
R$ 0,32
R$ 0,26
R$ 0,26
R$ 0,06
R$ 0,24
R$ 0,06
R$ 0,18
R$ 0,24
R$ 0,06
R$ 54,21
43
TABELA 13 - LISTA DE MATERIAIS DOS DRIVERS
Componente
Descrição / Valor
Capacitor
2,2uF
Capacitor
22pF
Capacitor
10uF
Capacitor
470uF/50V
Diodo
1N4148
Transistor BJT
BC337
Transistor BJT
TIP122
Resistor
120 ohms
Resistor
150 ohms
Resistor
220 ohms
Resistor
470 ohms
Resistor
680 ohms
Resistor
3,3K ohms
Resistor
0,68 ohms / 5W
Cristal
16MHz
Conector
Tipo KK 6 pinos F
Conector
Tipo KK 180º 6 pinos M
Conector
Tipo KRE peq. 3 pinos
Microcontrolador
PIC16F628A
Dissipador
Com cooler
Diversos
MICA para TO220
Diversos
Terminais para KK
Qtde.
6
6
3
3
18
12
12
12
6
6
6
6
27
6
3
6
6
3
3
6
20
45
TOTAL
Total
R$ 0,72
R$ 0,60
R$ 0,36
R$ 0,36
R$ 0,90
R$ 2,16
R$ 9,00
R$ 0,90
R$ 0,90
R$ 0,90
R$ 0,90
R$ 0,90
R$ 0,90
R$ 3,96
R$ 2,70
R$ 0,63
R$ 3,12
R$ 1,41
R$ 16,80
R$ 30,00
R$ 3,00
R$ 3,15
R$ 84,27
TABELA 14 - LISTA DE MATERIAIS DO MÓDULO DO DISPLAY
Componente
Descrição / Valor
Qtde.
Display gráfico
Modelo do Nokia 3310
1
Capacitor
47 uF / 13V
1
Led
SMD azul
4
Resistor smd (0805)
470 ohms
5
Resistor smd (0805)
180 ohms
4
Conector
KK 7 pinos M
1
Conector
KK 7 pinos F
1
Buffer tristate
74LVT125
2
Diversos
Terminais para KK
10
TOTAL
Total
R$ 25,00
R$ 0,12
R$ 3,60
R$ 0,30
R$ 0,24
R$ 0,57
R$ 0,21
R$ 2,34
R$ 0,70
R$ 33,08
TABELA 15 - LISTA DE MATERIAIS DOS MÓDULOS DOS SENSORES
Componente
Descrição / Valor
Qtde.
Resistor smd (0805)
10K ohms
12
Resistor smd (0805)
220 ohms
6
Resistor smd (0805)
4,7K ohms
6
Sensor IR
PHCT203
6
TOTAL
Total
R$ 0,72
R$ 0,36
R$ 0,36
R$ 19,80
R$ 21,24
44
TABELA 16 - LISTA DE MATERIAIS DO MÓDULO DOS BOTÕES
Componente
Descrição / Valor
Qtde.
Resistor
10K ohms
7
Botão
Especial com knob
7
TOTAL
TABELA 17 - LISTA DE MATERIAIS DO MÓDULO DO FT232
Componente
Descrição / Valor
Qtde.
Circuito integrado
FT232BL
1
Circuito integrado
MC33269
1
Circuito integrado
93C46
1
Conector
USB tipo B
1
Cristal
6MHz
1
Conector
Barra de 40 pinos
1
Filtro
Indutor 10uH
1
Led
SMD Verde
1
Led
SMD Vermelho
1
Capacitor smd (0805)
27pF
2
Capacitor smd (0805)
33nF
1
Capacitor smd (0805)
100nF
5
Capacitor smd (1206)
10uF / 6,3V
2
Resistor smd (0805)
0R ohms
7
Resistor smd (0805)
27 ohms
2
Resistor smd (0805)
220 ohms
1
Resistor smd (0805)
470 ohms
1
Resistor smd (0805)
1,5K ohms
1
Resistor smd (0805)
2,2K ohms
1
Resistor smd (0805)
4,7K ohms
1
Resistor smd (0805)
10K ohms
2
TOTAL
Total
R$ 0,30
R$ 53,83
R$ 54,13
Total
R$ 23,00
R$ 2,72
R$ 0,80
R$ 0,90
R$ 1,28
R$ 0,80
R$ 0,52
R$ 0,48
R$ 0,16
R$ 0,08
R$ 0,40
R$ 0,26
R$ 0,06
R$ 0,12
R$ 0,06
R$ 0,06
R$ 0,06
R$ 0,06
R$ 0,06
R$ 0,12
R$ 32,00
45
TABELA 18 - LISTA DE MATERIAIS DO PICKIT 2
Componente
Descrição / Valor
Capacitor
0,47uF
Capacitor
27pF
Capacitor
100nF
Capacitor
0,1uF
Capacitor
27pF
Capacitor
1uF
Capacitor
47uF/35V
Capacitor
10uF
Diodo
S1G
Diodo
BAT54
Diodo
1N4148
Diodo
ZHCS1006
Transistor BJT
2N3906
Transistor BJT
2N2222
Transistor Mosfet
ZXM61P
Indutor
680uH/50mA
Resistor
10 ohms
Resistor
47 ohms
Resistor
121 ohms
Resistor
300 ohms - 1%
Resistor
470 ohms
Resistor
560 ohms
Resistor
820 ohms
Resistor
1K ohms - 1%
Resistor
1K ohms
Resistor
2,7K ohms
Resistor
4,7K ohms
Resistor
10K ohms
Resistor
100K ohms
Memória EEPROM
24C512
Ampop
MCP6001U
Duo Mosfet
FDC6420C
Microcontrolador
PIC18F2550
Cristal
20MHz
Led
3mm Vermelho
Led
3mm Verde
Led
3mm Amarelo
Conector
RJ12
Conector
USB - tipo A para PCI
Conector
Barra de 5 pinos
Botão
Tipo push-button
Cabo
Extensor USB
Qtde.
1
1
9
1
1
1
1
3
1
2
1
1
2
3
1
1
2
3
2
1
2
1
1
1
2
5
4
10
1
2
1
1
1
1
1
1
1
1
1
1
1
1
TOTAL
Total
R$ 0,12
R$ 0,10
R$ 0,90
R$ 0,12
R$ 0,10
R$ 0,12
R$ 0,15
R$ 0,36
R$ 0,36
R$ 1,36
R$ 0,05
R$ 1,60
R$ 1,60
R$ 2,10
R$ 1,80
R$ 1,40
R$ 0,30
R$ 0,30
R$ 0,30
R$ 0,30
R$ 0,30
R$ 0,30
R$ 0,30
R$ 0,30
R$ 0,30
R$ 0,30
R$ 0,30
R$ 0,30
R$ 0,30
R$ 1,90
R$ 1,04
R$ 1,48
R$ 19,80
R$ 1,00
R$ 0,12
R$ 0,12
R$ 0,12
R$ 2,20
R$ 0,75
R$ 0,64
R$ 0,33
R$ 15,00
R$ 60,64
46
7.2
Mecânica
A tabela 17 contém os principais materiais que são utilizados na mecânica da
fresadora. Há ainda o custo dos materiais auxiliares envolvidos, que é de
aproximadamente R$ 35,00 em parafusos, arruelas e brocas e cerca de R$ 40,00
em cabos, suportes, protetores, etc. O painel de fibra, construído pelos próprios
alunos, exigiu também um investimento de cerca de R$ 55,00.
Muito embora os valores apresentados não representem um grande
montante, o grupo gastou muito mais, devido à vários fatores, entre eles a
necessidade de comprar ferramentas para a montagem da estrutura, como chaves
de boca, serrinha de cortar ferro, esquadro, paquímetro, macho manual, devido
também aos testes com diversas fresas objetivando encontrar aquela com os
melhores resultados e pelo fato de se tratar do primeiro protótipo, onde a lista de
peças passar por várias mudanças. Só com as fresas, por exemplo, foi gasto
R$115,20.
TABELA 19 - LISTA DOS PRINCIPAIS MATERIAS PARA A ESTRUTURA
Material
Qtde.
Unidade
Total
Motor de passo 9,9Kgf 2A/bobina
3
R$ 37,00
R$ 111,00
Chapa MDF 2750x1830x15mm
1
R$ 91,70
R$ 91,70
Par de rolamento (Skate)
4
R$ 12,50
R$ 50,00
Acoplador
3
R$ 6,67
R$ 20,01
Cola Trava Rosca
1
R$ 6,60
R$ 6,60
Broca odontológica FG169
1
R$ 5,80
R$ 5,80
Dremel
1
R$ 200,00
R$ 200,00
Cantoneira 3m de alumínio 3/4"
1
R$ 4,80
R$ 4,80
Barra roscada M6 1m
2
R$ 5,20
R$ 10,40
TOTAL
R$ 500,31
7.3
Custo Final
O preço de custo estimado do projeto (diferentemente do que foi gasto) é de
aproximadamente R$ 1003,04 (ver Tabela 20), desconsiderando as ferramentas,
exceto a Dremel, o custo para fabricar as placas de circuito impresso e os gastos
inerentes, como gastos com deslocamentos, consumo de energia elétrica, entre
outros.
47
TABELA 20 - PREÇO DE CUSTO APROXIMADO
Descrição
Pickit 2
Sensores
GLCD
Drivers
VNC1L
Botões
FT232
Controladora - Mainboard
Estrutura + Dremel
Cabos
Peças e parafusos
Painel
TOTAL
8
Subtotal
R$ 60,64
R$ 21,24
R$ 33,08
R$ 84,27
R$ 54,21
R$ 54,13
R$ 32,00
R$ 33,16
R$ 500,31
R$ 40,00
R$ 35,00
R$ 55,00
R$ 1004,04
CRONOGRAMA DO PROJETO
As etapas do projeto foram desenvolvidadas conforme planejado no
cronograma (disponível na página a seguir), com a apresentação prevista para a
primeira semana de Julho.
48
TABELA 21 - CRONOGRAMA DO PROJETO
49
9
CONCLUSÃO
Projetar e construir um novo equipamento, mesmo considerando todo o
conhecimento assimilado durante o curso de Engenharia Elétrica, não é uma tarefa
fácil, pois, além disso, o equipamento criado deve funcionar da forma desejada,
após todos os processos e horas dedicadas. Estimam terem sido atingidos todos os
objetivos previamente propostos para o estudo, pois, estudando e criando o
protótipo constatou-se ser ele, um dos potenciais responsáveis indiretos do
desenvolvimento e criação de novos protótipos.
Continuidade e agilidade no desenvolvimento de projetos, minimizando
perdas, reduzindo custos, mediante alternativas que restam, também puderam ser
identificadas ao longo do desenvolvimento. Percebeu-se que os acadêmicos ligados
principalmente à área da engenharia elétrica, necessitam dominar alguns assuntos à
sua especialidade relacionados, porém, além de estarem motivados, estudados e
empenhados a aplicar todo o seu potencial, deverão ter acesso a itens que atendam
à sua demanda, com economia, tecnologia e rapidez.
Para os autores, espera-se que o equipamento projetado atenda às
expectativas da população acadêmica em especial, viabilizando o desenvolvimento
rápido de protótipos e a um baixo custo, pois utilizar o serviço de empresas
especializadas apresenta um alto custo e um tempo de espera longo. Diante dessa
realidade, alunos, profissionais do ramo de eletrônica e algumas empresas
(tratando-se de protótipos) optam por métodos alternativos e artesanais para fazer
suas placas, processos geralmente dispendiosos e que apresentam resultados não
confiáveis, além de utilizar materiais perigosos e de difícil descarte, como o
percloreto férrico para corrosão do cobre. Deste modo, os acadêmicos acreditam
que o projeto em questão é uma alternativa mais vantajosa que a solução caseira e
também mais ágil que a fabricação pelas empresas especializadas.
50
10 REFERÊNCIAS
PHILLIPS, Semiconductors - PCD8544 – 48x84 pixels matrix LCD
controller/driver.
Disponível
online:
<http://www.myplace.nu/mp3/files/pcd8544.pdf>. Acesso em julho de 2010.
STMICROELECTRONICS – L297 Stepper Motor Controllers. Disponível online:
<http://pdf1.alldatasheet.com/datasheetpdf/view/22436/STMICROELECTRONICS/L297.html>
CENTRO DE INFORMAÇÃO MATAL MECÂNICA (CIMM) – Tipos de fresadoras e
Aplicações.
Disponível
online:
<http://www.cimm.com.br/portal/noticia/material_didatico/4868>. Acesso em agosto
de 2010.
A.S.T. INDUSTRIA – Tabela de códigos G e M padrão ISO 1056. Disponível
online: < http://www.astindustria.com.br/>. Acesso em julho de 2010.
DIRECTINDUSTRY – Brushless AC eletric servo-motor. Disponível online: <
http://www.directindustry.com/prod/control-techniques/brushless-ac-electric-servomotor-7177-24028.html>. Acesso em julho de 2010.
KALATEC
–
Automação
Industrial.
Disponível
online:
<http://www.kalatec.com.br/2009/index.php?/Kalatec-Automacao.html>. Acesso em
julho de 2010.
ANTARES, Inc. Anatomy of an Engraving Cutter. Disponível online:
<http://www.antaresinc.net/2004EngFactAnatomy.html>. Acesso em julho de 2010.
NEWTON, James – Linistepper V2: Smooth, Fast, Strong, and cheap. Disponível
online:
<http://www.piclist.com/techref/io/stepper/linistep/index.htm>.
Acesso em julho de 2010.
CAROZZI, Helder José Costa. Projeto de uma fresadora controlada por comando
numérico computadorizado – CNC. Disponível online:
<http://www.fag.edu.br/professores/helder/Comando%20Numerico/FRESADORA%2
0CNC%20-%20HELDER%20JOS%C9%20COSTA%20CAROZZI.pdf>. Acesso em
julho de 2010.
VINCULUM.
VNC1L
Data
Sheet
version
2.01.
Disponível
online:
<http://www.vinculum.com/documents/datasheets/DS_VNC1L.pdf>.
Acesso
em
agosto de 2010.
VINCULUM. Vinculum firmware library documentation. Disponível online:
<http://www.vinculum.com/documents/fwspecs/UM_VinculumFirmware_V205.pdf>.
Acesso em julho de 2010.
51
VINCULUM.
VDIP1
Schematic
Printout
(PDF).
Disponível
online:
<http://www.vinculum.com/documents/schematics/VDIP1%20Schematic%20Prints.p
df>. Acesso em julho de 2010.
FUTURE TECHNOLOGY DEVICES INTERNATIONAL LTD. (FTDI). FT232BL Data
Sheet.
Disponível
online:
<http://www.ftdichip.com/Documents/DataSheets/DS_FT232BL.pdf>. Acesso em
agosto de 2010.
MICROCHIP TECHNOLOGY INC. PIC18F2455/2550/4455/4550 Data sheet.
Disponível online: <http://ww1.microchip.com/downloads/en/DeviceDoc/39632e.pdf>.
Acesso em julho de 2010.
MICROCHIP TECHNOLOGY INC. MPLAB IDE v8.53 FULL RELEASE. Disponível
para
download
em:
<http://ww1.microchip.com/downloads/en/DeviceDoc/MPLAB_IDE_8_53.zip>.
Acesso em julho de 2010.
MICROCHIP TECHNOLOGY INC. PICkit2 Development Programmer/Debugger.
Disponível
online:
<http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=140
6&dDocName=en023805>. Acesso em julho de 2010.
VINCULUM. VDAP Disk and Peripheral Firmware. Disponível para download em:
<http://www.vinculum.com/downloads/firmware/VDAPFUL_V03_68.ROM>.
em julho de 2010.
Acesso
VINCULUM. VPROG Re-Flash Utility. Disponível para download em:
<http://www.vinculum.com/downloads/vprog.zip>. Acesso em julho de 2010.
CADSOFT. COMPUTER. Eagle Light Edition v.5.10.0. Disponível para download
em: <ftp://ftp.cadsoft.de/eagle/program/5.10/eagle-win-5.10.0.exe>. Acesso em julho
de 2010.
HEXRAY LTD. – Cambam Free Beta Release 0.8.2. Disponível para download em:
<http://www.cambam.co.uk/download/latest/cambam-free-beta-release-082.html>.
Acesso em julho de 2010.
BRITES, Felipe Gonçalves “et all” – Motor de Passo. Disponível online:
<http://www.telecom.uff.br/pet/petws/downloads/tutoriais/stepmotor/stepmotor2k8111
9.pdf>. Acesso em julho de 2010.
52
ANEXO A – COMANDOS G-CODE
Código G
Função
G00
Posicionamento rápido
G01
Interpolação linear
G02
Interpolação circular no sentido horario (CW)
G03
Interpolação circular no sentido anti-horario (CCW)
G04
Temporização (Dwell)
G05
Não registrado
G06
Interpolação parabólica
G07
Não registrado
G08
Aceleração
G09
Desaceleração
G10 a G16
Não registrado
G17
Seleção do plano XY
G18
Seleção do plano ZX
G19
Seleção do plano YZ
G20
Programação em sistema Inglês (Polegadas)
G21
Programação em sistema Internacional (Métrico)
G12 a G24
Não registrado
G25 a G27
Permanentemente não registrado
G28
Retorna a posição do Zero máquina
G29 a G32
Não registrados
G33
Corte em linha, com avanço constante
G34
Corte em linha, com avanço acelerando
G35
Corte em linha, com avanço desacelerando
G36 a G39
Permanentemente não registrado
G40
Cancelamento da compensação do diâmetro da ferramenta
G41
Compensação do diâmetro da ferramenta (Esquerda)
G42
Compensação do diâmetro da ferramenta (Direita)
G43
Compensação do comprimento da ferramenta (Positivo)
G44
Compensação do comprimento da ferramenta (Negativo)
G45 a G52
Compensações de comprimentos das ferramentas
G53
Cancelamento das configurações de posicionamento fora do zero fixo
53
G54
Zeragem dos eixos fora do zero fixo (01)
G55
Zeragem dos eixos fora do zero fixo (02)
G56
Zeragem dos eixos fora do zero fixo (03)
G57
Zeragem dos eixos fora do zero fixo (04)
G58
Zeragem dos eixos fora do zero fixo (05)
G59
Zeragem dos eixos fora do zero fixo (06)
G60
Posicionamento exato (Fino)
G61
Posicionamento exato (Médio)
G62
Posicionamento (Groceiro)
G63
Habilitar óleo refrigerante por dentro da ferramenta
G64 a G67
Não registrados
G68
Compensação da ferramenta por dentro do raio de canto
G69
Compensação da ferramenta por fora do raio de canto
G70
Programa em Polegadas
G71
Programa em metros
G72 a G79
Não registrados
G80
Cancelamento dos ciclos fixos
G81 a G89
Ciclos fixos
G90
Posicionamento absoluto
G91
Posicionamento incremental
G92
Zeragem de eixos (mandatório sobre os G54...)
G93
Avanço dado em tempo inverso (Inverse Time)
G94
Avanço dado em minutos
G95
Avanço por revolução
G96
Avanço constante sobre superfícies
G97
Rotação do fuso dado em RPM
G98 e G99
Não registrados
54
ANEXO B – CÓDIGOS M
Código M
Função
M00
Parada programa
M01
Parada opcional
M02
Fim de programa
M03
Liga o fuso no sentido horário (CW)
M04
Liga o fuso no sentido anti-horário (CCW)
M05
Desliga o fuso
M06
Mudança de ferramenta
M07
Liga sistema de refrigeração numero 2
M08
Liga sistema de refrigeração numero 1
M09
Desliga o refrigerante
M10
Atua travamento de eixo
M11
Desliga atuação do travamento de eixo
M12
Não registrado
M13
Liga o fuso no sentido horário e refrigerante
M14
Liga o fuso no sentido anti-horário e o refrigerante
M15
Movimentos positivos (aciona sistema de espelhamento)
M16
Movimentos negativos
M17 e M18
Não registrados
M19
Parada do fuso com orientação
M20 a M29
Permanentemente não registrado
M30
Fim de fita com rebobinamento
M31
Ligando o "Bypass"
M32 a M35
Não registrados.
M36
Acionamento da primeira gama de velocidade dos eixos
M37
Acionamento da segunda gama de velocidade dos eixos
M38
Acionamento da primeira gama de velocidade de rotação
M39
Acionamento da segunda gama de velocidade de rotação
M40 a M45
Mudanças de engrenagens se usada, caso não use, Não registrados.
M46 e M47
Não registrados.
M48
Cancelamento do G49
M49
Desligando o "Bypass"
55
M50
Liga sistema de refrigeração numero 3
M51
Liga sistema de refrigeração numero 4
M52 a M54
Não registrados.
M55
Reposicionamento linear da ferramenta 1
M56
Reposicionamento linear da ferramenta 2
M57 a M59
Não registrados
M60
Mudança de posição de trabalho
M61
Reposicionamento linear da peça 1
M62
Reposicionamento linear da peça 2
M63 a M70
Não registrados.
M71
Reposicionamento angular da peça 1
M72
Reposicionamento angular da peça 2
M73 a M89
Não registrados.
M90 a M99
Permanentemente não registrados
56
APÊNDICE A – FLUXOGRAMA GERAL DO FIRMWARE
57
APÊNDICE B – FLUXOGRAMA: TESTE DOS SENSORES
58
APÊNDICE C – FLUXOGRAMA: TESTE DO EIXO X
59
APÊNDICE D – FLUXOGRAMA: ESTE DO EIXO Y
60
APÊNDICE E – FLUXOGRAMA: TESTE DO EIXO Z
61
APÊNDICE F – FLUXOGRAMA: POSIÇÃO INICIAL DO EIXO Z
62
APÊNDICE G – FLUXOGRAMA: POSIÇÃO INICIAL DOS EIXOS X E Y
63
APÊNDICE H – FLUXOGRAMA: FRESAGEM DO ARQUIVO ESCOLHIDO
64
APÊNDICE I – FLUXOGRAMA: INTERPOLAÇÃO LINEAR
65
APÊNDICE J – ESQUEMÁTICO: PLACA CONTROLADORA
66
APÊNDICE L – ESQUEMÁTICO: CONVERSOR SERIAL/USB
67
APÊNDICE M – ESQUEMÁTICO: PICKIT2
68
APÊNDICE N – ESQUEMÁTICO: PLACA DO LCD
69
APÊNDICE O – ESQUEMÁTICO: PLACA DO SENSOR
70
APÊNDICE P – ESQUEMÁTICO: PLACA DO VNC1L
71
APÊNDICE Q – ESQUEMÁTICO: DRIVER LINISTEPPER
72
APÊNDICE R – FOTOS DA FRESADORA
Download