MQTT-Message (topic: f/o/store): Pickup Workpiece from DSO and put back into HBW
Message-Body: {"ts": "<%Y-%m-%dT%H:%M:%S.000Z>"}
3. Endless Working Mode
After Delivery, the delivered Workpiece is queued for automatic ordering.
Ordering takes precedence over Delivery.
After Production a workpiece the Store-after-Produce Workflow is triggered, but Workpiece is treated as a newly delivered Workpiece (State RAW)
Change Working Mode:
Working Modes can be iterated by using the Joystick (J1) and pull down. After working mode is changed a sound is played to indicate a working mode change.
Improvements:
Orders and Pickups are stored in Queues: Orders can be queued, so no order is lost
Example: Order two diffrent Workpieces back to back asap -> only a single order is taken.
BugFix:
If Order-Message asks for workpiece of type, but type is not available, HBW faults and stay in FAULT State until an Acknowledge Message is send.
Problem: VGR does not notice the fault of HBW and stays in "VGR_WAIT_FETCHED" forever.
Solution: If HBW Faults, a mqtt-message is published and VGR also switches to FAULT Mode. Acknowledge Message does reset both HBW and VGR.
Things to consider:
Publish Queue States to MQTT: How many and which Items are in which Queue and which order.
Publish MQTT-Message when working mode is changed
Make Working mode changeable by MQTT-Message
TxtVaccumGripperRobotRun.cpp (line 1019) "case PICKUP2DELIVERY" may be refactored to use "case STORE_FROM_DSO" (line 1068)
1. Normal Working Mode
2. Store-after-Produce Working Mode
{"ts": "<%Y-%m-%dT%H:%M:%S.000Z>", "id": "<nfc tag_uid>"}
{"ts": "<%Y-%m-%dT%H:%M:%S.000Z>"}
3. Endless Working Mode
Change Working Mode:
Improvements:
BugFix:
Things to consider: