Automatic verification of temporal and timed properties of control programs

Control system programs are usually validated by testing prior to their deployment. Unfortunately, testing is not exhaustive and therefore it is possible that a program which passed all the required tests still contains errors. We propose to use automatic verification, which can establish whether gi...

Full description

Bibliographic Details
Main Author: Zoubek, Bohumir
Published: University of Birmingham 2004
Subjects:
Online Access:http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.419737
id ndltd-bl.uk-oai-ethos.bl.uk-419737
record_format oai_dc
spelling ndltd-bl.uk-oai-ethos.bl.uk-4197372016-08-04T03:55:12ZAutomatic verification of temporal and timed properties of control programsZoubek, Bohumir2004Control system programs are usually validated by testing prior to their deployment. Unfortunately, testing is not exhaustive and therefore it is possible that a program which passed all the required tests still contains errors. We propose to use automatic verification, which can establish whether given properties are true or not through exhaustive exploration of the model, in addition to validation through testing. This thesis defines a framework for modelling and verification of control programs. A subset of ladder diagram program elements, given by the IEC 61131-3 standard, is supported. The models can be automatically extracted from ladder diagrams and converted to timed automata. The timed automata models are then verified using the real-time model checker Uppaal. The properties to be verified are expressed in temporal logic and can be timed. Abstraction techniques based on program slicing and variable dependency graphs are employed to tackle the well known state-space explosion problem which often results in the verification becoming infeasible. The framework proposed in the thesis was implemented in Java as a proof-of concept software tool that can serve as a back-end in the control programmers' toolbox. The tool was then used to analyse two case studies given as ladder diagrams. The first case study concerned a pumping line unit with four properties, one of which was timed. In this case, all properties were successfully verified. The second case study consisted of a gas burner control program. The program was found to contain errors that were discovered automatically, and then corrected after analysing diagnostic traces produced by the Uppaal model checker. After modifications, the program was shown to satisfy the original properties. Statistics giving model sizes and verification time are presented for each case study for a range of abstraction techniques. We believe that the work presented in the thesis successfully demonstrates that automatic verification can substantially enhance current validation procedures for control programs.005.14University of Birminghamhttp://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.419737Electronic Thesis or Dissertation
collection NDLTD
sources NDLTD
topic 005.14
spellingShingle 005.14
Zoubek, Bohumir
Automatic verification of temporal and timed properties of control programs
description Control system programs are usually validated by testing prior to their deployment. Unfortunately, testing is not exhaustive and therefore it is possible that a program which passed all the required tests still contains errors. We propose to use automatic verification, which can establish whether given properties are true or not through exhaustive exploration of the model, in addition to validation through testing. This thesis defines a framework for modelling and verification of control programs. A subset of ladder diagram program elements, given by the IEC 61131-3 standard, is supported. The models can be automatically extracted from ladder diagrams and converted to timed automata. The timed automata models are then verified using the real-time model checker Uppaal. The properties to be verified are expressed in temporal logic and can be timed. Abstraction techniques based on program slicing and variable dependency graphs are employed to tackle the well known state-space explosion problem which often results in the verification becoming infeasible. The framework proposed in the thesis was implemented in Java as a proof-of concept software tool that can serve as a back-end in the control programmers' toolbox. The tool was then used to analyse two case studies given as ladder diagrams. The first case study concerned a pumping line unit with four properties, one of which was timed. In this case, all properties were successfully verified. The second case study consisted of a gas burner control program. The program was found to contain errors that were discovered automatically, and then corrected after analysing diagnostic traces produced by the Uppaal model checker. After modifications, the program was shown to satisfy the original properties. Statistics giving model sizes and verification time are presented for each case study for a range of abstraction techniques. We believe that the work presented in the thesis successfully demonstrates that automatic verification can substantially enhance current validation procedures for control programs.
author Zoubek, Bohumir
author_facet Zoubek, Bohumir
author_sort Zoubek, Bohumir
title Automatic verification of temporal and timed properties of control programs
title_short Automatic verification of temporal and timed properties of control programs
title_full Automatic verification of temporal and timed properties of control programs
title_fullStr Automatic verification of temporal and timed properties of control programs
title_full_unstemmed Automatic verification of temporal and timed properties of control programs
title_sort automatic verification of temporal and timed properties of control programs
publisher University of Birmingham
publishDate 2004
url http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.419737
work_keys_str_mv AT zoubekbohumir automaticverificationoftemporalandtimedpropertiesofcontrolprograms
_version_ 1718371671537090560