Upload
caio-nunes-bustamante-reis
View
221
Download
0
Embed Size (px)
Citation preview
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
1/33
ANEXO 7
RELATÓRIO FINAL
PIBIC/PIBITI/CNPq/IFSP
Nome do Bolsista inicial: Hugo Bernardino da Silva
Nome do Bolsista Substituto: Caio Nunes Bustamante Reis
Nome do Orientador: Ricardo Pires
Título do Projeto: Criação de nter!ace "ara Parametri#ação de Sistema de Controle$ut%nomo &icrocontrolado de &otores de Corrente Contínua
'ig(ncia da Bolsa: )*+),+-)*- . /*+)0+-)*/
INTRODUÇÃO
$ utili#ação de microcontroladores no controle de "rocessos 1!re2uente3 devido . "recisão3 bai4a necessidade de manutenção3durabilidade3 taman5o redu#ido e con6abilidade7
Por1m3 isto re2uer a atuação de um es"ecialista em"rogramação7 8le dever9 receber uma descrição do "roblema edever9 escrever um "rograma a ser e4ecutado "elo microcontrolador7sto re2uer3 tamb1m3 um tem"o consider9vel7
Pro"e;se a2ui a criação de uma inter!ace 2ue "ermitir9 ageração autom9tica da2ueles "rogramas de !orma amig9vel e r9"ida3a "artir da de6nição de valores "ara um conjunto de "ar
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
2/33
PROPOSIÇÃO
Criar uma inter!ace 2ue "ermita 2ue usu9rios não es"ecialistas
na "rogramação de microcontroladores "ossam3 !9cil e ra"idamente3es"eci6car "rogramas "ara a2ueles dis"ositivos a"enas "elade6nição de um conjunto de "ar
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
3/33
RESULTADOS OBTIDOS
Mês 1 ao mês 4: Escolha de um modelo de microcontrolador, estudo de suaarquitetura e de sua programação;
Primeiramente !oi reali#ado um estudo e levantamento deconte?do bibliogr96co "ara embasar a "es2uisa3 no site do!abricante3 em !Aruns3 livros e a"ostilas3 e "ode;se claramente"erceber 2ue o &SP@/) "ossui algumas características 2ue odi!erencia dos demais microcontroladores do mercado3 "or e4em"lo3"ossui um modo de economia de energia muito interessante "araa"licaçes embarcados3 1 "ossível !a#er c9lculos com *E bits3 clocGinterno de *E&H#3 *) "inos de +O3 - B de memAria Ias5777
Joi construída uma "lata!orma de testes3 "es2uisado diversosmodelos de controladores e decidido utili#ar o FN-,K 2ue controladois motores e su"orta PL&7
O"tou;se "or !a#er um circuito3 onde as saídas dos motores6cassem na mesma "laca7 8 e4iste uma "roteção !eita com doisdiodos Sc5ottG= ligados a cada saída do circuito3 2ue tem o objetivoatenuar o ruído gerado "elo motor 2uando alimentado em PL&7 8 osdiodos do ti"o Sc5ottG= "or terem condução mais r9"ida3e4terminando o ruído ainda em seu início7
O desen5o do Fa=out !oi !eito no so!tMare $R8S3 utili#ando oscomandos es"ecí6cos desse so!tMare e conclui;se 2ue seria mel5or!a#er uma PC de duas !aces3 "ois economi#aria muito es"aço7 Comum lado das !aces em aterramento autom9tico7
$ "arte mec
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
4/33
urante os testes !oram analisados os "rogramas 2ue serão utili#adosno "rograma 6nal como conversores $3 entradas e saídas digitais3tem"ori#adores3 contadores3 PL& e is"la= de FC7
$ imagem abai4o re"resenta a relação da Faunc5Pad com a 88nergia3 mostrando a nomenclatura de "rogramação e os "inoscorres"ondentes
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
5/33
Mês 4: elimitação do conjunto de "roblemas 2ue o sistema ser9ca"a# de resolver
8stamos desenvolvendo um estudo "reliminar "ara determinar2uais os ti"os de sensores serão lidos "elo dis"ositivo7 8stão em
an9lise sensores ca"acitivos3 aceler%metros3 giroscA"ios3 c5aves 6mde curso entre outros 2ue "ermitam a leitura "elo microcontrolador"ara tomada de decises7
No dis"la= a"arecerão o"çes dos ti"os de sensores a seremanalisados durante o !uncionamento3 2ue serão selecionados "elousu9rio e !ornecidos "ar
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
6/33
de"endendo do caso3 construção de um a "artir de com"onentesA"ticos7
Mês 6: H9 uma biblioteca "ara o com"ilador 8nergia 2ue "ermite
escrever no is"la= FC !rases com mais de *E caracteres3 atrav1s da!unção scrollQ dessa biblioteca 1 "ossível escrever !rases 2uerotacionam "ara direita ou "ara es2uerda a 6m de a"arecerem "orcom"leto7 Por1m a biblioteca tem uma limitação de @) caracteres "orlin5a "ara rotação3 mais caracteres 2ue isso o "rograma "ula oscaracteres e4cedentes "ara a outra lin5a do dis"la=3 bagunçando aescrita da !rase7 ado isso3 as "erguntas "ara "arametri#ação não"odem ultra"assar os @) caracteres limites 2ue devem ser osu6ciente "ara cada "ergunta7 Outras limitaçes 1 o !ato da !unçãoscroll não agir inde"endente entre as duas lin5as3 ou seja3 aoativarmos essa !unção3 a escrita nas duas lin5as do dis"la= são
rotacionadas e3 tamb1m3 o !ato das letras com caracteres es"eciaisnão a"arecerem corretamente3 assim não 1 "ossível usar o ç ou o ãna escrita do dis"la= "or e4em"lo7
8studando mais a "rogramação da biblioteca scrollQ docom"ilador e !a#endo algumas alteraçes necess9rias conseguiu;secontornar duas das limitaçes da biblioteca7 Sendo 2ue agora 1"ossível o scroll inde"endente entre as lin5as3 onde uma lin5a "odese manter "arada en2uanto a"enas a outra se rotaciona3 e tamb1m 1"ossível a escrita de !rases com mais de @) caracteres3 comomostrado no "rograma do ane4o B7 $inda não !oi "ossível resolver a
limitação dos caracteres es"eciais7Pes2uisando "elo sensor de velocidade 2ue ser9 utili#ado3 o"tou;se
"or escol5er um encoder A"tico "or seu bai4íssimo custo emcom"aração com outros sensores7 Por1m esse ti"o de sensor tr9suma di6culdade no tratamento do sinal3 di!erente de outros sensoresde velocidade 2ue !oram vistos3 como o tac%metro7 O encoder A"ticonão gera um sinal de saída analAgico corres"ondente . velocidade domotor e sim um "ulso digital de saída 2ue varia a !re2u(nciacon!orme a velocidade do motor7 Nesse caso a leitura da velocidade"elo microcontrolador ser9 atrav1s de um "rograma interno 2ue
cronometre o tem"o 2ue cada "ulso leva "ara dar e assim calcular avelocidade em RP&7
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
7/33
Jonte: T5oma#ini3 7 e $lbu2uer2ue3 P7 >7 B73 Sensores ndustriais:
Jundamentos e $"licaçes3 rica7
8sse ti"o de sensor em com"aração com os outros3 "or ser umsensor A"tico3 não a"resenta a limitação !ísica de desgaste "aram94ima rotação do motor controlado "or não estarem aco"lados umno outro diretamente3 mas a"resenta uma limitação eletr%nica 2uede"ender9 da ca"acidade de c5aveamento do rece"tor A"tico nosensor e da !re2u(ncia de !uncionamento do microcontrolador7 Tantoo sensor 2uanto o microcontrolador não são ca"a#es de !a#er a leiturade velocidade do motor se este a"resentar rotação muito elevada7
$ssim3 res"eitando;se as limitaçes de ambos com"onenteseletr%nicos3 2ue embora e4istam di6cilmente serão atingidas "elomotor controlado3 "ois trabal5am com uma altíssima ta4a de!re2u(ncia "ara a2uisição e mani"ulação de dados3 ser9 "ossível amedição da velocidade7
$ im"ortação do sensor mencionado !oi reali#ada e assim como osensor ultrass%nico e o dis"la= de FC3 o "ra#o "ara entrega 1 dea"ro4imadamente /) dias7 8n2uanto isso começou;se uma "es2uisa"ara o desenvolvimento da "rogramação 2ue ser9 ca"a# de !a#er aleitura dos "ulsos e converte;los em RP& "ara leitura do usu9rio7 O
disco "ara geração dos "ulsos "elo sensor A"tico e 2ue 6car9aco"lado ao motor ser9 !eito artesanalmente utili#ando uma "laca deP'C3 j9 2ue o mesmo disco não acom"an5a o sensor ad2uirido "elainternet7
$nalisando alguns e4em"los de "rogramaçes 2ue !a#em a leiturado sensor de velocidade ad2uirido3 uma "rogramação "rA"riacomeçou a ser desenvolvida "or entender;se 2ue 1 "ossívelsim"li6car as "rogramaçes j9 e4istentes7 $ssim3 considerando 2ue odisco 2ue gerar9 os "ulsos conten5a a"enas >& ori!ício em uma desuas e4tremidades3 o "rograma descrito !a# a leitura da velocidade
atrav1s da di!erença de tem"o 2ue o disco leva "ara gerar OS"ulsos3 ou seja3 >&$ volta com"leta3 esse tem"o 1 convertido em
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
8/33
RP& e mostrado na tela ane4o C7 8ssa "rogramação ainda não 1ca"a# de analisar o sentido de rotação do motor controlado3 masacrescentando mais um ori!ício no disco 2ue não seja do lado o"ostoao "rimeiro e !a#endo algumas alteraçes no algoritmo es"era;se serca"a# de medir a velocidade e o sentido de rotação do motor7
Pes2uisando acerca dos encoders A"ticos "ara medição develocidade3 descobriu;se 2ue . maioria não são ca"a#es de medir osentido de rotação junto com a velocidade3 o 2ue 1 o caso do sensorA"tico ad2uirido3 "ara 2ue o mesmo "ossa medir o sentido de rotaçãodo motor seria necess9rio im"lementar outro sensor A"tico igual aoad2uirido3 mas 2ue 6casse dis"osto em de!asagem ao "rimeiro nasaberturas do disco aco"lado ao motor7 ada essa di6culdade3 adeterminação do sentido de rotação do motor não ser9 autom9tica3 esim !ornecida ao microcontrolador "elo usu9rio3 no momento da"arametri#ação inicial do motor7
Mês 7: niciou;se a montagem de um modelo "rotAti"o "ara testese integração entre microcontrolador3 dis"la=3 teclado e"arametri#açes do motor7 8 ao se iniciar a cone4ão dos "eri!1ricos"ercebeu;se um "roblema 2uanto a colocação de todos os "eri!1ricosnecess9rios "ara montagem da inter!ace7 Como j9 !oi dito durante odesenvolvimento desse "rojeto3 uma das maiores de6ci(ncias domicrocontrolador utili#ado3 &SP@/)3 1 seu n?mero limitado de "ortasde +O3 assim não seria "ossível a dis"osição de todos "eri!1ricos"ro"ostos7 Para solucionar o "roblema3 o teclado 2ue inicialmente era
uma matri# de teclas de /4@ 2ue utili#ava 0 "inos do &SP@/) "araseu !uncionamento3 !oi substituído "or tr(s botes "us5 Button3 decontatos normalmente abertos N$3 2ue utili#am a"enas / "inos do&SP@/)7
$ssim3 "ara a escol5a num1rica de valores durante a !ase decon6guração dos "ar
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
9/33
"ro"ostos corres"ondentes a 2uantidade de "ortas dis"oníveis "ara&SP@/)3 6cou:
o E "ortas "ara o is"la= de FC
o / "ortas "ara os botes Pus5 Button
o - "ortas "ara a Ponte Ho * "orta "ara o sensor de velocidade encoder
o - "ortas "ara o sensor de dist
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
10/33
Para os "us5 buttons um terminal de cada !oi ligado ao UNen2uanto os outros terminais !oram ligados ao microcontrolador3con!orme a tabela:
Pus5 Buttons
Cone4ão&SP@/)Pino escriçã
o
)* >" Pino *@P*7E
)- oMn Pino *DP*70
)/ 8nter Pino )0
P*7D
O sensor ultrass%nico 2ue "ossui tr(s terminais tamb1m !oiconectado con!orme a tabela:
Sensor>ltrass%nico Cone4ão
&SP@/)Pino escrição
)* 'cc V/3/v
)- Trig Pino E P*7@
)/ 8c5o Pino D P*7/
)@ UN UN
Por ?ltimo !oi conectado o sensor de velocidade do motor:
8ncoderCone4ão
&SP@/)Pino escrição
)* UN UN
)- Out Pino - P*7)
)/ 'cc V/3/v
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
11/33
$ "onte H3 2ue servir9 de driver "ara o motor em "es2uisaser9 conectada aos "inos , e *) P-7* e P-7- do &SP@/)3 "ois são"inos 2ue o microcontrolador "ossui com saída PL&7
Com o con5ecimento da dis"osição de todos os "eri!1ricosligados ao microcontrolador3 começou;se o desenvolvimento do"rograma 2ue !ornecer9 as "erguntas "ara "arametri#ação econ6guração do motor e sensores7
niciou;se3 tamb1m3 um estudo "r1vio da "onte H 2ue ser9utili#ada como driver de "otencia "ara o motor3 !oi levado em conta asugestão do antigo bolsista de utili#ar o circuito integrado F-K,3 mas"elas mudanças no "rojeto e utili#ação de a"enas um motor3 outrosmodelos de drivers !oram "es2uisado7
Mês +: Pelos estudos reali#ados sobre a "onte H o"tou;se "or
usar o circuito integrado F-K,N con!orme sugerido "elo bolsistaanterior7 $"esar de ser um C "ara o controle de dois motores e o"rojeto sA conter um motor3 1 o C "ara esse 6m mais !9cil e baratode se encontrar no mercado e suas es"eci6caçes atendem muitobem aos "ro"Asitos de controle7
$ "onte H !unciona ligando o motor ao microcontrolador atrav1sde 2uatro transistores3 dois transistores das diagonais são ativados"or ve# "ara dar ao motor um sentido de rotação e "oder de inversãodessa rotação3 "ela inversão nessas du"las de transistores7 Cada
du"la de transistores ativa o motor numa "olaridade inversa da outra78sses transistores são utili#ados como c5aves no circuito e "odem seracionados com uma tensão muito menor 2ue a tensão nominalutili#ada no motor3 assim3 o microcontrolador ativa os transistorescom os /3/v e os transistores controlam o motor com os *-vnominais7 $bai4o segue o diagrama de blocos re"resentandointernamente as cone4es do C7
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
12/33
Com a "onte;H em mãos3 esta !oi soldada sobre uma "laca de!enolite e interligada . so2uetes "ara !a#er sua cone4ão com as!ontes de alimentação3 microcontrolador e motor7
8 !e#;se a montagem de como 6caria dis"osto o dis"la=3 botes3sensor ultrass%nico3 enconder3 motor e driver 6sicamente3 ligando;osem seus res"ectivos "inos no microcontrolador7
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
13/33
Para !acilitar a "rogramação e diminuir o uso da memAria domicrocontrolador com as mensagens no dis"la=3 a !unção scrollQ !oiabandonada e cada !rase a"arecer9 "or eta"as no dis"la=3 divididas acada / segundos "ara visuali#ação do usu9rio7 Caso a !rase não caibano dis"la=3 ela 1 dividida em "artes 2ue caibam e cada "arte a"arece"or / segundo no dis"la= "ara 2ue o usu9rio "ossa ler cada "arte emontar a !rase em sua cabeça7 $ssim3 o algoritmo de "arametri#açãoe con6guração começou a ser desenvolvido seguindo esse novomodelo de !rases7
Mês ,: Para con6guração e "arametri#ação do "rograma base edo motor3 o usu9rio dever9 res"onder a uma s1rie de "erguntasatrav1s do teclado3 2ue a"arecerão na tela do dis"la= FC7 $s"erguntas deverão ser res"ondidas numa se2u(ncia 2ue in!orma ao"rograma "rinci"al 2uais sensores estão alocados ao motor e como omotor deve reagir "ara esses sensores3 essas in!ormaçes serão"rocessadas "elo microcontrolador 2ue atuar9 no motor7 O usu9rioser9 instruído no "rA"rio dis"la= como dever9 "roceder em cadaeta"a de "erguntas7 Se a mensagem de instrução não necessitar deuma res"osta do usu9rio3 ela 6car9 visível "or um tem"o e ser9
mudada "ara a "rA4ima mensagem7$ "rimeira mensagem 2ue a"arecer93 ser9 uma mensagem de
boas vindas e em seguida começarão as mensagens com instruçes e"erguntas7
1- &ensagem de boas vindas 2ue 6car9 visível "or algunssegundos no momento 2ue o controlador 1 ligado7
Ol93 bem vindo ao PSC$7Q nter!ace "ara Parametri#açãode Sistema de Controle $ut%nomo7
.- $ "rA4ima mensagem ser9 com instruçes "ara utili#ação
dos botes nas res"ostas das "erguntas7
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
14/33
>tili#e os botes u" e doMn "ara navegar entre as o"çese enter "ara con6rmar7Q
/- $2ui começam as "erguntas "ara "arametri#ação7 Comoserão utili#ados a"enas dois sensores "ara a demonstraçãodo "rojeto3 as o"çes de "arametri#ação !oram limitadas3mas "oderiam abranger 2uantos sensores !ossemnecess9rios7
4- S"!so' %" 0"o#(%a%" 213:
Parametri#ação da velocidade:Q
$uto detectar veloc7 ma4imaWQ
SimQ ou NãoQ alternados "elos botes u" e doMn eselecionados "elo botão enter
Se SimQ3 ser9 !eita a detecção da velocidade m94ima emostrada na tela7 O valor m94imo da velocidade ser9 guardadonuma vari9vel do "rograma e utili#ado "ra !uturascon6guraçes7
Se NãoQ3 o usu9rio dever9 entrar com a velocidade m94imanominal do motor7
8ntre com a velocidade m94ima do motor em r"mQ
'elocidade &a4Q
XXQ O cursor aguardar9 at1 2ue o usu9rio escol5a o valor e"ressione enter
5- S"!so' %" S"!$(%o %" 'o$ao 2.3:
Parametri#ação do SentidoQ
$uto detectarWQ
SimQ ou NãoQ
Se SimQ3 seria !eita a detecção do sentido e memori#adoem uma vari9vel7 Como o "rojeto não "ossuí um sensor "aradetecção de sentido o "rograma acusa a menssagem:
Sensor não encontradoQ 8 muda "ara a detecção manual7
Se NãoQ3 o motor entrar9 em bai4a rotação "ara 2ue o"rA"rio usu9rio in!orme manualmente ao "rograma 2ual 1 seusentido de rotação7
Yual o sentido de rotação atual do motorWQHor9rioQ ou $nti;5orarioQ a res"osta 1 guardada em uma
vari9vel76- S"!so' %" D(s$!#(a 2/3: ultrass%nico
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
15/33
Como cada sensor ultrass%nico "ode a"resentarcaracterísticas di!erentes "ara leitura m94ima e mínima dadistltrass%nico !unciona com alcance m94imo
de -)) cm e alcance mínimo de / cm7Q
$"As a mensagem a"arecer "or com"leto3 o "rograma"assar9 "ara a "rA4ima eta"a de "arametri#ação7
8scol5a o modo de con6guração: *; 'elocidades e rotaçãoes"ecí6cas "ara distancias 64as7 -; 'elocidades"ro"orcionais "ara uma !ai4a de distanciasQ
&odoWQ
*; Ji4asQ ou -; Pro"orcionaisQ
Se o usu9rio o"tar "ela "rimeira o"ção3 o "rograma"erguntar9 2uantas velocidades di!erentes deseja con6gurar ees"erar9 2ue o usu9rio insira os valores desejados7
Yuantas velocidades deseja con6gurarWQ
N de velocidadesQ
XXQ O cursor aguardar9 at1 2ue o usu9rio escol5a o valor e"ressione enter
'elocidade *QXXQ
istancia *Q
XXQ
RotaçãoWQ
*; Hor9riaQou -; $nti;Hor9riaQ
8ssas mensagens "oderão ser re"etidas con!orme o n?merode velocidades di!erentes escol5idas3 res"eitando um limite
m94imo dentro da "rogramação7
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
16/33
Se a con6guração escol5ida "elo usu9rio !or "aravelocidades "ro"orcionais3 este então de6nir9 uma distanciam94ima e mínima e uma velocidade m94ima e mínima "ara 2ueo "rograma calcule uma s1rie de velocidades corres"ondentesao intervalo de dist
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
17/33
sons na !ai4a de !re2u(ncia de @)GH# são detectados e emitidos "elosensor7 Para o c9lculo 2ue o sensor reali#a na determinação dadist
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
18/33
O tem"o 2ue o sinal do eco 6ca em alta varia con!orme adist
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
19/33
A!"8o A 9 Programa "ara leitura do Teclado matri# de teclas7
+['arredura "ara matri# de teclas[+
++ Constantes:const int &arrom Z - ++ - a @ Botes
re!erentes as colunas do tecladoconst int $marelo Z /const int $#ul Z @
const int 'ermel5o Z D ++ D a K Botoesre!erentes
as lin5as do tecladoconst int Faranja Z Econst int 'erde Z 0const int Ro4o Z K
void setu" \
++ e6ne con6guração dos "inos "in&ode&arrom3 NP>TXP>FF>P "in&ode$marelo3 NP>TXP>FF>P "in&ode$#ul3 NP>TXP>FF>P
"in&ode'ermel5o3 O>TP>T "in&odeFaranja3 O>TP>T "in&ode'erde3 O>TP>T "in&odeRo4o3 O>TP>T]
void loo"\
++'eri6ca teclado
digitalLrite'ermel5o3 FOL digitalLriteFaranja3 FOL digitalLrite'erde3 FOL digitalLriteRo4o3 FOL
i! digitalRead$#ul ZZ FOL ^^digitalRead&arrom ZZ FOL ^^digitalRead$marelo ZZ FOL\ teclado ]]
void teclado\++Feitura da lin5a vermel5a
digitalLrite'ermel5o3 FOL digitalLriteFaranja3 HUH digitalLrite'erde3 HUH digitalLriteRo4o3 HUH
M5ile digitalRead&arrom ZZ FOL \dig_i` Z *
digitalLriteBee"3 HUH digitalLriteO"en3 FOL ] M5ile digitalRead$marelo ZZ FOL \dig_i` Z -
digitalLriteBee"3 HUH digitalLriteO"en3 FOL ] M5ile digitalRead$#ul ZZ FOL \dig_i` Z /
digitalLriteBee"3 HUH digitalLriteO"en3 FOL ]
++Feitura da lin5a Faranja digitalLrite'ermel5o3 HUH digitalLriteFaranja3 FOL
digitalLrite'erde3 HUH digitalLriteRo4o3 HUH
M5ile digitalRead&arrom ZZ FOL \dig_i` Z @
digitalLriteBee"3 HUH digitalLriteO"en3 FOL ] M5ile digitalRead$marelo ZZ FOL \dig_i` Z D
digitalLriteBee"3 HUH digitalLriteO"en3 FOL ] M5ile digitalRead$#ul ZZ FOL \dig_i` Z E
digitalLriteBee"3 HUH
digitalLriteO"en3 FOL ] ++Feitura da lin5a 'erde digitalLrite'ermel5o3 HUH digitalLriteFaranja3 HUH digitalLrite'erde3 FOL digitalLriteRo4o3 HUH
M5ile digitalRead&arrom ZZ FOL \dig_i` Z 0
digitalLriteBee"3 HUH digitalLriteO"en3 FOL ] M5ile digitalRead$marelo ZZ FOL \dig_i` Z K
digitalLriteBee"3 HUH digitalLriteO"en3 FOL ] M5ile digitalRead$#ul ZZ FOL \dig_i` Z ,
digitalLriteBee"3 HUH digitalLriteO"en3 FOL ] ++Feitura da lin5a Ro4a digitalLrite'ermel5o3 HUH digitalLriteFaranja3 HUH digitalLrite'erde3 HUH digitalLriteRo4o3 FOL
M5ile digitalRead&arrom ZZ FOL
\dig_i` Z [digitalLriteBee"3 HUH digitalLriteO"en3 FOL ] M5ile digitalRead$marelo ZZ FOL \dig_i` Z )
digitalLriteBee"3 HUH digitalLriteO"en3 FOL ] M5ile digitalRead$#ul ZZ FOL \dig_i` Z
digitalLriteBee"3 HUH digitalLriteO"en3 FOL ]
++Correção dos Feds incadores digitalLriteBee"3 FOL digitalLriteO"en3 HUH
++Calculo da "osição do digito
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
20/33
iVV ]
A!"8o B 9 Programa scroll inde"endente e com mais de @)caracteres7
+[ Figação do is"la= FC ao &SP@/): ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ FC "in Connect to ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; )* ; UN UN3 "ot )- ; 'CC VD'3 "ot )/ ; Contrast Pot Mi"er )@ ; RS PinK P-7) )D ; R+L UN )E ; 8N Pin, P-7* )0 ; B) UN )K ; B* UN ), ; B- UN *) ; B/ UN ** ; B@ Pin*) P-7- *- ; BD Pin** P-7/
*/ ; BE Pin*- P-7@ *@ ; B0 Pin*/ P-7D *D ; BFV VD' *E ; BF; UN ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ [+
include Fi2uidCr=stal75
Fi2uidCr=stal lcdP-X)3 P-X*3 P-X-3 P-X/3 P-X@3 P-XD
void setu" \ lcd7begin*E3 -]
void loo" \ lcd7"rint8scol5a Sensores dela=*)))
lcd7setCursor)3* lcd7"rint*;Jim de curso -;'elocidade /;istanci dela=D)) int 4 Z * M5ile4 -D\ lcd7setCursor43) ++ &antem a lin5a * "arada lcd7"rint8scol5a Sensores lcd7scrollis"la=Fe!t
dela=/D) 4VV]
lcd7clear lcd7"rint8scol5a Sensores
lcd7setCursor)3* lcd7"rintdade /;istancia @;Posição 4Z* M5ile4 -D\ lcd7setCursor43) ++ &antem a lin5a * "arada lcd7"rint8scol5a Sensores lcd7scrollis"la=Fe!t
++ Mait a bit: dela=/D) 4VV]
++ dela= at t5e end o! t5e !ull loo": dela=*))) lcd7clear
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
21/33
]
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
22/33
A!"8o 9 Programa "ara leitura de velocidade7
include Fi2uidCr=stal75
volatile unsigned long tem"o*3 tem"o-volatile int 4 Z )
Fi2uidCr=stal lcdP-X)3 P*X*3 P*X-3 P-X/3 P-X@3 P-XD
int troca Z )int velocidade
void setu"\ lcd7begin*E3 - "in&odeP-X*3 O>TP>T "in&odeP-X-3 O>TP>T "in&odeP*XD3 NP>TXP>FF>P "in&odeP*X)3 NP>T attac5nterru"tP*X)3 time3 RSNU
]
void loo"\ analogLriteP-X*3 troca M5ile digitalReadP*XD ZZ FOL\ troca VZ *) dela=D)) ] i!troca -DD\ troca Z ) ] i!4 Z -\ velocidade Z E)))) + tem"o- ; tem"o*
4 Z ) i! velocidade *)))\ lcd7clear lcd7setCursor)3) lcd7"rint'elocidade lcd7setCursor**3) lcd7"rinttrocaf-DD3 8C lcd7setCursor)3* lcd7"rintvelocidade ] ]]
void time
\ i! 4 ZZ )\ tem"o* Z millis ] i! 4 ZZ*\ tem"o- Z millis ] 4VV]
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
23/33
A!"8o D 9 Programa "ara leitura de distancia7
include Fi2uidCr=stal75
de6ne trigPin Ede6ne ec5oPin D
Fi2uidCr=stal lcdP-X)3 P*X*3 P*X-3 P-X/3 P-X@3 P-XD
void setu" \ lcd7begin*E3 - "in&odetrigPin3 O>TP>T "in&odeec5oPin3 NP>T]
void loo" \ int duration3 distance digitalLritetrigPin3 HUH dela=&icroseconds*))) digitalLritetrigPin3 FOL
duration Z "ulsenec5oPin3 HUH distance Z duration+- + -,7* i! distance Z -)) ^^ distance Z )\ lcd7clear lcd7setCursor)3) lcd7"rintistancia lcd7setCursor)3* lcd7"rintOut o! range ] else \ lcd7clear lcd7setCursor)3) lcd7"rintistancia lcd7setCursor)3*
lcd7"rintdistance lcd7"rint cm ] dela=D))]
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
24/33
A!"8o E 9 Programa de controle7
include Fi2uidCr=stal75
volatile unsigned long tem"o*3 tem"o-3tem"o/3 tem"o@
volatile int 4 Z )
Fi2uidCr=stal lcdP-X)3 P*X*3 P*X-3 P-X/3P-X@3 P-XD
int S"eed Z K))int controle Z )int mostraint velocidade
void setu"
\ lcd7begin*E3 -
"in&odeP-X*3 O>TP>T "in&odeP-X-3 O>TP>T "in&odeP*XD3 NP>TXP>FF>P "in&odeP*X)3 NP>T attac5nterru"tP*X)3 time3 RSNU]
void loo"\ analogLriteP-X*3 controle M5ile digitalReadP*XD ZZ FOL\ S"eed ;Z *)) dela=D)) ]
i! S"eed )\ S"eed Z K)) ] i! S"eed mostra\ controle;; dela= controle V *)) i! controle )\
controle Z ) ] ] i! S"eed mostra\
controleVV dela= controle V *)) i! controle -DD\ controle Z -DD ] ] i!4 Z -\ velocidade Z E)))) + tem"o- ;tem"o* 4 Z ) i! velocidade *)))\ mostra Z velocidade tem"o/ Z millis lcd7clear
lcd7setCursor)3) lcd7"rint'elocidade lcd7setCursor**3) lcd7"rintS"eed3 8C lcd7setCursor)3* lcd7"rintmostra ] ]]
void time\ i! 4 ZZ )\ tem"o* Z millis
] i! 4 ZZ*\ tem"o- Z millis ] 4VV]
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
25/33
A!"8o F 9 Programa 6nal7
+[ T5e is"la= circuit: ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ FC "in Connect to ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; )* ; UN UN )- ; 'CC V/7/v )/ ; Contrast UN )@ ; RS PinK P-7) )D ; R+L UN )E ; 8N Pin/ P*7* )0 ; B) UN )K ; B* UN ), ; B- UN *) ; B/ UN ** ; B@ Pin)@ P*7- *- ; BD Pin** P-7/ */ ; BE Pin*- P-7@ *@ ; B0 Pin*/ P-7D
*D ; BFV VD' *E ; BF; UN ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
T5e Pus5 Buttons circuit: ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ Pus5 Button Connect to ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; )* ; >" Pin*@ P*7E )- ; oMn Pin*D P*70 )/ ; 8nter Pin0 P*7D ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
T5e >ltrasonic circuit: ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ >ltrasonic Connect to ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; )* ; 'cc V/7/' )- ; Trig PinE P*7@ )/ ; 8c5o PinD P*7/ )@ ; UN UN ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ T5e Sensor S"eed circuit: ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ )* ; UN UN
)- ; Out Pin- P*7) )/ ; 'cc V/7/' ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ [+
++ nclui a biblioteca do is"la=include Fi2uidCr=stal75
++e6ne "inos do sensor ultrassonicode6ne ec5oPin D ++P*7/ ; 8c5o in"ut7de6ne trigPin E ++P*7@ ; Trig out"ut7
++̂ niciali#a a biblioteca do dis"la= com osnumeros dos ++^de"inos da inte!ace7
Fi2uidCr=stal lcdP-X)3 P*X*3 P*X-3 P-X/3 P-X@3P-XD
++^e6ne os "inos dos bottons e as variaveisdo ++^"rograma7const int sto" Z P*X) ++interru"ção7const int enter Z P*XDconst int u" Z P*XEconst int doMn Z P*X0int duration3 distance ++^variaveis "ara mediçãoda
++^distancia7int rig5t Z P-X* ++sentido 5orario7int le!t Z P-X- ++sentido anti;5orario7int sent ++Sentido de set"oint7String nome*String nome-unsigned long timeunsigned long tem"o*unsigned long tem"o-long int intma4 Z *))))))int v!alse Z ) ++'elocidade !alsa descartada7int intmin Z )
int nv Z ) ++̂ Numero de velocidadesdesejadas no
++^modo 64o7int num Z ) ++̂ Numero da velocidadedesejada no
++^modo 64o7int vel_*)` ++^$rra= "ara arma#enar valores de
++ ^velocidade no modo 64o7int dis_*)` ++^$rra= "ara arma#enar valores de
++^distancia no modo 64o7int bv Z ) ++'elocidade anterior "ara o modo64oint bd Z / ++istancia anterior "ara o modo64o7
int dma4" Z ) ++^istancia ma4ima no modo++^"ro"orcional7int dmin" Z ) ++^istancia minima no modo
++^"ro"orcional7int vma4" Z ) ++^'elocidade ma4ima nomodo
++^"ro"orcional7int vmin" Z ) ++^'elocidade minima no modo
++^"ro"orcional7int di3 d! ++^istancias inicial e 6nal "ra omodo
++^"ro"orcional7int vi3 v! ++^'elocidades inicial e 6nal "ra omodo
++^"ro"orcional7
int vma4 Z )int ctrl Z ) ++PL& de Controle da velocidade7int vs" Z ) ++'elocidade de set"oint7int ds" Z ) ++istancia de set"oint7
int o" Z ) ++^O"eração ; 'elocidade3istancia3
++^Rotação3 Con6guração7int v Z ) ++'ariavel de 'elocidade7int 4 Z )int = Z )int # Z )
++'ariaveis do &enu Central7int 'isor Z )int &odo _/` Z \*3 )3 )]
+[modo_)` Z * ; Con6gmodo_)` Z - ; ReCon6gWW
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
26/33
modo_*` Z * ; 'elocidade 64asmodo_*` Z - ; 'elocidade "ro"orcionaismodo_*` Z / ; 'elocidade unica sem HC;SR)@
modo_-` Z * ; istancias 64asmodo_-` Z - ; istancias "ro"orcionais
modo_/` Z * ; Rotação Horariamodo_/` Z - ; Rotação $nti;5oraria[+
void setu" \ ++ e6ne o numero de colunas e lin5as do FC7
lcd7begin*E3 -
++e6ne os "inos dos botes com entrada7 "in&odeu"3 NP>TXP>FF>P "in&odedoMn3 NP>TXP>FF>P "in&odeenter3 NP>TXP>FF>P "in&oderig5t3 O>TP>T "in&odele!t3 O>TP>T "in&odetrigPin3 O>TP>T "in&odeec5oPin3 NP>T "in&odesto"3 NP>T ++e6ne o "ino de interru"ção7 attac5nterru"tsto"3 tem"o3 RSNU
++ &ensagem de boas vindas7 lcd7"rint Ola3 bem;vindo lcd7setCursor@3* lcd7"rintao PSC$ dela=/)))
++ &ensagem de instruçes7 lcd7clear lcd7setCursor/3) lcd7"rint>tili#e os lcd7setCursor)3* lcd7"rintbotoes u" e doMn dela=/))) lcd7clear lcd7setCursor-3) lcd7"rint"ara navegar lcd7setCursor)3* lcd7"rintentre as o"coes dela=/))) lcd7clear lcd7setCursor-3) lcd7"rinte enter "ara lcd7setCursor/3* lcd7"rintcon6rmar7 dela=/)))
++Primeira con6guração7
con6g]
void loo" \ ++'isor em Con6g7 i! 'isor ZZ )\ 4 Z ) nonterru"ts lcd7clear lcd7setCursor)3) lcd7"rintPressione enter lcd7setCursor)3* lcd7"rint"+ recon6gurar7 M5ile4 ZZ )\ i! digitalReadu" ZZ FOL ^^digitalReaddoMn ZZ FOL\
4 Z * mudavisor ]
i! digitalReadenter ZZ FOL\ con6g 4 Z * ] ] ] ++'isor em 'elocidade7
i! 'isor ZZ *\ 4 Z ) interru"ts i! &odo_*` ZZ *\ vel64as ]
i! &odo_*` ZZ -\ vel"ro" ] nome* Z 'elocidade nome- Z Stringvs" lcd7clear lcd7setCursor)3) lcd7"rintnome* lcd7"rintnome- lcd7"rint lcd7setCursor)3* lcd7"rintCarregando777 M5ile 4 ZZ )\ controle i! digitalReadu" ZZ FOL ^^digitalReaddoMn ZZ FOL\ 4 Z * mudavisor ] ] ] ++'isor em istancia7
i! 'isor ZZ -\ nonterru"ts M5iledigitalReadu" ZZ HUH digitalReaddoMn ZZ HUH\ i! &odo_-` ZZ *\ dis64as ] i! &odo_-` ZZ -\ dis"ro" ] ] mudavisor ] ++'isor em Sentido7
i! 'isor ZZ /\ nonterru"ts M5iledigitalReadu" ZZ HUH digitalReaddoMn ZZ HUH\ lcd7clear lcd7setCursor@3) lcd7"rintSentido i! sent ZZ rig5t\ lcd7setCursor@3* lcd7"rintHorario ]
i! sent ZZ le!t\ lcd7setCursor-3* lcd7"rint$nti;5orario ] dela=D)) ] mudavisor ]]++Jec5a void loo"7 void mudavisor \ i! digitalReadu" ZZ FOL\ 'isor;; i! 'isor )\ 'isor Z / ]
i! 'isor ZZ - &odo _-` ZZ )\ 'isor Z * ]
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
27/33
dela=D))]
i! digitalReaddoMn ZZ FOL\ 'isorVV i! 'isor /\ 'isor Z ) ] i! 'isor ZZ - &odo _-` ZZ )\
'isor Z / ] dela=D)) ]]++Jec5a void mudavisor7 void con6g \ nonterru"ts analogLriteP-X*3 -DDanalogLriteP-X-3 -DD ++Parametri#ação da velocidade7 lcd7clear lcd7setCursor*3) lcd7"rintParametri#acao lcd7setCursor*3* lcd7"rintda velocidade: dela=/))) lcd7clear lcd7setCursor*3) lcd7"rint$uto detectar lcd7setCursor*3* lcd7"rintveloc7 ma4imaW dela=/))) lcd7clear lcd7setCursor*3) lcd7"rint$uto detectarW lcd7setCursorD3* lcd7"rint*; Sim nome* Z *; Sim nome- Z -; Nao 4 Z ) varXbinario i! 4 ZZ )\ ++etecção automatica de 'ma47 ctrl Z -DD 4 Z ) v Z ) nome* Z 'elocidade nome- Z &a4 interru"ts vma4ima nonterru"ts vma4 Z v 4 Z ) ] ++Jec5a etecção automatica de 'ma47
i! 4 ZZ *\ ++etecção manual de 'ma47 lcd7clear lcd7setCursor-3) lcd7"rint8ntre com a lcd7setCursor/3* lcd7"rintvelocidade dela=/))) lcd7clear lcd7setCursor)3) lcd7"rintma4ima do motor lcd7setCursor@3* lcd7"rintem r"m dela=/)))
lcd7clear lcd7setCursor)3)
lcd7"rint'elocidade &a4 lcd7setCursor)3* lcd7cursor
nome* Z 'elocidade &a4 4 Z *E v Z vma4 intma4 Z *)))))) intmin Z ) varXinteiro vma4 Z v v Z )
] ++Jec5a etecção manual de 'ma47
++Parametri#ação do sentido7 lcd7clear lcd7setCursor*3) lcd7"rintParametri#acao lcd7setCursor-3* lcd7"rintdo sentido: dela=/)))
lcd7clear lcd7setCursor*3) lcd7"rint$uto detectarW lcd7setCursorD3* lcd7"rint*; Sim 4Z) nome* Z *; Sim nome- Z -; Nao varXbinario
i! 4 ZZ )\ ++etecção sem o sensor7 lcd7clear lcd7setCursor/3) lcd7"rintSensor nao lcd7setCursor/3* lcd7"rintencontrado dela=/))) 4 Z * ] i! 4 ZZ *\ analogLriterig5t3 -)) ++^aciona rotação embai4a
++^ velocidade7 lcd7clear lcd7setCursor*3) lcd7"rintYual o sentido lcd7setCursor/3* lcd7"rintde rotacao dela=/))) analogLriterig5t3 -*D lcd7clear lcd7setCursor)3) lcd7"rintatual do motorW dela=/))) analogLriterig5t3 -/)
lcd7clear
lcd7setCursor*3) lcd7"rintRotacao atual: lcd7setCursor/3* lcd7"rint*; Horaria 4Z) nome* Z *; Horaria nome- Z -; $nti;5oraria varXbinario analogLriterig5t3 -DD i! 4 ZZ *\ rig5t Z P-X- le!t Z P-X* ]]
++Parametri#ação da distancia7
lcd7clear lcd7setCursor*3) lcd7"rintParametri#acao
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
28/33
lcd7setCursor-3* lcd7"rintda distancia: dela=/))) lcd7clear lcd7setCursor-3) lcd7"rintYual sensor lcd7setCursor-3* lcd7"rint>ltrassonico
dela=/))) lcd7clear lcd7setCursor)3) lcd7"rintesta utili#andoW dela=/))) lcd7clear lcd7setCursor)3) lcd7"rint&odelo do sensor lcd7setCursor/3* lcd7"rint*; HC;SR)@ 4Z) nome* Z *; HC;SR)@ nome- Z -; Nen5um varXbinario
i! 4 ZZ )\ ++Sensor HC;SR)@7 lcd7clear lcd7setCursor*3) lcd7"rintSensor HC;SR)@ lcd7setCursor-3* lcd7"rint>ltrassonico dela=/))) lcd7clear lcd7setCursor-3) lcd7"rint!unciona com lcd7setCursor*3* lcd7"rintalcance ma4imo dela=/))) lcd7clear lcd7setCursor-3) lcd7"rintde -)) cm e lcd7setCursor*3* lcd7"rintalcance minimo dela=/))) lcd7clear lcd7setCursor/3) lcd7"rintde / cm7 dela=/)))
lcd7clear lcd7setCursor*3) lcd7"rint8scol5a o modo lcd7setCursor*3* lcd7"rintde con6guracao: dela=/))) lcd7clear
lcd7setCursor*3) lcd7"rint*7 'elocidades lcd7setCursor-3* lcd7"rinte rotacao dela=/))) lcd7clear lcd7setCursor)3) lcd7"rintes"eci6cas "ara lcd7setCursor)3* lcd7"rintdistancias 64as dela=/))) lcd7clear lcd7setCursor*3) lcd7"rint-7 'elocidades lcd7setCursor*3* lcd7"rint"ro"orcionais
dela=/))) lcd7clear lcd7setCursor*3)
lcd7"rint"ara uma !ai4a lcd7setCursor*3* lcd7"rintde distancias dela=/)))
lcd7clear lcd7setCursorE3) lcd7"rint&odoW
lcd7setCursor@3* lcd7"rint*; Ji4as 4Z) nome* Z *; Ji4as nome- Z -; Pro"orcionais varXbinario
i! 4 ZZ )\ ++ &odo Ji4os7 &odo_*` Z * &odo_-` Z * lcd7clear lcd7setCursor@3) lcd7"rintYuantas lcd7setCursor-3* lcd7"rintvelocidades dela=/))) lcd7clear lcd7setCursorD3) lcd7"rintdeseja lcd7setCursor-3* lcd7"rintcon6gurarW dela=/)))
lcd7clear lcd7setCursor)3) lcd7"rintN de velocidades lcd7setCursor)3* lcd7cursor v Z ) 4 Z *E intma4 Z *) intmin Z ) nome* Z N de velocidades varXinteiro nv Z v
!or int i Z ) i nv iVV\ num Z i V * lcd7clear ++64ando as velociades7 lcd7setCursor)3) lcd7"rint'elocidade lcd7setCursor**3) lcd7"rintnum3 8C
lcd7setCursor)3* lcd7cursor 4 Z ** v Z bv
intma4 Z vma4 intmin Z ) nome* Z 'elocidade varXinteiro vel_i` Z v bv Z v
lcd7clear ++64ando as distancias7 lcd7setCursor)3) lcd7"rintistancia lcd7setCursor*)3) lcd7"rintnum3 8C
lcd7setCursor)3* lcd7cursor 4 Z *) v Z bd
intma4 Z -)) intmin Z / nome* Z istancia
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
29/33
varXinteiro dis_i` Z v bd Z v
]++ !ec5a o !or
lcd7clear ++64ando o sentido7 lcd7setCursor@3) lcd7"rintRotacaoW
lcd7setCursor,3) lcd7setCursor/3* lcd7"rint*; Horaria 4Z) nome* Z *; Horaria nome- Z -; $nti;5oraria varXbinario i! 4 ZZ )\ sent Z rig5t ] i! 4 ZZ *\ sent Z le!t ] 4 Z )
]++ !ec5a o &odo Ji4os7
i! 4 ZZ *\ ++ &odo Pro"orcional7 &odo_*` Z - &odo_-` Z - 4 Z *E v Z )
lcd7clear ++64ando a distanciainicial7 lcd7setCursor)3) lcd7"rintist7 nicial lcd7setCursor)3* lcd7cursor nome* Z ist7 nicial intma4 Z -)) intmin Z / v Z / varXinteiro di Z v
lcd7clear ++64ando a velocidadeinicial7 lcd7setCursor)3) lcd7"rint'eloc7 nicial lcd7setCursor)3* lcd7cursor nome* Z 'eloc7 nicial intma4 Z vma4 intmin Z ) v Z ) varXinteiro vi Z v
lcd7clear ++64ando a distancia 6nal7 lcd7setCursor)3) lcd7"rintist7 Jinal
lcd7setCursor)3* lcd7cursor nome* Z ist7 Jinal intma4 Z -)) intmin Z / v Z di varXinteiro d! Z v
lcd7clear ++64ando a velocidade6nal7 lcd7setCursor)3) lcd7"rint'eloc7 Jinal lcd7setCursor)3* lcd7cursor nome* Z 'eloc7 Jinal
intma4 Z vma4 intmin Z ) v Z vi
varXinteiro v! Z v
lcd7clear ++64ando o sentido7 lcd7setCursor@3) lcd7"rintRotacaoW lcd7setCursor,3) lcd7setCursor/3*
lcd7"rint*; Horaria 4Z) nome* Z *; Horaria nome- Z -; $nti;5oraria varXbinario i! 4 ZZ )\ sent Z rig5t ] i! 4 ZZ *\ sent Z le!t ] 4 Z ) ]++ !ec5a o &odo Pro"orcional7 'isor Z - v Z ) ]++ !ec5a Sensor HC;SR)@ 4 ZZ ) i! 4 ZZ *\ ++Sem Sensor de distancia7 &odo_*` Z ) &odo_-` Z ) lcd7clear lcd7setCursor-3) lcd7"rint8scol5a uma lcd7setCursor)3* lcd7"rintvelocidade unica dela=/))) lcd7clear lcd7setCursor-3) lcd7"rintde trabal5o7 dela=/)))
lcd7clear ++64ando velociade ?nica7 lcd7setCursor)3) lcd7"rint'elocidade r"m
lcd7setCursor)3* lcd7cursor nome* Z 'elocidade r"m intma4 Z vma4 intmin Z ) 4 Z *E v Z ) varXinteiro vs" Z v
lcd7clear ++64ando o sentido7 lcd7setCursor@3) lcd7"rintRotacaoW lcd7setCursor,3) lcd7setCursor/3* lcd7"rint*; Horaria 4Z)
nome* Z *; Horaria nome- Z -; $nti;5oraria varXbinario i! 4 ZZ )\ sent Z rig5t ] i! 4 ZZ *\ sent Z le!t ] 4 Z *
'isor Z * v Z ) ] ++ Jec5a Sem Sensor de distancia 4 ZZ * v Z )] ++Jec5a void con6g7
++Seleção e Botes;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
void varXinteiro \
M5ile digitalReadenter hZ FOL\ time Z millis
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
30/33
M5ile digitalReadu" ZZ FOL v intma4\ lcd7noCursor vVV lcd7setCursor)3* lcd7"rintv3 8C i! millis ; time -)))\dela=D))]++Corre devagar7
i! millis ; time -)))\dela=/)] ++Correra"ido7 ] M5ile digitalReaddoMn ZZ FOL v intmin\ lcd7noCursor v;; lcd7clear lcd7setCursor)3) lcd7"rintnome* lcd7setCursor43) lcd7"rintnum3 8C lcd7setCursor)3* lcd7"rintv3 8C i! millis ; time -)))\dela=D))]++Corre devagar7 i! millis ; time -)))\dela=/)] ++Correra"ido7 ] ] dela= D))] ++!ec5a void varXinteiro7
void varXbinario \ M5iledigitalReadenter ZZ HUH\ i! digitalReadu" ZZ FOL ^^digitalReaddoMn ZZ FOL\ 4 Z h4 i! 4 ZZ )\ lcd7setCursor)3* lcd7"rintnome* dela=D)) ] i! 4 ZZ *\ lcd7setCursor)3* lcd7"rintlnnome- dela=D)) ] ] ]++ !ec5a botao enter dela=D))]++!ec5a varXbinario7++ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ++
++etecção de'ma4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
void vma4ima \ M5ile ctrl Z )\ dis"laiv analogLriterig5t3 ctrl ctrl ;Z D dela=*)) ] ctrl Z ) analogLriterig5t3 ) dela= /))) dis"laiv lcd7clear dela=D)) lcd7setCursor)3) lcd7"rint'elocidade &a4 lcd7setCursor)3*
lcd7"rintv lcd7"rint r"m M5ile ctrl Z -DD\
analogLriterig5t3 ctrl ctrl VZ D dela=*)) ] ctrl Z -DD]++Jec5a vma4ima7++ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ++
++Controle davelocidade;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++void controle\ analogLritesent3 ctrl dela= ctrl V *)) i! vs" v\ ctrl;; i! ctrl )\ ctrl Z ) ] ] i! vs" v\ ctrlVV i! ctrl -DD\ ctrl Z -DD ] ] dis"laiv] ++Jec5a controle7++ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ++
++&ostra velocidade domotor;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;void dis"laiv\ i!# Z -\ v!alse Z E)))) + tem"o- ; tem"o* # Z ) i! v!alse *))) v!alse Z )\ v Z v!alse lcd7clear lcd7setCursor)3) lcd7"rintnome* lcd7"rintnome- lcd7"rint lcd7setCursor)3* lcd7"rintv lcd7"rint r"m
] ]] ++Jec5a dis"laiv7++ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ++
++nterru"ção;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;void tem"o\ i! # ZZ )\ tem"o* Z millis ] i! # ZZ *\ tem"o- Z millis ]#VV
] ++6c5a tem"o7++ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ++
++'elocidade"ro"orcional;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
void vel"ro"\ i! di d! vi v!\ dma4" Z d!
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
31/33
dmin" Z di vma4" Z v! vmin" Z vi vs" Z vmin" V vma4" ; vmin"[ds" ;dmin"+dma4" ; dmin" ] i! di d! vi v!\ dma4" Z di
dmin" Z d! vma4" Z vi vmin" Z v! vs" Z vmin" V vma4" ; vmin"[ds" ;dmin"+dma4" ; dmin" ] i! di d! vi v!\ dma4" Z d! dmin" Z di vma4" Z vi vmin" Z v! vs" Z vma4" ; vma4" ; vmin"[ds" ;dmin"+dma4" ; dmin" ] i! di d! vi v!\ dma4" Z di dmin" Z d! vma4" Z v! vmin" Z vi vs" Z vma4" ; vma4" ; vmin"[ds" ;dmin"+dma4" ; dmin" ] ++= Z vs"[-DD+vma4 ++ctrl Z =f-DD # Z )] ++Jec5a void velo"ro" 7++ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ++
++istancias"ro"orcionais;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;void dis"ro"\ i! di d!\ dma4" Z di dmin" Z d! ] i! di d!\ dma4" Z d! dmin" Z di ] distmedida i! distance Z -)) ^^ distance Z )\ lcd7clear lcd7setCursor)3) lcd7"rintistancia i! dma4" Z distance distance Zdmin"\
ds" Z distance lcd7setCursor)3* lcd7"rintds" lcd7"rint cm h ] i! dma4" distance ̂ ^ distance dmin"\ lcd7setCursor)3* lcd7"rintdistance lcd7"rint cm ] ] i! distance -)) ^^ distance Z )\ lcd7clear lcd7setCursor)3) lcd7"rintistancia lcd7setCursor)3*
lcd7"rintSetada Z lcd7"rintds" lcd7"rint cm
] dela=D))] ++Jec5a dis "ro"7++ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ++
++'elocidades64as;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;void vel64as\ !or int i Z ) i nv iVV\ i! ds" ZZ dis_i`\ vs" Z vel_i` ] ] # Z )]++ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ++
++istancias 64as;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;void dis64as\ 4 Z ) distmedida i! distance Z -)) ^^ distance Z )\ lcd7clear lcd7setCursor)3) lcd7"rintistancia !or int i Z ) i nv iVV\ i! distance ZZ dis_i`\ ds" Z distance lcd7setCursor)3* lcd7"rintds" lcd7"rint cm h 4 Z * ] i! 4 ZZ ) \ lcd7setCursor)3* lcd7"rintdistance lcd7"rint cm ] ]]
i! distance -)) ^^ distance Z )\ lcd7clear lcd7setCursor)3) lcd7"rintistancia lcd7setCursor)3* lcd7"rintSetada Z lcd7"rintds" lcd7"rint cm]
dela=D))] ++Jec5a dis 64as7++ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ++
++&edição dadistancia;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;void distmedida\ digitalLritetrigPin3 HUH dela=&icroseconds*))) digitalLritetrigPin3 FOL duration Z "ulsenec5oPin3 HUH distance Z duration+- + -,7*]++ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ++
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
32/33
RONORAMA FINAL
Mês 4 " mês 5: 8s"eci6cação do conjunto de "ar
8/18/2019 CAIO - Anexo 7 Modelo Relatorio Final
33/33
REFER;NIAS
_*` OU$T$37 8ngen5aria de Controle &oderno3 Prentice;Hall
Brasil3 São Paulo3 -)**_-` Te4as nstruments3 $@/)7PJ3 &SP@/) $ssembler3 FinGer3 andFibrarian Programming Uuide3 -))/_/` Te4as nstruments3 SF$>)@,C7PJ3 &SP@/)4*44 Jamil= >sersUuide3 -))/7_@` U>SSOL3&7 8letricidade B9sica3 Prentice;Hall Brasil3 SãoPaulo3 -))D_D` Te4as nstruments3 &SP@/)!*@,7PJ3 &SP@/)4*/43&SP@/)4*@4 &i4ed Signal &icrocontroller3 datas5eet3 -))/7_E` P8R8R$3J73 &icrocontroladores &SP@/) ; Teoria e Pr9tica3 rica3São Paulo3 -)*)7_0` &cRoberts3 &7 $rduino b9sico7 São Paulo: Novatec3 3 -)**7
_K` T5oma#ini3 7 e $lbu2uer2ue3 P7 >7 B73 Sensores ndustriais:Jundamentos e $"licaçes3 rica7
DATA /S e enviado "ara o e;mail "ibice"ibiti-)*-kgmail7com "ara con5ecimento da
mailto:[email protected]:[email protected]