Controle Estatístico de Qualidade

Apostila: Gráficos de Controle, Curva CO e Comprimento Médio da Sequência

Autor

Prof. Dr. Dennison Carvalho - Baseado em Montgomery (2017)

Data de Publicação

23 de abril de 2026


Como usar esta apostila:
Cada seção apresenta a teoria com demonstração passo a passo, seguida de um exemplo numérico resolvido em R base. As caixas de destaque (> ...) contêm as fórmulas e os resultados principais.

Este material foi produzido em Quarto Markdown, com apoio de ferramentas de inteligência artificial na organização e síntese do conteúdo, tendo sido integralmente revisado e validado pelo autor.


1 Fundamentos: lógica dos gráficos de controle

Um gráfico de controle de Shewhart exibe uma estatística amostral \(w\) ao longo do tempo. Sua estrutura é sempre a mesma:

\[\text{LSC} = \mu_w + L\,\sigma_w, \qquad \text{LC} = \mu_w, \qquad \text{LIC} = \mu_w - L\,\sigma_w\]

onde \(L\) é o múltiplo de sigma — na prática industrial, \(L = 3\) (limites três-sigma).

Por que três sigma?
Se o processo estiver sob controle e a característica seguir uma distribuição normal, a probabilidade de um ponto cair fora dos limites três-sigma é apenas \(\alpha = 0{,}0027\) (aproximadamente 27 em 10.000 amostras). Esse valor gera poucos alarmes falsos, sem deixar de detectar desvios razoáveis.

Os dois tipos de erro:

Erro O que acontece Nome popular
Tipo I (\(\alpha\)) Sinal de fora de controle com processo normal Alarme falso
Tipo II (\(\beta\)) Sem sinal com processo alterado Falha de detecção

Ao afastar os limites, reduzimos \(\alpha\) e aumentamos \(\beta\); ao aproximá-los, o efeito é o inverso. Os limites três-sigma são um equilíbrio consagrado pela prática.


2 Gráfico \(\bar{X}\) e \(R\) — Média e Amplitude

2.1 Teoria e derivação das fórmulas

O gráfico \(\bar{X}\)-\(R\) é o mais utilizado para monitorar processos com amostras de tamanho pequeno (\(2 \le n \le 10\)). Ele é composto de dois gráficos complementares:

  • Gráfico \(\bar{X}\): monitora a localização (média do processo).
  • Gráfico \(R\): monitora a variabilidade (amplitude = máximo − mínimo da amostra).

2.1.1 Estimando \(\sigma\) pela amplitude

Coleta-se \(m\) amostras de tamanho \(n\). Seja \(R_i = x_{i,\max} - x_{i,\min}\) a amplitude da \(i\)-ésima amostra, e \(\bar{R} = \frac{1}{m}\sum_{i=1}^m R_i\) a amplitude média.

Sabe-se que a amplitude relativa \(W = R/\sigma\) tem distribuição conhecida com:

\[E(W) = d_2(n) \quad \Longrightarrow \quad \hat{\sigma} = \frac{\bar{R}}{d_2}\]

A constante \(d_2\) depende apenas do tamanho \(n\) da amostra e é tabelada (Montgomery, Tabela VI do Apêndice).

2.1.2 Parâmetros do gráfico \(\bar{X}\)

Como \(E(\bar{X}) = \mu\) e \(\sigma_{\bar{X}} = \sigma/\sqrt{n}\), os limites três-sigma ficam:

\[\text{LSC}_{\bar{X}} = \bar{\bar{X}} + 3\,\frac{\hat{\sigma}}{\sqrt{n}} = \bar{\bar{X}} + \underbrace{\frac{3}{d_2\sqrt{n}}}_{A_2}\bar{R}\]

\[\text{LIC}_{\bar{X}} = \bar{\bar{X}} - A_2\,\bar{R}\]

Fórmula fechada:
\(\text{LSC}_{\bar{X}} = \bar{\bar{X}} + A_2\bar{R}\), \(\quad \text{LC} = \bar{\bar{X}}\), \(\quad \text{LIC}_{\bar{X}} = \bar{\bar{X}} - A_2\bar{R}\)

A constante \(A_2 = 3/(d_2\sqrt{n})\) está tabelada.

2.1.3 Parâmetros do gráfico \(R\)

O desvio-padrão de \(R\) é \(\sigma_R = d_3\,\sigma\), onde \(d_3\) também depende de \(n\). Usando \(\hat{\sigma} = \bar{R}/d_2\):

\[\text{LSC}_R = \bar{R} + 3\,\frac{d_3}{d_2}\bar{R} = \underbrace{\left(1 + 3\,\frac{d_3}{d_2}\right)}_{D_4}\bar{R}\]

\[\text{LIC}_R = \underbrace{\left(1 - 3\,\frac{d_3}{d_2}\right)}_{D_3}\bar{R}\]

Fórmula fechada:
\(\text{LSC}_R = D_4\bar{R}\), \(\quad \text{LC} = \bar{R}\), \(\quad \text{LIC}_R = D_3\bar{R}\)
Para \(n \le 6\): \(D_3 = 0\) (não há limite inferior).

Constantes para tamanhos de amostra usuais:

\(n\) \(d_2\) \(d_3\) \(A_2\) \(D_3\) \(D_4\)
2 1,128 0,853 1,880 0 3,267
3 1,693 0,888 1,023 0 2,574
4 2,059 0,880 0,729 0 2,282
5 2,326 0,864 0,577 0 2,114
6 2,534 0,848 0,483 0 2,004
7 2,704 0,833 0,419 0,076 1,924

2.2 Exemplo resolvido em R

Reproduzimos o Exemplo 6.1 de Montgomery (2017, p. 194): processo de cozimento (hard-bake) em semicondutores. Largura de fluxo do fotorresiste, \(m = 25\) amostras, \(n = 5\).

# Dados do Exemplo 6.1 de Montgomery (2017) - 25 amostras de tamanho 5
dados <- matrix(c(
  1.3235,1.4128,1.6744,1.4573,1.6914,
  1.4314,1.3592,1.6075,1.4666,1.6109,
  1.4284,1.4871,1.4932,1.4324,1.5674,
  1.5028,1.6352,1.3841,1.2831,1.5507,
  1.5604,1.2735,1.5265,1.4363,1.6441,
  1.6363,1.3210,1.4462,1.5337,1.7583,
  1.4371,1.6987,1.3531,1.4452,1.4792,
  1.4800,1.3573,1.4428,1.4428,1.4843,
  1.4385,1.5341,1.6413,1.3499,1.5497,
  1.6075,1.7723,1.3697,1.4393,1.5401,
  1.4826,1.4004,1.5979,1.5658,1.3947,
  1.5054,1.3824,1.5199,1.4654,1.4625,
  1.4785,1.5937,1.4969,1.5033,1.5018,
  1.5147,1.6668,1.4843,1.5878,1.5319,
  1.5400,1.4723,1.5252,1.5836,1.4685,
  1.4935,1.5632,1.4381,1.5507,1.5634,
  1.5172,1.5040,1.5399,1.4820,1.5236,
  1.4446,1.5102,1.5777,1.4919,1.5045,
  1.4762,1.5770,1.5963,1.4695,1.5789,
  1.4799,1.5717,1.6073,1.3799,1.5695,
  1.5559,1.5302,1.6725,1.5054,1.3763,
  1.3678,1.5867,1.5542,1.4534,1.4983,
  1.5447,1.4027,1.5199,1.5778,1.4738,
  1.4219,1.5607,1.4905,1.5116,1.4969,
  1.4547,1.4923,1.5408,1.4729,1.5327
), nrow = 25, byrow = TRUE)

