Hallo,
mir ist da neulich eine Idee gekommen, als ich in der Firma mal wieder eine Tonerbestellung machen musste, ich frage mich ob es sowas ähnliches schon gibt, auf dem ich ansatzweise aufbauen könnte.
Ich selbst habe mich schon sehr viel mit der Materie Raspberry beschäftigt (Habe privat aktuell 3x Stück im Einsatz), und habe auch ein wenig rudimentäre Berufsschul-Erfahrung in C++ und Java, was aber schon 8 Jahre her ist. - Anhand von Code-Beispielen kann ich aber viel selbst umsetzen, mir fehlt nur manchmal der richtige Ansatz (und leider häufig auch die Zeit). - Mit Datenbanken habe ich programmiertechnisch bisher noch nie gearbeitet. - Da ich beruflich (System-/Netzwerkadmin & Projektarbeit) stark eingespannt bin, wäre das was jetzt kommt eher ein Wochenend-Hobby-Projekt, auch wenn es letztlich für unsere Firma (und andere?) genial wäre:
Ist-Zustand:
Bei uns ist das so: Alle Toner lagern zentral in einem Raum mit 3x großen Wandregalen. Wenn ein Mitarbeiter einen Toner benötigt, nimmt er sich diesen dort einfach aus dem Regal. Ein Mitarbeiter der IT kommt irgendwann dann mal vorbei und guckt was wohl nachzubestellen ist und macht das dann (irgendwann). - Manchmal sind wir leider etwas spät dran, dann geht auch schonmal ein Toner aus, was natürlich immer für Unmut sorgt
Soll-Zustand:
Toll wäre doch, wenn ich im Raum bzw. vor die Toner-Regale einen kleinen Monitor mit rückseitig montiertem Raspberry und fest installierten USB-Scanner stelle (z.B. Datalogic Gryphon, den haben wir da), und jeder Mitarbeiter bei der Entnahme eines Toners diesen kurz vor den Scanner hält, und er so aus dem Lagerbestand entfernt wird. Dann legt man noch Bestands-Regeln im Programm fest, so dass der Raspberry mir automatisch eine Bestellmail schickt, über die ich dann nur noch einmal drübergucke um sie dann an unseren Lieferanten als echte Bestellung weiterleite. - Das ganze müsste natürlich eine extrem einfach- und hübschaussehende GUI haben, um auch unerfahrenen/ängstlichen Mitarbeitern die Angst vor einer Fehlbedienung zu nehmen. - Jeder muss es verstehen, ohne dass es ihm jemals erklärt wurde (Von daher werden am besten entsprechende Hinweise wie "jetzt den Barcode vor den roten Scanstrahl halten" auf dem Monitor mit einem erklärenden Bild eingeblendet).
Ich habe mir auch gedacht, dass ich zwei kleine Bewegungssensoren anbringen könnte, die den Monitor/Scanner erst bei einer erkannten Bewegung an den Regalen einschalten damit dieser nicht Tag- und Nacht läuft und auch eine Google-gestützte-Sprachausgabe könnte bei einer Bewegung an den Regalen ausgelöst werden: "Bitte scannen sie ihre Toner Entnahme ein" (Je ein Bewegungssensor links und rechts vom mittig angebrachten Raspberry, um die ganze Regalwand abzudecken). Natürlich soll die Sprachausgabe nicht bei jeder Bewegung erfolgen sondern z.B. höchstens alle 10 Minuten, damit nicht die ganze Zeit diese Sprach-Meldung kommt wenn jemand länger im Regalbereich hantiert. (Google-Sprachausgabe vom Raspi kriege ich schon jetzt hin )
Beim Scan kann die Google Sprachausgabe anhand des erkannten Barcodes dann ja z.B. noch sagen "Danke, sie haben einen Toner für einen HP Laserjet vierzig fuenfzig entnommen" und auf dem Monitor wird noch ein Bild vom Drucker und der entnommenen Menge (vielleicht auch die verbleibende Restmenge dieses Toners) angezeigt, damit die Mitarbeiter kontrollieren können ob sie den richtigen Toner für ihren Drucker erwischt haben (Wäre da eine HTML-Seite als Anzeigemöglichkeit sinnvoll, oder würdet ihr das anders lösen?)
Falls der Mitarbeiter sich bei der Entnahme geirrt und den falschen Toner gescannt hat müssten sie dies dann ja noch abbrechen können (Über einen Hardware Abbrechen-Button). Auch müsste man irgendwie noch ungewollte Doppel-Scans vermeiden/abfangen, was mir selbst z.B. an der Packstation der deutschen Post öfters passiert, ist zum Glück dort auch abgefangen
Dann müsste noch eine Möglichkeit gefunden werden, wie ein IT-Mitarbeiter den Bestand auf einfache Weise in einer Art versteckten Admin-Modus direkt Vorort im Raum aktualisieren kann, wenn er eine neue Toner-Lieferung einräumt.Vielleicht einfach indem auch der IT-Mitarbeiter die einzelnen Toner wieder "dazuscannt". Vielleicht indem er den Abbrechen-Button 10 Sekunden dauerdrückt und dann im versteckten "Lager auffüllen"-Scanmodus landet, der zubucht statt abzieht. (Auch remote/per Lan sollte der Admin den Bestand korrigieren können, was wohl aber nicht das Problem sein wird)
Ich freue mich auf euer Feedback, eure Erfahrungen und eure Hinweise. Ich würde das Projekt vermutlich mit Python umsetzen, ich denke um eine Datenbank komme ich nicht herum, um z.B. im Falle eines Stromausfalles die gebuchten Bestände nicht zu verlieren ?