Observações

Na ausência dos stepstests:

1 - Filtrar dados com PID manual do treinamento dos modelos;

2 - Trabalhar com SP, sempre que possível, ou tentar uma transformação.

nomes_X_SP = c(
'Velocidade do Classificador (SP)',  # Inversor
'Damper 01 (SP)', #damper
"Pressão de entrada do moinho (SP)", #PID ### Se automático IA pode funcionar ou não
'Alimentação Total (SP)', ### balança
"Temperatura de saída (SP)",  #PID
"Pressão grade (SP)",  ### unidade hidr
'Injeção de água (SP)' ### inversor
)

# PV vs SP

# Inversor: erro próximo de 0
# Damper: erro até 3%
# PID: erro depende do processo e PID (filtrar no treinamento dos modelos).
# Balança: erro depende da umidade e erro da propria balança
# Unidade Hidraulica: Erro aproximadamente 0.3 Mpa.

nomes_X_PV = c(
  'Velocidade do Classificador (PV)',
'Damper 01 (PV)', 
"Pressão de entrada do moinho (PV)",
'Alimentação Total (PV)',
"Temperatura de saída (PV)",
"Pressão grade (PV)",
'Injeção de água (PV)'
)

nomes_X = c(
  'Velocidade do Classificador',
'Damper 01 (PV)', 
"Pressão de entrada do moinho",
'Alimentação Total',
"Temperatura de saída",
"Pressão grade",
'Injeção de água'
)



tag_X_PV = c('CM1_PV_CLA01_SPEED',
'CM1_PV_DA01_POSITION',     
"CM1_PV_VRM01_IN_PRESS",
'CM1_PV_RB01_TOTAL_FEED',
"CM1_PV_VRM01_OUTLET_TEMPERATURE",
"CM1_PV_HYS01_PRESSURE",
'CM1_PV_WI01_WATER_INJECTION'
)



tag_X_SP = c('CM1_SP_CLA01_SPEED',
'CM1_SP_DA01_POSITION',    
'CM1_SP_PRESS_AUTO',
'CM1_SP_RB01_TOTAL_FEED',
'CM1_SP_VRM01_TEMP_AUTO',
"CM1_SP_VRM01_PRESS_GRIDING_1_3",
'CM1_SP_WI01_WATER_INJECTION'
)

CM1_SP_PRESS_AUTO: DAO2 CM1_SP_CLA01_SPEED: %

df <- read_excel("~/QUIXERE_DADOS_EXTRACTOR/DadosStepTestsCM2_CPIII/step_test.xlsx")

dados_ok = df

names(df)
##  [1] "Timestemps"                      "CM1_SP_RB01_TOTAL_FEED"         
##  [3] "CM1_SP_WI01_WATER_INJECTION"     "CM1_SP_DA01_POSITION"           
##  [5] "CM1_SP_VRM01_PRESS_GRIDING_1_3"  "CM1_SP_CLA01_SPEED"             
##  [7] "CM1_SP_PRESS_AUTO"               "CM1_SP_VRM01_TEMP_AUTO"         
##  [9] "CM1_PV_VRM01_INLET_TEMPERATURE"  "CM1_PV_VRM01_OUTLET_TEMPERATURE"
## [11] "CM1_PV_VRM01_IN_PRESS"           "CM1_PV_VRM01_DIFF_PRESSURE"     
## [13] "CM1_PV_BF01_DIF_PRESSURE"        "CM1_PV_FN01_POWER"              
## [15] "CM1_PV_CLA01_POWER"              "CM1_PV_VRM01_POWER"             
## [17] "CM1_PV_VRM01_VIBRATION1"         "CM1_LB_BLAINE_CPIIF"            
## [19] "CM1_LB_FINENESS_CPIIF"           "CM1_PV_CLA01_SPEED"             
## [21] "CM1_PV_WI01_WATER_INJECTION"     "CM1_PV_HYS01_PRESSURE"          
## [23] "CM1_PV_RB01_TOTAL_FEED\n"        "CM1_PV_DA01_POSITION\n"         
## [25] "CM1_PV_DA02_POSITION"            "CM1_PV_BF01_PRESSURE"
nnames = c("Timestemps" ,                     
"CM1_SP_RB01_TOTAL_FEED"  ,       
"CM1_SP_WI01_WATER_INJECTION" ,   
"CM1_SP_DA01_POSITION"    ,       
"CM1_SP_VRM01_PRESS_GRIDING_1_3" ,
"CM1_SP_CLA01_SPEED"    ,         
"CM1_SP_PRESS_AUTO"  ,            
"CM1_SP_VRM01_TEMP_AUTO"   ,      
"CM1_PV_VRM01_INLET_TEMPERATURE" ,
"CM1_PV_VRM01_OUTLET_TEMPERATURE",
"CM1_PV_VRM01_IN_PRESS"   ,       
"CM1_PV_VRM01_DIFF_PRESSURE",     
"CM1_PV_BF01_DIF_PRESSURE" ,      
"CM1_PV_FN01_POWER",              
"CM1_PV_CLA01_POWER" ,            
"CM1_PV_VRM01_POWER" ,            
"CM1_PV_VRM01_VIBRATION1" ,       
"CM1_LB_BLAINE_CPIIF"  ,          
"CM1_LB_FINENESS_CPIIF" ,         
"CM1_PV_CLA01_SPEED" ,            
"CM1_PV_WI01_WATER_INJECTION" ,   
"CM1_PV_HYS01_PRESSURE"    ,      
"CM1_PV_RB01_TOTAL_FEED"  ,     
"CM1_PV_DA01_POSITION"   ,      
"CM1_PV_DA02_POSITION"  ,         
"CM1_PV_BF01_PRESSURE"  )


names(df) = nnames
names(dados_ok)= nnames
df_type = dados_ok

Qcol = ncol(df_type)

df_type

Velocidade do classificador

Por se tratar de um inversor, não existe diferença entre PV e SP.

Damper 01

Damper: erro até 3%.

Pressão de entrada do moinho (PID)

Manter os blocos de PID.

O erro depende do processo e do PID em questão. Deve-se filtrar os dados para usar o PID ativo no treinamento dos modelos.

Alimentação Total

Temperatura de saída

Pressão na grade

Injeção de água