# Médias e amplitudes de cada amostra
xbar <- apply(dados, 1, mean)
R    <- apply(dados, 1, function(x) max(x) - min(x))

cat("Amplitude média (R-barra):", round(mean(R), 5), "\n")
Amplitude média (R-barra): 0.21697 
# cat("Média gera (X-dupla-barra):", round(mean(xbar), 5), "\n")
cat("Média geral ($\\bar{\\bar{X}}$):", round(mean(xbar), 5), "\n")

Média geral (\(\bar{\bar{X}}\)): 1.50504

# Constantes para n = 5
n  <- 5
A2 <- 0.577
D3 <- 0
D4 <- 2.114
d2 <- 2.326

Rbar   <- mean(R)
Xbar2  <- mean(xbar)

# Parâmetros do gráfico R
LC_R  <- Rbar
LSC_R <- D4 * Rbar
LIC_R <- D3 * Rbar

# Parâmetros do gráfico X-barra
LC_X  <- Xbar2
LSC_X <- Xbar2 + A2 * Rbar
LIC_X <- Xbar2 - A2 * Rbar

cat("\n--- Gráfico R ---\n")

--- Gráfico R ---
cat("LC =", round(LC_R,4), "| LIC =", round(LIC_R,4), "| LSC =", round(LSC_R,4), "\n")
LC = 0.217 | LIC = 0 | LSC = 0.4587 
cat("\n--- Gráfico X-barra ---\n")

--- Gráfico X-barra ---
cat("LC =", round(LC_X,4), "| LIC =", round(LIC_X,4), "| LSC =", round(LSC_X,4), "\n")
LC = 1.505 | LIC = 1.3798 | LSC = 1.6302 
# Estimativa do desvio-padrão
sigma_hat <- Rbar / d2
cat("\nEstimativa de sigma:", round(sigma_hat, 4), "\n")

Estimativa de sigma: 0.0933 
par(mfrow = c(2, 1), mar = c(4, 4, 3, 2))

# --- Gráfico R ---
plot(R, type = "b", pch = 19, col = "steelblue",
     ylim = range(c(0, R, LSC_R * 1.1)),
     main = "Gráfico R — Amplitude amostral",
     xlab = "Amostra", ylab = "Amplitude R",
     las = 1, cex = 0.8)
abline(h = LC_R,  lty = 1, col = "darkgreen",  lwd = 2)
abline(h = LSC_R, lty = 2, col = "red",         lwd = 2)
abline(h = LIC_R, lty = 2, col = "red",         lwd = 2)
legend("topright", legend = c("LC", "LSC/LIC"),
       lty = c(1,2), col = c("darkgreen","red"), lwd = 2, cex = 0.8)

# --- Gráfico X-barra ---
plot(xbar, type = "b", pch = 19, col = "steelblue",
     ylim = range(c(LIC_X * 0.99, xbar, LSC_X * 1.01)),
     main = expression(paste("Gráfico ", bar(X), " — Média amostral")),
     xlab = "Amostra", ylab = expression(bar(X)),
     las = 1, cex = 0.8)
abline(h = LC_X,  lty = 1, col = "darkgreen",  lwd = 2)
abline(h = LSC_X, lty = 2, col = "red",         lwd = 2)
abline(h = LIC_X, lty = 2, col = "red",         lwd = 2)
legend("topright", legend = c("LC", "LSC/LIC"),
       lty = c(1,2), col = c("darkgreen","red"), lwd = 2, cex = 0.8)

par(mfrow = c(1,1))

Interpretação: Nenhuma das 25 amplitudes ou médias amostrais excede os limites de controle. O processo está sob controle estatístico na Fase I.


3 Gráfico \(\bar{X}\) e \(S\) — Média e Desvio-Padrão

3.1 Por que usar \(S\) em vez de \(R\)?

Para amostras grandes (\(n > 10\)), a amplitude \(R\) perde eficiência como estimador de \(\sigma\) porque ignora as observações internas. O desvio-padrão amostral \(s\) usa toda a informação da amostra.

3.2 Derivação

O desvio-padrão amostral \(s\) é um estimador levemente viesado de \(\sigma\):

\[E(s) = c_4(n)\,\sigma \quad \Longrightarrow \quad \hat{\sigma} = \frac{\bar{s}}{c_4}\]

O desvio-padrão de \(s\) é \(\sigma_s = \sigma\sqrt{1 - c_4^2}\). Substituindo \(\hat{\sigma}\):

\[\text{LSC}_s = \bar{s} + 3\,\frac{\sqrt{1-c_4^2}}{c_4}\,\bar{s} = \underbrace{\left(1 + 3\,\frac{\sqrt{1-c_4^2}}{c_4}\right)}_{B_4}\bar{s}\]

\[\text{LIC}_s = \underbrace{\left(1 - 3\,\frac{\sqrt{1-c_4^2}}{c_4}\right)}_{B_3}\bar{s}\]

Para o gráfico \(\bar{X}\), \(\sigma_{\bar{X}} = \sigma/\sqrt{n}\) e usando \(\hat{\sigma} = \bar{s}/c_4\):

\[\text{LSC}_{\bar{X}} = \bar{\bar{X}} + \underbrace{\frac{3}{c_4\sqrt{n}}}_{A_3}\bar{s}\]

Fórmulas:
Gráfico \(S\): \(\text{LSC} = B_4\bar{s}\); \(\text{LIC} = B_3\bar{s}\)
Gráfico \(\bar{X}\): \(\text{LSC} = \bar{\bar{X}} + A_3\bar{s}\); \(\text{LIC} = \bar{\bar{X}} - A_3\bar{s}\)

\(n\) \(c_4\) \(A_3\) \(B_3\) \(B_4\)
5 0,9400 1,427 0 2,089
10 0,9727 0,975 0,284 1,716
15 0,9823 0,789 0,428 1,572
25 0,9896 0,606 0,565 1,435

3.3 Exemplo em R

# Usando os mesmos dados do exemplo anterior
S     <- apply(dados, 1, sd)
Sbar  <- mean(S)

# Constantes para n = 5
c4 <- 0.9400
A3 <- 1.427
B3 <- 0
B4 <- 2.089

# Limites do gráfico S
LSC_S <- B4 * Sbar
LIC_S <- B3 * Sbar
LC_S  <- Sbar

# Limites do gráfico X-barra (usando s-barra)
LSC_Xs <- Xbar2 + A3 * Sbar
LIC_Xs <- Xbar2 - A3 * Sbar

cat("--- Gráfico S ---\n")
--- Gráfico S ---
cat("LC =", round(LC_S,5), "| LIC =", round(LIC_S,5), "| LSC =", round(LSC_S,5), "\n")
LC = 0.08664 | LIC = 0 | LSC = 0.18099 
cat("\n--- Gráfico X-barra (via S) ---\n")

--- Gráfico X-barra (via S) ---
cat("LC =", round(Xbar2,5), "| LIC =", round(LIC_Xs,5), "| LSC =", round(LSC_Xs,5), "\n")
LC = 1.50504 | LIC = 1.38141 | LSC = 1.62867 
# Comparação das estimativas de sigma
cat("\nEstimativa sigma via R:", round(Rbar/d2, 5))

