Metal Science Deep Dive: Heat Treatment Windows for Recycled Inputs

Discover how adaptive heat treatment windows for recycled metals ensure unmatched quality and consistency in modern metallurgy, with real-world case studies and innovative technologies.

METAL SCIENCE & INDUSTRIAL TECHNOLOGY

TDC Ventures LLC

10/2/202532 min read

Molten metal glowing in an industrial furnace during heat treatment.
Molten metal glowing in an industrial furnace during heat treatment.

Introduction: The New Frontier of Metal Science

Sustainability has evolved from a buzzword to a strategic priority in heavy industry, with metallurgy at the vanguard of this shift. Today, the circular economy model—where metals are continually recycled to reduce environmental impact—defines competitive advantage. For steelmakers, aluminum smelters, and foundries, integrating recycled metals is now an industry norm rather than a niche practice.

Yet, this progress brings an array of scientific and operational challenges. The core issue? Maintaining and improving material quality when your feedstock is no longer predictable. In this milieu, a subtle yet foundational concept emerges: the heat treatment window. Once formulaic in virgin-material scenarios, it has become an arena for innovation and risk mitigation as metal plants encounter more complex inputs.

This comprehensive guide cuts through the complexity. Using the latest in materials engineering, data-driven process controls, and real-world operations experience, we'll unveil how leaders in industrial technology can redefine their heat treatment strategies to meet tomorrow's demands. QA professionals, operations directors, and metallurgists will gain actionable insights for balancing eco-friendly mandates with uncompromised metallurgical performance.

What is a Heat Treatment Window in Metal Science?

A heat treatment window defines the precise parameters—temperature ranges, timing, atmosphere, and cooling rates—where a metal undergoes controlled physical and microstructural changes to achieve optimal mechanical properties. Historically, proprietary heat treatment charts built for virgin alloys (such as SAE 1045 steel or 6061 aluminum) were more than sufficient to predictively achieve target performance values like yield strength, ductility, or hardness.

However, the shift to recycled inputs—where composition, microstructure, and contamination history are highly variable—reshapes this fundamental paradigm. For instance, the Carbon Equivalent Value (CEV) in EAF (Electric Arc Furnace) steel production swings much wider with scrap variability than with iron ore-based processes. This directly affects transformation temperatures and window widths.

Where yesterday's metallurgist relied on published standards (ASM Heat Treating Handbook, ASTM), today's experts must employ agile, batch-specific process window design—with digital process mapping and on-the-fly analytics—to safeguard against suboptimal or even catastrophic outcomes.

The Entity in Focus: Recycled Metal Alloys

In the modern industrial ecosystem, "recycled metal alloys" are the principal entity. Their associated attributes include chemical composition (major alloying and tramp elements), microstructure, prior processing effects, and their evolving thermodynamic and mechanical response to tailored heat treatment cycles.

Key related entities—such as material properties (tensile strength, fracture toughness, fatigue life), testing protocols, and quality assurance standards—anchor our exploration and will be referenced throughout.

The Practical Science: Fundamentals at Play

1. Understanding Composition Variability

Unlike virgin feedstock, recycled metals—which can originate from automotive shredders, appliance recycling, ship-breaking, or obsolete infrastructure—are subject to uncontrolled compositional fluctuations. The World Steel Association reports that more than 30% of global annual crude steel production now relies on scrap inputs, intensifying this challenge. Tramp elements like copper (from electrical wire), tin (from coated steels), and antimony (from batteries) accumulate in the recycling loop. Even at ppm (parts-per-million) levels, these elements influence:

- Hardness and ductility (e.g., copper raises hardenability but can cause hot shortness).

- Phase transformation behavior during heat treatment, shifting both Ac1 and Ac3 points (critical for austenitization in steels).

- Corrosion resistance and weldability, especially for structural applications.

Case Study: A leading German steelworks found a 0.2% variation in copper content between recycled lots created a 45°C spread in optimal tempering temperatures for medium-carbon steels—imposing real commercial implications for process timing and energy consumption.

2. Phase Transformations and Microstructure Control

Precise heat treatment depends on accurately predicting and steering phase transitions—such as the order and completeness of austenite formation, carbides precipitation, or ferrite and pearlite distributions. With recycled materials, hidden inclusions, legacy microstructural artifacts (such as elongation bands from prior cold working or retained martensite from non-uniform quenching), and minor contaminant phases can:

- Lower transformation temperatures unpredictably.

- Cause localized over-hardening or embrittlement.

- Induce grain coarsening or non-uniform phase growth, degrading mechanical performance.

Deep-dive: Researchers at the Fraunhofer Institute used in-situ high-temperature microscopy to reveal that increased tin content (above 0.09%) not only depresses the ferrite to austenite transition but also encourages undesirable intergranular phases, a concern in safety-critical automotive parts.

3. Thermal and Mechanical Property Testing

Given these unknowns, rigorous property validation is mandatory—beyond what has been standard for homogeneous, virgin feedstock. Cutting-edge operations now deploy both destructive (tensile, impact, hardness) and non-destructive (eddy current, acoustic emission) methods per batch.

Emerging trend: Laser ultrasonic testing is gaining traction for real-time tracking of elastic modulus changes during heat cycles, flagging deviations indicative of hidden compositional variability within recycled steel billets.

Key Parameters in Defining the Process Window for Recycled Inputs

Precision heat treatment with recycled alloys necessitates multi-factor control, drawing on a suite of advanced analytical and process optimization tools. The following attributes underpin modern process window management:

1. Chemical Composition Monitoring

- On-line Spectrometry (OES, XRF): Enables real-time alloy mix adjustment before and during melting—reducing guesswork and improving first-pass yield.

- Tramp Element Correlation: Advanced analytics link OES/XRF readings to mechanical property databases, uncovering subtle correlations between composition and performance.

2. Initial Microstructure Characterization

- Metallographic inspection (via SEM, EBSD, and digital image analysis) identifies phase distributions and legacy deformation markers that directly impact phase transformation kinetics.

3. Time-Temperature-Ambient Cycle Optimization

- PLCs & Furnace Automation: Closed-loop integration ensures tight ramp/slope control, more critical as the allowable window narrows with increased input variability.

- Big Data Logging: Digitized recording of every cycle parameter—invaluable for root cause analysis and continuous improvement under ISO 9001 and IATF 16949.

4. Atmospheric Control

- For steels and some non-ferrous alloys, tightly managed furnace atmospheric composition (using oxygen, nitrogen, and dewpoint sensing) prevents decarburization, oxidation, or nitriding—all risks exacerbated by contaminant elements in recycled feedstock.

5. Cooling Rate Management

- Dynamic quench systems (variable agitation or multi-stage cooling) compensate for the altered cooling curve sensitivity seen in recycled alloys, where non-standard element levels can dramatically change hardenability and distortion tendencies.

6. Comprehensive Post-Treatment Testing

- Integrated hardness mapping (robotic or scanner-based Rockwell testing), high-throughput tensile/impact analysis, and microstructural benchmarking provide the validation loop essential for every high-value shipment.

Industry benchmark: Companies such as Nucor and ArcelorMittal have implemented AI-driven, in-process property prediction models—marrying metallurgical data with machine learning for real-time process window adaptation.

Testing Protocols: QA for Every Melt

Quality assurance doesn't scale with old methods in a recycling-led system. Instead, world-class operations are investing in batch-specific process validation, underpinned by data-driven protocol design.

Batch Certification and Sampling

Every melt and subsequent batch demands:

- Pre-Treatment Sampling: Multiple coupons per heat lot undergo baseline microstructural, chemical, and mechanical assessment before any process adjustments are finalized.

- Matrix Heat Treatment Trials: Instead of a single cycle, batches are subjected to a grid of heat treatment conditions across, within, and slightly outside the anticipated process window to empirically map property response.

- Statistical Results Analysis: Response surfaces guide exact window boundary adjustments for that batch, rather than relying on legacy specs.

Case Insight: A major U.S. forging plant reduced customer complaints by 37% within 12 months after deploying a layered, batch-specific testing regime for scrap-based steel, revealing—and correcting—previously undetected property fractures related to small compositional swings.

Advanced Statistical Process Control (SPC)

- Real-Time Data Dashboards: Process data (temperature, cycle time, ambient metrics) feed directly into SPC software visualizations, providing plant teams with instant feedback.

