From e0b11378be8868a749c1a243bdcaf3275dc28e85 Mon Sep 17 00:00:00 2001 From: Davide Grilli Date: Wed, 1 Apr 2026 11:07:46 +0200 Subject: [PATCH] report --- plot_temperatura.png | Bin 0 -> 61010 bytes plot_temperatura.py | 1 + report.md | 19 ++++- report.tex | 194 +++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 211 insertions(+), 3 deletions(-) create mode 100644 plot_temperatura.png create mode 100644 report.tex diff --git a/plot_temperatura.png b/plot_temperatura.png new file mode 100644 index 0000000000000000000000000000000000000000..a940d18d61c4cfb715ac3b79448783a992de9bf3 GIT binary patch literal 61010 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

Xf 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 B2ZI0r literal 0 HcmV?d00001 diff --git a/plot_temperatura.py b/plot_temperatura.py index 94c8aaf..c1efe57 100644 --- a/plot_temperatura.py +++ b/plot_temperatura.py @@ -17,4 +17,5 @@ ax.legend() ax.grid(True, alpha=0.3) plt.tight_layout() +plt.savefig("plot_temperatura.png", dpi=150, bbox_inches="tight") plt.show() diff --git a/report.md b/report.md index 2d04a22..c5bddd7 100644 --- a/report.md +++ b/report.md @@ -5,9 +5,22 @@ Finestra di osservazione: **0.2 s → 133.7 s** (133.5 s totali, 888 campioni). --- -## 1. Temperatura ambiente T∞ +## 1. Dati e analisi preliminare -### Metodologia +### 1.1 Dati grezzi + +Il grafico seguente riporta il profilo termico completo acquisito dal sensore IR, a partire da t = 105 s. +Sono mostrate le due curve: temperatura ambiente e temperatura della scatola. + +![Profilo termico grezzo](plot_temperatura.png) + +*Temperatura ambiente (blu) e temperatura scatola (arancione).* + +--- + +### 1.2 Temperatura ambiente T∞ + +#### Metodologia `T_inf` è usata come temperatura di equilibrio nel modello di raffreddamento. È calcolata come **media ponderata sul tempo** sull'intera finestra di osservazione, con la regola dei trapezi: @@ -16,7 +29,7 @@ $$T_{\infty} = \frac{\int_{t_i}^{t_f} T_{amb}(t)\, dt}{t_f - t_i}$$ Questo approccio è corretto con campionamento non uniforme: ogni campione pesa proporzionalmente all'intervallo di tempo che copre. -### Risultati +#### Risultati | Parametro | Valore | |---|---| diff --git a/report.tex b/report.tex new file mode 100644 index 0000000..d3ee20f --- /dev/null +++ b/report.tex @@ -0,0 +1,194 @@ +\documentclass[12pt,a4paper]{article} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage[italian]{babel} +\usepackage{amsmath} +\usepackage{graphicx} +\usepackage{booktabs} +\usepackage{geometry} +\usepackage{caption} +\usepackage{hyperref} + +\geometry{margin=2.5cm} + +\title{\textbf{Analisi termica} \\ \large Scatola su linea di forno} +\author{} +\date{} + +\begin{document} + +\maketitle + +Campionamento IR della temperatura di una scatola che attraversa un forno su linea di produzione. +Finestra di osservazione: \textbf{0.2\,s $\rightarrow$ 133.7\,s} (133.5\,s totali, 888 campioni). + +% ───────────────────────────────────────────── +\section{Dati e analisi preliminare} + +\subsection{Dati grezzi} + +Il grafico seguente riporta il profilo termico completo acquisito dal sensore IR, a partire da $t = 105\,\mathrm{s}$. +Sono mostrate le due curve: temperatura ambiente ($T_{\mathrm{amb}}$) e temperatura della scatola ($T_{\mathrm{obj}}$). + +\begin{figure}[h!] + \centering + \includegraphics[width=\textwidth]{plot_temperatura.png} + \caption{Profilo termico grezzo: temperatura ambiente (blu) e temperatura scatola (arancione).} +\end{figure} + +% ───────────────────────────────────────────── +\subsection{Temperatura ambiente $T_\infty$} + +\subsubsection*{Metodologia} + +$T_\infty$ è usata come temperatura di equilibrio nel modello di raffreddamento. +È calcolata come \textbf{media ponderata sul tempo} sull'intera finestra di osservazione, con la regola dei trapezi: + +\begin{equation} + T_{\infty} = \frac{\int_{t_i}^{t_f} T_{\mathrm{amb}}(t)\,dt}{t_f - t_i} +\end{equation} + +Questo approccio è corretto con campionamento non uniforme: ogni campione pesa proporzionalmente all'intervallo di tempo che copre. + +\subsubsection*{Risultati} + +\begin{table}[h!] +\centering +\begin{tabular}{ll} +\toprule +Parametro & Valore \\ +\midrule +$T_{\mathrm{amb}}$ minima & 22.60\,°C \\ +$T_{\mathrm{amb}}$ massima & 23.80\,°C \\ +\textbf{$T_\infty$ (media ponderata)} & \textbf{22.99\,°C} \\ +\bottomrule +\end{tabular} +\end{table} + +% ───────────────────────────────────────────── +\section{Raffreddamento} + +Il profilo di raffreddamento è modellato con la legge di raffreddamento di Newton: + +\begin{equation} + T(t) = T_{\infty} + A \cdot e^{-\frac{t - t_0}{\tau}} +\end{equation} + +con $T_{\infty} = 22.99\,°C$ fisso. Il metodo di stima è in tutti i casi \textbf{Nonlinear Least Squares con Trust Region Reflective (TRF)} (\texttt{scipy.optimize.curve\_fit(..., method="trf")}). + +% ───────────────────────────────────────────── +\subsection{Raffreddamento intero} + +Fit sulla finestra completa $t_0 = 115.0\,\mathrm{s} \rightarrow$ fine osservazione, con pesi espliciti per escludere la zona di transizione in uscita dal forno. + +\begin{table}[h!] +\centering +\caption{Schema dei pesi} +\begin{tabular}{lll} +\toprule +Intervallo & Peso & Motivazione \\ +\midrule +$[115.0,\ 115.9)$\,s & $w = 1$ & Raffreddamento regolare \\ +$[115.9,\ 117.2]$\,s & $w = 0\ (\sigma = 10^{10})$ & Errore di misura \\ +$(117.2,\ \mathrm{fine}]$\,s & $w = 1$ & Raffreddamento regolare \\ +\bottomrule +\end{tabular} +\end{table} + +I punti nella zona esclusa ricevono peso nullo: assegnando $\sigma = 10^{10}$ il termine $(\mathrm{residuo}/\sigma)^2 \rightarrow 0$, rendendoli ininfluenti sul costo del fit. Entrambi i parametri $A$ e $\tau$ sono liberi. + +\begin{table}[h!] +\centering +\caption{Parametri stimati — Raffreddamento intero} +\begin{tabular}{lll} +\toprule +Parametro & Descrizione & Valore \\ +\midrule +$A$ & Sovratemperatura iniziale & $185.18 \pm 0.27\,°C$ \\ +$\tau$ & Costante di tempo & $16.27 \pm 0.05\,\mathrm{s}$ \\ +\bottomrule +\end{tabular} +\end{table} + +\textbf{Curva stimata:} +\begin{equation} + T(t) = 22.99 + 185.18 \cdot e^{-\frac{t - 115.0}{16.27}} \quad [°C] +\end{equation} + +\textbf{Bontà del fit:} $R^2 = 0.9938$ (calcolato solo sui punti con peso pieno). + +\begin{figure}[h!] + \centering + \includegraphics[width=\textwidth]{fit_raffreddamento_intero.png} + \caption{Raffreddamento intero: dati raw (blu), zona esclusa (arancione), curva di fit TRF (rosso tratteggiato).} +\end{figure} + +\clearpage + +% ───────────────────────────────────────────── +\subsection{Raffreddamento 1° tratto} + +Fit sul primo sotto-tratto $[115.0,\ 115.9\,\mathrm{s}]$, la finestra precedente alla zona di transizione. Pesi uniformi ($w = 1$ su tutti i punti). Parametri liberi: $A$, $\tau$. + +\begin{table}[h!] +\centering +\caption{Parametri stimati — 1° tratto} +\begin{tabular}{lll} +\toprule +Parametro & Descrizione & Valore \\ +\midrule +$A$ & Sovratemperatura iniziale & $194.51\,°C$ \\ +$\tau$ & Costante di tempo & $13.17\,\mathrm{s}$ \\ +\bottomrule +\end{tabular} +\end{table} + +\textbf{Curva stimata:} +\begin{equation} + T(t) = 22.99 + 194.51 \cdot e^{-\frac{t - 115.0}{13.17}} \quad [°C] +\end{equation} + +\textbf{Bontà del fit:} $R^2 = 0.9998$. + +\begin{figure}[h!] + \centering + \includegraphics[width=\textwidth]{fit_raffreddamento_1tratto.png} + \caption{1° tratto $[115.0\text{--}115.9\,\mathrm{s}]$: dati raw (blu) e curva di fit (rosso tratteggiato).} +\end{figure} + +\clearpage + +% ───────────────────────────────────────────── +\subsection{Raffreddamento 2° tratto} + +Fit sul solo tratto di raffreddamento stazionario, a partire dall'istante in cui la scatola ha completato l'uscita dal forno. In questa finestra i dati seguono il modello esponenziale senza discontinuità, quindi non sono necessari pesi espliciti. + +Finestra: $t_0 = 117.5\,\mathrm{s} \rightarrow$ fine osservazione. Pesi uniformi ($w = 1$). Parametri liberi: $A$, $\tau$. + +\begin{table}[h!] +\centering +\caption{Parametri stimati — 2° tratto} +\begin{tabular}{lll} +\toprule +Parametro & Descrizione & Valore \\ +\midrule +$A$ & Sovratemperatura iniziale & $154.94\,°C$ \\ +$\tau$ & Costante di tempo & $17.12\,\mathrm{s}$ \\ +\bottomrule +\end{tabular} +\end{table} + +\textbf{Curva stimata:} +\begin{equation} + T(t) = 22.99 + 154.94 \cdot e^{-\frac{t - 117.5}{17.12}} \quad [°C] +\end{equation} + +\textbf{Bontà del fit:} $R^2 = 0.9981$ — il modello spiega il 99.81\% della varianza, fit eccellente. + +\begin{figure}[h!] + \centering + \includegraphics[width=\textwidth]{fit_raffreddamento_2tratto.png} + \caption{2° tratto $[117.5\,\mathrm{s}\text{--fine}]$: dati raw (blu) e curva di fit (rosso tratteggiato).} +\end{figure} + +\end{document}