Estimativa sigma via R: 0.09328
cat("\nEstimativa sigma via S:", round(Sbar/c4, 5), "\n")

Estimativa sigma via S: 0.09217 
par(mfrow = c(2, 1), mar = c(4, 4, 3, 2))

plot(S, type = "b", pch = 19, col = "darkorange",
     ylim = range(c(0, S, LSC_S * 1.1)),
     main = "Gráfico S — Desvio-padrão amostral",
     xlab = "Amostra", ylab = "s", las = 1, cex = 0.8)
abline(h = LC_S,  lty = 1, col = "darkgreen", lwd = 2)
abline(h = LSC_S, lty = 2, col = "red",       lwd = 2)
abline(h = LIC_S, lty = 2, col = "red",       lwd = 2)
legend("topright", legend = c("LC", "LSC/LIC"),
       lty = c(1,2), col = c("darkgreen","red"), lwd = 2, cex = 0.8)

plot(xbar, type = "b", pch = 19, col = "darkorange",
     ylim = range(c(LIC_Xs * 0.99, xbar, LSC_Xs * 1.01)),
     main = expression(paste("Gráfico ", bar(X), " com limites via ", bar(S))),
     xlab = "Amostra", ylab = expression(bar(X)), las = 1, cex = 0.8)
abline(h = Xbar2,  lty = 1, col = "darkgreen", lwd = 2)
abline(h = LSC_Xs, lty = 2, col = "red",       lwd = 2)
abline(h = LIC_Xs, lty = 2, col = "red",       lwd = 2)
legend("topright", legend = c("LC", "LSC/LIC"),
       lty = c(1,2), col = c("darkgreen","red"), lwd = 2, cex = 0.8)

par(mfrow = c(1,1))

4 Gráfico para Medidas Individuais (\(X\) e \(MR\))

4.1 Quando usar

Quando só é possível obter uma observação por período (processos lentos, análises químicas, dados contábeis mensais, etc.), não é possível calcular uma média ou amplitude de subgrupo. Usa-se o gráfico de observações individuais (\(X\)) acompanhado do gráfico de amplitude móvel (\(MR\)).

4.2 Derivação

A variabilidade é estimada pela amplitude móvel de abrangência 2 entre observações consecutivas:

\[MR_i = |x_i - x_{i-1}|, \quad i = 2, 3, \ldots, m\]

A média das amplitudes móveis é \(\overline{MR}\). Como essa é uma amplitude de subgrupo com \(n = 2\), usa-se \(d_2(2) = 1{,}128\):

\[\hat{\sigma} = \frac{\overline{MR}}{d_2} = \frac{\overline{MR}}{1{,}128}\]

Parâmetros do gráfico \(X\) (medidas individuais):

\[\text{LSC}_X = \bar{X} + 3\,\frac{\overline{MR}}{d_2} = \bar{X} + \frac{3}{1{,}128}\overline{MR} \approx \bar{X} + 2{,}660\,\overline{MR}\]

\[\text{LIC}_X = \bar{X} - 2{,}660\,\overline{MR}\]

Parâmetros do gráfico \(MR\) (com \(D_3 = 0\) e \(D_4 = 3{,}267\) para \(n=2\)):

\[\text{LSC}_{MR} = D_4\,\overline{MR} = 3{,}267\,\overline{MR}\]

Atenção: o gráfico \(X\)-\(MR\) é sensível à não-normalidade. Para Fase II, prefira gráficos CUSUM ou EWMA.

4.3 Exemplo em R

Dados do Exemplo 6.5 de Montgomery (2017): custo semanal de um processo de fabricação (em R$1.000) ao longo de 45 semanas.

# Custo semanal (adaptado de Montgomery, 2017, Tabela 6.6)
set.seed(42)
custo <- c(297, 302, 301, 305, 298, 307, 305, 299, 303, 304,
           295, 301, 305, 300, 298, 307, 306, 300, 301, 303,
           295, 305, 302, 304, 296, 303, 302, 305, 299, 307,
           301, 304, 296, 300, 298, 305, 303, 301, 300, 302,
           305, 310, 312, 308, 311)

m    <- length(custo)
Xbar <- mean(custo)

# Amplitude móvel
MR    <- c(NA, abs(diff(custo)))
MRbar <- mean(MR, na.rm = TRUE)

# Limites
d2_2 <- 1.128
D4_2 <- 3.267

LSC_X2  <- Xbar + 3 * MRbar / d2_2
LIC_X2  <- Xbar - 3 * MRbar / d2_2
LSC_MR2 <- D4_2 * MRbar
LIC_MR2 <- 0

cat("Média (X-barra):", round(Xbar, 3), "\n")
Média (X-barra): 302.467 
cat("MR-barra:", round(MRbar, 3), "\n")
MR-barra: 4.409 
cat("\nGráfico X: LIC =", round(LIC_X2,2), "| LC =", round(Xbar,2), "| LSC =", round(LSC_X2,2), "\n")

Gráfico X: LIC = 290.74 | LC = 302.47 | LSC = 314.19 
cat("Gráfico MR: LIC =", LIC_MR2, "| LC =", round(MRbar,2), "| LSC =", round(LSC_MR2,2), "\n")
Gráfico MR: LIC = 0 | LC = 4.41 | LSC = 14.4 
semanas <- 1:m

par(mfrow = c(2,1), mar = c(4, 4, 3, 2))

# --- Gráfico X (individuais) ---
plot(semanas, custo, type = "b", pch = 19, col = "purple",
     ylim = c(LIC_X2 - 2, LSC_X2 + 2),
     main = "Gráfico X — Observações Individuais",
     xlab = "Semana", ylab = "Custo (R$1.000)", las = 1, cex = 0.8)
abline(h = Xbar,   lty = 1, col = "darkgreen", lwd = 2)
abline(h = LSC_X2, lty = 2, col = "red",       lwd = 2)
abline(h = LIC_X2, lty = 2, col = "red",       lwd = 2)
# Destacar pontos fora de controle
fora_X <- which(custo > LSC_X2 | custo < LIC_X2)
if (length(fora_X) > 0)
  points(fora_X, custo[fora_X], col = "red", pch = 17, cex = 1.5)

# --- Gráfico MR ---
plot(semanas, MR, type = "b", pch = 19, col = "purple",
     ylim = c(0, max(MR, LSC_MR2, na.rm = TRUE) * 1.1),
     main = "Gráfico MR — Amplitude Móvel",
     xlab = "Semana", ylab = "MR", las = 1, cex = 0.8)
abline(h = MRbar,   lty = 1, col = "darkgreen", lwd = 2)
abline(h = LSC_MR2, lty = 2, col = "red",       lwd = 2)
abline(h = LIC_MR2, lty = 2, col = "red",       lwd = 2)

par(mfrow = c(1,1))

5 Gráfico \(p\) — Fração Não Conforme

5.1 Fundamento estatístico

Quando se classifica cada item como conforme ou não conforme (atributo binário), o número de não conformes \(D\) em uma amostra de tamanho \(n\) segue distribuição Binomial\((n, p)\), onde \(p\) é a verdadeira fração não conforme do processo.

Propriedades:

\[E(D) = np, \qquad \text{Var}(D) = np(1-p)\]

A fração amostral não conforme é \(\hat{p}_i = D_i/n\), com:

\[E(\hat{p}) = p, \qquad \sigma_{\hat{p}} = \sqrt{\frac{p(1-p)}{n}}\]

5.2 Parâmetros do gráfico \(p\)

Quando \(p\) é desconhecido, estima-se como:

\[\bar{p} = \frac{\sum_{i=1}^m D_i}{mn}\]

Os limites três-sigma são:

\[\text{LSC}_p = \bar{p} + 3\sqrt{\frac{\bar{p}(1-\bar{p})}{n}}, \qquad \text{LIC}_p = \bar{p} - 3\sqrt{\frac{\bar{p}(1-\bar{p})}{n}}\]

Se \(\text{LIC}_p < 0\), usa-se \(\text{LIC}_p = 0\).

Com \(p\) conhecido (padrão especificado \(p_0\)): substitui-se \(\bar{p}\) por \(p_0\) nas fórmulas acima.

5.3 Exemplo em R

Dados do Exemplo 7.1 de Montgomery (2017): frações não conformes de 30 amostras de \(n = 50\) peças injetadas.

# Número de não conformes em 30 amostras de n = 50
n_p <- 50
D   <- c(12, 15, 8, 10, 4, 7, 16, 9, 14, 10,
          5, 6, 17, 12, 22, 8, 10, 5, 13, 11,
          20, 18, 24, 15, 9, 12, 7, 13, 9, 6)

m_p   <- length(D)
phat  <- D / n_p
pbar  <- sum(D) / (m_p * n_p)

LSC_p <- pbar + 3 * sqrt(pbar * (1 - pbar) / n_p)
LIC_p <- max(0, pbar - 3 * sqrt(pbar * (1 - pbar) / n_p))

cat("p-barra:", round(pbar, 4), "\n")
p-barra: 0.2313 
cat("LIC =", round(LIC_p,4), "| LC =", round(pbar,4), "| LSC =", round(LSC_p,4), "\n")
LIC = 0.0524 | LC = 0.2313 | LSC = 0.4102 
# Amostras fora de controle
fora_p <- which(phat > LSC_p | phat < LIC_p)
cat("Amostras fora de controle:", fora_p, "\n")
Amostras fora de controle: 15 23 
plot(1:m_p, phat, type = "b", pch = 19, col = "steelblue",
     ylim = c(0, max(phat, LSC_p) * 1.15),
     main = "Gráfico p — Fração Não Conforme",
     xlab = "Amostra", ylab = expression(hat(p)), las = 1, cex = 0.8)
abline(h = pbar,  lty = 1, col = "darkgreen", lwd = 2)
abline(h = LSC_p, lty = 2, col = "red",       lwd = 2)
abline(h = LIC_p, lty = 2, col = "red",       lwd = 2)
if (length(fora_p) > 0)
  points(fora_p, phat[fora_p], col = "red", pch = 17, cex = 1.8)
legend("topright",
       legend = c("Fração amostral", "LC (p-barra)", "LSC/LIC", "Fora de controle"),
       pch = c(19, NA, NA, 17), lty = c(1, 1, 2, NA),
       col = c("steelblue","darkgreen","red","red"), cex = 0.8)


6 Gráfico \(np\) — Número de Não Conformes

6.1 Relação com o gráfico \(p\)

O gráfico \(np\) é simplesmente uma reparametrização do gráfico \(p\): em vez de plotar a fração \(\hat{p}_i = D_i/n\), plota-se diretamente o número \(D_i\). É preferido por muitos operadores por lidar com números inteiros.

Exige tamanho amostral constante (se \(n\) varia, use o gráfico \(p\)).

6.2 Parâmetros

Como \(E(D) = np\) e \(\sigma_D = \sqrt{np(1-p)}\):

\[\text{LSC}_{np} = n\bar{p} + 3\sqrt{n\bar{p}(1-\bar{p})}, \qquad \text{LIC}_{np} = n\bar{p} - 3\sqrt{n\bar{p}(1-\bar{p})}\]

Relação com o gráfico \(p\): os parâmetros do gráfico \(np\) são simplesmente os do gráfico \(p\) multiplicados por \(n\).

6.3 Exemplo em R

# Usando os mesmos dados do gráfico p
LSC_np <- n_p * pbar + 3 * sqrt(n_p * pbar * (1 - pbar))
LIC_np <- max(0, n_p * pbar - 3 * sqrt(n_p * pbar * (1 - pbar)))

cat("n * p-barra:", round(n_p * pbar, 3), "\n")
n * p-barra: 11.567 
cat("LIC =", round(LIC_np,3), "| LC =", round(n_p*pbar,3), "| LSC =", round(LSC_np,3), "\n")
LIC = 2.621 | LC = 11.567 | LSC = 20.512 
fora_np <- which(D > LSC_np | D < LIC_np)

plot(1:m_p, D, type = "b", pch = 19, col = "darkcyan",
     ylim = c(0, max(D, LSC_np) * 1.15),
     main = "Gráfico np — Número de Não Conformes",
     xlab = "Amostra", ylab = "Número de não conformes (D)", las = 1, cex = 0.8)
abline(h = n_p * pbar, lty = 1, col = "darkgreen", lwd = 2)
abline(h = LSC_np,     lty = 2, col = "red",       lwd = 2)
abline(h = LIC_np,     lty = 2, col = "red",       lwd = 2)
if (length(fora_np) > 0)
  points(fora_np, D[fora_np], col = "red", pch = 17, cex = 1.8)


7 Gráfico \(c\) — Número de Não Conformidades

7.1 Distinção fundamental

Conceito Definição Gráfico
Não conforme Unidade com pelo menos 1 defeito \(p\), \(np\)
Não conformidade Defeito individual (uma unidade pode ter vários) \(c\), \(u\)

7.2 Fundamento: distribuição de Poisson

Quando o número de oportunidades para defeito é muito grande mas a probabilidade de cada um ser muito pequena, o número de não conformidades \(c\) segue uma distribuição de Poisson com parâmetro \(c_0 > 0\):

\[P(X = x) = \frac{e^{-c_0}\,c_0^x}{x!}, \quad x = 0, 1, 2, \ldots\]

Propriedade fundamental: \(E(X) = \text{Var}(X) = c_0\), portanto \(\sigma = \sqrt{c_0}\).

7.3 Parâmetros do gráfico \(c\)

Com parâmetro desconhecido, estimado por \(\bar{c} = \frac{1}{m}\sum_{i=1}^m c_i\):

\[\text{LSC}_c = \bar{c} + 3\sqrt{\bar{c}}, \qquad \text{LIC}_c = \max\!\left(0,\; \bar{c} - 3\sqrt{\bar{c}}\right)\]

Exige que todas as unidades de inspeção tenham a mesma área de oportunidade.

7.4 Exemplo em R

Dados do Exemplo 7.3 de Montgomery (2017): não conformidades em 26 amostras de 100 placas de circuito impresso.

# Número de não conformidades por amostra (26 amostras, 100 placas cada)
ci <- c(21, 24, 16, 12, 15, 5, 28, 20, 31, 25,
        20, 24, 16, 19, 10, 17, 13, 22, 18, 39,
        30, 24, 16, 19, 17, 15)

m_c  <- length(ci)
cbar <- mean(ci)

LSC_c <- cbar + 3 * sqrt(cbar)
LIC_c <- max(0, cbar - 3 * sqrt(cbar))