- Automated Alerts: System flags process drift, enabling pre-emptive corrective action before out-of-spec product is shipped. X-bar & R-charts quantify variance, highlighting root cause trends.

Non-Destructive Evaluation (NDE) Integration

Continuous, real-time NDE—ranging from phased-array ultrasonics for bulk defect detection to advanced electromagnetic and magnetic resonance scanning—acts as the final checkpoint. Linking these results to lot-specific records bolsters organizational learning and is indispensable for customer and third-party audits (ISO, Nadcap, etc.).

QA Best Practice:

Digitally link all heat treatment, composition, and NDE data to specific batch and melt IDs, creating an auditable thread throughout the entire supply chain loop—from yard input to final mill certification.

Yard-to-Melt Implications: The Supply Chain Loop

The effectiveness of heat treatment for recycled alloys is ultimately tethered to upstream controls—long before any furnace is ignited. Variability reduction and process predictability start at the scrapyard and proceed through every subsequent supply chain node.

1. Yard Sorting and Segregation

- Alloy Identification Technology: Handheld XRF and LIBS (Laser-Induced Breakdown Spectroscopy) guns enable rapid, in-the-field alloy identification—critical in multi-material scrapyards.

- Digital Traceability: Every receipted batch logs source, prior application class, and known contaminants. Advanced yards now leverage RFID tagging for real-time inventory tracking, further minimizing cross-contamination risk.

2. Pre-Melt Conditioning

- Decontamination: Automated cleaning lines now remove not only oils and paints but also plated layers and embedded non-metallics, reducing melt inclusions.

- Controlled Size Reduction: European foundries have demonstrated up to 22% faster melt uniformity by integrating predictive modeling for optimal shredding and cropping, resulting in improved downstream heat treatment response.

3. Melt Operations

- Charge Mix Optimization Algorithms: Software tools balance charge design in real-time, adjusting for on-the-fly OES analyses to ensure compositional targets are met with scrap-dominant feeds.

- Iterative Composition Sampling: Instead of traditional periodic checks, some EAF operators now employ continuous in-melt sampling, providing a live feedback loop for melt correction before heat treatment initiation.

Case Study 1: EAF Forgings — AI-Adapted Tempering for Cu/Sn-Noisy Heats

Background

A Tier-1 drivetrain supplier ran medium-carbon steels (≈0.42–0.45% C) with 85–95% scrap charge. Tramp Cu/Sn drifted more than expected from automotive shred. The legacy "one temper setpoint" recipe delivered inconsistent toughness and occasional impact outliers.

Baseline pain

Warranty returns at 410 ppm on a critical yoke component.

Impact energy scatter that QC couldn't predict; re-tempers became routine.

Gas and oil use trending upward due to repeat cycles.

Diagnostics that changed the conversation

Inline OES at tap + ladle samples flagged Cu variance of 0.18–0.36% and Sn to 0.09%.

"Matrix temper" trials (three austenitize soaks × four temper setpoints) showed the optimal temper temperature could shift 30–60 °C between ladles.

Hardness maps revealed edge-to-core deltas tied to quench agitation and part mass, not just chemistry.

Intervention — how they actually fixed it

Sensing and tagging

Each basket got a mini "lot card" with OES composition and CE*. CE* = CE + 0.3·Cu + 0.6·Sn (empirical weights from trials).

Coupon LIBS at the press exit confirmed ladle-to-ladle drift.

Adaptive austenitize + temper policy

Soak time became CE*-indexed (e.g., +3–5 min for high CE* lots, cap grain growth via upper soak guardrail).

Temper setpoint determined by a light-weight ML model trained on 6 weeks of matrix data (features: C, Mn, Cu, Sn, prior hardness, quench oil temp, agitation).

Double-temper used only when model confidence < 0.7 or hardness CV% in cell > 3.5.

Quench severity tuning

Oil agitation trimmed from fixed 100% to 60–85% depending on predicted hardenability.

Oil temperature band tightened to ±2 °C with automatic cooldown interlocks.

Validation loop

Every batch received three Charpy sets and a 9-point hardness map.

SPC dashboards showed CV% and Cpk per lot, not per month; red flags generated automatic recipe "nudge" proposals.

Outcomes (12 months)

Charpy CV% down ~38%.

Temper rework −29%; gas/ton −7%.

Warranty ppm 410 → 220.

Operator adoption improved after they could see model confidence and the "why" behind each setpoint.

Pitfalls and how they dodged them

Early on, overfitting to a single product geometry. Fixed by including part mass and section-thickness features.

A few "false safe" lots due to mis-calibrated OES; added weekly reference heats to re-zero the analyzer.

Replicate it in your plant (fast track)

Run two weeks of matrix trials per major part family.

Build a simple compositional index (CE + Cu/Sn correction).

Swap fixed recipes for policies: temper = f(CE*, prior HRC, quench oil temp, agitation).

Start with decision trees before ML—if trees beat your static recipe, then graduate to ML.

Case Study 2: Aluminum HPDC — Hydrogen-Aware T6 on 356/AlSi7Mg from Mixed Returns

Background

A die caster used 70–80% in-house returns plus purchased scrap. Hydrogen and oxide films drove porosity; T6 inconsistencies amplified distortion and leak failures.

Baseline pain

Radiography at Grade C on a third of parts; leak test fallout rising.

Operators blamed "bad scrap" without actionable thresholds.

Solutionizing and quench handled on a fixed clock with wide furnace loading variation.

Diagnostics that mattered

Density Index (DI) was swinging between 2.5% and 6.5% with no process response.

Thermal analysis cups showed variable eutectic plate spacing tied to hydrogen.

Measured door-open times during transfer exceeded 20 s for heavy racks—hydrogen pores inflated during the heat soak.

Intervention — the real levers

Gatekeeping the melt

Mandatory degas to DI ≤ 3%; no pour if DI > 3.5% unless re-degassed.

Surface skimming SOP enforced; dross weight logged against each heat.

T6 redesigned as a policy

Solutionizing furnace upgraded with tight dew-point control, ±2 °C band.

Load density normalized: max kg/m² and consistent part spacing to stabilize heat transfer.

Quench transfer target < 10 s door-open; added staging carts to pre-position racks.

Staged quench

First 30 s vigorous (bubble-rich agitation) to arrest precipitation; then moderated to reduce distortion on thick-to-thin parts.

Validation loop

Radiographic sampling increased temporarily to 5/100.

Microstructural checks for Mg2Si precipitation; Brinell checks at three depths to catch gradient hardness.

Leak test fallout trended lot-by-lot and tied to DI at pour.

Outcomes (two quarters)

72% of parts improved from Grade B→A on X-ray.

Distortion complaints −35%; final yield +6.4% with the same nominal chemistry.

Less re-solutionizing and re-quenching freed 8% furnace capacity.

Pitfalls

Early quench cracked a heavy boss on one SKU after agitation increase. Fix: part-specific quench curve library—vigorous first 15–20 s for that geometry, not 30 s.

Replicate it

Measure DI and make it the first "stop/go" variable.

Normalize load density and door-open time.

Introduce a two-stage quench for mixed-section parts; validate with distortion gauges and hardness gradients.

Case Study 3: Rail Plate Mill — Distortion-Predictive Cooling Curves on High-Cu Scrap

Background

Plate for rail infrastructure was sourced from scrap-heavy heats with residual Cu ≈0.25–0.35%. Flatness complaints (edge-wave) and costly post-grind rework plagued the line.

Baseline pain

Customer returns and on-line shape meter alarms spiking.

Normalizing plus accelerated cool used a centerline-biased ramp that unintentionally created edge thermal debt.

Edges showed deeper decarb due to furnace O₂ excursions.

Diagnostics that reframed the issue

EBSD on sentinel coupons quantified banding and prior cold work; not uniform across width.

A pyrometry array across the runout table exposed a temperature bow: edges were 40–60 °C cooler than center during the first 45 s.

Low-O₂ atmosphere drifted during reheats, deepening decarb at edges.

Intervention — what changed on the floor

Cooling inversion

Switched from edge-in to center-out ramp control using independent header zones.

Reduced first-stage cooling at edges to align phase transformation timing across width.

Atmosphere and reheats

Tightened dew-point and O₂ controls; edge decarb dropped measurably within two weeks.

Added a reheater interlock: if ΔT across width > threshold, adjust conveyor speed before the next pass.

Measurement-to-action link

