Developing software controllers with Petri nets and a logic of actions | IEEE Conference Publication | IEEE Xplore