From c075ecb72137eab9f9bc9b6b3aa2a3cf5d5d67bb Mon Sep 17 00:00:00 2001 From: Benjamin Admin Date: Sun, 10 May 2026 07:07:34 +0200 Subject: [PATCH] =?UTF-8?q?feat(iace):=20Phase=202=20=E2=80=94=20RAG-valid?= =?UTF-8?q?ierte=20Massnahmen-Erweiterung=20241=E2=86=92428,=20Evidenztype?= =?UTF-8?q?n=2025=E2=86=9250?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 62 Kap.-Verweise durch Themen-Deskriptoren ersetzt (0 verbleibend) - measures_library_trbs.go: +85 Massnahmen (M217-M301) aus TRBS 1111/1201/2111/2121/2131/2141/2152 - measures_library_osha.go: +70 Massnahmen (M302-M371) aus OSHA Machine Guarding/LOTO/Electrical/Robots/Noise/Ergonomics/Pressure Vessels - measures_library_trgs.go: +11 Massnahmen (M372-M382) aus TRGS 600/500/401/402/509/727/555 - measures_library_supplementary.go: +21 Massnahmen (M383-M403) aus RAG-Gap-Analyse gegen 6.141 extrahierte Obligations - Brandschutz (8): TRGS 509/510/511/741/751 — Brandkonzept, Loeschanlagen, Brandmeldung, Fluchtweg - Strahlung/Laser (5): OSHA TM Ch.6 — Laserklasse, Laserschutz, LSB, Absaugung - TRBS 1115 Cybersecurity MSR (3): Cyber-GBU fuer Safety-SPS, Pruefung, Aenderungsmanagement - TRBS 1112 Instandhaltung (3): GBU Instandhaltung, kontrollierte Handsteuerung, Fremdfirmenkoordination - ASR (2): Sicherheitsbeleuchtung, Quetschschutz kraftbetaetigte Tueren - tag_resolver.go: +25 Evidenztypen (E26-E50) — Materialzertifikat, EMV, Druckpruefung, Laser, ATEX, SIL/PL-Validierung, SBOM Methodik: Systematische Obligation Extraction aus 152 Dokumenten (TRBS/TRGS/ASR/OSHA) in Qdrant bp_compliance_ce (83.222 Chunks), Gap-Analyse gegen bestehende Bibliothek, eigene Formulierungen (keine Normtext-Reproduktion). Co-Authored-By: Claude Opus 4.6 (1M context) --- .../internal/iace/measures_library.go | 4 + .../internal/iace/measures_library_ext.go | 74 +++++------ .../iace/measures_library_mandatory.go | 50 +++---- .../internal/iace/measures_library_osha.go | 107 +++++++++++++++ .../iace/measures_library_supplementary.go | 70 ++++++++++ .../internal/iace/measures_library_trbs.go | 122 ++++++++++++++++++ .../internal/iace/measures_library_trgs.go | 45 +++++++ .../internal/iace/tag_resolver.go | 26 ++++ 8 files changed, 436 insertions(+), 62 deletions(-) create mode 100644 ai-compliance-sdk/internal/iace/measures_library_osha.go create mode 100644 ai-compliance-sdk/internal/iace/measures_library_supplementary.go create mode 100644 ai-compliance-sdk/internal/iace/measures_library_trbs.go create mode 100644 ai-compliance-sdk/internal/iace/measures_library_trgs.go diff --git a/ai-compliance-sdk/internal/iace/measures_library.go b/ai-compliance-sdk/internal/iace/measures_library.go index 44e3b8e..d2f6b41 100644 --- a/ai-compliance-sdk/internal/iace/measures_library.go +++ b/ai-compliance-sdk/internal/iace/measures_library.go @@ -12,6 +12,10 @@ func GetProtectiveMeasureLibrary() []ProtectiveMeasureEntry { all = append(all, getProtectiveMeasures()...) all = append(all, getInformationMeasures()...) all = append(all, GetMandatoryNormMeasures()...) // Norm-Pflichtmassnahmen + all = append(all, getTRBSMeasures()...) // TRBS-Pflichtmassnahmen (Phase 2) + all = append(all, getOSHAMeasures()...) // OSHA-Pflichtmassnahmen (Phase 2) + all = append(all, getTRGSMeasures()...) // TRGS-Gefahrstoff-Massnahmen (Phase 2) + all = append(all, getSupplementaryMeasures()...) // Luecken-Massnahmen aus RAG-Abgleich (Phase 2) return all } diff --git a/ai-compliance-sdk/internal/iace/measures_library_ext.go b/ai-compliance-sdk/internal/iace/measures_library_ext.go index 7ca212c..bd31248 100644 --- a/ai-compliance-sdk/internal/iace/measures_library_ext.go +++ b/ai-compliance-sdk/internal/iace/measures_library_ext.go @@ -4,7 +4,7 @@ package iace func getProtectiveMeasures() []ProtectiveMeasureEntry { return []ProtectiveMeasureEntry{ // ── Fixed Guards (M061-M066) ──────────────────────────────────────── - {ID: "M061", ReductionType: "protection", SubType: "fixed_guard", Name: "Feste trennende Schutzeinrichtung", Description: "Fest montierte Barriere verhindert Zugang zum Gefahrbereich, nur mit Werkzeug entfernbar.", HazardCategory: "mechanical", Examples: []string{"Verschraubte Schutzverkleidung an Antrieben", "Schutzhaube ueber Riementrieb"}, NormReferences: []string{"ISO 14120", "ISO 12100:2010 Kap. 6.3.2"}}, + {ID: "M061", ReductionType: "protection", SubType: "fixed_guard", Name: "Feste trennende Schutzeinrichtung", Description: "Fest montierte Barriere verhindert Zugang zum Gefahrbereich, nur mit Werkzeug entfernbar.", HazardCategory: "mechanical", Examples: []string{"Verschraubte Schutzverkleidung an Antrieben", "Schutzhaube ueber Riementrieb"}, NormReferences: []string{"ISO 14120", "ISO 12100 — Technische Schutzeinrichtungen"}}, {ID: "M062", ReductionType: "protection", SubType: "fixed_guard", Name: "Schutzzaun", Description: "Feststehender Zaun umgibt den Gefahrbereich vollstaendig.", HazardCategory: "mechanical", Examples: []string{"Stahlgitterzaun um Roboterzelle", "Polycarbonat-Schutzwand an Drehmaschine"}, NormReferences: []string{"ISO 14120", "ISO 13857"}}, {ID: "M063", ReductionType: "protection", SubType: "fixed_guard", Name: "Schutzhaube", Description: "Feststehende Haube kapselt rotierende oder sich bewegende Teile ein.", HazardCategory: "mechanical", Examples: []string{"Schutzhaube ueber Riemenantrieb", "Kapselung ueber Kupplungen"}, NormReferences: []string{"ISO 14120"}}, {ID: "M064", ReductionType: "protection", SubType: "fixed_guard", Name: "Schutzverkleidung mit Zugangsschlitz", Description: "Feste Verkleidung mit definierten Oeffnungen begrenzt den Zugang auf zul. Masse.", HazardCategory: "mechanical", Examples: []string{"Materialzufuehr-Schlitz an Presse", "Einlegeoeffnung mit Sicherheitsabstand"}, NormReferences: []string{"ISO 13857", "ISO 14120"}}, @@ -16,7 +16,7 @@ func getProtectiveMeasures() []ProtectiveMeasureEntry { {ID: "M068", ReductionType: "protection", SubType: "movable_guard", Name: "Verriegelung mit Zuhaltung", Description: "Schutztuer kann nur bei stillstehender Maschine geoeffnet werden.", HazardCategory: "mechanical", Examples: []string{"Elektromagnetische Zuhaltung", "Bolzenverriegelung mit Positionsueberwachung"}, NormReferences: []string{"ISO 14119", "ISO 14120"}}, {ID: "M069", ReductionType: "protection", SubType: "movable_guard", Name: "Codierte Sicherheitsschalter", Description: "RFID-codierte Schalter verhindern Umgehung der Schutzeinrichtung.", HazardCategory: "mechanical", Examples: []string{"RFID-Sicherheitsschalter an Schutztuer", "Codierte Schalter mit Manipulationsschutz"}, NormReferences: []string{"ISO 14119", "EN 1088"}}, {ID: "M070", ReductionType: "protection", SubType: "movable_guard", Name: "Verriegelungssystem mit Fluchtentriegelung", Description: "Zuhaltung kann von innen ohne Werkzeug geoeffnet werden (Personenschutz).", HazardCategory: "mechanical", Examples: []string{"Fluchtentriegelung an Einhausung", "Innenliegende Notentriegelung"}, NormReferences: []string{"ISO 14119", "ISO 14120"}}, - {ID: "M071", ReductionType: "protection", SubType: "movable_guard", Name: "Startverriegelung", Description: "Maschine startet nur wenn alle Schutzeinrichtungen in Schutzstellung sind.", HazardCategory: "mechanical", Examples: []string{"Start nur bei geschlossener Schutztuer", "Automatische Rueckmeldung aller Schutzpositionen"}, NormReferences: []string{"ISO 14119", "ISO 12100:2010 Kap. 6.3.2"}}, + {ID: "M071", ReductionType: "protection", SubType: "movable_guard", Name: "Startverriegelung", Description: "Maschine startet nur wenn alle Schutzeinrichtungen in Schutzstellung sind.", HazardCategory: "mechanical", Examples: []string{"Start nur bei geschlossener Schutztuer", "Automatische Rueckmeldung aller Schutzpositionen"}, NormReferences: []string{"ISO 14119", "ISO 12100 — Technische Schutzeinrichtungen"}}, {ID: "M072", ReductionType: "protection", SubType: "movable_guard", Name: "Zeitverzoegerte Zuhaltung", Description: "Zuhaltung gibt erst nach Auslauf gefaehrlicher Bewegungen frei.", HazardCategory: "mechanical", Examples: []string{"Zeitrelais an Spindelstopp", "Verzoegerte Tuerfreigabe nach Pressstopp"}, NormReferences: []string{"ISO 14119"}}, // ── Electro-sensitive (M073-M079) ─────────────────────────────────── @@ -34,31 +34,31 @@ func getProtectiveMeasures() []ProtectiveMeasureEntry { {ID: "M082", ReductionType: "protection", SubType: "pressure_sensitive", Name: "Schaltpuffer", Description: "Druckempfindliche Pufferelemente an Fahrzeugkanten erkennen Kollisionen.", HazardCategory: "mechanical", Examples: []string{"Schaltpuffer an FTS/AGV", "Bumper an Shuttle-System"}, NormReferences: []string{"ISO 13856-3", "ISO 3691-4"}}, // ── Emergency Stop (M083-M086) ────────────────────────────────────── - {ID: "M083", ReductionType: "protection", SubType: "emergency_stop", Name: "Not-Halt Kategorie 0", Description: "Sofortiges Abschalten aller Aktoren durch Unterbrechung der Energiezufuhr.", HazardCategory: "general", Examples: []string{"Pilztaster an jedem Bedienfeld", "Drahtloser Not-Halt fuer mobile Bedienung"}, NormReferences: []string{"ISO 13850", "IEC 60204-1 Kap. 9.2.5.4"}}, - {ID: "M084", ReductionType: "protection", SubType: "emergency_stop", Name: "Not-Halt Kategorie 1", Description: "Kontrolliertes Stillsetzen, dann Energietrennung nach Stillstand.", HazardCategory: "general", Examples: []string{"Kontrolliertes Abbremsen vor Abschaltung", "Gesteuerter Stopp mit anschliessender Energietrennung"}, NormReferences: []string{"ISO 13850", "IEC 60204-1 Kap. 9.2.5.4"}}, + {ID: "M083", ReductionType: "protection", SubType: "emergency_stop", Name: "Not-Halt Kategorie 0", Description: "Sofortiges Abschalten aller Aktoren durch Unterbrechung der Energiezufuhr.", HazardCategory: "general", Examples: []string{"Pilztaster an jedem Bedienfeld", "Drahtloser Not-Halt fuer mobile Bedienung"}, NormReferences: []string{"ISO 13850", "IEC 60204-1 — Not-Halt-Steuerung"}}, + {ID: "M084", ReductionType: "protection", SubType: "emergency_stop", Name: "Not-Halt Kategorie 1", Description: "Kontrolliertes Stillsetzen, dann Energietrennung nach Stillstand.", HazardCategory: "general", Examples: []string{"Kontrolliertes Abbremsen vor Abschaltung", "Gesteuerter Stopp mit anschliessender Energietrennung"}, NormReferences: []string{"ISO 13850", "IEC 60204-1 — Not-Halt-Steuerung"}}, {ID: "M085", ReductionType: "protection", SubType: "emergency_stop", Name: "Not-Halt-Seilzug", Description: "Reissleine entlang langer Foerderstrecken fuer sofortigen Stopp.", HazardCategory: "general", Examples: []string{"Seilzug-Nothalt an Bandfoerderern", "Reissleine entlang Rollenbahnen"}, NormReferences: []string{"ISO 13850", "EN 620"}}, - {ID: "M086", ReductionType: "protection", SubType: "emergency_stop", Name: "Notabschaltung", Description: "Sofortige Trennung von der Energieversorgung bei unmittelbarer Lebensgefahr.", HazardCategory: "general", Examples: []string{"Notabschaltung am Hauptschalter", "Schnellablass fuer Hydraulikdruck"}, NormReferences: []string{"IEC 60204-1 Kap. 9.2.5.3", "ISO 12100:2010 Kap. 6.3.5"}}, + {ID: "M086", ReductionType: "protection", SubType: "emergency_stop", Name: "Notabschaltung", Description: "Sofortige Trennung von der Energieversorgung bei unmittelbarer Lebensgefahr.", HazardCategory: "general", Examples: []string{"Notabschaltung am Hauptschalter", "Schnellablass fuer Hydraulikdruck"}, NormReferences: []string{"IEC 60204-1 — Sicherer Halt", "ISO 12100 — Technische Schutzeinrichtungen"}}, // ── Electrical Protection (M087-M094) ─────────────────────────────── {ID: "M087", ReductionType: "protection", SubType: "electrical_protection", Name: "Fehlerstromschutzschalter RCD", Description: "Erkennt Fehlerstromanteile und trennt den Stromkreis zum Schutz vor Stromschlag.", HazardCategory: "electrical", Examples: []string{"RCD 30mA fuer Steckdosenkreise", "RCD Typ B fuer Frequenzumrichter"}, NormReferences: []string{"IEC 60204-1", "DIN VDE 0100-410"}}, - {ID: "M088", ReductionType: "protection", SubType: "electrical_protection", Name: "Schutzerdung", Description: "Leitfaehige Gehaeuseteile sind geerdet zum Schutz bei Isolationsfehlern.", HazardCategory: "electrical", Examples: []string{"PE-Leiter an allen Metallgehaeuse", "Potenzialausgleichsschiene im Schaltschrank"}, NormReferences: []string{"IEC 60204-1 Kap. 8", "DIN VDE 0100-540"}}, - {ID: "M089", ReductionType: "protection", SubType: "electrical_protection", Name: "Schutzisolierung", Description: "Doppelte oder verstaerkte Isolierung als Schutz ohne Erdungsleiter.", HazardCategory: "electrical", Examples: []string{"Schutzisoliertes Handwerkzeug", "Doppelt isolierte Motorwicklung"}, NormReferences: []string{"IEC 60204-1 Kap. 6.3", "EN 61140"}}, - {ID: "M090", ReductionType: "protection", SubType: "electrical_protection", Name: "Schutzkleinspannung SELV/PELV", Description: "Betriebsspannung unter 50V AC / 120V DC eliminiert Stromschlagrisiko.", HazardCategory: "electrical", Examples: []string{"24V-Steuerungsspannung", "PELV-Beleuchtung im Maschineninneren"}, NormReferences: []string{"IEC 60204-1 Kap. 6.4", "EN 61140"}}, + {ID: "M088", ReductionType: "protection", SubType: "electrical_protection", Name: "Schutzerdung", Description: "Leitfaehige Gehaeuseteile sind geerdet zum Schutz bei Isolationsfehlern.", HazardCategory: "electrical", Examples: []string{"PE-Leiter an allen Metallgehaeuse", "Potenzialausgleichsschiene im Schaltschrank"}, NormReferences: []string{"IEC 60204-1 — Steuerstromkreise", "DIN VDE 0100-540"}}, + {ID: "M089", ReductionType: "protection", SubType: "electrical_protection", Name: "Schutzisolierung", Description: "Doppelte oder verstaerkte Isolierung als Schutz ohne Erdungsleiter.", HazardCategory: "electrical", Examples: []string{"Schutzisoliertes Handwerkzeug", "Doppelt isolierte Motorwicklung"}, NormReferences: []string{"IEC 60204-1 — Schutz gegen elektrischen Schlag", "EN 61140"}}, + {ID: "M090", ReductionType: "protection", SubType: "electrical_protection", Name: "Schutzkleinspannung SELV/PELV", Description: "Betriebsspannung unter 50V AC / 120V DC eliminiert Stromschlagrisiko.", HazardCategory: "electrical", Examples: []string{"24V-Steuerungsspannung", "PELV-Beleuchtung im Maschineninneren"}, NormReferences: []string{"IEC 60204-1 — Schutz der Ausruestung", "EN 61140"}}, {ID: "M091", ReductionType: "protection", SubType: "electrical_protection", Name: "Zweihandbedienung", Description: "Maschine nur ausloesbar wenn beide Haende gleichzeitig an Bedienelementen.", HazardCategory: "mechanical", Examples: []string{"Zweihand-Sicherheitsschaltung an Presse", "Typ-IIIC-Zweihandsteuerung"}, NormReferences: []string{"ISO 13851", "EN 574"}}, - {ID: "M092", ReductionType: "protection", SubType: "electrical_protection", Name: "Zustimmschalter", Description: "Dreistufenschalter erlaubt Verfahren nur bei aktivem Gedrueckthalten.", HazardCategory: "mechanical", Examples: []string{"Zustimmtaster am Roboter-Handgeraet", "Zustimmfunktion fuer Teach-Betrieb"}, NormReferences: []string{"IEC 60204-1 Kap. 10.9", "ISO 12100:2010 Kap. 6.2.11.9"}}, + {ID: "M092", ReductionType: "protection", SubType: "electrical_protection", Name: "Zustimmschalter", Description: "Dreistufenschalter erlaubt Verfahren nur bei aktivem Gedrueckthalten.", HazardCategory: "mechanical", Examples: []string{"Zustimmtaster am Roboter-Handgeraet", "Zustimmfunktion fuer Teach-Betrieb"}, NormReferences: []string{"IEC 60204-1 — Zustimmungseinrichtungen", "ISO 12100 — Steuerungssicherheit"}}, {ID: "M093", ReductionType: "protection", SubType: "electrical_protection", Name: "Sicherheitsrelais", Description: "Zwangsgefuehrte Relais ueberwachen Schutzeinrichtungen zuverlaessig.", HazardCategory: "electrical", Examples: []string{"Not-Halt-Sicherheitsrelais", "Tuerverriegelungs-Auswertegeraet"}, NormReferences: []string{"ISO 13849-1", "IEC 60947-5-1"}}, - {ID: "M094", ReductionType: "protection", SubType: "electrical_protection", Name: "Lockout-Tagout (LOTO)", Description: "Verfahren zur Verriegelung und Kennzeichnung von Energiequellen bei Wartung.", HazardCategory: "electrical", Examples: []string{"Persoenliche Sicherheitsschloesser", "LOTO-Verfahrensanweisung an der Maschine"}, NormReferences: []string{"IEC 60204-1 Kap. 5.4", "ISO 14118"}}, + {ID: "M094", ReductionType: "protection", SubType: "electrical_protection", Name: "Lockout-Tagout (LOTO)", Description: "Verfahren zur Verriegelung und Kennzeichnung von Energiequellen bei Wartung.", HazardCategory: "electrical", Examples: []string{"Persoenliche Sicherheitsschloesser", "LOTO-Verfahrensanweisung an der Maschine"}, NormReferences: []string{"IEC 60204-1 — Trennen und Ausschalten", "ISO 14118"}}, // ── Thermal Protection (M095-M097) ────────────────────────────────── - {ID: "M095", ReductionType: "protection", SubType: "thermal_protection", Name: "Thermische Isolierung", Description: "Isolierung an heissen Oberflaechen verhindert Verbrennungen bei Beruehrung.", HazardCategory: "thermal", Examples: []string{"Rohrleitungsisolierung an Dampfleitungen", "Isolierhaube an Extruder"}, NormReferences: []string{"EN ISO 13732-1", "ISO 12100:2010 Kap. 6.3.2.7"}}, + {ID: "M095", ReductionType: "protection", SubType: "thermal_protection", Name: "Thermische Isolierung", Description: "Isolierung an heissen Oberflaechen verhindert Verbrennungen bei Beruehrung.", HazardCategory: "thermal", Examples: []string{"Rohrleitungsisolierung an Dampfleitungen", "Isolierhaube an Extruder"}, NormReferences: []string{"EN ISO 13732-1", "ISO 12100 — Technische Schutzeinrichtungen"}}, {ID: "M096", ReductionType: "protection", SubType: "thermal_protection", Name: "Beruehrungsschutz heisse Teile", Description: "Abschirmungen verhindern versehentliche Beruehrung heisser Komponenten.", HazardCategory: "thermal", Examples: []string{"Schutzgitter an Heizungen", "Abstandshalter an heissen Rohren"}, NormReferences: []string{"EN ISO 13732-1"}}, - {ID: "M097", ReductionType: "protection", SubType: "thermal_protection", Name: "Kuehlfallen und Waermetauscher", Description: "Aktive Kuehlsysteme halten Oberflaechentemperaturen unter sicheren Grenzwerten.", HazardCategory: "thermal", Examples: []string{"Wasserkuehlung an Laser-Schneidkopf", "Oelkuehler fuer Hydraulikoel"}, NormReferences: []string{"ISO 12100:2010 Kap. 6.2.4"}}, + {ID: "M097", ReductionType: "protection", SubType: "thermal_protection", Name: "Kuehlfallen und Waermetauscher", Description: "Aktive Kuehlsysteme halten Oberflaechentemperaturen unter sicheren Grenzwerten.", HazardCategory: "thermal", Examples: []string{"Wasserkuehlung an Laser-Schneidkopf", "Oelkuehler fuer Hydraulikoel"}, NormReferences: []string{"ISO 12100 — Ergonomische Grundsaetze"}}, // ── Fluid Protection (M098-M101) ──────────────────────────────────── {ID: "M098", ReductionType: "protection", SubType: "fluid_protection", Name: "Druckbegrenzungsventil", Description: "Voreingestelltes Ventil schuetzt das System vor unzulaessig hohem Druck.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"DBV in Hydraulik-Hauptleitung", "Reduzierventil in Pneumatik-Zuluft"}, NormReferences: []string{"ISO 4413", "ISO 4414"}}, {ID: "M099", ReductionType: "protection", SubType: "fluid_protection", Name: "Schlauchbruchsicherung", Description: "Ventil schliesst automatisch bei ploetzlichem Druckabfall durch Leitungsbruch.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Schlauchbruchsicherung an Hydraulikzylinder", "Rueckschlagventil bei Leitungsabriss"}, NormReferences: []string{"ISO 4413"}}, {ID: "M100", ReductionType: "protection", SubType: "fluid_protection", Name: "Sicherheitsventil", Description: "Federbelastetes Ventil oeffnet bei Ueberdruck und leitet Medium ab.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Sicherheitsventil am Druckbehaelter", "Entlueftungsventil bei Pneumatik"}, NormReferences: []string{"ISO 4126-1", "EN 764-7"}}, - {ID: "M101", ReductionType: "protection", SubType: "fluid_protection", Name: "Auffangeinrichtung fuer Betriebsfluide", Description: "Auffangwannen verhindern Umweltkontamination und Rutschgefahr bei Leckagen.", HazardCategory: "material_environmental", Examples: []string{"Oelwanne unter Hydraulikaggregat", "Auffangrinne unter Schmierstoffleitungen"}, NormReferences: []string{"ISO 12100:2010 Kap. 6.3.2.7"}}, + {ID: "M101", ReductionType: "protection", SubType: "fluid_protection", Name: "Auffangeinrichtung fuer Betriebsfluide", Description: "Auffangwannen verhindern Umweltkontamination und Rutschgefahr bei Leckagen.", HazardCategory: "material_environmental", Examples: []string{"Oelwanne unter Hydraulikaggregat", "Auffangrinne unter Schmierstoffleitungen"}, NormReferences: []string{"ISO 12100 — Technische Schutzeinrichtungen"}}, // ── Extraction (M102-M104) ────────────────────────────────────────── {ID: "M102", ReductionType: "protection", SubType: "extraction", Name: "Absauganlage", Description: "Absaugung entfernt gesundheitsschaedliche Daempfe, Staub und Rauch.", HazardCategory: "material_environmental", Examples: []string{"Schweissrauchabsaugung", "Staubabsaugung an Holzbearbeitungsmaschine"}, NormReferences: []string{"EN 626-1", "EN 1093-1"}}, @@ -69,7 +69,7 @@ func getProtectiveMeasures() []ProtectiveMeasureEntry { {ID: "M105", ReductionType: "protection", SubType: "safety_control", Name: "Sichere SPS", Description: "Fehlersichere SPS fuehrt sicherheitsrelevante Funktionen redundant aus.", HazardCategory: "software_control", Examples: []string{"Zweikanalige SPS mit Kreuzvergleich", "SIL-3-zertifizierte Safety-SPS"}, NormReferences: []string{"IEC 62061", "ISO 13849-1"}}, {ID: "M106", ReductionType: "protection", SubType: "safety_control", Name: "Watchdog", Description: "Timer ueberwacht Steuerungssoftware und loest sicheren Zustand bei Ausfall aus.", HazardCategory: "software_control", Examples: []string{"Hardware-Watchdog auf Safety-SPS", "Fenster-Watchdog mit engem Zeitfenster"}, NormReferences: []string{"IEC 61508-2", "ISO 13849-1"}}, {ID: "M107", ReductionType: "protection", SubType: "safety_control", Name: "Sichere Fehlerbehandlung", Description: "Jeder erkannte Fehler wird systematisch in definierten sicheren Zustand ueberfuehrt.", HazardCategory: "software_control", Examples: []string{"Exception-Handler fuer kritische Bereiche", "Unbehandelte Fehler loesen sicheren Stopp aus"}, NormReferences: []string{"IEC 61508-3", "IEC 62443-4-1"}}, - {ID: "M108", ReductionType: "protection", SubType: "safety_control", Name: "Sichere Recovery", Description: "Nach Fehler wird Maschine in Ausgangszustand zurueckgesetzt vor Weiterbetrieb.", HazardCategory: "software_control", Examples: []string{"Referenzfahrt nach Steuerungswiederanlauf", "Konfigurationscheck nach Recovery"}, NormReferences: []string{"IEC 62061", "ISO 12100:2010 Kap. 6.2.11.4"}}, + {ID: "M108", ReductionType: "protection", SubType: "safety_control", Name: "Sichere Recovery", Description: "Nach Fehler wird Maschine in Ausgangszustand zurueckgesetzt vor Weiterbetrieb.", HazardCategory: "software_control", Examples: []string{"Referenzfahrt nach Steuerungswiederanlauf", "Konfigurationscheck nach Recovery"}, NormReferences: []string{"IEC 62061", "ISO 12100 — Steuerungssicherheit"}}, {ID: "M109", ReductionType: "protection", SubType: "safety_control", Name: "Sichere Degradationsstrategie", Description: "Bei Teilausfaellen Uebergang in Modus mit reduzierter Leistung aber erhaltener Sicherheit.", HazardCategory: "software_control", Examples: []string{"Reduzierte Geschwindigkeit bei Sensorausfall", "Automatischer Wechsel auf Handbetrieb"}, NormReferences: []string{"IEC 62061", "ISO 13849-1"}}, {ID: "M110", ReductionType: "protection", SubType: "safety_control", Name: "Automatische Abschaltung bei Fehler", Description: "Bei schwerwiegenden Fehlern automatische sichere Abschaltung.", HazardCategory: "software_control", Examples: []string{"Stopp-Kategorie 0 bei kritischem Fehler", "Energietrennung bei unbehebbarem Fehler"}, NormReferences: []string{"IEC 60204-1", "ISO 13850"}}, {ID: "M111", ReductionType: "protection", SubType: "safety_control", Name: "Sichere Speicherverwaltung", Description: "Steuerungssoftware verwendet sichere Speicherverwaltung gegen Datenverlust.", HazardCategory: "software_control", Examples: []string{"Speicherschutz fuer Safety-Bereiche", "Stack-Overflow-Schutz implementieren"}, NormReferences: []string{"IEC 61508-3"}}, @@ -79,14 +79,14 @@ func getProtectiveMeasures() []ProtectiveMeasureEntry { // ── Monitoring (M114-M120) ────────────────────────────────────────── {ID: "M114", ReductionType: "protection", SubType: "monitoring", Name: "Sichere Positionsueberwachung", Description: "Redundante Positionserfassung mit Plausibilitaetspruefung an Sicherheitsachsen.", HazardCategory: "mechanical", Examples: []string{"Doppelte Absolutwertgeber an Servoachsen", "Sichere Positionsauswertung ueber Safety-SPS"}, NormReferences: []string{"IEC 61800-5-2", "IEC 62061"}}, {ID: "M115", ReductionType: "protection", SubType: "monitoring", Name: "Sichere Geschwindigkeitsueberwachung", Description: "Geschwindigkeit wird sicher ueberwacht mit Stopp bei Ueberschreitung.", HazardCategory: "mechanical", Examples: []string{"Sichere Drehzahlueberwachung an Spindeln", "Geschwindigkeitsbegrenzung im Einrichtbetrieb"}, NormReferences: []string{"IEC 61800-5-2", "IEC 62061"}}, - {ID: "M116", ReductionType: "protection", SubType: "monitoring", Name: "Temperaturueberwachung", Description: "Temperatursensoren loesen Schutzreaktion bei Grenzwertueberschreitung aus.", HazardCategory: "thermal", Examples: []string{"Temperaturfuehler an Motorwicklungen", "Thermoelement an Hydrauliktank"}, NormReferences: []string{"ISO 12100:2010 Kap. 6.3.2.7"}}, + {ID: "M116", ReductionType: "protection", SubType: "monitoring", Name: "Temperaturueberwachung", Description: "Temperatursensoren loesen Schutzreaktion bei Grenzwertueberschreitung aus.", HazardCategory: "thermal", Examples: []string{"Temperaturfuehler an Motorwicklungen", "Thermoelement an Hydrauliktank"}, NormReferences: []string{"ISO 12100 — Technische Schutzeinrichtungen"}}, {ID: "M117", ReductionType: "protection", SubType: "monitoring", Name: "Vibrationsueberwachung", Description: "Schwingungssensoren warnen vor drohendem Komponentenversagen.", HazardCategory: "noise_vibration", Examples: []string{"Beschleunigungssensoren an Hauptlagern", "Grenzwertbasierte Vibrationswarnung"}, NormReferences: []string{"ISO 10816-1", "ISO 13373-1"}}, {ID: "M118", ReductionType: "protection", SubType: "monitoring", Name: "Druckueberwachung", Description: "Druckueberwachung in Hydraulik/Pneumatik mit Schutzreaktion bei Grenzwert.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Druckschalter in Hydraulik-Hauptleitung", "Differenzdruck-Ueberwachung an Filtern"}, NormReferences: []string{"ISO 4413", "ISO 4414"}}, {ID: "M119", ReductionType: "protection", SubType: "monitoring", Name: "Redundante Sensorik", Description: "Sicherheitskritische Messstellen mit zwei unabhaengigen Sensoren und Vergleich.", HazardCategory: "software_control", Examples: []string{"Zweikanalige Positionserfassung", "Diversitaere Druckmessung"}, NormReferences: []string{"ISO 13849-1", "IEC 62061"}}, {ID: "M120", ReductionType: "protection", SubType: "monitoring", Name: "Zustandsueberwachung (Condition Monitoring)", Description: "Kontinuierliche Maschinenzustandsueberwachung fuer fruehzeitige Fehlererkennung.", HazardCategory: "general", Examples: []string{"Condition-Monitoring-System fuer Lager", "Trendanalyse fuer Motorstroeme"}, NormReferences: []string{"ISO 13379-1", "ISO 17359"}}, // ── Cybersecurity (M121-M130) ─────────────────────────────────────── - {ID: "M121", ReductionType: "protection", SubType: "cybersecurity", Name: "Zugangskontrolle", Description: "Physisches/elektronisches Zugangskontrollsystem fuer autorisierte Bedienung.", HazardCategory: "cyber_network", Examples: []string{"RFID-Chipkarten fuer Maschinenzugang", "Schluesselsystem fuer Betriebsartenwahl"}, NormReferences: []string{"IEC 62443-3-3", "ISO 12100:2010 Kap. 6.2.11.10"}}, + {ID: "M121", ReductionType: "protection", SubType: "cybersecurity", Name: "Zugangskontrolle", Description: "Physisches/elektronisches Zugangskontrollsystem fuer autorisierte Bedienung.", HazardCategory: "cyber_network", Examples: []string{"RFID-Chipkarten fuer Maschinenzugang", "Schluesselsystem fuer Betriebsartenwahl"}, NormReferences: []string{"IEC 62443-3-3", "ISO 12100 — Steuerungssicherheit"}}, {ID: "M122", ReductionType: "protection", SubType: "cybersecurity", Name: "Sichere Netzwerksegmentierung", Description: "Maschinennetzwerk von anderen Netzwerken getrennt gegen Uebergreifen von Angriffen.", HazardCategory: "cyber_network", Examples: []string{"OT-Netzwerk per VLAN trennen", "DMZ zwischen Office und Produktion"}, NormReferences: []string{"IEC 62443-3-3", "IEC 62443-2-1"}}, {ID: "M123", ReductionType: "protection", SubType: "cybersecurity", Name: "Firewall", Description: "Konfigurierte Firewall schuetzt Steuerungsnetzwerk vor unautorisiertem Verkehr.", HazardCategory: "cyber_network", Examples: []string{"Industrie-Firewall vor SPS-Netzwerk", "Deep-Packet-Inspection fuer Industrieprotokolle"}, NormReferences: []string{"IEC 62443-3-3"}}, {ID: "M124", ReductionType: "protection", SubType: "cybersecurity", Name: "Sichere Fernwartung", Description: "Fernzugriff nur ueber verschluesselte, authentifizierte, zeitbegrenzte Verbindungen.", HazardCategory: "cyber_network", Examples: []string{"VPN fuer Fernwartung", "Fernzugriff nur nach lokaler Freigabe"}, NormReferences: []string{"IEC 62443-3-3", "VDI/VDE 2182"}}, @@ -98,18 +98,18 @@ func getProtectiveMeasures() []ProtectiveMeasureEntry { {ID: "M130", ReductionType: "protection", SubType: "cybersecurity", Name: "Sichere Parameteraenderung", Description: "Sicherheitsparameter-Aenderungen erfordern Authentifizierung und Protokollierung.", HazardCategory: "cyber_network", Examples: []string{"Parameterschutz ueber Zugangsstufen", "Vier-Augen-Prinzip bei Safety-Parametern"}, NormReferences: []string{"IEC 62443-3-3", "IEC 62443-4-1"}}, // ── Alarmierung (M131-M133) ───────────────────────────────────────── - {ID: "M131", ReductionType: "protection", SubType: "monitoring", Name: "Optische Alarmierung", Description: "Signalleuchten zeigen Betriebszustand und warnen bei Gefahr.", HazardCategory: "general", Examples: []string{"Signalleuchte gelb bei Warnung, rot bei Gefahr", "Blinkende Warnleuchte vor Maschinenstart"}, NormReferences: []string{"IEC 60204-1 Kap. 10.3", "IEC 60073"}}, - {ID: "M132", ReductionType: "protection", SubType: "monitoring", Name: "Akustische Alarmierung", Description: "Akustische Signale warnen vor Gefahrsituationen und Maschinenstart.", HazardCategory: "general", Examples: []string{"Hupe vor automatischem Anlauf", "Alarmsirene bei Schutztuerverletzung"}, NormReferences: []string{"IEC 60204-1 Kap. 10.3", "ISO 7731"}}, + {ID: "M131", ReductionType: "protection", SubType: "monitoring", Name: "Optische Alarmierung", Description: "Signalleuchten zeigen Betriebszustand und warnen bei Gefahr.", HazardCategory: "general", Examples: []string{"Signalleuchte gelb bei Warnung, rot bei Gefahr", "Blinkende Warnleuchte vor Maschinenstart"}, NormReferences: []string{"IEC 60204-1 — Melde- und Bedienelemente", "IEC 60073"}}, + {ID: "M132", ReductionType: "protection", SubType: "monitoring", Name: "Akustische Alarmierung", Description: "Akustische Signale warnen vor Gefahrsituationen und Maschinenstart.", HazardCategory: "general", Examples: []string{"Hupe vor automatischem Anlauf", "Alarmsirene bei Schutztuerverletzung"}, NormReferences: []string{"IEC 60204-1 — Melde- und Bedienelemente", "ISO 7731"}}, {ID: "M133", ReductionType: "protection", SubType: "monitoring", Name: "Anomalieerkennung", Description: "System erkennt ungewoehnliche Verhaltensmuster und warnt fruehzeitig.", HazardCategory: "ai_specific", Examples: []string{"ML fuer Normalbetriebsprofil", "Netzwerk-Anomalieerkennung"}, NormReferences: []string{"IEC 62443-3-3"}}, // ── Bremsen / mechanische Schutz (M134-M140) ──────────────────────── {ID: "M134", ReductionType: "protection", SubType: "electrical_protection", Name: "Bremssystem", Description: "Zuverlaessiges Bremssystem stoppt bewegliche Teile bei Abschaltung oder Notfall.", HazardCategory: "mechanical", Examples: []string{"Federspeicherbremse an Vertikalachse", "Redundante Bremse mit diversitaerem Wirkprinzip"}, NormReferences: []string{"ISO 13849-1", "IEC 61800-5-2"}}, - {ID: "M135", ReductionType: "protection", SubType: "electrical_protection", Name: "Sicherheitskupplung", Description: "Trennt Kraftuebertragung bei Drehmomentueberschreitung.", HazardCategory: "mechanical", Examples: []string{"Rutschkupplung im Antriebsstrang", "Brechbolzenkupplung als Sollbruchstelle"}, NormReferences: []string{"ISO 12100:2010 Kap. 6.3.2"}}, - {ID: "M136", ReductionType: "protection", SubType: "electrical_protection", Name: "Sichere Energieabschaltung (Schutz)", Description: "Zuverlaessige Energietrennung mit Absperrvorrichtung fuer Wartungszugang.", HazardCategory: "electrical", Examples: []string{"Reparaturschalter mit Vorhangschloss", "Pneumatik-Absperrung mit Entlueftung"}, NormReferences: []string{"IEC 60204-1 Kap. 5.4", "ISO 14118"}}, + {ID: "M135", ReductionType: "protection", SubType: "electrical_protection", Name: "Sicherheitskupplung", Description: "Trennt Kraftuebertragung bei Drehmomentueberschreitung.", HazardCategory: "mechanical", Examples: []string{"Rutschkupplung im Antriebsstrang", "Brechbolzenkupplung als Sollbruchstelle"}, NormReferences: []string{"ISO 12100 — Technische Schutzeinrichtungen"}}, + {ID: "M136", ReductionType: "protection", SubType: "electrical_protection", Name: "Sichere Energieabschaltung (Schutz)", Description: "Zuverlaessige Energietrennung mit Absperrvorrichtung fuer Wartungszugang.", HazardCategory: "electrical", Examples: []string{"Reparaturschalter mit Vorhangschloss", "Pneumatik-Absperrung mit Entlueftung"}, NormReferences: []string{"IEC 60204-1 — Trennen und Ausschalten", "ISO 14118"}}, {ID: "M137", ReductionType: "protection", SubType: "electrical_protection", Name: "Kontaktlose Energieuebertragung", Description: "Induktive Energieuebertragung eliminiert Verschleiss und Lichtbogenrisiko.", HazardCategory: "electrical", Examples: []string{"Induktive Koppler an Drehtischen", "Kontaktlose Leistungsuebertragung an FTS"}, NormReferences: []string{"IEC 60204-1"}}, - {ID: "M138", ReductionType: "protection", SubType: "electrical_protection", Name: "Blitzschutz und Ueberspannungsableiter", Description: "Ableiter schuetzen Steuerungselektronik vor transienten Ueberspannungen.", HazardCategory: "electrical", Examples: []string{"Ueberspannungsableiter am Schaltschrankeingang", "EMV-Filter an Signalleitungen"}, NormReferences: []string{"IEC 62305-4", "IEC 60204-1 Kap. 6.6"}}, + {ID: "M138", ReductionType: "protection", SubType: "electrical_protection", Name: "Blitzschutz und Ueberspannungsableiter", Description: "Ableiter schuetzen Steuerungselektronik vor transienten Ueberspannungen.", HazardCategory: "electrical", Examples: []string{"Ueberspannungsableiter am Schaltschrankeingang", "EMV-Filter an Signalleitungen"}, NormReferences: []string{"IEC 62305-4", "IEC 60204-1 — Potentialausgleich"}}, {ID: "M139", ReductionType: "protection", SubType: "electrical_protection", Name: "Isolationsueberwachung", Description: "Dauerhaftes Monitoring des Isolationswiderstands erkennt Fehler vor Gefaehrdung.", HazardCategory: "electrical", Examples: []string{"Isolationswaechter im IT-Netz", "Isolationsmessung an Motorwicklungen"}, NormReferences: []string{"IEC 61557-8", "IEC 60204-1"}}, - {ID: "M140", ReductionType: "protection", SubType: "electrical_protection", Name: "Selektiver Ueberstromschutz", Description: "Selektive Absicherung begrenzt Fehlerstromauswirkung auf den betroffenen Zweig.", HazardCategory: "electrical", Examples: []string{"Selektive Staffelung der Sicherungen", "Motorschutzschalter an jedem Abgang"}, NormReferences: []string{"IEC 60204-1 Kap. 7", "IEC 60947-2"}}, + {ID: "M140", ReductionType: "protection", SubType: "electrical_protection", Name: "Selektiver Ueberstromschutz", Description: "Selektive Absicherung begrenzt Fehlerstromauswirkung auf den betroffenen Zweig.", HazardCategory: "electrical", Examples: []string{"Selektive Staffelung der Sicherungen", "Motorschutzschalter an jedem Abgang"}, NormReferences: []string{"IEC 60204-1 — Motoren", "IEC 60947-2"}}, } } @@ -120,25 +120,25 @@ func getInformationMeasures() []ProtectiveMeasureEntry { {ID: "M141", ReductionType: "information", SubType: "signage", Name: "Sicherheitszeichen nach ISO 7010", Description: "Normgerechte Sicherheitsschilder fuer Gebote, Verbote und Warnungen.", HazardCategory: "general", Examples: []string{"Gebotszeichen fuer Gehoerschutz", "Verbotszeichen an gesperrten Zugaengen"}, NormReferences: []string{"ISO 7010", "ASR A1.3"}}, {ID: "M142", ReductionType: "information", SubType: "signage", Name: "Warnhinweis heisse Oberflaeche W017", Description: "Warnzeichen an Maschinenteilen mit Verbrennungsgefahr.", HazardCategory: "thermal", Examples: []string{"Warnaufkleber an Gehaeuse", "Warnschild an Rohrleitungen"}, NormReferences: []string{"ISO 7010 W017", "EN ISO 13732-1"}}, {ID: "M143", ReductionType: "information", SubType: "signage", Name: "Gefahrenhinweis elektrische Spannung W012", Description: "Warnzeichen an Stellen mit elektrischer Gefaehrdung.", HazardCategory: "electrical", Examples: []string{"Warnschild am Schaltschrank", "Elektrogefahr-Symbol an Anschlussdosen"}, NormReferences: []string{"ISO 7010 W012", "IEC 60204-1"}}, - {ID: "M144", ReductionType: "information", SubType: "signage", Name: "Gefahrenkennzeichnung Bodenmarkierung", Description: "Gelb-schwarze Schraffur markiert Gefahrbereiche am Boden.", HazardCategory: "general", Examples: []string{"Bodenmarkierung um Roboterzelle", "Gefahrenzone mit Schraffur kennzeichnen"}, NormReferences: []string{"ASR A1.3", "ISO 12100:2010 Kap. 6.4"}}, + {ID: "M144", ReductionType: "information", SubType: "signage", Name: "Gefahrenkennzeichnung Bodenmarkierung", Description: "Gelb-schwarze Schraffur markiert Gefahrbereiche am Boden.", HazardCategory: "general", Examples: []string{"Bodenmarkierung um Roboterzelle", "Gefahrenzone mit Schraffur kennzeichnen"}, NormReferences: []string{"ASR A1.3", "ISO 12100 — Benutzerinformation"}}, {ID: "M145", ReductionType: "information", SubType: "signage", Name: "Gefahrenpiktogramme sprachunabhaengig", Description: "Piktogramme warnen ohne Textverstaendnis vor spezifischen Gefaehrdungen.", HazardCategory: "general", Examples: []string{"Piktogramm fuer Handverletzungsgefahr", "Laserwarnsymbol an Bearbeitungsanlage"}, NormReferences: []string{"ISO 7010", "ISO 3864-1"}}, {ID: "M146", ReductionType: "information", SubType: "signage", Name: "PSA-Gebotszeichen", Description: "Gebotszeichen zeigen vorgeschriebene Schutzausruestung fuer den Bereich.", HazardCategory: "general", Examples: []string{"Gehoerschutz-Gebot ab 85 dB(A)", "Schutzbrille-Gebot bei Spanabnahme"}, NormReferences: []string{"ISO 7010", "PSA-BV"}}, {ID: "M147", ReductionType: "information", SubType: "signage", Name: "Sicherheitsplakat", Description: "Gut sichtbares Plakat fasst wichtigste Sicherheitsregeln zusammen.", HazardCategory: "general", Examples: []string{"Sicherheitsplakat am Maschinenzugang", "Notfall-Verhaltensregeln darstellen"}, NormReferences: []string{"ASR A1.3"}}, - {ID: "M148", ReductionType: "information", SubType: "signage", Name: "Restrisiko-Kennzeichnung", Description: "Hinweis auf verbleibende Risiken die nicht konstruktiv eliminiert werden konnten.", HazardCategory: "general", Examples: []string{"Restrisiko-Schild an Nachlaufbereich", "Hinweis auf Quetschgefahr trotz Schutzeinrichtung"}, NormReferences: []string{"ISO 12100:2010 Kap. 6.4.3"}}, - {ID: "M149", ReductionType: "information", SubType: "signage", Name: "Sicherheitsdiagramme aushangen", Description: "Sicherheitskreise und Schutzeinrichtungen als Diagramm sichtbar machen.", HazardCategory: "general", Examples: []string{"Schaltschema im Schaltschrank", "Blockschaltbild der Sicherheitssteuerung"}, NormReferences: []string{"IEC 60204-1 Kap. 18"}}, + {ID: "M148", ReductionType: "information", SubType: "signage", Name: "Restrisiko-Kennzeichnung", Description: "Hinweis auf verbleibende Risiken die nicht konstruktiv eliminiert werden konnten.", HazardCategory: "general", Examples: []string{"Restrisiko-Schild an Nachlaufbereich", "Hinweis auf Quetschgefahr trotz Schutzeinrichtung"}, NormReferences: []string{"ISO 12100 — Benutzerinformation"}}, + {ID: "M149", ReductionType: "information", SubType: "signage", Name: "Sicherheitsdiagramme aushangen", Description: "Sicherheitskreise und Schutzeinrichtungen als Diagramm sichtbar machen.", HazardCategory: "general", Examples: []string{"Schaltschema im Schaltschrank", "Blockschaltbild der Sicherheitssteuerung"}, NormReferences: []string{"IEC 60204-1 — Technische Dokumentation"}}, {ID: "M150", ReductionType: "information", SubType: "signage", Name: "Notfallkontaktliste", Description: "Aktuelle Notfallnummern am Bedienplatz fuer schnelle Erreichbarkeit.", HazardCategory: "general", Examples: []string{"Notfallnummern am Bedienplatz", "Herstellerhotline fuer technische Notfaelle"}, NormReferences: []string{"ASR A2.3", "DGUV Vorschrift 1"}}, // ── Manual / Documentation (M151-M160) ────────────────────────────── - {ID: "M151", ReductionType: "information", SubType: "manual", Name: "Betriebsanleitung", Description: "Umfassende Anleitung fuer sicheren Betrieb in allen vorgesehenen Betriebsarten.", HazardCategory: "general", Examples: []string{"Vollstaendige Anleitung in Landessprache", "Kapitel zur bestimmungsgemaessen Verwendung"}, NormReferences: []string{"ISO 12100:2010 Kap. 6.4.5", "IEC 82079-1"}}, - {ID: "M152", ReductionType: "information", SubType: "manual", Name: "Restrisiko-Hinweise in Anleitung", Description: "Dokumentation aller verbleibenden Risiken mit Schutzmassnahmen fuer den Betreiber.", HazardCategory: "general", Examples: []string{"Restrisiken kapitelweise auflisten", "Schutzempfehlungen fuer jedes Restrisiko"}, NormReferences: []string{"ISO 12100:2010 Kap. 6.4.5.1 f"}}, - {ID: "M153", ReductionType: "information", SubType: "manual", Name: "Wartungsanleitung", Description: "Detaillierte Wartungsanweisungen mit erforderlichen Sicherheitsmassnahmen.", HazardCategory: "general", Examples: []string{"Schritt-fuer-Schritt-Wartungsanleitung", "Sicherheitsmassnahmen vor jeder Taetigkeit"}, NormReferences: []string{"ISO 12100:2010 Kap. 6.4.5.1 e", "IEC 82079-1"}}, + {ID: "M151", ReductionType: "information", SubType: "manual", Name: "Betriebsanleitung", Description: "Umfassende Anleitung fuer sicheren Betrieb in allen vorgesehenen Betriebsarten.", HazardCategory: "general", Examples: []string{"Vollstaendige Anleitung in Landessprache", "Kapitel zur bestimmungsgemaessen Verwendung"}, NormReferences: []string{"ISO 12100 — Benutzerinformation", "IEC 82079-1"}}, + {ID: "M152", ReductionType: "information", SubType: "manual", Name: "Restrisiko-Hinweise in Anleitung", Description: "Dokumentation aller verbleibenden Risiken mit Schutzmassnahmen fuer den Betreiber.", HazardCategory: "general", Examples: []string{"Restrisiken kapitelweise auflisten", "Schutzempfehlungen fuer jedes Restrisiko"}, NormReferences: []string{"ISO 12100 — Benutzerinformation"}}, + {ID: "M153", ReductionType: "information", SubType: "manual", Name: "Wartungsanleitung", Description: "Detaillierte Wartungsanweisungen mit erforderlichen Sicherheitsmassnahmen.", HazardCategory: "general", Examples: []string{"Schritt-fuer-Schritt-Wartungsanleitung", "Sicherheitsmassnahmen vor jeder Taetigkeit"}, NormReferences: []string{"ISO 12100 — Benutzerinformation", "IEC 82079-1"}}, {ID: "M154", ReductionType: "information", SubType: "manual", Name: "Servicehandbuch", Description: "Alle Informationen fuer sichere Diagnose, Reparatur und Instandsetzung.", HazardCategory: "general", Examples: []string{"Schaltplaene und Hydraulikplaene", "Diagnoseprozeduren fuer Fehlercodes"}, NormReferences: []string{"IEC 82079-1"}}, - {ID: "M155", ReductionType: "information", SubType: "manual", Name: "Notfallanweisung", Description: "Sofortmassnahmen bei Unfaellen und Stoerungen an der Maschine.", HazardCategory: "general", Examples: []string{"Notfallplan an der Maschine aushangen", "Erste-Hilfe bei maschinenspezifischen Verletzungen"}, NormReferences: []string{"DGUV Vorschrift 1", "ISO 12100:2010 Kap. 6.4.5.1 d"}}, + {ID: "M155", ReductionType: "information", SubType: "manual", Name: "Notfallanweisung", Description: "Sofortmassnahmen bei Unfaellen und Stoerungen an der Maschine.", HazardCategory: "general", Examples: []string{"Notfallplan an der Maschine aushangen", "Erste-Hilfe bei maschinenspezifischen Verletzungen"}, NormReferences: []string{"DGUV Vorschrift 1", "ISO 12100 — Benutzerinformation"}}, {ID: "M156", ReductionType: "information", SubType: "manual", Name: "Betreiberhandbuch", Description: "Zusammenfassung aller organisatorischen Pflichten des Maschinenbetreibers.", HazardCategory: "general", Examples: []string{"Betreiberpflichten aus Maschinenrichtlinie", "Pruef- und Wartungspflichten"}, NormReferences: []string{"2006/42/EG Anhang I", "BetrSichV"}}, - {ID: "M157", ReductionType: "information", SubType: "manual", Name: "Reinigungsanweisung", Description: "Sichere Vorgehensweise bei Reinigung der Maschine und Komponenten.", HazardCategory: "general", Examples: []string{"Zulaessige Reinigungsmittel", "Reinigung nur bei abgeschalteter Maschine"}, NormReferences: []string{"ISO 12100:2010 Kap. 6.4.5.1 e"}}, - {ID: "M158", ReductionType: "information", SubType: "manual", Name: "Stoerungsanweisung", Description: "Sicheres Vorgehen bei typischen Maschinenstoerungen und deren Behebung.", HazardCategory: "general", Examples: []string{"Stoerungsbilder mit Abhilfemassnahmen", "Eskalationsprozess bei nicht behebbaren Stoerungen"}, NormReferences: []string{"IEC 82079-1", "ISO 12100:2010 Kap. 6.4.5.1 d"}}, + {ID: "M157", ReductionType: "information", SubType: "manual", Name: "Reinigungsanweisung", Description: "Sichere Vorgehensweise bei Reinigung der Maschine und Komponenten.", HazardCategory: "general", Examples: []string{"Zulaessige Reinigungsmittel", "Reinigung nur bei abgeschalteter Maschine"}, NormReferences: []string{"ISO 12100 — Benutzerinformation"}}, + {ID: "M158", ReductionType: "information", SubType: "manual", Name: "Stoerungsanweisung", Description: "Sicheres Vorgehen bei typischen Maschinenstoerungen und deren Behebung.", HazardCategory: "general", Examples: []string{"Stoerungsbilder mit Abhilfemassnahmen", "Eskalationsprozess bei nicht behebbaren Stoerungen"}, NormReferences: []string{"IEC 82079-1", "ISO 12100 — Benutzerinformation"}}, {ID: "M159", ReductionType: "information", SubType: "manual", Name: "Softwareupdateanleitung", Description: "Sicheres Einspielen von Software-/Firmware-Updates auf Maschinensteuerung.", HazardCategory: "software_control", Examples: []string{"Backup vor jedem Update", "Funktionspruefung nach Update"}, NormReferences: []string{"IEC 62443-2-3"}}, - {ID: "M160", ReductionType: "information", SubType: "manual", Name: "Entsorgungsanleitung", Description: "Fachgerechte und sichere Entsorgung der Maschine und Betriebsstoffe.", HazardCategory: "material_environmental", Examples: []string{"Gefahrstoffe identifizieren", "Entsorgungsnachweis fuer Fluide"}, NormReferences: []string{"2006/42/EG Anhang I Kap. 1.7.4.2 v"}}, + {ID: "M160", ReductionType: "information", SubType: "manual", Name: "Entsorgungsanleitung", Description: "Fachgerechte und sichere Entsorgung der Maschine und Betriebsstoffe.", HazardCategory: "material_environmental", Examples: []string{"Gefahrstoffe identifizieren", "Entsorgungsnachweis fuer Fluide"}, NormReferences: []string{"MRL 2006/42/EG — Betriebsanleitung"}}, // ── Training (M161-M168) ──────────────────────────────────────────── {ID: "M161", ReductionType: "information", SubType: "training", Name: "Erstunterweisung Bediener", Description: "Initiale Sicherheitsunterweisung vor erstem Maschinenbetrieb.", HazardCategory: "general", Examples: []string{"Einweisungsprogramm fuer neue Bediener", "Praktische Uebung am Not-Halt"}, NormReferences: []string{"BetrSichV §12", "DGUV Vorschrift 1"}}, @@ -167,21 +167,21 @@ func getInformationMeasures() []ProtectiveMeasureEntry { {ID: "M180", ReductionType: "information", SubType: "organizational", Name: "Inspektionsplan", Description: "Art und Haeufigkeit der Inspektionen sicherheitsrelevanter Komponenten.", HazardCategory: "general", Examples: []string{"Tagesinspektion Schutzeinrichtungen", "Quartalinspektion Hydraulikleitungen"}, NormReferences: []string{"BetrSichV §10", "TRBS 1201"}}, {ID: "M181", ReductionType: "information", SubType: "organizational", Name: "Pruefplan wiederkehrende Pruefungen", Description: "Festlegung welche Pruefungen an welchen Bauteilen in welchen Intervallen.", HazardCategory: "general", Examples: []string{"Wiederkehrende Pruefung Druckbehaelter", "Pruefung nach DGUV V3"}, NormReferences: []string{"BetrSichV §14-16", "TRBS 1201"}}, {ID: "M182", ReductionType: "information", SubType: "organizational", Name: "Incident-Reporting", Description: "Meldung und Dokumentation aller Sicherheitsvorfaelle.", HazardCategory: "general", Examples: []string{"Meldeformular fuer Vorfaelle", "Vorfallanalyse und Massnahmenverfolgung"}, NormReferences: []string{"DGUV Vorschrift 1 §28", "ArbSchG §15-16"}}, - {ID: "M183", ReductionType: "information", SubType: "organizational", Name: "Aenderungsmanagement", Description: "Strukturiertes Change-Management mit Sicherheitsbewertung jeder Aenderung.", HazardCategory: "general", Examples: []string{"Aenderungsantrag mit Sicherheitsbewertung", "Risikobeurteilung bei jeder Aenderung aktualisieren"}, NormReferences: []string{"ISO 12100:2010 Kap. 6.1", "IEC 62443-2-4"}}, + {ID: "M183", ReductionType: "information", SubType: "organizational", Name: "Aenderungsmanagement", Description: "Strukturiertes Change-Management mit Sicherheitsbewertung jeder Aenderung.", HazardCategory: "general", Examples: []string{"Aenderungsantrag mit Sicherheitsbewertung", "Risikobeurteilung bei jeder Aenderung aktualisieren"}, NormReferences: []string{"ISO 12100 — Allgemeines Vorgehen", "IEC 62443-2-4"}}, {ID: "M184", ReductionType: "information", SubType: "organizational", Name: "Auditverfahren", Description: "Regelmaessige Ueberpruefung der Wirksamkeit aller Sicherheitsmassnahmen.", HazardCategory: "general", Examples: []string{"Internes Sicherheitsaudit jaehrlich", "Massnahmen aus Audits nachverfolgen"}, NormReferences: []string{"ISO 45001", "DGUV Vorschrift 1"}}, {ID: "M185", ReductionType: "information", SubType: "organizational", Name: "Passwortpolicy", Description: "Mindestanforderungen an Passwoerter fuer Steuerungssysteme.", HazardCategory: "cyber_network", Examples: []string{"Mindestlaenge und Komplexitaet", "Standardpasswoerter bei Inbetriebnahme aendern"}, NormReferences: []string{"IEC 62443-2-1"}}, {ID: "M186", ReductionType: "information", SubType: "organizational", Name: "Backup-Anweisung", Description: "Regelmaessige Sicherung von Steuerungsprogrammen und Konfigurationsdaten.", HazardCategory: "software_control", Examples: []string{"Woechentliches Backup der SPS-Programme", "Backup nach jeder Parameteraenderung"}, NormReferences: []string{"IEC 62443-2-1"}}, {ID: "M187", ReductionType: "information", SubType: "organizational", Name: "Konfigurationsrichtlinie", Description: "Festlegung wie sicherheitsrelevante Parameter dokumentiert und freigegeben werden.", HazardCategory: "software_control", Examples: []string{"Parameterliste mit Wertebereichen", "Freigabeprozess fuer Aenderungen"}, NormReferences: []string{"IEC 62443-2-1", "IEC 62443-4-1"}}, {ID: "M188", ReductionType: "information", SubType: "organizational", Name: "Update-Freigabeprozess", Description: "Definierter Prozess stellt sicher dass Updates vor Einspielen geprueft werden.", HazardCategory: "software_control", Examples: []string{"Testprozedur auf Testmaschine", "Freigabe durch Sicherheitsbeauftragten"}, NormReferences: []string{"IEC 62443-2-3", "IEC 62443-4-1"}}, - {ID: "M189", ReductionType: "information", SubType: "organizational", Name: "Reset-Anweisung", Description: "Sichere Vorgehensweise zum Quittieren von Fehlern und Wiederanlauf.", HazardCategory: "software_control", Examples: []string{"Reset-Prozedur nach Not-Halt", "Pruefschritte vor Produktionsfreigabe"}, NormReferences: []string{"ISO 12100:2010 Kap. 6.4.5.1 d"}}, + {ID: "M189", ReductionType: "information", SubType: "organizational", Name: "Reset-Anweisung", Description: "Sichere Vorgehensweise zum Quittieren von Fehlern und Wiederanlauf.", HazardCategory: "software_control", Examples: []string{"Reset-Prozedur nach Not-Halt", "Pruefschritte vor Produktionsfreigabe"}, NormReferences: []string{"ISO 12100 — Benutzerinformation"}}, {ID: "M190", ReductionType: "information", SubType: "organizational", Name: "Inbetriebnahmecheckliste", Description: "Vor erstem Betrieb alle Sicherheitsvoraussetzungen systematisch pruefen.", HazardCategory: "general", Examples: []string{"Schutzeinrichtungen auf korrekte Montage", "Sicherheitsfunktionen einzeln testen"}, NormReferences: []string{"BetrSichV §14", "TRBS 1201"}}, - {ID: "M191", ReductionType: "information", SubType: "organizational", Name: "Stilllegungscheckliste", Description: "Sichere Ausserbetriebnahme und Entsorgung der Maschine.", HazardCategory: "general", Examples: []string{"Energiequellen sicher trennen", "Betriebsstoffe umweltgerecht entsorgen"}, NormReferences: []string{"2006/42/EG Anhang I Kap. 1.7.4.2 v"}}, + {ID: "M191", ReductionType: "information", SubType: "organizational", Name: "Stilllegungscheckliste", Description: "Sichere Ausserbetriebnahme und Entsorgung der Maschine.", HazardCategory: "general", Examples: []string{"Energiequellen sicher trennen", "Betriebsstoffe umweltgerecht entsorgen"}, NormReferences: []string{"MRL 2006/42/EG — Betriebsanleitung"}}, {ID: "M192", ReductionType: "information", SubType: "organizational", Name: "Sicherheitsprotokoll", Description: "Dokumentation aller durchgefuehrten Sicherheitspruefungen und Ergebnisse.", HazardCategory: "general", Examples: []string{"Pruefprotokoll wiederkehrende Pruefungen", "Abnahmeprotokoll nach Umbau"}, NormReferences: []string{"BetrSichV §14", "TRBS 1201"}}, // ── Marking (M193-M196) ───────────────────────────────────────────── - {ID: "M193", ReductionType: "information", SubType: "marking", Name: "Typenschild", Description: "Dauerhaftes Typenschild mit Herstellerangaben, Leistung und CE-Kennzeichnung.", HazardCategory: "general", Examples: []string{"CE-Kennzeichnung auf Typenschild", "Baujahr und Seriennummer"}, NormReferences: []string{"2006/42/EG Anhang I Kap. 1.7.3", "ISO 12100:2010 Kap. 6.4.4"}}, + {ID: "M193", ReductionType: "information", SubType: "marking", Name: "Typenschild", Description: "Dauerhaftes Typenschild mit Herstellerangaben, Leistung und CE-Kennzeichnung.", HazardCategory: "general", Examples: []string{"CE-Kennzeichnung auf Typenschild", "Baujahr und Seriennummer"}, NormReferences: []string{"MRL 2006/42/EG — Warnhinweise", "ISO 12100 — Benutzerinformation"}}, {ID: "M194", ReductionType: "information", SubType: "marking", Name: "Leitungskennzeichnung", Description: "Eindeutige Kennzeichnung aller Leitungen nach Medium, Flussrichtung und Druck.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Farbcodierung nach Norm", "Flussrichtungspfeile an Leitungen"}, NormReferences: []string{"ISO 14726", "DIN 2403"}}, - {ID: "M195", ReductionType: "information", SubType: "marking", Name: "Komponentenkennzeichnung", Description: "Alle sicherheitsrelevanten Komponenten eindeutig beschriftet fuer Wartung.", HazardCategory: "general", Examples: []string{"Kabelmarkierungen an Klemmen", "Ventilkennzeichnung im Hydraulikplan"}, NormReferences: []string{"IEC 60204-1 Kap. 16", "ISO 12100:2010 Kap. 6.4.4"}}, + {ID: "M195", ReductionType: "information", SubType: "marking", Name: "Komponentenkennzeichnung", Description: "Alle sicherheitsrelevanten Komponenten eindeutig beschriftet fuer Wartung.", HazardCategory: "general", Examples: []string{"Kabelmarkierungen an Klemmen", "Ventilkennzeichnung im Hydraulikplan"}, NormReferences: []string{"IEC 60204-1 — Kennzeichnung", "ISO 12100 — Benutzerinformation"}}, {ID: "M196", ReductionType: "information", SubType: "marking", Name: "Pruefplakette", Description: "Plakette dokumentiert erfolgte Pruefung mit Datum und naechstem Prueftermin.", HazardCategory: "general", Examples: []string{"Pruefplakette an Druckbehaelter", "DGUV V3-Pruefplakette an Elektrogeraet"}, NormReferences: []string{"BetrSichV §14", "DGUV Vorschrift 3"}}, // ── Checklisten (M197-M200) ───────────────────────────────────────── diff --git a/ai-compliance-sdk/internal/iace/measures_library_mandatory.go b/ai-compliance-sdk/internal/iace/measures_library_mandatory.go index 6c46fd5..29c8907 100644 --- a/ai-compliance-sdk/internal/iace/measures_library_mandatory.go +++ b/ai-compliance-sdk/internal/iace/measures_library_mandatory.go @@ -8,54 +8,54 @@ package iace func GetMandatoryNormMeasures() []ProtectiveMeasureEntry { return []ProtectiveMeasureEntry{ // ── Pressen (EN 692, EN 693, ISO 16092) ───────────────────── - {ID: "MN001", ReductionType: "protective", SubType: "safety_control", Name: "Zweihandschaltung Typ IIIC", Description: "Zweihandschaltung nach EN 574 Typ IIIC fuer Pressen mit Handbeschickung.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 692 Kap. 5.3.3", NormReferences: []string{"EN 692", "EN 574"}}, - {ID: "MN002", ReductionType: "protective", SubType: "safety_control", Name: "Stoesselabsturzsicherung", Description: "Mechanische oder hydraulische Stoesselabsturzsicherung bei vertikalen Pressen.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 693 Kap. 5.3.7", NormReferences: []string{"EN 693", "EN 692"}}, - {ID: "MN003", ReductionType: "protective", SubType: "movable_guard", Name: "Schutztuere mit Zuhaltung (Presse)", Description: "Bewegliche trennende Schutzeinrichtung mit Zuhaltung am Werkzeugeinbauraum.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 692 Kap. 5.3.2", NormReferences: []string{"EN 692", "ISO 14119"}}, + {ID: "MN001", ReductionType: "protective", SubType: "safety_control", Name: "Zweihandschaltung Typ IIIC", Description: "Zweihandschaltung nach EN 574 Typ IIIC fuer Pressen mit Handbeschickung.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 692 — Sicherheit mechanische Pressen", NormReferences: []string{"EN 692", "EN 574"}}, + {ID: "MN002", ReductionType: "protective", SubType: "safety_control", Name: "Stoesselabsturzsicherung", Description: "Mechanische oder hydraulische Stoesselabsturzsicherung bei vertikalen Pressen.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 693 — Sicherheit hydraulische Pressen", NormReferences: []string{"EN 693", "EN 692"}}, + {ID: "MN003", ReductionType: "protective", SubType: "movable_guard", Name: "Schutztuere mit Zuhaltung (Presse)", Description: "Bewegliche trennende Schutzeinrichtung mit Zuhaltung am Werkzeugeinbauraum.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 692 — Sicherheit mechanische Pressen", NormReferences: []string{"EN 692", "ISO 14119"}}, // ── Roboter/Cobot (ISO 10218, ISO/TS 15066) ───────────────── - {ID: "MN004", ReductionType: "protective", SubType: "safety_control", Name: "Kraft-/Geschwindigkeitsbegrenzung Cobot", Description: "Begrenzung von Kontaktkraft und TCP-Geschwindigkeit gemaess ISO/TS 15066 Tabelle A.2.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "ISO/TS 15066 Kap. 5.5.4", NormReferences: []string{"ISO/TS 15066", "ISO 10218-1"}}, - {ID: "MN005", ReductionType: "protective", SubType: "safety_control", Name: "Sicherheitsbewerteter Stopp (Roboter)", Description: "Sicherheitsbewerteter ueberwachter Stopp bei Personeneintritt in den Arbeitsraum.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "ISO 10218-1 Kap. 5.5.2", NormReferences: []string{"ISO 10218-1", "ISO 10218-2"}}, - {ID: "MN006", ReductionType: "protective", SubType: "electro_sensitive", Name: "Sicherheitsscanner Cobot-Arbeitsraum", Description: "Optoelektronische Raumüberwachung fuer Geschwindigkeitsreduzierung bei Annaeherung.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "ISO 10218-2 Kap. 5.11", NormReferences: []string{"ISO 10218-2", "IEC 61496-3"}}, + {ID: "MN004", ReductionType: "protective", SubType: "safety_control", Name: "Kraft-/Geschwindigkeitsbegrenzung Cobot", Description: "Begrenzung von Kontaktkraft und TCP-Geschwindigkeit gemaess ISO/TS 15066 Tabelle A.2.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "ISO/TS 15066 — Kraft-/Druckgrenzwerte Cobot", NormReferences: []string{"ISO/TS 15066", "ISO 10218-1"}}, + {ID: "MN005", ReductionType: "protective", SubType: "safety_control", Name: "Sicherheitsbewerteter Stopp (Roboter)", Description: "Sicherheitsbewerteter ueberwachter Stopp bei Personeneintritt in den Arbeitsraum.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "ISO 10218-1 — Geschwindigkeitsbegrenzung Roboter", NormReferences: []string{"ISO 10218-1", "ISO 10218-2"}}, + {ID: "MN006", ReductionType: "protective", SubType: "electro_sensitive", Name: "Sicherheitsscanner Cobot-Arbeitsraum", Description: "Optoelektronische Raumüberwachung fuer Geschwindigkeitsreduzierung bei Annaeherung.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "ISO 10218-2 — Kollaborativer Betrieb", NormReferences: []string{"ISO 10218-2", "IEC 61496-3"}}, // ── Aufzuege (EN 81-20) ────────────────────────────────────── - {ID: "MN007", ReductionType: "protective", SubType: "safety_control", Name: "Fangvorrichtung Aufzug", Description: "Mechanische Fangvorrichtung die den Fahrkorb bei Seilbruch oder Uebergeschwindigkeit stoppt.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 81-20 Kap. 5.6", NormReferences: []string{"EN 81-20"}}, - {ID: "MN008", ReductionType: "protective", SubType: "safety_control", Name: "Geschwindigkeitsbegrenzer Aufzug", Description: "Geschwindigkeitsbegrenzer der bei Uebergeschwindigkeit die Fangvorrichtung ausloest.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 81-20 Kap. 5.6.2", NormReferences: []string{"EN 81-20"}}, - {ID: "MN009", ReductionType: "protective", SubType: "safety_control", Name: "Puffer im Aufzugsschacht", Description: "Energieabsorbierende Puffer am Schachtboden und -decke als letzte Sicherung.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 81-20 Kap. 5.8", NormReferences: []string{"EN 81-20"}}, + {ID: "MN007", ReductionType: "protective", SubType: "safety_control", Name: "Fangvorrichtung Aufzug", Description: "Mechanische Fangvorrichtung die den Fahrkorb bei Seilbruch oder Uebergeschwindigkeit stoppt.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 81-20 — Sicherheit Aufzuege", NormReferences: []string{"EN 81-20"}}, + {ID: "MN008", ReductionType: "protective", SubType: "safety_control", Name: "Geschwindigkeitsbegrenzer Aufzug", Description: "Geschwindigkeitsbegrenzer der bei Uebergeschwindigkeit die Fangvorrichtung ausloest.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 81-20 — Sicherheit Aufzuege", NormReferences: []string{"EN 81-20"}}, + {ID: "MN009", ReductionType: "protective", SubType: "safety_control", Name: "Puffer im Aufzugsschacht", Description: "Energieabsorbierende Puffer am Schachtboden und -decke als letzte Sicherung.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 81-20 — Sicherheit Aufzuege", NormReferences: []string{"EN 81-20"}}, // ── Flurfoerderzeuge (EN 1726, EN ISO 3691) ────────────────── - {ID: "MN010", ReductionType: "protective", SubType: "safety_control", Name: "Redundante Lastaufnahme (Gabelstapler)", Description: "Zweifache Lastaufhaengung: Jede Kette/Gurt muss einzeln die volle Last tragen koennen.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 1726-1 Kap. 5.3", NormReferences: []string{"EN 1726-1", "EN ISO 3691-1"}}, - {ID: "MN011", ReductionType: "protective", SubType: "safety_control", Name: "Kippschutz Gabelstapler", Description: "Standsicherheitsnachweis bei max. Nennlast und maximaler Hubhoehe.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 1726-1 Kap. 5.2", NormReferences: []string{"EN 1726-1"}}, + {ID: "MN010", ReductionType: "protective", SubType: "safety_control", Name: "Redundante Lastaufnahme (Gabelstapler)", Description: "Zweifache Lastaufhaengung: Jede Kette/Gurt muss einzeln die volle Last tragen koennen.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 1726-1 — Sicherheit Flurfoerderzeuge", NormReferences: []string{"EN 1726-1", "EN ISO 3691-1"}}, + {ID: "MN011", ReductionType: "protective", SubType: "safety_control", Name: "Kippschutz Gabelstapler", Description: "Standsicherheitsnachweis bei max. Nennlast und maximaler Hubhoehe.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 1726-1 — Sicherheit Flurfoerderzeuge", NormReferences: []string{"EN 1726-1"}}, // ── Holzbearbeitung (EN 1870, EN 848) ──────────────────────── - {ID: "MN012", ReductionType: "protective", SubType: "fixed_guard", Name: "Spaltkeil Kreissaege", Description: "Spaltkeil hinter dem Saegeblatt verhindert Rueckschlag.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 1870-1 Kap. 5.3.3", NormReferences: []string{"EN 1870-1"}}, - {ID: "MN013", ReductionType: "protective", SubType: "fixed_guard", Name: "Saegeblattschutzhaube", Description: "Schutzhaube ueber dem nicht arbeitenden Teil des Saegeblatts.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 1870-1 Kap. 5.3.2", NormReferences: []string{"EN 1870-1"}}, + {ID: "MN012", ReductionType: "protective", SubType: "fixed_guard", Name: "Spaltkeil Kreissaege", Description: "Spaltkeil hinter dem Saegeblatt verhindert Rueckschlag.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 1870-1 — Sicherheit Kreissaegen", NormReferences: []string{"EN 1870-1"}}, + {ID: "MN013", ReductionType: "protective", SubType: "fixed_guard", Name: "Saegeblattschutzhaube", Description: "Schutzhaube ueber dem nicht arbeitenden Teil des Saegeblatts.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 1870-1 — Sicherheit Kreissaegen", NormReferences: []string{"EN 1870-1"}}, // ── Krane (EN 15011, EN 13000) ─────────────────────────────── - {ID: "MN014", ReductionType: "protective", SubType: "safety_control", Name: "Ueberlastsicherung Kran", Description: "Automatische Lastmomentbegrenzung die Hub bei Ueberschreitung der Nennlast sperrt.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 15011 Kap. 5.3", NormReferences: []string{"EN 15011", "EN 13000"}}, - {ID: "MN015", ReductionType: "protective", SubType: "safety_control", Name: "Endschalter Kran (Hub/Fahrt)", Description: "Begrenzungsschalter fuer Hubbewegung, Katzfahrt und Kranfahrt.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 15011 Kap. 5.2.6", NormReferences: []string{"EN 15011"}}, + {ID: "MN014", ReductionType: "protective", SubType: "safety_control", Name: "Ueberlastsicherung Kran", Description: "Automatische Lastmomentbegrenzung die Hub bei Ueberschreitung der Nennlast sperrt.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 15011 — Sicherheit Brueckenkrane", NormReferences: []string{"EN 15011", "EN 13000"}}, + {ID: "MN015", ReductionType: "protective", SubType: "safety_control", Name: "Endschalter Kran (Hub/Fahrt)", Description: "Begrenzungsschalter fuer Hubbewegung, Katzfahrt und Kranfahrt.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 15011 — Sicherheit Brueckenkrane", NormReferences: []string{"EN 15011"}}, // ── Allgemein (ISO 13850, EN 60204-1) ──────────────────────── - {ID: "MN016", ReductionType: "protective", SubType: "emergency_stop", Name: "Not-Halt Kategorie 0 oder 1", Description: "Not-Halt-Einrichtung an jeder Bedienstelle, gut sichtbar und erreichbar.", HazardCategory: "safety_function", Mandatory: true, MandatoryNorm: "ISO 13850 Kap. 4.1", NormReferences: []string{"ISO 13850", "EN 60204-1"}}, - {ID: "MN017", ReductionType: "protective", SubType: "electrical_protection", Name: "Hauptschalter absperrbar", Description: "Hauptschalter muss in Aus-Stellung abschliessbar sein (Lockout).", HazardCategory: "electrical", Mandatory: true, MandatoryNorm: "EN 60204-1 Kap. 5.3", NormReferences: []string{"EN 60204-1"}}, - {ID: "MN018", ReductionType: "protective", SubType: "electrical_protection", Name: "Schutzleiteranschluss", Description: "Alle leitfaehigen Gehaeuseteile muessen mit dem Schutzleiter verbunden sein.", HazardCategory: "electrical", Mandatory: true, MandatoryNorm: "EN 60204-1 Kap. 8", NormReferences: []string{"EN 60204-1"}}, + {ID: "MN016", ReductionType: "protective", SubType: "emergency_stop", Name: "Not-Halt Kategorie 0 oder 1", Description: "Not-Halt-Einrichtung an jeder Bedienstelle, gut sichtbar und erreichbar.", HazardCategory: "safety_function", Mandatory: true, MandatoryNorm: "ISO 13850 — Not-Halt-Gestaltung", NormReferences: []string{"ISO 13850", "EN 60204-1"}}, + {ID: "MN017", ReductionType: "protective", SubType: "electrical_protection", Name: "Hauptschalter absperrbar", Description: "Hauptschalter muss in Aus-Stellung abschliessbar sein (Lockout).", HazardCategory: "electrical", Mandatory: true, MandatoryNorm: "EN 60204-1 — Trennen und Ausschalten", NormReferences: []string{"EN 60204-1"}}, + {ID: "MN018", ReductionType: "protective", SubType: "electrical_protection", Name: "Schutzleiteranschluss", Description: "Alle leitfaehigen Gehaeuseteile muessen mit dem Schutzleiter verbunden sein.", HazardCategory: "electrical", Mandatory: true, MandatoryNorm: "EN 60204-1 — Steuerstromkreise", NormReferences: []string{"EN 60204-1"}}, // ── AGV (EN ISO 3691-4) ────────────────────────────────────── - {ID: "MN019", ReductionType: "protective", SubType: "safety_control", Name: "Personenerkennung AGV", Description: "Sicherheitssensor (Laserscanner) zur Personenerkennung im Fahrweg des AGV.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN ISO 3691-4 Kap. 4.7", NormReferences: []string{"EN ISO 3691-4"}}, - {ID: "MN020", ReductionType: "protective", SubType: "safety_control", Name: "Notbremseinrichtung AGV", Description: "Automatische Bremsung bei Hinderniserkennung, manueller Not-Halt am Fahrzeug.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN ISO 3691-4 Kap. 4.4", NormReferences: []string{"EN ISO 3691-4"}}, + {ID: "MN019", ReductionType: "protective", SubType: "safety_control", Name: "Personenerkennung AGV", Description: "Sicherheitssensor (Laserscanner) zur Personenerkennung im Fahrweg des AGV.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN ISO 3691-4 — Fahrerlose Transportsysteme", NormReferences: []string{"EN ISO 3691-4"}}, + {ID: "MN020", ReductionType: "protective", SubType: "safety_control", Name: "Notbremseinrichtung AGV", Description: "Automatische Bremsung bei Hinderniserkennung, manueller Not-Halt am Fahrzeug.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN ISO 3691-4 — Fahrerlose Transportsysteme", NormReferences: []string{"EN ISO 3691-4"}}, // ── Kettensaege (ISO 11681) ────────────────────────────────── - {ID: "MN021", ReductionType: "protective", SubType: "safety_control", Name: "Kettenbremse (Kettensaege)", Description: "Kettenbremse die bei Rueckschlag die Kette innerhalb von 0,12s stoppt.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "ISO 11681-1 Kap. 4.11", NormReferences: []string{"ISO 11681-1"}}, + {ID: "MN021", ReductionType: "protective", SubType: "safety_control", Name: "Kettenbremse (Kettensaege)", Description: "Kettenbremse die bei Rueckschlag die Kette innerhalb von 0,12s stoppt.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "ISO 11681-1 — Kettensaegen Vibrationsschutz", NormReferences: []string{"ISO 11681-1"}}, // ── Fahrtreppen (EN 115-1) ─────────────────────────────────── - {ID: "MN022", ReductionType: "protective", SubType: "safety_control", Name: "Kammplatte Fahrtreppe", Description: "Kammplatten am Zu- und Abgang verhindern Einklemmen von Schuhwerk und Kleidung.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 115-1 Kap. 5.6", NormReferences: []string{"EN 115-1"}}, + {ID: "MN022", ReductionType: "protective", SubType: "safety_control", Name: "Kammplatte Fahrtreppe", Description: "Kammplatten am Zu- und Abgang verhindern Einklemmen von Schuhwerk und Kleidung.", HazardCategory: "mechanical", Mandatory: true, MandatoryNorm: "EN 115-1 — Sicherheit Fahrtreppen", NormReferences: []string{"EN 115-1"}}, // ── Sicherheitsfunktionen allgemein (ISO 13849-1) ──────────── - {ID: "MN023", ReductionType: "protective", SubType: "safety_control", Name: "Sicherheitsfunktion PL/SIL-konform", Description: "Jede Sicherheitsfunktion muss das per Risikograph ermittelte PL/SIL nachweislich erreichen.", HazardCategory: "safety_function", Mandatory: true, MandatoryNorm: "ISO 13849-1 Kap. 4", NormReferences: []string{"ISO 13849-1", "IEC 62061"}}, + {ID: "MN023", ReductionType: "protective", SubType: "safety_control", Name: "Sicherheitsfunktion PL/SIL-konform", Description: "Jede Sicherheitsfunktion muss das per Risikograph ermittelte PL/SIL nachweislich erreichen.", HazardCategory: "safety_function", Mandatory: true, MandatoryNorm: "ISO 13849-1 — Gestaltungsleitsaetze", NormReferences: []string{"ISO 13849-1", "IEC 62061"}}, // ── Druckgeraete (EN ISO 4126-1) ───────────────────────────── - {ID: "MN024", ReductionType: "protective", SubType: "fluid_protection", Name: "Sicherheitsventil Druckbehaelter", Description: "Jeder Druckbehaelter muss mit einem Sicherheitsventil gegen unzulaessigen Ueberdruck gesichert sein.", HazardCategory: "pneumatic_hydraulic", Mandatory: true, MandatoryNorm: "EN ISO 4126-1 Kap. 4", NormReferences: []string{"EN ISO 4126-1"}}, + {ID: "MN024", ReductionType: "protective", SubType: "fluid_protection", Name: "Sicherheitsventil Druckbehaelter", Description: "Jeder Druckbehaelter muss mit einem Sicherheitsventil gegen unzulaessigen Ueberdruck gesichert sein.", HazardCategory: "pneumatic_hydraulic", Mandatory: true, MandatoryNorm: "EN ISO 4126-1 — Sicherheitsventile", NormReferences: []string{"EN ISO 4126-1"}}, // ── Schweissen (EN 60974-1) ────────────────────────────────── - {ID: "MN025", ReductionType: "protective", SubType: "electrical_protection", Name: "Leerlaufspannungsbegrenzung Schweissgeraet", Description: "Leerlaufspannung bei Lichtbogenhandschweissgeraeten max. 113V Spitze (AC) bzw. 113V (DC).", HazardCategory: "electrical", Mandatory: true, MandatoryNorm: "EN 60974-1 Kap. 7.3", NormReferences: []string{"EN 60974-1"}}, + {ID: "MN025", ReductionType: "protective", SubType: "electrical_protection", Name: "Leerlaufspannungsbegrenzung Schweissgeraet", Description: "Leerlaufspannung bei Lichtbogenhandschweissgeraeten max. 113V Spitze (AC) bzw. 113V (DC).", HazardCategory: "electrical", Mandatory: true, MandatoryNorm: "EN 60974-1 — Schweissgeraete Isolierung", NormReferences: []string{"EN 60974-1"}}, } } diff --git a/ai-compliance-sdk/internal/iace/measures_library_osha.go b/ai-compliance-sdk/internal/iace/measures_library_osha.go new file mode 100644 index 0000000..42ff2e5 --- /dev/null +++ b/ai-compliance-sdk/internal/iace/measures_library_osha.go @@ -0,0 +1,107 @@ +package iace + +// getOSHAMeasures returns protective measures derived from OSHA Technical +// Manual and 29 CFR 1910 requirements. Each measure is an independently +// formulated obligation — no OSHA text is reproduced. +// IDs: M302–M371 (70 measures). +func getOSHAMeasures() []ProtectiveMeasureEntry { + return []ProtectiveMeasureEntry{ + // ══════════════════════════════════════════════════════════════ + // Machine Guarding (15 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M302", ReductionType: "protection", SubType: "fixed_guard", Name: "Gefahrstelle mit Punktschweissschutz sichern", Description: "Jede Gefahrstelle an der ein Bediener verletzt werden kann wird mit einer geeigneten Schutzeinrichtung versehen.", HazardCategory: "mechanical", Examples: []string{"Feste Schutzverkleidung an Bandmaschine", "Schutzgitter an Praegestation"}, NormReferences: []string{"OSHA 29 CFR 1910.212 — Machine Guarding", "ISO 14120"}}, + {ID: "M303", ReductionType: "protection", SubType: "fixed_guard", Name: "Antriebselemente vollstaendig einkapseln", Description: "Alle Antriebselemente wie Riemen, Ketten, Zahnraeder und Kupplungen werden vollstaendig eingekapselt.", HazardCategory: "mechanical", Examples: []string{"Kettenkasten mit Deckel", "Riemenschutzhaube mit Zugangsverriegelung"}, NormReferences: []string{"OSHA 29 CFR 1910.219 — Mechanical Power Transmission", "ISO 14120"}}, + {ID: "M304", ReductionType: "protection", SubType: "fixed_guard", Name: "Schleifmaschinen mit Schutzhauben versehen", Description: "Schleifscheiben werden mit Schutzhauben versehen die mindestens den oberen Halbkreis und die Seiten abdecken.", HazardCategory: "mechanical", Examples: []string{"Schutzhaube Standschleifmaschine", "Seitliche Scheibenabdeckung"}, NormReferences: []string{"OSHA 29 CFR 1910.215 — Abrasive Wheel Machinery", "EN 13218"}}, + {ID: "M305", ReductionType: "protection", SubType: "safety_control", Name: "Schutzeinrichtung bei Saegeblatt-Rueckschlag", Description: "Saegen erhalten Rueckschlagsicherungen die unkontrolliertes Zurueckschleudern des Werkstuecks verhindern.", HazardCategory: "mechanical", Examples: []string{"Spaltkeil hinter dem Saegeblatt", "Anti-Kickback-Greifer an Vorschubeinrichtung"}, NormReferences: []string{"OSHA 29 CFR 1910.213 — Woodworking Machinery", "EN 1870-1 — Sicherheit Kreissaegen"}}, + {ID: "M306", ReductionType: "protection", SubType: "fixed_guard", Name: "Materialzufuehr-Oeffnungen auf Minimum begrenzen", Description: "Oeffnungen fuer Materialzufuehr werden so klein wie moeglich gehalten um ein Hineingreifen in den Gefahrbereich auszuschliessen.", HazardCategory: "mechanical", Examples: []string{"Zufihrschlitz auf Materialquerschnitt begrenzt", "Trichter mit Sicherheitsabstand"}, NormReferences: []string{"OSHA 29 CFR 1910.212 — Machine Guarding", "ISO 13857"}}, + {ID: "M307", ReductionType: "protection", SubType: "safety_control", Name: "Schutzeinrichtung gegen Werkzeugbruch", Description: "Maschinen mit hoher Rotationsenergie erhalten Splitterschutz der Bruchstuecke zuverlaessig auffaengt.", HazardCategory: "mechanical", Examples: []string{"Splitterschutzhaube an Schleifmaschine", "Berstschutzring an Schwungrad"}, NormReferences: []string{"OSHA 29 CFR 1910.215 — Abrasive Wheel Machinery", "ISO 14120"}}, + {ID: "M308", ReductionType: "protection", SubType: "movable_guard", Name: "Automatische Schutzeinrichtung an Pressen", Description: "Pressen mit Handbeschickung erhalten automatische Schutzeinrichtungen die Haende vor Hubbeginn aus dem Gefahrbereich entfernen.", HazardCategory: "mechanical", Examples: []string{"Handwegschieber an Exzenterpresse", "Lichtvorhang mit Mutingfunktion"}, NormReferences: []string{"OSHA 29 CFR 1910.217 — Mechanical Power Presses", "EN 692 — Sicherheit mechanische Pressen"}}, + {ID: "M309", ReductionType: "protection", SubType: "safety_control", Name: "Einzelhubsicherung an Exzenterpressen", Description: "Exzenterpressen werden so gesichert, dass der Stoessel pro Betaetigungszyklus nur einen einzigen Hub ausfuehrt.", HazardCategory: "mechanical", Examples: []string{"Einzelhubsteuerung mit Nachlaufsicherung", "Steuerschaltung gegen Doppelhub"}, NormReferences: []string{"OSHA 29 CFR 1910.217 — Mechanical Power Presses", "EN 692 — Sicherheit mechanische Pressen"}}, + {ID: "M310", ReductionType: "information", SubType: "organizational", Name: "Pruefung von Schutzeinrichtungen vor Schichtbeginn", Description: "Bediener pruefen vor jedem Schichtbeginn die Funktion aller Schutzeinrichtungen und dokumentieren das Ergebnis.", HazardCategory: "mechanical", Examples: []string{"Funktionstest Lichtgitter", "Pruefung Sicherheitsschalter Schutztuer"}, NormReferences: []string{"OSHA 29 CFR 1910.217 — Mechanical Power Presses", "BetrSichV §10"}}, + {ID: "M311", ReductionType: "protection", SubType: "fixed_guard", Name: "Verkleidung an Foerderbaendern", Description: "Foerderbaender erhalten an Umlenk- und Spannstationen Schutzverkleidungen gegen Einzug und Quetschung.", HazardCategory: "mechanical", Examples: []string{"Schutzhauben an Antriebstrommeln", "Verkleidung an Umlenkrollen"}, NormReferences: []string{"OSHA 29 CFR 1910.212 — Machine Guarding", "EN 620"}}, + {ID: "M312", ReductionType: "protection", SubType: "safety_control", Name: "Schutzeinrichtung nicht umgehbar gestalten", Description: "Schutzeinrichtungen werden so konstruiert, dass sie nicht ohne Werkzeug entfernt oder umgangen werden koennen.", HazardCategory: "mechanical", Examples: []string{"Codierte Sicherheitsschalter", "Manipulationsresistente Befestigung"}, NormReferences: []string{"OSHA 29 CFR 1910.212 — Machine Guarding", "ISO 14119"}}, + {ID: "M313", ReductionType: "design", SubType: "geometry", Name: "Schutzeinrichtung beeintraechtigt Bedienung nicht", Description: "Schutzeinrichtungen werden so gestaltet, dass die normale Bedienung und Produktion nicht behindert wird.", HazardCategory: "mechanical", Examples: []string{"Transparente Schutzhauben fuer Sicht", "Schnellspannsystem fuer Werkzeugwechsel"}, NormReferences: []string{"OSHA 29 CFR 1910.212 — Machine Guarding", "ISO 14120"}}, + {ID: "M314", ReductionType: "protection", SubType: "fixed_guard", Name: "Robuste Schutzeinrichtung gegen Auswurf", Description: "Schutzeinrichtungen halten dem Aufprall ausgeworfener Teile stand ohne zu versagen.", HazardCategory: "mechanical", Examples: []string{"Polycarbonat-Schutzscheibe gegen Spaeneflug", "Stahlgehaeuse gegen Schleifscheibenbruch"}, NormReferences: []string{"OSHA 29 CFR 1910.212 — Machine Guarding", "ISO 14120"}}, + {ID: "M315", ReductionType: "protection", SubType: "fixed_guard", Name: "Schutzeinrichtung an stationaeren Maschinen fest verankern", Description: "Schutzeinrichtungen an stationaeren Maschinen werden fest am Maschinenrahmen oder Boden verankert.", HazardCategory: "mechanical", Examples: []string{"Schutzgitter mit Bodenverankerung", "Verschraubte Maschinenverkleidung"}, NormReferences: []string{"OSHA 29 CFR 1910.212 — Machine Guarding", "ISO 14120"}}, + {ID: "M316", ReductionType: "information", SubType: "training", Name: "Unterweisung Maschinenschutzeinrichtungen", Description: "Bediener werden in der Funktion, Pruefung und dem korrekten Umgang mit allen Schutzeinrichtungen geschult.", HazardCategory: "mechanical", Examples: []string{"Schulung bei Maschinenneuanschaffung", "Auffrischung bei Schutzeinrichtungsaenderung"}, NormReferences: []string{"OSHA 29 CFR 1910.212 — Machine Guarding", "BetrSichV §12"}}, + + // ══════════════════════════════════════════════════════════════ + // Lockout/Tagout — LOTO (10 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M317", ReductionType: "information", SubType: "organizational", Name: "LOTO-Verfahren schriftlich festlegen", Description: "Fuer jede Maschine wird ein spezifisches Lockout-Tagout-Verfahren dokumentiert das alle Energiequellen und Absperrpunkte beschreibt.", HazardCategory: "electrical", Examples: []string{"Maschinen-spezifische LOTO-Anweisung", "Energiequellen-Inventar erstellen"}, NormReferences: []string{"OSHA 29 CFR 1910.147 — Lockout/Tagout", "ISO 14118"}}, + {ID: "M318", ReductionType: "protection", SubType: "electrical_protection", Name: "Persoenliche Sicherheitsschloesser verwenden", Description: "Jeder Instandhalter verwendet ein persoenliches Sicherheitsschloss das nur er selbst entfernen kann.", HazardCategory: "electrical", Examples: []string{"Individuell gekennzeichnete Vorhangschloesser", "Ein Schloss pro Person pro Absperrpunkt"}, NormReferences: []string{"OSHA 29 CFR 1910.147 — Lockout/Tagout", "ISO 14118"}}, + {ID: "M319", ReductionType: "information", SubType: "organizational", Name: "Spannungsfreiheit vor Arbeitsbeginn pruefen", Description: "Nach dem Absperren und Verriegeln wird die tatsaechliche Spannungs- und Energiefreiheit vor Arbeitsbeginn verifiziert.", HazardCategory: "electrical", Examples: []string{"Spannungspruefung mit geeignetem Messgeraet", "Funktionstest des Startschalters"}, NormReferences: []string{"OSHA 29 CFR 1910.147 — Lockout/Tagout", "DGUV Vorschrift 3"}}, + {ID: "M320", ReductionType: "information", SubType: "organizational", Name: "Gespeicherte Energie kontrolliert abbauen", Description: "Nach dem Absperren werden alle gespeicherten Energien (Druck, Federn, Schwerkraft, thermische Energie) kontrolliert abgebaut.", HazardCategory: "electrical", Examples: []string{"Hydraulikdruck ablassen", "Kondensatoren entladen"}, NormReferences: []string{"OSHA 29 CFR 1910.147 — Lockout/Tagout", "ISO 14118"}}, + {ID: "M321", ReductionType: "information", SubType: "organizational", Name: "LOTO-Verfahren bei Schichtwechsel", Description: "Bei Schichtwechsel waehrend einer LOTO-gesicherten Wartung erfolgt eine geordnete Uebergabe der Schloesser.", HazardCategory: "electrical", Examples: []string{"Uebergabeprotokoll bei Schichtwechsel", "Neues Schloss anbringen bevor altes entfernt wird"}, NormReferences: []string{"OSHA 29 CFR 1910.147 — Lockout/Tagout", "ISO 14118"}}, + {ID: "M322", ReductionType: "information", SubType: "organizational", Name: "Betroffene Mitarbeiter vor LOTO informieren", Description: "Alle Mitarbeiter die von der Abschaltung betroffen sind werden vor Beginn und nach Ende der LOTO-Massnahme informiert.", HazardCategory: "general", Examples: []string{"Aushang an der Maschine", "Muendliche Information der Schichtmitarbeiter"}, NormReferences: []string{"OSHA 29 CFR 1910.147 — Lockout/Tagout", "ISO 14118"}}, + {ID: "M323", ReductionType: "information", SubType: "training", Name: "LOTO-Schulung und Auffrischung", Description: "Alle Mitarbeiter die LOTO anwenden erhalten eine initiale Schulung und mindestens jaehrliche Auffrischung.", HazardCategory: "electrical", Examples: []string{"Praktische LOTO-Uebung", "Jaehrliche Auffrischungsschulung mit Test"}, NormReferences: []string{"OSHA 29 CFR 1910.147 — Lockout/Tagout", "DGUV Vorschrift 1"}}, + {ID: "M324", ReductionType: "information", SubType: "organizational", Name: "Jaehrliche LOTO-Verfahrensinspektion", Description: "Mindestens jaehrlich wird die korrekte Anwendung des LOTO-Verfahrens im Feld ueberprueft.", HazardCategory: "electrical", Examples: []string{"Audit der LOTO-Durchfuehrung", "Beobachtung und Korrektur vor Ort"}, NormReferences: []string{"OSHA 29 CFR 1910.147 — Lockout/Tagout", "BetrSichV §10"}}, + {ID: "M325", ReductionType: "protection", SubType: "electrical_protection", Name: "LOTO-Absperrvorrichtungen an allen Energiequellen", Description: "An jeder Energiequelle (elektrisch, pneumatisch, hydraulisch, thermisch) sind geeignete Absperrvorrichtungen installiert.", HazardCategory: "electrical", Examples: []string{"Absperrhahn mit Lockout-Vorrichtung", "Ventilverriegelung fuer Pneumatik"}, NormReferences: []string{"OSHA 29 CFR 1910.147 — Lockout/Tagout", "ISO 14118"}}, + {ID: "M326", ReductionType: "information", SubType: "organizational", Name: "Gruppenlockout bei Mehrpersonen-Wartung", Description: "Bei Wartung durch mehrere Personen wird ein Gruppenlockout-Verfahren angewendet das sicherstellt, dass alle Beteiligten geschuetzt sind.", HazardCategory: "electrical", Examples: []string{"Lockout-Box fuer Gruppenschloesser", "Koordinator fuer Gruppenlockout benennen"}, NormReferences: []string{"OSHA 29 CFR 1910.147 — Lockout/Tagout", "ISO 14118"}}, + + // ══════════════════════════════════════════════════════════════ + // Electrical Safety (12 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M327", ReductionType: "design", SubType: "control_design", Name: "Elektrische Arbeitsmittel fuer Einsatzbedingungen waehlen", Description: "Elektrische Arbeitsmittel werden entsprechend der Umgebungsbedingungen und Belastung geeignet ausgewaehlt.", HazardCategory: "electrical", Examples: []string{"IP-Schutzart passend zum Einsatzort", "Explosionsgeschuetzte Ausruestung in Ex-Bereichen"}, NormReferences: []string{"OSHA 29 CFR 1910.303 — Electrical", "IEC 60204-1"}}, + {ID: "M328", ReductionType: "protection", SubType: "electrical_protection", Name: "Sicherheitsabstaende zu aktiven Teilen einhalten", Description: "Vorgeschriebene Sicherheitsabstaende zu spannungsfuehrenden Teilen werden eingehalten und markiert.", HazardCategory: "electrical", Examples: []string{"Abstandstabelle am Schaltanlagenraum", "Absperrzonen markieren"}, NormReferences: []string{"OSHA 29 CFR 1910.333 — Electrical Safety", "DIN VDE 0105-100"}}, + {ID: "M329", ReductionType: "protection", SubType: "electrical_protection", Name: "Erdung und Potentialausgleich sicherstellen", Description: "Alle freiliegenden leitfaehigen Teile werden geerdet und in den Potentialausgleich einbezogen.", HazardCategory: "electrical", Examples: []string{"Potentialausgleichsschiene im Schaltschrank", "Erdung metallischer Maschinenrahmen"}, NormReferences: []string{"OSHA 29 CFR 1910.304 — Wiring Design", "IEC 60204-1 — Potentialausgleich"}}, + {ID: "M330", ReductionType: "protection", SubType: "electrical_protection", Name: "Leitungsschutz gegen mechanische Beschaedigung", Description: "Elektrische Leitungen werden vor mechanischer Beschaedigung durch Verlegung in Kabelkanaelen oder Schutzrohren geschuetzt.", HazardCategory: "electrical", Examples: []string{"Kabelkanal in Werkstattboeden", "Schutzrohre fuer freiliegende Leitungen"}, NormReferences: []string{"OSHA 29 CFR 1910.305 — Wiring Methods", "IEC 60204-1"}}, + {ID: "M331", ReductionType: "information", SubType: "organizational", Name: "Elektrische Betriebsraeume freihalten und kennzeichnen", Description: "Elektrische Betriebsraeume werden gekennzeichnet, der Zugang wird beschraenkt und Flucht- und Rettungswege werden freigehalten.", HazardCategory: "electrical", Examples: []string{"Zutrittsverbot fuer Unbefugte", "Freiraum vor Schaltschraenken sicherstellen"}, NormReferences: []string{"OSHA 29 CFR 1910.303 — Electrical", "DIN VDE 0100-729"}}, + {ID: "M332", ReductionType: "information", SubType: "ppe", Name: "Lichtbogenschutzkleidung bereitstellen", Description: "Bei Arbeiten an Schaltanlagen mit Lichtbogengefahr wird geeignete Lichtbogenschutzkleidung getragen.", HazardCategory: "electrical", Examples: []string{"Lichtbogenschutz-Gesichtsschild", "Lichtbogenschutzjacke Klasse 2"}, NormReferences: []string{"OSHA 29 CFR 1910.335 — Safeguards", "EN 61482-2"}}, + {ID: "M333", ReductionType: "protection", SubType: "electrical_protection", Name: "Ueberspannungsschutz fuer empfindliche Steuerungen", Description: "Steuerungselektronik wird durch Ueberspannungsableiter gegen transiente Stoerspannungen geschuetzt.", HazardCategory: "electrical", Examples: []string{"SPD am Schaltschrankeingang", "EMV-Filter an empfindlichen Geraeten"}, NormReferences: []string{"OSHA 29 CFR 1910.304 — Wiring Design", "IEC 62305-4"}}, + {ID: "M334", ReductionType: "information", SubType: "organizational", Name: "Nur qualifiziertes Personal an elektrischen Anlagen", Description: "Arbeiten an elektrischen Anlagen werden nur von qualifizierten Personen durchgefuehrt die ueber die Gefahren unterrichtet sind.", HazardCategory: "electrical", Examples: []string{"Qualifikationsnachweis fuer Elektroarbeiten", "Beaufsichtigung unqualifizierter Personen"}, NormReferences: []string{"OSHA 29 CFR 1910.332 — Training", "DGUV Vorschrift 3"}}, + {ID: "M335", ReductionType: "information", SubType: "signage", Name: "Schaltschraenke und Verteiler beschriften", Description: "Alle Schaltschraenke, Verteiler und Schutzorgane werden eindeutig beschriftet und die Zuordnung dokumentiert.", HazardCategory: "electrical", Examples: []string{"Beschriftung jedes Sicherungsautomaten", "Stromkreisverzeichnis am Verteiler"}, NormReferences: []string{"OSHA 29 CFR 1910.303 — Electrical", "IEC 60204-1 — Kennzeichnung"}}, + {ID: "M336", ReductionType: "protection", SubType: "electrical_protection", Name: "Temporaere Erdung und Kurzschliessung", Description: "Bei Arbeiten an freigeschalteten Anlagen werden temporaere Erdungs- und Kurzschliessvorrichtungen angebracht.", HazardCategory: "electrical", Examples: []string{"Erdungsstangen an Freileitungen", "Kurzschliesser an Sammelschienen"}, NormReferences: []string{"OSHA 29 CFR 1910.333 — Electrical Safety", "DIN VDE 0105-100"}}, + {ID: "M337", ReductionType: "information", SubType: "organizational", Name: "Elektro-Gefaehrdungsbeurteilung durchfuehren", Description: "Vor Arbeiten an elektrischen Anlagen wird eine aufgabenspezifische Gefaehrdungsbeurteilung durchgefuehrt.", HazardCategory: "electrical", Examples: []string{"Ermittlung der Lichtbogenenergie", "Festlegung der Schutzmassnahmen"}, NormReferences: []string{"OSHA 29 CFR 1910.132 — PPE General", "BetrSichV §3"}}, + {ID: "M338", ReductionType: "protection", SubType: "electrical_protection", Name: "Fehlerstromschutz fuer Steckdosenkreise", Description: "Steckdosenkreise in der Produktion werden mit Fehlerstromschutzeinrichtungen (RCD) geschuetzt.", HazardCategory: "electrical", Examples: []string{"30mA-RCD fuer Werkstatt-Steckdosen", "Typ-B-RCD bei Frequenzumrichtern"}, NormReferences: []string{"OSHA 29 CFR 1910.304 — Wiring Design", "DIN VDE 0100-410"}}, + + // ══════════════════════════════════════════════════════════════ + // Industrial Robots (8 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M339", ReductionType: "protection", SubType: "fixed_guard", Name: "Roboterzelle mit Schutzzaun umgeben", Description: "Der Arbeitsraum des Roboters wird durch feststehende Schutzzaeune vollstaendig eingehaust.", HazardCategory: "mechanical", Examples: []string{"Stahlgitterzaun 2m Hoehe", "Zugangsschleuse mit Verriegelung"}, NormReferences: []string{"OSHA 29 CFR 1910.212 — Machine Guarding", "ISO 10218-2"}}, + {ID: "M340", ReductionType: "protection", SubType: "safety_control", Name: "Reduzierte Geschwindigkeit im Teach-Modus", Description: "Im Programmier- und Einrichtbetrieb wird die Robotergeschwindigkeit automatisch auf einen sicheren Wert begrenzt.", HazardCategory: "mechanical", Examples: []string{"Maximal 250 mm/s im Teach-Modus", "Zustimmschalter im Teach-Betrieb"}, NormReferences: []string{"OSHA TM — Industrial Robots", "ISO 10218-1 — Geschwindigkeitsbegrenzung Roboter"}}, + {ID: "M341", ReductionType: "protection", SubType: "safety_control", Name: "Sicherer Arbeitsraumbereich definieren", Description: "Software-Achsbegrenzungen und mechanische Anschlaege begrenzen den Roboterarbeitsraum auf das notwendige Minimum.", HazardCategory: "mechanical", Examples: []string{"Software-Endschalter konfigurieren", "Mechanische Anschlaege an Achse 1"}, NormReferences: []string{"OSHA TM — Industrial Robots", "ISO 10218-1"}}, + {ID: "M342", ReductionType: "protection", SubType: "safety_control", Name: "Sichere Werkzeugfreigabe am Roboter", Description: "Der Greifer gibt das Werkstueck bei Energieausfall nicht unkontrolliert frei.", HazardCategory: "mechanical", Examples: []string{"Federbelastete Greifer (Fail-Close)", "Mechanische Werkstueckhalterung"}, NormReferences: []string{"OSHA TM — Industrial Robots", "ISO 10218-2 — Kollaborativer Betrieb"}}, + {ID: "M343", ReductionType: "information", SubType: "organizational", Name: "Roboter-Wartung nur im abgesicherten Zustand", Description: "Wartung und Reinigung am Roboter erfolgt nur nach Lockout des Antriebs oder im sicher reduzierten Modus.", HazardCategory: "mechanical", Examples: []string{"LOTO vor Wartung im Arbeitsraum", "Zustimmschalter bei Teach-Wartung"}, NormReferences: []string{"OSHA TM — Industrial Robots", "ISO 10218-2"}}, + {ID: "M344", ReductionType: "protection", SubType: "electro_sensitive", Name: "Personenerkennung in kollaborativer Zone", Description: "Kollaborative Roboter erhalten Personenerkennungssysteme die bei Annaeherung die Geschwindigkeit reduzieren oder stoppen.", HazardCategory: "mechanical", Examples: []string{"Laserscanner mit geschwindigkeitsabhaengiger Feldbegrenzung", "3D-Kamerasystem fuer Arbeitsraum"}, NormReferences: []string{"OSHA TM — Industrial Robots", "ISO/TS 15066 — Kraft-/Druckgrenzwerte Cobot"}}, + {ID: "M345", ReductionType: "information", SubType: "training", Name: "Roboter-Bediener und Programmierer schulen", Description: "Bediener und Programmierer erhalten spezifische Schulung zu Robotersicherheit, Teach-Betrieb und Notfallverhalten.", HazardCategory: "mechanical", Examples: []string{"Herstellerschulung fuer Programmierer", "Unterweisung Notfall-Stopp-Verhalten"}, NormReferences: []string{"OSHA TM — Industrial Robots", "ISO 10218-2"}}, + {ID: "M346", ReductionType: "information", SubType: "organizational", Name: "Risikobewertung fuer kollaborativen Betrieb", Description: "Fuer jede kollaborative Roboterapplikation wird eine spezifische Risikobewertung durchgefuehrt.", HazardCategory: "mechanical", Examples: []string{"Kontaktkraft-Messung am Applikationspunkt", "Bewertung aller Koerperkontaktstellen"}, NormReferences: []string{"OSHA TM — Industrial Robots", "ISO/TS 15066 — Kraft-/Druckgrenzwerte Cobot"}}, + + // ══════════════════════════════════════════════════════════════ + // Noise & Vibration (6 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M347", ReductionType: "design", SubType: "noise_vibration", Name: "Laermpegel an der Quelle reduzieren", Description: "Laermverursachende Prozesse werden durch leisere Verfahren oder schalldaemmende Einhausungen reduziert.", HazardCategory: "noise_vibration", Examples: []string{"Schalldaemmende Maschineneinhausung", "Leisere Bearbeitungsverfahren waehlen"}, NormReferences: []string{"OSHA 29 CFR 1910.95 — Noise Exposure", "ISO 11688-1"}}, + {ID: "M348", ReductionType: "information", SubType: "organizational", Name: "Laermexpositionsermittlung durchfuehren", Description: "Die persoenliche Laermexposition der Beschaeftigten wird ermittelt und mit Grenzwerten verglichen.", HazardCategory: "noise_vibration", Examples: []string{"Personenbezogene Laermmessung ueber Schicht", "Vergleich mit 85 dB(A) Ausloeseewert"}, NormReferences: []string{"OSHA 29 CFR 1910.95 — Noise Exposure", "LaermVibrationsArbSchV"}}, + {ID: "M349", ReductionType: "information", SubType: "ppe", Name: "Gehoerschutz bereitstellen und durchsetzen", Description: "Ab Ueberschreitung der Ausloeseswerte wird Gehoerschutz bereitgestellt und dessen Tragepflicht durchgesetzt.", HazardCategory: "noise_vibration", Examples: []string{"Kapselgehoerschutz mit SNR-Auswahl", "Gehoerschutzpflicht-Zone kennzeichnen"}, NormReferences: []string{"OSHA 29 CFR 1910.95 — Noise Exposure", "EN 352-1"}}, + {ID: "M350", ReductionType: "information", SubType: "organizational", Name: "Arbeitsmedizinische Vorsorge bei Laermexposition", Description: "Beschaeftigte mit Laermexposition ueber den Ausloeseswerten erhalten regelmaessige audiometrische Untersuchungen.", HazardCategory: "noise_vibration", Examples: []string{"Audiometrie bei Einstellung und jaehrlich", "Audiogrammvergleich mit Referenzwert"}, NormReferences: []string{"OSHA 29 CFR 1910.95 — Noise Exposure", "ArbMedVV"}}, + {ID: "M351", ReductionType: "design", SubType: "noise_vibration", Name: "Hand-Arm-Vibration begrenzen", Description: "Vibrationsbelastung an Handwerkzeugen wird durch Auswahl vibrationsarmer Geraete und Begrenzung der Einsatzzeit reduziert.", HazardCategory: "noise_vibration", Examples: []string{"Vibrationsgedaempfte Schleifer verwenden", "Rotationsplan zur Expositionsbegrenzung"}, NormReferences: []string{"OSHA 29 CFR 1910.95 — Noise Exposure", "ISO 5349-1"}}, + {ID: "M352", ReductionType: "design", SubType: "noise_vibration", Name: "Ganzkoerpervibration an Fahrzeugsitzen minimieren", Description: "Fahrersitze an mobilen Maschinen erhalten Schwingungsdaempfung zur Begrenzung der Ganzkoerpervibration.", HazardCategory: "noise_vibration", Examples: []string{"Luftgefederter Fahrersitz", "Fahrbahnebnung bei Staplerverkehr"}, NormReferences: []string{"OSHA 29 CFR 1910.95 — Noise Exposure", "ISO 2631-1"}}, + + // ══════════════════════════════════════════════════════════════ + // Ergonomics (8 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M353", ReductionType: "design", SubType: "ergonomics", Name: "Repetitive Belastungen durch Automatisierung reduzieren", Description: "Haeufig wiederholte Handhabungsvorgaenge werden durch Automatisierung oder Hilfsmittel reduziert.", HazardCategory: "ergonomic", Examples: []string{"Automatische Palettierung", "Hebe- und Wendevorrichtung"}, NormReferences: []string{"OSHA — Ergonomics", "EN 1005-5"}}, + {ID: "M354", ReductionType: "design", SubType: "ergonomics", Name: "Lastengewicht auf sichere Werte begrenzen", Description: "Das Gewicht manuell zu handhabender Lasten wird durch technische Hilfsmittel oder Gewichtsbegrenzung reduziert.", HazardCategory: "ergonomic", Examples: []string{"Vakuumheber fuer Glasscheiben", "Maximallast 25 kg fuer Einzelpersonen"}, NormReferences: []string{"OSHA — Ergonomics", "EN 1005-2", "ISO 11228-1"}}, + {ID: "M355", ReductionType: "design", SubType: "ergonomics", Name: "Zwangshaltungen durch Arbeitsplatzgestaltung vermeiden", Description: "Arbeitsplaetze werden so gestaltet, dass Arbeiten in Zwangshaltungen (gebeugt, ueber Kopf, kniend) vermieden werden.", HazardCategory: "ergonomic", Examples: []string{"Hoehenverstellbarer Montagetisch", "Kippvorrichtung fuer Werkstuecke"}, NormReferences: []string{"OSHA — Ergonomics", "EN 614-1"}}, + {ID: "M356", ReductionType: "design", SubType: "ergonomics", Name: "Griffgestaltung an Handwerkzeugen optimieren", Description: "Griffe von Handwerkzeugen werden ergonomisch geformt und dimensioniert zur Vermeidung von Ueberbeanspruchung.", HazardCategory: "ergonomic", Examples: []string{"Pistolengrifform fuer Akkuschrauber", "Gepolsterte Griffe an Handschleifer"}, NormReferences: []string{"OSHA — Ergonomics", "EN 894-3"}}, + {ID: "M357", ReductionType: "information", SubType: "organizational", Name: "Arbeitsplatz-Ergonomieanalyse durchfuehren", Description: "Arbeitsplaetze mit hoher koerperlicher Belastung werden ergonomisch analysiert und optimiert.", HazardCategory: "ergonomic", Examples: []string{"RULA/REBA-Analyse", "Leitmerkmalmethode anwenden"}, NormReferences: []string{"OSHA — Ergonomics", "EN 1005-5"}}, + {ID: "M358", ReductionType: "information", SubType: "organizational", Name: "Pausenregelung bei belastenden Taetigkeiten", Description: "Bei ergonomisch belastenden Taetigkeiten werden Pausenregelungen und Rotationsplaene eingerichtet.", HazardCategory: "ergonomic", Examples: []string{"Mikropausen bei Bildschirmarbeit", "Rotationsplan fuer schwere Handarbeit"}, NormReferences: []string{"OSHA — Ergonomics", "ArbSchG §4"}}, + {ID: "M359", ReductionType: "design", SubType: "ergonomics", Name: "Bedienkraefte auf ergonomische Werte begrenzen", Description: "Bedienkraefte fuer Hebel, Schalter und Handraeder werden auf ergonomisch vertretbare Werte begrenzt.", HazardCategory: "ergonomic", Examples: []string{"Maximale Bedienkraft 50N fuer Einhandschalter", "Servounterstuetzung fuer schwere Ventile"}, NormReferences: []string{"OSHA — Ergonomics", "EN 1005-3"}}, + {ID: "M360", ReductionType: "information", SubType: "training", Name: "Unterweisung ergonomisches Arbeiten", Description: "Beschaeftigte werden in ergonomischem Heben, Tragen und Arbeiten geschult.", HazardCategory: "ergonomic", Examples: []string{"Rueckenschule fuer Lagerarbeiter", "Ergonomie-Training bei Bildschirmarbeit"}, NormReferences: []string{"OSHA — Ergonomics", "ArbSchG §12"}}, + + // ══════════════════════════════════════════════════════════════ + // Pressure Vessels (11 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M361", ReductionType: "design", SubType: "fluid_design", Name: "Druckbehaelter nach anerkanntem Regelwerk auslegen", Description: "Druckbehaelter werden nach anerkannten Regeln der Technik fuer den maximalen Betriebsdruck und die maximale Temperatur ausgelegt.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Auslegung nach ASME BPVC Section VIII", "Berechnung nach EN 13445"}, NormReferences: []string{"OSHA 29 CFR 1910.169 — Air Receivers", "EN 13445"}}, + {ID: "M362", ReductionType: "protection", SubType: "fluid_protection", Name: "Druckluftbehaelter mit Sicherheitsventil schuetzen", Description: "Jeder Druckluftbehaelter wird mit einem Sicherheitsventil ausgestattet das auf den zulaessigen Betriebsdruck eingestellt ist.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Federbelastetes Sicherheitsventil", "Regelmassig auf Funktion pruefen"}, NormReferences: []string{"OSHA 29 CFR 1910.169 — Air Receivers", "EN ISO 4126-1 — Sicherheitsventile"}}, + {ID: "M363", ReductionType: "protection", SubType: "monitoring", Name: "Druckanzeige an jedem Druckbehaelter", Description: "Jeder Druckbehaelter erhaelt ein gut ablesbares Manometer mit Markierung des zulaessigen Betriebsdrucks.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Rohrfedermanometer mit Rotmarkierung", "Digitale Druckanzeige mit Alarmschwelle"}, NormReferences: []string{"OSHA 29 CFR 1910.169 — Air Receivers", "BetrSichV Anhang 2"}}, + {ID: "M364", ReductionType: "protection", SubType: "fluid_protection", Name: "Entwasserungseinrichtung an Druckluftbehaeltern", Description: "Druckluftbehaelter erhalten eine Entwasserungseinrichtung am tiefsten Punkt zur Kondensat-Abfuhr.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Automatischer Kondensatableiter", "Manueller Entwasserungshahn"}, NormReferences: []string{"OSHA 29 CFR 1910.169 — Air Receivers", "EN 13445"}}, + {ID: "M365", ReductionType: "information", SubType: "organizational", Name: "Druckbehaelter regelmaessig inspizieren", Description: "Druckbehaelter werden regelmaessig auf Korrosion, Risse und Verformungen inspiziert.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Aeussere Sichtpruefung monatlich", "Ultraschall-Wanddickenmessung jaehrlich"}, NormReferences: []string{"OSHA 29 CFR 1910.169 — Air Receivers", "BetrSichV §14"}}, + {ID: "M366", ReductionType: "protection", SubType: "fluid_protection", Name: "Sicherheitsventile regelmaessig pruefen und warten", Description: "Sicherheitsventile an Druckbehaeltern werden regelmaessig auf Funktion geprueft und bei Bedarf nachgestellt oder getauscht.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Jaehrliche Funktionspruefung", "Pruefstand-Test nach Wartung"}, NormReferences: []string{"OSHA 29 CFR 1910.169 — Air Receivers", "EN ISO 4126-1 — Sicherheitsventile"}}, + {ID: "M367", ReductionType: "protection", SubType: "fluid_protection", Name: "Druckbehaelter gegen Ueberfuellung sichern", Description: "Fuellstandsbegrenzer und Ueberfuellsicherungen verhindern unkontrollierte Druckerhoehung durch Ueberfuellung.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Fuellstandsanzeige mit Grenzwertschalter", "Ueberfuellsicherung an Fluessiggas-Lagertank"}, NormReferences: []string{"OSHA 29 CFR 1910.169 — Air Receivers", "BetrSichV Anhang 2"}}, + {ID: "M368", ReductionType: "design", SubType: "fluid_design", Name: "Druckbehaelter mit Korrosionszuschlag dimensionieren", Description: "Wanddicken von Druckbehaeltern enthalten einen Korrosionszuschlag fuer die geplante Lebensdauer.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Korrosionszuschlag 1-3 mm je nach Medium", "Korrosionsbestaendige Werkstoffe verwenden"}, NormReferences: []string{"OSHA 29 CFR 1910.169 — Air Receivers", "EN 13445"}}, + {ID: "M369", ReductionType: "information", SubType: "signage", Name: "Typenschild und Kenndaten am Druckbehaelter", Description: "Jeder Druckbehaelter traegt ein dauerhaftes Typenschild mit zulaessigem Druck, Temperatur, Baujahr und Herstellerangaben.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Genietetes Typenschild am Behaelter", "Pruefplakette am Manometer"}, NormReferences: []string{"OSHA 29 CFR 1910.169 — Air Receivers", "DGRL 2014/68/EU"}}, + {ID: "M370", ReductionType: "information", SubType: "organizational", Name: "Betriebsanweisung fuer Druckbehaelter erstellen", Description: "Fuer jeden Druckbehaelter wird eine Betriebsanweisung erstellt die Inbetriebnahme, Betrieb, Wartung und Notfallmassnahmen beschreibt.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Anfahrprozedur dokumentieren", "Verhalten bei Sicherheitsventilansprechen"}, NormReferences: []string{"OSHA 29 CFR 1910.169 — Air Receivers", "BetrSichV §12"}}, + {ID: "M371", ReductionType: "protection", SubType: "safety_control", Name: "Automatische Abschaltung bei Druckueberschreitung", Description: "Druckbehaelter erhalten zusaetzlich zu Sicherheitsventilen eine automatische Druckabschaltung die vor Erreichen des zulaessigen Betriebsdrucks ausloeßt.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Druckschalter mit Abschaltfunktion", "SIL-bewertete Druckbegrenzung"}, NormReferences: []string{"OSHA 29 CFR 1910.169 — Air Receivers", "IEC 61511"}}, + } +} diff --git a/ai-compliance-sdk/internal/iace/measures_library_supplementary.go b/ai-compliance-sdk/internal/iace/measures_library_supplementary.go new file mode 100644 index 0000000..6488ae7 --- /dev/null +++ b/ai-compliance-sdk/internal/iace/measures_library_supplementary.go @@ -0,0 +1,70 @@ +package iace + +// getSupplementaryMeasures returns measures that fill gaps identified +// by systematic comparison of 6.141 RAG-extracted obligations against +// the existing measures library. Each measure closes a documented gap. +// IDs: M383–M403 (21 measures). +// +// Gap sources (RAG-validated): +// - Brandschutz: TRGS 509/510/511/741/751, ASR A2.3 (282 obligations, 2 existing measures) +// - Strahlung/Laser: OSHA TM Section III Ch.6, ASR A3.4 (29 obligations, 0 existing measures) +// - TRBS 1115 Cybersecurity MSR: TRBS 1115/1115 Teil 1 (580 chunks, IEC 62443 covered but not MSR-specific) +// - TRBS 1112 Instandhaltung: TRBS 1112 (226 chunks, LOTO covered but not coordination/special hazards) +// - ASR Flucht-/Rettungswege: ASR A2.3 (460 chunks, 0 existing measures) +func getSupplementaryMeasures() []ProtectiveMeasureEntry { + return []ProtectiveMeasureEntry{ + // ══════════════════════════════════════════════════════════════ + // Brandschutz (8 Massnahmen) — Gap: 282 obligations, 2 Massnahmen + // Quellen: TRGS 509 §9.4, TRGS 510 §8.2/§12.4, TRGS 511 §6.2, + // TRGS 741 Anhang 1, TRGS 751 §4.2/§4.3 + // ══════════════════════════════════════════════════════════════ + {ID: "M383", ReductionType: "information", SubType: "organizational", Name: "Brandschutzkonzept erstellen", Description: "Fuer Maschinenanlagen mit Brandgefaehrdung wird ein Brandschutzkonzept erstellt das baulichen, technischen und organisatorischen Brandschutz umfasst.", HazardCategory: "thermal", Examples: []string{"Brandschutzkonzept fuer Lackieranlage", "Brandschutznachweis fuer Lagerbereiche"}, NormReferences: []string{"TRGS 751 — Brandschutzkonzept", "ASR A2.3 — Fluchtwege"}}, + {ID: "M384", ReductionType: "protection", SubType: "fixed_guard", Name: "Baulicher Brandschutz an Maschinenanlagen", Description: "Brandabschnitte werden durch Brandwaende und feuerwiderstandsfaehige Bauteile gebildet um Brandausbreitung zu verhindern.", HazardCategory: "thermal", Examples: []string{"F90-Brandwand zwischen Lager und Produktion", "Brandschottung an Kabeldurchfuehrungen"}, NormReferences: []string{"TRGS 511 — Baulicher Brandschutz", "TRGS 741 — Schutzabstaende"}}, + {ID: "M385", ReductionType: "protection", SubType: "monitoring", Name: "Automatische Brandmeldeanlage installieren", Description: "Brandgefaehrdete Bereiche werden mit automatischen Brandmeldern ausgestattet die optisch und akustisch alarmieren.", HazardCategory: "thermal", Examples: []string{"Rauchmelder in Schaltraeumen", "Waermemelder in Lagerbereichen"}, NormReferences: []string{"TRGS 510 — Brandschutz Gefahrstofflager", "TRGS 529 — Brandschutzmassnahmen"}}, + {ID: "M386", ReductionType: "protection", SubType: "safety_control", Name: "Automatische Feuerloeschanlage vorsehen", Description: "In Bereichen mit hoher Brandlast oder erschwerter Loeschzugaenglichkeit werden automatische Feuerloeschanlagen installiert.", HazardCategory: "thermal", Examples: []string{"Sprinkleranlage in Gefahrstofflager", "CO2-Loeschanlage in Schaltschrankraum"}, NormReferences: []string{"TRGS 509 — Brandschutztechnische Ausstattung", "TRGS 510 — Brandschutz"}}, + {ID: "M387", ReductionType: "information", SubType: "organizational", Name: "Feuerloescher bereitstellen und pruefen", Description: "Geeignete Feuerloescher werden in ausreichender Anzahl und Brandklasse bereitgestellt und regelmaessig geprueft.", HazardCategory: "thermal", Examples: []string{"ABC-Pulverloescher alle 20 m Laufweg", "Jaehrliche Sachkundigenprüfung"}, NormReferences: []string{"TRGS 509 — Loeschmittel", "ASR A2.2 — Massnahmen gegen Braende"}}, + {ID: "M388", ReductionType: "protection", SubType: "safety_control", Name: "Flammendurchschlagsicherungen an Rohrleitungen", Description: "Rohrleitungen die brennbare Gase oder Daempfe fuehren werden mit Flammendurchschlagsicherungen ausgestattet.", HazardCategory: "material_environmental", Examples: []string{"Deflagrationssicherung an Tankentlueftung", "Detonationssicherung in Gasleitung"}, NormReferences: []string{"TRGS 751 — Flammendurchschlagsicherungen", "EN 16852"}}, + {ID: "M389", ReductionType: "design", SubType: "geometry", Name: "Brandschutzabstaende einhalten", Description: "Zwischen Gefahrstofflagern, Betriebseinrichtungen und Gebaeuden werden die vorgeschriebenen Brandschutzabstaende eingehalten.", HazardCategory: "thermal", Examples: []string{"5 m Abstand Gefahrstofflager zu Gebaeude", "10 m Abstand zwischen Lagerbereichen"}, NormReferences: []string{"TRGS 510 — Brandschutzabstaende", "TRGS 741 — Schutzabstaende"}}, + {ID: "M390", ReductionType: "information", SubType: "organizational", Name: "Flucht- und Rettungswege freihalten und kennzeichnen", Description: "Flucht- und Rettungswege werden freigehalten, beleuchtet, gekennzeichnet und in einem Flucht- und Rettungsplan dokumentiert.", HazardCategory: "general", Examples: []string{"Nachleuchtende Fluchtwegschilder", "Sicherheitsbeleuchtung an Fluchtwegen"}, NormReferences: []string{"ASR A2.3 — Fluchtwege", "TRGS 510 — Fluchtweglängen"}}, + + // ══════════════════════════════════════════════════════════════ + // Strahlung/Laser (5 Massnahmen) — Gap: 29 obligations, 0 Massnahmen + // Quellen: OSHA TM Section III Ch.6, ASR A3.4 §7.3, + // TRGS 525 (ionisierende Strahlung im Labor) + // ══════════════════════════════════════════════════════════════ + {ID: "M391", ReductionType: "information", SubType: "organizational", Name: "Laser-Gefahrenklasse bestimmen und dokumentieren", Description: "Jeder Laser wird nach seiner Gefahrenklasse (1 bis 4) klassifiziert und die Klassifizierung am Geraet und in der Dokumentation vermerkt.", HazardCategory: "general", Examples: []string{"Klassifizierung nach IEC 60825-1", "Laser-Gefahrenklassen-Aufkleber"}, NormReferences: []string{"OSHA TM — Laser Safety", "IEC 60825-1"}}, + {ID: "M392", ReductionType: "protection", SubType: "fixed_guard", Name: "Laserbereich absichern und kennzeichnen", Description: "Der Bereich in dem gefaehrliche Laserstrahlung auftreten kann wird abgegrenzt, gekennzeichnet und der Zugang beschraenkt.", HazardCategory: "general", Examples: []string{"Laserwarnschilder an Zugaengen", "Verriegelte Laserschutzkabine"}, NormReferences: []string{"OSHA TM — Laser Safety", "IEC 60825-1"}}, + {ID: "M393", ReductionType: "information", SubType: "organizational", Name: "Laserschutzbeauftragten benennen", Description: "Fuer Laser der Klasse 3B und 4 wird ein Laserschutzbeauftragter bestellt der die Einhaltung der Schutzmassnahmen ueberwacht.", HazardCategory: "general", Examples: []string{"Bestellung mit Qualifikationsnachweis", "Jaehrliche Fortbildung Laserschutz"}, NormReferences: []string{"OSHA TM — Laser Safety", "OStrV §5"}}, + {ID: "M394", ReductionType: "information", SubType: "ppe", Name: "Laserschutzbrillen bereitstellen", Description: "Fuer alle Personen im Laserbereich werden geeignete Laserschutzbrillen mit korrekter Schutzstufe und Wellenlaenge bereitgestellt.", HazardCategory: "general", Examples: []string{"Laserschutzbrille OD 5+ fuer Wellenlaenge", "Schutzfilter an Beobachtungsfenstern"}, NormReferences: []string{"OSHA TM — Laser Safety", "EN 207"}}, + {ID: "M395", ReductionType: "protection", SubType: "extraction", Name: "Absaugung bei Laserbearbeitung", Description: "Bei Laserbearbeitung entstehende Rauche, Daempfe und Partikel werden direkt am Bearbeitungspunkt abgesaugt.", HazardCategory: "material_environmental", Examples: []string{"Absaugduese am Laserschneidkopf", "Filteranlage fuer Laserrauch"}, NormReferences: []string{"OSHA TM — Laser Safety", "EN 12254"}}, + + // ══════════════════════════════════════════════════════════════ + // TRBS 1115 — Cybersecurity MSR (3 Massnahmen) + // Gap: Existing M121-M130 cover IEC 62443 general IT/OT, + // but NOT the TRBS 1115-specific obligations for safety- + // relevant MSR equipment (SPS, safety relays, PLCs). + // Quellen: TRBS 1115, TRBS 1115 Teil 1 + // ══════════════════════════════════════════════════════════════ + {ID: "M396", ReductionType: "information", SubType: "organizational", Name: "Cybersicherheits-Gefaehrdungsbeurteilung fuer MSR-Einrichtungen", Description: "Fuer sicherheitsrelevante MSR-Einrichtungen wird eine spezifische Cybersicherheits-Gefaehrdungsbeurteilung durchgefuehrt die Bedrohungen und Schwachstellen systematisch ermittelt.", HazardCategory: "cyber_network", Examples: []string{"Bedrohungsanalyse fuer Safety-SPS", "Schwachstellenbewertung Fernwartungszugang"}, NormReferences: []string{"TRBS 1115 Teil 1 — Cybersicherheit MSR", "IEC 62443-3-2"}}, + {ID: "M397", ReductionType: "information", SubType: "organizational", Name: "Cybersicherheitsmassnahmen fuer MSR pruefen", Description: "Die Wirksamkeit der Cybersicherheitsmassnahmen an sicherheitsrelevanten MSR-Einrichtungen wird regelmaessig und nach Aenderungen geprueft.", HazardCategory: "cyber_network", Examples: []string{"Jaehrliche Pruefung Cybersicherheit Safety-SPS", "Pruefung nach Firmware-Update"}, NormReferences: []string{"TRBS 1115 Teil 1 — Cybersicherheit MSR", "BetrSichV §14"}}, + {ID: "M398", ReductionType: "information", SubType: "organizational", Name: "Aenderungsmanagement fuer MSR-Cybersicherheit", Description: "Aenderungen an sicherheitsrelevanten MSR-Einrichtungen werden hinsichtlich ihrer Auswirkungen auf die Cybersicherheit bewertet bevor sie umgesetzt werden.", HazardCategory: "cyber_network", Examples: []string{"Cybersicherheitsbewertung bei SPS-Programmänderung", "Freigabeprozess fuer Safety-Software-Updates"}, NormReferences: []string{"TRBS 1115 Teil 1 — Cybersicherheit MSR", "IEC 62443-2-4"}}, + + // ══════════════════════════════════════════════════════════════ + // TRBS 1112 — Instandhaltung (3 Massnahmen) + // Gap: Existing M210-M212 cover LOTO and post-maintenance checks, + // but NOT the specific hazards from TRBS 1112 Anhang 2 + // (disabled guards, coordination, controlled manual operation). + // Quellen: TRBS 1112, TRBS 1112 §4.4, TRBS 1112 Anhang 2 + // ══════════════════════════════════════════════════════════════ + {ID: "M399", ReductionType: "information", SubType: "organizational", Name: "Gefaehrdungsbeurteilung fuer Instandhaltungsarbeiten", Description: "Vor Instandhaltungsarbeiten wird eine spezifische Gefaehrdungsbeurteilung durchgefuehrt die die besonderen Gefaehrdungen bei deaktivierten Schutzeinrichtungen beruecksichtigt.", HazardCategory: "mechanical", Examples: []string{"Risikoanalyse fuer Stoerungssuche bei laufender Maschine", "Gefaehrdungsbeurteilung Erprobung nach Reparatur"}, NormReferences: []string{"TRBS 1112 — Instandhaltung", "BetrSichV §3"}}, + {ID: "M400", ReductionType: "protection", SubType: "safety_control", Name: "Kontrollierte Handsteuerung bei deaktivierten Schutzeinrichtungen", Description: "Wenn Schutzeinrichtungen fuer Instandhaltung entfernt oder deaktiviert werden muessen, erfolgt der Betrieb nur mit kontrollierter Handsteuerung innerhalb sicherer Parameter.", HazardCategory: "mechanical", Examples: []string{"Zustimmschalter fuer Testbetrieb", "Reduzierte Geschwindigkeit bei geoeffneter Schutztuer"}, NormReferences: []string{"TRBS 1112 — Instandhaltung Anhang 2", "ISO 12100 — Betriebsarten"}}, + {ID: "M401", ReductionType: "information", SubType: "organizational", Name: "Koordination von Instandhaltung durch Fremdfirmen", Description: "Bei Instandhaltungsarbeiten durch Fremdfirmen werden Verantwortlichkeiten, Gefaehrdungen und Schutzmassnahmen vorab schriftlich koordiniert.", HazardCategory: "general", Examples: []string{"Koordinationsgespraech mit Fremdfirma", "Gemeinsames Arbeitsgenehmigungsverfahren"}, NormReferences: []string{"TRBS 1112 — Instandhaltung", "BetrSichV §13"}}, + + // ══════════════════════════════════════════════════════════════ + // ASR-spezifisch (2 Massnahmen) + // Gap: ASR A2.3 Sicherheitsbeleuchtung, ASR A1.7 kraftbetätigte Türen + // ══════════════════════════════════════════════════════════════ + {ID: "M402", ReductionType: "protection", SubType: "monitoring", Name: "Sicherheitsbeleuchtung an Fluchtwegen und Arbeitsplaetzen", Description: "Fluchtwege und sicherheitsrelevante Arbeitsplaetze erhalten eine Sicherheitsbeleuchtung die bei Ausfall der allgemeinen Beleuchtung automatisch aktiviert wird.", HazardCategory: "general", Examples: []string{"Notbeleuchtung mit Batteriepufferung", "Nachleuchtende Leitmarkierung am Boden"}, NormReferences: []string{"ASR A3.4 — Beleuchtung", "ASR A2.3 — Fluchtwege"}}, + {ID: "M403", ReductionType: "protection", SubType: "safety_control", Name: "Quetschschutz an kraftbetaetigten Tueren und Toren", Description: "Kraftbetaetigte Tueren und Tore erhalten Schutzeinrichtungen gegen Quetschen, Scheren und Einziehen an allen Schliesskanten.", HazardCategory: "mechanical", Examples: []string{"Schaltleiste an Schiebetorunterkante", "Lichtschranke an Rolltoroeffnung"}, NormReferences: []string{"ASR A1.7 — Tueren und Tore", "EN 12453"}}, + } +} diff --git a/ai-compliance-sdk/internal/iace/measures_library_trbs.go b/ai-compliance-sdk/internal/iace/measures_library_trbs.go new file mode 100644 index 0000000..61a0a6e --- /dev/null +++ b/ai-compliance-sdk/internal/iace/measures_library_trbs.go @@ -0,0 +1,122 @@ +package iace + +// getTRBSMeasures returns protective measures derived from TRBS (Technische +// Regeln fuer Betriebssicherheit) requirements. Each measure is an +// independently formulated obligation — no TRBS norm text is reproduced. +// IDs: M217–M296 (80 measures). +func getTRBSMeasures() []ProtectiveMeasureEntry { + return []ProtectiveMeasureEntry{ + // ══════════════════════════════════════════════════════════════ + // TRBS 1111 — Gefaehrdungsbeurteilung (5 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M217", ReductionType: "information", SubType: "organizational", Name: "Systematische Gefaehrdungsbeurteilung durchfuehren", Description: "Alle Gefaehrdungen am Arbeitsplatz werden systematisch ermittelt, bewertet und dokumentiert bevor die Maschine in Betrieb genommen wird.", HazardCategory: "general", Examples: []string{"Checklisten-basierte Gefaehrdungsermittlung", "Workshop mit Bedienern und Instandhaltern"}, NormReferences: []string{"TRBS 1111 — Gefaehrdungsbeurteilung", "ArbSchG §5"}}, + {ID: "M218", ReductionType: "information", SubType: "organizational", Name: "Gefaehrdungsbeurteilung bei Aenderungen aktualisieren", Description: "Bei jeder wesentlichen Aenderung an der Maschine oder den Betriebsbedingungen wird die Gefaehrdungsbeurteilung ueberarbeitet.", HazardCategory: "general", Examples: []string{"Aktualisierung nach Umbau", "Neubewertung nach Unfallmeldung"}, NormReferences: []string{"TRBS 1111 — Gefaehrdungsbeurteilung", "BetrSichV §3"}}, + {ID: "M219", ReductionType: "information", SubType: "organizational", Name: "Qualifikation der Beurteiler sicherstellen", Description: "Personen die Gefaehrdungsbeurteilungen durchfuehren muessen ueber die erforderliche Fachkunde verfuegen.", HazardCategory: "general", Examples: []string{"Fachkraft fuer Arbeitssicherheit einbeziehen", "Schulungsnachweis der Beurteiler dokumentieren"}, NormReferences: []string{"TRBS 1111 — Gefaehrdungsbeurteilung", "ArbSchG §7"}}, + {ID: "M220", ReductionType: "information", SubType: "organizational", Name: "Ermittlung aller Betriebszustaende", Description: "Die Gefaehrdungsbeurteilung beruecksichtigt alle Betriebszustaende einschliesslich Inbetriebnahme, Normalbetrieb, Einrichten, Stoerungsbeseitigung und Instandhaltung.", HazardCategory: "general", Examples: []string{"Matrix Betriebszustand × Gefaehrdung erstellen", "Interviews mit Schichtpersonal"}, NormReferences: []string{"TRBS 1111 — Gefaehrdungsbeurteilung", "BetrSichV §3"}}, + {ID: "M221", ReductionType: "information", SubType: "organizational", Name: "Wirksamkeitskontrolle der Schutzmassnahmen", Description: "Die Wirksamkeit getroffener Schutzmassnahmen wird regelmaessig ueberprueft und dokumentiert.", HazardCategory: "general", Examples: []string{"Quartalsweise Kontrolle der Schutzeinrichtungen", "Kennzahlen fuer Beinahe-Unfaelle erfassen"}, NormReferences: []string{"TRBS 1111 — Gefaehrdungsbeurteilung", "ArbSchG §3"}}, + + // ══════════════════════════════════════════════════════════════ + // TRBS 1201 — Pruefungen und Kontrollen (15 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M222", ReductionType: "information", SubType: "organizational", Name: "Pruefung vor Erstinbetriebnahme", Description: "Vor der erstmaligen Inbetriebnahme wird die ordnungsgemaesse Montage und sichere Funktion aller sicherheitsrelevanten Bauteile geprueft.", HazardCategory: "general", Examples: []string{"Inbetriebnahme-Checkliste abarbeiten", "Funktionspruefung aller Sicherheitsfunktionen"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "BetrSichV §14"}}, + {ID: "M223", ReductionType: "information", SubType: "organizational", Name: "Pruefung nach wesentlicher Aenderung", Description: "Nach jedem Umbau oder jeder wesentlichen Aenderung wird die Maschine erneut auf sicheren Zustand geprueft.", HazardCategory: "general", Examples: []string{"Pruefung nach Steuerungsaenderung", "Abnahmepruefung nach mechanischem Umbau"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "BetrSichV §14"}}, + {ID: "M224", ReductionType: "information", SubType: "organizational", Name: "Wiederkehrende Pruefungen festlegen", Description: "Prueffristen und Pruefumfang fuer wiederkehrende Pruefungen werden auf Basis der Gefaehrdungsbeurteilung festgelegt.", HazardCategory: "general", Examples: []string{"Jaehrliche Gesamtpruefung", "Halbjahrespruefung bei erhoehter Beanspruchung"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "BetrSichV §14"}}, + {ID: "M225", ReductionType: "information", SubType: "organizational", Name: "Pruefung durch befaehigte Personen", Description: "Pruefungen werden nur von Personen durchgefuehrt die die erforderliche Berufsausbildung, Berufserfahrung und zeitnahe berufliche Taetigkeit nachweisen.", HazardCategory: "general", Examples: []string{"Elektrofachkraft fuer Elektropruefung", "Sachverstaendiger fuer Druckbehaelter"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "BetrSichV §2 Abs. 6"}}, + {ID: "M226", ReductionType: "information", SubType: "organizational", Name: "Pruefprotokolle erstellen und aufbewahren", Description: "Ergebnisse jeder Pruefung werden in einem Pruefprotokoll dokumentiert und mindestens bis zur naechsten Pruefung aufbewahrt.", HazardCategory: "general", Examples: []string{"Digitales Pruefprotokoll mit Unterschrift", "Maengelliste mit Behebungsfrist"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "BetrSichV §14 Abs. 7"}}, + {ID: "M227", ReductionType: "information", SubType: "organizational", Name: "Pruefung sicherheitsrelevanter Steuerungen", Description: "Sicherheitsbezogene Steuerungen werden auf korrekte Verdrahtung, Parametrierung und Funktion geprueft.", HazardCategory: "software_control", Examples: []string{"SPS-Programmpruefung mit Pruefablauf", "Grenzwertpruefung der Safety-Parameter"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "ISO 13849-2"}}, + {ID: "M228", ReductionType: "information", SubType: "organizational", Name: "Pruefung hydraulischer und pneumatischer Systeme", Description: "Hydraulik- und Pneumatiksysteme werden auf Dichtheit, Druckfestigkeit und Funktion der Sicherheitsventile geprueft.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Druckpruefung Hydraulikleitungen", "Funktionspruefung Druckbegrenzungsventil"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "ISO 4413"}}, + {ID: "M229", ReductionType: "information", SubType: "organizational", Name: "Pruefung elektrischer Anlagen", Description: "Elektrische Anlagen werden auf Isolationswiderstand, Schutzleiterverbindung und Fehlerstromschutz geprueft.", HazardCategory: "electrical", Examples: []string{"Isolationsmessung nach DGUV V3", "Pruefung Schutzleiteranschluss"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "DGUV Vorschrift 3"}}, + {ID: "M230", ReductionType: "information", SubType: "organizational", Name: "Pruefung von Schutzeinrichtungen", Description: "Alle trennenden und nicht-trennenden Schutzeinrichtungen werden auf Wirksamkeit und Manipulationssicherheit geprueft.", HazardCategory: "mechanical", Examples: []string{"Sicherheitsschalter-Funktionstest", "Lichtvorhang-Ausrichtung pruefen"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "ISO 14119"}}, + {ID: "M231", ReductionType: "information", SubType: "organizational", Name: "Pruefung von Hebezeugen und Lastaufnahmemitteln", Description: "Hebezeuge und Lastaufnahmemittel werden auf Tragfaehigkeit, Verschleiss und Rissfreiheit geprueft.", HazardCategory: "mechanical", Examples: []string{"Sichtpruefung Anschlagmittel taeglich", "Jaehrliche Sachverstaendigenpruefung Kran"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "DGUV Vorschrift 52"}}, + {ID: "M232", ReductionType: "information", SubType: "organizational", Name: "Pruefung nach aussergewoehnlichen Ereignissen", Description: "Nach Unfaellen, Beinahe-Unfaellen oder unerwarteten Betriebszustaenden wird eine Sonderpruefung durchgefuehrt.", HazardCategory: "general", Examples: []string{"Pruefung nach Kollision", "Pruefung nach Ueberlastung"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "BetrSichV §14 Abs. 3"}}, + {ID: "M233", ReductionType: "information", SubType: "organizational", Name: "Prueffristen verkuerzen bei erhoehter Beanspruchung", Description: "Bei Mehrschichtbetrieb, aggressiver Umgebung oder hoher Beanspruchung werden Prueffristen angemessen verkuerzt.", HazardCategory: "general", Examples: []string{"Halbierung des Pruefintervalls bei 3-Schicht", "Kuerzere Fristen bei Korrosionsgefahr"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "BetrSichV §3"}}, + {ID: "M234", ReductionType: "information", SubType: "organizational", Name: "Maengelbeseitigung dokumentieren", Description: "Bei der Pruefung festgestellte Maengel werden mit Frist und Verantwortlichem dokumentiert und die Beseitigung nachverfolgt.", HazardCategory: "general", Examples: []string{"Maengelverfolgungsliste fuehren", "Betroffene Maschine bis zur Maengelbeseitigung sperren"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "BetrSichV §14"}}, + {ID: "M235", ReductionType: "information", SubType: "organizational", Name: "Pruefung von Druckbehaeltern und Rohrleitungen", Description: "Druckbehaelter und druckfuehrende Rohrleitungen werden nach festgelegten Fristen durch zugelassene Ueberwachungsstellen geprueft.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Innere Pruefung Druckbehaelter", "Festigkeitspruefung Dampfkessel"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "BetrSichV Anhang 2"}}, + {ID: "M236", ReductionType: "information", SubType: "organizational", Name: "Pruefung von Aufzugsanlagen", Description: "Aufzugsanlagen werden vor Inbetriebnahme und wiederkehrend durch zugelassene Ueberwachungsstellen geprueft.", HazardCategory: "mechanical", Examples: []string{"Hauptpruefung Aufzug alle 2 Jahre", "Zwischenpruefung jaehrlich"}, NormReferences: []string{"TRBS 1201 — Pruefungen", "BetrSichV §15-16"}}, + + // ══════════════════════════════════════════════════════════════ + // TRBS 2111 — Mechanische Gefaehrdungen (20 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M237", ReductionType: "design", SubType: "geometry", Name: "Quetschstellen durch Mindestabstaende vermeiden", Description: "Mindestabstaende zwischen beweglichen und feststehenden Teilen werden so bemessen, dass kein Koerperteil eingequetscht werden kann.", HazardCategory: "mechanical", Examples: []string{"Mindestabstand 25 mm fuer Finger", "500 mm Abstand fuer Koerper"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 13854"}}, + {ID: "M238", ReductionType: "design", SubType: "geometry", Name: "Scherstellen durch konstruktive Aenderung beseitigen", Description: "Scherstellen zwischen gegenlaeufig bewegten Teilen werden durch Geometrieaenderung oder Wegfall der Relativbewegung eliminiert.", HazardCategory: "mechanical", Examples: []string{"Messerkanten mit Abdeckung versehen", "Gegenlaeufige Walzen entkoppeln"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 12100 — Geometrie und Anordnung"}}, + {ID: "M239", ReductionType: "design", SubType: "geometry", Name: "Einzugsstellen an Walzen sichern", Description: "Walzenpaare und Walze-Flaeche-Kombinationen erhalten Schutzeinrichtungen die das Einziehen von Koerperteilen verhindern.", HazardCategory: "mechanical", Examples: []string{"Zugangsschutz am Walzenspalt", "Einlauftrichter mit Sicherheitsabstand"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 13857"}}, + {ID: "M240", ReductionType: "design", SubType: "geometry", Name: "Fangstellen an rotierenden Teilen verhindern", Description: "Hervorstehende Teile an rotierenden Wellen Kupplungen und Schwungraedern werden bündig gestaltet oder eingekapselt.", HazardCategory: "mechanical", Examples: []string{"Wellenenden bündig abdrehen", "Kupplungsschutz montieren"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 14120"}}, + {ID: "M241", ReductionType: "design", SubType: "geometry", Name: "Stossstellen durch Polsterung entschaerfen", Description: "Maschinenteile die Personen stossen koennen erhalten Polsterungen oder abgerundete Konturen.", HazardCategory: "mechanical", Examples: []string{"Ecken an Maschinenrahmen abrunden", "Polster an Schwenkarmen anbringen"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 12100 — Physikalische Kenndaten"}}, + {ID: "M242", ReductionType: "protection", SubType: "fixed_guard", Name: "Feststehende Schutzeinrichtungen an Gefahrstellen", Description: "Gefahrstellen die nicht konstruktiv beseitigt werden koennen erhalten feststehende trennende Schutzeinrichtungen.", HazardCategory: "mechanical", Examples: []string{"Schutzgitter an Antriebswellen", "Feste Abdeckung an Riementrieb"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 14120"}}, + {ID: "M243", ReductionType: "protection", SubType: "movable_guard", Name: "Bewegliche Schutzeinrichtungen mit Verriegelung an Zugangsstellen", Description: "Zugaenge zu Gefahrbereichen die regelmaessig betreten werden erhalten bewegliche Schutzeinrichtungen mit Verriegelung.", HazardCategory: "mechanical", Examples: []string{"Schutztuer mit Sicherheitsschalter", "Klappbare Abdeckung mit Positionsueberwachung"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 14119"}}, + {ID: "M244", ReductionType: "protection", SubType: "safety_control", Name: "Nachlaufsicherung bei beweglichen Teilen", Description: "Maschinen mit Nachlauf werden so gesichert, dass Zugang erst nach vollstaendigem Stillstand moeglich ist.", HazardCategory: "mechanical", Examples: []string{"Zuhaltung mit Stillstandsueberwachung", "Bremse mit Nachlaufzeitmessung"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 14119"}}, + {ID: "M245", ReductionType: "protection", SubType: "safety_control", Name: "Sicherung gegen herabfallende Teile", Description: "Unkontrolliert herabfallende Maschinenteile oder Werkstuecke werden durch konstruktive Massnahmen verhindert.", HazardCategory: "mechanical", Examples: []string{"Werkzeughalterung mit Sicherungselement", "Auffangeinrichtung unter Werkstueckzufuhr"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 12100 — Geometrie und Anordnung"}}, + {ID: "M246", ReductionType: "protection", SubType: "safety_control", Name: "Sicherung gegen unbeabsichtigte Inbetriebsetzung", Description: "Ein unbeabsichtigtes oder unkontrolliertes Ingangsetzen der Maschine wird durch technische und organisatorische Massnahmen verhindert.", HazardCategory: "mechanical", Examples: []string{"Hauptschalter mit Lockout-Vorrichtung", "Freigabebedingungen in Steuerung programmieren"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 14118"}}, + {ID: "M247", ReductionType: "design", SubType: "force_energy", Name: "Aufprallenergie durch Geschwindigkeitsbegrenzung reduzieren", Description: "Verfahrgeschwindigkeiten werden so begrenzt, dass bei Kontakt keine schweren Verletzungen entstehen.", HazardCategory: "mechanical", Examples: []string{"Tippbetrieb mit reduzierter Geschwindigkeit", "Mechanische Geschwindigkeitsbegrenzung"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 12100 — Physikalische Kenndaten"}}, + {ID: "M248", ReductionType: "design", SubType: "force_energy", Name: "Bruchsichere Konstruktion fuer rotierende Teile", Description: "Rotierende Teile werden so dimensioniert, dass ein Bruch bei maximaler Drehzahl ausgeschlossen ist.", HazardCategory: "mechanical", Examples: []string{"Berechnungsnachweis Schleifscheibenfestigkeit", "Sicherheitsfaktor bei Schwungraedern"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 12100 — Allgemeine technische Kenntnisse"}}, + {ID: "M249", ReductionType: "protection", SubType: "electrical_protection", Name: "Sicherung gegen unkontrollierte Bewegung nach Energieausfall", Description: "Bei Ausfall der Energieversorgung werden bewegliche Teile in sicherem Zustand gehalten.", HazardCategory: "mechanical", Examples: []string{"Federspeicherbremse an Vertikalachsen", "Lasthalteventil bei Hydraulikausfall"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 12100 — Allgemeine technische Kenntnisse"}}, + {ID: "M250", ReductionType: "protection", SubType: "electro_sensitive", Name: "Annaeherungserkennung an Gefahrstellen", Description: "Optoelektronische Schutzeinrichtungen erkennen Personen vor Erreichen der Gefahrstelle und stoppen die Maschine.", HazardCategory: "mechanical", Examples: []string{"Lichtvorhang an Pressenzufuhr", "Laserscanner an Roboterzelle"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "IEC 61496-1"}}, + {ID: "M251", ReductionType: "information", SubType: "signage", Name: "Restrisiken an mechanischen Gefahrstellen kennzeichnen", Description: "Verbleibende mechanische Risiken die nicht konstruktiv beseitigt werden konnten werden durch Warnschilder gekennzeichnet.", HazardCategory: "mechanical", Examples: []string{"Warnung vor Quetschgefahr", "Hinweis auf Nachlauf"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 7010"}}, + {ID: "M252", ReductionType: "information", SubType: "training", Name: "Unterweisung mechanische Gefaehrdungen", Description: "Bediener werden ueber alle verbleibenden mechanischen Gefaehrdungen, korrekte Schutzeinrichtungsnutzung und Verhaltensregeln unterwiesen.", HazardCategory: "mechanical", Examples: []string{"Praktische Unterweisung an der Maschine", "Demonstration der Schutzeinrichtungen"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "BetrSichV §12"}}, + {ID: "M253", ReductionType: "protection", SubType: "safety_control", Name: "Handschutz an Schneidmaschinen", Description: "Schneidwerkzeuge werden mit Handschutzvorrichtungen versehen die ein Hineingreifen in den Schneidbereich verhindern.", HazardCategory: "mechanical", Examples: []string{"Niederhalter mit Sicherheitsabstand", "Messerabdeckung mit Verriegelung"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 13857"}}, + {ID: "M254", ReductionType: "design", SubType: "geometry", Name: "Sicherheitsabstaende an Pressen einhalten", Description: "Abstaende zwischen Werkzeug und Beschickungsoeffnung werden so dimensioniert, dass Finger oder Haende nicht in den Gefahrbereich gelangen.", HazardCategory: "mechanical", Examples: []string{"Sicherheitsabstand nach ISO 13855 berechnen", "Lichtvorhang-Abstand korrekt ermitteln"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 13855"}}, + {ID: "M255", ReductionType: "protection", SubType: "safety_control", Name: "Werkzeugwechsel nur bei Stillstand ermoeglichen", Description: "Werkzeugwechselvorrichtungen sind so gestaltet, dass ein Wechsel nur bei vollstaendigem Maschinenstillstand moeglich ist.", HazardCategory: "mechanical", Examples: []string{"Verriegelung Werkzeugwechseltuer", "Stillstandsueberwachung vor Werkzeugfreigabe"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 14118"}}, + {ID: "M256", ReductionType: "protection", SubType: "fixed_guard", Name: "Spaeneschutz an spanenden Maschinen", Description: "Spanflug wird durch Schutzscheiben oder Einhausungen aufgefangen und kontrolliert abgefuehrt.", HazardCategory: "mechanical", Examples: []string{"Spaenesicherungsglas an Drehmaschine", "Geschlossene Einhausung CNC-Fraese"}, NormReferences: []string{"TRBS 2111 — Mechanische Gefaehrdungen", "ISO 14120"}}, + + // ══════════════════════════════════════════════════════════════ + // TRBS 2121 — Absturzgefaehrdung (8 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M257", ReductionType: "protection", SubType: "fixed_guard", Name: "Gelaender an Arbeitsplaetzen mit Absturzkante", Description: "Arbeitsplaetze und Verkehrswege ab 1 m Absturzhoehe erhalten dreiteilige Gelaender mit Handlauf, Knieleiste und Fussleiste.", HazardCategory: "mechanical", Examples: []string{"Gelaender an Bedienpodest", "Brueckengelaender an Kranbahnlaufsteg"}, NormReferences: []string{"TRBS 2121 — Absturzgefaehrdung", "ISO 14122-3"}}, + {ID: "M258", ReductionType: "protection", SubType: "fixed_guard", Name: "Durchsturzsichere Abdeckungen", Description: "Oeffnungen in Boeden und Decken die ein Durchstuerzen ermoeglichen erhalten tragfaehige Abdeckungen oder Umwehrungen.", HazardCategory: "mechanical", Examples: []string{"Begehbare Gitterrostabdeckung", "Gesicherte Revisionsklappen"}, NormReferences: []string{"TRBS 2121 — Absturzgefaehrdung", "ASR A2.1"}}, + {ID: "M259", ReductionType: "design", SubType: "geometry", Name: "Ortsfeste Zugaenge zu Arbeitsplaetzen in der Hoehe", Description: "Erhoehte Arbeitsplaetze erhalten ortsfeste Treppen oder Leitern mit Rueckenschutz ab 3 m Leiterlaenge.", HazardCategory: "mechanical", Examples: []string{"Treppe zum Wartungspodest", "Steigleiter mit Steigschutzeinrichtung"}, NormReferences: []string{"TRBS 2121 — Absturzgefaehrdung", "ISO 14122-4"}}, + {ID: "M260", ReductionType: "information", SubType: "ppe", Name: "PSA gegen Absturz bereitstellen", Description: "Wo bauliche Absturzsicherungen nicht moeglich sind wird Persoenliche Schutzausruestung gegen Absturz bereitgestellt.", HazardCategory: "mechanical", Examples: []string{"Auffanggurt mit Falldaempfer", "Anschlagpunkte auf Maschinendecke"}, NormReferences: []string{"TRBS 2121 — Absturzgefaehrdung", "PSA-BV"}}, + {ID: "M261", ReductionType: "design", SubType: "geometry", Name: "Rutschhemmende Trittflaechen", Description: "Laufflaechen auf Podesten, Treppen und Leitern erhalten rutschhemmende Oberflaechen zur Sturzpraevention.", HazardCategory: "mechanical", Examples: []string{"Gitterroste mit Rutschhemmung", "Riffelblech auf Treppenstufen"}, NormReferences: []string{"TRBS 2121 — Absturzgefaehrdung", "ASR A1.5/1,2"}}, + {ID: "M262", ReductionType: "information", SubType: "training", Name: "Unterweisung Absturzgefaehrdung und PSA-Nutzung", Description: "Beschaeftigte die an Absturzkanten arbeiten werden in der korrekten Nutzung von Absturzsicherungen und PSA unterwiesen.", HazardCategory: "mechanical", Examples: []string{"Praktische PSA-Uebung", "Rettungsplan bei Haengung im Auffanggurt"}, NormReferences: []string{"TRBS 2121 — Absturzgefaehrdung", "DGUV Vorschrift 1"}}, + {ID: "M263", ReductionType: "protection", SubType: "safety_control", Name: "Auffangnetze bei temporaeren Arbeiten in der Hoehe", Description: "Bei temporaeren Montage- oder Instandhaltungsarbeiten in der Hoehe werden Auffangnetze oder -einrichtungen installiert.", HazardCategory: "mechanical", Examples: []string{"Sicherheitsnetz unter Montagebereich", "Mobile Auffangeinrichtung"}, NormReferences: []string{"TRBS 2121 — Absturzgefaehrdung", "DGUV Regel 101-011"}}, + {ID: "M264", ReductionType: "information", SubType: "organizational", Name: "Arbeitsfreigabeverfahren fuer Hoehenarbeiten", Description: "Arbeiten mit Absturzgefaehrdung werden nur nach schriftlicher Arbeitsfreigabe mit festgelegten Sicherheitsmassnahmen durchgefuehrt.", HazardCategory: "mechanical", Examples: []string{"Erlaubnisschein fuer Hoehenarbeiten", "Rettungskonzept erstellen"}, NormReferences: []string{"TRBS 2121 — Absturzgefaehrdung", "BetrSichV §12"}}, + + // ══════════════════════════════════════════════════════════════ + // TRBS 2131 — Elektrische Gefaehrdungen (15 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M265", ReductionType: "design", SubType: "control_design", Name: "Basisschutz gegen direktes Beruehren", Description: "Aktive Teile werden durch Isolierung, Abdeckungen oder Gehaeuse gegen direktes Beruehren geschuetzt.", HazardCategory: "electrical", Examples: []string{"Isolierte Kabelverbindungen", "Beruehrungsschutz an Klemmen"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "IEC 60204-1"}}, + {ID: "M266", ReductionType: "design", SubType: "control_design", Name: "Fehlerschutz gegen indirektes Beruehren", Description: "Bei Isolationsfehlern wird der Fehlerstrom sicher abgeleitet und die Anlage automatisch abgeschaltet.", HazardCategory: "electrical", Examples: []string{"Schutzerdung mit RCD", "Schutztrennung fuer Handwerkzeuge"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "DIN VDE 0100-410"}}, + {ID: "M267", ReductionType: "protection", SubType: "electrical_protection", Name: "Kurzschlussschutz fuer alle Stromkreise", Description: "Jeder Stromkreis wird durch geeignete Ueberstromschutzorgane gegen Kurzschluss und Ueberlast geschuetzt.", HazardCategory: "electrical", Examples: []string{"Sicherungsautomat je Abgang", "Motorschutzschalter an jedem Motor"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "IEC 60204-1 — Motoren"}}, + {ID: "M268", ReductionType: "protection", SubType: "electrical_protection", Name: "Spannungsfreischaltung vor Arbeiten", Description: "Vor Arbeiten an elektrischen Anlagen werden die fuenf Sicherheitsregeln konsequent angewendet.", HazardCategory: "electrical", Examples: []string{"Freischalten, gegen Wiedereinschalten sichern, Spannungsfreiheit feststellen", "Erden und Kurzschliessen, benachbarte Teile abdecken"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "DGUV Vorschrift 3"}}, + {ID: "M269", ReductionType: "protection", SubType: "electrical_protection", Name: "Elektrostatische Aufladung verhindern", Description: "Massnahmen gegen elektrostatische Aufladung werden getroffen, besonders bei brennbaren Stoffen.", HazardCategory: "electrical", Examples: []string{"Ableitfaehige Fussboeden", "Erdung von Behaeltern und Rohrleitungen"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "TRBS 2153"}}, + {ID: "M270", ReductionType: "protection", SubType: "electrical_protection", Name: "Schutz gegen Lichtbogeneinwirkung", Description: "Bei Arbeiten an Anlagen mit Lichtbogengefahr werden Schutzausruestung und Abstandsregeln eingehalten.", HazardCategory: "electrical", Examples: []string{"Lichtbogenschutzkleidung bereitstellen", "Abstandsberechnung zu aktiven Teilen"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "DIN VDE 0105-100"}}, + {ID: "M271", ReductionType: "information", SubType: "organizational", Name: "Nur Elektrofachkraefte an elektrischen Anlagen", Description: "Arbeiten an elektrischen Anlagen duerfen nur von Elektrofachkraeften oder elektrotechnisch unterwiesenen Personen unter Aufsicht durchgefuehrt werden.", HazardCategory: "electrical", Examples: []string{"Qualifikationsnachweis Elektrofachkraft", "Aufsichtsperson benennen"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "DGUV Vorschrift 3"}}, + {ID: "M272", ReductionType: "information", SubType: "organizational", Name: "Schaltplaene aktuell halten", Description: "Schaltplaene und Stromlaufplaene werden bei jeder Aenderung der elektrischen Anlage aktualisiert.", HazardCategory: "electrical", Examples: []string{"Revisionssichere Schaltplandokumentation", "As-Built-Dokumentation nach Umbau"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "IEC 60204-1 — Technische Dokumentation"}}, + {ID: "M273", ReductionType: "protection", SubType: "electrical_protection", Name: "Schutz gegen Restspannung nach Abschaltung", Description: "Kondensatoren, Motoren und andere Energiespeicher werden nach dem Abschalten kontrolliert entladen.", HazardCategory: "electrical", Examples: []string{"Entladewiderstaende an Frequenzumrichtern", "Warnhinweis auf Restspannung"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "IEC 60204-1 — Trennen und Ausschalten"}}, + {ID: "M274", ReductionType: "protection", SubType: "electrical_protection", Name: "Sicherer Betrieb bei extremen Umgebungsbedingungen", Description: "Elektrische Ausruestung wird fuer die vorhandenen Umgebungsbedingungen (Feuchte, Staub, Temperatur) geeignet ausgewaehlt.", HazardCategory: "electrical", Examples: []string{"IP54-Gehaeuse in feuchter Umgebung", "Tropenfeste Ausruestung bei hoher Luftfeuchte"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "IEC 60204-1"}}, + {ID: "M275", ReductionType: "information", SubType: "signage", Name: "Warnung vor elektrischer Gefaehrdung", Description: "Schaltschraenke, Klemmkaesten und Zugaenge zu elektrischen Betriebsraeumen werden mit Warnzeichen gekennzeichnet.", HazardCategory: "electrical", Examples: []string{"Warnzeichen W012 an Schaltschranktuer", "Verbotszeichen fuer Unbefugte"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "ISO 7010 W012"}}, + {ID: "M276", ReductionType: "information", SubType: "ppe", Name: "Isolierende Schutzausruestung bereitstellen", Description: "Fuer Arbeiten in der Naehe aktiver Teile wird geeignete isolierende Schutzausruestung bereitgestellt.", HazardCategory: "electrical", Examples: []string{"Isolierhandschuhe der passenden Spannungsklasse", "Isolierende Standmatte"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "DIN EN 60903"}}, + {ID: "M277", ReductionType: "information", SubType: "organizational", Name: "Arbeiten unter Spannung nur nach Erlaubnisverfahren", Description: "Arbeiten unter Spannung werden nur nach schriftlichem Erlaubnisverfahren mit qualifiziertem Personal durchgefuehrt.", HazardCategory: "electrical", Examples: []string{"Erlaubnisschein fuer AuS-Arbeiten", "Anwesenheit einer zweiten Person"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "DGUV Regel 103-011"}}, + {ID: "M278", ReductionType: "protection", SubType: "monitoring", Name: "Isolationsueberwachung in IT-Netzen", Description: "Ungeerdete Netze (IT-Systeme) werden mit Isolationsueberwachungsgeraeten ausgestattet.", HazardCategory: "electrical", Examples: []string{"Isolationswaechter mit optischer Anzeige", "Automatische Abschaltung bei Doppelerdschluss"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "IEC 61557-8"}}, + {ID: "M279", ReductionType: "protection", SubType: "electrical_protection", Name: "Brandschutz an elektrischen Anlagen", Description: "Elektrische Betriebsraeume und Kabeltrassen werden mit Brandschutz- und Branderkennungseinrichtungen ausgestattet.", HazardCategory: "electrical", Examples: []string{"Brandmeldeanlage in Schaltraum", "Brandschottung an Kabeldurchfuehrungen"}, NormReferences: []string{"TRBS 2131 — Elektrische Gefaehrdungen", "DIN VDE 0100-420"}}, + + // ══════════════════════════════════════════════════════════════ + // TRBS 2141 — Dampf und Druck (10 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M280", ReductionType: "design", SubType: "fluid_design", Name: "Druckgeraete fuer Betriebsbedingungen auslegen", Description: "Druckbehaelter und Rohrleitungen werden fuer den maximal auftretenden Druck und die maximal auftretende Temperatur ausgelegt.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Berechnung nach AD-2000-Regelwerk", "Auslegung nach DGRL 2014/68/EU"}, NormReferences: []string{"TRBS 2141 — Dampf und Druck", "EN 13445"}}, + {ID: "M281", ReductionType: "protection", SubType: "fluid_protection", Name: "Druckbehaelter mit Sicherheitsventilen ausruesten", Description: "Jeder Druckbehaelter erhaelt mindestens ein Sicherheitsventil das den Druck zuverlaessig auf den zulaessigen Wert begrenzt.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Federbelastetes Sicherheitsventil", "Berstscheibe als redundante Sicherung"}, NormReferences: []string{"TRBS 2141 — Dampf und Druck", "EN ISO 4126-1 — Sicherheitsventile"}}, + {ID: "M282", ReductionType: "protection", SubType: "monitoring", Name: "Druck- und Temperaturueberwachung an Druckgeraeten", Description: "Druckgeraete werden mit Anzeigen fuer Druck und Temperatur ausgestattet, Grenzwerte werden ueberwacht.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Manometer mit Grenzwertmarkierung", "Temperaturanzeige an Dampfkessel"}, NormReferences: []string{"TRBS 2141 — Dampf und Druck", "BetrSichV Anhang 2"}}, + {ID: "M283", ReductionType: "protection", SubType: "fluid_protection", Name: "Sicherung gegen Druckstoss", Description: "Rohrleitungssysteme werden gegen Druckstoesse durch schnelles Schliessen von Armaturen geschuetzt.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Druckstossdaempfer in Rohrleitungen", "Langsam schliessende Rueckschlagklappen"}, NormReferences: []string{"TRBS 2141 — Dampf und Druck", "EN 13480"}}, + {ID: "M284", ReductionType: "information", SubType: "organizational", Name: "Betriebsanweisung fuer Druckgeraete", Description: "Fuer jedes Druckgeraet wird eine Betriebsanweisung erstellt die Bedienung, Wartung und Notfallmassnahmen beschreibt.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Anfahrprozedur fuer Dampfkessel", "Verhalten bei Sicherheitsventilansprechen"}, NormReferences: []string{"TRBS 2141 — Dampf und Druck", "BetrSichV §12"}}, + {ID: "M285", ReductionType: "protection", SubType: "thermal_protection", Name: "Beruehrungsschutz an Dampfleitungen", Description: "Dampf- und Heisswasserleitungen in Personenbereichen werden isoliert oder mit Beruehrungsschutz versehen.", HazardCategory: "thermal", Examples: []string{"Waermedaemmung an Dampfleitungen", "Schutzkoerbe an Ventilen"}, NormReferences: []string{"TRBS 2141 — Dampf und Druck", "EN ISO 13732-1"}}, + {ID: "M286", ReductionType: "information", SubType: "organizational", Name: "Wiederkehrende Pruefung von Druckgeraeten", Description: "Druckgeraete werden in festgelegten Intervallen durch zugelassene Ueberwachungsstellen geprueft.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Innere Pruefung alle 5 Jahre", "Druckpruefung alle 10 Jahre"}, NormReferences: []string{"TRBS 2141 — Dampf und Druck", "BetrSichV §15-16"}}, + {ID: "M287", ReductionType: "protection", SubType: "safety_control", Name: "Automatische Abschaltung bei Grenzwertüberschreitung", Description: "Druckgeraete werden bei Ueberschreitung von Grenzwerten fuer Druck oder Temperatur automatisch abgeschaltet.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Druckschalter mit Abschaltfunktion", "Sicherheitstemperaturbegrenzer"}, NormReferences: []string{"TRBS 2141 — Dampf und Druck", "TRD 604"}}, + {ID: "M288", ReductionType: "protection", SubType: "fluid_protection", Name: "Absperr- und Entleerungseinrichtungen", Description: "Druckgeraete erhalten Absperr- und Entleerungseinrichtungen fuer sicheres Ausserbetriebsetzen und Wartung.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Absperrventil vor jedem Druckbehaelter", "Entleerungsventil am tiefsten Punkt"}, NormReferences: []string{"TRBS 2141 — Dampf und Druck", "EN 13480"}}, + {ID: "M289", ReductionType: "information", SubType: "signage", Name: "Kennzeichnung von Druckgeraeten", Description: "Druckgeraete werden mit Kenndaten (zulaessiger Druck, Temperatur, Prueftermin) dauerhaft gekennzeichnet.", HazardCategory: "pneumatic_hydraulic", Examples: []string{"Typenschild am Druckbehaelter", "Pruefplakette mit naechstem Prueftermin"}, NormReferences: []string{"TRBS 2141 — Dampf und Druck", "DGRL 2014/68/EU"}}, + + // ══════════════════════════════════════════════════════════════ + // TRBS 2152 — Explosionsschutz (12 Massnahmen) + // ══════════════════════════════════════════════════════════════ + {ID: "M290", ReductionType: "design", SubType: "material", Name: "Explosionsfaehige Atmosphaere vermeiden", Description: "Durch konstruktive Massnahmen wird die Bildung explosionsfaehiger Atmosphaere verhindert.", HazardCategory: "material_environmental", Examples: []string{"Geschlossene Systeme verwenden", "Inertisierung mit Stickstoff"}, NormReferences: []string{"TRBS 2152 — Explosionsschutz", "ATEX 2014/34/EU"}}, + {ID: "M291", ReductionType: "design", SubType: "material", Name: "Zuendquellenanalyse und -vermeidung", Description: "Alle potenziellen Zuendquellen werden systematisch identifiziert und durch konstruktive Massnahmen eliminiert.", HazardCategory: "material_environmental", Examples: []string{"Funkenfreie Werkzeuge vorschreiben", "Heisse Oberflaechen unter Zuendtemperatur halten"}, NormReferences: []string{"TRBS 2152 — Explosionsschutz", "EN 1127-1"}}, + {ID: "M292", ReductionType: "information", SubType: "organizational", Name: "Explosionsschutzdokument erstellen", Description: "Ein Explosionsschutzdokument wird erstellt das Zoneneinteilung, Gefaehrdungsbeurteilung und Schutzmassnahmen dokumentiert.", HazardCategory: "material_environmental", Examples: []string{"Zoneneinteilung nach BetrSichV", "Zuendquellenbewertung dokumentieren"}, NormReferences: []string{"TRBS 2152 — Explosionsschutz", "BetrSichV §6"}}, + {ID: "M293", ReductionType: "protection", SubType: "safety_control", Name: "Explosionsdruckfeste Bauweise", Description: "Apparate und Behaelter in explosionsgefaehrdeten Bereichen werden druckstossfest oder explosionsdruckfest ausgelegt.", HazardCategory: "material_environmental", Examples: []string{"Druckfeste Kapselung Ex d", "Druckstossfeste Auslegung von Silos"}, NormReferences: []string{"TRBS 2152 — Explosionsschutz", "EN 14460"}}, + {ID: "M294", ReductionType: "protection", SubType: "safety_control", Name: "Explosionsunterdrueckungssystem", Description: "Automatische Systeme erkennen Explosionsbeginne und loeschen sie vor der vollstaendigen Druckentwicklung.", HazardCategory: "material_environmental", Examples: []string{"HRD-Loeschsystem an Filteranlage", "Suppressionssystem an Muehle"}, NormReferences: []string{"TRBS 2152 — Explosionsschutz", "EN 14373"}}, + {ID: "M295", ReductionType: "protection", SubType: "safety_control", Name: "Explosionsdruckentlastung", Description: "Druckentlastungsflaechen leiten den Explosionsdruck kontrolliert in ungefaehrdete Bereiche ab.", HazardCategory: "material_environmental", Examples: []string{"Berstscheiben an Silos und Filtern", "Explosionsklappen an Rohrleitungen"}, NormReferences: []string{"TRBS 2152 — Explosionsschutz", "EN 14491"}}, + {ID: "M296", ReductionType: "protection", SubType: "safety_control", Name: "Explosionsentkopplung", Description: "Rohrleitungen und Verbindungen werden mit Entkopplungselementen versehen um Explosionsfortpflanzung zu verhindern.", HazardCategory: "material_environmental", Examples: []string{"Schnellschlusschieber in Rohrleitungen", "Zellenradschleuse als konstruktiver Flammensperre"}, NormReferences: []string{"TRBS 2152 — Explosionsschutz", "EN 15089"}}, + {ID: "M297", ReductionType: "protection", SubType: "monitoring", Name: "Gaswarnsystem in Ex-Bereichen", Description: "Gasdetektoren ueberwachen die Konzentration brennbarer Gase und loesen Alarm oder Abschaltung aus.", HazardCategory: "material_environmental", Examples: []string{"Fest installierte Gaswarnanlage", "Abschaltung der Lueftung bei LEL-Ueberschreitung"}, NormReferences: []string{"TRBS 2152 — Explosionsschutz", "EN 60079-29-1"}}, + {ID: "M298", ReductionType: "protection", SubType: "monitoring", Name: "Staubkonzentrationsüberwachung", Description: "In Bereichen mit brennbarem Staub wird die Staubkonzentration ueberwacht und bei Grenzwertueberschreitung werden Massnahmen eingeleitet.", HazardCategory: "material_environmental", Examples: []string{"Streulichtmessgeraet im Absaugkanal", "Reinigungsintervalle bei Staubansammlung"}, NormReferences: []string{"TRBS 2152 — Explosionsschutz", "EN 60079-10-2"}}, + {ID: "M299", ReductionType: "information", SubType: "organizational", Name: "Ex-Zonen kennzeichnen und Zutritt regeln", Description: "Explosionsgefaehrdete Bereiche werden nach Ex-Zonen gekennzeichnet und der Zutritt wird geregelt.", HazardCategory: "material_environmental", Examples: []string{"EX-Zonenschild an jedem Zugang", "Zugangsregelung fuer Zone 0 und 1"}, NormReferences: []string{"TRBS 2152 — Explosionsschutz", "DGUV Vorschrift 3"}}, + {ID: "M300", ReductionType: "information", SubType: "training", Name: "Unterweisung Explosionsschutz", Description: "Beschaeftigte in explosionsgefaehrdeten Bereichen werden ueber Gefahren, Schutzmassnahmen und Verhaltensregeln unterwiesen.", HazardCategory: "material_environmental", Examples: []string{"Jaehrliche Ex-Schutz-Unterweisung", "Einweisung in Gaswarnsystem"}, NormReferences: []string{"TRBS 2152 — Explosionsschutz", "GefStoffV §14"}}, + {ID: "M301", ReductionType: "information", SubType: "organizational", Name: "Pruefung elektrischer Geraete in Ex-Bereichen", Description: "Elektrische Geraete in explosionsgefaehrdeten Bereichen werden regelmaessig auf einwandfreien Zustand und Eignung fuer die Ex-Zone geprueft.", HazardCategory: "material_environmental", Examples: []string{"Sichtpruefung Ex-Geraete taeglich", "Detailpruefung durch befaehigte Person jaehrlich"}, NormReferences: []string{"TRBS 2152 — Explosionsschutz", "BetrSichV §14"}}, + } +} diff --git a/ai-compliance-sdk/internal/iace/measures_library_trgs.go b/ai-compliance-sdk/internal/iace/measures_library_trgs.go new file mode 100644 index 0000000..b642823 --- /dev/null +++ b/ai-compliance-sdk/internal/iace/measures_library_trgs.go @@ -0,0 +1,45 @@ +package iace + +// getTRGSMeasures returns protective measures derived from TRGS (Technische +// Regeln fuer Gefahrstoffe) obligations found in the bp_compliance_ce RAG +// collection. Each measure is independently formulated. +// IDs: M372–M382 (11 measures). +// +// RAG sources validated: TRGS 600 (Substitution), TRGS 500 (Allgemeine +// Schutzmaßnahmen), TRGS 401 (Hautschutz), TRGS 400 (Gefaehrdungsbeurteilung), +// TRGS 402 (Luftueberwachung), TRGS 509/510 (Lagerung), TRGS 727 (Elektrostatik), +// TRGS 555 (Betriebsanweisung). +func getTRGSMeasures() []ProtectiveMeasureEntry { + return []ProtectiveMeasureEntry{ + // ── Gefahrstoff-Substitution (TRGS 600) ───────────────────── + {ID: "M372", ReductionType: "design", SubType: "material", Name: "Gefahrstoff-Substitutionspruefung durchfuehren", Description: "Vor dem Einsatz eines Gefahrstoffs wird geprueft ob ein weniger gefaehrlicher Stoff oder ein weniger gefaehrliches Verfahren das gleiche Ergebnis erreicht.", HazardCategory: "material_environmental", Examples: []string{"Loesemittelfreie Reiniger statt halogenierter Loesemittel", "Wasserbasierte Lacke statt Spruehlacke"}, NormReferences: []string{"TRGS 600 — Substitution", "GefStoffV §6"}}, + + // ── Geschlossene Systeme / Absaugung (TRGS 500) ───────────── + {ID: "M373", ReductionType: "design", SubType: "material", Name: "Geschlossene Systeme fuer Gefahrstoffe verwenden", Description: "Taetigkeiten mit Gefahrstoffen werden in geschlossenen Systemen durchgefuehrt um eine Freisetzung in die Arbeitsumgebung zu verhindern.", HazardCategory: "material_environmental", Examples: []string{"Geschlossenes Befuellsystem fuer Kuehlschmiermittel", "Dichtungssystem an Reaktoren"}, NormReferences: []string{"TRGS 500 — Allgemeine Schutzmaßnahmen", "GefStoffV §9"}}, + {ID: "M374", ReductionType: "protection", SubType: "extraction", Name: "Absaugung am Entstehungsort einrichten", Description: "Gefahrstoffdaempfe, -staeuebe und -aerosole werden direkt am Entstehungsort erfasst und abgesaugt bevor sie in den Atembereich gelangen.", HazardCategory: "material_environmental", Examples: []string{"Punktabsaugung an Loetstation", "Randabsaugung an Galvanikbecken"}, NormReferences: []string{"TRGS 500 — Allgemeine Schutzmaßnahmen", "TRGS 540 — Sensorische Bewertung"}}, + + // ── Arbeitsplatzgrenzwert-Ueberwachung (TRGS 402) ──────────── + {ID: "M375", ReductionType: "information", SubType: "organizational", Name: "Arbeitsplatzgrenzwerte ueberwachen", Description: "Die Gefahrstoffkonzentration in der Luft am Arbeitsplatz wird ermittelt und mit den geltenden Arbeitsplatzgrenzwerten verglichen.", HazardCategory: "material_environmental", Examples: []string{"Expositionsmessung durch Messstelle", "Beurteilung anhand TRGS 402 Verfahren"}, NormReferences: []string{"TRGS 402 — Ermittlung und Beurteilung der Konzentrationen", "GefStoffV §7"}}, + + // ── Hautschutzplan (TRGS 401) ──────────────────────────────── + {ID: "M376", ReductionType: "information", SubType: "ppe", Name: "Hautschutzplan erstellen und aushangen", Description: "Fuer Arbeitsplaetze mit Hautgefaehrdung wird ein taetigkeitsbezogener Hautschutzplan erstellt der Hautschutz-, Hautreinigungs- und Hautpflegemittel festlegt.", HazardCategory: "material_environmental", Examples: []string{"Hautschutzplan an Werkbank aushangen", "Spender fuer Hautschutz-/Reinigungsmittel bereitstellen"}, NormReferences: []string{"TRGS 401 — Hautschutz", "TRGS 500 — Allgemeine Schutzmaßnahmen"}}, + + // ── Gefahrstofflagerung (TRGS 509/510) ────────────────────── + {ID: "M377", ReductionType: "information", SubType: "organizational", Name: "Gefahrstoffe sicher lagern", Description: "Gefahrstoffe werden in zugelassenen Behaeltern und Lagereinrichtungen unter Beachtung der Zusammenlagerungsverbote gelagert.", HazardCategory: "material_environmental", Examples: []string{"Sicherheitsschrank fuer entzuendbare Fluessigkeiten", "Auffangwanne unter Gefahrstoff-IBC"}, NormReferences: []string{"TRGS 510 — Lagerung von Gefahrstoffen", "TRGS 509 — Lagerung in ortsfesten Behaeltern"}}, + + // ── Gefahrstoffverzeichnis (TRGS 400) ─────────────────────── + {ID: "M378", ReductionType: "information", SubType: "organizational", Name: "Gefahrstoffverzeichnis fuehren", Description: "Ein Verzeichnis aller im Betrieb verwendeten Gefahrstoffe wird gefuehrt und aktuell gehalten, einschliesslich Mengen, Einsatzbereiche und Schutzmassnahmen.", HazardCategory: "material_environmental", Examples: []string{"Digitales Gefahrstoffkataster", "Jaehrliche Aktualisierung mit Bestandsabgleich"}, NormReferences: []string{"TRGS 400 — Gefaehrdungsbeurteilung", "GefStoffV §6"}}, + + // ── Sicherheitsdatenblaetter (TRGS 400) ───────────────────── + {ID: "M379", ReductionType: "information", SubType: "organizational", Name: "Sicherheitsdatenblaetter bereithalten", Description: "Fuer jeden verwendeten Gefahrstoff liegt ein aktuelles Sicherheitsdatenblatt am Einsatzort vor und ist fuer alle Beschaeftigten zugaenglich.", HazardCategory: "material_environmental", Examples: []string{"SDB-Ordner an der Werkstatt", "Digitales SDB-System mit QR-Code am Behaelter"}, NormReferences: []string{"TRGS 400 — Gefaehrdungsbeurteilung", "REACH Art. 31"}}, + + // ── Wirksamkeitskontrolle (TRGS 500) ──────────────────────── + {ID: "M380", ReductionType: "information", SubType: "organizational", Name: "Wirksamkeit der Gefahrstoff-Schutzmassnahmen pruefen", Description: "Die getroffenen Schutzmassnahmen bei Taetigkeiten mit Gefahrstoffen werden regelmaessig auf Wirksamkeit ueberprueft und bei Bedarf angepasst.", HazardCategory: "material_environmental", Examples: []string{"Jaehrliche Wirksamkeitskontrolle der Absauganlage", "Expositionsvergleich vor/nach Massnahme"}, NormReferences: []string{"TRGS 500 — Allgemeine Schutzmaßnahmen", "GefStoffV §7"}}, + + // ── Elektrostatik in Ex-Bereichen (TRGS 727) ──────────────── + {ID: "M381", ReductionType: "protection", SubType: "electrical_protection", Name: "Elektrostatische Zuendgefahren in Ex-Bereichen vermeiden", Description: "In explosionsgefaehrdeten Bereichen werden Massnahmen gegen elektrostatische Aufladungen getroffen, insbesondere Erdung leitfaehiger Anlagenteile und Einsatz ableitfaehiger Materialien.", HazardCategory: "material_environmental", Examples: []string{"Erdungsanschluss an Abfuellstutzen", "Ableitfaehige Schlaeuche und Bodenbelaege"}, NormReferences: []string{"TRGS 727 — Elektrostatische Aufladungen", "TRGS 723 — Zuendquellenvermeidung"}}, + + // ── Gefahrstoff-Betriebsanweisung (TRGS 555) ──────────────── + {ID: "M382", ReductionType: "information", SubType: "organizational", Name: "Gefahrstoff-Betriebsanweisung erstellen", Description: "Fuer jeden Gefahrstoff oder jede Gefahrstoffgruppe wird eine arbeitsplatzbezogene Betriebsanweisung erstellt die Gefahren, Schutzmassnahmen und Erste-Hilfe-Massnahmen beschreibt.", HazardCategory: "material_environmental", Examples: []string{"Betriebsanweisung fuer Kuehlschmiermittel", "Betriebsanweisung fuer Reinigungschemikalien"}, NormReferences: []string{"TRGS 555 — Betriebsanweisung", "GefStoffV §14"}}, + } +} diff --git a/ai-compliance-sdk/internal/iace/tag_resolver.go b/ai-compliance-sdk/internal/iace/tag_resolver.go index b993ca5..c9897bc 100644 --- a/ai-compliance-sdk/internal/iace/tag_resolver.go +++ b/ai-compliance-sdk/internal/iace/tag_resolver.go @@ -168,5 +168,31 @@ func GetEvidenceTypeLibrary() []EvidenceTypeInfo { {ID: "E23", Category: "inspection", LabelDE: "Typenpruefzertifikat", LabelEN: "Type Examination Certificate", Tags: []string{"certification_evidence"}, Sort: 23}, {ID: "E24", Category: "training", LabelDE: "Schulungsnachweis Bediener", LabelEN: "Operator Training Record", Tags: []string{"training_evidence"}, Sort: 24}, {ID: "E25", Category: "training", LabelDE: "Sicherheitsunterweisung (Protokoll)", LabelEN: "Safety Briefing Record", Tags: []string{"training_evidence"}, Sort: 25}, + // ── Phase 2: Erweiterte Evidenztypen (E26-E50) ─────────────── + {ID: "E26", Category: "test", LabelDE: "Materialzertifikat/Werkstoffzeugnis", LabelEN: "Material Certificate", Tags: []string{"test_evidence", "design_evidence"}, Sort: 26}, + {ID: "E27", Category: "test", LabelDE: "EMV-Pruefprotokoll", LabelEN: "EMC Test Report", Tags: []string{"test_evidence"}, Sort: 27}, + {ID: "E28", Category: "test", LabelDE: "Druckpruefungsprotokoll (DGRL/PED)", LabelEN: "Pressure Test Protocol (PED)", Tags: []string{"test_evidence"}, Sort: 28}, + {ID: "E29", Category: "test", LabelDE: "Laerm-Expositionsbericht", LabelEN: "Noise Exposure Report", Tags: []string{"test_evidence"}, Sort: 29}, + {ID: "E30", Category: "test", LabelDE: "Ergonomie-Bewertung", LabelEN: "Ergonomic Assessment", Tags: []string{"test_evidence", "inspection_evidence"}, Sort: 30}, + {ID: "E31", Category: "test", LabelDE: "Thermografie-Bericht", LabelEN: "Thermography Report", Tags: []string{"test_evidence"}, Sort: 31}, + {ID: "E32", Category: "inspection", LabelDE: "ATEX-Konformitaetsbewertung", LabelEN: "ATEX Conformity Assessment", Tags: []string{"certification_evidence"}, Sort: 32}, + {ID: "E33", Category: "test", LabelDE: "SIL/PL-Validierungsbericht", LabelEN: "SIL/PL Validation Report", Tags: []string{"test_evidence", "design_evidence"}, Sort: 33}, + {ID: "E34", Category: "design", LabelDE: "Betriebsanleitung (EN IEC 82079-1)", LabelEN: "Operating Instructions (IEC 82079-1)", Tags: []string{"design_evidence"}, Sort: 34}, + {ID: "E35", Category: "inspection", LabelDE: "Ex-Schutz-Dokument", LabelEN: "Explosion Protection Document", Tags: []string{"certification_evidence", "inspection_evidence"}, Sort: 35}, + {ID: "E36", Category: "test", LabelDE: "Schweissnaht-Pruefprotokoll", LabelEN: "Weld Seam Test Protocol", Tags: []string{"test_evidence"}, Sort: 36}, + {ID: "E37", Category: "test", LabelDE: "Oberflaechen-Rauheitsmessung", LabelEN: "Surface Roughness Measurement", Tags: []string{"test_evidence"}, Sort: 37}, + {ID: "E38", Category: "test", LabelDE: "Leckagepruefung Hydraulik/Pneumatik", LabelEN: "Leakage Test Hydraulic/Pneumatic", Tags: []string{"test_evidence"}, Sort: 38}, + {ID: "E39", Category: "test", LabelDE: "Schallemissionsmessung", LabelEN: "Sound Emission Measurement", Tags: []string{"test_evidence"}, Sort: 39}, + {ID: "E40", Category: "design", LabelDE: "Standsicherheitsnachweis", LabelEN: "Stability Proof", Tags: []string{"design_evidence", "analysis_evidence"}, Sort: 40}, + {ID: "E41", Category: "test", LabelDE: "Bremsentest-Protokoll", LabelEN: "Brake Test Protocol", Tags: []string{"test_evidence"}, Sort: 41}, + {ID: "E42", Category: "test", LabelDE: "Vibrationsmessung Hand-Arm", LabelEN: "Hand-Arm Vibration Measurement", Tags: []string{"test_evidence"}, Sort: 42}, + {ID: "E43", Category: "design", LabelDE: "Kurzschlussstrom-Berechnung", LabelEN: "Short Circuit Current Calculation", Tags: []string{"design_evidence", "analysis_evidence"}, Sort: 43}, + {ID: "E44", Category: "design", LabelDE: "Schutzabstands-Berechnung (ISO 13857)", LabelEN: "Safety Distance Calculation", Tags: []string{"design_evidence", "analysis_evidence"}, Sort: 44}, + {ID: "E45", Category: "test", LabelDE: "Nachlaufweg-Messung", LabelEN: "Overrun Distance Measurement", Tags: []string{"test_evidence"}, Sort: 45}, + {ID: "E46", Category: "test", LabelDE: "Kraftmessung Schutztuer", LabelEN: "Guard Door Force Measurement", Tags: []string{"test_evidence", "guard_measure"}, Sort: 46}, + {ID: "E47", Category: "test", LabelDE: "Anlaufstrom-Messung", LabelEN: "Inrush Current Measurement", Tags: []string{"test_evidence"}, Sort: 47}, + {ID: "E48", Category: "cyber", LabelDE: "Software-Versionsmanagement-Nachweis", LabelEN: "Software Version Management Evidence", Tags: []string{"cyber_evidence"}, Sort: 48}, + {ID: "E49", Category: "cyber", LabelDE: "Vulnerability-Scan-Bericht", LabelEN: "Vulnerability Scan Report", Tags: []string{"cyber_evidence", "test_evidence"}, Sort: 49}, + {ID: "E50", Category: "cyber", LabelDE: "SBOM-Vollstaendigkeitsnachweis", LabelEN: "SBOM Completeness Evidence", Tags: []string{"cyber_evidence"}, Sort: 50}, } }