Estamos de Casa Nova!

 

Agora você pode acessar o conteúdo do blog por meio do endereço:

http://eaiconvergiu.eng.br/

Pré-teste de um Tubo Ressonador – Geração do Sinal Frequency Sweep

Uma das estratégias mais simples para identificar as frequências de ressonância de um sistema é excitar todas as frequências lenta e suavemente em um método chamado de Frequency Sweep . Algumas vezes esse método é utilizado para avaliar as excitações de um veículo em uma rampa de aceleração, normalmente em um dinamômetro de rolos, fazendo com que o motor atue sempre no torque máximo ou utilizar uma excitação constante, o que é mais comum para o processo de identificação de ressonâncias.

No caso do nosso tubo ressonador, podemos criar um sinal sonoro que varre a frequência de interesse com amplitude constante usando o Scilab. Esse sinal sonoro pode ser executado por qualquer computador, mas a recomendação é utilizar um fone de ouvido do tipo concha ou uma caixa de som externa, para tornar a fonte mais direcional.

Para a criação do Frequency Sweep vou utilizar da função chirp, disponível no nesse toolbox. Se você for marinheiro de primeira viagem com o Scilab, o segredo é executar essa função antes de rodar o restante do código. Já o código completo pode ser baixado no GitHub por esse link.

A primeira ação é definir os parâmetros do sinal de excitação, como tempo e frequência. O tempo de duração do sinal está relacionado fortemente à frequência de interesse de estudo e ao comportamento dinâmico do sistema em si. Sinais com duração muito pequenas podem não excitar o sistema em frequências mais baixas ou excitar tão rapidamente uma frequência que não há tempo para o sistema responder a ela, sinais com duração muito longa afetam a duração total do teste. A definição da frequência é relacionada principalmente ao comportamento do sistema, no texto anterior mostramos que a frequência de ressonância do tubo se encontra próxima a 365 Hz, portanto utilizei esse valor como frequência central com um offset de ~300Hz para cada um dos lados. Por fim, a frequência de amostragem é a quantidade de pontos que serão gerados para 1 segundo do sinal de excitação, no meu caso utilizei o valor que meu sistema de aquisição consegue ler (44.100 Hz). Os inputs ficam da seguinte forma:

clc

// ===================================
// Dados de entrada
// ===================================

ti = 1; // Tempo inicial (s)
tf = 30; // Tempo final (s)
Fi = 100; // Frequencia de inicio do sinal (Hz)
Ff = 700; // Frequencia de final do sinal (Hz)
Fs = 44100; // Frequencia de amostragem (Hz)

Para a criação do sinal de ruído é preciso primeiro “digitalizar” o sinal do tempo, isso significa criar um vetor com os valores de tempo para os instantes que o sinal de ruído será aquisitado. A maneira mais simples de interpretar isso é a seguinte: imagine o som como uma imagem contínua (analógica) como a que você vê com os seus olhos, para representarmos essa imagem contínua tiramos uma série de fotografias e anotamos o instante que estas fotografias foram tiradas (conversão digital), se tirarmos um número suficientemente grande de fotografias e ordenarmos pelo tempo, podemos produzir um filme do evento de maneira que você praticamente não perceba a diferença.

Já a construção do sinal é bastante simples usando a função chirp, inclusive com a possibilidade de escolher a forma da função de sweep, como linear ou logarítmica. Uma vez criado o sinal, alocar ele em uma matriz com duas colunas, isso permite a criação de um sinal stereo, o que abre diversas possibilidades de análises no futuro.

// ===================================
// Operacoes Basicas
// ===================================

// Conversao digital do sinal do tempo
t = ti:(1/Fs):tf;

// Lembrar de rodar a funcao chirp.sci antes desse trecho
// Usando a function y = chirp(t, f0, t1, f1, form, phase)
// Parameters
// t: vector of times to evaluate the chirp signal
// f0: frequency at time t=0 [0 Hz]
// t1: time t1 [1 sec]
// f1: frequency at time t=t1 [100 Hz]
// form: shape of frequency sweep;   
//       'linear' :     f(t) = (f1-f0)*(t/t1) + f0, ,    
//       'quadratic':   f(t) = (f1-f0)*(t/t1)^2 + f0,    
//       'logarithmic': f(t) = (f1-f0)^(t/t1) + f0
// phase: phase shift at t=0
s = chirp(t,Fi,tf,Ff,'linear');