Shape meter output was paired with pyrometry, so operators saw cause and effect in one screen.

"Go-slower" recipes triggered automatically when width ΔYS in test panels exceeded 25 MPa.

Validation loop

Quarter-point tensile sampling across width each shift.

Flatness measured with automated vision; grind depth logged and trended.

Outcomes (9 months)

Flatness claims down 61%.

Grinding rework time −22%.

Yield strength delta across quarter points shrank by ~30 MPa on average.

Pitfalls

Over-correction in the first month produced center crowns on a thin gauge. Fix: guardrails on center-out bias and a soft-start algorithm per thickness.

Replicate it

Install a basic multi-zone pyrometry array if you don't already have one.

Pilot center-out ramps on one product; watch flatness and tensile deltas.

Tie atmosphere controls to reheats; edges usually tell you if O₂ is drifting.

Case Study 4: Aerospace-Grade Bar — Laser Ultrasonics to Gate Austenitization

Background

Bar stock in 300M/4340 derivatives with recycled input share was occasionally over-austenitized, causing grain growth and fatigue scatter. Recipes assumed worst-case kinetics and used long, fixed soaks.

Baseline pain

Random coarse-grain rejects that QC couldn't predict.

Over-long soaks amplified energy use and occasionally still missed the "sweet spot."

Diagnostics that unlocked control

Laser ultrasonics measured changes in elastic modulus in-situ, a strong proxy for austenite fraction.

Test runs showed that the modulus plateaued 3–5 minutes before the legacy soak time on many lots, and 2–4 minutes after on a minority.

Intervention — turning phase state into a control knob

Phase-state interlocks

The soak timer "armed" only after modulus change slope < threshold for 90 seconds (plateau detection).

If plateau not reached by +8 minutes past nominal, recipe branched to a safe but energy-heavier path with a grain growth warning.

Quench readiness

Quench transfer queued so the tank was at the right agitation/temperature the instant plateau was detected; door-open alarms enforced < 8 s.

Tempering rationalized

High-confidence lots used single temper; low-confidence (e.g., plateau noisy) defaulted to double temper with a 20 °C spread.

Validation loop

Prior-austenite grain size checked weekly; HCF/LCF coupons pulled per 50 tons.

SPC displayed grain size class distribution and associated endurance life.

Outcomes (3 quarters)

Mean grain size refined one class; HCF life +18–22% median.

"Coarse grain" rejects −70%.

Soak time trimmed by 3–5 minutes on most lots; energy/ton improved.

Pitfalls

Surface roughness on two product sizes distorted ultrasonic readings. Fix: standardize pre-HT surface prep in the bar line.

Replicate it

If laser ultrasonics is out of reach, pilot a thermal analysis proxy or magnetics-based transformation sensor.

Gate the soak end to a phase signal, not a clock.

Sync quench readiness to the same signal—timing beats temperature when the window is tight.

Forward-Looking Trends You Should Plan For

Closed-Loop Windows (Digital Twins, Edge AI): Furnaces driven by phase-state proxies (laser ultrasonics, magnetics, thermal analysis) will self-adjust soak, ramp, and quench in real time. Expect fewer "recipes," more policies.

Inline LIBS + Vision at the Yard Gate: Segregation quality becomes a process variable, not a hope. Yard-to-melt traceability (RFID/QR) will feed predictive models inside the heat-treat line.

Low-Temperature Strength Routes: Maraging-style chemistries, cryo-assists, and bainitic pathways broaden options for high-recycle steels, reducing distortion energy and gas intensity.

Atmosphere as a First-Class Knob: Dew-point, nitriding potential, and oxygen potential will be specified per lot; expect more vacuum/partial-pressure solutions for tough mixes.

Hydrogen and Electrification: Hydrogen-fired or hybrid furnaces add new kinetics; quench and scale behavior will shift. Plants will need new correlations and safety interlocks.

Traceable "Green Premiums": Customers will pay for verified scrap share + stable mechanicals. Your heat-treat data becomes part of the CO₂e claim and the sales conversation.

Autonomous QA Cells: Robotic hardness mapping + automated microstructure imaging + AI defect triage collapse lab cycle time and feed SPC in near-real-time.

Standards Evolving to Variability: Expect lot-adaptive acceptance bands and process capability requirements (e.g., Cpk by critical property) embedded in IATF/Nadcap language.

Implementation: A 90-Day Play to De-Risk Recycled Windows

Days 1–15: Baseline & Sensing

Instrument furnaces (temp uniformity survey, dew-point/oxygen logging).

Start "lot cards" linking melt, composition, cycles, and tests.

Add at least one inline composition check (OES/LIBS) at the hottest bottleneck.

Days 16–45: Characterize & Correlate

Run matrix trials on two high-volume families (±15 °C/±10 min, quench severity tiers).

Map composition → property response (simple regression/trees before fancy ML).

Stand up a visual SPC dashboard per lot.

Days 46–75: Control the Window

Convert fixed recipes to parametric policies (if Cu>0.25% then temper+25 °C; if DI>4% then reject or alter T6).

Introduce staged quench and controlled temper ramps where distortion or scatter was worst.

Days 76–90: Close the Loop

Pilot one live feedback signal (laser ultrasonics, thermal analysis, or pyrometry arrays) to gate soak or quench transfer.

Codify supplier/yard requirements: minimum segregation tech, cleanliness indices, and traceability fields on inbound lots.

KPIs to Watch

Rework cycles/ton, property Cpk by lot, decarb depth distribution, quench-to-temper elapsed time, energy/ton, ppm customer escapes.

The Takeaway

Recycled inputs don't force you into wider tolerances—they demand smarter windows. Plants that read the metal in front of them (composition, phase state, thermal history) and close the loop on the floor will ship tighter properties with lower energy and fewer surprises.

From Recipes to Policies—How to Operationalize Lot-Adaptive Heat Treatment

Welcome to the hands-on chapter. Parts 1–2 explained why recycled inputs demand adaptive windows and showed what works in plants. Part 3 is your build guide: how to convert static "recipes" into parametric policies, wire them to real sensors, and stand up starter models you can train on 90 days of data—without boiling the ocean.

1) Mindset Shift: Recipes → Policies

Recipe = fixed temperatures, soaks, quenches that assume stable inputs.

Policy = rules that compute those setpoints from what this lot actually is (chemistry, microstructure, mass, cleanliness, hydrogen, etc.).

Think of a policy as a function:

Policy := f(chemistry, prior_microstructure, geometry, load_mass, furnace_state, atmosphere, cleanliness, hydrogen, target_properties) → {austenitize, soak, quench, temper, inspection_plan}

Your first goal is not to predict tensile strength from scratch. It's to map lot descriptors to safe, conservative setpoint adjustments that shrink scatter and rework.

2) Policy Grammar (The Minimum Viable Control Language)

Start simple. You need four kinds of clauses:

Threshold clauses

"If Cu ≥ 0.25% then TemperSetpoint += 25 °C."

"If DI_Al > 3% then reject melt or extend degassing 5 min."

Lookup clauses

"Use QuenchAgitation = Lookup(HardenabilityIndex)."

Rate/gradient clauses

"Limit TemperRamp ≤ 1.0 °C/min for EBSD_BandingIndex ≥ 0.6."

Interlock clauses

"Proceed to quench only if LaserUltrasonics_AusteniteFraction ≥ 0.95."

Express them as machine-readable rules so operators see one page of logic and MES can execute it.

Example policy snippet (YAML-style):

policy_id: steel-45medcu-v1

applicability: "0.38%≤C≤0.48%, bars 20–80 mm, recycled share ≥70%"

inputs:

- Cu_pct

- Sn_pct

- CEQ

- EBSD_banding_idx

- LoadMass_kg

- AusteniteFraction_live

- Furnace_DewPoint

- QuenchOil_T

targets:

- HRC_32_36

- YS_MPa_850_±50

rules:

- if: Cu_pct >= 0.25

do:

TemperSetpoint_C: "+= 25"

QuenchAgitation_pct: "+= 10"

- if: EBSD_banding_idx >= 0.6

do:

Normalize: "870C x 30min"

TemperRamp_C_per_min: "min(current, 1.0)"

- interlock:

austenitize_go: "AusteniteFraction_live >= 0.95"

- atmosphere:

DewPoint_C: "between(-20, -40)"

monitors:

- SPC: ["HRC", "DimensionalRunout_mm", "Flatness_grade"]

