Você está na página 1de 13

CLAUDIO ADO MARTINS DE PAULA

Projeto ROV
SERRA
2012
Claudio Ado Martins de Paula
Projeto ROV
Traal!o desen"ol"ido durante a dis#i$lina de
projeto interdisciplinar% #o&o $arte da
a"alia'o re(erente ao ter#eiro $eriodo)
Pro(esor*a+,
SERRA
2012
INTRODUO
O controle em malha fechada a base da automao industrial, deste modo,
neste trabalho mostrado um ponto de partida para a captao do sinal,
processamento e interveno no controle da profundidade de um rov.
A-uisi'o de dados
Para a medio da profundidade foi utilizado um sensor de presso e atravs de
alguns clculos, facilmente obtida a profundidade. O comando do projeto foi todo
executado em volts, esse fato dificulta a obteno de um sensor ade!uado. "as
com alguma pes!uisa foi encontrado o sensor "P#$%$&P, !ue atende aos
re!uisitos para teste com profundidade at % metro. O mesmo foi encapsulado
deixando somente o pino de tomada de presso em contato com a gua.
O projeto contemplava a obteno da temperatura da gua atravs de parte de
sensor de temperatura digital, desses utilizados para medir febre, mas pareceu um
desvio do objetivo e foi retirado.
O controle de posio horizontal feito manualmente atravs de c'mera
O sinal de retorno do sensor enviado para uma placa arduino uno e
posteriormente enviado ao computador..
L./i#a
( l)gica parte mais trabalhada neste projeto. Partindo de como deve ser o
funcionamento, foi especificado !ue o rov teria um controle em malha fechada de
profundidade. ( ideia base ler um valor de profundidade desejada, captar o valor
de retorno do sensor de presso, calcular a profundidade, comparar o valor
desejado e o valor real da profundidade atravs de um controle pid e fazer as
corre*es se necessrio.
+eguindo a l)gica estabelecida, foi montado o programa para o arduino da
seguinte forma,
-include .P/&0v%.h1
double +etpoint, /nput, Output2
int motore3, motord34, prof3$2
int mov2
char entrada2
double agg5p36, agg5i3$.7, agg5d3%.72
double cons5p3%, cons5i3$.$, cons5d3$.72
P/& m8P/&9:/nput, :Output, :+etpoint, cons5p, cons5i, cons5d, &/;<=>?2
void setup9?
@
/nput 3 9A$$ B analog;ead9$??2
+etpoint 3 4$$2
+erial.begin 9A4$$?2 CCsetup comunicao entre arduino e computador
m8P/&.+et"ode9(D>O"(>/=?2 CCliga P/&
pin"ode 97, /EPD>?2
pin"ode 9motore, OD>PD>?2
pin"ode 9motord, OD>PD>?2
F
void loop9?@
int man2
man 3 digital;ead 97?2
+erial.print 9Gmodo G?2
+erial.print 9man?2
+erial.print 9GHnG?2
if 9man 33%?@ CCcontrole em manual
control0man9?2
F else @
control0auto9?2 CCcontrole automatico de profundidade
F
F
void control0auto9?@
/nput 3 9analog;ead9$??2
+erial.print 9Gcontrole automatico, entrada em G?2
+erial.print 9/nput?2
double gap 3 abs9+etpointB/nput?2
if9gap.%$?
@
m8P/&.+et>unings9cons5p, cons5i, cons5d?2 CCajuste mais para menos overshoot.
F
else
@
m8P/&.+et>unings9agg5p, agg5i, agg5d?2 CCmaior valor de para ajuste proporcional.
F
m8P/&.=ompute9?2
analogIrite96,Output?2 CCsaJda motor sobe e desce.
prof 3 map9/nput, A$$, $, $, %$$?2
+erial.print 9G e saJda em G?2
+erial.print 9Output?2
+erial.print 9GHnG?2
+erial.print 9G profundidade em G?2
+erial.print 9prof?2
+erial.print 9GHnG?2
F
void control0man9?@
+erial.print 9Gcontrole manualG?2
+erial.print 9GHnG?2
entrada 3 +erial.read9?2
if 9entrada 33 KaK?@
es!uerda9?2
F else if 9entrada 33 KdK?@
direita9?2F
else if 9entrada 33 KfK?@
frente9?2
F
else if 9entrada 33 KLK :: mov . 74?@ CCsubir
mov39movM%$?2
analogIrite96, mov?2
+erial.print 9mov?2
dela8 9%$$$?2
F else if 9entrada 33 KsK :: mov 1 $?@
mov39movB%$?2
analogIrite96, mov?2
+erial.print 9mov?2
dela8 9%$$$?2
F else @
parar9?2
F
dela8 9%$$?2
F
void direita9?@
analogIrite 9motore,$?2
analogIrite 9motord,7?2
+erial.print 9GdireitaG?2
+erial.print 9GHnG?2
dela8 9%$$$$?2
F
void es!uerda9?@
analogIrite 9motore,7?2
analogIrite 9motord,$?2
+erial.print 9Ges!uerdaG?2
+erial.print 9GHnG?2
dela8 9%$$$$?2
F
void frente9?@
analogIrite 9motore,7?2
analogIrite 9motord,7?2
+erial.print 9GfrenteG?2
+erial.print 9GHnG?2
dela8 9%$$$?2
F
void parar9?@
analogIrite 9motore,$?2
analogIrite 9motord,$?2
+erial.print 9GpararG?2
+erial.print 9GHnG?2
dela8 9$$?2F
(lgumas constantes podem ser mudadas)
Co&ando el0tri#o
O circuito trabalha com volts. N executado em sua maoir parte pela placa
arduino e uma parte menor para o acionamento da ponte O l47$6.

O arduino uno ligado ao computador comandava o acionamento da ponte O,
fazendo uso de optoacopladores PE7. (s pontes por sua vez acionavam trQs
bombas 64$RPO. Soram utilizados optoacopladores por!ue a placa arduino
estava com problemas na resepo do sinal do sensor devido a ruJdo.
<lemento atuador
Para movimentao do ;ov foram utilizados bombas 64$RPO alimentados por
%7 T.
Me#1ni#a
( principio, a estrutura do ;OT no faz parte do foco desse relat)rio, mas pra
esclarecer foi montada uma estrura em tubo de pvc de U pol. ( bomba utilizada
para subida e descida do ;OT foi modificada, cortada uma parte e colocada uma
hlice para maior propulso.
Soram ajustada a densidade do corpo para ser levemente maior !ue a densidade
do fluido, ou seja a tendencia do ;ov afundar. ( subida do mesmo realizada
pelo bomba. Ea !ual, a rotao depende do sensor de presso e controle P/&.

Você também pode gostar