cat("c-barra:", round(cbar, 3), "\n")
c-barra: 19.846 
cat("LIC =", round(LIC_c,3), "| LC =", round(cbar,3), "| LSC =", round(LSC_c,3), "\n")
LIC = 6.481 | LC = 19.846 | LSC = 33.211 
fora_c <- which(ci > LSC_c | ci < LIC_c)
cat("Amostras fora de controle:", fora_c, "\n")
Amostras fora de controle: 6 20 
plot(1:m_c, ci, type = "b", pch = 19, col = "coral",
     ylim = c(0, max(ci, LSC_c) * 1.15),
     main = "Gráfico c — Número de Não Conformidades",
     xlab = "Amostra", ylab = "Número de não conformidades (c)", las = 1, cex = 0.8)
abline(h = cbar,  lty = 1, col = "darkgreen", lwd = 2)
abline(h = LSC_c, lty = 2, col = "red",       lwd = 2)
abline(h = LIC_c, lty = 2, col = "red",       lwd = 2)
if (length(fora_c) > 0)
  points(fora_c, ci[fora_c], col = "red", pch = 17, cex = 1.8)
text(fora_c, ci[fora_c]+3, labels = fora_c, col = "red", cex = 0.9)


8 Gráfico \(u\) — Não Conformidades por Unidade

8.1 Motivação

O gráfico \(c\) exige unidades de inspeção de tamanho constante. Quando isso não é possível (número de peças inspecionadas varia de amostra para amostra), usa-se o gráfico \(u\), que trabalha com a taxa de não conformidades por unidade.

8.2 Parâmetros

Seja \(n_i\) o número de unidades na \(i\)-ésima amostra e \(x_i\) o total de não conformidades. Define-se:

\[u_i = \frac{x_i}{n_i}\]

A estimativa do nível médio é \(\bar{u} = \frac{\sum x_i}{\sum n_i}\).

Como \(u_i\) é uma média de variáveis de Poisson, \(\sigma_{u_i} = \sqrt{\bar{u}/n_i}\), e os limites variam com \(n_i\):

\[\text{LSC}_{u_i} = \bar{u} + 3\sqrt{\frac{\bar{u}}{n_i}}, \qquad \text{LIC}_{u_i} = \max\!\left(0,\; \bar{u} - 3\sqrt{\frac{\bar{u}}{n_i}}\right)\]

Quando \(n_i\) é variável, os limites de controle também variam — formando um padrão de “dentes de serra” no gráfico.

8.3 Exemplo em R

# Não conformidades e tamanhos de amostra (adaptado de Montgomery, 2017)
set.seed(7)
n_u <- c(10, 8, 12, 10, 9, 11, 10, 13, 10, 8,
          9, 10, 11, 10, 12, 10, 9,  8, 10, 11)
x_u <- c(21, 24, 16, 12, 15,  5, 28, 20, 31, 25,
         20, 24, 16, 19, 10, 17, 13, 22, 18, 22)

m_u  <- length(n_u)
u_i  <- x_u / n_u
ubar <- sum(x_u) / sum(n_u)

LSC_u <- ubar + 3 * sqrt(ubar / n_u)
LIC_u <- pmax(0, ubar - 3 * sqrt(ubar / n_u))

cat("u-barra:", round(ubar, 3), "\n")
u-barra: 1.881 
cat("Limites variam pois n_i não é constante.\n")
Limites variam pois n_i não é constante.
fora_u <- which(u_i > LSC_u | u_i < LIC_u)
cat("Amostras fora de controle:", fora_u, "\n")
Amostras fora de controle: 6 
plot(1:m_u, u_i, type = "b", pch = 19, col = "darkviolet",
     ylim = c(0, max(u_i, LSC_u) * 1.15),
     main = "Gráfico u — Não Conformidades por Unidade",
     xlab = "Amostra", ylab = expression(u[i]), las = 1, cex = 0.8)
abline(h = ubar, lty = 1, col = "darkgreen", lwd = 2)

# Limites variáveis: plotar como linhas escalonadas
lines(1:m_u, LSC_u, lty = 2, col = "red",  lwd = 1.5, type = "s")
lines(1:m_u, LIC_u, lty = 2, col = "red",  lwd = 1.5, type = "s")

if (length(fora_u) > 0)
  points(fora_u, u_i[fora_u], col = "red", pch = 17, cex = 1.8)

legend("topright",
       legend = c("u_i", expression(bar(u)), "LSC/LIC (variáveis)"),
       pch = c(19, NA, NA), lty = c(1,1,2),
       col = c("darkviolet","darkgreen","red"), cex = 0.8)


9 Função e Curva Característica de Operação (CO)

9.1 O que é a curva CO?

A curva característica de operação exibe a probabilidade \(\beta\) de não detectar uma mudança no processo (Erro Tipo II) como função da magnitude do desvio.

Ela responde à pergunta: Se o processo muda de \(\mu_0\) para \(\mu_1\), qual é a chance de o gráfico não sinalizar na próxima amostra?

9.2 Derivação para o gráfico \(\bar{X}\)

Quando o processo está em controle, \(\bar{X} \sim N(\mu_0, \sigma^2/n)\) e os limites três-sigma são:

\[\text{LSC} = \mu_0 + 3\sigma_{\bar{X}}, \qquad \text{LIC} = \mu_0 - 3\sigma_{\bar{X}}\]

Suponha que a média do processo sofre um deslocamento de \(\delta\) desvios-padrão:

\[\mu_1 = \mu_0 + \delta\sigma\]

Após o deslocamento, \(\bar{X} \sim N(\mu_1, \sigma^2/n)\). A probabilidade de não detectar o desvio é:

\[\beta = P(\text{LIC} \le \bar{X} \le \text{LSC} \mid \mu = \mu_1)\]

Padronizando para \(Z \sim N(0,1)\):

\[\beta = \Phi\!\left(3 - \delta\sqrt{n}\right) - \Phi\!\left(-3 - \delta\sqrt{n}\right)\]

onde \(\Phi\) é a CDF da normal padrão.

Interpretação: \(1 - \beta\) é a potência do gráfico — a probabilidade de detectar o desvio na primeira amostra após a mudança.

9.3 Curva CO para o gráfico \(\bar{X}\) em R

# Função que calcula beta para o gráfico X-barra
beta_xbar <- function(delta, n, L = 3) {
  pnorm(L - delta * sqrt(n)) - pnorm(- L - delta * sqrt(n))
}

delta_seq <- seq(0, 4, by = 0.1)

# Curva CO para diferentes tamanhos de amostra
ns <- c(1, 2, 4, 5, 8, 10)
cores <- c("gray50","steelblue","darkorange","darkgreen","purple","red")

plot(NA, xlim = c(0, 4), ylim = c(0, 1),
     main = expression(paste("Curva CO — Gráfico ", bar(X), " (Limites 3σ)")),
     xlab = expression(paste("Desvio ",delta," (em unidades de σ)")),
     ylab = expression(beta ~ "(probabilidade de não detectar)"),
     las = 1)

for (i in seq_along(ns)){
  beta_vals <- beta_xbar(delta_seq, ns[i])
  lines(delta_seq, beta_vals, col = cores[i], lwd = 2)
}

abline(h = 0.5, lty = 3, col = "gray")
legend("topright",
       legend = paste("n =", ns),
       col = cores, lwd = 2, cex = 0.85)

Como ler o gráfico:

  • Para \(\delta = 0\) (processo em controle): \(\beta \approx 1\) — o gráfico quase nunca dará falso alarme.
  • Para \(\delta = 1\) (desvio de \(1\sigma\)) com \(n = 5\): \(\beta \approx 0{,}75\) — há 75% de chance de não detectar. O gráfico é pouco eficiente para desvios pequenos.
  • Amostras maiores \(\Rightarrow\) curva mais íngreme \(\Rightarrow\) maior potência para qualquer desvio.
