Sie sind auf Seite 1von 28

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL ESCOLA DE ENGENHARIA DEPARTAMENTO DE ENGENHARIA MECNICA ENERGIA E FENMENOS DE TRANSPORTE

CONSTRUO E OPERAO DE UM MEDIDOR DE VAZO VOLUMTRICA TIPO VENTURI


por

Daniel Savionek Francisco Kaderli Tiago Rathke

Trabalho Final da Disciplina de Medies Trmicas Professor Paulo Smith Schneider

Porto Alegre, julho de 2010.

RESUMO No presente trabalho desenvolvido um sistema de medio de vazo que atenda s caractersticas especficas de medio em uma faixa de 2 a 10 l/min, com baixa incerteza e com baixa perda de carga. O medidor projetado e construdo neste trabalho o tubo Venturi clssico, com a base de clculos e desenvolvimento derivados da equao de Bernoulli. Para leitura da vazo, obtida pela diferena entre as presses em diferentes regies do tubo Venturi, utilizou-se manmetros inclinados, os quais conferem uma melhor resoluo ao equipamento. O medidor Venturi foi calibrado por intermdio de medies experimentais em uma bancada hidrulica, a partir das quais se determinou uma curva de ajuste para o coeficiente de descarga. Alm disso, foi desenvolvido uma rotina computacional para efetuar o clculo da vazo, a partir das leituras de altura de coluna dgua nos manmetros. Os resultados de vazo medidos, aps calibrao do experimento, so comparados com os valores reais de referncia medidos pelo rotmetro empregado na calibrao, verificando-se baixos erros de medio, com um valor mximo em torno de 5%. PALAVRAS-CHAVES: Bernoulli, Venturi, Medidor de vazo

ii

ABSTRACT The present work develops a system of flow measurement. The system meets the specific features of flow measurement within range of 2 to 10 l/min, with low measurement uncertainty and low pressure drop. The meter designed and built in this work is the classic Venturi tube, with the basis of calculations and development derived from the Bernoulli equation. To read the flow, which is obtained by the difference between pressures in different regions of the Venturi tube, inclined pressure gauges was used, which give better resolution to the equipment. The Venturi meter was calibrated through experimental measurements in a hydraulic bench, which it was determined a curve of adjustment to the discharge coefficient. Furthermore, computer software was developed, to perform the calculation of flow rate, according to the readings from the height of the water column in the manometer. The results of flow measured after calibration of the experiment are compared with the actual values measured by reference flow meter used in the calibration, verifying low measurement error, with a maximum of 5 %. KEYWORDS: Bernoulli, Venturi, Flow meter

iii

SUMRIO RESUMO.................................................................................................................................... ii ABSTRACT ..............................................................................................................................iii SUMRIO ................................................................................................................................. iv LISTA DE FIGURAS ................................................................................................................ v LISTA DE TABELAS............................................................................................................... vi LISTA DE SMBOLOS ...........................................................................................................vii 1. INTRODUO ..................................................................................................................... 1 2. REVISO BIBLIOGRFICA .............................................................................................. 1 2.1. VAZO VOLUMTRICA ............................................................................................ 1 2.2. PRESSO ......................................................................................................................2 2.2.1. Medio de presso em escoamentos ......................................................................2 2.2.1.1. Presso esttica ou termodinmica ...................................................................2 2.2.1.2. Presso total ou de estagnao .........................................................................2 2.2.1.3. Presso dinmica ou cintica ............................................................................3 2.2.2.Instrumento para medio de presso ......................................................................3 2.2.2.1. Manmetro de tubo inclinado ...........................................................................3 3. FUNDAMENTAO ........................................................................................................... 3 4. PROJETO E CONSTRUO ............................................................................................... 5 4.1. PROJETO CONCEITUAL ............................................................................................. 5 4.2. DETALHAMENTO DO PROJETO ..............................................................................6 4.3 FABRICAO ...............................................................................................................7 5. CALIBRAO EXPERIMENTAL ...................................................................................... 9 6. CALCULADORA DE VAZO ......................................................................................... 10 7. RESULTADOS E ANLISES ........................................................................................... 11 8. CONCLUSES ................................................................................................................... 11 REFERNCIAS ....................................................................................................................... 12 APNDICES ............................................................................................................................ 13

iv

LISTA DE FIGURAS Figura 1 Escoamento em um bocal genrico (Fonte: FOX e MCDONALD, 1995 apud SCHNEIDER, 2007). ................................................................................................................. 4 Figura 2 Perda de carga em medidores por obstruo (Fonte: FOX e MCDONALD, 1995 apud SCHNEIDER, 2007). ......................................................................................................... 5 Figura 3 Vista dimtrica do tubo Venturi. ............................................................................... 6 Figura 4 Corte lateral do tubo Venturi, detalhe para dimenses e dimetros utilizados. ........ 6 Figura 5 Detalhe construtivo do tubo Venturi. ........................................................................ 7 Figura 6 Viso geral do medidor tubo Venturi. ....................................................................... 8 Figura 7 Detalhe da inclinao dos manmetros para uma melhor resoluo do equipamento................................................................................................................................ 8 Figura 8 Curva de ajuste para o coeficiente de descarga Cd. ................................................... 9 Figura 9 Software desenvolvido para o clculo da vazo do prottipo. ................................ 10