// Criacao do sinal stereo
s_direito = s;
s_esquerdo = s;
stereo = [s_esquerdo;s_direito];

Uma análise gráfica dos sinais é sempre interessante antes de executar o teste, sendo assim, os dois gráficos mais interessantes nesse momento é o sinal criado no domínio do tempo e no domínio da frequência, como mostrado:

// ===================================
// Analise Grafica dos Sinais
// ===================================

// Plot do sinal no tempo
figure()
title("Sinal do Gerado")
plot(t,s,'b','LineWidth',2)
xlabel("Tempo [s]")
ylabel("Amplitude do sinal [Propocional a Pa]")
legend(['Sinal de pressão sonora'])
xgrid(1)

// FFT do sinal
y = fft(s);

// Numero de amostras
N = size(t,'*'); 

// Vetor de frequencia
f = Fs*(0:(N/2))/N; 
n = size(f,'*');
figure()
title("Análise de Frequência")
plot(f,abs(y(1:n)),'b','LineWidth',2)
xlabel("Frequência [Hz]")
ylabel("Amplitude do sinal [Propocional a Pa]")
legend(['FFT do sinal de pressão sonora'])
xgrid(1)

Sweep_00

Repare que o sinal do tempo começa no segundo 1, como definido no começo do código, enquanto na análise da frequência o sinal é diferente de zero entre 100 Hz e 700 Hz, porém com alguma diferenças de amplitude do centro com as extremidades, após algumas análises cheguei a conclusão de que pode ser algum problema no gerador de FFT do Scilab e de qualquer forma isso não deve nos impactar nesse instante.

Por fim, basta exportar o sinal criado em formado wave, o que torna ele executável por qualquer computador e pela maioria dos celulares:

// ===================================
// Geracao dos Sinais em *.wav
// ===================================

// Escreve em wave stereo
savewave ('Sweep.wav',stereo,Fs);

Agora que temos nossa fonte de ruído, podemos executar enfim o teste.

Modelagem de um Tubo Ressonador

Um dos conceitos mais abstratos no estudo da acústica são os modos de vibração do meio. A noção de que o ar tem massa e, por ser um fluido compressível, também tem rigidez não é exatamente intuitivo, e se ele é dotado de massa m e rigidez k evidentemente é também dotado de ressonância:

\omega = \sqrt{\frac{k}{m}}

Com a ideia de tornar esse conceito mais claro, é possível fazer um experimento simples utilizando um tubo ressonador. Dentro de um tubo o ar está estagnado, se as paredes forem rígidas e o diâmetro do tubo for suficientemente pequeno frente ao comprimento é possível aproximar o comportamento de uma onda viajando no seu interior como unidirecional, ou seja diferente de uma sala que um ruído viaja em todas as direções, dentro de um tubo esse ruído viaja somente ao longo do seu comprimento. Caso as duas extremidade do tubo estejam abertas, a sua frequência natural é dada por

f = \frac{c}{2 \cdot L}

onde c é a velocidade do som no meio, tipicamente 343 m/s para o ar à temperatura ambiente, e L é o comprimento do tubo. Este mesmo equacionamento é usado para o projeto de coletores de admissão de motores ou o sistema de exaustão.

Como de hábito, antes do teste físico sempre é recomendável fazer um cálculo analítico ou uma simulação por elementos finitos para estimar os valores que serão obtidos no teste, ou seja, formular as hipóteses iniciais. No meu experimento vou utilizar um tubo de papelão rígido com 470 mm de comprimento e 34 mm de diâmetro, portanto a ressonância analítica esperada é de

f = \frac{343m/s}{2 \cdot 0.470m}=365Hz

Uma estimativa da ressonância também pode ser obtida por meio do Método dos Elementos Finitos. Nesse caso, além do modelo geométrico do tubo, é necessário ficar atento às condições de contorno nas extremidade, pois como está sendo feita a consideração dos dutos abertos é preciso aplicar uma pressão de 0 Pa em ambas as extremidades.

Fn1_post2

Fn1_post2

Cavidade em teste e seu primeiro modo de vibrar acústico

Vê-se que na condição das duas extremidades abertas, para o primeiro modo de vibrar a maior amplitude de pressão acontece no centro da cavidade com frequência natural de 368 Hz, bastante próxima ao valor analítico.

