Nach den Grundsätzen des Domain Driven Design begann das Projekt mit der Untersuchung der technischen Eigenheiten des Vertical Farming. Es wurden vier Wachstumsphasen - Aussaat, Wachstum, Wachstum und Ernte - identifiziert, die jeweils unterschiedliche Merkmale und klimatische Anforderungen aufweisen.
Die daraus resultierende Softwarearchitektur umfasst verschiedene miteinander verbundene Bereiche: Enterprise Resource Planning (ERP), Planung, Steuerung, Produktionsausführung und Warehouse Management System (WMS). Die in der Cloud gehosteten ERP- und Planungskomponenten arbeiten mit der Steuerung und Produktionsausführung vor Ort zusammen und gewährleisten durch Edge Computing einen 24/7-Betrieb. Middleware und proprietäre Protokolle verbinden die Steuerungssysteme, während die Daten zur weiteren Verarbeitung in einen zentralen Data Lake fließen, der auch Berichte und maschinelles Lernen umfasst.
Die Schaffung eines generischen Steuerungssystems, das einem digitalen Zwilling ähnelt, erforderte einen sorgfältigen Ansatz für die Wiederverwendbarkeit. Der komplizierte Mechanismus für die Produktionsausführung, der als dynamisches Flow-Through-System und nicht als herkömmlicher Batch-Prozess funktioniert, erhöhte die Komplexität. Die kundenspezifische Softwareentwicklung, unterstützt durch agile Methoden, ermöglichte eine schnelle Anpassung an die sich ändernden Anforderungen. Es wurde ein moderner Tech-Stack - TypeScript, NodeJS, Python und Docker - eingesetzt, der durch einen robusten DevOps-Prozess und eine umfangreiche Unit-Test-Abdeckung von über 99 % ergänzt wurde.
TECHNIKEN UND TOOLS
- Backend: TypeScript, NodeJS, Python
- Frontend: TypeScript, React
- Frameworks / Tools: WallabyJS, GitLab, Grafana, GraphQL, MQTT, OPC-UA, Docker, Kubernetes, Azure, Kanban