LISTA DE TABELAS Tabela 1 Medies experimentais para obteno do coeficiente de descarga Cd. ................... 9 Tabela 2 Resultados das medies com Venturi calibrado. .................................................. 11

vi

LISTA DE SMBOLOS

E Cd Q QR Qterica V h p h1 h2 h hvertical Dt D1

Massa especfica [kg/m] Acelerao da gravidade [m/s ] Razo entre dimetros [adimensional] Fator de velocidade de aproximao [adimensional] Coeficiente de descarga [adimensional] Vazo volumtrica [l/min] Vazo volumtrica real de referncia [l/min] Vazo volumtrica terica [l/min] Velocidade do fluido [m/s] Altura de coluna de gua [m] Presso [Pa] Altura de coluna dgua inclinada montante do medidor [m] Altura de coluna dgua inclinada jusante do medidor [m] Diferena de altura de coluna de gua inclinada [m] Diferena de altura de coluna de gua na vertical [m] Dimetro da obstruo [m] Dimetro da canalizao [m]

vii

1.

INTRODUO

A necessidade de se medir vazo surgiu h muitos sculos quando, depois de canalizar a gua para o consumo domstico, a administrao pblica descobriu uma fonte de arrecadao e estabeleceu taxas para o consumo do lquido. No sculo XX, a necessidade de se medir a vazo de fluidos em geral tornou-se de fundamental importncia, em decorrncia do crescimento da aplicao dos processos contnuos na indstria. A medio de vazo por medidores de obstruo, apesar de ser muito antiga, ainda amplamente utilizada. Entre esses medidores por obstruo, encontramos o tubo Venturi. O tubo Venturi um excelente medidor de vazo de obstruo que tem como principal caracterstica a baixa perda de carga imposta ao sistema. O presente trabalho tem como objetivo geral a construo de um medidor de vazo volumtrica para lquidos. Mais particularmente, um medidor capaz de operar na faixa de vazo de 2 a 10 litros por minuto. O prottipo construdo um medidor de vazo por obstruo do tipo Venturi. Alm disso, o trabalho apresenta os seguintes objetivos especficos: Imposio da menor perda de carga possvel Determinao das incertezas de medio associadas ao instrumento 2. REVISO BIBLIOGRFICA

2.1. VAZO VOLUMTRICA Segundo FOX et al, (2006), um fluido com velocidade v , em m/s, escoando em um tubo de rea transversal A , em , tem a sua vazo volumtrica Q, em , definida como: Q = vA (1)

Essa equao pode ser melhor definida levando em conta alguns parmetros, como a conservao de massa em volume de controle (V.C.) pr definido. A massa que entra nesse V.C. deve ser igual massa que sai dele, o que nos leva a equao da continuidade: (2) A primeira parcela da soma a taxa de variao de massa dentro do V.C. e a segunda parcela representa a taxa lquida de fluxo de massa atravs da superfcie de controle e sua soma resulta em zero justamente pela pr-definio de constncia de massa. Em casos especiais, a Equao (2) pode ser simplificada no caso de um escoamento incompressvel onde ( ) permanece constante. O primeiro termo pode ser reduzido zero, j que a integral de dV sobre todo o volume de controle simplesmente o volume total do V.C. e dividindo os dois termos por ( ), temos, para um V.C. constante, a simplificao da Equao (2) em: (3) Assim, essa integral para uma seo de superfcie de controle chamada de vazo em volume Q ( ). Para um escoamento incompressvel, essa vazo que entra em um V.C.

deve ser igual vazo que sai do mesmo. Sendo a rea transversal A ( de controle, a Equao (3) fica:

) do tubo a superfcie