Tendo o valor esperado da ressonância, podemos agora planejar um experimento que excite essa faixa de frequência, entretanto isso é tema para um próximo post.

Curso Engenharia à Moda Antiga

Que tal aproveitar a quarentena para melhorar o suas habilidade em desenvolvimento de produtos? Um curso rápido, só com os macetes do projeto estrutural. Confere lá!

https://www.udemy.com/course/engenharia-a-moda-antiga

Imagem do Curso_20200520b

Intervalo de Confiança de Vida em Fadiga para uma Simulação de Elementos Finitos

Tendo a curva de vida em fadiga do material com o seu intervalo de confiança, como mostrado no post Intervalo de Confiança para Vida em Fadiga dos Materiais, é possível utilizar o R para prever qual o número de ciclos que o componente deve sobreviver baseado na variação das propriedades mecânicas do material.

Para exemplificar, tome o resultado de uma simulação estrutural de um componente que está sujeito á fadiga e apresenta o seguinte estado de tensões:

Tensao

Estado de tensão de um corpo sujeito à fadiga

Desconsiderei a tensão máxima, próximo ao ponto de fixação, por assumir que se trata de uma singularidade gerada pela condição de contorno, portanto a tensão usada para análise foi de Sa = 200.5 MPa encontrada na região de entalhe.

Usando o código criado anteriormente, é possível fazer a previsão inversa e obter o número de ciclos para uma dada tensão:

 

# Prevendo o numero de ciclos de vida do componennte
Sa <- 200.5 #Tensao encontrada na simulacao

# Previsao inversa do modelo (usando y para prever x)
Log_N_pred <- inverse.predict(CurvaWohler, newdata = log10(Sa), alpha = 0.05)

# Convertendo os valores em escala linear
N_pred <- setNames(data.frame(as.integer(10^Log_N_pred$'Confidence Limits'[2]),
as.integer(10^Log_N_pred$Prediction),
as.integer(10^Log_N_pred$'Confidence Limits'[1])),
c('lower','mean','upper'))
print(N_pred)

 lower mean upper
1 3265 4438 6032

Isso significa que para este estado de tensões e para a variação da propriedade do material, o número de ciclos que esse componente deve resistir está entre 3265 e 6032 como intervalo de confiança de 95%. Uma variação bastante grande, e principalmente, bastante diferente do valor médio de 4438 ciclos.

Outras discussões podem ser levantadas dessa análise. Na execução de um teste físico para correlação com a simulação, assumindo que as condições de contorno são fielmente representadas e a geometria das amostras possuem uma variação mínima, ainda sim se espera que o número de ciclos para a falha estejam na ordem de grandeza dos valores anteriores. Acrescentando as variações de condição de contorno e geometria, o número de ciclos para falha podem se afastar ainda mais da média.

A correlação de um pequeno número de testes com o resultado de uma simulação é sempre difícil, existe portanto um trabalho para determinar qual a variação esperada para um experimento físico, tanto do ponto de vista de sistema de medição quanto do ponto de vista de variação de produto e material para que se tenha confiança estatística da correlação entre um teste e uma simulação.

Esse post continua em:
Parte 1: Caracterização da Curva S-N por meio de um Teste de Fadiga
Parte 2: Criação de uma Curva S-N a partir de Dados Experimentais
Parte 3: Intervalo de Confiança para Propriedades de Fadiga dos Materiais
Parte 4: Intervalo de Confiança para Vida em Fadiga dos Materiais
Parte 5: Intervalo de Confiança de Vida em Fadiga para uma Simulação de Elementos Finitos

Intervalo de Confiança para Vida em Fadiga dos Materiais

No texto anterior comentei um pouco sobre o intervalo de confiança para os parâmetros da Curva S-N, bem como disponibilizei no meu GitHub o código para essa análise. neste me sinto mais confortável de discorrer sobre os detalhes do modelo. Para isso começamos aproximadamente de onde paramos anteriormente, com os detalhes do modelo.

# Resume as estatiticas de log_S e log_N
summary(CurvaWohler)
Call:
lm(formula = log_S ~ log_N, data = df_Fadiga)

Residuals:
      Min        1Q    Median        3Q       Max 
