PLC程序組合檢測理論與方法
定 價:139 元
叢書名:中國航天科技前沿出版工程·中國航天空間信息技術系列
本書針對控制系統(tǒng)PLC程序的正確性和可信性檢測驗證問題,介紹了以形式化理論方法綜合運用形成組合檢測驗證體系,從多個層次檢測驗證PLC程序動態(tài)、靜態(tài)和運行的正確性
工業(yè)控制系統(tǒng)廣泛應用于航空航天、國防工程、電力、水利、交通運輸、核電站和石油化工等安全攸關行業(yè),是國家安全的重要組成部分。可編程邏輯控制器(Programming Logic Controler,PLC)是一種嵌入式系統(tǒng)和自動控制系統(tǒng)的核心部件,其復雜性及規(guī)模也愈加龐大,PLC運行所依賴的PLC程序正確性、可信性保障變得愈加緊迫。國際上,雖經(jīng)測試的軟件由于軟件可信性問題所導致的重大災難、事故和嚴重損失屢見不鮮,如何保證PLC程序正確性得到可信驗證已經(jīng)成為工業(yè)控制領域的重大現(xiàn)實問題。本書旨在總結在PLC程序正確性和可信安全驗證方面的研究工作,體系化構建集程序測試、模型檢測、定理證明、可信驗證和檢測優(yōu)化為一體的組合檢測理論與方法,解決PLC程序運行可信性、安全與正確屬性檢測驗證等問題。
工業(yè)控制系統(tǒng)廣泛應用于航空航天、國防工程、電力、水利、交通運輸、核電站和石油化工等安全攸關行業(yè),是國家安全的重要組成部分?删幊踢壿嬁刂破鳎╬rogramming logic controller,PLC)是一種嵌入式系統(tǒng)和自動控制系統(tǒng)的核心部件,其復雜性及規(guī)模也愈加龐大,PLC運行所依賴的PLC程序正確性、可信性保障變得愈加緊迫。國際上,由于軟件可信性驗證存在問題,經(jīng)過測試的軟件導致的重大災難、事故和嚴重損失屢見不鮮,因此如何保證PLC程序正確性得到可信驗證已經(jīng)成為工業(yè)控制領域的重大現(xiàn)實問題。國內外為軟件正確性、可信性的檢測驗證投入了大量人力、物力,如美國國防部先進研究項目局(Defence Advanced Research Projects Agency,DARPA)、美國國家科學基金會(National Science Foundation,NSF)、美國國家航空航天局(National Aeronautics and Space Administration,NASA)、美國聯(lián)邦航空管理局(Federal Aviation Administration,F(xiàn)AA)、美國國防部(Department of Defence,DoD)、歐洲航天局(European Space Agency,ESA)、歐盟等,都先后支持了很多項目研究,這些研究大多關注常用編程語言編制的軟件,取得了很好的效果。但是針對控制系統(tǒng)PLC程序的檢測驗證,立足在不同應用領域上開展研究,呈現(xiàn)碎片化狀態(tài)。由于不同的檢測驗證方法各有所長,所以集合各方法之所長、形成體系化優(yōu)勢,應用到安全攸關工業(yè)控制領域,是一種很好的技術途徑。目前,中國航天領域高速發(fā)展的多模式進入空間,跨越了陸地固定與機動發(fā)射、海上發(fā)射,以及空域和天域測量保障與安全控制等,控制系統(tǒng)是航天工業(yè)的重要核心組成部分,PLC程序控制的對象繁雜、構成復雜、平臺多樣和廣域散布,涉及航天任務安全。近十多年來,在國家、軍隊和省部級等十余項重大科技攻關項目支持下,航天自主可控PLC研制項目組率先開展航天多域異構控制系統(tǒng)可信安全關鍵技術集智攻關與工程應用,在體系、系統(tǒng)、保障和產業(yè)上取得了成體系技術突破。這些技術成果也應用到了我國國防、航天、核電、風電、船舶、電子、鐵路等領域。本書旨在總結項目組在PLC程序正確性和可信安全驗證方面的研究工作,體系化構建集程序測試、模型檢測、定理證明、可信驗證和檢測優(yōu)化于一體的組合檢測理論與方法,解決PLC程序運行可信性、安全與正確屬性檢測驗證等問題,拋磚引玉,促進我國相關領域的發(fā)展。本書共9章,第1章介紹PLC程序檢測驗證需求背景及其不同層次的檢測驗證研究現(xiàn)狀;第2章研究構建了PLC程序組合檢測體系架構,提出了組合檢測方法學,闡述了相關機理,界定了研究邊界;第3章按照IEC 61131-3標準提出PLC程序體系結構,形式化定義PLC程序指令的指稱語義和指稱語義函數(shù),使多種多層次檢測驗證具有統(tǒng)一的語義和約束,支撐各方法優(yōu)勢互補;第4章在代碼層,提出了一種基于組合機制的軟件測試框架和測試方法,等效測試極限邊界條件下的PLC程序,提高測試的覆蓋性和PLC程序的可達性驗證;第5章在模型層,設計了PLC程序對應的符號遷移系統(tǒng)的變元集合、謂詞和遷移函數(shù),以及基于組合策略的模型檢測方法,驗證PLC程序運行時的動態(tài)行為的正確性,降低驗證規(guī)模;第6章在規(guī)約層,提出了一種基于定理證明技術的PLC程序正確性驗證框架,驗證PLC程序在一個掃描周期內程序的正確性質或靜態(tài)性質;第7章在應用層,設計了發(fā)射場控制系統(tǒng)構成,開展了組合檢測技術在航天發(fā)射擺桿控制系統(tǒng)案例上的檢測應用;第8章在運行層,提出了一種控制系統(tǒng)可信運行與驗證的策略,確保在計算資源有限的PLC上實現(xiàn)PLC程序運行狀態(tài)可信計算驗證;第9章在優(yōu)化層,基于實際物理測試和組合檢測的視角,以相關性驅動優(yōu)化檢測流程,縮短檢測任務周期。由于本書涉及的理論、技術、研究成果較多,在許多關鍵理論、技術或成果之處提供了較多的參考文獻標注,以便讀者深入研究。本書主要由肖力田負責編寫完成;肖楠負責第4章組合測試方法和測試驗證的研究,對研究現(xiàn)狀和檢測驗證工具等文獻資料進行分析;李孟源負責對發(fā)射場控制系統(tǒng)、PLC程序實現(xiàn)、發(fā)射場實際控制案例等進行研究,使本書內容能夠結合航天發(fā)射場進行檢測驗證。清華大學軟件學院孫家廣院士和顧明教授對本書的部分研究內容進行了指導;清華大學賀飛副教授、張荷花副研究員、萬海副研究員、劉喻高級工程師,首都師范大學王瑞教授,美國波特蘭州立大學宋曉宇教授,國防科技大學毛曉光教授、劉萬偉教授,中國電子信息產業(yè)集團有限公司宋黎定首席專家、第六研究所豐大軍正高級工程師,浙江中控研究院有限公司施一明總裁、王天林總工程師、劉國安高級工程師等對本書的研究工作給予了支持和幫助;出版社余敬春編審為本書的出版做了大量工作。北京特種工程設計研究院和管理層負責人,以及中國航天空間信息技術系列編審委員會對本書相關研究工作給予了全力支持,侯科文、張大偉、董強、袁啟平、蘇劍彬等對本書的出版給予了幫助。在此一并表示衷心的感謝!由于作者水平有限,書中難免存在不足之處,敬請讀者和專家批評指正。
肖力田,清華大學計算機科學與技術博士,北京特種工程設計研究院首席專家兼航天發(fā)射場建設責任總師、研究員;多個中央與國家專家咨詢委員會委員。作為我國航天測試發(fā)射與控制技術領域專家,長期從事航天發(fā)射場總體論證、規(guī)劃、發(fā)展戰(zhàn)略和試驗技術等研究工作,是我國新型航天發(fā)射場建設的體系設計者和重要開拓者之一。先后擔任項目負責人、總師和第一技術責任人,出色主持完成了一系列國家重大工程研究設計與建設任務;擔任指揮部成員和測試發(fā)射總體技術專家,遂行保障了200余次重大發(fā)射任務,為我國航天發(fā)射領域建設跨越式發(fā)展做出了卓越貢獻。先后獲國家科技進步特等獎1項、二等獎1項,國家勘察設計金獎1項等;軍隊及省部級科技進步獎等44項(一等獎4項、二等獎10項);發(fā)明專利與軟件著作權47項,發(fā)表學術論文120余篇、著作5部,編制航天發(fā)射場類國軍標3項。享受國務院政府特殊津貼;榮獲中國航天基金會獎、信息化突出貢獻人物獎,榮立個人二等功1次;原國防科學技術工業(yè)委員會授予十大標兵稱號與英模等榮譽。
第1章 緒論 11.1 研究背景 21.1.1 PLC運行環(huán)境 51.1.2 PLC程序驗證需求 71.2 程序正確性檢測的現(xiàn)狀 81.2.1 代碼層次的測試技術 91.2.2 模型層次的模型檢測技術 101.2.3 規(guī)約層次的定理證明技術 141.2.4 運行層次的狀態(tài)檢測技術 161.3 程序檢測流程優(yōu)化技術研究現(xiàn)狀 241.3.1 工作流程計劃相關研究 251.3.2 軟件檢測計劃優(yōu)化技術 321.3.3 PLC程序檢測計劃技術 361.4 本書主要內容 37第2章 PLC程序組合檢測體系架構 392.1 PLC工作模式以及系統(tǒng)模型 412.2 PLC程序組合檢測體系 442.2.1 PLC組合檢測體系構成 442.2.2 PLC程序組合檢測方法學 452.3 PLC程序組合檢測機理 482.3.1 PLC程序組合檢測流程 482.3.2 PLC程序模塊組合機制 502.4 PLC程序組合檢測研究內容 542.5 本章小結 57第3章 PLC程序指稱語義 593.1 PLC主要編程指令簡介 603.1.1 IEC 61131-3 603.1.2 PLC主要硬件單元 613.1.3 PLC主要編程指令集 643.2 PLC程序體系結構的定義 733.3 PLC程序的指稱語義定義 763.3.1 PLC程序語句塊的劃分與定義 763.3.2 PLC程序基本語句塊的指稱語義函數(shù) 793.4 本章小結 86第4章 PLC程序的組合測試 874.1 軟件測試技術概述 884.2 PLC嵌入式軟件測試技術的適應性研究分析 884.3 基于組合的PLC測試技術 924.3.1 PLC程序組合測試框架 924.3.2 PLC代碼塊的TA代碼 934.4 本章小結 100第5章 PLC程序的組合模型檢測 1025.1 組合模型檢測的主要思路 1035.2 線性時序邏輯語法、語義 1055.3 線性時序邏輯的模型檢測問題 1065.4 模型檢測工具 1085.4.1 模型檢測工具分類 1085.4.2 面向屬性驗證的工具 1105.4.3 面向系統(tǒng)分析和建模的工具 1135.4.4 面向源程序驗證的工具 1175.4.5 模型檢測驗證工具選擇 1245.5 PLC程序的符號遷移系統(tǒng)表示 1255.6 PLC程序的組合模型檢測 1285.6.1 通用的組合檢測規(guī)則 1295.6.2 PLC程序特有的組合規(guī)則 1315.7 組合模型檢測的正確性 1335.7.1 通用的組合檢測規(guī)則 1335.7.2 PLC程序特有的組合檢測規(guī)則 1365.8 檢測策略的案例分析 1385.9 本章小結 141第6章 PLC程序的組合證明 1426.1 定理證明工具 1446.1.1 COQ定理證明器 1456.1.2 Automath定理證明器 1466.1.3 Nqthm和ACL2定理證明器 1476.1.4 Isabelle/HOL定理證明器 1496.1.5 PVS定理證明器 1516.1.6 Nuprl和LEGO證明開發(fā)系統(tǒng) 1526.1.7 Mizar項目 1546.2 直覺主義邏輯及其一階邏輯定義 1556.3 交互式定理證明工具COQ 1596.4 基于COQ的PLC程序建模 1616.5 基于COQ的PLC程序性質證明 1736.6 本章小結 174第7章 PLC程序組合檢測實際應用 1767.1 發(fā)射場系統(tǒng)任務與組成 1777.1.1 傳統(tǒng)發(fā)射場系統(tǒng) 1787.1.2 先進航天發(fā)射場系統(tǒng) 1807.2 發(fā)射場控制系統(tǒng) 1857.2.1 發(fā)射場智能系統(tǒng)構成 1857.2.2 發(fā)射場控制系統(tǒng)組成 1877.3 案例概述 1897.4 航天發(fā)射擺桿控制系統(tǒng) 1907.5 航天發(fā)射擺桿控制系統(tǒng)PLC輸出驅動模塊 1927.5.1 發(fā)射擺桿控制功能 1927.5.2 正確性驗證性質 1947.6 PLC輸出驅動模塊的組合測試 1967.6.1 實際測試 1967.6.2 組合測試 1977.7 PLC輸出驅動模塊的組合模型檢測 1987.8 PLC輸出驅動模塊的組合證明 1997.9 PLC輸出驅動模塊的組合檢測結果分析比較 2017.10 本章小結 202第8章 PLC程序運行狀態(tài)檢測 2038.1 控制系統(tǒng)遠程智能支持體系架構 2048.1.1 現(xiàn)場級 2058.1.2 過程級 2068.1.3 遠程級 2068.1.4 控制任務中智能支持流程 2078.2 遠程智能支持構建關鍵要素 2088.2.1 PLC程序運行狀態(tài)檢測驗證 2088.2.2 控制系統(tǒng)智能故障診斷 2098.2.3 智能遠程支持 2108.2.4 遠程智能支持平臺構建 2118.3 可信標簽和檢測驗證協(xié)議 2128.3.1 可信標簽構建 2128.3.2 可信標簽簽名算法分析 2148.3.3 PLC程序狀態(tài)遷移串行可信標簽檢測驗證協(xié)議 2158.3.4 PLC程序狀態(tài)遷移并行可信標簽檢測驗證協(xié)議 2188.3.5 協(xié)議原型系統(tǒng)部署試驗驗證 2208.4 PLC程序狀態(tài)遷移可信標簽檢測驗證協(xié)議的安全性分析 2218.4.1 外部獨立攻擊的安全性分析 2228.4.2 聯(lián)合攻擊的安全性分析 2238.5 本章小結 224第9章 相關性驅動檢測流程優(yōu)化 2259.1 過程模型的選擇 2269.1.1 以流程對象為主的過程模型 2269.1.2 測試計劃的過程模型 2289.2 PLC程序檢測過程模型的定義 2289.3 檢測流程中檢測項相關性 2329.4 檢測流程模型優(yōu)化框架 2339.4.1 強相關性檢測項的轉換 2339.4.2 強相關性檢測項的同步檢測 2349.4.3 強相關性檢測項的異步檢測 2349.5 相關性驅動的組合檢測流程優(yōu)化可行性 2369.6 本章小結 238參考文獻 239