(4) sendo a equao (4) a definio de vazo volumtrica. 2.2. PRESSO A presso P , em Pa, para um fluido em repouso, definida como sendo a fora F , em N, exercida pelo mesmo perpendicularmente a uma rea unitria A , em , (SCHNEIDER, 2007), expressa como: (5) Sendo a presso uma propriedade local do fluido, em uma situao esttica, ela tem uma grande dependncia da posio e no depende da direo (SCHNEIDER, 2007). Segundo White (2002) a presso em um fluido esttico uniforme varia apenas com a distncia vertical, no importando a forma do recipiente. O mesmo autor refere que a presso igual em todos os pontos em um plano horizontal no fluido, variando apenas com a profundidade do mesmo. 2.2.1. Medio de Presso em Escoamentos Em um fluido escoando dentro de um tubo, com certa velocidade, existem trs presses atuantes sobre ele que so: a presso de estagnao ou total, a presso dinmica ou cintica e a presso esttica ou termodinmica. 2.2.1.1. Presso esttica ou termodinmica A presso esttica aquela que atua nas paredes do tubo e pode ser obtida atravs de um instrumento de medio conectado a um pequeno orifcio feito na parede de interface do escoamento. Esse furo deve ser feito com muito cuidado, a fim de se evitar rebarbas ou qualquer irregularidade que possa perturbar a medio A medio da presso termodinmica de extrema importncia para se obter a velocidade e direo de um escoamento, alm de identificar o estado termodinmico do fluido (SCHNEIDER, 2007). 2.2.1.2. Presso total ou de estagnao A presso de estagnao medida quando o fluido desacelera at a velocidade zero por meio de um processo sem atrito (FOX et al, 2006). Assim, em um escoamento incompressvel, com diferenas de elevao desprezadas e sabendo que a velocidade de estagnao zero, temos a equao de Bernoulli reduzida a: (6) onde (Pa) a presso de estagnao e P (Pa) a presso esttica. O termo dinmica e v (m/s) a velocidade local do escoamento. a presso

2.2.1.3. Presso dinmica ou cintica A diferena entre a presso de estagnao presso dinmica, equacionada por: (Pa) e a presso esttica P (Pa) resulta na

(7) Desta relao podemos encontrar a expresso da velocidade local do escoamento, dada por: (8) 2.2.2. Instrumento para Medio de Presso 2.2.2.1. Manmetro de Tubo Inclinado Um manmetro de tubo inclinado um instrumento que serve para medir diferenciais de presso com maior preciso, j que tem a vantagem de operar com escalas de maior graduao que os manmetros verticais, para a mesma variao de presso (SCHNEIDER, 2007). Trs parmetros definem a sensibilidade do manmetro de tubo inclinado: a densidade do fluido manomtrico, a inclinao do tubo e a relao de dimetros. Esses parmetros devem ser os menores possveis a fim de se obter uma boa sensibilidade. O lquido manomtrico deve possuir a menor densidade relativa possvel, ser atxico, no inflamvel, possuir pequenas perdas por evaporao e ter uma colorao para melhorar sua visibilidade. A razo de dimetros deve ser a menor possvel para que a maior parte da variao no nvel do lquido ocorra no tubo de medio (FOX et al, 2006). 3. FUNDAMENTAO

A seguir apresentado o equacionamento empregado para a determinao da vazo volumtrica em medidores de vazo por obstruo para escoamentos incompressveis. O equacionamento visa estabelecer uma relao da vazo com a diferena de presso medida a montante e a jusante da obstruo. As expresses da vazo terica so obtidas a partir das equaes da continuidade e de Bernoulli, considerando-se um fluido ideal, em escoamento adiabtico e sem atrito. A equao de Bernoulli, aplicada a um fluido escoando ao longo de uma linha de corrente, dada por: (9) onde p a presso, a massa especfica do fluido, V a velocidade do escoamento, g a acelerao da gravidade e z a cota de altura do escoamento. No caso dos medidores de vazo por obstruo, a equao de Bernoulli deve ser aplicada em dois pontos de observao 1 e 2, antes e depois da obstruo respectivamente, como pode ser visualizado na figura abaixo.

Figura 1 Escoamento em um bocal genrico (Fonte: FOX e MCDONALD, 1995). Tomando-se ento as sees de observao 1 e 2 ao longo da linha de corrente, e assumindo que a massa especfica constante (escoamento incompressvel), que o escoamento permanente, sem atrito, sem diferena de cota z e com velocidade uniforme ao longo das sees 1 e 2, obtm-se:

(10) Tambm respeitando condies acima expostas, a equao da continuidade dada por:

(11) onde A1 e A2 representam, respectivamente, a rea da canalizao em 1 e a rea da veia contrada em 2, conforme pode ser visualizado na Figura 1. Combinando-se as equaes (10) e (11), obtm-se uma expresso para a velocidade na descarga da obstruo V2 e consequentemente para a vazo Q, em funo da diferena de presso:

(12)

A determinao do dimetro D2 difcil de ser executada. Dessa forma, no seu lugar emprega-se o dimetro da obstruo Dt, conforme a Figura 1, incorporado por intermdio da razo entre dimetros : (13)

que, por sua vez, incorporado pelo fator de velocidade de aproximao E, tal que: (14) Dessa forma, a equao (12) para a vazo pode ser reescrita como:

(15)

A equao acima uma expresso de vazo terica, no considerando as perdas devido ao atrito de escoamento. Para corrigir este problema, introduz-se o coeficiente adimensional de descarga Cd, tal que: (16)

