• Aucun résultat trouvé

Algebraic Synthesis and Logical Filter Approach for the Control of Cyber-Physical Manufacturing Systems


Academic year: 2021

Partager "Algebraic Synthesis and Logical Filter Approach for the Control of Cyber-Physical Manufacturing Systems"


Texte intégral


HAL Id: hal-02965378


Submitted on 13 Oct 2020

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Algebraic Synthesis and Logical Filter Approach for the Control of Cyber-Physical Manufacturing Systems

Tom Ranger

To cite this version:

Tom Ranger. Algebraic Synthesis and Logical Filter Approach for the Control of Cyber-Physical Man-

ufacturing Systems. International Conference on Informatics in Control, Automation and Robotics

(ICINCO) Abstracts, 2020, Paris, France. �hal-02965378�


Algebraic Synthesis and Logical Filter Approach for the Control of Cyber-Physical Manufacturing Systems

Tom Ranger 1 a


CReSTIC, University of Reims Champagne Ardenne, Moulin de la Housse, BP 1039, 51687 Reims - France tom.ranger@univ-reims.fr


Within the framework of the development of Industry 4.0, the control of automated production systems is being rethought. Industry 4.0 proposes a distributed vision, leading to the concept of cyber-physical sys- tems, where the control system is highly connected and communicating. In order for this new vision of the industry to succeed, more flexible and reliable sys- tems are needed. Currently the controller is carried out by direct implementation of programs controller obtained by interpreting informal specifications pro- vided by the specification. This way of designing the control requires a long time before implementation, without any guarantee of operation. Moreover, the lack of method limits the reuse of the knowledge ac- quired during the design process. It is therefore dif- ficult to capitalize on the work done. It is therefore necessary to rethink the methods and tools used.

Many works deal with the synthesis of controllers by formal methods. However, these approaches fo- cus mainly on the use of SCT (Supervisory Control Theory) definied by (Ramadge and Wonham, 1989), 30 years ago. A large body of theoretical results has appeared since then, but there is still a gap between the theoretical development and the limited number of applications of SCT in the industry using PLC (Fabian and Hellgren, 1998), (Cantarelli and Roussel, 2008), (Zaytoon and Riera, 2017). Indeed, the main problems are the difficulty of modeling complex sys- tems, the combinatorial explosion and the asynchro- nism hypothesis which is unsuitable for implementa- tion on Programmable Logic Controllers (PLCs) op- erating synchronously. Other formal approaches that can be found in the literature concern code verifi- cation and validation, mainly by model-checking or theorem proving. Among the existing formal ap- proaches, two have caught our attention. The first is algebraic synthesis (Roussel and Lesage, 2014), a tool for solving a system of equations of Boolean alge- bra. The second is the notion of logical filter (Pichard,



2019), this method is based on adding filters to exist- ing codes to ensure user and system security.

It is in this context that our research work takes place. Based mainly on algebraic synthesis and logi- cal filters, we wish to address the following issues :

• Which formal tools will allow us to synthesize controllers suitable for PLC implementation?

• How to ensure optimal use of these formal tools when designing control laws?

• How can the effectiveness of the methods used and the validity of the control laws obtained be evaluated?


In this section we will present the objectives we have set ourselves in order to respond to the issues raised.

For each problematic we will define the objectives necessary to solve them.

2.1 Develop Formal Tools for the

Synthesis of Controllers Suitable for Implementation on PLCs

We have decided to base ourselves on algebraic syn- thesis. This tool can already be used to obtain para- metric solutions to a problem. However, in order to make better use of this tool, we must be able to guar- antee the conformity of the results generated in rela- tion to the specifications.

In order to facilitate the implementation of the

command laws generated by the algebraic synthesis,

we wish to use a Structure Text (ST), definied by (IEC

61131-3, 2013), code generation tool. The objective

is to automate the generation of the code parts for

which the designer does not need to provide knowl-

edge. This will save time and avoid errors that can be

caused by human processing of information.


2.2 Propose a Methodology Based on Formal Tools to Synthesize Control Laws

Despite the fact that automation engineers do not use formal tools or specific methods to generate their control laws, they rely on a set of good practices de- rived from field experience. It is therefore interesting to be able to formalize the use of these good practices.

