4o PDPETRO, Campinas, SP 21-24 de Outubro de 2007 9.2.0233– 2 SISTEMA DE TRATAMENTO E CORREÇÃO DE DADOS DE SUPERVISÓRIO PARA ESTAÇÕES COLETORAS DE PETRÓLEO Bruno Coitinho Araújo1 (Universidade Federal de Campina Grande), Herman Martins Gomes2 (Universidade Federal de Campina Grande), Carlos de Oliveira Galvão3 (Universidade Federal de Campina Grande) Av. Aprígio Veloso, 882 – Bodocongó. Campina Grande, Brazil, [email protected] Av. Aprígio Veloso, 882 – Bodocongó. Campina Grande, Brazil, [email protected] Av. Aprígio Veloso, 882 – Bodocongó. Campina Grande, Brazil, [email protected] Estações coletoras de petróleo, cujos componentes essenciais são tanques de armazenamento e bombas, são responsáveis pela coleta e distribuição da produção dos campos de petróleo. A fim de permitir um monitoramento e controle da produção, sistemas supervisórios registram dados dessas estações a partir de medidores instalados junto às bombas e tanques. Esses dados, no entanto, apresentam inúmeros erros e ruídos causados por medições incorretas e esporádicas, os quais causam incertezas e imprecisões que podem comprometer operações que necessitem de elevado grau de precisão e confiabilidade dos dados, como previsões, simulações, otimizações de custos e de operações, etc. Diante desse contexto, este trabalho tem como principal objetivo realizar o tratamento e redução de erros e ruídos para as seguintes variáveis de interesse: estado de cada bomba (ligado ou desligado), nível dos tanques (em metros), vazão de saída da estação (em m³/h) e pressão de descarga das bombas de transferências (em kgf/cm²). A metodologia para o tratamento dos erros apresentada neste trabalho baseia-se em heurísticas que prevêem as causas de erros mais comuns nos equipamentos, criadas a partir do estudo da relação entre as variáveis. O sistema desenvolvido foi integrado como um módulo ao SmartPumping, software fruto de projeto financiado pela Petrobras e executado pela Universidade Federal de Campina Grande e pela Universidade Federal do Rio Grande do Norte para o controle inteligente de sistemas de bombeamento em redes de escoamento de petróleo. Para validação do tratamento de dados, foram utilizados dados reais de uma malha composta de três Estações Coletoras Satélites (ECS). Os dados corrigidos apresentaram-se confiáveis e de boa qualidade para uso pelos módulos do SmartPumping (módulo de calibração, de otimização, de previsão da produção de petróleo, etc.) na quase totalidade dos dados medidos ao longo de meses contínuos para todas as variáveis consideradas. estações coletoras de petróleo, heurísticas, sistemas supervisórios 1. INTRODUÇÃO Estações coletoras de petróleo, cujos componentes essenciais são tanques de armazenamento e bombas, são responsáveis pela coleta e distribuição da produção dos campos de petróleo. A fim de permitir um monitoramento e controle da produção, sistemas supervisórios registram dados dessas estações a partir de medidores instalados junto às bombas e tanques. Esses dados, no entanto, apresentam inúmeros erros e ruídos causados por medições incorretas e esporádicas, os quais causam incertezas e imprecisões que podem comprometer operações que necessitem de elevado grau de precisão e confiabilidade dos dados, como previsões, simulações, otimizações de custos e de operações, etc. Diante desse contexto, este trabalho tem como principal objetivo realizar o tratamento e redução de erros e ruídos para as seguintes variáveis de interesse, medidas nas estações coletoras de petróleo: estado de cada bomba (ligado ou desligado), nível dos tanques (em metros), vazão de saída da estação (em m³/h) e pressão de descarga das bombas de transferências (em kgf/cm²). O sistema desenvolvido foi integrado como um módulo ao SmartPumping (Brasileiro, 2003), software fruto de projeto financiado pela Petrobras e executado pela Universidade Federal de Campina Grande e pela Universidade Federal do Rio Grande do Norte para o controle inteligente de sistemas de bombeamento em redes de escoamento de petróleo. Dados referentes a três ECS de uma malha terrestre (Off-shore) foram utilizados neste trabalho, para realizar os experimentos e validar os procedimentos desenvolvidos. Estas estações serão chamadas de T1, T2A e T2E (nomeadas segundo a sua topologia interna). Este artigo está organizado da seguinte forma: a Seção 2 apresenta a revisão bibliográfica, abrangendo técnicas de correção de erros e ruídos dos dados. A Seção 3 esclarece a metodologia escolhida e empregada para a correção dos dados das estações coletoras consideradas. Na Seção 4, podem ser encontrados os resultados da execução do método desenvolvido, assim como estatísticas de acerto da correção. Considerações finais e conclusões são encontrados na Seção 5. Copyright © 2007 ABPG 4o PDPETRO, Campinas, SP 21-24 de Outubro de 2007 9.2.0233– 2 2. REVISÃO DA LITERATURA Esta seção apresenta revisão bibliográfica sobre diversas técnicas para o tratamento de erros e ruídos de séries de dados. Existem diversas técnicas para remoção de problemas de ruídos e de erros em séries temporais. Estas técnicas podem ser agrupadas de forma geral em duas grandes classes diferentes: as baseadas em Inteligência Artificial e as técnicas baseadas na Estatística (Saeed, 2006). Entretanto, uma vez que foi identificado no supervisório que erros de medição eram bem mais graves que os ruídos (oscilações) nos dados, as técnicas estudadas da Estatística e da Inteligência Artificial (com exceção das heurísticas) não puderam ser aproveitadas, pois seu uso típico era no tratamento de ruídos. As heurísticas foram utilizadas por serem apropriadas ao tratamento dos erros de medição, mediante um estudo do comportamento das variáveis em questão, como será explicado na seção 3.3. A seguir, encontram-se apresentadas técnicas e trabalhos relacionados ao tratamento e remoção de séries. 2.1 Técnicas da Estatística Dentre as técnicas baseadas na Estatística, algumas técnicas de remoção de ruído clássicas são Filtro de Médias Móveis, Filtro da Mediana e Filtro de Savitzky-Golay (Savitzky e Golay, 1964). Existem outras técnicas mais complexas, com necessidade de pré-processamento complexo dos dados, como a Transformada de Fourier (Duhamel e Vetterli, 1990) ou a Transformada Wavelet (Daubenchies, 1992). As técnicas estatísticas se dividem em pelo menos duas grandes vertentes: as técnicas de domínio do tempo e as de domínio da freqüência. Filtros estatísticos clássicos como Filtro de Médias Móveis e Filtro da Mediana são de domínio do tempo. Existem ainda as que são do domínio do tempo e da freqüência ao mesmo tempo, como o Filtro Wavelet (Vallasenor et al., 1995). Outros filtros, a exemplo do Filtro de Kalman (Kalman, 1960) e da Transformada Wavelet (Daubenchies, 1992), podem ser utilizados na reducão de erros ocasionados por medições incorretas. 2.2 Técnicas de Inteligência Artificial Também é possível construir filtros aplicando-se modelos baseados em Inteligência Artificial (IA). Dentre as técnicas de Inteligência Artificial, as mais comumente utilizadas na retirada de ruído ou de erros são: Redes Neurais Artificiais (RNAs), Sistemas de Inferência Fuzzy (SIFs) (Ville et al., 2003; Mei e Shark, 1996; Wan e Nelson, 1998), Algoritmos Genéticos (AGs) (Savitzky e Golay, 1964), heurísticas (Soto et al., 2000), ou ainda uma mistura dessa técnicas, formando sistemas híbridos. A seguir, algumas técnicas baseadas em IA para remoção ruídos de séries temporais serão apresentadas em maiores detalhes. 2.2.1 Redes Neurais Artificiais As RNAs vêm sendo estudadas em várias situações com o objetivo de remover ou filtrar ruídos (Dorronsoro et al., 2003; Widrow e Winter, 1988; Wan e Nelson, 1998; Michael, 1992; Feldbusch, 2000; Tamura e Waibel, 1988). Na literatura, encontram-se novas propostas de modelo de Redes Neurais específicas para o tratamento e filtragem de ruídos, como a Rede Neural Auto-associativa para filtragem de ruídos (Dorronsoro et al., 2003). Devido à propriedade de possuir um mapeamento não-linear interno e à capacidade de aprendizagem, as RNAs também podem ser utilizadas de forma indireta, contribuindo com outros métodos para a filtragem de ruídos. Zhao e Bose (Zhao e Bose, 2004) utilizam uma Rede Neural para simplificar consideravelmente o processamento das ondas de componentes eletrônicos e drivers de corrente alternada, simplificando o projeto de hardware e/ou software que são tradicionalmente utilizados para essa aplicação. Podem ser encontrados vários outros casos de uso de redes neurais para o fim de filtragem de dados com sucesso, como nas pesquisas de Widrow e Winter (1988) e de Ville et al. (2003). 2.2.2 Heurísticas Normalmente, existem duas propriedades principais na criação e elaboração de algoritmos: fazer o algoritmo ter um tempo de processamento sempre curto ou ser a solução ótima ou provavelmente boa para o problema em todos os casos. Um algoritmo heurístico, no entanto, é um algoritmo que não cumpre uma dessas propriedades, podendo ser ou um algoritmo que encontra boas soluções a maioria das vezes, mas não tem garantias de que sempre encontrará, ou um algoritmo que tem processamento rápido, mas não se tem provas de que será rápido para todas as situações. A criação de heurísticas, que estão inseridas na área da Inteligência Artificial, está atrelada ao estudo do conhecimento do caso. No contexto deste trabalho este conhecimento é adquirido pela análise do comportamento Copyright © 2007 ABPG 4o PDPETRO, Campinas, SP 21-24 de Outubro de 2007 9.2.0233– 2 das estações, das variáveis medidas e disponibilizadas pelo supervisório e pela relação entre as mesmas. Assim, qualquer algoritmo de correção que se constitua de um conjunto de “regras” que modelem o comportamento específico das variáveis a fim de corrigi-las será um algoritmo heurístico. 3. METODOLOGIA O módulo de tratamento de erros e ruídos foi desenvolvido utilizando a linguagem de programação Java, uma vez que ele deverá se comunicar com o sistema SmartPumping, que foi desenvolvido em Java. A seguir, serão apresentados: a) detalhes sobre a malha terrestre estudada, bem como comportamento típico das variáveis de nível de tanque, vazão de saída e pressão de descarga para cada; b) o diagnóstico dos dados do supervisório, que mostra os problemas encontrados nos dados, e c) a metodologia apropriada para a filtragem dos dados, que foi escolhida a partir da lista de técnicas da Seção 2 e da análise do diagnóstico dos dados (Seção 3.2). 3.1 Malha terrestre de estações coletoras de petróleo A malha terrestre analisada por este trabalho é composta de três ECSs: T1, T2A e T2E. A Figura 1 ilustra a estruturação das três ECSs, onde pode ser observadas as seguintes características: • • • A produção dos campos de petróleo atinge cada estação individualmente. Para T2A e T1, além da produção de seus próprios campos de petróleo, existe a adição da produção de outra estação (T2E e T2A, respectivamente). A estação T2E envia sua produção para T2A, que por sua vez tem sua produção enviada para T1. Elementos das estações Produção de petróleo Tanques Junções Bombas Dutos T2E Produção Produção EC T2A Navio petroleiro T1 Figura 1. Estruturação da malha terrestre. A seguir, serão descritos os aspectos da topologia de cada estação (número de tanques de transferência, número de bombas etc.), a forma como as estações escoam o fluido e o comportamento típico das variáveis estudadas (nível do tanque, vazão e pressão) para cada estação. 3.1.1 Estação T1 A estação T1 possui apenas um tanque. Os elementos principais de T1 para este trabalho são o tanque de transferência A e as bombas A e B. As bombas A e B são responsáveis por bombear o fluido (óleo + água) armazenado no tanque para a próxima estação. Na Figura 1, pode-se ver graficamente a estrutura interna da estação T1 e sua relação com as outras estações da malha. Como há apenas um tanque de transferência, a decantação é realizada da forma mais simples: a estação é alimentada com a mistura óleo-água fazendo o tanque encher-se e, conseqüentemente, o nível do tanque elevarse. Nesse instante, a bomba de saída do sistema está desligada e, portanto nenhum fluido está partindo da estação. Em dado momento, as bombas de transferência são ligadas e o nível do tanque decresce. Dessa forma, o ciclo se repete. Um exemplo de como o nível do tanque de transferência se comporta ao longo do tempo, juntamente com o estado da bomba, pode ser observado no gráfico conjunto da Figura 2. Copyright © 2007 ABPG 4o PDPETRO, Campinas, SP 21-24 de Outubro de 2007 2,5 2 1,5 1 0,5 23,8 21,7 19,5 17,3 15,2 13,0 10,8 8,7 6,5 4,3 2,2 0 0,0 Nível de tanque (m) ou estado de bomba (on/off) 9.2.0233– 2 Tem po (h) Figura 2. Dados das variáveis: nível do tanque (curva superior) e estado da bomba (curva inferior) para um determinado dia em 2006. 60 5 50 4 40 Vazão de saída 30 20 10 Pressão em kgf/cm2 Vazão em m3/h O comportamento do nível do tanque neste caso (Figura 2) é exatamente o esperado: o nível do tanque (linha de cima) cresce enquanto a bomba de saída (linha de baixo) está desligada, e decresce quando a bomba se liga. Durante o tempo que a bomba está desligada, a vazão de saída daquela estação é zero, porém existe vazão de entrada, pois há fluido entrando nos tanques. As figuras abaixo (Figura 3 e Figura 4) ilustram o comportamento típico das variáveis vazão de saída e pressão de descarga obtidas no supervisório para a estação coletora T1. 3 2 Pressão 1 0 0 -1 Tempo (um dia) Tempo (um dia) Figura 3. Comportamento típico da variável vazão de saída para a estação T1. Figura 4. Comportamento típico da variável pressão de saída para a estação T1. 3.1.2 Estação T2A Na estação T2A, existem quatro tanques e quatro bombas. No entanto, apenas os tanques de transferência e uma dessas bombas serão levados em consideração, por possuírem relevância para a produção e, portanto, para este trabalho. Os dois tanques de transferência funcionam de forma alternada. Ora bombeia-se um tanque, ora outro, ora ambos. As figuras abaixo (Figura 5 e Figura 6) ilustram o comportamento típico das variáveis vazão de saída e pressão de descarga obtidas no supervisório para a estação coletora T2A. 35 Vazão em m3/h 100 80 60 Vazão 40 20 Pressão em kgf/cm2 120 30 25 20 Pressão 15 10 5 0 0 Tempo (um dia) Tempo (um dia) Figura 5. Comportamento típico da variável vazão de saída para a estação T2A. Copyright © 2007 ABPG Figura 6. Comportamento típico da variável pressão de saída para a estação T2A. 4o PDPETRO, Campinas, SP 21-24 de Outubro de 2007 9.2.0233– 2 3.1.3 Estação T2E 70 16 60 14 50 40 Vazão 30 20 10 Pressão em kgf/cm2 Vazão em m3/h Nesta estação há dois tanques equalizados e duas bombas de transferência, das quais uma é levada em consideração neste trabalho por ser a responsável por fazer o bombeamento dos dois tanques. Como existem dois tanques de transferência equalizados, as operações de alimentação e de decantação são realizadas de forma conjunta: quando o fluido alimenta a estação, ele ocupa ambos os tanques, pela junção entre eles. Em um dado instante, após a mistura óleo-água prencher ambos os tanques e, conseqüentemente, os níveis dos tanques se elevarem, as bombas de saída são ligadas e os níveis dos tanques decrescem. Este ciclo se repete. O layout de T2E pode ser visualizado na Figura 1. As figuras abaixo (Figura 7 e Figura 8) ilustram o comportamento típico das variáveis vazão de saída e pressão de descarga obtidas no supervisório para a estação coletora T2E. 12 10 8 Pressão 6 4 2 0 0 Tempo (um dia) Figura 7. Comportamento típico da variável vazão de saída para a estação T2E. Tempo (um dia) Figura 8. Comportamento típico da variável pressão de saída para a estação T2E. 3.2 Diagnóstico dos dados Os dados utilizados neste trabalho foram disponibilizados semanalmente, amostrados com intervalos de cinco em cinco segundos. Devido às falhas ou imprecisões nos equipamentos de medição, os dados apresentam incoerências e vários outros problemas. Os problemas foram classificados em dois tipos: os erros e os ruídos. Os ruídos são originados a partir da medição analógica dos instrumentos de medida. Toda medição analógica, por mais precisa que seja, tem algum grau de incerteza associado e, portanto, sempre apresentará ruído. Uma medição é um número real, mas não exato. Os erros, diferentemente dos ruídos, são originados a partir de problemas de funcionamento dos aparelhos de medição em si. Dessa forma, caso um medidor pare de funcionar por 1 hora, por exemplo, o período de aquisição de dados neste intervalo estará comprometido e constituirá um erro. Foi identificado que a maioria dos problemas dos dados encontrados é devida a erros, e não a ruídos. Para filtrar ruídos e erros nos dados, existem muitas técnicas de tratamento conhecidas e utilizadas para esse fim, especialmente para tratamento de ruídos, que foram descritos na Seção 2. 3.2.1 Problemas encontrados nos dados Os dados históricos que o SmartPumping utiliza encontram-se armazenados no supervisório, que possui informações sobre várias variáveis: vazão de saída, pressão de descarga, estado da bomba, níveis dos tanques e outras. Muitos problemas podem ocorrer durante a aquisição, a conversão, a transmissão e o armazenamento da informação adquirida nas estações coletoras de petróleo. Os problemas mais comuns são devido à má especificação, instalação, operação e manutenção dos equipamentos de medição, aos problemas na conversão da informação mecânica em elétrica ou eletrônica e às falhas nos meios de transmissão, recepção e armazenamento dos dados. Todos estes problemas se refletem na má qualidade dos dados disponíveis no supervisório, criando uma informação corrompida, que pode ser pontual (em uma só variável em um instante) ou distribuída (em várias variáveis e/ou por um intervalo de tempo). A seguir, alguns dos problemas identificados no período de dados analisado (48 dias) estão listados: • Estados de bomba inconsistentes: Em muitos momentos, os estados de ligado/desligado da confirmação das bombas não são binários, apresentando números reais e intermediários entre 0 e 1 como valores. • Dados nulos: Exceto para estado das bombas, o valor nulo nunca é esperado durante os períodos em que as bombas da estação estão em pleno funcionamento. Copyright © 2007 ABPG 4o PDPETRO, Campinas, SP 21-24 de Outubro de 2007 • • • • • 9.2.0233– 2 Estado de bomba inverso ao que deveria ser: Estado da bomba em T2A é o inverso do estado nas outras estações, ou seja, 1 significa “bomba desligada” e 0, “bomba ligada”; isto foi verificado através do confronto entre a variação dos níveis dos tanques com o estado das bombas da estação. Informações indisponíveis para alguns intervalos de tempo: Por alguns segundos, minutos ou mesmo horas, as informações podem se tornar indisponíveis por motivos de diferentes naturezas. Mensagens de erro como “No Data”, “I/O Time out” ou “Shutdown” são encontradas. Incoerência entre os estados da bomba e os níveis dos tanques: Foram encontrados intervalos de tempo onde a bomba se encontrava ligada enquanto que o nível do tanque elevava-se ou mantinha-se constante. Ruídos nas amostras: Muitas vezes, a medição devolve valores numéricos, mas são valores nãoprecisos, devido a oscilações ou incompatibilidade com outros dados. Incompatibilidade entre medições das vazões: As ECSs escoem seus fluidos em uma ECC. Logo, é de se esperar que o valor referente à vazão de entrada da ECC fosse igual à soma das vazões de saída das demais ECS. Esta equivalência não foi verificada. 3.3 Técnica utilizada no tratamento No decorrer da Seção 2 foram apresentadas várias técnicas da área da estatística e de Inteligência Artificial que podem ser utilizadas para a remoção de erros ou ruídos de uma série de dados. Percebeu-se que muitas dessas técnicas são geralmente utilizadas e utilizáveis apenas para o tratamento de ruídos dos dados, e não para tratar erros. O problema é que de acordo com o diagnóstico dos dados efetuado, estes não possuem ruídos em intensidade considerável, de modo que o tratamento dos erros é a parte principal do trabalho a ser realizado. Técnicas como o Filtro da Transformada de Fourier, as Redes Neurais apresentadas e as técnicas mais simples, como Filtro da Média Móvel e Filtro da Mediana, são utilizáveis apenas para a correção de ruídos. As heurísticas, no entanto, são a técnica mais recorrente na literatura para corrigir erros em dados (Soto, 2000). Por serem apropriadas para a correção de erros, foram utilizadas heurísticas nos algoritmos de correção desenvolvidos nesta pesquisa. Para que as heurísticas apresentem bons resultados, deve ser realizado o estudo do conhecimento acerca do problema de forma satisfatória. Para isso, estudou-se o comportamento de cada estação e operações que acontecem diariamente, como escoamento de fluido e as transições de bomba ligada / desligada. Baseando-se neste conhecimento, criou-se um conjunto de heurísticas para os níveis de tanque, outro conjunto para dados de vazão e para os dados de pressão. De forma geral, tipos de dados semelhantes apresentam formas de detecção e correção também semelhantes. Os resultados obtidos pelo uso das heurísticas desenvolvidas são apresentados na Seção 4. 3.4 Desenvolvimento dos algoritmos Os dados do supervisório de cada uma das estações analisadas apresentam comportamentos diferenciados. Por isso, além da filtragem de ruídos dos dados, o Módulo de Tratamento e Redução de Erros nos Dados irá aplicar um conjunto de regras de correções referentes a procedimentos e comportamentos conhecidos de cada uma das estações, eliminando os erros específicos restantes. Um algoritmo (procedimento) que tenha por objetivo a redução de erros de medição de uma série de dados pode abranger as seguintes ações: • Detecção do problema: identificação do erro na série de dados. Pode ser implementada com heurísticas (regras). • Correção: correção da série temporal baseada nas informações adquiridas na própria série (ou em outras séries auxiliares). Com este objetivo, utilizou-se de heurísticas diferenciadas para o tratamento de tipos diferentes de dados. Para cada algoritmo de tratamento de erros, um conjunto de valores variáveis (configuráveis) é utilizado durante a execução. A seguir, os procedimentos de remoção de erros e as constantes utilizadas serão descritos, conforme o tipo de dado. 4. RESULTADOS Pelo diagnóstico dos dados, percebeu-se que os ruídos presentes para todas as variáveis observadas são pouco intensos, o que permitiu que a oscilação referente aos ruídos pudesse ser consideravelmente suprimida por uma simples re-amostragem dos dados. Foi utilizada uma amostragem de 144 medições diárias, ou seja, uma medição a cada 10 minutos, enquanto que a série original possuía amostragem de 17.280 medições diária, ou seja, uma medição a cada 5 segundos. Dois filtros de tratamento de erros nos dados foram desenvolvidos: Filtro do Nível do Tanque, Filtro de Vazão / Pressão. Pôde-se identificar semelhanças suficientes nos dados de vazão e pressão de modo a ser Copyright © 2007 ABPG 4o PDPETRO, Campinas, SP 21-24 de Outubro de 2007 9.2.0233– 2 necessário apenas um filtro para estas variáveis. Para cada filtro de tratamento de erros, um conjunto de valores constantes e configuráveis é utilizado durante a execução. A seguir, os filtros desenvolvidos serão descritos, bem como os resultados obtidos pela aplicação destes filtros nos dados brutos do supervisório. 4.1 Filtro do Nível do Tanque O Filtro do Nível de Tanque necessita de algumas constantes para a sua execução. Essas constantes são utilizadas como parâmetros de configuração na detecção ou correção dos dados de níveis de tanque. São as principais constantes: valor mínimo e máximo do nível do tanque, inclinação mínima e máxima da reta formada por dois pontos consecutivos, diferença máxima admitida entre valores consecutivos e diferença máxima admitida entre inclinações de reta consecutivas. O algoritmo do Filtro do Nível do Tanque implementa várias heurísticas de correção. Abaixo, o trecho do algoritmo que implementa o Filtro do Nível do Tanque relativo a uma das heurísticas de correção dos dados é ilustrado, em pseudo-código. corrige(Decimal[] série, Inteiro i /* i, posição de correção */) último_ponto_tem_erro = verdadeiro se (não houver valores corretos à esquerda) Regressão linear com próximos valores válidos se (não houver valores corretos à direita) Regressão linear com últimos valores válidos // valor “menos recente” e sem erros com mesma inclinação da atual, à esquerda inicioCorretoEsquerda = menos_recente_correto_esquerda(série, i); // índice do valor “mais recente” e correto com mesma inclinação atual à esquerda fimCorretoEsquerda = mais_recente_correto_esquerda(série, i); //valor “mais próximo” e correto com mesma inclinação atual à direita inicioCorretoDireita = mais_proximo_correto_direita(série, i); //valor “mais distante” e correto com mesma inclinação atual à direita fimCorretoDireita = mais_distante_correto_direita(série, i); // valores dos N pontos (N é configurável) válidos à esquerda; serão regredidos numa reta ladoEsquerdo = valores_a_esquerda(série, i); // valores dos N pontos (N é configurável) válidos à direita; serão regredidos numa reta ladoDireita = valores_a_direita(série, i); distanciaCorrecao = inicioCorretoDireita - fimCorretoEsquerda cruza_e_intersepta_retas (série,ladoEsquerdo, ladoDireito, distanciaCorrecao, tamanho(ladoEsquerdo), inicioCorretoDireita) Aplicou-se o filtro do nível do tanque em cada uma das três estações principais estudadas ao longo deste trabalho: T1, T2A e T2E. A estação T1 apresenta erros de medição para a variável nível de tanque com menos freqüência que as outras estações: com uma probabilidade de 95%, os dados da variável nível do tanque em T1 para um dia (1440 minutos) apresentam erros de medição em um intervalo de 2 a 20 minutos. A estação T1 é também a que apresenta erros mais simples de correção, devido à estabilidade no comportamento do nível do tanque. Para os 48 dias considerados, o filtro de tratamento de nível de tanque corrigiu todos os intervalos com erros de medição. Uma correção típica para dados de um dia na estação T1 é apresentada na Figura 9. Nível de tanque bruto em T1 Nív el 3,5 de tan 3 qu 2,5 e 2 (m) 1,5 Nível de tanque corrigido em T1 Nív el 3,5 de tan 3 qu 2,5 e 2 (m) 1,5 1 1 0,5 0,5 0 0 Tempo (1 dia) Tempo (1 dia) Figura 9. Correção de dados para a variável nível de tanque em T1 para um dia em 2005. A estação T2A possui dois tanques de interesse: B e C. A estação T2A foi a que apresentou mais erros. Com uma probabilidade de 95 %, os dados da variável nível do tanque para o tanque B para um dia apresentam erros de medição em um intervalo de 6,22 a 8,34 horas; para o tanque C, 5,81 a 35,86 minutos. O filtro corrigiu 96 % dos erros de medição para o tanque B e 92 % para o tanque C. Copyright © 2007 ABPG 4o PDPETRO, Campinas, SP 21-24 de Outubro de 2007 9.2.0233– 2 A Figura 10 e a Figura 11 apresentam exemplos dos resultados obtidos da correção de dados de nível nos tanque em T2A. Nível do tanque corrigido em T2A Nível do tanque (metros) Nível do tanque (metros) Nível do tanque original em T2A 6 5 4 3 2 1 0 1 11 21 31 41 51 61 71 81 6 5 4 3 2 1 0 91 101 111 121 131 141 1 11 21 31 41 51 61 Tem po (1 dia) 71 81 91 101 111 121 131 141 Tem po (1 dia) Figura 10. Correção de dados de nível de tanque típica no primeiro tanque de T2E. Nível do tanque corrigido de T2A Nível do tanque original de T2A 6 Nível do tanque (metros) Nível do tanque (metros) 7 6 5 4 3 2 1 0 5 4 3 2 1 0 1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 1 11 21 31 41 51 Tem po (1 dia) 61 71 81 91 101 111 121 131 141 Tem po (1 dia) Figura 11. Correção de dados de nível de tanque típica no segundo tanque de T2A. A estação T2E também possui dois tanques, como T2A, chamados B e C. Com uma probabilidade de 95 %, os dados da variável nível do tanque para o tanque B para um dia apresentam erros de medição em um intervalo de 12,21 a 37,38 minutos; para o tanque C, de 14,73 a 40,68 minutos. O filtro corrigiu 97 % dos erros de medição para o tanque B e 94 % para o tanque C. Uma correção típica para dados de um dia na estação T2E é apresentada na Figura 12. Série corrigida em T2E Nível do tanque (metros) Nível do tanque (metros) Série original em T2E 3,5 3 2,5 2 1,5 1 0,5 0 1 12 23 34 45 56 67 78 89 100 111 122 133 144 Tem po (1 dia) 3,5 3 2,5 2 1,5 1 0,5 0 1 12 23 34 45 56 67 78 89 100 111 122 133 144 Tem po (1 dia) Figura 12. Correção de dados de nível de tanque em T2E para um dia em 2006. 4.2 Filtro da Vazão e Pressão Como os dados de vazão e pressão são semelhantes entre si, o mesmo algoritmo pôde ser utilizado para realizar a correção. As principais variáveis de configuração utilizadas pelo filtro incluem as variáveis do filtro do nível de tanque e mais algumas relacionadas à divisão de valores da série de dados em classes de freqüências diferentes, para discriminação. A variável de configuração refragmentável, que pode assumir valor verdadeiro ou falso, determina se há necessidade de subdividir os dados dentro de um intervalo (valores de mesmo patamar), em várias classes diferentes, a fim de corrigir os dados com um valor representativo de cada classe (como a mediana). Aplicou-se o filtro da vazão / pressão em T1, T2A e T2E. Novamente, T1 é a estação com menor e T2A a de maior freqüência de erros. Na estação T1, a vazão não costuma subdividir-se em mais de um patamar dentro de um mesmo intervalo com bomba ligada. Todas essas anomalias são corrigidas com valores representativos para cada intervalo. A Tabela 1 apresenta o intervalo de confiança referente à probabilidade da presença de erros na vazão das estações, além do percentual de correção pela aplicação do filtro desenvolvido. Copyright © 2007 ABPG 4o PDPETRO, Campinas, SP 21-24 de Outubro de 2007 9.2.0233– 2 Tabela1. Intervalo de confiança da aplicação do filtro de vazão e pressão e percentual de correção bem sucedida. Variável T1 Frequência de erros nos dados (minutos) IC (95%) = [0,00;2,96] IC (95%) = [9,91;53,01] IC (95%) = [0,11;6,97] IC (95%) = [0,00;22,82] IC (95%) = [0,00;19,82] IC (95%) = [0,00;6,17] Vazão Pressão Vazão Pressão Vazão Pressão T2A T2E Percentual de correção bem-sucedida 99 % 98 % 99 % 100 % 99 % 100 % A Figura 13 ilustra o tratamento da vazão para dados coletados em um dia na estação T2A. Vazão bruta em T2A Vazão corrigida em T2A 120 120 Va 100 zã 80 o (m 60 3/ h) 40 20 Va 100 zã o 80 (m 3/h 60 ) 40 20 0 0 Tempo (1 dia) Tempo (1 dia) Figura 13. – Tratamento de dados em T2A para dados coletados ao longo de um dia. O algoritmo também pôde ser utilizado no tratamento da variável pressão, bastando apenas atribuir o valor verdadeiro à variável refragmentável. A Figura 14 ilustra o tratamento da pressão para a estação T2A. Pressão Bruta em T2E Pressão Corrigida em T2E 16 16 14 14 12 12 10 10 8 8 6 6 4 4 2 2 0 0 1 11 21 31 41 51 61 71 81 Tempo (1 dia) 91 101 111 121 131 141 1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 Tempo (1 dia) Figura 14. – Tratamento de dados em T2E para dados coletados ao longo de um dia. 5. CONCLUSÃO Neste artigo, foi apresentada uma ferramenta computacional para o tratamento de erros e ruídos encontrados em dados mensurados em estações coletoras de petróleo terrestres. O diagnóstico dos dados indicou a presença de ruídos (oscilações nas medições) e erros (incoerências nos valores medidos). Os ruídos puderam ser suprimidos pela amostragem menos freqüente dos dados; para os erros, foram desenvolvidos dois algoritmos usando heurísticas: um para o tratamento de dados do nível dos tanques e outro para o tratamento das variáveis de vazão de saída e pressão de descarga. Os algoritmos puderam ser utilizados em dados provenientes de quaisquer das estações. Para validação do tratamento de dados, foram utilizados dados reais das variáveis nível de tanque, vazão e pressão de uma malha composta de três Estações Coletoras Satélites, T1, T2A e T2E. Os dados brutos levados em consideração foram coletados ao longo de 48 dias, amostrados de cinco em cinco segundos. A correção sobre variável que apresentou desempenho menor desempenho foi a do nível do tanque para o tanque B em T2A, onde foram encontrados dois dias com correções que não refletiam o comportamento Copyright © 2007 ABPG 4o PDPETRO, Campinas, SP 21-24 de Outubro de 2007 9.2.0233– 2 esperado para a variável cujo intervalo foi superior a 30 minutos. De maneira geral, no entanto, os resultados obtidos pela aplicação do método desenvolvido sobre os dados brutos do supervisório obtiveram índices de correção bem-sucedida acima de 90 %. A ferramenta implementada foi incorporada com sucesso ao projeto SmartPumping como o Módulo de Tratamento e Filtragem de Dados. Os dados corrigidos apresentaram-se confiáveis para uso pelos demais módulos do SmartPumping (módulo de calibração, de otimização, de previsão da produção de petróleo etc.). Em junho de 2007, o projeto SmartPumping já se encontrará em uso em unidades de negócios da Petrobras, devidamente instalado. 6. REFERÊNCIAS BRASILEIRO, F.V. et al. Intelligent real-time monitoring and control of pipeline networks. Proceedings of Rio Pipeline Conference and Exhibition, IBP, Rio de Janeiro, 2003. DAUBENCHIES, Ingrid. Ten Lectures On Wavelets, Society for Industrial and Applied Mathematics, 1992. DORRONSORO, J. R., LÓPEZ, V., CRUZ, C. S., SINGÜENZA, J. A. Autoassociative Neural Networks and Noise Filtering. IEEE Transactions on Signal Processing, v. 51, n. 5, May 2003. DUHAMEL, P., VETTERLI, M. Fast Fourier Transforms: A Tutorial Review and a State of the Art. Signal Processing, v. 19, p. 259-299, April 1990. FELDBUSCH, F. Identification of noises by neural nets for application in hearing aids. Proceedings of II International ICSC Symposium on Neural Computation, p. 505-510, 2000. KALMAN, R. E. A new approach to linear filtering and prediction problems. In: Transaction of the ASME. Journal of Basic Engineering., p. 35-45, 1960. MEI, W., SHARK, L., K. A Fuzzy-logic-based Threshold Function for Signal Recovery Using Discret Wavelet Transform. Proceedings of ICSP’96, p. 283-286, 1996. MICHAEL, T. Experiments with Noise Reduction Neural Networks for Robust Speech Recognition. Technical Report TR-92-035, May 1992. SAEED V. V. Advanced Digital Signal Processing and Noise Reduction. 3ª edição. John Wiley & Sons Ltd., 2006.. SAVITZKY, A., GOLAY, M. J. E. Smoothing and Differentiation of Data by Simplified Least Squares Procedures. Analytical Chemistry, v. 36, p.1627-1639, 1964. SOTO, C. P., VELLASCO, M. B. R., PACHECO, M. A. Previsión de Series Temporales de Carga Eléctrica usando Redes Neuronales Temporales. Universidade Católica do Rio de Janeiro, 2000. TAMURA, S., WAIBEL, A. Noise reduction using connectionist models. In ICASSP-88, International Conference on Acoustics, Speech and Signal Processing, 1988. VALLASENOR, J., D., BELZER, B., LIAO, J. Wavelet Filter Evaluation for Image Compression. IEEE Transactions on Image processing, v. 4, no. 8, p.1053-1060, 1995. VILLE, D. V. D., NACHTEGAEL M., WEKEN, D. V. D., KERRE, E. E., PHILIPS, W., LAMAHIEU, I. Noise Reduction by Fuzzy Image Filtering. IEEE Transactions on Fuzzy Systems, v. 11, n. 4, 2003. WAN, E., NELSON, A., T. Networks for speech enhancement. Handbook of Neural Networks for Speech Processing. 1ª edição. Katagiri: Artech House, cap. 14, 1998. WIDROW B., WINTER, R. Neural Nets for Adaptive Filtering and Adaptive Pattern Recognition. 1988. ZHAO J., BOSE, B. K. Neural-network-based waveform processing and delayless filtering in power electronics and AC drives. IEEE Transactions on Industrial Electronics, v. 50, n. 5, p.981-991, 2004. SISTEMA DE TRATAMENTO E CORREÇÃO DE DADOS DE SUPERVISÓRIO PARA ESTAÇÕES COLETORAS DE PETRÓLEO Bruno Coitinho Araújo1 (Universidade Federal de Campina Grande), Herman Martins Gomes2 (Universidade Federal de Campina Grande), Carlos de Oliveira Galvão3 (Universidade Federal de Campina Grande) Av. Aprígio Veloso, 882 – Bodocongó. Campina Grande, Brazil, [email protected] Av. Aprígio Veloso, 882 – Bodocongó. Campina Grande, Brazil, [email protected] Av. Aprígio Veloso, 882 – Bodocongó. Campina Grande, Brazil, [email protected] estações coletoras de petróleo, heurísticas, sistemas supervisórios Os autores são os únicos responsáveis pelo conteúdo deste artigo. Copyright © 2007 ABPG