Esta a equao final para clculo de vazo atravs de medidor por obstruo, em funo da diferena de presso p (p1 p2) medidas a montante e a jusante da obstruo. O coeficiente de descarga Cd pode ser obtido em tabelas em funo do nmero de Raynolds e do dimetro interno dos tubos, ou atravs de calibrao experimental. A diferena de presso p obtida atravs de tomadas de presso esttica medidas a montante e a jusante da obstruo, segundo a equao: p = ghvertical (17)

onde hvertical representa a diferena de altura vertical entre o tubo a montante e o tubo a jusante da obstruo. 4. PROJETO E CONSTRUO

4.1. PROJETO CONCEITUAL No projeto conceitual foram avaliados diversos tipos de medidores de vazo, tais como a placa de orifcio, bocais, Venturi, anemmetro de fio quente, ultrassom, tipo turbina, dentre outros. Porm, tendo em vista os objetivos propostos para este trabalho, principalmente em relao imposio de uma baixa perda de carga no medidor, optou-se pelo projeto do tubo Venturi. A baixa perda de carga imposta por este tipo de medidor pode ser visualizada na figura abaixo, em comparao com a placa de orifcio e o bocal.

Figura 2 - Perda de carga em medidores por obstruo (Fonte: FOX e MCDONALD, 1995).

Como se pode visualizar na figura acima, enquanto os medidores de placa de orifcio e bocal possuem uma perda de carga elevada, geralmente com valores acima de 50%, o tubo Venturi apresenta valores consideravelmente menores, com perdas de carga inferiores a 30%, justificando a sua escolha como o medidor de vazo a ser projetado. Alm disso, outro parmetro que influencia na perda de carga, a razo entre os dimetros da obstruo e da canalizao (), como tambm pode ser visualizado no grfico acima. Assim, adota-se como premissa de projeto, um valor de acima de 0,5. 4.2. DETALHAMENTO DO PROJETO Definido o tipo de medidor de vazo, parte-se para seu desenvolvimento. Com o auxlio de um software de CAD (Solidworks), o tubo Venturi foi desenhado respeitando as dimenses do sistema onde ele ser acoplado, e levando em considerao seus parmetros de projeto. Na figura abaixo pode-se visualizar o projeto do tubo Venturi em vista dimtrica.

Figura 3 - Vista dimtrica do tubo Venturi. Como citado no item 4.1, a razo entre os dimetros da obstruo e da canalizao () de suma importncia na influncia da perda de carga do medidor. Sabendo que o dimetro da canalizao D1 vale 21,4 mm, projetou-se o dimetro da obstruo Dt de 12,5mm, que corresponde a um valor de igual a 0,584, calculado de acordo com a equao (5). Este valor de est de acordo com o requisito definido no projeto conceitual. Pode-se visualizar na figura 4, todas as dimenses do Venturi projetado.

Figura 4 - Corte lateral do tubo Venturi, detalhe para dimenses e dimetros utilizados.

7 A partir do valor de , obtm-se um valor de fator de velocidade de aproximao E, de 1,063, de acordo com equao (14). Ainda, atravs do dimetro da obstruo, calcula-se a rea da obstruo At, chegando num valor de 1,227E-04 m. Podemos visualizar no corte lateral da figura 4, as tomadas de alta presso e de baixa presso, respectivamente. Alm disso, nas extremidades do Venturi foram projetados rebaixos para um acoplamento adequado na conexo tubo-medidor. As angulaes do cone convergente de 21 ( montante), e divergente de 15 ( jusante) foram adotados de acordo com especificaes de um tubo Venturi Clssico (DELME, 2003). Os desenhos de projeto do tubo Venturi encontram-se nos A e B. 4.3. FABRICAO O tubo Venturi foi fabricado a partir de uma barra de ao SAE 1045 atravs do processo de usinagem com tolerncias de 0,1mm. As paredes internas do medidor, aps serem usinadas, foram polidas, para gerar uma superfcie interna com baixa rugosidade, consequentemente, contribuindo para uma baixa perda de carga. A figura a seguir apresenta o tubo Venturi construdo em detalhe.

Figura 5 - Detalhe Construtivo do tubo Venturi. Nas sadas de tomadas de presso foram soldados canos metlicos para permitir o acoplamento das mangueiras conectadas ao manmetro. As mangueiras foram conectadas com abraadeiras nos canos metlicos para evitar vazamentos. Em cada extremidade do Venturi foram colados canos de PVC de com comprimento de 22 cm, conferindo montante, e jusante, um comprimento mnimo de dez dimetros cada. No cano a montante foi acoplado uma luva para permitir o acoplamento bancada de teste. No cano a jusante foi acoplado uma curva de 90. Os detalhes citados podem ser visualizados na figura a seguir. Para a uma leitura mais precisa das presses, para cada seo transversal foi utilizado duas tomadas de presso e a leitura indicada pelo manmetro a media destas leituras. Esta leitura media das presses possvel atravs da utilizao de anis piezomtricos (DELME, 2003) . A figura a seguir apresenta uma viso geral do medidor tubo Venturi.