-0.049230 -0.008851  0.000694  0.008623  0.024216 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept)  3.081668   0.004353   708.0   <2e-16 ***
log_N       -0.213737   0.001141  -187.4   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.01411 on 58 degrees of freedom
Multiple R-squared:  0.9984,	Adjusted R-squared:  0.9983 
F-statistic: 3.511e+04 on 1 and 58 DF,  p-value: < 2.2e-16

O desvio padrão (Std. Error) do Estimate dos Coefficients é uma estimativa da variação dos parâmetros de um modelo, nesse caso o log(S_{f,sp} \cdot 2) e {b_{sp}}, entretanto diz pouco sobre a variação do modelo em si! Para isso usamos outras informações disponíveis no R.

A primeira informação relevante é o R-squared (ou R² no Excel), também chamado de coeficiente de determinação. Esse parâmetro estima o percentual da variação presente nos seus dados é explicado pelo modelo, neste caso R-squared = 0.9984 da variação é explicada pelos parâmetros log(S_{f,sp} \cdot 2) e {b_{sp}}, o restante da variação é de fonte desconhecida. A interpretação gráfica do R-squared é mostrada pelas linhas vermelhas na figura abaixo, onde quanto MAIOR a distância entre o ponto medido e o previsto do modelo, MENOR o valor coeficiente, sendo, portanto, quanto todos os pontos do modelo estão exatamente sobre a previsão o valor de R-squared = 1.

R-Squared

R-Squared ou Coeficiente de Determinação

Um segundo estimador da qualidade do modelo é o Residual standard error, que mostra o Erro Padrão do modelo em si, portanto descreve exatamente o comportamento daquilo que não é previsto pelo log(S_{f,sp} \cdot 2) nem pelo {b_{sp}}. Toda a variação do modelo estatístico que não é descrito por variáveis acaba por se tornar ruído experimental, o Residual standard error é o erro padrão desse ruído experimental, espera-se que ele tenha média zero e uma distribuição normal, por meio do R é possível fazer uma análise gráfica desse resíduo.

# Plot do residuo
plot(CurvaWohler, which=1)
Residuo

Resido do modelo estatístico

Uma maneira análoga de produzir a mesma informação é através de um histograma, obtido no R com:

# Histograma do resido
hist(CurvaWohler$residuals)
HistResido

Histograma do resido

A figura acima mostra que o modelo criado para a Curva de Wöhler parece condizente com as hipóteses de resido com média zero e distribuição normal, neste caso, o valor do Residual standard error é uma estimativa do desvio padrão desse resido, portanto uma estimativa de como variam os parâmetros não usados no modelo ou do ruído experimental.

É possível criar a Curva de Wöhler do material considerando os valores de log(S_{f,sp} \cdot 2), {b_{sp}} e esse erro experimental, como mostrado abaixo. Com a curva nesse formato final, uma nova informação aparece que são as linhas do Intervalo de Confiança para vida em fadiga do material.

# Cria um vetor log_N para criação da curva
novox = seq(min(df_Fadiga$log_N),max(df_Fadiga$log_N),by = 0.05)
# Cria um modelo do intervalo de confianca
conf_interval <- predict(CurvaWohler, newdata=data.frame(log_N=novox), interval="predict", level = 0.95)
IC_CurvaSN

A interpretação da curva desta maneira nos diz que, quando por meio de uma simulação FEA, o engenheiro constata que o corpo está sujeito a uma condição de operação que o coloca exatamente sobre a linha cheia do gráfico, portanto para os valores médios de log(S_{f,sp} \cdot 2) e {b_{sp}}, 50% das vezes haverá uma falha. Pensando em produtos com alto volume de produção, indica que 1 em cada 2 produtos em campo irão falhar. Imagino que você já tenha concluído que essa não é uma abordagem conservadora

Caso o ponto de tensão seja situado sobre a linha tracejada inferior do gráfico, com Intervalo de Confiança de 95%, ainda 1 em cada 40 peças irão falhar em campo. Provavelmente um valor ainda inaceitável para qualquer empresa. Empresas que utilizam a metodologia Six Sigma (6σ) adotam como referência um intervalo de confiança de 99.99966% (3.4 falhas por milhão), o efeito prático do uso de um percentual tão grande é o afastamento do limite em relação à média, dando uma margem maior para a variação das propriedades do material, e consequentemente reduzindo o número de falhas em campo.

