package iace // GetCNCHazardPatterns returns hazard patterns specific to CNC machining // centres, lathes, milling machines, grinding machines, and drilling machines. // Part 1: tool breakage, collision, KSS exposure, welding. IDs: HP1400-HP1419. // Part 2 (HP1420-HP1434) is in hazard_patterns_cnc_ext.go. func GetCNCHazardPatterns() []HazardPattern { cncTypes := []string{"cnc", "lathe", "milling", "grinding", "drilling", "machining_centre"} return []HazardPattern{ // ── Tool Breakage / Projectile (HP1400-HP1404) ────────────── { ID: "HP1400", NameDE: "Werkzeugbruch bei Hochgeschwindigkeitsbearbeitung", NameEN: "Tool breakage at high speed machining", RequiredComponentTags: []string{"cutting_tool", "high_speed"}, GeneratedHazardCats: []string{"mechanical_hazard"}, SuggestedMeasureIDs: []string{"M409", "M061", "M025"}, SuggestedEvidenceIDs: []string{"E01", "E08"}, Priority: 90, MachineTypes: cncTypes, OperationalStates: []string{"automatic_operation"}, HumanRoles: []string{"operator"}, ScenarioDE: "Werkzeug bricht bei Hochgeschwindigkeitsbearbeitung und Bruchstuecke durchschlagen Schutzscheibe", TriggerDE: "Werkzeugverschleiss, Materiallunker oder Programmierfehler fuehrt zu ploetzlichem Werkzeugbruch", HarmDE: "Durchdringende Verletzung durch Werkzeugfragment, Augenverletzung durch Splitter", AffectedDE: "Bedienpersonal", ZoneDE: "Bearbeitungsraum, Bedienseite", DefaultSeverity: 4, DefaultExposure: 3, }, { ID: "HP1401", NameDE: "Werkstueck loest sich aus Spannung", NameEN: "Workpiece released from clamping", RequiredComponentTags: []string{"workpiece_holder"}, GeneratedHazardCats: []string{"mechanical_hazard"}, SuggestedMeasureIDs: []string{"M411", "M008", "M061"}, SuggestedEvidenceIDs: []string{"E01", "E53"}, Priority: 92, MachineTypes: cncTypes, OperationalStates: []string{"automatic_operation", "manual_operation"}, ScenarioDE: "Werkstueck loest sich waehrend der Bearbeitung aus der Spannvorrichtung und wird herausgeschleudert", TriggerDE: "Unzureichende Spannkraft, falscher Spannmitteleinsatz oder Vibrationen lockern Spannung", HarmDE: "Quetschung, Prellungen oder Knochenbrueche durch herausgeschleudertes Werkstueck", AffectedDE: "Bedienpersonal", ZoneDE: "Bearbeitungsraum, Maschinenumgebung", DefaultSeverity: 4, DefaultExposure: 3, }, { ID: "HP1402", NameDE: "Schleifscheibenbruch", NameEN: "Grinding wheel burst", RequiredComponentTags: []string{"grinding_wheel"}, GeneratedHazardCats: []string{"mechanical_hazard"}, SuggestedMeasureIDs: []string{"M412", "M413", "M061"}, SuggestedEvidenceIDs: []string{"E01", "E52"}, Priority: 94, MachineTypes: []string{"grinding"}, RequiresExpertCalculation: true, ExpertHintDE: "Schleifscheibenfestigkeit nach EN 12413 pruefen. Schutzhaube nach EN 13218 dimensionieren.", ScenarioDE: "Schleifscheibe bricht bei Betrieb und Fragmente durchschlagen die Schutzhaube", TriggerDE: "Ueberschreitung der zulaessigen Drehzahl, Materialfehler oder thermischer Schock", HarmDE: "Schwere Schnitt- und Durchdringungsverletzungen durch Scheibenfragmente", AffectedDE: "Bedienpersonal, Umstehende", ZoneDE: "Bearbeitungsraum, seitlich der Maschine", DefaultSeverity: 5, DefaultExposure: 2, }, { ID: "HP1403", NameDE: "Spaeneflug und Spaenewickel an Drehmaschine", NameEN: "Chip fly and chip entanglement on lathe", RequiredComponentTags: []string{"cutting_tool", "rotating_part"}, GeneratedHazardCats: []string{"mechanical_hazard"}, SuggestedMeasureIDs: []string{"M410", "M061", "M169"}, SuggestedEvidenceIDs: []string{"E01", "E08"}, Priority: 82, MachineTypes: []string{"lathe", "cnc"}, OperationalStates: []string{"automatic_operation", "manual_operation"}, ScenarioDE: "Heisse, scharfkantige Metallspaene werden weggeschleudert oder wickeln sich um rotierende Teile", TriggerDE: "Spanbildung bei Drehbearbeitung ohne Spanbrecher oder geschlossene Einhausung", HarmDE: "Schnitt- und Brandverletzungen an Haenden und Armen, Augenverletzungen", AffectedDE: "Bedienpersonal", ZoneDE: "Bearbeitungsraum, Bedienseite", DefaultSeverity: 3, DefaultExposure: 4, }, { ID: "HP1404", NameDE: "Funkenflug beim Schleifen", NameEN: "Spark generation during grinding", RequiredComponentTags: []string{"grinding_wheel"}, GeneratedHazardCats: []string{"fire_explosion", "mechanical_hazard"}, SuggestedMeasureIDs: []string{"M169", "M383", "M061"}, SuggestedEvidenceIDs: []string{"E01"}, Priority: 75, MachineTypes: []string{"grinding"}, ScenarioDE: "Funkenflug beim Schleifen entzuendet brennbare Materialien in der Umgebung", TriggerDE: "Schleifvorgang an Stahl erzeugt Funken die auf oelgetraenkte Lappen oder KSS-Rueckstaende treffen", HarmDE: "Brandverletzungen, Maschinenbrand", AffectedDE: "Bedienpersonal", ZoneDE: "Maschinenumgebung, Spaenebehaelter", DefaultSeverity: 3, DefaultExposure: 3, }, // ── Collision / Programming (HP1405-HP1409) ───────────────── { ID: "HP1405", NameDE: "Kollision Werkzeug/Werkstueck bei Programmfehler", NameEN: "Tool-workpiece collision due to programming error", RequiredComponentTags: []string{"cutting_tool", "programmable"}, GeneratedHazardCats: []string{"mechanical_hazard"}, SuggestedMeasureIDs: []string{"M041", "M039", "M409"}, SuggestedEvidenceIDs: []string{"E01", "E14"}, Priority: 85, MachineTypes: cncTypes, OperationalStates: []string{"automatic_operation"}, ScenarioDE: "CNC-Programm enthaelt falschen Verfahrweg und Werkzeug kollidiert mit Werkstueck oder Spannmittel", TriggerDE: "Programmierfehler bei G-Code, falscher Werkzeug-Offset oder fehlerhafte Nullpunktverschiebung", HarmDE: "Werkzeugbruch mit Splitterflug, Maschinenschaden, Werkstueck wird herausgeschleudert", AffectedDE: "Bedienpersonal, Einrichter", ZoneDE: "Bearbeitungsraum", DefaultSeverity: 3, DefaultExposure: 3, }, { ID: "HP1406", NameDE: "Automatischer Werkzeugwechsel bei Aufenthalt im Gefahrbereich", NameEN: "Automatic tool change while person in danger zone", RequiredComponentTags: []string{"cutting_tool", "programmable"}, RequiredEnergyTags: []string{"kinetic_translational"}, GeneratedHazardCats: []string{"mechanical_hazard"}, SuggestedMeasureIDs: []string{"M067", "M071", "M255"}, SuggestedEvidenceIDs: []string{"E01", "E08"}, Priority: 88, MachineTypes: cncTypes, OperationalStates: []string{"automatic_operation"}, ScenarioDE: "Werkzeugwechsler bewegt sich waehrend Bediener im Maschinenraum fuer Kontrolle oder Reinigung", TriggerDE: "Fehlende Verriegelung der Schutztuer oder Umgehung des Sicherheitsschalters", HarmDE: "Quetschung an Werkzeugwechsler, Schnittverletzung durch rotierendes Werkzeug", AffectedDE: "Bedienpersonal, Einrichter", ZoneDE: "Werkzeugmagazin, Bearbeitungsraum", DefaultSeverity: 4, DefaultExposure: 2, }, { ID: "HP1407", NameDE: "Referenzfahrt ohne Personenfreiheit", NameEN: "Homing movement without person clearance", RequiredComponentTags: []string{"moving_part", "programmable"}, GeneratedHazardCats: []string{"mechanical_hazard"}, SuggestedMeasureIDs: []string{"M042", "M071"}, SuggestedEvidenceIDs: []string{"E01"}, Priority: 86, MachineTypes: cncTypes, OperationalStates: []string{"homing", "startup"}, HumanRoles: []string{"operator", "maintenance_tech"}, ScenarioDE: "Achsen fahren bei Referenzfahrt unkontrolliert in Endlage waehrend Person im Maschinenraum", TriggerDE: "Referenzfahrt nach Stoerung oder Neustart ohne Pruefung ob Maschinenraum frei", HarmDE: "Quetschung zwischen Schlitten und Maschinenrahmen", AffectedDE: "Bedienpersonal, Einrichter", ZoneDE: "Verfahrbereich der Achsen", DefaultSeverity: 4, DefaultExposure: 2, }, { ID: "HP1408", NameDE: "Falscher Werkzeug-Offset nach Einrichtung", NameEN: "Wrong tool offset after setup", RequiredComponentTags: []string{"cutting_tool", "programmable"}, GeneratedHazardCats: []string{"mechanical_hazard"}, SuggestedMeasureIDs: []string{"M041", "M050"}, SuggestedEvidenceIDs: []string{"E14"}, Priority: 78, MachineTypes: cncTypes, OperationalStates: []string{"teach_mode"}, HumanRoles: []string{"programmer"}, ScenarioDE: "Nach Werkzeugwechsel wird falscher Offset programmiert und Werkzeug faehrt in Spannmittel", TriggerDE: "Manuelle Eingabe des Werkzeug-Offsets mit Vorzeichen- oder Wertfehler", HarmDE: "Werkzeugbruch, Werkstueck-Beschaedigung, Splitterflug", AffectedDE: "Programmierer, Einrichter", ZoneDE: "Bearbeitungsraum", DefaultSeverity: 3, DefaultExposure: 3, }, { ID: "HP1409", NameDE: "Einrichtbetrieb ohne reduzierte Vorschubgeschwindigkeit", NameEN: "Setup mode without reduced feed rate", RequiredComponentTags: []string{"moving_part", "programmable"}, GeneratedHazardCats: []string{"mechanical_hazard"}, SuggestedMeasureIDs: []string{"M012", "M049"}, SuggestedEvidenceIDs: []string{"E01"}, Priority: 84, MachineTypes: cncTypes, OperationalStates: []string{"teach_mode", "manual_operation"}, HumanRoles: []string{"programmer", "maintenance_tech"}, ScenarioDE: "Achsen verfahren im Einrichtbetrieb mit voller Produktionsgeschwindigkeit", TriggerDE: "Fehlende Geschwindigkeitsbegrenzung im Einrichtmodus oder Umgehung", HarmDE: "Quetschung oder Schlagverletzung durch schnell verfahrende Maschinenteile", AffectedDE: "Einrichter, Programmierer", ZoneDE: "Verfahrbereich der Achsen", DefaultSeverity: 4, DefaultExposure: 3, }, // ── KSS Exposure (HP1410-HP1414) ──────────────────────────── { ID: "HP1410", NameDE: "KSS-Aerosol-Inhalation", NameEN: "MWF aerosol inhalation", RequiredComponentTags: []string{"cutting_tool"}, RequiredEnergyTags: []string{"kinetic_rotational"}, GeneratedHazardCats: []string{"chemical_risk"}, SuggestedMeasureIDs: []string{"M405", "M406", "M418"}, SuggestedEvidenceIDs: []string{"E01", "E29", "E51"}, Priority: 80, MachineTypes: cncTypes, OperationalStates: []string{"automatic_operation", "manual_operation"}, HumanRoles: []string{"operator"}, ScenarioDE: "Bediener atmet KSS-Aerosole und -Daempfe ein die bei Hochgeschwindigkeitsbearbeitung entstehen", TriggerDE: "Unzureichende Absaugung oder geoeffnete Maschinentuer waehrend Bearbeitung", HarmDE: "Atemwegsreizung, Alveolitis, Lungenfunktionsstoerung bei Langzeitexposition", AffectedDE: "Bedienpersonal", ZoneDE: "Bedienbereich vor der Maschine", DefaultSeverity: 3, DefaultExposure: 4, }, { ID: "HP1411", NameDE: "KSS-Hautkontakt und Hauterkrankung", NameEN: "MWF skin contact and dermatitis", RequiredComponentTags: []string{"cutting_tool"}, GeneratedHazardCats: []string{"chemical_risk"}, SuggestedMeasureIDs: []string{"M408", "M376", "M171"}, SuggestedEvidenceIDs: []string{"E01", "E55"}, Priority: 78, MachineTypes: cncTypes, HumanRoles: []string{"operator", "maintenance_tech"}, ScenarioDE: "Bediener hat direkten Hautkontakt mit KSS beim Werkstueckhandling oder bei Maschinenreinigung", TriggerDE: "Wiederholter Hautkontakt mit KSS ohne Schutzhandschuhe oder Hautschutzmittel", HarmDE: "Kontaktekzem, allergische Hautreaktion, Oelakne", AffectedDE: "Bedienpersonal, Wartungspersonal", ZoneDE: "Bedienbereich, Maschineninneres", DefaultSeverity: 2, DefaultExposure: 5, }, { ID: "HP1412", NameDE: "Biologische Gefaehrdung durch kontaminierten KSS", NameEN: "Biological hazard from contaminated MWF", RequiredComponentTags: []string{"cutting_tool"}, GeneratedHazardCats: []string{"chemical_risk"}, SuggestedMeasureIDs: []string{"M406", "M407", "M420"}, SuggestedEvidenceIDs: []string{"E01", "E51"}, Priority: 76, MachineTypes: cncTypes, OperationalStates: []string{"maintenance"}, HumanRoles: []string{"maintenance_tech"}, ScenarioDE: "Wartungspersonal kommt bei KSS-Wechsel mit mikrobiell belastetem KSS in Kontakt", TriggerDE: "Keimwachstum in KSS-System durch fehlende Konzentrationskontrolle oder zu lange Standzeit", HarmDE: "Atemwegsinfektionen, Hautinfektionen, allergische Reaktionen", AffectedDE: "Wartungspersonal", ZoneDE: "KSS-Tank, Maschineninneres", DefaultSeverity: 3, DefaultExposure: 3, }, { ID: "HP1413", NameDE: "KSS-Brandgefahr durch Oelnebel", NameEN: "MWF fire hazard from oil mist", RequiredComponentTags: []string{"cutting_tool"}, RequiredEnergyTags: []string{"kinetic_rotational"}, GeneratedHazardCats: []string{"fire_explosion"}, SuggestedMeasureIDs: []string{"M405", "M383", "M385"}, SuggestedEvidenceIDs: []string{"E01"}, Priority: 82, MachineTypes: cncTypes, ScenarioDE: "KSS-Oelnebel im Maschinenraum entzuendet sich durch Funken oder heisse Spaene", TriggerDE: "Unzureichende KSS-Absaugung bei Minimalmengenschmierung oder MMS-Trockenlauf", HarmDE: "Maschinenbrand, Verbrennungen, Rauchgasvergiftung", AffectedDE: "Bedienpersonal", ZoneDE: "Maschinenraum, Oelnebelabscheider", DefaultSeverity: 4, DefaultExposure: 2, }, { ID: "HP1414", NameDE: "Rutschgefahr durch KSS-Leckage am Boden", NameEN: "Slip hazard from MWF leakage on floor", RequiredComponentTags: []string{"cutting_tool"}, GeneratedHazardCats: []string{"mechanical_hazard"}, SuggestedMeasureIDs: []string{"M420", "M101"}, SuggestedEvidenceIDs: []string{"E01"}, Priority: 65, MachineTypes: cncTypes, ScenarioDE: "KSS-Leckage erzeugt rutschigen Bodenbelag um die Werkzeugmaschine", TriggerDE: "Undichte KSS-Leitungen, ueberlaufender KSS-Tank oder Spritzerauswurf", HarmDE: "Sturzunfaelle mit Prellungen, Knochenbruechen", AffectedDE: "Bedienpersonal, Passanten", ZoneDE: "Maschinenumgebung, Verkehrswege", DefaultSeverity: 2, DefaultExposure: 4, }, // ── Welding-specific (HP1415-HP1419) ──────────────────────── { ID: "HP1415", NameDE: "Schweissrauch-Inhalation", NameEN: "Welding fume inhalation", RequiredComponentTags: []string{"welding_equipment"}, GeneratedHazardCats: []string{"chemical_risk"}, SuggestedMeasureIDs: []string{"M414", "M415", "M418"}, SuggestedEvidenceIDs: []string{"E01", "E29"}, Priority: 85, MachineTypes: []string{"welding", "cnc"}, HumanRoles: []string{"operator"}, ScenarioDE: "Schweisser atmet Schweissrauch mit Metalloxiden und ggf. krebserzeugenden Stoffen ein", TriggerDE: "Fehlende oder unzureichende Schweissrauch-Absaugung, Schweissen in beengten Raeumen", HarmDE: "Metallrauchfieber, Atemwegserkrankung, Lungenkarzinom bei Chrom-VI/Nickel", AffectedDE: "Schweisser", ZoneDE: "Schweissplatz, angrenzende Arbeitsplaetze", DefaultSeverity: 4, DefaultExposure: 4, }, { ID: "HP1416", NameDE: "UV-Strahlung beim Lichtbogenschweissen", NameEN: "UV radiation from arc welding", RequiredComponentTags: []string{"welding_equipment"}, GeneratedHazardCats: []string{"radiation_hazard"}, SuggestedMeasureIDs: []string{"M392", "M169"}, SuggestedEvidenceIDs: []string{"E01"}, Priority: 80, MachineTypes: []string{"welding"}, HumanRoles: []string{"operator", "bystander"}, ScenarioDE: "UV-Strahlung des Lichtbogens trifft ungeschuetzte Haut oder Augen", TriggerDE: "Fehlender Schweisserschutzschild, keine Abschirmung des Schweissplatzes", HarmDE: "Verblitzen der Augen, Sonnenbrand-aehnliche Hautschaeden", AffectedDE: "Schweisser, Umstehende", ZoneDE: "Schweissplatz, angrenzende Bereiche", DefaultSeverity: 3, DefaultExposure: 4, }, { ID: "HP1417", NameDE: "Spritzer und Schlacke beim Schweissen", NameEN: "Spatter and slag during welding", RequiredComponentTags: []string{"welding_equipment"}, GeneratedHazardCats: []string{"thermal_hazard", "mechanical_hazard"}, SuggestedMeasureIDs: []string{"M169", "M174", "M095"}, SuggestedEvidenceIDs: []string{"E01"}, Priority: 72, MachineTypes: []string{"welding"}, HumanRoles: []string{"operator"}, ScenarioDE: "Schweissspritzer und heisse Schlacke treffen Haut oder entzuenden brennbare Materialien", TriggerDE: "Schweissvorgang ohne Schutzschuerze, brennbare Materialien in Spritzweite", HarmDE: "Brandwunden, Augenverletzung, Brand in der Umgebung", AffectedDE: "Schweisser", ZoneDE: "Schweissplatz, Boden im Spritzbereich", DefaultSeverity: 3, DefaultExposure: 4, }, { ID: "HP1418", NameDE: "Elektrischer Schlag durch Schweissgeraet", NameEN: "Electric shock from welding equipment", RequiredComponentTags: []string{"welding_equipment"}, RequiredEnergyTags: []string{"electrical"}, GeneratedHazardCats: []string{"electrical_hazard"}, SuggestedMeasureIDs: []string{"M087", "M090", "MN025"}, SuggestedEvidenceIDs: []string{"E01", "E10"}, Priority: 82, MachineTypes: []string{"welding"}, ScenarioDE: "Schweisser beruehrt spannungsfuehrende Teile des Schweissstromkreises", TriggerDE: "Defekte Isolation am Schweissbrenner, feuchte Umgebung, beschaedigtes Kabel", HarmDE: "Stromschlag mit Herzkammerflimmern, Verbrennungen", AffectedDE: "Schweisser", ZoneDE: "Schweissbrenner, Masseklemme, Werkstueck", DefaultSeverity: 5, DefaultExposure: 3, }, { ID: "HP1419", NameDE: "Explosionsgefahr beim Schweissen an Hohlkoerpern", NameEN: "Explosion when welding on hollow bodies", RequiredComponentTags: []string{"welding_equipment"}, GeneratedHazardCats: []string{"fire_explosion"}, SuggestedMeasureIDs: []string{"M290", "M383"}, SuggestedEvidenceIDs: []string{"E01", "E35"}, Priority: 90, MachineTypes: []string{"welding"}, RequiresExpertCalculation: true, ExpertHintDE: "Vor Schweissarbeiten an Behaeltern: Freimessen auf brennbare Gase/Daempfe.", ScenarioDE: "Schweissflamme oder Lichtbogen entzuendet Restgas oder -daempfe in Hohlkoerper", TriggerDE: "Schweissen an nicht freigemessenem Behaelter, Fass oder Rohrleitung", HarmDE: "Explosion mit schweren Verletzungen, toedliche Druckwelle", AffectedDE: "Schweisser, Umstehende", ZoneDE: "Schweissplatz, Behaelterinneres", DefaultSeverity: 5, DefaultExposure: 2, }, } }