The first video demonstrates the closed-loop control obtained from an IHDA in the version shown in Fig. 4 (as Interpreted Petri net) and 5 (as IHDA).
Note that in this version the chariot already starts moving to the right while the pusher is still decharging the chariot. This is because the IPN can have a token in the place labeled by "Pusher" and "R2" at the same time.
In order to repair this incorrect behavior the IPN was modified as shown in Fig. 6 leading to the IHDA shown in Fig. 7. The second video demonstrates the closed-loop control obtained from this modified IHDA.
Now the movement of the chariot and the pusher are properly decoupled and the correct unloading of the chariot is guaranteed.
The pipeline of generating a closed loop controller usable with factory io from an IPN is publicly available in the pn2HDA-repository. (Note the branch "sub/wodes26"!).
In order to execute it you first need to build the pn2HDA executables as described in the README. The controller generation is currently implemented as a Python script, which is found in the hda2csg sub-folder.