Ist denn heute schon Weihnachten? Für den Warenausgang schon!
11.10.2018
Der Grund: Wir durften unsere erste automatisierte Verpackungsmaschine auspacken (nein, sie hat sich leider nicht selbst eingepackt). Mit dem stetigen Wachstum unserer Firma steigen auch die An- und Herausforderungen an den Warenausgang.
Zu Spitzenzeiten werden im Zentrallager Wohlen bis zu 27 000 Bestellungen am Tag verarbeitet. Diese müssen zügig verpackt werden, damit wir täglich das Versprechen der Next-Day-Delivery einhalten können. Da unsere manuellen Verpackungsstationen mittlerweile an ihre physischen Kapazitätsgrenzen stossen und nur mit einer Teilautomatisierung die begrenzte Fläche sinnvoll genutzt werden kann, haben wir uns für den Kauf von Verpackungsmaschinen entschieden. In einer ersten Phase soll eine Verpackungsmaschine des Typs «CW1000» der Firma CMC, liebevoll «Packy McPackface» genannt, Abhilfe schaffen, bevor später eine weitere Maschine dazukommt.
Ziel dieser Lösung ist eine Entlastung unserer Mitarbeiter im Warenausgang, deren Können nun vermehrt beim Verpacken von zerbrechlichen oder grossen beziehungsweise eher unhandlichen Artikeln gefordert sein wird. «Packy» in unsere bestehende Logistiksoftware einzubinden, war eine spannende Herausforderung, die bis zur produktiven Einführung für viel kurzweilige Abwechslung gesorgt hat.
Prinzip
«Packy» ist der Traum eines jeden «Die Sendung mit der Maus»-Fans und hinterlässt nicht nur bei Kindern grosse Augen. Einen versandbereiten Artikel von der Einfahrt in die Maschine bis zum Aufdruck der Etikette auf dem fertigen Paket zu verfolgen, ist faszinierend. Während die Produkte auf einem Förderband in die Maschine fahren, misst die Maschine sekundenschnell und genau deren Dimensionen und schneidet später individuell einen passenden Karton zurecht, damit kein unnötiges Verpackungsmaterial verschwendet wird. Anschliessend fahren die Artikel in die bereits vorbereiteten Kartons und falls vorgesehen, können dabei noch andere Dokumente, wie zum Beispiel Lieferscheine oder Prospekte beigelegt werden, bevor die Kartons schliesslich stabil zusammengefaltet und zugeklebt werden. Abgeschlossen wird der Verpackungsprozess mit dem Anbringen der zugehörigen Etikette, welche die nötigen Versandinformationen für die Post enthält. Dieser Prozess wiederholt sich ungefähr 700 Mal pro Stunde.
Damit «Packy» weiss, was alles ins Paket kommt und was auf die Etikette gedruckt werden muss, füttern wir ihn mit Daten aus unserem eigenen und in-house entwickelten ERP. Die Herausforderung für unser Entwicklungsteam Phoenix bestand darin, «Packy» in den existierenden ERP-Verpackungsprozess zu integrieren, was auch die technische Anbindung an unser System bedeutete.
Konzeptphase (PoC)
Bei der Digitec Galaxus AG setzen wir inzwischen vermehrt auf Cloud Computing. Daher hatten wir im Zuge des Projektes die Möglichkeit, die Schnittstelle zwischen ERP und «Packy» in einem eigenen Modul in der Cloud zu realisieren. «Packy» kommuniziert klassisch per TCP-Socket, eine Kommunikationsform, die wir bis zu diesem Zeitpunkt noch nicht verwendet hatten. Infolgedessen mussten wir zuerst definieren, wer in diesem Szenario welche Rolle spielen, das heisst wer Server und wer Client sein sollte. Unsere Entscheidung war schliesslich, dass «Packy» der Client und unser Cloud-Modul das Gegenstück, der Server, sein sollte. Da «Packy» sehr einfach gestrickt ist, benötigt er die Daten nur in Form eines Strings, welche als Events zu verstehen sind: Es sind Requests und Responses zwischen «Packy» und dem Server.
Mit der Entscheidung, das Server-Modul in der Cloud zu implementieren, betraten wir in unserer Logistik-Softwarelösung Neuland. Die involvierten Entwicklungsteams leisteten in diesem Bereich aus diesem Grund viel Pionierarbeit. Als Umgebung für unser Server-Modul in der Cloud wählten wir einen Kubernetes-Cluster, da dieser extrem schlank ist, schnell deployed werden kann, gut skaliert und fast keine Ressourcen verbraucht. So innovativ diese Entscheidung auch war, brachte sie uns einiges an Kopfzerbrechen während der Entwicklung. Beispielsweise gestaltete sich eine stabile und schnelle Kommunikation zwischen dem Server und ERP anfangs schwierig. Ebenfalls zum Einsatz kommt ein Azure Service Bus, der eingerichtet wurde, um die Daten über Message-Queues zwischen ERP zum Server-Modul hin- und herzuschleusen. Denn: Zuerst benötigt «Packy» Informationen vom ERP-System, um ein Paket zu verpacken. Anschliessend muss «Packy» wiederum dem ERP-System mitteilen, dass das Paket erfolgreich verpackt wurde, damit dort die zugehörigen Daten aktualisiert werden können und das Paket als «versendet» markiert wird. Dazu wurde nebst dem Cloud-Modul noch ein neues Nachrichtenempfänger-Modul gebaut, damit das ERP dessen Messages verarbeiten kann.
Ablauf
Obige Kommunikation von «Packy» mit dem Server-Modul stellt einen wichtigen Teil der Anbindung dar. Ein ebenso wichtiger Teil ist die Integration von «Packy» in unseren Arbeitsworkflow für das Verpacken seitens ERP, denn ohne korrekte Datenaufbereitung im ERP kann «Packy» nichts mit den Artikeln anfangen, die ihm zur Verpackung übergeben werden. Dazu wurde der modularisierte Verpackungs-Workflow im ERP vorgängig folgendermassen angepasst:
Mitarbeiter identifizieren die zu versendenden Artikel per Barcode und bündeln diese bei Bedarf mit Hilfe einer Banderoliermaschine. Gleichzeitig wird eine kleine Etikette mit einem QR-Code ausgedruckt, welche auf die Artikel geklebt wird. Gleichzeitig schickt das ERP die für «Packy» nötigen Paket-Daten an unser Cloud-Modul (Server). Unter anderem befindet sich dort der ZPL-Code für den Etikettendrucker, welcher den Inhalt der Etikette, wie beispielsweise die Paketnummer, enthält.
Der zu verpackende Artikel fährt nun per Förderband auf «Packy» zu, wobei ein Barcodeleser den QR-Code automatisch scannt und damit die Paket-Informationen, die zum Artikel gehören, beim Server anfordert. Anschliessend werden die Dimensionen der zu verpackenden Produkte von «Packy» überprüft und der entsprechende Karton vorbereitet sowie zurechtgeschnitten. Während der Artikel durch die Maschine fährt, tauschen Server und Client («Packy») ständig Events aus. Das Resultat ist, dass wir immer wissen, wo sich das Paket gerade befindet und «Packy» bei Bedarf mit zusätzlichen Daten versorgen können, um den jeweils nächsten Schritt auszuführen. Solche Daten können unter anderem die Informationen enthalten, ob dem aktuellen Artikel ein Lieferschein beigelegt werden soll oder ob das Produkt inzwischen manuell aus der Maschine entfernt wurde.
Zum Abschluss klebt «Packy» die Adressetikette auf das fertig gefaltete und zugeklebte Paket. Anschliessend scannt «Packy» den aufgedruckten Paketnummer-Barcode ab, um zu validieren, ob dieser mit dem anfangs von uns übermittelten Barcode übereinstimmt, um sichergehen zu können, dass das Paket an die richtige Adresse geht. Falls nach diesem Schritt alles passt, gibt das Cloud-Modul per Event ans ERP grünes Licht, die Daten im ERP anzupassen und das Paket als «verpackt» zu markieren.
Wo gehobelt wird, da fallen Späne: Es besteht die Möglichkeit, dass wir «Packy» zum Beispiel aus Versehen mit zu grossen Artikeln füttern. In diesem Fall ist vorgesehen, dass die Maschine diese Artikel ausschleust, nachdem die Dimensionen überprüft wurden. Wir haben bei solchen Fällen die Möglichkeit vorgesehen, dass wir diese problematischen Artikel noch einmal maschinell oder sogar manuell verpacken kann. Jeder dieser Fehlerfälle wird in unserem Azure-Portal geloggt, wo wir uns ein übersichtliches Dashboard zwecks Monitoring eingerichtet haben. Dieses wird auf einem grossen TV bei den Entwicklerarbeitsplätzen angezeigt. Wir nutzen in Azure die Möglichkeit von automatischen Benachrichtigungen (Alerts) und Dashboards, damit wir kontinuierlich über Fehlerfälle informiert werden und im Notfall die Möglichkeit haben, schnell und adäquat zu reagieren.
Fazit
Die Integration von «Packy» in unser System war ein sehr spannendes und herausforderndes Projekt, bei welchem wir uns mit neuen Technologien auseinandersetzen konnten und viel neues Know-How aufgebaut wurde. Erwartungsgemäss ist der Einsatz von neuen Technologien immer eine Herausforderung, welche teilweise auch unvorhersehbare Stolpersteine mit sich bringt: Beispielsweise haben die Cloud Services oder die Einrichtung eines verschlüsselten Kommunikationskanals zwischen «Packy» und dem Cloud-Modul einige Male zu Sorgenfalten geführt. Mit dem Einsatz von Verpackungsmaschinen und «massgeschneiderten» Paketen wird zukünftig viel Verpackungs- sowie Füllmaterial reduziert, was sowohl ökologisch als auch wirtschaftlicher ist.
Interessiert?
Hast du Lust, bei uns mitzuarbeiten? Dann sieh dir unsere Stelleninserate durch und finde den perfekten Job für dich.
Titelbild: Sie hat vielleicht auch dein jüngstes Paket verpackt: die neue Verpackungsmaschine im Lager in Wohlen. Bild: Thomas Kunz
If you like nerds, raise your hand. If you don't, raise your standards.