- alarms:

- name: QuenchDelay

trigger: "TransferTime_s > 20"

action: "hold temper; scrap if microcheck fails"

3) Data You Actually Need (90-Day Starter Schema)

Keep it lean. Capture these per LotID and per CycleID:

Chemistry: C, Mn, Si, Cr, Mo, Ni, Cu, Sn, Sb, P, S, Al (sol), N; for Al: Si, Mg, Fe, Mn, Cu, Zn, Ti; plus DI or hydrogen proxy.

Microstructure markers: EBSD_banding_index (0–1), grain size class, inclusion rating, prior cold work flag.

Geometry & load: section size(s), load mass, fixture type, stacking pattern ID.

Furnace/atmosphere: T uniformity, dew point/oxygen potential log, soak time, transfer time.

Quench: medium, temperature, agitation profile, staged/yes-no.

Outputs: hardness map (min/avg/max), tensile/YS/El if available, NDE flags, distortion (mm) or flatness grade, decarb depth (mm).

Events: alarms, overrides, rework, scrap reason.

If you can't get EBSD in production, start with inclusion rating and macro-banding visual as proxies; mark as categorical features.

4) Starter Models You Can Train Fast

You don't need a neural net. Use transparent, small-data-friendly learners:

Decision Trees / RuleFit: Great for extracting human-readable clauses (e.g., Cu and Sn thresholds that truly shift temper setpoint).

Random Forest / Gradient Boosted Trees: For slightly better accuracy on property prediction or distortion risk classification.

Gaussian Process Regression (optional): For response surfaces on a single family (e.g., TemperSetpoint vs. Cu/Sn with uncertainty bands).

What each model predicts (keep scope tight)

Model A: Risk Classifier

Inputs: chemistry + load + furnace states → Output: "Risk of out-of-spec hardness" (Low/Med/High).

Use it to gate conservative policies.

Model B: Temper Δ Recommender

Inputs: chemistry (Cu, Sn, CEQ), section size, austenitize soak → Output: ΔTemperSetpoint (°C).

Clamp Δ within safe bounds (e.g., ±40 °C).

Model C: Distortion Probability

Inputs: section size, banding/inclusions, quench severity curve → Output: P(distortion > spec).

Use to trigger staged quench and fixtures.

Train with 60% lots for training, 20% validation, 20% blind test. Refit weekly; keep last-90-day model as "current," last-30-day as "hot."

5) Response Surfaces Before AI (Your First Wins)

Even without ML, you can build response surfaces from matrix trials:

Steel temper sweep: Temper at [180, 200, 220, 240, 260] °C × Cu bins [<0.15, 0.15–0.25, >0.25].

Aluminum T6 sweep: Solution time [6, 8, 10 h] × quench delay [6, 10, 15 s] × DI bins [≤3, 3–5, >5%].

Fit a simple quadratic or piecewise linear model. Lock policies to the surfaces, then let ML refine later.

6) Control Strategy: Where to Put the Knobs

Austenitize: Soak time gated by signal (laser ultrasonics modulus plateau or magnetic/thermo proxy).

Quench: Stage 1 aggression tied to hardenability index; Stage 2 moderated for distortion control.

Temper: Setpoint from policy; ramp rate as distortion relief; second temper if high Cu/Sn or secondary hardening risk.

Atmosphere: Dew-point windows codified per family; alarms go to hold not ship.

A simple supervisory controller can run these as policies with interlocks rather than PID retuning marathons.

7) Safety & Audit: Guardrails You Must Hard-Code

Clamp all model outputs to engineering limits.

Mandatory interlocks on phase-state signal before quench.

Human-in-the-loop override with reason code; override escalates to metallurgist review.

Lot card immutability: Chemistry + setpoints + NDE stored against LotID; PDFs for customer audits generated automatically.

Change control: Version every policy; "steel-45medcu-v1 → v1.1" requires sign-off and 2-lot validation.

8) Aluminum Track (Quick Adapters for 356/AlSi7Mg)

Gate by DI/hydrogen: If DI > 3%, keep in melt; never enter solutionizing.

Solutionizing policy: Narrow band ±2 °C; load mass normalization recipe for even heating.

Quench policy: Door-open <10 s interlock; stage intensity to geometry (thin-first shock, then moderate).

Ageing policy: Time/temperature from response surface; tighten ramp to reduce porosity coarsening.

Radiography feedback: Use pass rate to recalibrate DI thresholds monthly.

9) 12-Week Implementation Runbook (Operator-First)

Weeks 1–2: Instrument & Map

Turn on dew-point and oxygen logging; verify uniformity survey.

Create LotID "cards" and enforce one-scan entry at melt and at furnace load.

Weeks 3–4: Two Matrix Trials

Pick two product families. Run small sweeps; record hardness maps + distortion.

Build first response surfaces and publish v0 policies (threshold + lookup clauses).

Weeks 5–6: Interlocks & Dashboards

Add a single live interlock (phase-state or transfer time).

Stand up a per-lot SPC view; show Cpk and red/yellow/green risk tag.

Weeks 7–8: Train Starters

Train Model A (risk) and Model B (temper Δ).

Shadow-mode them for one week (recommendations shown, not executed).

Weeks 9–10: Close the Loop (Soft)

Enable policy auto-adjustments with operator confirmation.

Clamp Δ and log every acceptance/override.

Weeks 11–12: Review & Tighten

Compare rework, energy/ton, property scatter vs. baseline.

Promote successful rules to v1 policies; retire deadweight clauses.

Exit Criteria:

Rework/ton −20% or better, hardness Cpk ≥ 1.33 on target families, distortion incidents −25%, zero safety interlock violations.

10) KPIs That Prove It's Working

Capability: Cpk by lot for the critical property (not monthly averages).

Stability: Transfer time distribution and dew-point compliance rate.

Yield: Rework cycles/ton; percent lots passing first-time.

Energy: kWh or gas per ton, normalized by load mass.

Quality escapes: PPM at customer, with closed-loop corrective actions tied to policy IDs.

Learning velocity: Number of policy updates/quarter and their measured impact.

11) Change Management That Actually Sticks

Write policies in plain, visible logic alongside the metallurgy.

Train to why each clause exists (Cu→temper Δ, DI→T6 gate).

Celebrate "caught by interlock" saves in the daily standup.

Pair one metallurgist with one production lead to review the dashboard for 15 minutes at shift start.

12) What to Automate Next (After 90 Days)

Yard integration: Inline LIBS/XRF at receipt feeds the same LotID; block suspect lots early.

Autonomous QA cells: Robotic hardness mapping + AI micrographs to close lab latency.

Policy marketplace: Standardize policies across sister plants; swap what works by alloy family.

CO₂e + quality twin: Attach scrap share and energy/ton to lot properties for green premiums.

Quick Reference: First Three Policies to Author

Cu/Sn Temper Compensation—Steel Medium C

Triggers on Cu ≥ 0.25% or Sn ≥ 0.06%. Adds +15–35 °C temper, staged quench, slow temper ramp. Interlock on austenite fraction.

Hydrogen Gate—356/AlSi7Mg T6

Blocks solutionizing if DI > 3%; enforces quench delay <10 s; staged quench; age setpoints from response surface.

Distortion Relief—Flat Products

Banding index ≥ 0.6 triggers normalize-then-harden route; quench center-out cooling; flatness inspection at hot stage; temper ramp ≤1 °C/min.

Final Word

Policies make the plant listen to each lot. With 90 days of disciplined data and a handful of interpretable models, you'll move from "recipes that hope" to policies that prove—fewer surprises, tighter properties, and a cleaner energy and CO₂e story.

The Policy Library—Ready-to-Run, Lot-Adaptive Heat-Treat Controls

This is the copy-paste chapter. Below are production-ready, parametric policies you can drop into your MES/SCADA or SOPs. Each policy includes: scope, inputs, rules, interlocks, what operators see, and the exact alarm texts. No theory—just levers.

Policy 1 — Medium-Carbon Steel Bars (Recycled, Cu/Sn Variable)

Goal: Stabilize hardness and tensile scatter by compensating temper and quench to lot chemistry and microstructure.

policy_id: steel-bar-medC-cucomp-v1.0

applicability: "0.38–0.48%C steels, bars Ø20–80 mm, recycled share ≥70%"

targets:

hardness_HRC: "32–36"