Figura 6 - Viso geral do medidor tubo Venturi. Os 2 manmetros foram construdos com mangueiras transparentes de plstico, fixadas uma ao lado da outra. Elas foram fixadas num ngulo de 45 em relao ao eixo vertical em uma base de madeira, com o intuito de ampliar a resoluo do medidor. Foram colocadas escalas de medio atrs das mangueiras, para possibilitar a medio da diferena de altura de coluna de gua. A possibilidade mnima de leitura de 1 em 1 mm na posio inclinada. Assim, pela equao a seguir podemos chegar a uma leitura de variao mnima na posio vertical de 0,707 mm. hvertical = (h1-h2)sen(45) (18)

Na figura a seguir, pode-se visualizar a inclinao dos manmetros em 45 adotadas no medidor.

Figura 7 - Detalhe da inclinao dos manmetros para uma melhor resoluo do equipamento.

5.

CALIBRAO EXPERIMENTAL

O procedimento de calibrao experimental consiste na determinao do coeficiente de descarga Cd do Venturi, por intermdio de medies de vazo realizadas na bancada hidrulica disponibilizada pelo Laboratrio de Ensaios Trmicos e Aerodinmicos (LETA). A bancada composta por uma bomba hidrulica, uma vlvula de controle de vazo, um rotmetro e uma tomada hidrulica com rosca macho de de tubo PVC, a partir da qual o Venturi conectado. Aps passar pelo medidor Venturi, o escoamento liberado para o ambiente. Antes de iniciar o procedimento de medio necessrio certificar-se que no existem bolhas de ar nos tubos de tomada de presso. Para determinao do coeficiente de descarga Cd foram realizadas vrias medies, impondo vazes conhecidas, ajustadas pela leitura no rotmetro. Essas vazes so definidas como as vazes reais QR. A partir da leitura das alturas h1 e h2, calcula-se o h e o hvertical. Ento, com auxlio das equaes (15) e (17), para a massa especfica da gua de 997 kg/m3, acelerao gravitacional g de 9,81 m/s2, e fator de velocidade de aproximao E e rea da obstruo At, como definidos na seo 4 do trabalho, calcula-se os valores de vazo tericas Qterica. Assim, o coeficiente de descarga Cd pode ser obtido por: (19) A tabela a seguir apresenta os coeficientes de descarga Cd obtidos na calibrao experimental para valores de vazo real QR contidos na faixa de 2 a 10 l/min. Tabela 1 Medies experimentais para obteno do coeficiente de descarga Cd.

A partir dos dados acima, plota-se um grfico de disperso dos coeficientes de descarga Cd versus a variao de altura na vertical hvertical, como se pode visualizar na figura abaixo.

Figura 8 Curva de ajuste para o coeficiente de descarga Cd.

10

No grfico acima, os pontos em azul representam os valores do coeficiente de descarga Cd obtidos experimentalmente em funo do hvertical. A partir desses pontos insere-se uma curva de ajuste para o coeficiente de descarga Cd, representada por um polinmio de 4 ordem, como indicado pela linha vermelha do grfico acima. A curva adotada possui um coeficiente de correo R de 0,956, representando uma boa qualidade de ajuste. Assim, obtm-se a seguinte equao do coeficiente de descarga Cd em funo da variao do hvertical: Cd = -74282hvertical 4 + 16703hvertical 3 - 1333hvertical 2 + 45,01hvertical + 0,406 (20)

Esta equao ento empregada para determinao do coeficiente de descarga Cd usado na equao (16) para o clculo da vazo medida pelo Venturi construdo. 6. CALCULADORA DE VAZO

Juntamente com o prottipo, foi desenvolvido em paralelo, um software para o auxlio do calculo da vazo, levando em considerao todas as variveis mencionadas neste trabalho, e de acordo com o equacionamento apresentado na seo 3. Este software, denominado Vazo Express foi desenvolvido na linguagem de programao JAVA. O cdigo fonte do software pode ser visualizado no Apndice C. A figura abaixo, demonstra o layout do software, no qual possui comandos simples, e de fcil compreenso.

Figura 9 - Software desenvolvido para o clculo da vazo do prottipo. Para utilizao do software, basta visualizar e inserir as respectivas alturas lidas nos manmetros inclinados (h1 e h2 em mm), e pressionar o boto Calcular. As sadas do programa sero: - A variao da altura manomtrica j decomposta na direo vertical, hvertical, em m; - A variao de presso P, em N/m; - A vazo calculada Q, em m/s; - A vazo calculada Q, em l/min;

11

Tendo todos os valores em mos, caso haja a necessidade de verificar o erro de medio do prottipo, o software possibilita o seu clculo. Para isso, basta preencher o campo, com a vazo real do escoamento. 7. RESULTADOS E ANLISES