If we wish to develop the most effective methodol- ogy possible it is necessary to ensure that each action is carried out using the right tool. Indeed, all the steps involved in the design of a control law do not have the same modelling needs or the same approaches. It would therefore be illusory to imagine being able to design a complete control law using a single tool. Our goal is therefore to use modeling tools other than al- gebraic synthesis for cases where it would be more efficient. For this it is necessary to identify the most suitable tools for the realization of each task. In addi- tion, it is necessary to be able to define a method for using these tools to ensure that they are always used to their maximum potential.

In order to obtain a more modular control, we de- cided to detach ourselves from the sensor/actuator vi- sion at the design stage. We prefer to use a task- distributed control vision, where the system is divided into elementary tasks that it is capable of performing.

The control problem then becomes the definition of the task synchronization in order to meet the specifi- cations. To make this method effective, it is first nec- essary to determine the optimal granularity to which the system should be subdivided. In addition, we must be able to translate a precise functional constraint into a constraint on the tasks synchronization. In addition to this task-based vision we aim to use logical filters to manage security constraints. In addition, we would like to extend the use of these filters to functional con- straints.

2.3 Develop Methods and Criteria for Evaluating the Methods Developed and Validating Control Laws

In order to be able to correct design errors as well as possible and to be able to identify their source we would like to be able to check the validity of our for- malized problem before proceeding to the resolution.

Indeed, the earlier a defect is identified, the easier it is to correct it. It is therefore necessary to be able to an- alyze the system of Boolean equations. To do this we want to represent its structure in the form of a discrete event systems model and to analyze it. It is therefore

Figure 1: A sequential discrete event system.

necessary to define which criteria we want to check and how to evaluate them.

While this verification at the level of the formal- ization of the problem makes it possible to detect and correct possible errors, it is not sufficient. It is neces- sary to validate the final controller, whether in terms of functional properties or safety.

Finally, in our method development process we must be able to quantify the effectiveness of a method in the face of a given problem. This will allow us to compare different methodologies in order to obtain the most efficient method as possible.


In this section we will focus on the two approaches that we have chosen for the conduct of our research.

3.1 Algebraic Synthesis

Algebraic synthesis is used in the case of sequential discrete event systems as represented in figure 1. Such system controllers are equipped with p Boolean in- puts (u i ), q Boolean outputs (y i ) and r Boolean state variables (x l ). The algebraic modeling of control laws requires the generation of (q + r) switching functions of ( p + q) variables. The generation of those func- tions has to be automatised due to combinatorial ex- plosion. As a matter of fact the Figure 1 controller can send 2 q outputs combinations and can express (2 2


) (q+r) sequential behaviours. This automation, defined by (Hietter, 2009)) is achievable thanks to re- sults on Boolean algebra presented by (Brown, 1990).

Initially, algebraic method has been used to syn-

thesize the full control law (Roussel and Lesage,

2012). It follows a methodology, starting from func-

tional and safety requirements formalization to fin-

ish with the choice of one solution to implement in

the PLC, based on optimization criteria, However,

this approach is not suitable for large systems and


it is difficult to formalize and to validate all require- ments. Moreover, the obtained solution is often diffi- cult to read. The proposed approach is quite different.

We intend to use algebraic synthesis not to synthe- size the full control law, but only parts of it, where it seems very efficient. Indeed, it exists for instance very efficient tools to specify simple sequences like GRAFCET (IEC 60848, 2012). It is frequently used in the industry to model independent task sequences.

The latest work related to algebraic synthesis (Roussel and Lesage, 2014) present the whole method applied to an example in order to enhance the benefits and limitations of the approach. The main advantage emphasised in this paper is the independence between the synthesized control law and the requirement in- terpretation. However, this means that the method is highly dependant on the relevance and correctness of the requirements. The solver used is a software tool developed in Python. The inputs of this tool are a set of known and unknown variables and a set of require- ments, defined as combination of those variables. It can provide two kinds of outputs. If the requirements set is consistent, a parametric solution of each un- known variable will be given. On the other case, the inconsistency conditions will be given. With this tool we can also prioritise the relations in order to rise in- consistency. Expression to maximise or minimise can be declared in this software to reduce the parametric solution to a unique one thanks to the works of (Ler- oux and Roussel, 2012).

3.2 Logical Filter

A logical filter takes place after the program execu- tion as shown in Figure 2. This notion first appeared in the works of (Marang´e, 2008), then was extended by those of (Coupat, 2014). Two kinds of modifica- tions can occur to the command law. In the case of a blocking filter, a constraint violation will lead the system to a predetermined and stable state. In the case of a corrective filter, a constraint violation will lead to an output adjustment to fit with the filter con- straint set. A corrective filter generation depend on the functional program and, more precisely, if it has been created with the knowledge of the logical filter.

The contribution of Pichard (Pichard, 2019) to logical filter brings a formalism to the definition of logical constraints which enable him formal verifi- cation for logical filter consistency. Nevertheless, this formalism is accompanied by strong restrictions for the constraints redaction. This results to a lower power of expression than our algebraic synthesis ap- proach.

Figure 2: Principle of implementation of the logic filter in a PLC.


One of the constraints we have set ourselves is to gen- erate control laws that can be used in the industrial environment and therefore on PLCs. It is therefore necessary for us to be able to go as far as the im- plementation phase. In a first step, we will use an operating parts simulator. We will use Factory I/O (Figure 3) for this. This software allows us to cre- ate our own scenes and integrates a physics engine as well as the possibility to simulate defects in sen- sors and actuators. In addition to allowing us to test our control laws the passage through simulation will allow us to retrieve operating data for a large simula- tion time. The analysis of this data could enable us to obtain control strategies, particularly in terms of tasks synchronisation.

Concerning the stages of verification and valida- tion of the controller, we intend to go through the model checking. However, we cannot directly ana- lyze our system of Boolean equations or our ST code with a model checking tool. It is first necessary to model our control by state machines. This type of modeling should allow us to check properties on our control at the implementation level. As for check- ing the conformity of the problem formalization to the specifications, we are considering another method. In the case of dealing with a task synchronization prob- lem, we can represent the task scheduling in the form of a Petri net. This will allow us to use the analysis tools specific to this type of model.

Evaluating the effectiveness of a design method in

terms of usability and speed seems difficult to quan-

tify internally. This is why we intend to test our meth-

ods in concrete cases with different types of popula-

tion. Initially we intend to solicit other researchers

in our laboratory in order to obtain feedback from a

scientific point of view. However, as the methods we

wish to develop are intended to be used by industry,

it is essential to go beyond the academic framework

for our tests. This is why we are also going to solicit

industrial players to evaluate our methods. Finally, as

we are also in contact with students through teaching


Figure 3: Software Factory I/O

missions, we would like to use our methods in practi- cal work. This will allow us to verify the ergonomic aspect with a non-expert public in the field of control- command.

Finally we will have to use a mathematical ap- proach to be able to demonstrate formal properties on the results obtained in algebraic synthesis.


First of all, let’s take a look at the tools we want to develop. At the level of algebraic synthesis, the goal is to bring formal proofs at the level of optimiza- tion criteria. Indeed, we want to be able to guarantee the reduction of a solution space to a single solution in a precise number of criteria. In this way it will be possible to define a methodology based on the al- gebraic synthesis ensuring the achievement of unique solutions. Concerning the automatic code generation tool, we want to be able to obtain a code that can be implemented in a PLC by providing only our formal- ized constraints.

In a second step, let’s focus on the methodology.

The goal is to obtain an efficient method based on a task-based vision and the use of control filters to guide the design of a control law. For this it is also nec- essary to establish a catalogue of practical cases, in order to provide a method adapted to each situation.

Finally, we need to know how to define our system of equations in order to translate properties and behav- iors expected for the system.

Finally, let’s look at the methods of verification and validation. We want to be able to determine the accuracy of the formalized problem and to provide elements of solutions if necessary. In addition, it is necessary to be able to certify the respect of the spec- ifications at the time of implementation as well as to guarantee the security of the users and the system.


Regarding our tools, we have developed software in C for automatic code generation. It will retrieve the inputs/outputs of a Factory I/O scene as well as com- mand specifications in order to generate ST code. The specifications can only be integrated as GRAFCET for the moment but we would like to add the possi- bility of integrating a Boolean equation system later on. The output file can be generated in order to be usable by the UNITY and CODESYS software.

Concerning the methods, we first wanted to test the capacity of the algebraic synthesis to solve vari- ous control problems. In particular, we succeeded in implementing blocking and corrective filters. Then, thanks to these security filters we were able to imple- ment a manual mode. As for the task-based approach, we were able to ensure task synchronization by alge- braic synthesis for simple cases. However, with the increasing complexity of the systems to be studied this synchronization proved to be difficult to achieve.

Therefore, we need to progress on design methods

with a task-based vision, especially at the level of task


anteriority definition.


