Automatic Translations for Model Checking of LD Programs

LD 프로그램의 모델 체킹을 위한 자동변환

  • 권민혁 (슈어소프트테크 S/W 시험 자동화 연구소) ;
  • 신승철 (한국기술교육대학교 인터넷미디어학부)
  • Published : 2010.02.15

Abstract

PLCs are special purpose microcontrollers used in most automatic control systems such as plants, embedded systems, and intelligent buildings. LD is one of the most popular languages among PLC languages. For now LD programs are mainly verified by simulation and testing which has a lot of limitation. This paper describes how to translate a given LD program into an input of a model checker so that LD program is verified by model checking. We define formal semantics of LD programs and SMV models and specify a formal definition of the translation function which preserves semantics between LD programs and SMV models.

발전소와 임베디드 시스템, 지능형 빌딩과 같은 현대의 대부분의 시스템은 PLC 라는 특수목적 컴퓨터를 이용하여 자동제어된다. PLC 프로그래밍 언어 중에서 가장 많이 사용하는 것은 LD 프로그램이다. LD 프로그램의 검증은 시뮬레이션과 테스팅등을 통해 이루어지는데 이러한 방법은 프로그램 검증에 한계가 있다. 본 논문에는 LD 프로그램의 검증시 모델 체킹을 사용할 수 있도록 주어진 LD 프로그램을 모델 체커의 입력으로 자동으로 변환하는 방법을 기술한다. LD 프로그램과 SMV 모델의 의미구조를 정의 하고 이를 바탕으로 의미가 보존되는 변환 함수를 정형적으로 나타낸다.

Keywords

References

  1. IEC, "International Standard IEC 61131-3 Programmable controllers-Part3: Programming languages 2nd Edition," International Electrotechincal Commission, 2003.
  2. Probst, S. T., "Chemical Process Safety and Operability Analysis Using Symbolic Model Checking," PhD Thesis, Department of Chemical Engineering, Carnege Mellon University, 1996.
  3. Probst, S. T., Powers, G. J., Long, D. E., and Moon, I., "Verification of a Logically Controlled Solid Transport System Using Symbolic Model-Checking," Department of Computer and Chemical Engineering, carnegie Mellon University, 1996.
  4. M. Rausch and B. H. Krogh, "Formal Verification of PLC Programs," In Proc. American Control Conference, 1998.
  5. O. Rossi, Ph. Schnoebelen, "Formal Modeling of Timed Function Blocks for the Automatic Verification of Ladder Diagram Programs," Proc. 4th Int. conf. Automation of Mixed Processes:Hybrid Dynamic systems (ADPM), Dortmund, Germany, Sept. 2000.
  6. Roberto C., et al., "NuSMV 2.4 User Manual," ITC-irst, Carnege Mellon University, 2005.
  7. Seungcheol Shin, Minhyuk Kwon, Sanghoon Rho, "Whimori CDK: a Control Program Development Kit," The International Conference of COMPUTING in Engineering, Science and Informatics (ICC2009), 2009.
  8. Minhyuk Kwon, Seungcheol Shin, "A Experiment report for a LD-to-SMV translator," http://pllab. kut.ac.kr/tr/2009/ld2smvexp.pdf, Technical Report, PLLAB, Korea University of Technology and Education, 2009.