Os valores de vazo obtidos nas medies com o Venturi, empregando a curva de ajuste definida na calibrao, encontram-se listados na tabela abaixo. Tabela 2 Resultados das medies com Venturi calibrado.

Na tabela acima, pode-se visualizar o erro associado a cada medio, comparando-se o valor medido pelo Venturi com a vazo real de referncia ajustada no rotmetro. Nota-se que para as vazes mais prximas de 2 l/min os erros de medio so maiores, com um erro mximo de 5,57%. 8. CONCLUSES

O projeto, construo e calibrao do medidor de vazo tipo Venturi foram realizados com sucesso, atendendo os requisitos de medio de vazo em uma faixa de 2 a 10 l/min. Alm disso, todo projeto foi desenvolvido visando uma baixa imposio de perda de carga no sistema. A curva adotada na calibrao apresentou boa qualidade de ajuste, fazendo com que os resultados de medio de vazo obtidos pelo Venturi ficassem muito prximos dos valores medidos pelo rotmetro (valores de referncia). Segundo outro aspecto, o desenvolvimento do software de clculo de vazo (Vazo Express), contribuiu para a otimizao das medies, tornando a tarefa rpida e intuitiva. Por fim, conclui-se que possvel construir um medidor de vazo eficiente, empregandose tcnicas de fabricao e montagem relativamente simples, juntamente com a utilizao de materiais de fcil aquisio no mercado.

12

REFERNCIAS DELME, G. J. Manual de Medio de Vazo. Editora Edgard Blcher Ltda, 3 edio, So Paulo, 2003. FOX, R. W.; MCDONALD, A. T.; PRITCHARD, P. J. Introduo Mecnica dos Fluidos. Editora LTC, 6 edio, Rio Janeiro, 2006. SCHNEIDER, P. S. Medio de Velocidade e Vazo de Fluidos. Departamento de Engenharia Mecnica, Universidade Federal do Rio Grande do Sul, Porto Alegre, 2007. SCHNEIDER, P. S. Medio de Presso. Departamento de Engenharia Mecnica, Universidade Federal do Rio Grande do Sul, Porto Alegre, 2007.

13

APNDICES APNDICE A Vista dimtrica do tubo Venturi

14 APNDICE B Corte lateral do tubo Venturi, detalhe para dimenses e dimetros utilizados.

15 APNDICE C Cdigo fonte do software Vazo Express.


/* * To change this template, choose Tools | Templates * and open the template in the editor. */ /* * CalculoVazao.java * * Created on 03/07/2010, 18:21:50 */ /** * * @author Francisco */ public class CalculoVazao extends javax.swing.JFrame { /** Creates new form CalculoVazao */ public CalculoVazao() { initComponents(); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents private void initComponents() { jPanel1 = new javax.swing.JPanel(); jLabel1 = new javax.swing.JLabel(); jLabel3 = new javax.swing.JLabel(); jButton1 = new javax.swing.JButton(); jTextFieldH1 = new javax.swing.JTextField(); jTextFieldH2 = new javax.swing.JTextField(); jLabel10 = new javax.swing.JLabel(); jLabel9 = new javax.swing.JLabel(); jButtonLimpar = new javax.swing.JButton(); jLabel2 = new javax.swing.JLabel(); jLabel4 = new javax.swing.JLabel(); jLabel5 = new javax.swing.JLabel(); jLabel6 = new javax.swing.JLabel(); jLabel7 = new javax.swing.JLabel(); jTextFieldDeltaH = new javax.swing.JTextField(); jTextFieldCd = new javax.swing.JTextField(); jTextFieldDeltaP = new javax.swing.JTextField(); jTextFieldQm3s = new javax.swing.JTextField(); jTextFieldQlmin = new javax.swing.JTextField(); jPanelErro = new javax.swing.JPanel(); jLabelClique = new javax.swing.JLabel(); jPanel2 = new javax.swing.JPanel(); jLabelQreal = new javax.swing.JLabel(); jTextFieldQreal = new javax.swing.JTextField(); jPanel3 = new javax.swing.JPanel(); jButtonCalcularErro = new javax.swing.JButton(); jLabelErro = new javax.swing.JLabel(); jTextFieldErro = new javax.swing.JTextField(); jLabel8 = new javax.swing.JLabel(); jLabel11 = new javax.swing.JLabel(); jLabel12 = new javax.swing.JLabel(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); setTitle("Vazo Express"); jLabel1.setText("Valor h1:"); jLabel3.setText("Valor h2:"); jButton1.setText("Calcular"); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) {

16
jButton1ActionPerformed(evt); } }); jLabel10.setText("mm"); jLabel9.setText("mm"); jButtonLimpar.setText("Limpar"); jButtonLimpar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButtonLimparActionPerformed(evt); } }); javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); jPanel1.setLayout(jPanel1Layout); jPanel1Layout.setHorizontalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(20, 20, 20) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addGroup(jPanel1Layout.createSequentialGroup() .addComponent(jLabel3) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jTextFieldH2, javax.swing.GroupLayout.PREFERRED_SIZE, 41, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(jPanel1Layout.createSequentialGroup() .addComponent(jLabel1) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jTextFieldH1))) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel10) .addComponent(jLabel9, javax.swing.GroupLayout.DEFAULT_SIZE, 359, Short.MAX_VALUE))) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(46, 46, 46) .addComponent(jButton1) .addGap(85, 85, 85) .addComponent(jButtonLimpar))) .addContainerGap()) ); jPanel1Layout.setVerticalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(16, 16, 16) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel1) .addComponent(jTextFieldH1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel9)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel3) .addComponent(jTextFieldH2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel10)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 9, Short.MAX_VALUE) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jButton1) .addComponent(jButtonLimpar)) .addContainerGap()) ); jLabel2.setText("h vertical:");

