• Aucun résultat trouvé

DIRECTION DEPARTEMENTALE DE L'AGRICULTURE ET DE LA FORET

Dans le document > raa_mars_2007 (Page 33-47)

O último módulo do sistema contém as regras que, a partir dos diagnósticos gerados pelos módulos anteriores, definem qual, entre as duas ou três saídas geradas pelo Rogers, deve ser o diagnóstico final.

Assim como o Gás-Chave, este módulo somente é invocado quando o módulo Rogers gera mais de um diagnóstico para a mesma entrada.

A Figura 40 ilustra as entradas, saídas e o motor de inferência deste módulo:

Figura 40. Representação do módulo Gás-Chave Rogers no Xfuzzy

5.7.1 Dados de Entrada

Os dados de entrada deste módulo correspondem às saídas geradas pelos diagnósticos anteriores. Acrescenta-se ainda o valor dos gases C2H6 e CH4,

o C2H6 – valor do gás Etano obtido no ensaio de cromatografia; o CH4 – valor do gás Metano obtido no ensaio de cromatografia; o DiagGC – Diagnóstico gerado pelo módulo Gás-Chave;

o DiagR1 – Diagnóstico gerado pelo módulo Rogers; o DiagR2 – Diagnóstico gerado pelo módulo Rogers; o DiagR3 – Diagnóstico gerado pelo módulo Rogers;

5.7.2 Base de Conhecimento

A base de conhecimento corresponde às regras definidas pelo especialista (SUÑE, 2001) para mapear diagnósticos do critério Rogers a partir de diagnósticos do critério Gás-Chave.

Abaixo estão as regras definidas para a aplicação através da ferramenta XFuzzy.

rulebase rGasChave_Rogers (TValGas C2H6, TValGas CH4, TDiagGC DiagGC, TDiagRogers DiagR1, TDiagRogers DiagR2, TDiagRogers DiagR3 : TDiagRogers DiagFinal) using opGC_Rogers {

if(DiagR1 == Descargas_Alta_Energia & DiagR2 ==

Falha_Termica_Muito_Alta_300_700C & (DiagGC == Arco_Oleo | DiagGC == Oleo_Superaquecido | DiagGC == Celulose_Superaquecida)) -> DiagFinal = Falha_Termica_Muito_Alta_300_700C;

if(DiagR1 == Descargas_Alta_Energia & DiagR2 ==

Falha_Termica_Muito_Alta_300_700C & (DiagGC == Descargas_Parciais | DiagGC == Eletrolise)) -> DiagFinal = Descargas_Alta_Energia;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 ==

Descargas_Baixa_Energia_Arco_Sem_Potencia & (DiagGC == Arco_Oleo | DiagGC == Oleo_Superaquecido | DiagGC == Celulose_Superaquecida)) -> DiagFinal = Descargas_Baixa_Energia_Arco_Sem_Potencia;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 == Descargas_Baixa_Energia_Arco_Sem_Potencia & (DiagGC ==

Descargas_Parciais | DiagGC == Eletrolise)) -> DiagFinal = Falha_Termica_Media_100_200_C;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 == Sobreaquecimento_Condutor_Isolado & DiagGC ==

Celulose_Superaquecida) -> DiagFinal = Falha_Termica_Media_100_200_C;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 ==

Sobreaquecimento_Condutor_Isolado & (DiagGC == Arco_Oleo | DiagGC == Oleo_Superaquecido | DiagGC == Eletrolise)) -> DiagFinal =

Sobreaquecimento_Condutor_Isolado;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 == Descargas_Baixa_Energia_Potencial_Flutuacao & (DiagGC ==

Oleo_Superaquecido | DiagGC == Celulose_Superaquecida)) -> DiagFinal = Descargas_Baixa_Energia_Potencial_Flutuacao;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 ==

Descargas_Baixa_Energia_Potencial_Flutuacao & (DiagGC == Arco_Oleo | DiagGC == Descargas_Parciais | DiagGC == Eletrolise)) -> DiagFinal = Falha_Termica_Media_100_200_C;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 ==

Descargas_Alta_Energia & (DiagGC == Oleo_Superaquecido | DiagGC == Celulose_Superaquecida)) -> DiagFinal = Descargas_Alta_Energia;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 == Descargas_Alta_Energia & (DiagGC == Arco_Oleo | DiagGC == Descargas_Parciais | DiagGC == Eletrolise)) -> DiagFinal = Falha_Termica_Media_100_200_C;