Esse post continua em:
Parte 1: Caracterização da Curva S-N por meio de um Teste de Fadiga
Parte 2: Criação de uma Curva S-N a partir de Dados Experimentais
Parte 3: Intervalo de Confiança para Propriedades de Fadiga dos Materiais
Parte 4: Intervalo de Confiança para Vida em Fadiga dos Materiais
Parte 5: Intervalo de Confiança de Vida em Fadiga para uma Simulação de Elementos Finitos

Intervalo de Confiança para Propriedades de Fadiga dos Materiais

Mostrei aqui um código para simular o procedimento de teste de corpos de prova para caracterização de fadiga de um material, posteriormente mostrei como tratar esses dados usando programas como o Excel ou o Google Sheets para obter as propriedades do material. Leitores mais atentos podem ter percebido que havia uma pequena discrepância entre os dados de entrada da simulação do teste para os resultados obtidos das propriedades, neste post.

Para a simulação foram usados os valores de  S_{f,sp} = 606 MPa ou log(S_{f,sp} \cdot 2) = 3.083 e {b_{sp}} = -0.214, enquanto o pós processamento dos resultados S_{f,sp} = 603.9MPa ou log(S_{f,sp} \cdot 2) = 3.082 e {b_{sp}} = -0.214.  Essa pequena diferença é intrínseca do processo de amostragem, e há uma tendência de que para um número infinto de amostras, o valor dos parâmetros caminhem para o mesmo valor.

Em um caso real, o mais provável é que o número de amostras seja bastante reduzido, provavelmente menos do que o utilizado na minha simulação, juntando isso à variação aleatória esperada do teste, oriunda de desalinhamentos, geometrias e mesmo lotes de matéria prima das amostras além da média dos parâmetros surge o desvio padrão como uma medida de dispersão de dos dados. É importante perceber que TODOS os testes físicos são sujeitos à variação, o que muda é o instrumento usado na medição, por exemplo: peças em um conjunto podem ser todas “iguais” quando medidas usando uma régua comum, porém quando medidas com um micrômetro as diferenças podem ser identificadas.

Para uma análise considerando a variação, apesar de possível, o Excel deixa de ser uma ferramenta apropriada, por isto nesse post optei por utilizar o R, um programa opensource para análise estatísticas, cujo o código completo está disponível no GitHub. Assim como a análise anterior, iniciei pelo modelo linear, importando um arquivo *.csv com os resultados do teste, os valores para uma escala logarítmica e fazendo um gráfico de pontos (Scatter Plot) dos dados.

# Le o arquivo de confiabilidade
df_Fadiga <- read.csv("Confiabilidade.csv", sep = ",", dec = ".")

# Cria uma coluna com o Log do Numero de Ciclos
df_Fadiga$log_N <- log10(df_Fadiga$NumeroDeCiclos)

# Cria uma coluna com o log da Tensao
df_Fadiga$log_S <- log10(df_Fadiga$Tensao_Mpa)

# Scatter Plot dos log_N e log_S
plot(df_Fadiga$log_N, df_Fadiga$log_S,
main="Diagrama de Wohler ou Tensao - Numero \nde Ciclos (S-N) em escala logaritmica",
xlab="log(N)", ylab="log(S)")
grid(5, 5, lwd = 2)
ScatterPlot

Até aqui não é nada mais do que foi feito no Excel, mas é a partir daqui que o R (ou qualquer software estatístico) mostra seu valor. Primeiro é necessário gerar o modelo de regressão linear (Linear Model) com os dados.

# Cria um modelo linear entre o log_S e log_N
CurvaWohler <- lm(log_S ~ log_N, data=df_Fadiga)

E em seguida requisitar os coeficientes de regressão:

# Obtem o valor de log(Sfsp*2) e bsp
coef(CurvaWohler)

O que resulta nos parâmetros obtidos anteriormente:

(Intercept) log_N 
3.0816676 -0.2137375

Porém mais informações a respeito do modelo podem ser obtidas por meio do comando:

# Resume as estatiticas de log_S e log_N
summary(CurvaWohler)

Por se tratar de um software para análises estatísticas diversas informações são disponíveis, porém nesse post eu gostaria de falar um pouco sobre os Estimates e o seu Std. Error, ambos no trecho de Coefficients.

Call:
lm(formula = log_S ~ log_N, data = df_Fadiga)

Residuals:
      Min        1Q    Median        3Q       Max 