# Exemplo numérico: probabilidade de detectar desvio de 1.5 sigma
delta_ex <- 1.5
for (ni in c(4, 5, 10)) {
  b <- beta_xbar(delta_ex, ni)
  cat(sprintf("n = %2d | δ = %.1f | β = %.4f | Potência = %.4f\n",
              ni, delta_ex, b, 1 - b))
}
n =  4 | δ = 1.5 | β = 0.5000 | Potência = 0.5000
n =  5 | δ = 1.5 | β = 0.3616 | Potência = 0.6384
n = 10 | δ = 1.5 | β = 0.0406 | Potência = 0.9594

9.4 Curva CO para o gráfico \(p\)

Para o gráfico \(p\), \(\beta\) é a probabilidade de o número de não conformes \(D\) estar entre LIC e LSC quando \(p\) muda de \(\bar{p}\) para \(p_1\):

\[\beta = \sum_{d=\lceil n\,\text{LIC} \rceil}^{\lfloor n\,\text{LSC} \rfloor} \binom{n}{d}p_1^d(1-p_1)^{n-d}\]

# Parâmetros do exemplo (n=50, p-barra estimado)
n_co  <- 50
pbar_co <- 0.10  # valor sob controle

LSC_co <- pbar_co + 3 * sqrt(pbar_co * (1 - pbar_co) / n_co)
LIC_co <- max(0, pbar_co - 3 * sqrt(pbar_co * (1 - pbar_co) / n_co))

# Limites em número de defeitos
d_lsc <- floor(n_co * LSC_co)
d_lic <- ceiling(n_co * LIC_co)

beta_p <- function(p1, n, lic, lsc) {
  pbinom(lsc, n, p1) - pbinom(lic - 1, n, p1)
}

p1_seq    <- seq(0.01, 0.40, by = 0.005)
beta_vals <- sapply(p1_seq, beta_p, n = n_co, lic = d_lic, lsc = d_lsc)

plot(p1_seq, beta_vals, type = "l", lwd = 2, col = "steelblue",
     main = paste0("Curva CO — Gráfico p\n(n=", n_co, ", p\u0305=", pbar_co, ")"),
     xlab = "Fração não conforme real expression(p[1])",
     ylab = expression(beta ~ "(prob. de não detectar)"),
     ylim = c(0,1), las = 1)
abline(v  = pbar_co, lty = 2, col = "darkgreen")
abline(h  = 0.50,   lty = 3, col = "gray")
text(pbar_co + 0.01, 0.95, expression(bar(p)), col = "darkgreen")


10 Comprimento Médio da Sequência (CMS)

10.1 Conceito e definição

O Comprimento Médio da Sequência (CMS, ou Average Run Length — ARL em inglês) é o número médio de amostras até que o gráfico emita um sinal.

Se \(p\) é a probabilidade de um único ponto cair fora dos limites de controle, então o número de amostras até o primeiro sinal segue uma distribuição Geométrica com parâmetro \(p\):

\[\text{CMS} = \frac{1}{p}\]

10.1.1 Demonstração passo a passo

A distribuição geométrica conta o número de ensaios de Bernoulli independentes até o primeiro “sucesso” (sinal). Se \(p\) é constante:

\[P(N = k) = (1-p)^{k-1}\,p, \quad k = 1, 2, 3, \ldots\]

A média desta distribuição é:

\[E(N) = \sum_{k=1}^{\infty} k\,(1-p)^{k-1}\,p = \frac{1}{p} \qquad \checkmark\]

10.1.2 CMS sob controle (\(\text{CMS}_0\))

Com limites três-sigma e processo em controle, \(p = \alpha = 0{,}0027\):

\[\text{CMS}_0 = \frac{1}{0{,}0027} \approx 370\]

Ou seja: mesmo com o processo sob controle, um falso alarme ocorrerá a cada 370 amostras em média.

10.1.3 CMS fora de controle (\(\text{CMS}_1\))

Se o processo sofre um deslocamento de \(\delta\) desvios-padrão, a probabilidade de detecção em uma amostra é \(1 - \beta\), portanto:

\[\text{CMS}_1 = \frac{1}{1 - \beta(\delta, n)}\]

10.2 Cálculo em R

# CMS para o gráfico X-barra com limites 3-sigma
cms_xbar <- function(delta, n, L = 3) {
  beta <- beta_xbar(delta, n, L)
  p    <- 1 - beta      # prob. de detectar
  1 / p
}

# Tabela: CMS para vários desvios e tamanhos de amostra
deltas <- c(0, 0.5, 1.0, 1.5, 2.0, 3.0)
ns_cms <- c(4, 5, 8, 10)

cat("CMS para o gráfico X-barra (Limites 3-sigma)\n")
CMS para o gráfico X-barra (Limites 3-sigma)
cat(sprintf("%-8s", "delta"))
delta   
for (ni in ns_cms) cat(sprintf("n = %-6d", ni))
n = 4     n = 5     n = 8     n = 10    
cat("\n", rep("-", 8 + 8 * length(ns_cms)), "\n", sep = "")

----------------------------------------
for (d in deltas) {
  cat(sprintf("%-8.1f", d))
  for (ni in ns_cms) cat(sprintf("%-8.1f", cms_xbar(d, ni)))
  cat("\n")
}
0.0     370.4   370.4   370.4   370.4   
0.5     43.9    33.4    17.7    12.8    
1.0     6.3     4.5     2.3     1.8     
1.5     2.0     1.6     1.1     1.0     
2.0     1.2     1.1     1.0     1.0     
3.0     1.0     1.0     1.0     1.0     
delta_range <- seq(0, 3, by = 0.05)
ns_plot     <- c(4, 5, 8, 10)
cores_cms   <- c("steelblue","darkorange","darkgreen","red")

plot(NA, xlim = c(0, 3), ylim = c(1, 400),
     log = "y",   # escala log para melhor visualização
     main = "CMS — Comprimento Médio da Sequência\n(Gráfico X-barra, limites 3σ)",
     xlab = expression(paste("Desvio ", delta, " (em unidades de σ)")),
     ylab = "CMS (escala log)",
     las = 1)

for (i in seq_along(ns_plot)) {
  cms_vals <- sapply(delta_range, cms_xbar, n = ns_plot[i])
  lines(delta_range, cms_vals, col = cores_cms[i], lwd = 2)
}

abline(h = 370, lty = 3, col = "gray50")
text(2.5, 400, "CMS₀ ≈ 370", col = "gray40", cex = 0.85)

legend("topright",
       legend = paste("n =", ns_plot),
       col = cores_cms, lwd = 2, cex = 0.85)

10.3 Assimetria da distribuição geométrica

A distribuição geométrica é muito assimétrica à direita. Por isso, o CMS nem sempre é um valor “típico” da sequência observada. Alguns analistas preferem reportar os percentis.

# Percentis da distribuição geométrica para p = 0.0027 (processo em controle)
p_controle <- 0.0027
cat("Distribuição do comprimento de sequência (processo sob controle, p=0.0027)\n\n")
Distribuição do comprimento de sequência (processo sob controle, p=0.0027)
for (pctil in c(0.10, 0.25, 0.50, 0.75, 0.90)) {
  # P(N <= k) = 1 - (1-p)^k >= percentil => k >= log(1-percentil)/log(1-p)
  k <- ceiling(log(1 - pctil) / log(1 - p_controle))
  cat(sprintf("Percentil %2.0f%%: comprimento <= %d amostras\n", pctil * 100, k))
}
Percentil 10%: comprimento <= 39 amostras
Percentil 25%: comprimento <= 107 amostras
Percentil 50%: comprimento <= 257 amostras
Percentil 75%: comprimento <= 513 amostras
Percentil 90%: comprimento <= 852 amostras
cat(sprintf("\nCMS (média) = %.0f amostras\n", 1 / p_controle))