YS_MPa: "850 ± 50"

required_inputs:

chemistry: {C, Mn, Si, Cr, Mo, Ni, Cu, Sn, P, S}

ceq: "Calculated per plant standard"

microstructure: {banding_index_ebsd|banding_proxy, prior_coldwork_flag}

geometry: {bar_diameter_mm, load_mass_kg}

furnace_state: {uniformity_verified, dew_point_C, O2_potential}

live_signals: {austenite_fraction_modulus, transfer_time_s}

setup:

atmosphere: {dew_point_C: "−20 to −40", O2_potential: "low"}

uniformity: "TUS passed last 30 days; survey record linked to LotID"

rules:

- if: Cu >= 0.25 or Sn >= 0.06

do:

temper_setpoint_C: "+= 25"

quench_agitation_pct: "+= 10"

temper_ramp_C_per_min: "min(current, 1.0)"

- if: Cu >= 0.35 or Sn >= 0.08

do:

temper_setpoint_C: "+= 35"

second_temper: "true (2h @ setpoint − 10C)"

quench_stage_1_s: "+= 20"

- if: banding_index >= 0.60 or prior_coldwork_flag == true

do:

normalize_cycle: "870C x 30 min air cool"

austenitize_soak_min: "+= 5"

temper_ramp_C_per_min: "≤ 1.0"

- quench_policy:

stage_1: {duration_s: "30–60", agitation_pct: "as set above"}

stage_2: {duration_s: "60–180", agitation_pct: "−20 from stage_1"}

interlocks:

- name: AustenitizeReady

condition: "austenite_fraction_modulus >= 0.95"

action_if_false: "hold at soak, recheck 60s; escalate at 10 min"

- name: TransferDiscipline

condition: "transfer_time_s <= 20"

action_if_false: "mark lot Yellow; require extended temper +10C"

- name: Atmosphere

condition: "dew_point_C between -20 and -40"

action_if_false: "pause load; correct atmosphere"

inspection_plan:

hardness_map: "9-point per bar; record min/avg/max"

tensile_sample: "1 per lot or per customer contract"

microcheck: "decarb depth at 2 locations; record mm"

spc_monitors:

- "HRC capability Cpk by lot"

- "transfer_time_s distribution"

- "decarb_depth_mm histogram"

documentation:

store: "All setpoints, signals, results → LotCard"

version: "Change-control required for edits (see policy_meta)"

limits:

clamp:

temper_setpoint_delta_C: "±40"

quench_agitation_pct: "40–100"

Operator prompts (exact):

"Scan LotID now."

"Place thermocouples as per Bar-20–80 SOP. Confirm?"

"Chemistry high-Cu/Sn. Apply Temper +25 °C. Confirm load mass < 1,200 kg."

"Await AustenitizeReady. Do not quench until 'Ready' turns green."

"Transfer to quench within 20 s. Start timer—press ENTER on immersion."

Alarm texts (exact):

ALARM AUSTENITE_READY: Phase threshold not met @ soak. Hold & recheck in 60s.

ALARM TRANSFER_OVERTIME: Transfer >20 s. Tag lot YELLOW; temper +10 °C.

ALARM ATMOS_DEWPOINT: Dew point out of band. Pause load and correct.

Policy 2 — Flat Plate / Sheet (High-Recycle Plate Mill)

Goal: Reduce distortion and flatness claims by controlling spatial thermal gradients and banding-driven anisotropy.

policy_id: plate-flatness-centerout-v1.0

applicability: "Plates 12–40 mm, high-recycle heats, residual Cu 0.20–0.40%"

targets:

flatness_grade: "Meets mill spec across width"

YS_uniformity: "ΔYS across quarter points ≤ 30 MPa"

required_inputs:

chemistry: {Cu, Sn, C, Mn, Si, others}

microstructure: {banding_index_ebsd|macro_banding_score}

geometry: {width_mm, thickness_mm}

thermal_array: {pyrometry_edge, pyrometry_center}

furnace_state: {dew_point_C}

rules:

- if: banding_index >= 0.55

do:

normalize_route: "880C x 45 min air"

- runout_cooling:

scheme: "center-out"

center_bank_pct: "+10 vs edge banks"

edge_bank_pct: "−10 vs baseline for first 90 s"

- reheat:

atmosphere: {low_O2: true}

edge_guard: "apply radiant edge shields for width ≥ 2,000 mm"

interlocks:

- name: ThermalSymmetry

condition: "abs(pyrometry_edge − pyrometry_center) ≤ 20C pre-quench"

action_if_false: "delay quench; adjust banks per script"

- name: DewPointBand

condition: "dew_point_C between -20 and -35"

inspection_plan:

flatness_check: "hot-stage gauge at runout + cold inspection"

hardness_line: "3 strips across width"

spc_monitors:

- "edge-center ΔT trend (°C)"

- "flatness rework minutes per plate"

- "ΔYS across width"

limits:

clamp:

bank_adjust_pct: "±20 from baseline"

Operator prompts (exact):

"Macro-banding score? Say LOW/MED/HIGH."

"Set cooling banks to CENTER-OUT program. Confirm edge shields if width ≥ 2000 mm."

"Do not quench: edge-center ΔT > 20 °C. Adjust banks and re-arm."

Alarm texts (exact):

ALARM ΔT_EXCESS: Edge-center ΔT >20 °C. Hold quench; apply center-out correction.

ALARM ATMOS_DP: Dew point out of band. Correct before proceeding.

Policy 3 — Aluminum 356 / AlSi7Mg (High Returns + Scrap), T6

Goal: Lift radiographic grade and dimensional stability by gating on hydrogen/cleanliness and normalizing thermal mass.

policy_id: al-356-T6-hydrogate-v1.0

applicability: "356/AlSi7Mg HPDC and sand, returns 60–80% + purchased scrap"

targets:

radiography: "Grade A on ≥70% parts"

distortion: "≤ spec on critical dims"

required_inputs:

melt_quality: {density_index_pct, hydrogen_proxy_ml_per_100g}

chemistry: {Si, Mg, Fe, Cu, Mn, Zn, Ti}

load: {basket_mass_kg, casting_mix_class}

furnace_state: {solution_T, dew_point_C}

quench: {medium_T_C, agitation_pct}

rules:

- gate_melt:

if: density_index_pct > 3

do: "reject to melt; extend degas 5 min; re-test"

- solutionize:

setpoint_C: "540 ± 2"

time_h: "8 (sand) / 6 (HPDC)"

load_normalization: "max basket_mass_kg 80; if >80 then split"

- transfer:

door_open_s: "≤ 10"

staged_quench: {stage_1: "vigorous 45 s", stage_2: "moderate 120 s"}

- age:

setpoint_C: "160"

time_h: "6–8 based on response surface"

interlocks:

- name: MeltQuality

condition: "density_index_pct ≤ 3"

action_if_false: "block load; send to degas; supervisor sign-off"

- name: TransferDelay

condition: "door_open_s ≤ 10"

action_if_false: "tag lot YELLOW; re-age +1 h"

- name: QuenchReady

condition: "quench_medium_T_C within spec window"

inspection_plan:

xray: "sample per family; log accept/reject by LotID"

dimension: "critical features; record runout"

spc_monitors:

- "radiography pass rate % by lot"

- "door_open_s distribution"

- "age soak deviations"

limits:

clamp:

quench_agitation_pct: "50–100"

age_time_h: "6–10"

Operator prompts (exact):

"Enter DI%. If >3, press REJECT TO DEGAS."

"Confirm basket mass ≤ 80 kg. If not, split load now."

"Start timer on door-open. Quench within 10 s."

"Set ageing to 160 °C x 7 h unless system recommends otherwise."

Alarm texts (exact):

ALARM MELT_QUALITY: DI >3%. Load blocked. Degas and retest.

ALARM TRANSFER_DELAY: Door-open >10 s. Apply re-age +1 h; log cause.

ALARM QUENCH_TEMP: Quench medium out of spec. Stabilize before immersion.

Policy 4 — Yard-to-Melt Traceability (Cross-Cutting)

Goal: Shrink variability at the gate and make every downstream decision traceable.

policy_id: ytm-traceability-minset-v1.0

scope: "All recycled inputs"

requirements:

id_tech: "Handheld XRF/LIBS at receipt for alloy class; RFID/QR tag per batch"

fields: {source_site, prior_application, cleanliness_grade, coatings_flag}

