     leFotocelula();
     funcaoSimples(mandibula, NomeMandibula, ti_mandibula, tf_mandibula);
     funcaoSegura(faca, NomeFaca, ti_faca, tf_faca, sensor_mandibula);
-    funcaoSimples(refrigeracao, NomeRefrigeracao, ti_refrigeracao, tf_refrigeracao);
+    funcaoBloqueante(refrigeracao, NomeRefrigeracao, ti_refrigeracao, tf_refrigeracao);
     funcaoComLiberacao(datador, NomeDatador, ti_datador, tf_datador, datador_ligado);
     funcaoSimples(soldas, NomeSoldas, ti_soldas, tf_soldas);
   }

  }
}

void funcaoComLiberacao(const byte saida, String nome, unsigned long inicio, unsigned long fim, byte liberacao){
  inicio += inicio_ciclo;
  fim += inicio_ciclo;
  if (desligado(saida) && liberacao){
    if (tempo_atual >= inicio && tempo_atual < fim) {
      ligaFuncao(saida, nome);
    }
  } else if (tempo_atual >= fim) {
    desligaFuncao(saida, nome);
  }
}

  if (fotocelula_liberada && !fotocelula_cortou){
    if (ativo(fotocelula)){
      fotocelula_cortou = VERDADEIRO;
      escreveSerial("Fotocelula fez o corte.");
      reiniciaSaidas();
    }
  }
