VISCOSIDAD DEL GAS NATURAL.pdf
Short Description
Download VISCOSIDAD DEL GAS NATURAL.pdf...
Description
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
UMSA
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
Facultad De Ingeniería
Ingeniería Petrolera
Programación Aplicada PET 230 VISCOSIDAD DEL GAS NATURAL MEDIANTE LEEGONZALES-EAKIN
NOMBRE DEL ESTUDIANTE:
Tola Mayta Limberg 1
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN 1. Introducción: La viscosidad del gas (µg), es más baja que la de un líquido, ya que las distancias intermoleculares de un gas son mayores que las de un líquido. Además, todos los gases tienen comportamiento reológico Newtoniano y se rigen por la Ley de viscosidad de Newton. En el presente proyecto trataremos el cálculo de la viscosidad, teniendo como base a la correlación de Lee-Gonzales-Eakin, es de esta correlación que se parte para el diseño del programa de VISCOSIDAD DEL GAS, el cual será explicado más adelante, el cual se diseño mediante Microsoft Visual Basic 6.0. 2. Justificación: La viscosidad del gas natural es de suma importancia para varios procesos dentro de la industria petrolera, por lo que su cuantificación es vital. Es de saber que la viscosidad del gas es menor a la de los líquidos, es por esto que su determinación en laboratorio es difícil, usualmente se utilizan correlaciones para su cálculo tal como ser el de Lee-Gonzales-Eakin, Carr-Kobayashi-Burrows y la de LohrenzBray-Clark, estas dos últimas correlaciones se basan fundamentalmente en principio de
los estados correspondientes que establece que las propiedades físicas de hidrocarburos expresadas en forma adimensional pueden ser correlacionadas en términos de otras propiedades, también expresadas en forma adimensional.cabe recalcar que en su determinación se deben de usar graficas y correcciones (en el caso de Carr-Kobayashi-Burrows) y ecuaciones muy complejas por así decirlo (el caso de Lohrenz-Bray-Clark) no obstante para el caso de la correlación de LeeGonzales-Eakin da buenos resultados en la aproximación de la viscosidad del gas dando un error aceptable en comparación con las demás correlaciones en donde deben de cumplir condiciones para mantenerse en un rango de error aceptable, ya sea por la gravedad especifica del gas o la temperatura, es por esta razón que se
2
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
ve apreciable y practico el hecho de usar este método para el cálculo rápido de la viscosidad de un gas natural. El proyecto trata en si del cálculo de la viscosidad por medio de esta correlación: Lee Gonzales Eakin, teniendo en como datos esenciales para tal calculo al factor Z del gas, su gravedad especifica, así como también la temperatura y presión en al que se encuentra el gas. 3. Objetivo: 3.1.Objetivo General: Tener noción de los alcances que tienen los diferentes métodos para el cálculo de la viscosidad del gas así como la importancia de la viscosidad en la rama petrolera. 3.2.Objetivo Específico: Crear un programa mediante la corre lación de Lee Gonzales Eakin y así encontrar en forma sencilla el valor de la viscosidad del gas. 4. Marco Teórico: 4.1. Viscosidad: La viscosidad de un fluido es una medida de la resistencia interna que ofrecen sus moléculas a fluir. En general, la viscosidad de un gas es mucho menor que la de un líquido, ya que las distancias intermoleculares de un gas son mayores que las de un líquido. Todos los gases o condensados tienen comportamiento reológico Newtoniano y se rigen por la ley de la viscosidad de Newton. 4.2. Expresiones cuantitativas: Existen diversos modelos de viscosidad aplicables a sustancias que presentan comportamientos viscosos de diferente tipo. El modelo o tipo de fluido viscoso más sencillo de caracterizar es el fluido newtoniano, que es un modelo lineal (entre el gradiente de velocidades y las tensiones tangenciales) pero también existen modelos no lineales con adelgazamiento o espesamiento por cortante o como los plásticos de Bingham.
3
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
4.2.1.Fluido newtoniano:
Fig.1 Fluido newtoniano Esquema que permite entender la resistencia al avance de una placa horizontal sobre la superficie de un fluido newtoniano. En un fluido newtoniano la fuerza de resistencia experimentada por una placa que se mueve, a velocidad constante
por la superficie de un fluido viene dada por:
(1) Donde: FR = fuerza cortante (paralela a la velocidad). A = área superficial del sólido en contacto con el fluido. = coeficiente de viscosidad dinámica. = altura del nivel de fluido o distancia entre la placa horizontal y el fondo del recipiente que contiene al fluido. Esta expresión se puede reescribir en términos de tensiones tangenciales sobre la placa como:
4
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
(2) Donde µ es la velocidad del fluido. 4.3. Medidas de la viscosidad: La viscosidad de un fluido puede medirse por un parámetro dependiente de la temperatura llamado coeficiente de viscosidad o simplemente viscosidad: Coeficiente de viscosidad dinámico, designado como η o μ. En unidades en el SI: [µ] = [Pa·s] = [kg·m-1·s-1] ; otras unidades: 1 poise = 1 [P] = 10-1 [Pa·s] = [10-1 kg·s-1·m-1] Coeficiente de viscosidad cinemático, designado como ν, y que resulta ser igual al cociente entre el coeficiente de viscosidad dinámica y la densidad del fluido. ν = μ/ρ. (En unidades en el SI: [ν] = [m2.s-1]. En el sistema cegesimal es el stokes (St).
Gas (a 0 Viscosidad °C): dinámica [μPa·s] Hidrógeno 8,4 Aire
17,4
Xenón
21,2
Agua (20ºC)
1002
4.4. Factores que Afectan la Viscosidad de un Gas:
A bajas presiones (< 1000 - 1500 LPCA), a medida que aumenta la
temperatura aumenta la viscosidad de un gas debido al incremento de la energía cinética de las moléculas que producen gran número de choques intermoleculares.
5
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
A elevadas presiones (>1000 - 1500 LPCA), a medida que aumenta
la temperatura disminuye la viscosidad de un gas debido a la expansión térmica
de
las
moléculas.
A
elevadas
presiones
las
distancias
intermoleculares de los gases son pequeñas y un gas tiende a comportarse como un líquido.
A cualquier temperatura, la viscosidad de un gas aumenta con el
incremento de presión debido a la disminución de las distancias intermoleculares.
A medida que un gas es más pesado, sus moléculas serán más
grandes y por tanto su viscosidad será mayor. 4.5. Factores que Afectan la Viscosidad de un Líquido: Los mismos factores que afectan la viscosidad de un gas afectan la de un líquido yen la misma forma con excepción de la temperatura; a cualquier presión, la viscosidad de un líquido (condensado) disminuye con el aumento de temperatura. 4.6. Determinación de viscosidades: La viscosidad de un gas natural (µg) o de un gas condensado (µgc) puede ser determinada experimentalmente o por medio de ecuaciones. La determinación de y µg en el laboratorio es sumamente difícil debido a que su valor es muy pequeño (~ 0.02 cp) para ser medido con exactitud. Por esta razón se prefiere usar métodos numéricos en su evaluación. 4.7. Método de Lee-González-Eakin: Lee y Cols. midieron experimentalmente la viscosidad de 4 gases naturales con impurezas (CO2 + H2S+N2) a temperaturas desde 100 hasta 400 °F y presiones desde 100 hasta 8000 LPCA. A partir de los datos experimentales ellos obtuvieron la siguiente correlación:
𝛍𝐠 = 𝟏𝟎−𝟒 ∗ 𝐤 ∗ 𝐞𝐱𝐩 𝐗 ∗
6
𝛒𝐠 𝐘 𝟔𝟐,𝟒
...(3)
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
𝐊=
𝟗.𝟑𝟕𝟗+𝟎.𝟎𝟏𝟔𝟎𝟕∗𝐏𝐌 ∗𝐓 𝟏.𝟓 𝟐𝟎𝟗.𝟐+𝟏𝟗.𝟐𝟔∗𝐏𝐌+𝐓
𝐗 = 𝟑. 𝟒𝟒𝟖 +
𝟗𝟖𝟔.𝟒 𝐓
… (4)
+ 𝟎. 𝟎𝟏𝟎𝟎𝟗 ∗ 𝐏𝐌... (5)
𝐘 = 𝟐. 𝟒𝟒𝟕 − 𝟎. 𝟐𝟐𝟐𝟒 ∗ 𝐗…(6) Donde:
µg = Viscosidad del gas (Cp) ρg = Densidad del gas a presión y temperatura del reservorio (lb/ft 3 ). T = Temperatura del reservorio (R). PM = Peso molecular aparente de la mezcla de gas.
El método de Lee y Cols también puede utilizarse para determinar la viscosidad de un gas condensado (µgc) usando PMc y ρgc en vez de PM y ρg. La figura muestra una comparación entre los valores experimentales de viscosidad y calculados con la correlación. La ecuación (3) reproduce los datos experimentales con una desviación estándar de aproximadamente 2.7% y una desviación máxima de 8.99%.
Fig.2 Grafico de lee Gonzales eakin
7
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
4.8.Otros metodos para el cálculo de la viscosidad del gas: 4.8.1. Método de Carr Kobayashi y Burrows: Esta correlación se presenta en la Fig. 3, y permite determinar la viscosidad del gas a presión atmosférica y temperatura del yacimiento , a partir de su peso molecular gravedad especifica.
Fig.3 Viscosidad de gases naturales a 1atm y temperatura de yacimiento. De la figura podemos calcular las correcciones de los gases contenidos en la mezcla: CO2, H2S y N2. 4.8.2. Método de Lohrenz, Bray y Clark:
Lohrenz y Cols presentaron un método para determinar las viscosidades de mezclas de hidrocarburos en fase líquida y gaseosa. Este método está basado en el trabajo de Jossi, Sticl y Thodos sobre viscosidades de hidrocarburos. La correlación de Thodos y Cols se basó en el principio de los estados correspondientes que establece que las propiedades físicas de hidrocarburos
8
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
expresadas en forma adimensional pueden ser correlacionadas en térmi nos de otras propiedades, también expresadas en forma adimensional. Para usar la correlación de Lohrenz y Cols se necesita conocer la composición de la mezcla (C1, C2,..C7+), las propiedades del seudo componente (Mc7+ y yc7+) y las condiciones de presión y temperatura. La correlación de Lohrentz y Cols fue desarrollada para determinar la viscosidad de mezclas de hidrocarburos en estado líquido pero los autores sugirieron que también puede aplicarse a mezclas en estado gaseoso. Nolen utilizó esta correlación tanto para gases como para líquidos en un simulador composicional. Cuando la correlación fue comparada con 512 datos experimentales de viscosidad de mezclas de hidrocarburos e impurezas en fase liquida, la desviación promedia fue del 16%, la densidad de las mezclas cubría un rango de 0,4812 a 0,903 g/cc. 5. Desarrollo: La resolución trata en si de introducir 4 datos principales, estos datos están en relación con el método de LEE GONZALES EAKIN.La figura 4 muestra el menú de acceso a la correlación de LEE GONZALES EAKIN.
Fig.4 correlación para determinar la µg. Los datos importantes para el cálculo, que debemos de saber son:
9
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Fig.5 Lee Gonzales Eakin. Temperatura (°R). Gravedad especifica del gas. Presión (PSIA). Factor de compresibilidad del gas (Z). Como se observa en el grafico, estas variables son las que determinan la viscosidad del gas, las constantes de LEE GONZALES EAKIN: x, y, k, así como también si se lo desea la densidad del gas (según la ecuación general de los gases) y el peso molecular del gas, mediante solo pulsar el botón de su lado que puede ser: GENERAR, RESULTADO. 6. Algoritmo:
EL ALGORITMO ES SOLO DEL
Inicio
FORMULARIO EN DONDE ESTA EL LA
Def: n1, n2, n3, n4,T,P,SG,Z,PM,DG,X,Y,K,µg
CORRELACION .
B
L
n1, n2, n3, n4
Si
No n1, n2, n3, n4 = 0
10
A
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
N1=T N2=P
A
𝑃𝑀(𝐿𝐵/𝐿𝐵𝑀𝑂𝐿) = 28.96 ∗ 𝑆𝐺
N3=SG 0 Len(mitexto) Then msgpalabra = 1 'Si el valor de msgpalabra es mayor a la cantidad de letras de mitexto, entonces msgpalabra vuelve a ser 1 'esto para asegurar que el titulo siga reimprimiéndose más de una vez
End Sub Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, y As Single) ' Desactiva el color de fondo de las opciones If Label3.BackStyle = 1 Then Label3.BackStyle = 0 If Label4.BackStyle = 1 Then Label4.BackStyle = 0 If Label5.BackStyle = 1 Then Label5.BackStyle = 0 If Label6.BackStyle = 1 Then Label6.BackStyle = 0 If Label7.BackStyle = 1 Then Label7.BackStyle = 0 End Sub
17
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, y As Single) ' Desactiva el color de fondo de las opciones If Label3.BackStyle = 1 Then Label3.BackStyle = 0 If Label4.BackStyle = 1 Then Label4.BackStyle = 0 If Label5.BackStyle = 1 Then Label5.BackStyle = 0 If Label6.BackStyle = 1 Then Label6.BackStyle = 0 If Label7.BackStyle = 1 Then Label7.BackStyle = 0 End Sub
Private Sub Label3_Click() FRM_MENU.Hide FRM_MENU_DE_CALCULO.Show End Sub
Private Sub Label3_MouseMove(Button As Integer, Shift As Integer, X As Single, y As Single) 'Verifica si la Etiqueta NO tiene el color de fondo activado If Label3.BackStyle = 0 Then Label3.BackStyle = 1 ' Permite que se establezca el color de fondo Label3.BackColor = &H8000& ' Pone el color verde 'Desactiva el color de fondo de las demás opciones Label2.BackStyle = 0 Label4.BackStyle = 0 Label5.BackStyle = 0 Label6.BackStyle = 0 End If
18
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
End Sub
Private Sub Label4_Click() CommonDialog1.ShowOpen 'Muestra el cuadro de diálogo Abrir. End Sub
Private Sub Label4_MouseMove(Button As Integer, Shift As Integer, X As Single, y As Single) 'Verifica si la Etiqueta NO tiene el color de fondo activado If Label4.BackStyle = 0 Then Label4.BackStyle = 1 ' Permite que se establezca el color de fondo Label4.BackColor = &H8000& ' Pone el color verde 'Desactiva el color de fondo de las demás opciones Label2.BackStyle = 0 Label3.BackStyle = 0 Label5.BackStyle = 0 Label6.BackStyle = 0 End If End Sub
Private Sub Label5_Click() FRM_MENU.Hide CREDITOS.Show End Sub
Private Sub Label5_MouseMove(Button As Integer, Shift As Integer, X As Single, y As Single)
19
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
'Verifica si la Etiqueta NO tiene el color de fondo activado If Label5.BackStyle = 0 Then Label5.BackStyle = 1 ' Permite que se establezca el color de fondo Label5.BackColor = &H8000& ' Pone el color verde 'Desactiva el color de fondo de las demás opciones Label2.BackStyle = 0 Label3.BackStyle = 0 Label4.BackStyle = 0 Label6.BackStyle = 0 End If End Sub
Private Sub Label6_Click() Beep mensaje = "¿DESEA SALIR DEL SISTEMA?" estilo = vbOKCancel titulo = "VISCOSIDAD DEL GAS NATURAL" rpta = MsgBox(mensaje, estilo, titulo) If rpta = vbOK Then End End If End Sub
Private Sub Label6_MouseMove(Button As Integer, Shift As Integer, X As Single, y As Single) 'Verifica si la Etiqueta NO tiene el color de fondo activado
20
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
If Label6.BackStyle = 0 Then Label6.BackStyle = 1 ' Permite que se establezca el color de fondo Label6.BackColor = &H8000& ' Pone el color verde 'Desactiva el color de fondo de las demás opciones Label2.BackStyle = 0 Label3.BackStyle = 0 Label5.BackStyle = 0 Label4.BackStyle = 0 End If End Sub
Private Sub Timer1_Timer() 'Declaramos la variable que almacenara el Índice de cada imagen del control ImageList. Static IndiceImagen 'Incrementamos el Índice. IndiceImagen = IndiceImagen + 1 'Cargamos en el PictureBox la imagen correspondiente al Índice incrementado. Image1.Picture = ImageList1.ListImages(IndiceImagen).Picture 'Cuando el Índice de la imagen sea igual al último (8), empezamos nuevamente. 'Esto hace que el ciclo repetitivo vuelva a iniciar. If IndiceImagen = 14 Then IndiceImagen = 0 End If End Sub Private Sub Timer2_Timer()
21
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
'Declaramos la variable que almacenara el Índice de cada imagen del control ImageList. Static IndiceImagen 'Incrementamos el Índice. IndiceImagen = IndiceImagen + 1 'Cargamos en el PictureBox la imagen correspondiente al Índice incrementado. Image2.Picture = ImageList2.ListImages(IndiceImagen).Picture 'Cuando el Índice de la imagen sea igual al último (8), empezamos nuevamente. 'Esto hace que el ciclo repetitivo vuelva a iniciar. If IndiceImagen = 7 Then IndiceImagen = 0 End If End Sub
Private Sub Timer3_Timer() Label7.Caption = Format(Time, "HH:MM:SS AMPM") End Sub
Private Sub Timer4_Timer() Call mostrarmensaje 'Timer convoca a MOSTRARMENSAJE cada 250milisegundos, y es lo que da la impresión de que el titulo gire End Sub
22
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Fig.9 FRM_ MENÚ DE CALCULO. FR_MENÚ DE CALCULO: Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long) Private Sub CALCULO_DE_LA_VISCOSIDAD_DEL_GAS_Click() FRM_MENU_DE_CALCULO.Hide FRM_VISCOSIDAD.Show End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, y As Single) ' Desactiva el color de fondo de las opciones If Label3.BackStyle = 1 Then Label3.BackStyle = 0 End Sub
Private Sub GRAFICO_DE_ERROR_DEL_METODO_DE_LEE_GONZALES_EAKIN_Clic() FRM_GRAFICO_DE_ERROR.Show FRM_MENU_DE_CALCULO.Hide
23
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
End Sub
Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, y As Single) ' Desactiva el color de fondo de las opciones If Label3.BackStyle = 1 Then Label3.BackStyle = 0 End Sub
Private Sub Label3_Click() FRM_MENU.Show FRM_MENU_DE_CALCULO.Hide End Sub
Private Sub Label3_MouseMove(Button As Integer, Shift As Integer, X As Single, y As Single) '‘Verifica si la Etiqueta NO tiene el color de fondo activado If Label3.BackStyle = 0 Then Label3.BackStyle = 1 ' Permite que se establezca el color de fondo Label3.BackColor = &H8000& ' Pone el color verde 'Desactiva el color de fondo de las demás opciones End If End Sub Private Sub METODOS_PARA_EL_CALCULO_DE_LA_VISCOSIDAD_DEL_GAS_Click() FRM_MENU_DE_CALCULO.Hide FRM_EAKIN.Show End Sub
24
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Private Sub Timer1_Timer() 'Declaramos la variable que almacenara el Índice de cada imagen del control ImageList. Static IndiceImagen 'Incrementamos el Índice. IndiceImagen = IndiceImagen + 1 'Cargamos en el PictureBox la imagen correspondiente al Índice incrementado. Image1.Picture = ImageList2.ListImages(IndiceImagen).Picture 'Cuando el Índice de la imagen sea igual al último (8), empezamos nuevamente. 'Esto hace que el ciclo repetitivo vuelva a iniciar. If IndiceImagen = 9 Then IndiceImagen = 0 End If End Sub
Private Sub Timer2_Timer() Label2.Caption = Format(Time, "HH:MM:SS AMPM") End Sub
Private Sub Toolbar1_ButtonClick(ByVal Button As ComctlLib.Button) Select Case Button.Key Case "MNUGUARDAR" 'Especifica el tipo de archivo que se podrán abrir. CommonDialog1.Filter = "Archivos (*.PDF)|*.WORD|Archivos de TEXTO " CommonDialog1.ShowSave Case "MNUDOCUMENTOS"
25
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
CommonDialog1.ShowOpen Case "MNUCALCULADORA" FRM_CALCULADORA.Show Case "MNUCAPTURAR LA PANTALLA" 'Captura toda la pantalla keybd_event 44, 0, 0&, 0& Case "MNUCAPTURAR LA VENTANA ACTIVA" 'Captura la ventana activa keybd_event 44, 1, 0&, 0& Case "MNUAYUDA" CommonDialog1.ShowHelp End Select End Sub Private Sub Z11_Click() Z1.Show FRM_MENU_DE_CALCULO.Hide End Sub Private Sub Z22_Click() Z2.Show FRM_MENU_DE_CALCULO.Hide End Sub Private Sub Z33_Click() Z3.Show FRM_MENU_DE_CALCULO.Hide End Sub Private Sub Z44_Click()
26
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Z4.Show FRM_MENU_DE_CALCULO.Hide End Sub Calculo de la viscosidad Private Sub Command1_Click() FRM_MENU_DE_CALCULO.Show FRM_VISCOSIDAD.Hide End Sub
Private Sub Command2_Click() FRM_LEE_GONZALES_EAKIN.Show FRM_VISCOSIDAD.Hide End Sub
Fig.10 FRM_ LEE GONZALES EAKIN. FRM_LEE GONZALES EAKIN: Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long) Private Sub Command1_Click()
27
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Dim T, SG, p, Z As Single T = Val(Text1.Text) SG = Val(Text2.Text) p = Val(Text3.Text) Z = Val(Text4.Text) DG = Val(Text5.Text) PM = Val(Text6.Text) If Text3.Text = "" Then MsgBox "DEBE DE INTRODUCIR DATOS DE PRESION" End If If Text1.Text = "" Then MsgBox "DEBE DE INTRODUCIR DATOS DE TEMPERATURA" End If If Text4.Text = "" Then MsgBox "DEBE DE INTRODUCIR DATOS DE Z" End If If Text2.Text = "" Then MsgBox "DEBE DE INTRODUCIR DATOS DE SG" End If If T > 0 And Z > 0 And Z 0 Then Text6.Text = SG * 28.96 Else MsgBox "!!!Los valores de SG del GAS deben de ser mayores a cero¡¡¡" End If End Sub
Private Sub Command4_Click() Dim T, SG, p, Z As Single T = Val(Text1.Text) SG = Val(Text2.Text) p = Val(Text3.Text)
29
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Z = Val(Text4.Text) DG = Val(Text5.Text) PM = Val(Text6.Text) If PM > 0 And T > 0 Then Text7.Text = (9.379 + 0.016 * PM) * T ^ (1.5) / (209.2 + 19.26 * PM + T) Else MsgBox "!!!Los valores de T y PMG deben de ser mayores a cero¡¡¡" End If End Sub
Private Sub Command5_Click() Dim T, SG, p, Z As Single T = Val(Text1.Text) SG = Val(Text2.Text) p = Val(Text3.Text) Z = Val(Text4.Text) DG = Val(Text5.Text) PM = Val(Text6.Text) If T > 0 Then Text8.Text = 3.448 + 986.4 / T + 0.01009 * PM Else MsgBox "!!!Los valores de T deben de ser mayores a cero¡¡¡" End If End Sub
Private Sub Command6_Click()
30
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Dim T, SG, p, Z As Single T = Val(Text1.Text) SG = Val(Text2.Text) p = Val(Text3.Text) Z = Val(Text4.Text) DG = Val(Text5.Text) PM = Val(Text6.Text) If T > 0 Then Text9.Text = 2.447 - 0.2224 * (3.448 + 986.4 / T + 0.01009 * PM) Else MsgBox "!!!Los valores de T deben de ser mayores a cero¡¡¡" End If End Sub
Private Sub Command7_Click() Dim T, SG, p, Z, DG, K, PM, X, y As Single T = Val(Text1.Text) SG = Val(Text2.Text) p = Val(Text3.Text) Z = Val(Text4.Text) DG = Val(Text5.Text) PM = Val(Text6.Text) K = Val(Text7.Text) X = Val(Text8.Text) y = Val(Text9.Text) Text10.Text = 10 ^ (-4) * K * Exp(X * DG ^ (y))
31
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
End Sub
Private Sub Command8_Click() FRM_LEE_GONZALES_EAKIN.Hide FRM_VISCOSIDAD.Show End Sub
Private Sub Command9_Click() Text1.Text = "" Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = "" Text6.Text = "" Text7.Text = "" Text8.Text = "" Text9.Text = "" Text10.Text = "" Text1.SetFocus End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer) 'Hace que una caja solo acepte números, el punto y el signo de menos. If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then KeyAscii = 0 End If
32
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
If KeyAscii = 13 Then Text2.SetFocus End If End Sub
Private Sub Text10_KeyPress(KeyAscii As Integer) 'Hace que una caja solo acepte números, el punto y el sig no de menos. If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then KeyAscii = 0 End If End Sub
Private Sub Text2_KeyPress(KeyAscii As Integer) 'Hace que una caja solo acepte números, el punto y el signo de menos. If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then KeyAscii = 0 End If If KeyAscii = 13 Then Text3.SetFocus End If End Sub
Private Sub Text3_KeyPress(KeyAscii As Integer) 'Hace que una caja solo acepte números, el punto y el signo de menos. If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then KeyAscii = 0
33
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
End If If KeyAscii = 13 Then Text4.SetFocus End If End Sub
Private Sub Text4_KeyPress(KeyAscii As Integer) 'Hace que una caja solo acepte números, el punto y el signo de menos. If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then KeyAscii = 0 End If If KeyAscii = 13 Then Text1.SetFocus End If End Sub
Private Sub Text5_KeyPress(KeyAscii As Integer) 'Hace que una caja solo acepte números, el punto y el signo de menos. If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then KeyAscii = 0 End If End Sub
Private Sub Text6_KeyPress(KeyAscii As Integer) 'Hace que una caja solo acepte números, el punto y el signo de menos. If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then
34
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
KeyAscii = 0 End If End Sub
Private Sub Text7_KeyPress(KeyAscii As Integer) 'Hace que una caja solo acepte números, el punto y el signo de menos. If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then KeyAscii = 0 End If End Sub
Private Sub Text8_KeyPress(KeyAscii As Integer) 'Hace que una caja solo acepte números, el punto y el signo de menos. If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then KeyAscii = 0 End If End Sub
Private Sub Text9_KeyPress(KeyAscii As Integer) 'Hace que una caja solo acepte números, el punto y el signo de menos. If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then KeyAscii = 0 End If End Sub Private Sub Toolbar1_ButtonClick(ByVal Button As ComctlLib.Button) Select Case Button.Key
35
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Case "MNUGUARDAR" 'Especifica el tipo de archivo que se podrán abrir. CommonDialog1.Filter = "Archivos (*.PDF)|*.WORD|Archivos de TEXTO " CommonDialog1.ShowSave Case "MNUDOCUMENTOS" CommonDialog1.ShowOpen Case "MNUCALCULADORA" FRM_CALCULADORA.Show Case "MNUCAPTURAR LA PANTALLA" 'Captura toda la pantalla keybd_event 44, 0, 0&, 0& Case "MNUCAPTURAR LA VENTANA ACTIVA" 'Captura la ventana activa keybd_event 44, 1, 0&, 0& Case "MNUAYUDA" CommonDialog1.ShowHelp End Select End Sub
Fig.11 FRM_EAKIN.
36
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
FRM_EAKIN: Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long) Private Sub Command1_Click() FRM_MENU_DE_CALCULO.Show FRM_EAKIN.Hide End Sub
Private Sub Command2_Click() 'Captura la ventana activa keybd_event 44, 1, 0&, 0& End Sub
Private Sub Form_Load() 'Este bloque de código hace que todos los Picture se posiciones adecuadamente, 'dentro del control TabStrip. 'Este es un código estándar, lo podrá copiar en sus proyectos sin ningún problema. Dim ctlControl As Object On Error Resume Next For Each ctlControl In Me.Controls 'Recorremos todos los controles del formulario. 'Determinamos si el control leído es un Picture. If TypeOf ctlControl Is PictureBox Then 'Asignamos el tamaño y la posición adecuada al Picture leído. ctlControl.Move TabStrip1.ClientLeft, TabStrip1.ClientTop, _
37
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
TabStrip1.ClientWidth, TabStrip1.ClientHeight 'Quitamos los bordes del Picture. ctlControl.BorderStyle = 0 End If ctlControl.ListIndex = -1 DoEvents Next ctlControl 'Hacemos que el primer Picture sea el que aparezca cada vez que cargue el formulario. viscosidad.Visible = True End Sub
Private Sub TabStrip1_Click() 'Este es un truco para no tener que crear un array de controles. 'El siguiente bloque de código determina la ficha que es pulsada, 'y muestra el PictureBox correspondiente a esa ficha. Dim ctlControl As Object On Error Resume Next For Each ctlControl In Me.Controls 'Recorremos todos los controles del formulario. 'Verificamos si el control leído es un PictureBox. If TypeOf ctlControl Is PictureBox Then 'Verificamos si el nombre del Picture leído corresponde al Caption de la ficha. If ctlControl.Name = TabStrip1.SelectedItem.Caption The n 'Si es verdadera la comparación anterior ponemos el PictureBox Visible. ctlControl.Visible = True Else
38
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
'Si es falsa la comparación ponemos el Picture invisible. ctlControl.Visible = False End If End If ctlControl.ListIndex = -1 DoEvents Next ctlControl End Sub
Fig.12 FRM_ CALCULADORA. FRM_CALCULADORA: Private Sub cmdBoton1_Click() On Error Resume Next 'En caso que la caja este vacía. 'Redondea el valor de la caja de texto. txtNumero.Text = Round(CDbl(txtNumero.Text))
End Sub
Private Sub cmdBoton10_Click() On Error Resume Next 'En caso que la caja este vacía. 'Calcula el coseno del valor de la caja de texto. txtNumero.Text = Round(Cos(CDbl(txtNumero.Text) * (3.141592 / 180)), 14)
39
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
End Sub
Private Sub cmdBoton11_Click() On Error Resume Next 'En caso que la caja este vacía. 'Calcula la tangente del valor de la caja de texto. txtNumero.Text = Round(Tan(CDbl(txtNumero.Text) * (3.141592 / 180)), 14) End Sub
Private Sub cmdBoton12_Click() 'Te muestra en un cuadro de mensaje si el número es positivo o negativo . If Len(txtNumero.Text) > 0 Then If Sgn(CDbl(txtNumero.Text)) = 1 Then MsgBox (" EL NUMERO ES POSITIVO ") If Sgn(CDbl(txtNumero.Text)) = -1 Then MsgBox (" EL NUMERO ES NEGATIVO ") End If End Sub
Private Sub cmdBoton13_Click() On Error Resume Next 'En caso que la caja este vacía. 'Calcula la secante del valor de la caja de texto. txtNumero.Text = Round(1 / Cos(CDbl(txtNumero.Text) * (3.141592 / 180)),14) End Sub
Private Sub cmdBoton14_Click() On Error Resume Next 'En caso que la caja este vacía. 'Calcula la cosecante del valor de la caja de texto.
40
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
txtNumero.Text = Round(1 / Sin(CDbl(txtNumero.Text) * (3.141592 / 180)), 14) End Sub
Private Sub cmdBoton15_Click() On Error Resume Next 'En caso que la caja este vacía. 'Calcula la cotangente del valor de la caja de texto. txtNumero.Text = Round(1 / Tan(CDbl(txtNumero.Text) * (3.141592 / 180)), 14) End Sub
Private Sub cmdBoton16_Click() On Error Resume Next 'En caso que la caja este vacía. 'Calcula el arcotangente del valor de la caja de texto. txtNumero.Text = Round(Atn(CDbl(txtNumero.Text) * (3.141592 / 180)), 14) End Sub
Private Sub cmdBoton2_Click() On Error Resume Next 'En caso que la caja este vacía. 'Elimina la parte decimal del valor de la caja de texto. txtNumero.Text = Int(CDbl(txtNumero.Text)) End Sub
Private Sub cmdBoton3_Click() On Error Resume Next 'En caso que la caja este vacía. 'Calcular el valor absoluto del valor de la caja de texto. txtNumero.Text = Abs(CDbl(txtNumero.Text)) End Sub
41
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Private Sub cmdBoton4_Click() 'Limpia la caja de texto. txtNumero.Text = "" txtNumero.SetFocus End Sub
Private Sub cmdBoton5_Click() On Error Resume Next 'En caso que la caja este vacía. 'Calcula el logaritmo natural del valor de la caja de texto. txtNumero.Text = Log(CDbl(txtNumero.Text)) End Sub
Private Sub cmdBoton6_Click() On Error Resume Next 'En caso que la caja este vacía. 'Calcula el logaritmo base diez del valor de la caja de texto. txtNumero.Text = Log(CDbl(txtNumero.Text)) / Log(10) End Sub
Private Sub cmdBoton7_Click() On Error Resume Next 'En caso que la caja este vacía. 'Calcula la raíz cuadrada del valor de la caja de texto. txtNumero.Text = Sqr(CDbl(txtNumero.Text)) End Sub
Private Sub cmdBoton8_Click()
42
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
On Error Resume Next 'En caso que la caja este vacía. 'Calcula el cuadrado del valor de la caja de texto. txtNumero.Text = CDbl(txtNumero.Text) * CDbl(txtNumero.Text) End Sub
Private Sub cmdBoton9_Click() On Error Resume Next 'En caso que la caja este vacía. 'Calcula el seno del valor de la caja de texto. txtNumero.Text = Round(Sin(CDbl(txtNumero.Text) * (3.141592 / 180)), 14) End Sub
Private Sub SALIR_Click() FRM_CALCULADORA.Hide End Sub
Private Sub txtNumero_GotFocus() 'Hace que el punto de inserción se coloque al final de la caja. txtNumero.SelStart = Len(txtNumero.Text) End Sub
Private Sub txtNumero_KeyPress(KeyAscii As Integer) 'Hace que una caja solo acepte números, el punto y el signo de menos. If InStr("0123456789.-" & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then KeyAscii = 0 End If End Sub
43
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Private Sub txtNumero_MouseMove(Button As Integer, Shift As Integer, X As Single, y As Single) txtNumero.SetFocus End Sub
Fig.13 FRM_ GRAFICO_DE_ERROR. FRM_GRAFICO_DE_ERROR: Private Sub Command2_Click() CommonDialog1.ShowPrinter End Sub
Private Sub Command8_Click() FRM_GRAFICO_DE_ERROR.Hide FRM_MENU_DE_CALCULO.Show End Sub
Private Sub Form_Load() Dim i As Long Dim y As Long
44
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
FRM_GRAFICO_DE_ERROR.Cls FRM_GRAFICO_DE_ERROR.AutoRedraw = True FRM_GRAFICO_DE_ERROR.DrawStyle = 6 FRM_GRAFICO_DE_ERROR.DrawMode = 13 FRM_GRAFICO_DE_ERROR.DrawWidth = 2 FRM_GRAFICO_DE_ERROR.ScaleMode = 3 FRM_GRAFICO_DE_ERROR.ScaleHeight = (256 * 2) For i = 0 To 255 FRM_GRAFICO_DE_ERROR.Line (0, y)(FRM_GRAFICO_DE_ERROR.Width, y + 2), RGB(0, 0, i), BF y=y+2 Next i End Sub
Fig.14 FRM_ Z1. FRM_Z1: Z1.Hide FRM_MENU_DE_CALCULO.Show End Sub
45
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Private Sub Form_Load() Dim i As Long Dim y As Long Z1.Cls Z1.AutoRedraw = True Z1.DrawStyle = 6 Z1.DrawMode = 13 Z1.DrawWidth = 2 Z1.ScaleMode = 3 Z1.ScaleHeight = (256 * 2) For i = 0 To 255 Z1.Line (0, y)-(Z1.Width, y + 2), RGB(0, 0, i), BF y=y+2 Next i End Sub
Fig.15 FRM_ Z2.
46
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
FRM_Z2: Private Sub Command2_Click() CommonDialog1.ShowPrinter End Sub
Private Sub Command8_Click() Z2.Hide FRM_MENU_DE_CALCULO.Show End Sub
Private Sub Form_Load() Dim i As Long Dim y As Long Z2.Cls Z2.AutoRedraw = True Z2.DrawStyle = 6 Z2.DrawMode = 13 Z2.DrawWidth = 2 Z2.ScaleMode = 3 Z2.ScaleHeight = (256 * 2) For i = 0 To 255 Z2.Line (0, y)-(Z2.Width, y + 2), RGB(0, 0, i), BF y=y+2 Next i End Sub
47
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Fig.16 FRM_ Z3. FRM_Z3: Private Sub Command2_Click() CommonDialog1.ShowPrinter End Sub
Private Sub Command8_Click() Z3.Hide FRM_MENU_DE_CALCULO.Show End Sub
Private Sub Form_Load() Dim i As Long Dim y As Long Z3.Cls Z3.AutoRedraw = True Z3.DrawStyle = 6
48
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Z3.DrawMode = 13 Z3.DrawWidth = 2 Z3.ScaleMode = 3 Z3.ScaleHeight = (256 * 2) For i = 0 To 255 Z3.Line (0, y)-(Z3.Width, y + 2), RGB(0, 0, i), BF y=y+2 Next i End Sub
Fig.17 FRM_ Z4. FRM_Z4: Private Sub Command2_Click() CommonDialog1.ShowPrinter End Sub Private Sub Command8_Click() Z4.Hide FRM_MENU_DE_CALCULO.Show
49
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
End Sub Private Sub Form_Load() Dim i As Long Dim y As Long Z4.Cls Z4.AutoRedraw = True Z4.DrawStyle = 6 Z4.DrawMode = 13 Z4.DrawWidth = 2 Z4.ScaleMode = 3 Z4.ScaleHeight = (256 * 2) For i = 0 To 255 Z4.Line (0, y)-(Z4.Width, y + 2), RGB(0, 0, i), BF y=y+2 Next i End Sub 8. Datos de prueba: Para la demostración de la aplicabilidad del método lee Gonzales y del programa, se plantea el siguiente ejemplo: Utilizando el método de Lee Gonzales Eakin determinar la viscosidad del gas natural teniendo en cuenta los siguientes datos: Z= 0.792 2014.7 lpca 600°R Sg(gas)= 0.75 Solución: Primero se introducen los datos respectivos al programa, manera que no exista ambigüedad según la grafica 18:
50
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Fig.18 datos introducidos en el programa.
A continuación debemos de oprimir los botones de debidamente para poder obtener los resultados correspondientes:
y de
Fig.19 resultados de la densidad del gas y el peso molecular. En la figura 19 podemos ver los resultados pertinentes de la densidad del gas y su respectivo peso molecular, cabe recalcar que para el cálculo de la viscosidad la densidad debe de estar en g/cc.
51
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
Fig.20 resultados de las constantes de Lee Gonzales Eakin.
A continuación procedemos a encontrar K, X, Y mediante las teclas se observa en la grafica 20.
Fig.21 viscosidad del gas. Finalmente encontramos el valor de la viscosidad del gas, figura 21.
52
. Esto
VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN
TOLA MAYTA LIMBERG
9. Resultados: Del anterior problema podemos ver que el programa saco los resultados correspondientes mediante el método de Lee Gonzales Eakin , dendonos un valor de la viscosidad del gas de : 0.02220546(cp). Así como de los valores de: Densidad del gas en lb/cf. Peso molecular del gas en moles/lb-mol. K. y. x. 10. conclusiones: De una manera general podemos concluir que se cumplieron los objetivos propuestos, mediante el diseño del programa de VISCOSIDAD DEL GAS, teniendo en cuenta los demás métodos para el cálculo de la viscosidad así mismo de sus alcances en el cálculo de esta osea sus errores y complejidad de cálculo mediante correcciones. Un problema que se encontró fue las unidades de la densidad con la que trabajaría la correlación ya que en michas bibliografías se contradecían dándonos datos erróneos de ecuaciones de Lee Gonzales Eakin; en consecuencia se pudo arreglar por así decirlo tales errores, afirmando que la densidad del gas para este método siempre debe de estar en las unidades de g/cc. 11. Bibliografía
VISUAL BASIC 6.0,ORIENTADO A BASES DE DATOS SEGUNDA EDICIÓN Carlos M. Rodriguez Bucarelly
TRABAJO ESPECIAL DE GRADO-GENERAR UN MODELO ANALÍTICO QUE PERMITA ESTIMAR PRESIÓN MÍNIMA DE MISCIBILIDAD Y RECOBROS UTILIZANDO DISTINTOS GASES DE INYECCIÓN EN YACIMIENTOS DE CRUDO.
Landáez I., Rosa I. y Medina M., Elías E.
INGENIERIA DE YACIMIENTOS DE GAS CONDENSADO (2003). Gonzalo Rojas .
CORRELACIONES PVT. Carlos Banzer.
http:/es.wikipedia.org/wiki/Viscosidad.
53
View more...
Comments