17

jLabel4.setText("Coeficiente de descarga adotado (Cd):"); jLabel5.setText("P:"); jLabel6.setText("Q[m/s]:"); jLabel7.setFont(new java.awt.Font("Tahoma", 1, 14)); jLabel7.setText("Q[l/min]:"); jTextFieldDeltaP.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jTextFieldDeltaPActionPerformed(evt); } }); jTextFieldQlmin.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N jLabelClique.setText("Caso necessite verificar o erro, digite o valor da vazo real:"); jLabelQreal.setText("Vazo real [l/min]:"); jButtonCalcularErro.setText("Calcular"); jButtonCalcularErro.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButtonCalcularErroActionPerformed(evt); } }); jLabelErro.setText("Erro:"); jLabel8.setText("%"); javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3); jPanel3.setLayout(jPanel3Layout); jPanel3Layout.setHorizontalGroup( jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel3Layout.createSequentialGroup() .addContainerGap() .addComponent(jButtonCalcularErro) .addGap(18, 18, 18) .addComponent(jLabelErro) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jTextFieldErro, javax.swing.GroupLayout.PREFERRED_SIZE, 47, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jLabel8) .addContainerGap(27, Short.MAX_VALUE)) ); jPanel3Layout.setVerticalGroup( jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel3Layout.createSequentialGroup() .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jButtonCalcularErro) .addComponent(jLabelErro) .addComponent(jTextFieldErro, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel8)) .addContainerGap(19, Short.MAX_VALUE)) ); javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); jPanel2.setLayout(jPanel2Layout); jPanel2Layout.setHorizontalGroup( jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel2Layout.createSequentialGroup() .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel2Layout.createSequentialGroup() .addGap(71, 71, 71) .addComponent(jLabelQreal) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jTextFieldQreal, javax.swing.GroupLayout.PREFERRED_SIZE, 24, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(jPanel2Layout.createSequentialGroup()

18
.addGap(33, 33, 33) .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) .addContainerGap(76, Short.MAX_VALUE)) ); jPanel2Layout.setVerticalGroup( jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel2Layout.createSequentialGroup() .addContainerGap() .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabelQreal) .addComponent(jTextFieldQreal, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 18, Short.MAX_VALUE) .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap()) ); javax.swing.GroupLayout jPanelErroLayout = new javax.swing.GroupLayout(jPanelErro); jPanelErro.setLayout(jPanelErroLayout); jPanelErroLayout.setHorizontalGroup( jPanelErroLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanelErroLayout.createSequentialGroup() .addContainerGap() .addGroup(jPanelErroLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabelClique, javax.swing.GroupLayout.DEFAULT_SIZE, 325, Short.MAX_VALUE)) .addContainerGap()) ); jPanelErroLayout.setVerticalGroup( jPanelErroLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanelErroLayout.createSequentialGroup() .addGap(33, 33, 33) .addComponent(jLabelClique) .addGap(18, 18, 18) .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); jLabel11.setText("m"); jLabel12.setText("N/m"); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(18, 18, 18) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addComponent(jLabel2) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jTextFieldDeltaH, javax.swing.GroupLayout.PREFERRED_SIZE, 62, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jLabel11, javax.swing.GroupLayout.PREFERRED_SIZE, 31, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(layout.createSequentialGroup() .addComponent(jLabel4) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jTextFieldCd, javax.swing.GroupLayout.PREFERRED_SIZE, 46, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addComponent(jLabel7)

19

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jTextFieldQlmin, javax.swing.GroupLayout.DEFAULT_SIZE, 50, Short.MAX_VALUE)) .addGroup(layout.createSequentialGroup() .addComponent(jLabel6) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jTextFieldQm3s, javax.swing.GroupLayout.PREFERRED_SIZE, 66, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(layout.createSequentialGroup() .addComponent(jLabel5) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jTextFieldDeltaP, javax.swing.GroupLayout.PREFERRED_SIZE, 59, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(7, 7, 7) .addComponent(jLabel12, javax.swing.GroupLayout.DEFAULT_SIZE, 25, Short.MAX_VALUE))) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jPanelErro, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))) .addContainerGap()) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 17, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jTextFieldDeltaH, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel11)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel4) .addComponent(jTextFieldCd, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(20, 20, 20) .addComponent(jPanelErro, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(layout.createSequentialGroup() .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jLabel5) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jTextFieldDeltaP, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel12))) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel6) .addComponent(jTextFieldQm3s, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel7)