CMS (média) = 370 amostras
cat(sprintf("Desvio-padrão ≈ %.0f amostras\n", sqrt((1 - p_controle) / p_controle^2)))
Desvio-padrão ≈ 370 amostras

Interpretação: Embora o CMS₀ seja 370, 50% das vezes um falso alarme ocorre em 256 amostras ou menos; e 10% das vezes ocorre em apenas 38 amostras. Isso reflete a grande dispersão da distribuição geométrica.

10.4 CMS para o gráfico \(p\)

# CMS para o gráfico p: n=50, p-barra=0.10
cms_p_chart <- function(p1, n = 50, p0 = 0.10) {
  lsc <- p0 + 3 * sqrt(p0*(1-p0)/n)
  lic <- max(0, p0 - 3 * sqrt(p0*(1-p0)/n))
  d_lsc <- floor(n * lsc)
  d_lic <- ceiling(n * lic)
  b <- pbinom(d_lsc, n, p1) - pbinom(d_lic - 1, n, p1)
  1 / (1 - b)
}

p1_vals <- c(0.10, 0.12, 0.15, 0.20, 0.25, 0.30)
cat("CMS para o gráfico p (n=50, p0=0.10)\n")
CMS para o gráfico p (n=50, p0=0.10)
cat(sprintf("%-10s %-10s %-10s\n", "p1", "1-beta", "CMS"))
p1         1-beta     CMS       
for (p1v in p1_vals) {
  b     <- 1 - 1/cms_p_chart(p1v)
  cms_v <- cms_p_chart(p1v)
  cat(sprintf("%-10.2f %-10.4f %-10.1f\n", p1v, 1 - b, cms_v))
}
0.10       0.0032     310.6     
0.12       0.0135     73.9      
0.15       0.0628     15.9      
0.20       0.2893     3.5       
0.25       0.6184     1.6       
0.30       0.8610     1.2       

11 Resumo das Fórmulas

11.1 Gráficos para variáveis

Gráfico LC LSC LIC
\(\bar{X}\) via \(R\) \(\bar{\bar{X}}\) \(\bar{\bar{X}} + A_2\bar{R}\) \(\bar{\bar{X}} - A_2\bar{R}\)
\(R\) \(\bar{R}\) \(D_4\bar{R}\) \(D_3\bar{R}\)
\(\bar{X}\) via \(S\) \(\bar{\bar{X}}\) \(\bar{\bar{X}} + A_3\bar{S}\) \(\bar{\bar{X}} - A_3\bar{S}\)
\(S\) \(\bar{S}\) \(B_4\bar{S}\) \(B_3\bar{S}\)
\(X\) (individual) \(\bar{X}\) \(\bar{X} + 2{,}660\,\overline{MR}\) \(\bar{X} - 2{,}660\,\overline{MR}\)
\(MR\) \(\overline{MR}\) \(3{,}267\,\overline{MR}\) \(0\)

11.2 Gráficos para atributos

Gráfico LC LSC LIC
\(p\) \(\bar{p}\) \(\bar{p} + 3\sqrt{\bar{p}(1-\bar{p})/n}\) \(\bar{p} - 3\sqrt{\bar{p}(1-\bar{p})/n}\)
\(np\) \(n\bar{p}\) \(n\bar{p} + 3\sqrt{n\bar{p}(1-\bar{p})}\) \(n\bar{p} - 3\sqrt{n\bar{p}(1-\bar{p})}\)
\(c\) \(\bar{c}\) \(\bar{c} + 3\sqrt{\bar{c}}\) \(\bar{c} - 3\sqrt{\bar{c}}\)
\(u\) \(\bar{u}\) \(\bar{u} + 3\sqrt{\bar{u}/n_i}\) \(\bar{u} - 3\sqrt{\bar{u}/n_i}\)

11.3 Curva CO e CMS

Fórmula Expressão
\(\beta\) (gráfico \(\bar{X}\)) \(\Phi(3 - \delta\sqrt{n}) - \Phi(-3 - \delta\sqrt{n})\)
CMS (geral) \(1/p\)
CMS₀ (limites 3σ) \(1/0{,}0027 \approx 370\)
CMS₁ \(1/(1-\beta)\)

12 Exercícios

  1. Em uma indústria de parafusos, deseja-se monitorar o diâmetro dos parafusos produzidos. O diâmetro nominal é 10 mm, com tolerância de mais ou menos 0.2 mm. A cada hora, um inspetor coleta um subgrupo de 5 parafusos para verificar a estabilidade do processo. Aplique os gráficos de controle para amplitude, desvio e para média usando a amplitude e o desvio.
set.seed(123)
# 12 subgrupos, 5 peças cada
n <- 5
k <- 12
dados <- matrix(rnorm(k * n, mean = 10, sd = 0.1), ncol = n, byrow = TRUE)
dados
           [,1]      [,2]      [,3]      [,4]      [,5]
 [1,]  9.943952  9.976982 10.155871 10.007051 10.012929
 [2,] 10.171506 10.046092  9.873494  9.931315  9.955434
 [3,] 10.122408 10.035981 10.040077 10.011068  9.944416
 [4,] 10.178691 10.049785  9.803338 10.070136  9.952721
 [5,]  9.893218  9.978203  9.897400  9.927111  9.937496
 [6,]  9.831331 10.083779 10.015337  9.886186 10.125381
 [7,] 10.042646  9.970493 10.089513 10.087813 10.082158
 [8,] 10.068864 10.055392  9.993809  9.969404  9.961953
 [9,]  9.930529  9.979208  9.873460 10.216896 10.120796
[10,]  9.887689  9.959712  9.953334 10.077997  9.991663
[11,] 10.025332  9.997145  9.995713 10.136860  9.977423
[12,] 10.151647  9.845125 10.058461 10.012385 10.021594
  1. Use os procedimentos para gráficos de controle para medidas individuais para os dados faithful do datasets.

  2. Use os procedimentos para gráficos de controle para medidas individuais para a variável Ozone dos dados airquality do datasets.

  3. Dados sobre número de canetas defeituosas (que não emitem tinta) em amostras de tamanho 100. Construa um gráfico de controle para a proporção de itens não-conforme. O processo está sob controle? Se não, suponha que causas atribuíveis possam ser encontradas para todos os pontos fora de controle e determine os limites de controle revisados.

amostra = 1:20

d_i = c(16,6,3,10,13,7,11,7,5,21,26,12,7,10,8,12,10,14,10,11)

tab.caneta = data.frame(Amostra = amostra, Defeitos = d_i)
tab.caneta
   Amostra Defeitos
1        1       16
2        2        6
3        3        3
4        4       10
5        5       13
6        6        7
7        7       11
8        8        7
9        9        5
10      10       21
11      11       26
12      12       12
13      13        7
14      14       10
15      15        8
16      16       12
17      17       10
18      18       14
19      19       10
20      20       11
  1. Em uma empresa são produzidas tampas de caneta de diferentes cores. Quando a quantidade de tampas de uma determinada cor, suficiente para atender à demanda, é produzida, passa-se então a produzir as tampas de ourta cor. Dessa forma, as amostras são estabelecidas de acordo com a cor dos itens produzidos, e o monitoramento da produção de tampas com um formato inadequado pode ser feito em um contexto em que são coletadas amostras de diferentes tamanhos.
