Kostenoptimierung NOVA – 1 kWh Light-Mobility-Batterie | RCE { "@context": "https://schema.org", "@type": "Organization", "@id": "http://batterymanager.de/#organization", "name": "Rohr Consulting & Engineering (RCE)", "alternateName": "BatteryManager", "url": "http://batterymanager.de/", "logo": "http://batterymanager.de/static/assets/rce-logo-dark.png", "description": "RCE – Rohr Consulting & Engineering bietet Battery Consulting, Testing, Design Validation (DVP), Cost-Down-Workshops und Zertifizierungsunterstützung für Lithium-Ionen-Batteriesysteme in Automotive, LEV, eVTOL, Industrie und Stationary Storage.", "sameAs": [ "https://www.linkedin.com/company/107737624", "https://www.kununu.com/de/rohr-consulting-engineering", "https://www.batterymanager.de", "https://g.page/r/CZPsPogUVrDmEBM/review" ], "brand": { "@type": "Brand", "name": "BatteryManager", "url": "https://www.batterymanager.de", "logo": "https://www.batterymanager.de/static/images/favicon.png" } , "contactPoint": [{ "@type": "ContactPoint", "contactType": "customer support", "email": "info@batterymanager.de", "telephone": "+49-176-23307802", "areaServed": ["DE", "EU"], "availableLanguage": ["de", "en"] }], "address": { "@type": "PostalAddress", "streetAddress": "Christianstraße 34", "postalCode": "55130", "addressLocality": "Mainz", "addressCountry": "DE" } }  { "@context": "https://schema.org", "@type": "WebPage", "@id": "http://batterymanager.de/cost_optimization#webpage", "name": "Cost optimization of a 1 kWh light-mobility battery – Case Study | RCE", "url": "http://batterymanager.de/cost_optimization", "inLanguage": "de", "description": "Case study: cost-down engineering of a ~1 kWh scooter battery – from −3.2 € negative PC margin to +58.5 € per pack through DFMA, BOM optimization, and a leaner production line with fewer components and shorter cycle time.", "keywords": [ "battery cost-down", "battery cost optimization", "design-to-cost", "DFMA", "manufacturing cost optimization", "light mobility battery", "e-scooter battery", "lithium-ion battery pack", "PC margin improvement", "RCE", "BatteryManager" ], "about": { "@type": "Thing", "name": "Cost optimization of lithium-ion battery packs" }, "mainEntity": { "@type": "CaseStudy", "@id": "http://batterymanager.de/cost_optimization#casestudy", "name": "NOVA: Cost optimization of a 1 kWh light-mobility battery", "description": "From −3.2 € to +58.5 € PC margin per pack: optimization of a ~1 kWh scooter battery via cell interconnect design, BOM simplification, and production line redesign – fewer parts, shorter cycle time, and stretched CapEx.", "keywords": [ "battery cost-down", "design-to-cost", "DFMA workshop", "manufacturing cost reduction", "light mobility battery", "e-scooter battery", "production line optimization" ], "industry": [ "E-Mobility", "Light Electric Vehicles", "Battery Manufacturing", "Energy Storage" ], "provider": { "@type": "Organization", "@id": "http://batterymanager.de/#organization" }, "result": [ { "@type": "QuantitativeValue", "name": "PC margin improvement per pack", "value": 61.7, "unitText": "EUR", "description": "Increase from −3.2 € to +58.5 € PC margin per pack." }, { "@type": "QuantitativeValue", "name": "Component reduction", "unitText": "percent", "description": "Significant reduction in number of components and assembly steps (DFMA-driven)." } ] } }  /* Animations / helpers */ .gradient-volt-orange { background: linear-gradient(135deg, #0B1C33 0%, #FF5C00 100%); } .fade-in { animation: fadeIn 0.8s ease-in-out; } @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } .slide-in-left { animation: slideInLeft 0.8s ease-out; } @keyframes slideInLeft { from { opacity: 0; transform: translateX(-30px);} to { opacity: 1; transform: translateX(0);} } .slide-in-right { animation: slideInRight 0.8s ease-out; } @keyframes slideInRight { from { opacity: 0; transform: translateX( 30px);} to { opacity: 1; transform: translateX(0);} } .hover-lift { transition: transform 0.3s ease, box-shadow 0.3s ease; } .hover-lift:hover { transform: translateY(-2px); box-shadow: 0 10px 25px rgba(0,0,0,0.1); } .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; } /* Brand tokens */ :root{ --rce-volt:#0B1C33; /* Volt Navy */ --rce-pulse:#FF5C00; /* Pulse Orange */ --rce-pulse-2:#FF7A33; --rce-white:#FFFFFF; --rce-focus:rgba(255,255,255,.65); } /* Base button */ .btn{ display:inline-flex; align-items:center; justify-content:center; gap:.5rem; padding:.75rem 1.75rem; border-radius:.875rem; font-weight:600; line-height:1; text-decoration:none; cursor:pointer; user-select:none; -webkit-user-select:none; transition:transform .15s ease, box-shadow .2s ease, filter .2s ease, background-color .2s ease, color .2s ease, border-color .2s ease; box-shadow:0 10px 18px rgba(0,0,0,.18); } .btn:focus{ outline:none; box-shadow:0 0 0 2px var(--rce-focus), 0 12px 22px rgba(0,0,0,.24); } .btn:active{ transform:translateY(0); filter:brightness(.98); } /* Variants */ .btn-primary{ color:var(--rce-white); background-image:linear-gradient(90deg,var(--rce-pulse),var(--rce-pulse-2)); border:0; } .btn-primary:hover{ filter:brightness(1.05); box-shadow:0 14px 26px rgba(0,0,0,.28); transform:translateY(-1px); } .btn-secondary{ background-color: transparent; border:2px solid var(--rce-white); border-radius: 12px; color: var(--rce-white); opacity: 0.9; display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; } .btn-secondary:hover{ filter:brightness(1.05); box-shadow:0 14px 26px rgba(0,0,0,.28); transform:translateY(-1px); } .btn-outline-white{ color:var(--rce-white); background:rgba(255,255,255,.06); border:2px solid rgba(255,255,255,.65); backdrop-filter: blur(10px); } .btn-outline-white:hover{ background:var(--rce-white); color:var(--rce-volt); transform:translateY(-1px); } .btn-outline-navy{ color:var(--rce-volt); background:transparent; border:2px solid var(--rce-volt); } .btn-outline-navy:hover{ background:var(--rce-volt); color:var(--rce-white); transform:translateY(-1px); } .btn-link{ padding:0; border:0; background:transparent; box-shadow:none; color:var(--rce-pulse); font-weight:600; } .btn-link:hover{ text-decoration:underline; filter:brightness(1.05); } /* Sizes & helpers */ .btn-sm{ padding:.5rem 1rem; border-radius:.75rem; font-size:.95rem; } .btn-lg{ padding:1rem 2rem; border-radius:1rem; font-size:1.125rem; } .btn-block{ display:flex; width:100%; } .btn-icon{ padding:.625rem .75rem; } .btn-ghost{ background:transparent; color:var(--rce-volt); border:0; box-shadow:none; } .btn[disabled], .btn.is-loading{ opacity:.6; cursor:not-allowed; transform:none!important; filter:none!important; box-shadow:none!important; } .btn .icon{ width:1.1em; height:1.1em; } html, body { max-width: 100%; overflow-x: hidden; }  (function(c,l,a,r,i,t,y){ c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)}; t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i; y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y); })(window, document, "clarity", "script", "strq37kgl7"); 

 (/)

-  Home  (/)
-  Fallstudien  (/references)
-  Fallstudie NOVA  (/cost_optimization)
-  Team  (/about)

 NOVA anfragen  (/#contact)

 (/set-lang/de?next=/cost_optimization?) (/set-lang/en?next=/cost_optimization?)

 Startseite  (/) Fallstudien  (/references) Team  (/about) Kontakt aufnehmen  (/#contact)

 (/set-lang/de?next=/cost_optimization?) (/set-lang/en?next=/cost_optimization?)

 Cookie-Einstellungen 

 Wir verwenden Cookies, um die Funktionalität unserer Website sicherzustellen und die Nutzererfahrung zu verbessern. Technisch notwendige Cookies (z. B. für Sprachpräferenz und Sicherheit) werden automatisch gesetzt. Für Analyse-Cookies (Microsoft Clarity) benötigen wir Ihre Einwilligung. Weitere Informationen (/privacy-policy)

 Nur notwendige  Alle akzeptieren 

 ← Zurück zur Startseite  (/)

 Alle Referenzen & Fallstudien  (/references)

 Fallstudie · Kostenoptimierung 

#  NOVA: Kostenoptimierung einer 1 kWh Light-Mobility-Batterie 

 97,8 Mio. € Einsparung  über die Projektlaufzeit 

 In einem realen Projekt: Für eine rund 1 kWh große Batterie im Light-Mobility-Bereich (z. B. E-Scooter) wurde das bestehende Basiskonzept systematisch kostenoptimiert: weniger Bauteile, kürzere Zykluszeit und eine von negativ auf deutlich positiv gedrehte Produktkosten-Marge. 
 NOVA anfragen  (/#contact)

55,6 % günstiger

variable Produktionskosten

43 % schneller

Zykluszeit

17 % schlanker

Prozessschritte

61,7 € rentabler

PC-Marge pro Pack /* Headline wrapping for all devices */ #startseite h1 { word-break: normal; overflow-wrap: normal; white-space: normal; text-wrap: balance; text-shadow: 0 1px 3px rgba(0,0,0,.25); } /* Icon badge for KPIs */ .kpi-ico { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; border-radius: 9999px; background: rgba(255,255,255,.12); box-shadow: inset 0 0 0 1px rgba(255,255,255,.18); backdrop-filter: blur(4px); } .kpi-ico svg { width: 22px; height: 22px; color: #fff; } #stackedCostComparison { max-height: 360px; } /* HERO desktop defaults are gegeben inline; below we override for tablet/mobile */ @media (max-width: 1024px) { #startseite { min-height: 560px; } #startseite .nova-hero-photo-layer { background-position: center bottom !important; background-size: 145% !important; -webkit-mask-image: linear-gradient( to top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.15) 25%, rgba(0,0,0,0.8) 55%, rgba(0,0,0,1) 100% ) !important; mask-image: linear-gradient( to top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.15) 25%, rgba(0,0,0,0.8) 55%, rgba(0,0,0,1) 100% ) !important; } #startseite .nova-hero-overlay { background: linear-gradient( to top, rgba(11,28,51,0.96) 0%, rgba(11,28,51,0.96) 35%, rgba(11,28,51,0.9) 65%, rgba(11,28,51,0.85) 100% ) !important; } } @media (max-width: 640px) { #startseite h1 { font-size: 1.9rem; line-height: 1.25; } #startseite p { font-size: 1rem; } #startseite .kpi-item { align-items: flex-start; } }  @media (max-width: 767.98px){ /* 1. Mobile-Regel: Layer verstecken (LCP-Optimierung) */ #hero-photo-layer{display:none;} } @media (min-width: 768px){ /* 2a. Desktop-Regel: Layer anzeigen (stellt die Sichtbarkeit sicher) */ #hero-photo-layer{display:block;} /* 2b. Desktop-Regel: Bild nur auf Desktop laden */ .nova-hero-photo-layer{ background:url('/static/images/e-Bike_Battery_small.webp') right center / 45% no-repeat; } } /* Change background gradient on mobile (Volt Navy → Pulse Orange) - BLEIBT ORIGINAL */ @media (max-width: 767.98px){ /* Hero section + Collaboration section */ #startseite>div:first-child,.gradient-volt-orange{ background:linear-gradient(135deg, #0b1c33 0%, #102843 25%, #ff6600 75%, #ff8c33 100% )!important; } } 

##  Startbedingung 

###  Situation im Ausgangszustand 

- 

 Batterie für „Light Mobility“ (z. B. E-Scooter) mit ca. 1 kWh Energieinhalt. 

- 

 Basiskonzept der Firma ohne unsere Optimierung. 

- 

 Entscheidungen stark geprägt durch „Das haben wir schon immer so gemacht“ sowie bereits abgeschriebene Anlagen am Produktionsstandort. 

- 

 Kaum innovatives Produkt bei nicht konkurrenzfähigen Produktionspreisen. 

- 

 Zykluszeit aller Prozessschritte: 803 s pro Batteriepack. 

###  Produktkosten im Ausgangszustand 

KomponenteMengeAnteil [%]Kosten [€]Setzteile (Zellen & BMS)4061,8179,7Andere Komponenten6025,574,0Produktionskosten–12,737,0Produktkosten–100290,7

### Bauteile

 Die Firma greift auf immer wieder verwendete klassische Bauteile zurück – ohne Innovation. 

### Verbindungstechnik

 In allen Komponenten wurde dieselbe Verbindungstechnik verwendet. Die Anlagen hierfür sind vorhanden und seit Jahren abgeschrieben. 

### Zellkontaktierung

 In allen Produkten wurde dieselbe Zellkontaktierungstechnik verwendet. Die Anlagen hierfür sind vorhanden und seit Jahren abgeschrieben. 

### Linienauslegung

 Um die geplante Ausbringungsmenge zu erfüllen, ist mehr als eine Produktionsanlage notwendig. 

##  Aufwand: Gegenstand der Untersuchung 

 Im optimierten Konzept wurden sowohl die Stückkosten als auch der Fertigungsaufwand deutlich reduziert – bei gleichbleibender Funktionalität und Leistungsfähigkeit der Batterie. 

### Bauteiluntersuchung

 Jede einzelne Komponente wurde detailliert untersucht hinsichtlich Kosten, Funktion, Übernahme von Funktionen anderer Bauteile, Herstellbarkeit und der Möglichkeit, mehrere Komponenten zu einer zusammenzufassen oder aus einer teuren, komplexen Komponente günstigere Einzelteile zu erzeugen. 

### Verbindungstechnik

 Jede Verbindung zwischen Bauteilen wurde nach möglichen Verbindungstechniken untersucht. Diese wurden beurteilt nach Taktzeit, Kosten, Funktion, Herstellbarkeit, Korrosion, chemischer Verträglichkeit sowie notwendigen Produktionsschritten und Anlageninvestitionen (CapEx). 

### Zellkontaktierung

 Alle gängigen Zellverbindungstechniken wurden systematisch untersucht und in Bezug auf Herstellkosten, Assemblierungsaufwand, Zykluszeiten, notwendige Produktionsschritte und Anlageninvestitionen (CapEx) bewertet. 

### Linienauslegung

 Die notwendige Produktionszeit pro Batteriepack wurde für alle Kombinationen der verschiedenen Bauteile, Zellkontaktierungs- und Verbindungstechniken gegenübergestellt. Berücksichtigt wurde auch, wenn bei einem Konzept mehr als eine Produktionsanlage benötigt wurde. 

##  Produkt nach der Optimierung 

###  Situation nach Optimierung 

- 

 Batterie für „Light Mobility“ (z. B. E-Scooter) mit ca. 1 kWh Energieinhalt. 

- 

 Konkurrenzfähiges, innovatives Produkt mit mehreren Patenten. 

- 

 Entscheidungen nun geprägt durch optimale Lösungen statt durch Altanlagen. 

- 

 Gemeinschaftlich getragene Entscheidungen führen zu breiter Akzeptanz. 

- 

 Zykluszeit aller Prozessschritte: 457 s pro Batteriepack. 

###  Kostenstruktur nach Optimierung 

KomponenteMengeAnteil [%]Kosten [€]Setzteile4078,5179,7Weitere Komponenten2914,432,9Fertigungskosten–7,116,4Produktkosten–100229,0

###  Kostenreduktion: Produktions- und Komponenten-Kosten 

 Die Balken zeigen die relativen Produktions- und Komponenten-Kosten vor und nach der Optimierung im Vergleich zu den ursprünglichen 100 %. 

### Bauteile

 Reduktion der Bauteilvielfalt und -anzahl → weniger Komplexität in Einkauf, Logistik und Qualitätsmanagement. Optimierung der wertschöpfenden Fertigungsprozesskette und Eliminierung ineffizienter Prozessschritte. 

### Verbindungstechnik

 Es wurde sich bewusst für drei unterschiedliche Verbindungstechniken an verschiedenen Stellen im Produkt entschieden. So konnten sowohl Kosten gesenkt als auch Qualität und Langlebigkeit gesteigert werden. 

### Zellkontaktierung

 Umstieg auf eine kostenoptimierte Zellverbindungstechnik trotz höherer Anfangsinvestition. Die Anschaffung neuer Schweißanlagen war wirtschaftlich rentabel, obwohl vorhandene Geräte bereits abgeschrieben waren. 

### Linienauslegung

 Es wurden bewusst zwei Ausbaustufen gewählt. Dadurch wurden Anfangsinvestitionen reduziert. Die zweite Ausbaustufe beinhaltet eine Vollautomatisierung zur Erreichung der Kammlinie. Der Break-even-Point (im Vergleich zum Startkonzept) wurde bereits im ersten Jahr nach SOP erreicht. 

##  Erfolg: Technologischer Mehrwert & organisatorische Wirkung 

 Durch das NOVA-Produkt wurde mehr als nur eine Kostenoptimierung erreicht. 

 Es schuf technologische Alleinstellungsmerkmale, verbesserte interne Prozesse und machte die Plattform skalierungsfähig. 

### Patente & technologische Game-Changer

 In diesem NOVA-Projekt wurde ein „Game-Changer“-Patent erfolgreich entwickelt, im Design implementiert und angemeldet. Die neue Verbindungstechnik trägt nicht nur zur Kostensenkung bei, sondern erhöht gleichzeitig Montagefreundlichkeit und Robustheit. 

 Zusätzlich wurden mehrere angegliederte Patente in den Bereichen „Batteriesicherheit“, „Untersuchungsmethoden“ und „Batteriedesign“ angemeldet. Die Kostenoptimierung wurde damit als strategische Weiterentwicklung der Technologie genutzt. 

−55,6 %

### Reduzierte Produktkosten

 Von 111 € auf 49,3 € (ohne Setzteile). 

−43 %

### Reduzierte Zykluszeit

 Von 803 s auf 457 s. 

−51 %

### Weniger Einzelteile

 Von 60 auf 29 Stück. 

+61,7 €

### Einsparung je Batteriepack

 Von 290,7 € auf 229,0 €. 

###  Möchten auch Sie ähnliche Erfolge erzielen? 

 Lassen Sie uns Ihr aktuelles Produktkonzept gemeinsam analysieren. Wir identifizieren konkrete Einsparpotenziale – von der Verbindungstechnik über Bauteilreduktion bis zur Linienauslegung. 
 Kontaktieren Sie uns zu NOVA  (/#contact)

 Mehr über das Team hinter NOVA erfahren Sie auf unserer  Über-uns-Seite  (/about). 

####  ❯ Schrittweises Vorgehen mit NOVA

 NOVA ist kein einmaliger Workshop, sondern ein klar strukturiertes Vorgehen – von der ersten Idee bis zur umgesetzten Kostenoptimierung. So läuft ein typisches Projekt ab: 

 1 

 Grundsätzliche Zusammenarbeits­potenziale klären (15–30 min). 

 2 

 Bedarfsanalyse & Anwendungs­potenziale verstehen (ca. 1 h – Remote). 

 3 

 Angebot vorstellen, Fragen klären & Entscheidung über Start (30–60 min). 

 4 

 Nach Angebotsannahme: Assessment vor Ort (ca. 2 Wochen). 

 5 

 Workshop mit Ihrem Team zur Identifikation der Potenziale (3 Tage). 

 6 

 Zusammenfassung Potenziale & Entscheidung Weiterführung von NOVA. 

 7 

 Umsetzung der Maßnahmen (Umfang abhängig vom Kunden – überwiegend Remote / Premium vor Ort). 

 8 

 Fine-up-Workshop: Abgleich mit Ihren Teams und Feinschliff der Lösungen. 

 9 

 Ausarbeitung & Begleitung der Umsetzung in Entwicklung, Einkauf und Produktion. 

 10 

 Design Freeze & finale Zusammenfassung der Produkt­optimierung – inkl. belastbarer Business-Case-Unterlagen. 

 Innovation auf dem nächsten Level – Ihre Experten für Batterien, E-Mobilität, Energiespeicher und Kostensenkung. 

 (https://www.linkedin.com/company/107737624)

### Navigation

- Home (/)
- Fallstudien (/references)
- Team (/about)
- PRODIGY (/prodigy)
- Kontakt (/#contact)

 © 2026 Rohr Consulting & Engineering. Alle Rechte vorbehalten. 

Datenschutzerklärung (/privacy-policy)AGB (/terms)Impressum (/impressum) Cookie-Einstellungen  // Mobile-Menü umschalten function toggleMobileMenu() { const mobileMenu = document.querySelector('.mobile-menu'); const toggleBtn = document.getElementById('mobile-menu-toggle'); const isHidden = mobileMenu.classList.contains('hidden'); mobileMenu.classList.toggle('hidden'); if (toggleBtn) { toggleBtn.setAttribute('aria-expanded', isHidden ? 'true' : 'false'); } } // Smooth Scrolling für Anker-Links (nur für echte Fragment-Links, nicht für /#contact nötig) document.addEventListener('DOMContentLoaded', function() { document.querySelectorAll('a[href^="#"]').forEach(anchor => { anchor.addEventListener('click', function (e) { const href = this.getAttribute('href'); const target = document.querySelector(href); if (target) { e.preventDefault(); target.scrollIntoView({ behavior: 'smooth', block: 'start' }); } }); }); // Flash-Nachrichten automatisch ausblenden const alerts = document.querySelectorAll('.alert[data-dismiss-delay]'); alerts.forEach(alert => { const delay = parseInt(alert.getAttribute('data-dismiss-delay')); setTimeout(() => { alert.style.display = 'none'; }, delay); }); }); // Animation beim Scrollen const observerOptions = { threshold: 0.1, rootMargin: '0px 0px -50px 0px' }; const observer = new IntersectionObserver((entries) => { entries.forEach(entry => { if (entry.isIntersecting) entry.target.classList.add('fade-in'); }); }, observerOptions); document.addEventListener('DOMContentLoaded', function() { const animatedElements = document.querySelectorAll('.animate-on-scroll'); animatedElements.forEach(el => observer.observe(el)); });  // Apply Microsoft Clarity consent based on user choice function applyClarityConsent({ analyticsGranted=false, adsGranted=false }) { if (!window.clarity) return; window.clarity('consentv2', { analytics_Storage: analyticsGranted ? "granted" : "denied", ad_Storage: adsGranted ? "granted" : "denied" }); } // Cookie consent management function setStoredConsent(val) { localStorage.setItem('consent.analytics', val ? 'granted' : 'denied'); // Store timestamp for consent localStorage.setItem('consent.timestamp', new Date().toISOString()); } function getStoredConsent() { return localStorage.getItem('consent.analytics'); } function showBanner() { const el = document.getElementById('cookie-banner'); if (el) { el.classList.remove('hidden'); // Smooth scroll into view if needed el.scrollIntoView({ behavior: 'smooth', block: 'nearest' }); } } function hideBanner() { const el = document.getElementById('cookie-banner'); if (el) el.classList.add('hidden'); } // Initialize cookie consent on page load document.addEventListener('DOMContentLoaded', function () { const stored = getStoredConsent(); if (stored === 'granted') { // User previously accepted analytics cookies applyClarityConsent({ analyticsGranted: true, adsGranted: false }); } else if (stored === 'denied') { // User previously rejected analytics cookies applyClarityConsent({ analyticsGranted: false, adsGranted: false }); } else { // No consent decision yet - show banner showBanner(); } // Accept all cookies (including analytics) document.getElementById('cookie-accept')?.addEventListener('click', function () { setStoredConsent(true); applyClarityConsent({ analyticsGranted: true, adsGranted: false }); hideBanner(); }); // Reject optional cookies (only necessary cookies remain) document.getElementById('cookie-reject')?.addEventListener('click', function () { setStoredConsent(false); applyClarityConsent({ analyticsGranted: false, adsGranted: false }); hideBanner(); }); }); // Function to show cookie settings (called from footer link) function showCookieSettings() { // Clear stored consent to force banner to show again localStorage.removeItem('consent.analytics'); localStorage.removeItem('consent.timestamp'); // Apply denied consent for now applyClarityConsent({ analyticsGranted: false, adsGranted: false }); // Show banner showBanner(); } // Expose function globally for footer link window.showCookieSettings = showCookieSettings; // Keep backward compatibility function revokeClarityConsent() { showCookieSettings(); } window.revokeClarityConsent = revokeClarityConsent;  document.addEventListener("DOMContentLoaded", function () { const stackedCanvas = document.getElementById("stackedCostComparison"); if (stackedCanvas && window.Chart) { // Prozentanteile VOR Optimierung (Basis = 100 %) const before = { set: 61.8, // Setzteile = Zellen + BMS other: 25.5, manuf: 12.7 }; // Prozentanteile NACH Optimierung (relativ zur ursprünglichen Struktur, aus den Euro-Werten abgeleitet) const after = { set: before.set * (179.7 / 179.7), // = 61,8 % other: before.other * (32.9 / 74.0), // ≈ 11,3 % manuf: before.manuf * (16.4 / 37.0) // ≈ 5,6 % }; new Chart(stackedCanvas, { type: "bar", data: { labels: [ "Vor Optimierung (100 %)", "Nach Optimierung (~78,7 %)" ], datasets: [ { label: "Setzteile (Zellen & BMS)", data: [before.set, after.set], backgroundColor: "#0b1c33", borderRadius: 4, stack: "Kosten" }, { label: "Andere Komponenten", data: [before.other, after.other], backgroundColor: "#ff6600", borderRadius: 4, stack: "Kosten" }, { label: "Produktionskosten", data: [before.manuf, after.manuf], backgroundColor: "#ff9f4d", borderRadius: 4, stack: "Kosten" } ] }, options: { responsive: true, maintainAspectRatio: false, plugins: { legend: { position: "bottom", labels: { color: "#0b1c33", font: { size: 13, family: "Inter, system-ui, -apple-system, BlinkMacSystemFont, sans-serif" } } }, tooltip: { callbacks: { label: function (context) { const value = typeof context.raw === "number" ? context.raw.toFixed(1) : context.raw; return context.dataset.label + ": " + value + " %"; } } } }, scales: { x: { stacked: true, ticks: { color: "#0b1c33" }, grid: { display: false } }, y: { stacked: true, max: 100, ticks: { color: "#0b1c33", callback: function(value) { return value + " %"; } }, grid: { color: "rgba(11,28,51,0.08)" } } } } }); } const verticalCanvas = document.getElementById('verticalCostComparison'); if (verticalCanvas && window.Chart) { const ctxVertical = verticalCanvas.getContext('2d'); new Chart(ctxVertical, { type: 'bar', data: { labels: ['Produktionskosten', 'Komponentenkosten'], datasets: [ { // bleibt unten: Kosten nach Optimierung label: 'Nach Optimierung', data: [44.3, 44.5], backgroundColor: '#16a34a', borderRadius: 6, stack: 'kosten', }, { // sitzt oben drauf: Einsparung bis 100 % label: 'Vor Optimierung', data: [100 - 44.3, 100 - 44.5], // 55.7, 55.5 backgroundColor: '#d1d5db', borderRadius: 6, stack: 'kosten', }, ], }, options: { responsive: true, maintainAspectRatio: false, plugins: { legend: { position: 'top', labels: { color: '#1e3a8a', }, }, tooltip: { callbacks: { label: (ctx) => `${ctx.dataset.label}: ${ctx.parsed.y.toFixed(1)}%`, }, }, }, scales: { y: { beginAtZero: true, max: 100, stacked: true, ticks: { stepSize: 20, color: '#4b5563', callback: (val) => `${val}%`, }, grid: { color: '#e5e7eb', }, }, x: { stacked: true, ticks: { color: '#4b5563', }, grid: { display: false, }, }, }, }, }); } });