-0.049230 -0.008851  0.000694  0.008623  0.024216 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept)  3.081668   0.004353   708.0   <2e-16 ***
log_N       -0.213737   0.001141  -187.4   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.01411 on 58 degrees of freedom
Multiple R-squared:  0.9984,	Adjusted R-squared:  0.9983 
F-statistic: 3.511e+04 on 1 and 58 DF,  p-value: < 2.2e-16

Vê-se que o Estimate dos Coefficients é exatamente o número obtido pela linha de tendência ou por meio da inclinação da reta e previsão linear no Excel, porém esse valor agora está acompanhando de um desvio padrão (Std. Error).  Isso nos permite calcular a distribuição de cada um dos coeficientes, e termos um entendimento mais completo do resultado do teste. Para o caso do log(S_{f,sp} \cdot 2) a distribuição é:

DistribuicaoSfsp

Distribuição do parâmetro log(S_{f,sp} \cdot 2)

A estatística é antes de tudo o estudo da incerteza, então os valores calculados estatisticamente são expressos normalmente dentro de um intervalo, por isso que durante as previsões do tempo você ouve sempre a temperatura máxima e mínima, ou as dimensões de uma peça possuem uma tolerância, o que normalmente não é mencionado é que os valores limites estão sujeitos a um Intervalo de Confiança que diz qual a certeza você tem de que os valores estão dentro dos limites e é representado matematicamente pela área sob a curva da distribuição.

Para uma distribuição normal, para 100% de confiança os valores de máximo e mínimo são infinito por definição, portanto de nenhuma utilidade em uma aplicação prática (imagine você falando para o engenheiro de simulação que o coeficiente de resistência a fadiga do material pode variar de menos infinito à mais infinito). Portanto é necessário estabelecer um intervalo de confiança aceitável, quanto maior, mais distante os limites estarão do valor médio. Um intervalo de confiança de 95% é bastante aceito e pode ser utilizado como exemplo, para se obter os valores limites para este caso no R, faz-se:

# Intervalo de confianca
confint(CurvaWohler, level = 0.95)
                 2.5 %     97.5 %
(Intercept)  3.0729547  3.0903805
log_N       -0.2160209 -0.2114541

A interpretação prática diz que 19 de cada 20 vezes (Intervalo de Confiança de 95%) que você obter esses dados em um ensaio de fadiga, o valor de log(S_{f,sp} \cdot 2) estará entre 3.073 e 3.090, sendo que há 2.5% de chances de log(S_{f,sp} \cdot 2) < 3.073 e 97.5% de chances de log(S_{f,sp} \cdot 2) < 3.090.

Ainda há mais informações para se tirar desta análise, como o significado do R-squared e interpretar o Residual standard error do modelo, mas isso já é assunto para um outro dia.

Esse post continua em:
Parte 1: Caracterização da Curva S-N por meio de um Teste de Fadiga
Parte 2: Criação de uma Curva S-N a partir de Dados Experimentais
Parte 3: Intervalo de Confiança para Propriedades de Fadiga dos Materiais
Parte 4: Intervalo de Confiança para Vida em Fadiga dos Materiais
Parte 5: Intervalo de Confiança de Vida em Fadiga para uma Simulação de Elementos Finitos

Criação de uma Curva S-N a partir de Dados Experimentais

No post anterior falei sobre como criei dados fictícios com um ensaio de fadiga de um corpo de prova. Neste abordo a criação da Curva S-N ou Curva de Wöhler pela abordagem tradicional de engenharia.

Foram executadas ensaios em 6 níveis de tensão diferentes, cada um contendo 10 amostras, totalizando 60 testes. É importante salientar que essa abordagem só é válida caso o teste seja executado até a falha da amostra, portanto não conta com dados censurados, isso facilita a análise dos resultados. Além dos valores de tensão aplicadas no ensaio e do número de ciclos, acrescentei manualmente duas colunas uma como o valor do logaritmo do número de ciclos e outra com o logaritmo da tensão, o resultado obtido é a tabela mostrada abaixo.

Nos dias atuais a criação de um modelo de regressão baseado em uma lista de dados não é exatamente um desafio, com um ou dois comandos do Excel ou do Google Sheets várias opções surgem naturalmente. Na abordagem mais tradicional (leia-se na época que uma HP era o melhor recurso computacional que o engenheiro tinha ao seu dispor), usa-se os dados na escala logarítmica e uma regressão linear dos pontos por meio dos comando ou SLOPE e FORECAST no Google Sheets (ou INCLINAÇÃO e PREVISÃO.LINEAR no Excel).

