← Alle Projekte

Produktiv im Einsatz

Betonrezeptur Designer

Desktop-Werkzeug zur normgerechten Betonrezeptur-Berechnung über die Stoffraumrechnung – von Leicht- bis Schwerstbeton.

  • Flutter
  • Dart
  • Windows Desktop
  • shared_preferences
  • pdf
  • printing
  • fl_chart
  • http
  • file_picker
  • intl / flutter_localizations
  • OpenWeatherMap API

Die Herausforderung

Das Entwerfen von Betonrezepturen erfordert eine konsistente Stoffraumrechnung, bei der Zielrohdichte, w/z-Wert, Luftgehalt und der Volumenanteil aller Zuschläge gleichzeitig stimmen müssen – über sehr unterschiedliche Dichtebereiche von Leicht- bis Schwerstbeton hinweg. Solche Berechnungen werden häufig in fehleranfälligen Tabellenkalkulationen gepflegt, in denen Eigenfeuchte- und Wasseraufnahme-Korrekturen, normative Grenzwerte und Kostenvergleiche manuell nachgehalten werden. Der Betonrezeptur Designer bündelt diese Schritte in einer Desktop-Anwendung mit konsistenter Rechenlogik und nachvollziehbarem Ausdruck.

Das Ziel

Eine eigenständige Windows-Desktop-Anwendung, die eine vollständige Betonrezeptur per Stoffraumrechnung ermittelt: Aus Zielrohdichte, Bindemittel, Wasser, Zusatzstoffen/-mitteln und Zuschlägen werden Massen je m³, w/z-Wert (äquivalent), Luftgehalt und kombinierte Sieblinie berechnet, normative Vorgaben (Expositionsklassen) berücksichtigt und das Ergebnis als PDF dokumentiert.

Die Lösung

  • Stoffraum-/Volumenrechnung als Rechenkern: ermittelt Volumen und Massen aller Zuschläge für 1 m³ aus Zielrohdichte, Bindemittel, Wasser und Luftgehalt (lib/services/beton_calculator.dart)
  • Automatische Wahl des Dichtebereichs (Leichtbeton ca. 1,55-2,35 / Normal-Schwer / Schwerstbeton bis ~5,98 kg/l) mit passenden Zuschlagsklassen wie Sand/Kies, Liapor-Leichtzuschlag, Magnetit und Stahlgranulat (determineDensityRange)
  • Berechnung des äquivalenten w/z-Werts inklusive k-Wert-Anrechnung aktiver Zusatzstoffe (Bindemittel = Zement + k-Wert x Zusatzstoff)
  • Feinkorn-/Sieblinien-Steuerung über Zielfeinanteil und exakte Massenbilanz, plus kombinierte Sieblinie aus den Einzelkomponenten mit linearer Interpolation und grafischer Darstellung gegen Referenzkurven (grading_curve_painter.dart, fl_chart, sieve_presets.dart)
  • Wasserkorrekturen: Eigenfeuchte des Sandes sowie SSD-/Wasseraufnahme-Korrektur für Leichtzuschläge fließen in das korrigierte Zugabewasser ein
  • Expositionsklassen nach DIN EN 206 / DIN 1045-2 (X0, XC1-4, XD1-3, XS1-3, XF1-4, XA1-3) setzen automatisch Mindestzementgehalt, maximalen w/z-Wert und bevorzugten Zementtyp (exposure_classes.dart)
  • Wetterbasierte Schätzung der Sand-Eigenfeuchte und Frischbetontemperatur über die OpenWeatherMap-API anhand konfigurierbarer Koordinaten/Ortsname (weather_service.dart)
  • Kostenoptimierung: sucht günstigere Materialkombinationen bei gleicher Zieldichte/Gültigkeit und listet Ersparnis sowie Materialwechsel auf (optimization_service.dart)
  • PDF-Erzeugung für die Rezeptur, einen dreiseitigen Original-vs-optimiert-Vergleich und einen skalierten Labor-Ansatz mit Kontrollvolumen (pdf_export_service.dart)
  • Verwaltbare Materialdatenbank in fünf Kategorien (Zemente, Zuschläge, Zusatzstoffe, Zusatzmittel, Fasern) mit Rohdichte, Preis, Wasseraufnahme, Luftgehalt und Sieblinie je Material (material_service.dart, material_management_page.dart)
  • Speichern/Laden benannter Rezepturen sowie JSON-Export/-Import von Rezepturen und Material-Backups in den Dokumente-Ordner (recipe.dart, export_import_service.dart)
  • Bedienoberfläche mit fünf Reitern (Rezeptur, Expositionsklassen, Zuschläge, Masseanteile, Sieblinie), dunklem Theme und Deutsch/Englisch-Lokalisierung (rezept_rechner_page.dart, l10n)