if(DiagR1 == Falha_Termica_Alta_150_300C & DiagR2 == Descargas_Baixa_Energia_Potencial_Flutuacao & (DiagGC ==

Oleo_Superaquecido | DiagGC == Celulose_Superaquecida)) -> DiagFinal = Descargas_Baixa_Energia_Potencial_Flutuacao;

if(DiagR1 == Falha_Termica_Alta_150_300C & DiagR2 ==

Descargas_Baixa_Energia_Potencial_Flutuacao & (DiagGC == Arco_Oleo | DiagGC == Descargas_Parciais | DiagGC == Eletrolise)) -> DiagFinal = Falha_Termica_Alta_150_300C;

if(DiagR1 == Falha_Termica_Muito_Alta_300_700C & DiagR2 ==

Descargas_Alta_Energia & (DiagGC == Oleo_Superaquecido | DiagGC == Celulose_Superaquecida)) -> DiagFinal = Descargas_Alta_Energia;

if(DiagR1 == Falha_Termica_Muito_Alta_300_700C & DiagR2 == Descargas_Alta_Energia & (DiagGC == Arco_Oleo | DiagGC == Descargas_Parciais | DiagGC == Eletrolise)) -> DiagFinal = Falha_Termica_Muito_Alta_300_700C;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 == Falha_Termica_Alta_150_300C & DiagR3 !=

Descargas_Baixa_Energia_Potencial_Flutuacao & DiagGC == Arco_Oleo) -> DiagFinal = Falha_Termica_Alta_150_300C;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 == Falha_Termica_Alta_150_300C & DiagR3 !=

Descargas_Baixa_Energia_Potencial_Flutuacao & (DiagGC ==

Oleo_Superaquecido | DiagGC == Celulose_Superaquecida | DiagGC == Descargas_Parciais | DiagGC == Eletrolise)) -> DiagFinal =

Falha_Termica_Media_100_200_C;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 ==

& DiagGC == Arco_Oleo) -> DiagFinal = Falha_Termica_Muito_Alta_300_700C;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 ==

Falha_Termica_Muito_Alta_300_700C & DiagR3 != Descargas_Alta_Energia & (DiagGC == Oleo_Superaquecido | DiagGC == Celulose_Superaquecida | DiagGC == Descargas_Parciais | DiagGC == Eletrolise)) -> DiagFinal = Falha_Termica_Media_100_200_C;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 == Falha_Termica_Alta_150_300C & DiagR3 ==

Descargas_Baixa_Energia_Potencial_Flutuacao & DiagGC == Arco_Oleo) -> DiagFinal = Descargas_Baixa_Energia_Potencial_Flutuacao;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 == Falha_Termica_Alta_150_300C & DiagR3 ==

Descargas_Baixa_Energia_Potencial_Flutuacao & DiagGC != Arco_Oleo & C2H6 == Total & CH4 <= Total) -> DiagFinal =

Falha_Termica_Alta_150_300C;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 == Falha_Termica_Alta_150_300C & DiagR3 ==

Descargas_Baixa_Energia_Potencial_Flutuacao & DiagGC != Arco_Oleo & CH4 == Total & C2H6 <= Total) -> DiagFinal =

Falha_Termica_Media_100_200_C;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 ==

Falha_Termica_Muito_Alta_300_700C & DiagR3 == Descargas_Alta_Energia & DiagGC == Arco_Oleo) -> DiagFinal = Descargas_Alta_Energia;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 ==

& DiagGC != Arco_Oleo & C2H6 == Total & CH4 <= Total) -> DiagFinal = Falha_Termica_Muito_Alta_300_700C;

if(DiagR1 == Falha_Termica_Media_100_200_C & DiagR2 ==

Falha_Termica_Muito_Alta_300_700C & DiagR3 == Descargas_Alta_Energia & DiagGC != Arco_Oleo & CH4 == Total & C2H6 <= Total) -> DiagFinal = Falha_Termica_Media_100_200_C;

if(DiagR1 == Descargas_Parciais_Baixa_Energia | DiagR1 == Descargas_Parciais_Alta_Energia | DiagR2 ==

Descargas_Parciais_Baixa_Energia | DiagR2 ==

Descargas_Parciais_Alta_Energia) -> DiagFinal = Sem_Diagnostico; }

A última regra quer dizer que, se um dos diagnósticos de Rogers se apresentar como “Descargas_Parciais_Baixa_Energia” ou “Descargas_Parciais_Alta_Energia”, o módulo Gás-Chave Rogers não possui diagnóstico proposto. A regra que trata destes dois diagnósticos ainda está em estudo pelos especialistas responsáveis.

Dans le document > raa_mars_2007 (Page 33-47)