Documente Academic
Documente Profesional
Documente Cultură
Elaborao:
Higor Ottoboni Da Silva
201167
Mateus Amancio Stelutti
199629
Orientao:
PROF (o) Amadeu Zanon Neto
Araatuba- SP
2016
2
ndice
INTRODUO .................................................................................................... 3
SISTEMA ............................................................................................................. 4
DESENVOLVIMENTO ....................................................................................... 4
Alimentao ...................................................................................................... 5
Microcontrolador .............................................................................................. 6
Sensores ............................................................................................................ 6
Sensores ............................................................................................................ 8
Programa ......................................................................................................... 11
Arquivos .......................................................................................................... 14
CONCLUSO .................................................................................................... 15
Araatuba- SP
2016
3
INTRODUO
Araatuba- SP
2016
4
SISTEMA
Uma empresa produz uma substncia lquida que dever ser envazada em
latas e precisa que seja projetado um sistema que faa os seguintes controles:
O acionamento do sistema efetuado atravs de uma botoeira por um
operador.
As latas que se movimentam na esteira devem parar automaticamente em
baixo de um bico injetor de lquido que deve ficar aberto por um perodo de
cinco segundos.
Uma vez carregada, a lata continua pela esteira at um sensor que
definir a direo que ela ir se deslocar.
As latas devem ser separadas do lado direito e esquerdo alternadamente,
sendo que escorregam da esteira principal para duas bandejas separadas.
Uma vez que a mquina envaze e separe seis latas para cada lado esta
deve parar totalmente e uma luz mostra que as quantidades foram atingidas e o
processo terminou, exigindo ao do operador, que deve pressionar a botoeira
para reiniciar a tarefa.
DESENVOLVIMENTO
Para o desenvolvimento foram levantadas as seguintes anlises de pr-
requisitos tcnicos:
Utilizar um ou mais micro controladores PIC 16F628A.
Toda a aquisio de dados deve ser feita no modo digital.
O motor que movimenta a esteira funciona em 12 Volts.
O motor do sistema de posicionamento de latas para esquerda ou direita
funciona em 6 Volts e deve ter um controle de inverso de rotao.
A mquina dever ter contadores independentes mostrados por display
de sete segmentos para as latas que vo para a direita e esquerda.
Desenvolver projeto do circuito eltrico e testar o processo em
simulador.
O programa de controle, obrigatoriamente deve ser criado em
mikroBasic.
Seguindos esses requisitos o hardware foi desenvolvido buscando
atender as necessidades.
Araatuba- SP
2016
5
COMPONENTES DO CIRCUITO
O circuito eltrico do sistema constitudo de um circuito de
alimentao, sensores, leds para indiciar certos status, sada para comunicao
serial e sada para acionamento da bomba.
Alimentao
O circuito de alimentao possui um regulador de tenso e um capacitor
de filtro que tem a finalidade de limitar a tenso proveniente de fonte externa
para 5V, que servira de alimentao do Microcontrolador e do circuito.
Araatuba- SP
2016
6
Microcontrolador
O microcontrolador utilizado foi o PIC16F628A, com as seguintes
conexes
Sensores
Os sensores so digitais e enviam sinal logico 0 e 5 V para o
Microcontrolador durante sua operao. Para a utilizao no Simulador eles
foram substitudos por botes com a configurao Pull-UP.
Ao passar pelo Sensor 01, o motor da esteira para de forma que a lata
fique embaixo de um bico de envaze, que aberto por 5 segundo. Aps
decorrido o tempo o motor da esteira ligado novamente para enviar a lata para
a bandeja de armazenamento, antes de chegar na bandeja a lata passa por um
sensor que envia um sinal ao microcontrolador ajustando a direo de dispensa
da lata e incrementando o contador.
Araatuba- SP
2016
7
Araatuba- SP
2016
8
Sensores
Os sensores foram substitudos por botes para a utilizao no
Simulador.
Araatuba- SP
2016
9
Ao passar pelo Sensor 01, o motor da esteira para de forma que a lata
fique embaixo de um bico de envaze, que aberto por 5 segundo. Aps
decorrido o tempo o motor da esteira ligado novamente para enviar a lata para
a bandeja de armazenamento, antes de chegar na bandeja a lata passa por um
sensor que envia um sinal ao microcontrolador ajustando a direo de dispensa
da lata e incrementando o contador.
Araatuba- SP
2016
10
TCNICAS DE PROGRAMAO
Foram aplicadas vrias tcnicas de programao no desenvolvimento do
firmware, que foi possvel atravs da utilizao do contedo ministrado pelo
docente durante as atividades de aula. O projeto foi realizado utilizando a o
programa MikroBasic 7.2.
Deteco de Borda
Uma das tcnicas aplicadas no projeto foi a Deteco de Borda, essa
tnica muito importante, uma vez que impede que uma contagem ou ao seja
tomada varias vezes seguidas atravs de um nico sinal. Essa tcnica pode ser
observada no trecho do cdigo onde se espera o sinal do sensor de envaze da
lata, conforme o cdigo a seguir:
'''''''''''''PARAR PARA ENCHER LATA'''''''''''''''''''''''''''''''''''''''''''''''''
if ligado = true then 'Se a Vriavel Ligado estiver ativa
portb.7 = 0 'Desliga Luz de Fim de Processo
portb.0 = 1 'Liga motor da Esteira
if porta.1 = 0 then 'Se a lata passar pelo sensor de Envaze
if borda1 = false then ' Deteccao de Borda
borda1 = true ' Deteccao de Borda
portb.0 = 0 ' Desliga motor da Esteira
Araatuba- SP
2016
11
Condies IF Else
Todas as tomadas de deciso foram feitas usando condies IF Else,
como poder ser visto no decorrer de todo o programa.
Programa
program Trabalho
Dim ligado as boolean 'Variavel para ligar o Processo
Dim contador1 as integer 'Contador de latas do lado Direito
Dim contador2 as integer 'Contador de latas do lado Esquerdo
Dim borda1 as boolean 'Variavel para deteccao de borda
Dim borda2 as boolean 'Variavel para deteccao de borda
Dim direcao as boolean 'Variavel para controle de Direcao
Araatuba- SP
2016
12
ligado=false
direcao=false
contador1=0
contador2=0
borda1=false
borda2=false
inicio:
''''''''''''''''''''' INICIA PROCESSO POR BOTAO ''''''''''''''''''''''
if porta.0 = 0 then 'Se apertar o botao da Porta A0
if ligado = false then 'Se estiver o processo estiver desligado
ligado = true 'Setar True para vriavel de controle de processo
portb.3 = 1 '\
delay_ms(50) ' Pulsar Pino 15 do CI Contador 4026 para
zeraros diplays
portb.3 = 0 '/
end if
end if
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''''''''''''''''''' PROCESSO '''''''''''''''''''''''''''''''''''''''''''''''''''''
'''''''''''''PARAR PARA ENCHER LATA'''''''''''''''''''''''''''''''''''''''''''''''''
if ligado = true then 'Se a Vriavel Ligado estiver ativa
portb.7 = 0 'Desliga Luz de Fim de Processo
portb.0 = 1 'Liga motor da Esteira
if porta.1 = 0 then 'Se a lata passar pelo sensor de Envaze
if borda1 = false then ' Deteccao de Borda
borda1 = true ' Deteccao de Borda
portb.0 = 0 ' Desliga motor da Esteira
portb.6 = 1 ' Abre o Bico de Envaze
delay_ms(5000) ' Mantem aberto por 5 segundos
portb.6 = 0 ' Fecha o Bico de Envaze
portb.0 = 1 ' Liga o Motor da Esteira
Araatuba- SP
2016
13
end if
end if
if porta.0 = 1 then borda1 = false end if ' Resetar Variavel de Deteccao de Borda
'''''''''''''CONTAR E DIRECIONAR LATA''''''''''''''''''''''''''''''''''''''''''''''''
if porta.2 = 0 then ' Se a lata passar pelo Sensor
if borda2 = false then ' Deteccao de Borda
borda2 = true ' Deteccao de Borda
if direcao = false then ' Se Variavel Direcao for Falsa = Enviar
paraDireita
portb.4 = 1 ' Sinal para Ponte H LN298
portb.5 = 0 ' Sinal para Ponte H LN298
delay_ms(1000) ' Manter Motor de Direcao ligado para
Direitapor 1 segundo
portb.4 = 0 ' Desligar Motor de Direcao
portb.5 = 0 ' Desligar Motor de Direcao
contador1 = contador1 + 1 ' Incrementar Contador do Lado Direito
direcao = true ' Mudar Valor de Variavel Direcao
portb.1 = 1 '\
delay_ms(50) ' Enviar Pulso para O pino 1 do CI Contador
4026 para Incrementar 1 no display da Direita
portb.1 = 0 '/
else 'Se Variavel Direcao for True = Enviar para
Esquera
portb.4 = 0 ' Sinal para Ponte H LN298
portb.5 = 1 ' Sinal para Ponte H LN298
delay_ms(1000) ' Manter Motor de Direcao ligado para
Esquerda por 1 segundo
portb.4 = 0 ' Desligar Motor de Direcao
portb.5 = 0 ' Desligar Motor de Direcao
contador2 = contador2 + 1 ' Incrementar Contador do Lado Esquerdo
direcao = false ' Mudar Valor de Variavel Direcao
portb.2 = 1 '\
Araatuba- SP
2016
14
end if
end if
if porta.2 = 1 then borda2 = false end if ' Resetar Variavel de Deteccao de Borda
else ' Se Variavel Ligado estiver desativada
delay_ms(10) ' Esperar 10 milisegundos
goto inicio ' Voltar para Inicio Esperando a Ativacao
doProcesso pelo Botao
end if
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
goto inicio
end.
Arquivos
O projeto ser enviado ao professor, contendo os arquivos do Projeto do
Firmware do MikroBasic e o desenvolvimento eletrnico e simulao do
Proteus.
Araatuba- SP
2016
15
CONCLUSO
Araatuba- SP
2016