Technik & Architektur

  • Flutter-Anwendung mit Windows-Desktop als Zielplattform (windows/, linux/, macos/, android/, ios/, web/ vorhanden; Logik desktop-orientiert, z. B. Export nach %USERPROFILE%\Documents)
  • Saubere Schichtung: lib/models (Datentypen), lib/services (Rechenkern, Material-/Rezept-Persistenz, Wetter, Optimierung, PDF, Export/Import), lib/pages (UI als part-Dateien je Reiter), lib/config (Konstanten, Toleranzen, Rollen, Sieb-Presets), lib/widgets, lib/l10n
  • Rein lokale Datenhaltung über shared_preferences (Materialkataloge als JSON, Benutzereingaben und Auswahl-Indizes); kein Backend/keine Datenbank
  • Kernalgorithmus: Volumen-Slot-Filling der Stoffraumrechnung mit Lösung von Zieldichte und Feinanteil über Massen-/Volumenbilanz, Luftgehalt und Misch-Sieblinie via linearer Interpolation
  • PDF-Erzeugung mit den Paketen pdf/printing inklusive Vergleichs- und Labor-Ansatz-Dokumenten
  • Diagramme über fl_chart bzw. CustomPainter (GradingCurvePainter) für die Sieblinie
  • Externe Integration: OpenWeatherMap-REST-API über das http-Paket; API-Schlüssel/Default-Koordinaten ausgelagert in app_secrets (mit Template)
  • Zweisprachige Oberfläche über flutter_localizations/intl mit generierten ARB-Lokalisierungen (Deutsch/Englisch, ~160 Strings)
  • Datei-Import über file_picker; JSON-Backups mit Versionsfeld und Duplikat-/Validierungsprüfung

Nutzen in der Praxis

  • Konsistente, nachvollziehbare Stoffraumrechnung statt fehleranfälliger manueller Tabellen
  • Deckt mit einem Werkzeug ein breites Dichtespektrum ab – von Leichtbeton über Normalbeton bis Schwerstbeton (Magnetit, Stahlgranulat)
  • Normbezug eingebaut: Expositionsklassen nach DIN EN 206 / DIN 1045-2 setzen automatisch Mindestzement und maximalen w/z-Wert
  • Realistischere Rezepturen durch Eigenfeuchte- und Wasseraufnahme-Korrektur des Zugabewassers
  • Wirtschaftlichkeit sichtbar: automatische Suche nach günstigeren, dichtegleichen Materialkombinationen mit ausgewiesener Ersparnis
  • Dokumentations- und Laborfähig: PDF für Rezeptur, Kostenvergleich und maßstäblichen Labor-Ansatz mit Kontrollvolumen
  • Wiederverwendbarkeit durch benannte Rezepturen sowie JSON-Export/-Import von Rezepturen und Materialkatalogen
  • Pflegbare Materialdatenbank mit eigenen Rohdichten, Preisen, Sieblinien und Wasseraufnahmen
  • Komfort durch optionale, wetterbasierte Schätzung von Sandfeuchte und Frischbetontemperatur
  • Zweisprachige Oberfläche (Deutsch/Englisch)

Meine Rolle

Konzept, Entwicklung und Umsetzung eigenständig (Ricardo Rehfeldt)