Usando da tabela mostrada anteriormente, no Google Sheets temos que

b_{sp} = SLOPE(Dados!D2:D61,Dados!(C2:C61) = -0.214

e como os dados estão em escala logarítmica

log(S_{f,sp}'\cdot 2) = FORECAST(0,Dados!D2:D61,Dados!C2:C61) = 3.08

de maneira que restam somente as variáveis N e S_a da equação

S_a = S_{f,sp}'\cdot (2N)^{b_{sp}}

baseada na Equação 4.6 disponível na dissertação Metodologia Moderna para Análise de Fadiga Baseada em Elementos Finitos de Componente Sujeitos a Fadiga Uni e Multiaxial de Bruno Ximenes, onde S_a é a Tensão Alternada à qual o componente está sujeito, S_{f,sp}' é o Coeficiente de Resistência à Fadiga do Material, N é o Número de Ciclos ao qual o componente está sujeito e b_{sp} é o Expoente de Resistência à Fadiga do Material.

Outra maneira bastante simples é adicionar a curva de tendência dos dados diretamente em um Scatter Plot e adicionar sua equação, cujo o procedimento pode ser feito diretamente nos dados ou na sua transformada logarítmica, basta lembrar que a curva de tendência na transformada é linear enquanto nos dados naturais é uma tendência de potência.

Diagrama de Wöhler ou Tensão – Número de Ciclos (S-N) com um modelo linear

Diagrama de Wöhler ou Tensão – Número de Ciclos (S-N) com um modelo de potência

Apesar de ambos os gráficos parecerem similares, repare que a escala dos eixos é diferente, esse é um pequeno artifício gráfico para ressaltar como, na verdade, as duas informações são equivalentes. A equação na legenda mostra o modelo da Curva S-N para os dois casos, na curva do modelo linear, os valores são iguais ao mostrados anteriormente, já na curva do modelo de potência se tem

b_{sp} = -0.214

e

S_{f,sp}'\cdot 2 = 1207

que são bastante próximos dos valores que eu inseri como propriedade dos materiais no código que gerou os dados, disponível no meu GitHub, esta pequena diferença é gerada pelo processo de amostragem, que pretendo me aprofundar em um próximo texto.

Esse post continua em:
Parte 1: Caracterização da Curva S-N por meio de um Teste de Fadiga
Parte 2: Criação de uma Curva S-N a partir de Dados Experimentais
Parte 3: Intervalo de Confiança para Propriedades de Fadiga dos Materiais
Parte 4: Intervalo de Confiança para Vida em Fadiga dos Materiais
Parte 5: Intervalo de Confiança de Vida em Fadiga para uma Simulação de Elementos Finitos

Caracterização da Curva S-N por meio de um Teste de Fadiga

Como todo post que nasce com uma ideia de ser o primeiro de uma série, nesse eu quero usar algumas linhas para descrever de como se desenvolve um teste de fadiga e como obter os primeiros dados, a ideia aqui foi gerar um código em Python que simula o resultado de um teste de caracterização à fadiga de uma chapa de aço para uma posterior criação de uma Curva de Wöhler ou Curva S-N. O conteúdo deste texto é baseado na ISO 12106:2017 Metallic materials – Fatigue testing – Axial-strain-controlled method.

Vou presumir que o curso básico de fadiga é conhecidos por todos, caso o contrário uma excelente bibliografia pode ser encontrada na biblioteca do blog, mas de forma geral a tensão de fadiga é dada por:

S_a = S_{f,sp}'\cdot (2N)^{b_{sp}}

baseada na Equação 4.6 disponível na dissertação Metodologia Moderna para Análise de Fadiga Baseada em Elementos Finitos de Componente Sujeitos a Fadiga Uni e Multiaxial de Bruno Ximenes, onde S_a é a Tensão Alternada à qual o componente está sujeito, S_{f,sp}' é o Coeficiente de Resistência à Fadiga do Material, N é o Número de Ciclos ao qual o componente está sujeito e b_{sp} é o Expoente de Resistência à Fadiga do Material.

Utilizando a ISO 12106:2017 como guia, inseri uma pequena variação da força aplicada na amostra em teste, que fisicamente podem ser interpretadas como desalinhamento do corpo de prova na máquina de ensaio, bem como uma tolerância dimensional no corpo de prova, como mostrado na imagem abaixo, ambos impactando no S_a da equação e normalmente imperceptíveis durante a execução dos teste. No valor de S_{f,sp} inseri uma variação estimada, típica de caracterização de materiais, que pode ser causa por variação do processo de fabricação da matéria prima, imperfeições do material e etc, o resultado final disso é uma variação gerada no Número de Ciclos N de falha do material.

CorpoDeProva

Corpo de Prova para Ensaio de Fadiga

Essas pequenas fontes de variação fazem com que os resultados de diferentes testes de fadiga de uma peça não sejam exatamente iguais, exatamente como ocorre quando um engenheiro tenta caraterizar uma matéria prima em um laboratório, por essa razão também foi acrescentado um variável de número de amostras no código, que para o exemplo foi utilizado n = 10. Executando o código várias vezes alterando a força (e portanto o valor de S_a) se obtém os valores típicos de um Diagrama S-N ou Diagrama de Wöhler, sendo o próximo passo a criação do modelo que melhor se ajusta ao dados, mas isso fica para o próximo post.

Confiabilidade

Diagrama de Wöhler ou Tensão – Número de Ciclos (S-N)

O código fonte deste exemplo pode ser encontrado no meu GitHub.

Esse post continua em:
Parte 1: Caracterização da Curva S-N por meio de um Teste de Fadiga
Parte 2: Criação de uma Curva S-N a partir de Dados Experimentais
Parte 3: Intervalo de Confiança para Propriedades de Fadiga dos Materiais
Parte 4: Intervalo de Confiança para Vida em Fadiga dos Materiais
Parte 5: Intervalo de Confiança de Vida em Fadiga para uma Simulação de Elementos Finitos

Usando Critérios de Falha para Cargas Estáticas

Durante os primeiros passos de qualquer engenheiro de simulação estrutural, uma das perguntas mais comuns é: Qual o Critério de Falha devo usar para analisar de minha peça vai falhar ou não?

Os programas comerciais normalmente já possuem dois ou três critérios de falhas previamente programados, e esses são os mais populares. O critério de von Mises, ou da Máxima Energia de Distorção; o critério de Tresca, ou da Máxima Energia de Cisalhamento; e o critério de Rankine, ou da Máxima Tensão Principal.

Os critérios de von Mises e Tresca são mais indicados para os materiais dúcteis, ou seja materiais que sofrem deformações específicas maiores do que 5% antes da ruptura, como a maioria dos aços com baixo teor de carbono, várias ligas de alumínio e materiais poliméricos em geral. Isso acontece porque esses materiais tendem a falhar primariamente por tensões de cisalhamento, como foi comentado nesse post.

Já o critério de Rankine é mais indicado para os casos onde o material tem uma fratura frágil, ou seja, sofre deformações específicas menores do que 5% antes da ruptura, característica de materiais cerâmicos e ligas de aço com alto teor de carbono.

Quando sobrepostos, a área de segurança desses três critérios produzem a imagem abaixo. Pode-se que ver que os quadrantes II e IV dos critérios utilizados para materiais dúcteis são menores do que o para os materiais frágeis, exatamente porque para essas condições te tensões o cisalhamento é predominante, com o cisalhamento máximo acontecendo em σ1 = -σ2. Já o critério de Rankine é mais conservador que o de von Mises para peças submetidas à tração pura, entretanto, pode gerar falsos positivos também nos quadrantes II e IV.

Criterios de Falha

Critérios de von Mises, Tresca e Rankine sobrepostos.

Essas considerações partem do pressuposto que a curva de tensão deformação do material é conhecida (ou ao menos se a fratura é dúctil ou frágil), o que nem sempre é uma realidade. Nos casos onde essa informação não está disponível, o aconselhável é analisar o componente pelos dois critérios e garantir a segurança.

Importante ressaltar também que estes critérios são válidos para materiais isotrópicos, ou seja, com o módulo de elasticidade igual em todas as direções, e sujeitos a cargas estáticas. Fenômenos dinâmicos ou com potencial para gerar fadiga possuem outros critérios.

Fonte: Elementos de Máquinas de Shigley – 10ª Edição. Autores, Richard G. Budynas, J. Keith Nisbeth. Editora, McGraw Hill Brasil, 2016