I would like to thank Bernard Riera and Alexandre Philippot for their contributions to this line of work.


Brown, F. M. (1990). Boolean Reasoning. Kluwer Aca- demic Publishers.

Cantarelli, M. and Roussel, J.-M. (2008). Reactive con- trol system design using the Supervisory Control The- ory: evaluation of possibilities and limits. In 9th International Workshop On Discrete Event Systems (WODES’08), pages pp. 200–205, G¨oteborg, Sweden.

Coupat, R. (2014). M´ethodologie pour les ´etudes d’automatisation et la g´en´eration automatique de programmes Automates Programmables Industriels sˆurs de fonctionnement. Application aux Equipements d’Alimentation des Lignes ´ Electrifi´ees. PhD thesis, URCA. Th`ese de doctorat dirig´ee par Riera, Bernard Sciences - STS Reims 2014.

Fabian, M. and Hellgren, A. (1998). Plc-based implementa- tion of supervisory control for discrete event systems.

In Proceedings of the 37th IEEE Conference on De- cision and Control (Cat. No.98CH36171), volume 3, pages 3305–3310 vol.3.

Hietter, Y. (2009). Synth`ese alg´ebrique de la loi de com- mande d’un syst`eme `a ´ev`enement discrets logique.

PhD thesis, ENS CACHAN.

IEC 60848 (2012). Grafcet, specification language for se- quential function charts. (3er ed.).

IEC 61131-3 (2013). Programmable controlers-part 3: Pro- gramming languages. (3rd ed.).

Leroux, H. and Roussel, J.-M. (2012). Algebraic synthe- sis of logical controllers with optimization criteria. In 6th International Workshop on Verification and Eval- uation of Computer and Communication Systems VE- COS 2012, pages pp. 103–114, Paris, France. 12 pages.

Marang´e, P. (2008). Synth`ese et filtrage robuste de la com- mande pour des syst`emes manufacturiers sˆurs de fonc- tionnement. PhD thesis, Universit´e de Reims - Cham- pagne Ardenne.

Pichard, R. (2019). Contribution `a la commande des syst`emes `a ´ev´enements discrets par filtre logique. PhD thesis, URCA.

Ramadge, P. and Wonham, W. (1989). Control of discrete event systems. Proceedings of the IEEE, vol.77, no.1, pp.643-652.

Roussel, J.-M. and Lesage, J.-J. (2012). Algebraic synthesis of logical controllers despite inconsistencies in spec- ifications. In 11th International Workshop on Dis- crete Event Systems, WODES 2012, pages pp. 307–

314, Guadalajara, Mexico. 8 pages.

Roussel, J.-M. and Lesage, J.-J. (2014). Design of Logic Controllers Thanks to Symbolic Computation of Si- multaneously Asserted Boolean Equations. Math- ematical Problems in Engineering, 2014:Article ID 726246. 15 pages.

Zaytoon, J. and Riera, B. (2017). Synthesis and implemen-

tation of logic controllers – a review. Annual Reviews

in Control, 43:152 – 168.


Documents relatifs

The authors in [HT18] propose a lazy approach to deal with with safety and reachability specifications for nonlinear systems, using three-valued abstractions, where the

On the order of the reductions of algebraic numbers.. Pietro

In Section 6 we prove Theorem 1 by transforming the conditions on the order into conditions on the index and on the Frobenius conjugacy class with respect to certain finite

Hervé Panetto, Professor of Enterprise Information Systems at University of Lorraine, France Former chair IFAC TC 5.3 – Integration and Interoperability of

ﻖﻳﺮﻃ ﻦﻋ ﺎﻫﲑﺳو ﺎﻬﻤﻴﻈﻨﺗو ﺎﻬﺘﻠﻴﻜﺸﺗو ﺔﻴﺋﻻﻮﻟا نﺎﺠﻠﻟاو ﺔﻳﺬﻴﻔﻨﺘﻟا ﺔﻴﻨﻃﻮﻟا ﺔﻨﺠﻠﻟا تﺎﻴﺣﻼﺻ دﺪﲢ ﻈﻨﺘﻟا ﻢﻴ .(.. ﻞﺼﻔﻟا لوﻷا : مﺎﻜﺣﻷا

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

In previous work, an original implementation of safe controllers (using safety logical constraints) for manufacturing systems, based on the use of a CSP (constraint

This paper provides a gradual and informal presentation of the concepts and steps that should be considered to synthesize a correct control implementation for discrete