Ein paar Wochen sind vergangen, wir haben JTL nun im produktiven Einsatz und ergänzen jetzt die Packtische mit Kameras zur Kontrolle des Inhalts von Packstücken. Die vorgeschlagenen Lösungen sind alle gut, wir haben uns für eine sehr banale aber höchst flexible Variante entschieden.
Wir haben vier Packtische, welche nun mit Webcams ausgerüstet werden. Bei jedem Verpackungsvorgang wird für 10 Sekunden der
Packtisch aufgenommen und als Video gespeichert. Natürlich könnte man auch ein Foto machen, was uns aber nicht reicht. In unserem Fall ist es notwendig, eine kleine Zahl auf den Produkten zu erkennen, deswegen spielt die Aufnahmequalität eine wesentliche Rolle. In unserem Fall dreht der Verpacker die Ware bzw. das Packstück auch mindestens einmal, sodass die Ware von mehr als einer Seite aus zu erkennen ist. Positionierung und Qualität der Kamera muss man selbst der Situation anpassen. Auch kann ein Tisch Fotos machen, während der andere eine Videoaufnahme startet. Auch sind Tische mit mehreren Kameras denkbar. Ebenfalls können damit mobile Tische realisiert werden.
Die Aufnahme wird über das Programm VLC gelöst, welches in diesem Fall die Kommandozeile bzw. eine Batchdatei gestartet und beendet wird. Die Aufnahme dauert 10 Sekunden, anschließend wird die Aufnahme in einem Ordner unter Angabe der Auftragsnummer, Arbeitsplatz und Zeitstempel gespeichert. Die Aufnahmedatei wird lokal oder auf einer Netzwerkressource gespeichert. Mit Hilfe von VLC (siehe Stream Wizard) lassen sich die verfügbaren Codes, Aufnahmebeschränkungen usw. einstellen, was es ermöglicht auch sehr kleine Dateien oder auch nur Fotos zu erstellen. VLC ist lokal auf dem Computer des Packtisches installiert.
Als Ereignis benutze ich "Versand->Paket erstellt".
Toll wäre es natürlich, wenn es ein Ereignis "WMS/Packtisch->Verpacken" gäbe. Der
Workflow vom Typ Ausführen ruft eine Batch Datei auf und übergibt die Auftragsnummer als Parameter. Die Batch ist lokal und kann der Situation am Computer (Qualität, Anzahl der Kameras usw.) individuell angepasst werden.
Die Batch Datei ist unten zu sehen, alle Zeilen mit :: zu Beginn sind Kommentare. Die letzte Zeile ist der eigentliche Aufruf von VLC, alle anderen Zeilen dienen der Erstellung von Variablen. Das könnte man auch direkt mit dem Workflow machen.
Code:
@echo off
::Falls benötigt, hier den Arbeitsplatznamen oder Nummer eingeben
set arbeitsplatz=1
::Kameraname gemäß VLC, hier eine einfache Testwebcam von Aukey
set kamera=Aukey-PC-LM1E Camera
::Ausgabeverzeichnis
set ordner=c:\\record\
::Pfad und Programmdatei von VLC
set vlc=c:\Program Files\VideoLAN\vlc\vlc.exe
::Aufnahmezeit in Sekunden
set aufnahmezeit=10
::Zeitstempel erstellen
:: von https://stackoverflow.com/questions/11037831/ eicht modifiziert übernommen
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set "YYYY=%dt:~0,4%" & set "MM=%dt:~4,2%" & set "DD=%dt:~6,2%"
set "HH=%dt:~8,2%" & set "Min=%dt:~10,2%" & set "Sec=%dt:~12,2%"
set "fullstamp=%YYYY%%MM%%DD%%HH%%Min%%Sec%"
::Dateiname, dabei ist %1 der übergebene Parameter vom Workflow (z.B. Auftragsnummer)
set datei=%ordner%%1-%fullstamp%-%arbeitsplatz%.mp4
:: /min = VLC minimiert starten
:: vlc://quit = VLC nach Aufnahme beenden
:: --sout = Aufnahmeparameter, siehe Stream Wizard von VLC für individuelle Parameter
start /min "kamera" "%vlc%" dshow:// :dshow-vdev="%kamera%" --sout=#transcode{vcodec=h264,acodec=none}:file{dst=%datei%} --run-time=%aufnahmezeit% vlc://quit