20
.addComponent(jTextFieldQlmin, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))) .addContainerGap(63, Short.MAX_VALUE)) ); pack(); }// </editor-fold>//GEN-END:initComponents private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GENFIRST:event_jButton1ActionPerformed double h1, h2, deltaH, cD, deltaP, qm3s, qlmin; h1 = Float.parseFloat(jTextFieldH1.getText()); h2 = Float.parseFloat(jTextFieldH2.getText()); deltaH = ((h1-h2)*0.7071)*0.001; deltaP = 997*9.81*deltaH; cD = -74282*Math.pow(deltaH, 4)+16703*Math.pow(deltaH, 3)-1333*Math.pow(deltaH, 2)+45.01*deltaH+0,406; qm3s = cD*1.063834947*0.000122718*Math.pow((2*deltaP)/997, 0.5); qlmin = qm3s*60000; jTextFieldDeltaH.setText(String.valueOf(trunc(deltaH,5))); jTextFieldDeltaP.setText(String.valueOf(trunc(deltaP,2))); jTextFieldCd.setText(String.valueOf(trunc(cD,3))); jTextFieldQm3s.setText(String.valueOf(trunc(qm3s,8))); jTextFieldQlmin.setText(String.valueOf(trunc(qlmin,2))); }//GEN-LAST:event_jButton1ActionPerformed private void jTextFieldDeltaPActionPerformed(java.awt.event.ActionEvent evt) {//GENFIRST:event_jTextFieldDeltaPActionPerformed // TODO add your handling code here: }//GEN-LAST:event_jTextFieldDeltaPActionPerformed private void jButtonLimparActionPerformed(java.awt.event.ActionEvent evt) {//GENFIRST:event_jButtonLimparActionPerformed jTextFieldDeltaH.setText(null); jTextFieldDeltaP.setText(null); jTextFieldCd.setText(null); jTextFieldQm3s.setText(null); jTextFieldQlmin.setText(null); jTextFieldH1.setText(null); jTextFieldH2.setText(null); jTextFieldQreal.setText(null); jTextFieldErro.setText(null); }//GEN-LAST:event_jButtonLimparActionPerformed private void jButtonCalcularErroActionPerformed(java.awt.event.ActionEvent evt) {//GENFIRST:event_jButtonCalcularErroActionPerformed float qReal, qlmin, erro; qReal = Float.parseFloat(jTextFieldQreal.getText()); qlmin = Float.parseFloat(jTextFieldQlmin.getText()); erro = ((qlmin*100)/qReal)-100; jTextFieldErro.setText(String.valueOf(trunc(erro,2))); }//GEN-LAST:event_jButtonCalcularErroActionPerformed /* retorna o valor truncado no numero de decimais especificadas */ public static double trunc(double value, int decimais) { double p = Math.pow(10, decimais); return Math.floor(value * p) / p; } /** * @param args the command line arguments */ public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { try { Thread.sleep(5000); } catch (InterruptedException e) { } new CalculoVazao().setVisible(true); }

21
}); } // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton jButton1; private javax.swing.JButton jButtonCalcularErro; private javax.swing.JButton jButtonLimpar; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel10; private javax.swing.JLabel jLabel11; private javax.swing.JLabel jLabel12; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel4; private javax.swing.JLabel jLabel5; private javax.swing.JLabel jLabel6; private javax.swing.JLabel jLabel7; private javax.swing.JLabel jLabel8; private javax.swing.JLabel jLabel9; private javax.swing.JLabel jLabelClique; private javax.swing.JLabel jLabelErro; private javax.swing.JLabel jLabelQreal; private javax.swing.JPanel jPanel1; private javax.swing.JPanel jPanel2; private javax.swing.JPanel jPanel3; private javax.swing.JPanel jPanelErro; private javax.swing.JTextField jTextFieldCd; private javax.swing.JTextField jTextFieldDeltaH; private javax.swing.JTextField jTextFieldDeltaP; private javax.swing.JTextField jTextFieldErro; private javax.swing.JTextField jTextFieldH1; private javax.swing.JTextField jTextFieldH2; private javax.swing.JTextField jTextFieldQlmin; private javax.swing.JTextField jTextFieldQm3s; private javax.swing.JTextField jTextFieldQreal; // End of variables declaration//GEN-END:variables }