amostra = 1:25

n_i = c(80,94,80,104,98,95,84,95,85,128,95,101,122,127,123,90,126,84,94,89,119,130,101,102,109)

d_i = c(9,8,8,10,7,7,11,7,6,19,11,8,13,11,6,8,14,6,9,8,10,14,14,27,19)

tab.tampa = data.frame(Amostra = amostra, n_i = n_i ,Defeitos = d_i)
tab.tampa
   Amostra n_i Defeitos
1        1  80        9
2        2  94        8
3        3  80        8
4        4 104       10
5        5  98        7
6        6  95        7
7        7  84       11
8        8  95        7
9        9  85        6
10      10 128       19
11      11  95       11
12      12 101        8
13      13 122       13
14      14 127       11
15      15 123        6
16      16  90        8
17      17 126       14
18      18  84        6
19      19  94        9
20      20  89        8
21      21 119       10
22      22 130       14
23      23 101       14
24      24 102       27
25      25 109       19
  1. Construa os gráficos \(p\) e \(p\) padronizado. O Processo parece estar sobre controle?

  2. Faça as revisões necessárias nos limites de controle tentativos, de modo a produzir um conjunto de gráficos de controle para monitorar a produção futura.

  1. Dados sobre o número de pares de sapatos defeituosos em amostras de tamanho de 200 pares analisados diariamente, para 25 dias úteis de certo mês.
dia = 1:25

d_i = c(9,11,14,9,16,11,10,12,5,10,9,11,7,9,22,11,8,11,9,13,9,7,9,8,12)

tab.sapato = data.frame(Dia = dia, Defeitos = d_i)
# colnames(tab.sapato) = c("Dia", "Número de defeitos")
tab.sapato
   Dia Defeitos
1    1        9
2    2       11
3    3       14
4    4        9
5    5       16
6    6       11
7    7       10
8    8       12
9    9        5
10  10       10
11  11        9
12  12       11
13  13        7
14  14        9
15  15       22
16  16       11
17  17        8
18  18       11
19  19        9
20  20       13
21  21        9
22  22        7
23  23        9
24  24        8
25  25       12
  1. Estabeleça os limites de controle. Qual a sua conclusão?

  2. Qual o menor tamanho de amostra que pode ser usado para este processo e ainda fornecer um limite inferior de controle positivo?

  1. Um processo que produz latas de cerveja em lotes de tamanho 50 deve ser controlado pelo uso do gráfico \(np\).
lote = 1:30

d_i = c(11,6,9,12,8,7,14,9,14,9,9,8,6,6,11,12,22,15,20,13,8,13,13,12,9,11,11,14,9,11)

tab.lata = data.frame(Lote = lote, Defeitos = d_i)

tab.lata
   Lote Defeitos
1     1       11
2     2        6
3     3        9
4     4       12
5     5        8
6     6        7
7     7       14
8     8        9
9     9       14
10   10        9
11   11        9
12   12        8
13   13        6
14   14        6
15   15       11
16   16       12
17   17       22
18   18       15
19   19       20
20   20       13
21   21        8
22   22       13
23   23       13
24   24       12
25   25        9
26   26       11
27   27       11
28   28       14
29   29        9
30   30       11
  1. Estabeleça um gráfico de controle para monitorar a produção futura (considere \(p\) = 0,20)

  2. Ache o menos tamanho de amostra que dá um limite inferior de controle positivo.

  1. Foram contados os defeitos de 20 placas de aparelhos celulares. Estabeleça um gráfico de controle do número de defeitos por placa produzida usando esses dados. O processo parece estat sobre controle estatístico? Se não, suponha que causas atribuíveis possam ser encontradas para todos os pontos fora de controle e calcule os limites de controle revisados
placa = 1:20

d_i = c(6,1,4,3,4,4,5,4,2,3,4,2,4,6,0,2,5,12,8,13)

tab.placa = data.frame(Placa = placa, Defeitos = d_i)

tab.placa
   Placa Defeitos
1      1        6
2      2        1
3      3        4
4      4        3
5      5        4
6      6        4
7      7        5
8      8        4
9      9        2
10    10        3
11    11        4
12    12        2
13    13        4
14    14        6
15    15        0
16    16        2
17    17        5
18    18       12
19    19        8
20    20       13
  1. Uma fábrica têxtil deseja controlar o número de falhas nas camisetas que fabrica. A unidade de inspeção é definida como 50 camisetas e os dados para 30 amostras (cada uma de tamanho 50) estão na tabela abaixo
amostra = 1:30 

falhas = c(10,14,9,7,12,3,5,6,12,24,23,6,8,6,6,6,10,8,4,10,12,8,9,1,7,3,12,10,9,14)

tab.camisa = data.frame(Amostra = amostra, Falha = falhas)
tab.camisa
   Amostra Falha
1        1    10
2        2    14
3        3     9
4        4     7
5        5    12
6        6     3
7        7     5
8        8     6
9        9    12
10      10    24
11      11    23
12      12     6
13      13     8
14      14     6
15      15     6
16      16     6
17      17    10
18      18     8
19      19     4
20      20    10
21      21    12
22      22     8
23      23     9
24      24     1
25      25     7
26      26     3
27      27    12
28      28    10
29      29     9
30      30    14
  1. Estabeleça um gráfico de controle para o número de falhas por unidade de inspeção usando uma linha central c = 8 e examine o processo com relação ao controle estatístico.

  2. Refaça o item (a) sem considerar a especificação. Qual a sua conclusão?

  1. Reconsidere os dados do exercício 5 e construa um gráfico \(u\) para esse processo. Compare esse gráfico de controle com aquele construído anteriormente e discuta os resultados.

  2. Considere novamente os dados do exercício 6. Visto que tais camisetas são comercializadas em amostras de tamanho 50 unidades e que são reunidas duas amostras dessas camisetas em uma caixa para realização de transporte, há interesse em verificar se as caixas transportadas apresentam um padrão de qualidade aceitável. Estabeleça um gráfico \(u\) para controlar esse processo.

  3. Uma indústria farmacêutica monitora o peso médio de comprimidos produzidos em uma linha automática.
    O peso nominal é de 500 mg e o controle é feito por meio de um gráfico de controle da média (\(\bar{x}\)).

Informações do processo:

  • média sob controle: (\(\mu_0\) = 500) mg
  • desvio-padrão do processo: (\(\sigma\) = 4) mg
  • tamanho da amostra: (\(n = 5\))
  • limites de controle de (\(3\sigma\))

O setor de qualidade deseja estudar o desempenho do gráfico para detectar mudanças na média do processo.

  1. Calcular os limites de controle do gráfico ({x});
  2. Calcular a Curva Característica de Operação (CCO);
  3. Calcular o Comprimento Médio da Sequência (ARL);
  4. Construir os gráficos da CCO e do ARL;
  5. Interpretar os resultados.


  • REFERÊNCIA

MONTGOMERY, Douglas C. Introdução ao Controle Estatístico da Qualidade. 7. ed. Rio de Janeiro: LTC, 2017.


Apostila elaborada com R Markdown / Quarto. Todos os exemplos numéricos são baseados diretamente nos dados e exemplos do livro-texto.