cleanliness: "Automated wash/decoat where available; record pass/fail"

charge_mix: "Algorithm recommends % per class to hit chemistry targets"

interlocks:

- "No LotID tag → block to quarantine"

- "Unknown or mixed class → send to re-sort"

dashboards:

- "Inbound class mix vs. target"

- "Supplier quality scorecards"

handoff:

- "LotID + fields must persist into melt and heat-treat LotCards"

Operator prompts (exact):

"Scan RFID/QR. If no tag, move to QUARANTINE BAY."

"Confirm cleanliness grade. If FAIL, send to WASH/DECOAT."

"Accept charge mix suggestion? YES/NO (record reason if NO)."

Alarm texts (exact):

ALARM NO_TAG: Batch without RFID/QR. Receipt blocked.

ALARM MIXED_CLASS: Alloy class ambiguous. Send to re-sort.

Commissioning Checklist (Run This Once per Policy)

Link uniformity survey and atmosphere calibration records to the policy.

Dry-run interlocks with dummy lots to ensure hold/continue logic works.

Validate clamps (temper Δ, agitation bounds) against engineering limits.

Shadow mode for 1–2 weeks: recommendations visible, operator decides.

Promote to live after hitting exit criteria: rework/ton −15% and zero safety violations.

Change Control & Versioning (Required)

Every edit bumps the minor version: v1.0 → v1.1.

Document: rationale, affected SKUs, and two-lot validation results.

Keep last-90-day policy as "current"; retain "LTS" (long-term support) branch for audited customers.

Archive LotCards with policy_id and version for every shipment.

Operator Training Notes (What to Emphasize)

The screen shows policies, not "recipes." Policies compute setpoints from the lot you loaded.

Interlocks are saves, not blockers. Celebrate catches in shift huddles.

Always log overrides with a reason; metallurgy reviews these daily.

KPI Pack (What Leaders Should See Weekly)

Cpk by lot on the critical property for each policy family.

Rework cycles/ton and energy/ton vs. baseline.

% lots tagged YELLOW/RED and their top three root causes.

Radiography pass rate (Al) / flatness rework minutes (plate) / transfer-time discipline (steel bars).

The MES Implementation Guide—Screens, Schemas, and PLC Hooks

You've got the policies. Now wire them into the plant—without ripping out your HMI or rewriting every PLC. This chapter gives you screen blueprints, data contracts, interlock wiring, and rollout steps so operators see one clean flow and your backend captures every LotID, setpoint, alarm, and override.

Architecture at a Glance (no buzzwords, just the lanes)

Lane 1 — Operators & HMIs: One "Lot Card" screen per load; minimal clicks; interlocks are visible and actionable.

Lane 2 — MES Orchestrator: Applies policies, computes setpoints, enforces clamps, logs to the LotCard.

Lane 3 — PLC/SCADA: Receives setpoints and interlocks, runs the cycle, returns signals (temps, timers, statuses).

Lane 4 — Data Lake / Historian: Stores every LotCard JSON, cycle log, SPC metrics; feeds dashboards and models.

Lane 5 — Models & Rules: Risk classifier + ΔTemper recommender run in "shadow" then "live," always clamped.

Keep your existing SCADA screens; overlay the Lot Card and Interlock Panel as a new workflow.

Screen Blueprints (operator-first)

1) Lot Intake & Policy Preview

What the operator sees:

Big "Scan LotID" entry.

Chemistry + yard tags auto-populated when available; manual entry allowed with flags.

Policy preview pane: "Policy steel-bar-medC-cucomp v1.0 → Temper +25 °C; Quench Stage 1 +10%."

Two buttons only: ACCEPT (apply policy) or HOLD (send to supervisor).

Validation rules (silently enforced):

Lot must have at least chemistry_timestamp OR "unknown chemistry" flag with reason.

If mandatory inputs missing (e.g., DI for Al), policy cannot compute; show "Needs Melt Quality".

2) Furnace Live: Interlock Panel

Always-on panel with three lights per interlock:

AustenitizeReady (grey→amber→green).

TransferDiscipline (shows live seconds since door-open).

AtmosphereBand (dew-point readout and status).

Operator actions:

If interlock fails, ACKNOWLEDGE (required) and VIEW REMEDY (inline steps).

If override allowed, it's gated by a supervisor PIN and forces a reason code.

3) Quench Assist

A tiny heads-up overlay:

Countdown microtimer for transfer.

Stage 1 and Stage 2 timers start automatically at immersion; agitation setpoints display live.

4) Post-Cycle QA Capture

9-point hardness map input (grid entry with min/avg/max auto-calced).

Distortion entry (mm), decarb depth (mm), or radiography grade.

One-line verdict: PASS, REWORK, or SCRAP with code.

The LotCard JSON (canonical data contract)

Store one JSON per LotID. This is your audit trail and model substrate.

{

"lot_id": "BAR-2025-10-02-0142",

"policy": {

"id": "steel-bar-medC-cucomp",

"version": "v1.0"

},

"applicability": {

"family": "MedC Steel Bars",

"geometry": {"dia_mm": 40, "length_mm": 6200, "load_mass_kg": 980}

},

"inputs": {

"chemistry": {

"C": 0.44, "Mn": 0.74, "Si": 0.23, "Cr": 0.18, "Mo": 0.05, "Ni": 0.03,

"Cu": 0.31, "Sn": 0.07, "P": 0.018, "S": 0.014, "timestamp": "2025-10-02T02:30:12Z",

"source": "OES_tap"

},

"microstructure": {

"banding_index": 0.62, "prior_coldwork_flag": false, "method": "EBSD_sentinel"

},

"furnace_state": {"dew_point_C": -28, "uniformity_survey_id": "TUS-2025-09"},

"signals": {"austenite_fraction_modulus": 0.93},

"environment": {"operator_id": "OP-17", "shift": "A"}

},

"policy_compute": {

"base_setpoints": {

"austenitize_C": 845, "soak_min": 25, "quench_agitation_pct": 70, "temper_C": 220

},

"adjustments": [

{"reason": "Cu>=0.25 or Sn>=0.06", "temper_C_delta": 25, "quench_agitation_pct_delta": 10},

{"reason": "banding_index>=0.60", "normalize": "870C x 30min", "temper_ramp_C_per_min": 1.0}

],

"clamps_applied": {"temper_C_delta": 25, "within_bounds": true},

"final_setpoints": {

"austenitize_C": 845, "soak_min": 30, "quench": {"stage1_s": 50, "agitation_pct": 80, "stage2_s": 120, "agitation_pct": 60},

"temper_C": 245, "temper_ramp_C_per_min": 1.0, "second_temper": false

}

},

"interlocks": [

{"name": "AustenitizeReady", "status": "blocked", "value": 0.93, "threshold": 0.95, "timestamp": "2025-10-02T03:11:02Z"},

{"name": "AustenitizeReady", "status": "passed", "value": 0.96, "timestamp": "2025-10-02T03:12:14Z"},

{"name": "TransferDiscipline", "status": "passed", "value_s": 17}

],

"cycle_log": [

{"event": "austenitize_start", "ts": "2025-10-02T03:00:00Z"},

{"event": "austenitize_hold", "ts": "2025-10-02T03:10:00Z", "modulus_state": 0.95},

{"event": "quench_start", "ts": "2025-10-02T03:12:31Z"},

{"event": "temper_start", "ts": "2025-10-02T03:20:10Z"}

],

"qa_results": {

"hardness_hrc": {"min": 32.1, "avg": 33.4, "max": 34.6},

"tensile": {"YS_MPa": 862, "sampled": true},

"decarb_depth_mm": 0.08,

"verdict": "PASS"

},

"overrides": [],

"spc": {"cpk_hardness": 1.42},

"signoffs": {"operator": "OP-17", "supervisor": "SUP-04"},

"attachments": {"uniformity_report_pdf": "blob://TUS-2025-09.pdf"}

}

Do the same for plate and Al castings; add fields like radiography_grade and door_open_s where relevant.

Message Bus Topics (thin and explicit)

lot/intake → MES receives lot_id and minimal metadata.

policy/compute → MES publishes computed final_setpoints; PLC subscribes.

interlock/status → PLC publishes status changes; MES logs to LotCard.

cycle/event → Start/hold/quench/temper events with timestamps.

qa/results → HMI posts hardness/flatness/x-ray results.

