Sie sind auf Seite 1von 17

Universidade Federal de Campina Grande

Centro de Engenharia Eltrica e Informtica


Departamento de Sistemas e Computao
elat!rio do "ro#eto Final
Controle de motor DC utili$ando "IC
Disciplina
%cnicas de "rogramao
Professor
&os Eust'uio angel de (ueiro$
rangel@dsc.ufcg.edu.br, rangeldequeiroz@gmail.com
Aluna
)iviane Silveira Gonalves *artins
Viviane.martins@ee.ufcg.edu.br
Campina Grande
Janeiro 2011
_____________________________
Jos Eustquio an!el de "ueiro#
Professor
_____________________________
$i%iane &il%eira Gon'al%es (artins
)*D+CE
1 +ntrodu',o....................................................................................................4
2 -./eti%os.......................................................................................................5
0 1undamenta',o 2e3rica..........................................................................6
4 Considera'5es 1inais..............................................................................10
efer6ncias 7i.lio!rficas............................................................................11
Ane8o A 9 C3di!o de controle de tens,o..............................................12
+ Introduo
*este relat3rio apresentado um mtodo de controle de um motor
DC por meio do microcontrolador P+C, utili#ando a lin!ua!em de
pro!rama',o C:
As ati%idades desen%ol%idas en%ol%eram con;ecimentos de
eletr<nica e pro!rama',o, porm, como ser demonstrado tam.m
neste relat3rio, o resultado o.tido apenas eletronicamente =para a
mesma finalidade> n,o t,o preciso e est%el quanto o o.tido por
meio da pro!rama',o:
Portanto, este pro/eto %isa mostrar a import?ncia e a.ran!6ncia da
pro!rama',o num e8emplo prtico e simples:
Este documento foi estruturado como se!ue: *esta se',o,
foram citadas as idias iniciais do pro/eto, assim como a moti%a',o
inicial para a reali#a',o do mesmo: A &e',o 2 contm os o./eti%os do
pro/eto: *a &e',o 0 est,o todas as fundamenta'5es te3ricas, os
procedimentos reali#ados, instrumentos utili#ados e todo o detal;ar do
pro/eto: *a se',o 4 encontra@se as considera'5es finais e as
conclus5es o.tidas com a reli#a',o do pro/eto:

, -.#etivos
A pesquisa ora documentada te%e como o./eti%o !eral propor um
modelo de controle de motor DC utili#ando um microcontrolador P+C:
Apesar de ser um e8emplo simples e prtico, a sua a.ran!6ncia que
fundamenta o o./eti%o principal do pro/etoA mostrar como a
pro!rama',o pode ser uma solu',o simples e %i%el para pro/etos de
controles comumente feitos eletronicamente:
Dentre os o./eti%os especBficos da referida pesquisa podem ser
citadosA =i> promo%er a rota',o do motor quando acionado por .ot5esC
=ii> utili#ar estes mesmos .ot5es para controlar a lar!ura de pulso do
PD(C e =iii> (ostrar a efici6ncia de e8ecu',o do pro/eto:
2ais o./eti%os s3 fa#em sentido quando analisados
macroscopicamenteA possB%el rotacionar o mesmo motor utili#ando
apenas componentes eletr<nicos, porm estes sofrem muita
interfer6ncia do meio, e8i!em tcnicas especificas em sua monta!em
e muitas %e#es apresentam imprecis5es que precisam ser tratadas E
parte: Ftili#ando o microcontrolador, todos esses efeitos s,o
redu#idos, alm da praticidade e precis,o proporcionadas: Para
aplica'5es cotidianas, portanto, esta uma solu',o muito %i%el:
/ Fundamentao %e!rica
A presente se',o tratar da concep',o, e8ecu',o, analise e
corre',o de erros do pro/eto:
/0+ 1 Concepo
A idia do pro/eto sur!iu .aseada numa matria da re%ista
(ecatr<nica 1cil, Ed:0G em que ela prop5e o controle do motor DC
utili#ando a portal serial de um PC:
Figura + 9 Circuito proposto pela re%ista para esta aplica',o
- pro/eto apresentado, porm, mostrou duas in%ia.ilidades
iniciaisA porta.ilidade e coer6ncia: Da maneira que o pro/eto
apresentado, o P+C n,o tem suas funcionalidades .em e8ploradas
enquanto que a interface proposta para o PC torna@se desnecessria,
diante da utili#a',o dos .ot5es tam.m propostos: E relacionado E
porta.ilidade, o pro/eto ro.usto demais para a funcionalidade
fa#endo com que ;a/a desperdBcios de espa'os, alimenta'5es, etc:
2endo em %ista essas in%ia.ilidades, foi criado um no%o pro/eto em
que a comunica',o serial n,o se fa#ia mais necessria =e8tin!uindo
tam.m o uso do (AH202C&E> e ;a%eria uma si!nificati%a redu',o no
circuito: Para tanto, foi utili#ado um Iit de desen%ol%imento e uma
proto.oard para au8ilio:
Com tais altera'5es, a idia do pro/eto esta%a conce.ida e este,
ent,o esta%a pronto para ser e8ecutado:
/0, 2 E3ecuo
Para e8ecu',o, foi utili#ado o P+C 1J14KK0, com um cristal de
20(L#, o Iit de desen%ol%imento, um motor DC de 0$, e um circuito a
parte de prote',o para o motor:
+nicialmente, o pro/eto foi inteiramente desen%ol%ido no
proto.oard, porm ficou inst%el e com mal@contato e at mesmo
interfer6ncia de demais dispositi%os, tornando essa e8ecu',o fal;a e
descartada:
Com o Iit de desen%ol%imento da (icroMa.s =1i!ura 2>, pode@se
fa#er n,o s3 a pro!rama',o do P+C como tam.m a sua
implementa',o: *otou@se um mel;or desempen;o e mel;or
esta.ilidade:
Figura , 9 Nit de desen%ol%imento da (icoMa.s
+nicialmente o motor era alimentado por uma fonte e8tra, com 0$:
A alimenta',o do Iit de desen%ol%imento era de K$, ent,o, por
praticidade, a fonte e8tra foi su.stituBda e, com pequenas altera'5es
no c3di!o, foi capa# de usar a alimenta',o do pr3prio Iit, porm
limitado a 0$ para o motor:
Com a modula',o de pulso proporcionada pelo PD( do P+C,
implementou@se .ot5es de li!aOdesli!a e de acelera',o =positi%a ou
ne!ati%a>: +sso ser%iu para compro%ar a mo.ilidade da op',o feita em
utili#ar pro!rama',oA nada no circuito precisou ser alterado para que
no%as fun'5es fossem criadas:
Por fim, o motor foi acoplado E um ;elic3ptero de .rinquedo para
fins demonstrati%os:
Figura 4 9 Lelic3ptero utili#ado no pro/eto
/0/ 2 5nlises e corre6es de erros do pro#eto
1oi o.ser%ado que, ao decrementar a acelera',o, o PD( era
redu#ido at determinado ponto e ent,o muda%a de polaridade, e
continua%a a decrescer: 2al comportamento era indese/ado, portanto a
fai8a de %aria',o do perBodo do PD( ficou limitada entre 1P e K12, o
que !arantia que nem o decrescimento in%ertesse o pulso, e nem o
acrescimento e8cedesse os 0$ suportados pelo motor: QAne8o AR
-.ser%ou@se tam.m que o .ot,o li!aOdesli!a s3 reali#a%a a
opera',o uma %e#, ent,o no%amente alterou@se o c3di!o para que
este funcionasse sempre: QAne8o 7R
-utro comportamento indese/ado =mas que n,o era e8atamente
um erro> era a necessidade de apertar %rias %e#es o mesmo .ot,o
para o incrementoOdecremento: Ao incluir um comando ST;ileU e um
delaV, .asta%a pressionar o .ot,o e mante@lo pressionado para fa#er
%ariar a lar!ura de pulso do PD(: QAne8o CR
2odos esses procedimentos de pro!rama',o foram feitos com o
au8Blio dos pro!ramas P+C C Compiler e do P+CIit, ferramentas
essenciais para o desen%ol%imento do pro/eto:
4 Considera6es Finais
A principal contri.ui',o desta pesquisa foi /ustamente mostrar que
nem sempre uma solu',o completamente eletr<nica mais pratica: W
de%er do en!en;eiro sa.er utili#ar as ferramentas disponB%eis e ter
.om senso para, em determinadas circunst?ncias optar pela
pro!rama',o: 1oram mostrados os erros que puderam ser
minimi#ados e at erradicados com a mudan'a de perspecti%a do
pro/eto e a praticidade que a pro!rama',o proporcionou nas solu'5es,
tornando@a mais %i%el:
Com os mesmos instrumentos, puderam@se adicionar fun'5es,
controlar %alores especBficos, tornando a aplica',o mais precisa e
prtica:
Do mesmo /eito que foi demonstrado num ;elic3ptero, tal sistema
pode ser aperfei'oado para as mais di%ersas aplica'5es do cotidiano:
efer7ncias 8i.liogrficas
(arqu#, D: ": Controle de motor CC pela porta serial do PC: *D5
*ecatronica Fcil9 Edi',o 0G:
5ne3o 5 2 C!digo de controle de tenso
Este ane8o contm o c3di!o destinado ao controle de tens,o do
motor utili#ado:
#include <18F4550.h>
#device ADC=10
#fuses HS,NOD!,NO"#O!$C!,NO%&"
#use del'()cl*c+=,0000000-
#de.ne /O!AO1 "0N1D1
#de.ne /O!AO, "0N1D,
#de.ne /O!AO1%02A# "0N1D3
sh*45 lei5u4'6
7'in)-8

in519 du5(6
sh*45 li:'17*5*46

se5u;1cc;1)CC"1"<-6

se5u;15i7e41,)!,1D0&1/=14, ,55, 1-6
se5u;1ADC1;*45s)'ll1'n'l*:-6
se5u;1'dc)ADC1C%OC>10N!$#NA%-6

se51;?711du5(),59-6

?hile)1-8



?hile)@in;u5)/O!AO1- AA du5( <= 51,-
8
du5( B= 56
se51;?711du5()du5(-6
*u5;u515*::le)"0N1/0-6
del'(17s)100-6
C


?hile)@in;u5)/O!AO,- AA du5( >= 19- 8
du5( D= 56
se51;?711du5()du5(-6
*u5;u515*::le)"0N1/0-6
del'(17s)100-6
C


if)@in;u5)/O!AO1%02A#--8
if)li:'17*5*4 == 0-8
du5( = 06
se51;?711du5()du5(-6

C
else8
du5( = ,596
se51;?711du5()du5(-6
li:'17*5*4 = Eli:'17*5*46
?hile)@in;u5)/O!AO1%02A#-- 8C
C



se51;?711du5()du5(-6
C
C
C
5ne3o 8 2 C!digo de controle liga:desliga
Este ane8o contm o c3di!o destinado ao controle de tens,o do
motor utili#ado:
#include <18F4550.h>
#device ADC=10
#fuses HS,NOD!,NO"#O!$C!,NO%&"
#use del'()cl*c+=,0000000-
#de.ne /O!AO1 "0N1D1
#de.ne /O!AO, "0N1D,
#de.ne /O!AO1%02A# "0N1D3
sh*45 lei5u4'6
7'in)-8

in519 du5(6
sh*45 li:'17*5*46

se5u;1cc;1)CC"1"<-6

se5u;15i7e41,)!,1D0&1/=14, ,55, 1-6
se5u;1ADC1;*45s)'ll1'n'l*:-6
se5u;1'dc)ADC1C%OC>10N!$#NA%-6

se51;?711du5(),59-6

?hile)1-8



?hile)@in;u5)/O!AO1- AA du5( <= 51,-
8
du5( B= 56
se51;?711du5()du5(-6
*u5;u515*::le)"0N1/0-6
del'(17s)100-6
C


?hile)@in;u5)/O!AO,- AA du5( >= 19- 8
du5( D= 56
se51;?711du5()du5(-6
*u5;u515*::le)"0N1/0-6
del'(17s)100-6
C


if)@in;u5)/O!AO1%02A#--8
if)li:'17*5*4 == 0-8
du5( = 06
se51;?711du5()du5(-6

C
else8
du5( = ,596
se51;?711du5()du5(-6
li:'17*5*4 = Eli:'17*5*46
?hile)@in;u5)/O!AO1%02A#-- 8C
C



se51;?711du5()du5(-6
C
C
C
5ne3o C 2 C!digo de controle dos .ot6es
Este ane8o contm o c3di!o destinado ao controle de tens,o do
motor utili#ado:
#include <18F4550.h>
#device ADC=10
#fuses HS,NOD!,NO"#O!$C!,NO%&"
#use del'()cl*c+=,0000000-
#de.ne /O!AO1 "0N1D1
#de.ne /O!AO, "0N1D,
#de.ne /O!AO1%02A# "0N1D3
sh*45 lei5u4'6
7'in)-8

in519 du5(6
sh*45 li:'17*5*46

se5u;1cc;1)CC"1"<-6

se5u;15i7e41,)!,1D0&1/=14, ,55, 1-6
se5u;1ADC1;*45s)'ll1'n'l*:-6
se5u;1'dc)ADC1C%OC>10N!$#NA%-6

se51;?711du5(),59-6

?hile)1-8



?hile)@in;u5)/O!AO1- AA du5( <= 51,-
8
du5( B= 56
se51;?711du5()du5(-6
*u5;u515*::le)"0N1/0-6
del'(17s)100-6
C


?hile)@in;u5)/O!AO,- AA du5( >= 19- 8
du5( D= 56
se51;?711du5()du5(-6
*u5;u515*::le)"0N1/0-6
del'(17s)100-6
C


if)@in;u5)/O!AO1%02A#--8
if)li:'17*5*4 == 0-8
du5( = 06
se51;?711du5()du5(-6

C
else8
du5( = ,596
se51;?711du5()du5(-6
li:'17*5*4 = Eli:'17*5*46
?hile)@in;u5)/O!AO1%02A#-- 8C
C



se51;?711du5()du5(-6
C
C
C

Das könnte Ihnen auch gefallen