1. There are 3 levels of operators handling the same android device (honeywell scanPal EDA50). They are : 1. Cleaner, 2) Performer 3) Verifier
A machine will have bar code (2D) stuck at various points on it.
Cleaner will scan a barcode to indicate start of clean operation and scan an barcode to indicate stop of clean operation. Between both scans, he will do the cleaning (manual). The interval between start and stop should be verified against prefixed and stored [login to view URL] Interval in a Table . If the stop scan is done less than the specified interval , error has to be raised (and logged into table)
After the cleaning, PERFORMER will come in. He will use the device to go to performer screen and start performing
Again, there will be 20 - 30 barcodes for performing operation. Each barcode will be numbered sequentially from 0 - 30
Performer first Scans 0 and starts cleaning operation. Again the min. Required Interval for scan @ 0 to Scan @ 1 to be checked as above.
But in this case, the check will be between 0 - 1, 1 - 2, 2 -3 and so on …. 28 -29, 29 -30
Finally Verifier comes and verifies.
There is no min. Required Interval specification for verifier. But he has to scan 0, 1, 2, … 30.
For each 0 -1, 1 - 2, …. 29 - 30, he has to capture an image and upload. The image has be named and uploaded to the PC. The image name can be : for eg. isequenceNo .This I have mentioned in the DB Design Doc.
The device has SDK provided by Honeywell for Barcode Scan Engine interface.
All master data will reside in a PC . Device will connect to PC over Wifi (and LAN).
Whether the Master Data should reside as a replicate SQLITE locally on DEVICE ? You decide on this
Each scan result should go to the PC as : Operator Category (Cleaner, Performer, Verifier), Operator ID(scanned by operator before task commencement) , Location ID (start , stop or 0,1,2,…. 30) , time stamp (scan time) and PassFail Result
If all operations are successfully completed, the Machine will be allowed to switch on. this is done with a PLC interface.
Android device can use modbus to interface with PLC
Android device can send a MQTT message to PC (having MQTT Broker) and PC will send message to PLC
This is the requirement in short.
Points to consider :
1. Connectivity : This is a mobile device on Battery. So it will go into sleep mode. As such connection to MQTT Broker (or Modbus TCP) should be initiated by the User.
For eg: The user should start the application, then login in (by scanning his ID Card) and then Press a button to Connect, only then his screen should open up
For eg :
if Cleaner starts the App, then First a screen (common screen for cleaner, performer and verifier) called SignOn Screen will show
Here the person selects Role (Cleaner / Performer / Verifier ) using some sort of check boxes or dropdown or buttons
Then he scans his ID Card
Then presses - NEXT
Based on this this process, we will show one of the next 3 screens viz: Cleaner Screen, Performer Screen or Verifier Screen
At the same time, we will check for connectivity in the back end.
If connection is ok, we just proceed, else we will alert the user.
In the back end, we will store the data and then forward to the PC
When there is no connection, then the machine can not be started
1. MQTT / Modbus (You can also plan a work around like updating the PC using a WEBSERVICE and PC will send the command to the PLC
2. Android Barcode Scanning (There is an SDK already given by honeywell with an example code too)
3. We can consider storing Master data from PC into the device as SQLITE . Then it is necessary to find if this data has changed at the PC end and update the same.