alarm/raised → Any alarm with code, description, severity, and action.

Use MQTT or Kafka—either is fine. Keep payloads as the LotCard sub-docs you already defined.

OPC UA Node Map (example bindings)

ns=2;s=Furnace.Austenitize.Setpoint_C

ns=2;s=Furnace.Soak.Minutes

ns=2;s=Quench.Agitation.Percent

ns=2;s=Quench.Stage1.Seconds

ns=2;s=Quench.Stage2.Seconds

ns=2;s=Temper.Setpoint_C

ns=3;s=Sensors.DewPoint.C

ns=3;s=Sensors.LaserUT.AusteniteFraction

ns=3;s=Timers.Transfer.Seconds

Map your PLC tags to these nodes; the MES writes setpoints and reads signals through the server.

PLC Hooks (Structured Text examples)

Interlock: Austenite Fraction Gate

VAR

AusteniteFraction : REAL; (* from Laser UT *)

GateReady : BOOL := FALSE;

END_VAR

IF AusteniteFraction >= 0.95 THEN

GateReady := TRUE;

ELSE

GateReady := FALSE;

END_IF;

(* Prevent quench unless gate is ready *)

Quench_Enable := GateReady AND Operator_Quench_Request;

Transfer Timer + Alarm

VAR

DoorOpen : BOOL;

TransferTimer : TON;

TransferOK : BOOL := FALSE;

END_VAR

TransferTimer(IN := DoorOpen, PT := T#20S);

IF (NOT DoorOpen) AND (TransferTimer.ET > T#0S) THEN

(* Door just closed; use elapsed as transfer time *)

IF TransferTimer.ET <= T#20S THEN

TransferOK := TRUE;

ELSE

TransferOK := FALSE;

RaiseAlarm('TRANSF_OVERTIME', 'Transfer >20 s. Tag lot YELLOW; temper +10C');

END_IF;

TransferTimer(IN := FALSE);

END_IF;

Dew-Point Hold

VAR

DewPointC : REAL;

AtmosOK : BOOL;

END_VAR

AtmosOK := (DewPointC >= -40.0) AND (DewPointC <= -20.0);

IF NOT AtmosOK THEN

Hold_Load := TRUE;

RaiseAlarm('ATMOS_DP', 'Dew point out of band. Pause load and correct.');

ELSE

Hold_Load := FALSE;

END_IF;

Staged Quench Control

CASE QuenchStage OF

0: IF Quench_Enable THEN

SetAgitation(AgitationPct_Stage1);

StartTimer(T#50S);

QuenchStage := 1;

END_IF;

1: IF TimerDone() THEN

SetAgitation(AgitationPct_Stage2);

StartTimer(T#120S);

QuenchStage := 2;

END_IF;

2: IF TimerDone() THEN

SetAgitation(0);

QuenchStage := 3; (* done *)

END_IF;

END_CASE;

Clamp any MES-provided values in the PLC as a final safety net.

REST Endpoints (for HMIs and Apps)

POST /api/lot/{lot_id}/intake → Creates LotCard skeleton.

POST /api/lot/{lot_id}/policy/compute → Returns final_setpoints + adjustments + clamps_applied.

POST /api/lot/{lot_id}/interlock → Append interlock status event.

POST /api/lot/{lot_id}/cycle → Append cycle event (austenitize_start, quench_start, etc.).

POST /api/lot/{lot_id}/qa → Store hardness/radiography/distortion results.

GET /api/lot/{lot_id} → Full LotCard JSON.

GET /api/kpi/cpk?family=steel-bars&days=30 → Roll-up KPIs.

Auth with service tokens; all writes require role MES_WRITER. Every write appends an audit trail entry.

Policy Execution Flow (end-to-end)

Scan LotID → MES fetches chemistry/micro tags; fills inputs.

Policy compute → MES applies rules, clamps, and produces setpoints and interlocks.

Operator accepts → MES writes to OPC UA nodes; PLC latches setpoints.

Interlocks live → PLC evaluates gates; publishes statuses; MES logs them.

Cycle runs → Events stream back to MES; timers visible on HMI.

QA capture → Hardness/flatness/x-ray entered; MES computes verdict and Cpk.

Close Lot → LotCard locked; PDF generated for customer audit with policy id/version.

Security & Audit (non-negotiables)

Immutability: LotCards are append-only; corrections create a new event.

Version pinning: Every LotCard stores policy.id and policy.version.

Role separation: Operators can accept or hold; only supervisors can override interlocks.

Time sync: All systems on NTP; store UTC.

PII hygiene: No personal data beyond IDs on the LotCard.

Commissioning & Rollout (four sprints)

Sprint 1 — Read-Only Shadow (2 weeks)

Build LotCard service; subscribe to SCADA; ingest data with no control writes.

Turn on dashboards for interlocks and transfer-time discipline.

Sprint 2 — Setpoint Writer (2 weeks)

Allow MES to write setpoints to a test PLC slot; compare with operator's manual entries.

Validate clamps and unit conversions.

Sprint 3 — Single Interlock Live (2 weeks)

Enable AustenitizeReady as hard gate; keep others advisory.

Run for one alloy family.

Sprint 4 — Full Policy on Two Families (2 weeks)

Enable staged quench and temper ramps via MES policies.

Activate QA capture screen and automatic verdicting.

Exit when rework/ton down ≥15% and zero safety violations.

Test Scenarios (run them before go-live)

Low Cu/Sn lot → verify no temper Δ.

High Cu/Sn lot → verify temper +25 °C and agitation +10%, clamped ≤ +40 °C.

Banding high → normalize inserted; temper ramp limited.

Austenite signal stuck at 0.90 → interlock blocks quench; alarm raised; operator can't bypass without PIN.

Door-open 23 s → auto YELLOW tag; temper +10 °C; logged override required to ship.

Dew-point out-of-band → cycle paused at load stage.

Dashboards That Matter (daily standup)

Lots by Green/Yellow/Red status with top three causes.

Transfer-time histogram; target ≤ 20 s 95th percentile.

Cpk by lot on the critical property; click-through to LotCard.

Energy per ton vs. last 30 days, normalized by load mass.

Radiography pass rate (Al) / Flatness rework minutes (plate).

Fallback Modes (so production never stops)

Policy compute failure → Use last-known-good recipe; tag lot YELLOW; require metallurgist review.

Sensor offline → Replace interlock with time-based conservative soak; require second temper (steel) or extended age (Al).

Bus down → PLC runs local recipe; MES buffers events and reconciles when back.

Minimal JSON Schemas (validation)

Policy Compute Request

{

"lot_id": "string",

"family": "steel-bars|plate|al-356",

"inputs": {

"chemistry": {"C": "number", "Cu": "number", "Sn": "number"},

"microstructure": {"banding_index": "number", "prior_coldwork_flag": "boolean"},

"geometry": {"dia_mm": "number", "load_mass_kg": "number"},

"melt_quality": {"density_index_pct": "number"}

}

}

Policy Compute Response

{

"final_setpoints": {...},

"adjustments": [...],

"clamps_applied": {...},

"interlocks_required": ["AustenitizeReady", "TransferDiscipline", "AtmosphereBand"],

"operator_prompts": ["Scan LotID now", "Confirm basket mass ≤ 80 kg", "..."]

}

QA Results

{

"hardness_hrc": {"min": "number", "avg": "number", "max": "number"},

"radiography_grade": "A|B|C|null",

"distortion_mm": "number",

"decarb_depth_mm": "number",

"verdict": "PASS|REWORK|SCRAP"

}

Final Notes for IT/OT Teams

Don't wait for the "perfect" model; the policy engine + clamps deliver most of the gains.

Keep one source of truth: the LotCard JSON. Everything else points to it.

Interlocks should prevent shipping bad product and teach via readable alarms.

Version everything. Celebrate the interlocks that save a load. That's the system working.

The Analytics & Model Playbook

You've got LotCards flowing and policies running. Now we turn data into advantage—clean features, honest validation, safe deployment, and continuous learning. This isn't "AI theater." It's small, clear models that sharpen your windows and reduce scatter.

1) Define the questions before the models

Which lots are likely to miss the critical property?

By how much should we adjust temper/quench/soak for this lot?

What's the probability of distortion or radiography failure?

Keep each question tied to a single action in the policy engine.

2) Features that move needles

Start with interpretable, production-available signals:

Chemistry: C, Mn, Si, Cr, Mo, Ni, Cu, Sn, Sb, P, S (steel). Si, Mg, Fe, Mn, Cu, Zn, Ti, DI/H₂ proxy (Al).

Microstructure: banding index or proxy, inclusion rating, prior cold work flag, grain size class.

Geometry & load: section size, wall-thickness ratio, basket mass, stacking pattern.

Furnace/atmosphere: dew point, oxygen potential, uniformity band, transfer time.

Live phase cues: laser ultrasonics modulus, pyrometry edge/center deltas.

Outcomes for labels: hardness map stats, YS/UTS/El, radiography grade, distortion mm, decarb depth.

Engineer a few derived features:

Hardenability index = f(C, Mn, Cr, Mo, Ni) with Cu/Sn correction.

Thermal risk score = transfer time × section size ÷ quench severity.

Distortion risk proxy = banding index × section size × Stage-1 agitation.

3) Model set: small, transparent, effective

Risk Classifier (Low/Med/High): Gradient-boosted trees or Random Forest; class-weighted.

Temper Δ Recommender (°C): Regularized linear model or small tree ensemble; clamp output ±40 °C.

Distortion Probability: Logistic regression or tree ensemble with calibrated probabilities.

Radiography Pass Probability (Al): Logistic regression on DI%, delay, load normalization, solutionizing adherence.

Keep them shallow; favor SHAP or feature importance to explain adjustments.

4) Validation you can trust

