Professional Documents
Culture Documents
Campo Grande / MS
2015
RESUMO
LISTA DE FIGURAS
PCI
CCS
PIC
RISC
IDE
TRIAC
USB
AC
Alternating current
SUMRIO
1INTRODU O ............................................................................................ 6
2MICROCONTROLADORES.........................................................................7
2.1MICRO CONTROLADORES PIC.................................................................................7
2.2PLATAFORMA DE DESENVOLVIMENTO ARDUINO.........................................................7
3DESENVOLVIMENTO DOS PROJETOS NO ESTGIO.................................9
3.1DIMMER MICROCONTROLADO...................................................................................9
3.1.1Funcionamento do dimmer microcontrolado.................................................9
3.2FONTE: O PRPRIO AUTOR.MAQUINAS CNC..........................................................11
3.2.1Definio de maquinas CNC.......................................................................11
3.2.2Uma maquina CNC microcontrolada...........................................................12
3.2.2.1O firmware GRBL..................................................................................12
3.2.2.2Desenvolvimento do projetos................................................................12
4CONCLUS O ............................................................................................ 17
5CONSIDERA ES FINAIS ........................................................................22
REFER NCIAS ........................................................................................... 23
ANEXOS..................................................................................................... 24
ANEXO A CDIGO DIMMER PIC............................................................................24
6
1 INTRODUO
Grande parte das atividades realizadas no perodo de estagio foi voltada para
programao em microcontroladores da famlia PIC e tambm para placas Arduino,
uma plataforma de desenvolvimento de cdigo e hardware aberto. Tudo isso com o
intuito de aprender sobre programao em microcontroladores e fixar conceitos de
relevncia dentro desse assunto.
Utilizou-se em quase todos os projetos linguagem de programao C,
utilizando a IDE CCS C compiler tambm o Atmel Studio para editar e criar
bibliotecas para o ambiente de desenvolvimento da plataforma arduino.
Ser descrito nos prximos itens conceitos sobre microcontroladores, a
plataforma Arduino, linguagens de programao e tambm os projetos realizados no
perodo correspondente ao tempo de estgio.
7
2 MICROCONTROLADORES
Um microcontrolador um pequeno computador em um nico circuito
integrado que contm um ncleo de processamento, memrias e sadas e entradas
de perifricos (sensores, botes, etc).
Hoje em dia esses dispositivos esto escondidos em boa parte dos aparelhos
que so utilizados diariamente pelas pessoas. Os microcontroladores tornaram o
processo de lavar roupas em uma mquina de lavar ou esquentar um alimento em
um micro-ondas muito mais simples e sofisticado, imagine ter que usar um relgio
para marcar um tempo toda vez que fosse esquentar um alimento.
Existem vrios tipos, modelos e vrios fabricantes de microcontroladores,
cada um tem suas particularidades e dependendo da aplicao um modelo e marca
se encaixa melhor que o outro. Os utilizados nos projetos desenvolvidos no perodo
de estagio foram microcontroladores da famlia ATMEL juntamente com a plataforma
arduino e tambm microcontroladores da famlia PIC 16f e 18f.
2.1 MICRO CONTROLADORES PIC
Fabricados pela Microchip Technology, os microcontroladores PIC possuem
geralmente arquitetura RISC (Computador com conjunto de instrues reduzido) e
processam dados de 8 e 16 bits. So controladores de baixo custo, fcil
programao e tambm tm uma alta velocidade de execuo alm de contar com
muito material virtual o que torna mais fcil a pesquisa e o aprendizado.
2.2 PLATAFORMA DE DESENVOLVIMENTO ARDUINO
A plataforma Arduino foi criada para facilitar o desenvolvimento de projetos
microcontrolados de baixo custo e fcil utilizao. tambm uma plataforma open
source e open hardware, ou seja, pode modificada e utilizada por qualquer pessoa
sem a necessidade de pagar nenhum direito autoral.
Uma das grandes sacadas da plataforma arduino foi colocar todo o hardware
necessrio para seu funcionamento em uma nica placa, tornando assim a vida do
desenvolvedor mais fcil pelo fato de no precisar montar todo o circuito eletrnico
8
em uma proto board.
Existem vrios modelos dessa plataforma, o que permite ao desenvolvedor
realizar tarefas das mais simples as que exigem um pouco mais de processamento.
Alm disso o ambiente de desenvolvimento Arduino IDE conta com varias
bibliotecas para facilitar determinadas tarefas que demandariam mais tempo e
conhecimento do desenvolvedor. Possui ainda grande acervo virtual e muitos
exemplos.
A plataforma arduino uma grande ferramenta tanto para projetos simples
como para os que so mais complexos.
9
3 DESENVOLVIMENTO DOS PROJETOS NO ESTGIO
Foram desenvolvidos no perodo de estgio dois projetos relevncia para o
processo de aprendizagem na rea de programao em microcontroladores. Esses
projetos sero descritos a seguir.
3.1 DIMMER MICROCONTROLADO
Figueredo (2009, p48) define dimmer da seguinte maneira
O dimmer um interruptor do tipo variador de luminosidade. Atravs dele
possvel aumentar ou diminuir a iluminncia de um ambiente, dentro dos
limites da lmpada. Nas escolas, podem ser utilizados nos auditrios e em
salas de vdeo, permitindo criar diferentes cenrios. (FIGUEREDO, 2009, p.
48).
10
Uma senoide possui 16,666 ms, sabendo dessa informao e sabendo
quando ela comeou (passagem por zero) pode-se definir um valor em porcentagem
para a potencia, por exemplo quando disparado o TRIAC a 8,33ms teremos 50% da
tenso maxima na carga. (STMicroelectronics, 2009, pg. 4).
A figura 1 mostra 3 grficos sendo o primeiro (Input sine wave) a senoide da
rede, o segundo (Triac gate trigger) o disparo no gatilho do TRIAC e o terceiro (Triac
output) a saida para a caraga. O controle de atraso de fase se da pelo atraso do
disparo do gatilho do TRIAC, o alfa da figura 1. Esse disparo s corre quando o
microcontrolador entende que a senoide passou por zero, s depois ento contado
um determinado tempo.
Figura 1 Disparo TRIAC
11
Figura 2 Zero Cross.
12
comandar os motores da maquina gerando assim o movimento desejado.
3.2.2 Uma maquina CNC microcontrolada
O projeto de uma maquina CNC microcontrolada proposto nesse perodo de
estgio tinha a ideia de substituir o computador por um simples microcontrolador, o
que reduziria custos e otimizaria o espao em uma maquina.
3.2.2.1 O firmware GRBL
O interpretador de cdigos para maquinas CNC que tomou a funo do
microcomputador foi o firmware da Benger AS., o GRBL . A Benger AS. desenvolveu
um
cdigo
para
microcontroladores
capaz
de
fazer
trabalho
de
um
de
softwares
proprietrios
custosos
dispensando
um
13
14
Figura 5: Motor de passo
15
Para a alimentao do circuito e da mquina utilizou-se uma fonte chaveada
de 12V e 10A.
Figura7: Fonte Chaveada
16
4 CONCLUSO
Os teste indicaram boa preciso. O sistema foi montado operando apenas um
motor de passo operando um eixo, o qual possua uma chave de fim de curso de
cada lado para evitar danos caso o sistema fosse indevidamente movido.
Figura 7: CNC
17
Figura 8: CNC2
Figura 9: CNC3
18
Figura 10: Cabo porta paralela
19
20
Figura 12: Display 2
21
5 CONSIDERAES FINAIS
O perodo de estagio realizado na empresa Hiperon Tecnologia LTDA,
mostrou uma viso da realidade do trabalho voltado ao desenvolvimento de novas
tecnologias. Muitos dos conceitos tericos visto em sala de aula puderam ser fixados
durante esse perodo.
Os supervisores tiveram um papel fundamental de apoio e incentivo a
pesquisa nas reas tecnolgicas.
Por fim o estgio agregou conhecimento e experincia profissional para o
futuro, trazendo uma viso mais abrangente sobre o mercado de trabalho que
aguarda o futuro engenheiro.
22
REFERNCIAS
FIGUEREDO, Chnia Rocha Figueiredo. Equipamentos eltricos e eletrnicos.
Brasilia: Universidade de Braslia, 2009.
STMicroelectronics. AN392 Application note. Microcontrollers and TRIAC-based
dimmers. 2009. Dispoinvel em:
<http://www.st.com/web/en/resource/technical/document/application_note/CD000038
20.pdf>. Acessado em: Outubro/2015.
LAZARIDIS, Giorgos Lazaridis. Dimmer Theory. What is a dimmer?. 2009.
Disponvel em: <http://pcbheaven.com/wikipages/Dimmer_Theory/>. Acesso em:
outro/2015.
23
ANEXOS
ANEXO A Cdigo Dimmer PIC
#include <16F877A.h>
#use delay (clock=4000000)
#fuses HS,NOWDT,PUT,NOLVP
/*===================================================
Dimmer AC utilizando interrupo de timer 0 e interrupo externa RB0
Setembro de 2014
Diego Silva Santos
Hiperon engenharia
===================================================
Calculos de TMR 0
tempo timer0
T= 4/Fosc
T=4/4M = 1us
Termpo de estouro do TMR0
Tes=256*T (contador de 8 bits = 256 posies)
Tes=256*1us
Tes=256us
O tempo de estouro do TMR seria nesse caso 256us, prorem para essa
aplicao
necessito de um tempo superior, preciso de um tempo que seja metade de
uma senoide
de 60Hz que de 8.33 ms, por isso utilizo um divisor(prescaler) que sera de
32, pois
24
256*32 = 8.1 que mais proximo de 8,33
*/
int a=0;// variavel que controla quantidade de vezes que botao1 e 2 foi
apertado
//====================================================
#define botao1 input(pin_b1) //boto de incremento
#define botao2 input(pin_b2)//boto de decremento
#define saida (pin_c2)
//====================================================
#int_ext
void Passagep0()
25
//=====================================================
void main()
{
set_tris_b(0b00000111);
//divida o
clock interno por 32, dessa forma posso term mais tempo em TMR0
enable_interrupts(GLOBAL);//necessario habilitar int. globais para que
TMR0 e INT_EXT funcione
enable_interrupts(INT_EXT);//habilitar interrupo externa(RB0)
disable_interrupts(INT_TIMER0);// incia o programa com TMR0
desabilitado para que ele so comece a
//contagem apartir da interrupo INT_EXT
//=====================================================
while(1) //loop infinto
{
if(botao1) //incrementa avarialvel tempo que usada para valores de
TMR0
{
if(a < 30) // limite de incrementos, essa condio so permite que seja
{
26
if(a > 0)//condio de limite de apertos descrito acima
{
a--;//decremeta 2navariaveltempo
tempo = tempo - 2;//decrem
while (input(pin_b2)==1){}//enquanto estiver apertado nao realiza
nenhuma tarefa
}
}
}
}