Polymorphism for State Machines
暂无分享,去创建一个
In production industry today a lot of engineering time is required to develop and maintain control applications. One part of the control applications are the state machines which typically are written in Grafcet/SFC. Several efforts have been made to extend Grafcet/SFC to achieve more effective and convenient development, e.g. by introducing hierarchical structuring, reusable sub-state machines, and various means for convenient exception handling. Working with these extensions available also result in more maintainable and overviewable applications. The extensions are included in the Grafchart language, developed at Lund University, and have proved to both work and scale well for real applications. Extensions to support object orientated state machines have also been proposed and evaluated with good results, e.g. for batch applications. To improve reusability and to facilitate abstract modeling, complete polymorphism similar to that of ordinary textual object oriented languages such as Java or C++ is proposed. As an example it is shown that this kind of modeling fits well for modeling, encapsulating, and using robot capabilities; it facilitates making a coordination sequence conveniently reusable for any robot with the required set of capabilities and it also makes the capabilities themselves reusable for other coordination sequences. The intention is to include polymorphism in future versions of the freely available Grafchart tool JGrafchart, enabling you to easily evaluate the advantages of polymorphic state machines for your specific domain. (Less)