Split by time and product family: first 60% of lots for training, next 20% for validation, last 20% as a blind holdout.

Use group splits so lots from the same melt don't straddle train/test.

Report: ROC-AUC for classifiers, MAE for ΔTemper, and decision impact: rework/ton, Cpk uplift, false-green rate.

Backtest policy + model together (shadow mode): "What would the lot outcome have been with the recommended Δ?"

5) Deployment pattern: safe by design

Shadow → Assisted → Auto: show recommendations for a week, then require operator confirmation, then auto-apply with opt-out.

Clamp everything in the policy engine.

Log every recommendation, acceptance, override, and outcome to the LotCard.

6) Drift and freshness

Monitor input drift (chemistry residuals, DI distributions, transfer-time histograms).

Retrain cadence: weekly incremental; monthly full refresh.

Auto-revert to previous model if KPI guardrails slip (e.g., Cpk drops below target for 3 consecutive days).

7) What "good" looks like in 90 days

Rework/ton −15–25% on targeted families.

Cpk ≥ 1.33 on the critical property for lots governed by policies.

Distortion incidents −20% (steel/plate) or radiography pass rate +10–15% (Al).

Overrides < 10% and trending down, with two clauses promoted based on evidence.

Audit, Customer Certification & Green-Premium Claims

Part 7 is how you turn operational excellence into commercial leverage—clean audits, faster PPAPs/FAIs, and premium pricing for verified recycled content without quality compromise.

1) Make the LotCard your audit artifact

Every shipment should resolve to a single story: melt → policy → interlocks → cycle → QA → verdict.

Immutable LotCard JSON, versioned policies, timestamps in UTC.

Attachments: uniformity surveys, atmosphere calibrations, x-ray plates, hardness maps, micrographs.

Link supplier batch tags (RFID/QR) and charge mix to the same LotID chain.

2) Certification flows that actually pass

Automotive/industrial: PPAP/FAI with three consecutive lots at Cpk ≥ 1.33 on critical properties. Include policy ID/version and any clauses triggered (e.g., Cu/Sn compensation).

Aerospace/Nadcap: Demonstrate interlock effectiveness (e.g., AusteniteReady blocks quench) with event logs; show alarm responses and overrides with reasons and signatures.

ISO 9001 & IATF 16949: Show SPC in lot view (not only monthly), corrective action tied to policy edits, and change control diffs (v1.0 → v1.1 rationale + two-lot validation).

3) Green-premium claim—evidence, not marketing

Define recycled content clearly (post-consumer vs. internal returns).

Show traceable recycled share per lot from yard tags and charge mix logs.

Pair recycled share with capability (Cpk, pass rates) to prove quality parity or improvement.

Add energy/ton and furnace runtime per lot to support CO₂e intensity claims.

Provide a short "Green & Capable" addendum with each cert: recycled %, energy/ton, policy ID, quality results.

4) Customer-side reassurance pack

Ship a concise, repeatable narrative:

"This family uses a lot-adaptive policy. For your parts, the policy adjusted temper +25 °C due to Cu/Sn and enforced ≤10 s quench transfer. Interlocks prevented out-of-state quench. Your lot achieved HRC 33.4 avg (Cpk 1.42) with recycled share 78%."

The subtext: reliable quality from recycled materials—lower risk for them, and a sustainability win they can pass on.

5) Audit drills to rehearse quarterly

"Sensor down" scenario: show conservative fallback and interlock behavior.

"Policy change" scenario: show red-line diff, sign-offs, and two-lot validation.

"Traceability gap" scenario: demonstrate quarantine and re-sort route when tags fail.

"Override" drill: supervisor PIN trail, reason code, and outcome.

6) Commercializing the edge

Offer a Recycled-Grade with Capability Guarantee SKU: minimum recycled share + property capability guarantee, surcharge applied.

Premium justification: verified recycled %, lower embodied energy, no quality compromise, and faster certifications thanks to LotCard transparency.

Scaling to Multi-Plant & Multi-Alloy

Now we take what works and scale it across sites, alloys, and teams—without drowning in exceptions.

1) Governance: a policy is a product

Each policy has an owner (metallurgist), a customer set (product families), a semantic version, KPIs, and a deprecation plan.

Promotion rules: no policy goes plant-wide without two families proving exit criteria (rework −15%, Cpk ≥ 1.33, zero safety violations).

2) The library model

Global "Core" policies (Cu/Sn temper compensation, hydrogen gate, distortion relief).

Plant overlays: atmosphere capabilities, furnace geometry, local quench mediums, fixture libraries.

Alloy overlays: steel medium-C, low-alloy variants, flat products, 356/AlSi7Mg, 6061/6082, etc.

Keep Core stable; change overlays frequently—and log them.

3) Yard-to-melt standardization

Mandate minimum ID tech at yards (XRF/LIBS + tagging) across suppliers.

Supplier scorecards: cleanliness pass rate, class accuracy, and complaint rate.

Shared vocabulary: cleanliness grades, coatings flags, prior application tags, melt suitability ratings.

4) Cross-site data fabric that's not painful

One LotCard schema; sites publish to the same topic names.

Local historians mirror to a central lake nightly; no fragile real-time dependencies across plants.

Federated dashboards: compare families apples-to-apples, not screen-to-screen.

5) Change control at scale

RFC workflow for policy edits: propose → test on pilot cell → two family trials → promote.

Diff reports auto-generated: rules added/removed, clamps changed, interlocks touched.

Sunset policies on a schedule; archive with final KPI snapshot.

6) Training that sticks

Operators: "Why this clause exists" micro-modules (3–5 minutes each).

Supervisors: override etiquette and how to read SPC by lot.

Metallurgists: feature drift, SHAP reviews, and how to retire dead clauses.

Yard partners: tagging discipline, cleanliness economics, return-to-melt feedback.

7) Scaling models without chaos

Central feature store (chemistry, DI, banding, load, signals) with consistent definitions.

Champion–challenger: champion model per family/site; challengers shadow until they beat champion on guardrailed KPIs.

Model portability: keep models small (tree-based, linear) for easy deployment on edge devices or MES nodes.

8) Reliability and cyber hygiene

Interlocks must fail safe (block or apply conservative recipe).

Time sync (NTP) everywhere; certificate-based auth for OPC UA and APIs.

Immutable logs; signed PDFs for customer packets; least-privilege tokens for writers.

Disaster modes rehearsed: bus down, sensor down, MES down—with simple playbooks.

9) Scaling KPIs

Roll up by family and site: Cpk by lot distribution, rework/ton, energy/ton normalized by load, % lots Green/Yellow/Red, complaint PPM, certification lead time.

Publish a quarterly "Capability & Sustainability" brief to customers and sales—turns operations into demand generation.

10) The cultural flywheel

Celebrate interlock saves in daily standups.

Weekly policy review: 30 minutes, top 3 wins, top 3 frictions, one clause to remove, one clause to add.

Make it visible: operator dashboards on the floor, not only in conference rooms.