CN115544463A - 一种基于故障树分析的安全联锁系统开发方法 - Google Patents
一种基于故障树分析的安全联锁系统开发方法 Download PDFInfo
- Publication number
- CN115544463A CN115544463A CN202211347895.7A CN202211347895A CN115544463A CN 115544463 A CN115544463 A CN 115544463A CN 202211347895 A CN202211347895 A CN 202211347895A CN 115544463 A CN115544463 A CN 115544463A
- Authority
- CN
- China
- Prior art keywords
- track
- route
- system model
- event
- track section
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000004458 analytical method Methods 0.000 title claims abstract description 29
- 230000033772 system development Effects 0.000 title claims abstract description 18
- 238000007670 refining Methods 0.000 claims abstract description 9
- 238000013459 approach Methods 0.000 claims description 47
- 230000008569 process Effects 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 11
- 230000003068 static effect Effects 0.000 claims description 9
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 230000007257 malfunction Effects 0.000 claims description 3
- 238000000465 moulding Methods 0.000 claims description 3
- 230000037361 pathway Effects 0.000 claims 1
- 230000006399 behavior Effects 0.000 abstract description 4
- 230000006378 damage Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Train Traffic Observation, Control, And Security (AREA)
Abstract
本发明提供一种基于故障树分析的安全联锁系统开发方法,包含步骤:S1、分析安全联锁系统的预期目标,得到所述系统的初始需求,结合所述初始需求,通过语义表述的故障树,识别系统硬件层的潜在故障,得到系统的多个功能需求;S2、通过Event‑B形式化方法,基于列车安全驶入站场并安全离开站场的功能需求,建立初始的系统模型;并基于其余功能需求精化所述系统模型;S3、通过Event‑B形式化语言表述的故障树,分析导致危害事故发生的行为,得到系统对应的安全控制需求;基于所述安全控制需求进一步精化系统模型;S4、完成系统模型的证明义务并生成可执行代码。
Description
技术领域
本发明涉及轨道交通安全系统技术领域,特别涉及一种基于故障树分析的安全联锁系统开发方法。
背景技术
在实际系统开发过程中,开发者往往从客户需要的功能角度出发,在满足所需功能的基础上实现功能安全。然而,对于轨道交通这类安全攸关的系统,任何的故障或失误都可能造成严重后果。因此,联锁系统的设计不仅要保证功能正确性,更要保证功能实现的安全性。
针对联锁系统软件复杂的安全特性,选择合适的STPA(System TheoreticProcess Analysis,系统理论过程分析)安全分析方法识别系统危害,通过约束危害发生条件进而形成更加全面和精确的安全需求。然而STPA的分析过程较为复杂,还需要一定的专业知识辅助分析。
Event-B是一种基于传统的谓词演算和定理证明的形式化语言。Event-B形式化方法是一种用于系统级别的建模和分析的方法,在B方法基础上发展出来的,基于状态和事件的形式化系统支持基于精化的模型转换和性质证明。Event-B形式化方法能够利用精化,从简单的抽象模型开始,通过逐步引入细节不断丰富模型,但是上述建模过程需要一定的专业知识和经验,将其与STPA安全分析技术结合又增加了整个过程的复杂程度,缺少系统化的建模指导方案。
发明内容
本发明的目的是提供一种基于故障树分析的安全联锁系统开发方法,应用了基于语义表述的故障树和基于Event-B形式化语言表述的故障树,分析了列车事故、危害事故发生的原因,消除了系统硬件层故障以及软件不安全控制行为带来的危害,提高了系统的安全性。
通过在形式化模型中验证所获得的需求,可以消除需求的模糊性和缺陷,进而形成更加全面和精确的安全需求。
为了达到上述目的,本发明提供一种基于故障树分析的安全联锁系统开发方法,包含步骤:
S1、分析安全联锁系统的预期目标,得到所述系统的初始需求;结合所述初始需求,通过语义表述的故障树,识别系统硬件层的潜在故障,得到系统的多个功能需求;
S2、通过Event-B形式化方法,基于列车安全驶入站场并安全离开站场的功能需求,建立初始的系统模型;并基于其余功能需求精化所述系统模型;
S3、通过Event-B形式化语言表述的故障树,分析导致危害事故发生的原因,得到系统对应的安全控制需求;基于所述安全控制需求进一步精化系统模型;
S4、完成系统模型的证明义务并生成可执行代码。
可选的,所述初始需求为:避免碰撞;所述潜在故障包含:轨道相关故障和信号错误;所述轨道相关故障包含:轨道传感器故障、道岔故障;所述道岔故障包含:道岔传感器故障、道岔转换操作未执行、道岔转换到错误的位置;所述信号错误包含:信号机传感器故障、信号转换操作未执行。
可选的,初始的系统模型包含常量rtbl、nxt、fst、lst;其中常量rtbl表示由轨道区段组成的进路,常量nxt表示进路中轨道区段的顺序关系,常量fst、常量lst分别表示每条进路中的第一个轨道区段、最后一个轨道区段;
初始的系统模型包含静态属性,所述静态属性包含:一个区段可以对应多个进路,一条进路又由多个区段组成;进路的第一个和最后一个轨道区段位于该进路中;对于一条进路,其第一个和最后一个轨道区段是不相等的;对于一条进路,其轨道连续性的定义域不包含进路的最后一个轨道区段;任意一条进路不包含环路;一条进路的第一个轨道区段和最后一个轨道区段不属于其进路中间部分的轨道区段;
初始的系统模型包含变量resrt、resbl、rsrtbl、OCC;变量resrt表示征用的进路;变量resbl表示征用的轨道区段的集合;变量rsrtbl将征用的轨道区段与对应的开通进路联系起来;变量OCC表示被占用的轨道区段的集合;
初始的系统模型包含动态属性,所述动态属性包含:征用的进路属于进路集合;征用的区段属于轨道区段集合;组成征用进路的轨道区段与进路的关系是轨道区段与进路的关系的子集;占用的轨道区段必须是征用的轨道区段;预留进路已释放的轨道区段的轨道区段连续性集合与进路未被占用集合相交为空;预留进路被占用轨道区段和未被占用的轨道区段是进路征用区段的子集;进路未占用的轨道区段的轨道区段连续性集合是进路未被占用集合的子集。
可选的,初始的系统模型还包含:按顺序执行的第一至第五事件,用于表示列车驶入站场至离开站场的过程;
所述第一事件为选排征用进路事件;第一事件对应第一组不变式,通过证明第一组不变式,判断系统模型是否满足功能需求:待征用的进路未被征用,而且待征用进路中的轨道区段没有敌对进路;
所述第二事件为列车头部驶入进路事件;第二事件对应第二组不变式,通过证明第二组不变式,判断系统模型是否满足功能需求:进路中的第一个轨道区段必须处于被征用且空闲的状态;
所述第三事件为列车车身驶入进路事件,第三事件对应第三组不变式,通过证明第三组不变式,判断系统模型是否满足功能需求:被占用的轨道区段不是一条征用进路的第一个轨道区段;
所述第四事件为列车尾部离开进路事件,第四事件对应第四组不变式,通过证明第四组不变式,判断系统模型是否满足功能需求:被列车占用的最后一个轨道区段在列车的征用进路里有前一个轨道区段,所述前一个轨道区段不是为征用进路预留的;如果被列车占用的最后一个轨道区段在征用进路里有下一个轨道区段,所述下一个轨道区段必须是被占用的;
所述第五事件为解锁进路事件,第五事件对应第五组不变式,通过证明第五组不变式,判断系统模型是否满足功能需求:被释放的进路已经不再有征用的轨道区段;
当初始的系统模型能够完成第一至第五组不变式的证明,则初始的系统模型能够满足列车能够安全驶入站场并安全离开站场的功能需求。
可选的,步骤S2中基于能够利用轨道区段确定列车位置的功能需求,对系统模型进行第一次精化;
第一次精化后的系统模型增加了变量TRK、frm、LBT;变量TRK对应物理上的轨道区段,它是一个从轨道区段到轨道区段的部分函数;变量frm表示所有开通进路的集合;变量LBT表示列车尾部占用的轨道区段的集合;
第一次精化后的系统模型增加了动态属性,包含:沿列车运行的方向,物理上的轨道区段连续;所有开通进路的集合都是被征用进路的子集;被占用的轨道区段对应的进路都是开通的进路;已被征用但尚未开通的进路,它被征用的轨道区间与构成该进路的所有轨道区段一致;如果列车尾部占用的轨道区段的后一轨道区段被征用,所述后一轨道区段不会被该辆列车征用。
可选的,步骤S2中基于通路能够就绪以接受新的列车的功能需求,对系统模型进行第二次精化;
第二次精化后的系统模型包含变量rdy,所述变量rdy表示开通的进路;
第二次精化后的系统模型增加了动态属性,包含:开通的进路一定是被征用的;开通进路中的所有轨道区段都已经被征用;开通进路中的所有轨道区段都处于空闲状态;
第二次精化后的系统模型包含第六事件和第七事件;
所述第六事件表示:将已征用但未成形的进路的轨道区段按照需要的位置连接起来;第六事件对应第六组不变式,通过证明第六组不变式,判断系统模型是否满足功能需求:道岔指向需要的位置;
所述第七事件表示:进路中所有的道岔都指向需要的位置后,该进路属于成形进路;第七事件对应第七组不变式,通过证明第七组不变式,判断系统模型是否满足功能需求:进路属于成型进路。
可选的,步骤S2中基于信号灯为绿色表示进路已经就绪的功能需求,对系统模型进行第三次精化;
第三次精化后的系统模型增加了常量SIG,所述常量SIG表示每条进路的进路信号机;
第三次精化后的系统模型增加了静态属性:进路信号机唯一的关联到进路的第一个轨道区段;
第三次精化后的系统模型扩充了第七事件,扩充后的第七事件表示:成形必须为开通的进路;
第三次精化后的系统模型简化了第二事件:将第二事件中的被征用的进路改为开通的进路,将开通进路的第一个轨道区段加入逻辑占用轨道区段集合和物理占用轨道区段集合。
可选的,步骤S2中基于进路就绪时扳动道岔的功能需求,对系统模型进行第四次精化;
第四次精化后的系统模型增加了常量blpt、rht、lft;所述常量blpt表示带有道岔的轨道区段集合;所述常量rht和常量lft分别表示道岔的定位和反位;
第四次精化后的系统模型包含静态属性:进路上的道岔处于定位或反位;道岔不能位于进路的第一个轨道区段或最后一个轨道区段。
可选的,所述危害事故包含:道岔被占用时进行了转换操作;所述导致危害事故发生的原因包含:道岔的集合属于被列车占用的区段集合;控制器向道岔发出转换命令时,所有道岔的集合属于锁闭道岔集合;
所述安全控制需求包含:在联锁系统开放绿灯信号之前,保证进路中所有道岔的位置正确;基于安全控制需求对系统模型进行第五次精化;
第五次精化后的系统模型新增了不变式,用于证明系统模型满足道岔位置正确的安全需求,新增的不变式包含:所有道岔的集合包含锁闭道岔集合;被锁闭道岔的集合包含了所有道岔的集合与被列车占用的轨道区段的集合的合集。
可选的,Event-B形式化语言表述的故障树中,将导致危害发生的原因用Event-B形式化语言表示。
与现有技术相比,本发明的有益效果在于:本发明的基于故障树分析的安全联锁系统开发方法,应用了基于语义表述的故障树和基于Event-B形式化语言表述的故障树,分析了列车事故、危害事故发生的原因;基于由故障树得来的功能需求和安全控制需求,建立系统控制模型并进行多次精化;消除了系统硬件层故障以及软件不安全控制行为带来的危害,提高了系统的安全性,确保最终的系统模型能够满足实际工作需求。
附图说明
为了更清楚地说明本发明技术方案,下面将对描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图:
图1、图2为本发明的基于故障树分析的安全联锁系统开发方法的流程图;
图3为本发明实施例中,基于语义表述的故障树示意图;
图4为本发明实施例中,基于Event-B形式化语言表述的故障树示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
本发明提供一种基于故障树分析的安全联锁系统开发方法,如图1、图2所示,包含步骤:
S1、分析安全联锁系统的预期目标,得到所述系统的初始需求;结合所述初始需求,通过语义表述的故障树,识别系统硬件层的潜在故障,得到系统的多个功能需求;
本实施例中的初始需求为:避免碰撞。列车碰撞将导致严重的危害,现有的列车也没有防撞机制。为此,联锁系统应当通过周密地规划,避免列车与其他列车和可能的障碍物发生碰撞。因此,将列车碰撞作为语义表述的故障树的最顶层。碰撞有三种情况:正面碰撞、侧面碰撞和追尾碰撞。这些碰撞案例的故障树分析结果相同,图3中给出了语义表述的故障树对追尾碰撞的分析结果。
如图3所示,本实施例中导致追尾碰撞的系统硬件层潜在故障包含:轨道相关故障和信号错误;所述轨道相关故障包含:轨道传感器故障、道岔故障;所述道岔故障包含:道岔传感器故障、道岔转换操作未执行、道岔转换到错误的位置;所述信号错误包含:信号机传感器故障、信号转换操作未执行。
我们把联锁系统看作是一个控制系统。这里的分析没有考虑外部环境对系统的影响,而是考虑了联锁系统中的控制器与传感器相互作用的潜在安全隐患。如果发生正面碰撞,可能是由于列车之间的距离大于列车的紧急制动距离,也可能是由于速度过快造成的。但是我们把火车看成是外部环境的一部分,所以这些情况都归类为列车相关故障在本发明中不再继续分析了。我们的重点关注的是轨道相关故障和信号相关故障。
轨道区段包括无岔区段和有岔区段,无岔区段上传感器故障可能导致无法获取列车位置信息造成严重危害,道岔传感器故障或处于错误的位置也可能造成危害。本发明中对信号机的信号做了简化,只包含表示允许通行的绿灯信号和禁止通行的红灯信号。信号机传感器故障、未及时切换信号都可能导致危害。通过图3的分析结果可以得到联锁系统一些功能需求。
S2、通过Event-B形式化方法,基于列车安全驶入站场并安全离开站场的功能需求,建立初始的系统模型;并基于其余功能需求精化所述系统模型。
初始的系统模型
在初始的系统模型中,包含按顺序执行的第一至第五事件,用于表示列车驶入站场至离开站场的过程。第一事件命名为ROUTE_RESERVATION,其为选排征用进路事件。第二事件命名为FRONT_MOVE_1,其为列车头部驶入进路事件。第三事件命名为FRONT_MOVE_2,其为列车车身驶入进路事件。第四事件命名为BACK_MOVE,其为列车尾部离开进路事件。第五事件命名为ROUTE_FREEING,其为解锁进路事件。则表示列车驶入站场至离开站场的过程表示为:<ROUTE_RESERVATION;FRONT_MOVE_1;FRONT_MOVE_2;BACK_MOVE;ROUTE_FREEING>。
初始的系统模型包含常量rtbl、nxt、fst、lst;其中常量rtbl表示由轨道区段组成的进路,常量nxt表示进路中轨道区段的顺序关系,常量fst、常量lst分别表示每条进路中的第一个轨道区段、最后一个轨道区段。
初始模型的静态属性如下所示:
axm0_1表示一个区段可以对应多个进路,一条进路又由多个区段组成。axm0_2表示一条进路的顺序关系。axm0_3、axm0_4分别表示进路的第一个、最后一个轨道区段。axm0_5、axm0_6分别表示进路的第一个、最后一个轨道区段位于该进路中。axm0_7表示对于一条进路,其第一个和最后一个轨道区段是不相等的。axm0_8表示对于一条进路,其轨道连续性的定义域不包含进路的最后一个轨道区段。axm0_9表示任意一条进路不包含环路。axm0_10、axm0_11分别表示一条进路的第一个轨道区段、最后一个轨道区段不属于其进路中间部分的轨道区段。
初始的系统模型包含变量resrt、resbl、rsrtbl、OCC;变量resrt表示征用的进路;变量resbl表示征用的轨道区段的集合;变量rsrtbl将征用的轨道区段与对应的开通进路联系起来;变量OCC表示被占用的轨道区段的集合。
初始模型的动态属性如下所示:
inv0_1表示征用的进路属于进路集合。inv0_2表示征用的区段属于轨道区段集合。inv0_3表示征用轨道区段与征用进路的关系。inv0_4表示组成征用进路的轨道区段与进路的关系是轨道区段与进路的关系的子集。inv0_5表示占用的轨道区段必须是征用的轨道区段。inv0_6表示预留进路已释放的轨道区段的轨道区段连续性集合与进路未被占用集合相交为空。inv0_7表示预留进路被占用轨道区段和未被占用的轨道区段是进路征用区段的子集。inv0_8表示进路未占用的轨道区段的轨道区段连续性集合是进路未被占用集合的子集。
然后对第一事件至第五事件建模。
第一事件对应第一组不变式,通过证明第一组不变式,判断系统模型是否满足功能需求:待征用的进路未被征用,而且待征用进路中的轨道区段没有敌对进路。
第一组不变式如下所示:
第一事件ROUTE_RESERVATION表示征用一条进路r,其中进路r未被征用而且进路r中的轨道区段没有敌对进路当条件满足时,将进路加入征用进路(resrt:=resrt∪{r}),并将进路对应的轨道区段的关系并入变量rsrtbl中最后将进路对应的轨道区段加入到征用区段集合中。
第二事件对应第二组不变式,通过证明第二组不变式,判断系统模型是否满足功能需求:进路中的第一个轨道区段必须处于被征用且空闲的状态。
第二组不变式如下所示:
第二事件FRONT_MOVE_1表示列车头部准备进入征用的进路,此时进路中的第一个轨道区段必须处于被征用且空闲的状态(r∈resrt,fst(r)∈resbl\OCC,rsrtbl(fst(r))=r),则将进路的第一个轨道区段加入占用轨道区段集合(OCC:=OCC∪{fst(r)})。
第三事件对应第三组不变式,通过证明第三组不变式,判断系统模型是否满足功能需求:被占用的轨道区段不是一条征用进路的第一个轨道区段。
第三组不变式如下所示:
第三事件FRONT_MOVE_2表示对应于占用一个轨道区段。当被占的轨道区段不是一条征用进路的第一个轨道区段时,这个事件发生,如果给定的分段b已被占用(b∈OCC),而且b先于(同一进路上的)另一个轨道区段c而c是未被占用的(c∈B\OCC),那么就把c改为占用的(OCC:=OCC∪{c})。因此,列车不会到达r的末端之前消失,事件FRONT_MOVE_2的动作就是把b改为非预留而且非占用的
第四事件对应第四组不变式,通过证明第四组不变式,判断系统模型是否满足功能需求:被列车占用的最后一个轨道区段在列车的征用进路里有前一个轨道区段,所述前一个轨道区段不是为征用进路预留的;如果被列车占用的最后一个轨道区段在征用进路里有下一个轨道区段,所述下一个轨道区段必须是被占用的。
第四组不变式如下所示:
第四事件BACK_MOVE对应于列车尾部的运行。当轨道区段b被占用(b∈OCC),而且是列车占用的最后一个轨道区段时,要求轨道区段b在征用通路r里有前一个轨道区段,而该前一个轨道区段不是为r预留的 如果b在r里有下一个轨道区段,该分段必须是被占用的 因此,列车不会到达r的末端之前消失,事件的动作就是把b改为非预留而且非占用的
第五事件对应第五组不变式,通过证明第五组不变式,判断系统模型是否满足功能需求:被释放的进路已经不再有征用的轨道区段。
第五事件ROUTE_FREEING表示释放一条被征用的进路,前提是该进路已经不再有征用的轨道区段了(r∈resrt\ran(rsrtbl)),则将进路从征用进路中移除(resrt:=resrt\{r})。
第五组不变式如下所示:
当初始的系统模型能够完成第一至第五组不变式的证明,则初始的系统模型能够满足列车能够安全驶入站场并安全离开站场的功能需求。
第一次精化
步骤S2中基于能够利用轨道区段确定列车位置的功能需求,对系统模型进行第一次精化。在这次精化中,赋予了轨道区段物理特性,不仅定义了轨道区段的连续性,还提供了列车沿轨道区段运行的方向。该次精化的主要目的是利用轨道区段确定列车位置。
第一次精化后的系统模型增加了变量TRK、frm、LBT。变量TRK对应物理上的轨道区段,它是一个从轨道区段到轨道区段的部分函数;变量frm表示所有开通进路的集合;变量LBT表示列车尾部占用的轨道区段的集合。
第一次精化后的系统模型增加了如下所示的动态属性:
inv1_1定义了轨道区段物理上的连续性,inv1_2还提供了列车沿轨道区段运行的方向。inv1_3表示所有开通进路的集合都是被征用进路的子集。inv1_4表示被占用的轨道区段对应的进路都是开通的进路。inv1_5表示对于已被征用但尚未开通的进路,其被征用的轨道区间与构成该进路的所有轨道区段一致。inv1_6建立进路逻辑上与物理上连续性的联系。inv1_7表示列车尾部占用的轨道区段的集合被占用的轨道区段的集合包含。inv1_8表示如果列车尾部占用的轨道区段的后一轨道区段被征用了,那么不会是被该辆列车征用的。
第二次精化
步骤S2中基于通路能够就绪以接受新的列车的功能需求,对系统模型进行第二次精化。第二次精化中,引入了概念:开通的进路。
第二次精化后的系统模型增加了变量rdy,变量rdy表示开通的进路。
第二次精化后的系统模型增加了动态属性,如下所示:
inv2_1表示开通的进路一定是被征用的。inv2_2表示开通进路中的所有轨道区段都已经被征用。inv2_3表示开通进路中的所有轨道区段都处于空闲状态。
第二次精化后的系统模型包含第六事件(命名为point_positionning)和第七事件(命名为route_formation)。
第六事件对应第六组不变式,通过证明第六组不变式,判断系统模型是否满足功能需求:道岔指向需要的位置。
第六组不变式表示如下:
第七事件对应第七组不变式,通过证明第七组不变式,判断系统模型是否满足功能需求:进路属于成型进路。
第七组不变式如下所示:
第三次精化
步骤S2中基于信号灯为绿色表示进路已经就绪的功能需求,对系统模型进行第三次精化。第三次精化中,引入了信号机。用红灯信号、绿灯信号具体表示进路的开通情况。
第三次精化后的系统模型增加了常量SIG,其表示每条进路的进路信号机。第三次精化后的系统模型还增加了静态属性,增加的静态属性如下所示:
axm3_1表示进路信号机唯一的关联到进路的第一个轨道区段。
第三次精化中增加了不变式inv3_2,表明开通进路的信号机显示绿灯信号。
第三次精化后的系统模型扩充了第七事件route_formation,扩充了的第七事件route_formation的不变式如下所示:
通过证明上述不变式,证明系统模型满足功能需求:进路不仅成形还开通。
第三次精化后的系统模型简化了第二事件FRONT_MOVE_1,简化了的第二事件FRONT_MOVE_1的不变式为:
简化了的第二事件FRONT_MOVE_1中的进路从被征用的改为被开通的(r∈rdy,rsrtbl(fst(r))=r),将第一个轨道区段加入逻辑占用轨道区段集合和物理占用轨道区段集合(OCC:=OCC∪{fst(r)},LBT:=LBT∪{fst(r)}),并将进路从开通的进路中移除(rdy:=rdy\{r})。
第四次精化
轨道区段分为道岔区段和无岔区段。第四次精化过程中,引入了道岔。步骤S2中基于进路就绪时扳动道岔的功能需求,对系统模型进行第四次精化。
第四次精化后的系统模型增加了常量blpt、rht、lft。常量blpt表示带有道岔的轨道区段集合,常量rht和常量lft分别表示道岔的定位和反位。
第四次精化后的系统模型的静态属性如下所示:
axm4_1~axm4_4定义了道岔的定位、反位分别用常量rht、常量lft表示。axm4_5表示进路上的道岔可能处于定位或反位。axm4_6表示道岔不可能位于进路的第一个轨道区段。axm4_7表示道岔不能位于进路的最后一个轨道区段。
上述四次精化,第一次精化引入物理轨道,使列车的运行完全对应到轨道的物理情形。从而能够对列车进行定位。
第二次精化,引进“通路就绪”的概念,一条通路就绪,也就是它能接受新的列车。
第三次精化,定义信号灯,信号灯的作用就是绿色表示进路已经就绪。
第四次精化,引进道岔的概念,在进路就绪的时候扳动道岔。
S3、通过Event-B形式化语言表述的故障树,分析导致危害事故发生的原因,得到系统对应的安全控制需求;基于所述安全控制需求进一步精化系统模型。
本实施例中基于安全控制需求对系统模型进行第五次精化。本实施例中的安全控制需求包含:在联锁系统开放绿灯信号之前,保证进路中所有道岔的位置正确。
通过Event-B形式化语言表述的故障树进行分析,包含步骤:
H1、识别出发危害的顶层事件。
H2、绘制故障树(自顶向下的逐层分析可能导致上层危害的原因)。
H3、将故障树中导致危害发生的行为用Event-B语言表示。
如图4所示,本实施例中的顶层的危害事件包含:道岔被占用时进行了转换操作。所述导致危害事故发生的原因包含:硬件故障;道岔的集合属于被列车占用的区段集合;控制器向道岔发出转换命令时,所有道岔的集合属于锁闭道岔集合。
第五次精化后的系统模型新增了不变式,用于证明系统模型满足道岔位置正确的安全需求。新增的不变式如下所示:
inv5_1表示:所有道岔的集合包含锁闭道岔集合。inv5_2表示:被锁闭道岔的集合包含了所有道岔的集合与被列车占用的轨道区段的集合的合集。
S4、完成系统模型的证明义务并生成可执行代码。Rodin平台提供了良好的证明环境,并且大多数证明都能通过定理证明器自动证明。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种基于故障树分析的安全联锁系统开发方法,其特征在于,包含步骤:
S1、分析安全联锁系统的预期目标,得到所述系统的初始需求;结合所述初始需求,通过语义表述的故障树,识别系统硬件层的潜在故障,得到系统的多个功能需求;
S2、通过Event-B形式化方法,基于列车安全驶入站场并安全离开站场的功能需求,建立初始的系统模型;并基于其余功能需求精化所述系统模型;
S3、通过Event-B形式化语言表述的故障树,分析导致危害事故发生的原因,得到系统对应的安全控制需求;基于所述安全控制需求进一步精化系统模型;
S4、完成系统模型的证明义务并生成可执行代码。
2.如权利要求1所述的基于故障树分析的安全联锁系统开发方法,其特征在于,所述初始需求为:避免碰撞;所述潜在故障包含:轨道相关故障和信号错误;所述轨道相关故障包含:轨道传感器故障、道岔故障;所述道岔故障包含:道岔传感器故障、道岔转换操作未执行、道岔转换到错误的位置;所述信号错误包含:信号机传感器故障、信号转换操作未执行。
3.如权利要求1所述的基于故障树分析的安全联锁系统开发方法,其特征在于,初始的系统模型包含常量rtbl、nxt、fst、lst;其中常量rtbl表示由轨道区段组成的进路,常量nxt表示进路中轨道区段的顺序关系,常量fst、常量lst分别表示每条进路中的第一个轨道区段、最后一个轨道区段;
初始的系统模型包含静态属性,所述静态属性包含:一个区段可以对应多个进路,一条进路又由多个区段组成;进路的第一个和最后一个轨道区段位于该进路中;对于一条进路,其第一个和最后一个轨道区段是不相等的;对于一条进路,其轨道连续性的定义域不包含进路的最后一个轨道区段;任意一条进路不包含环路;一条进路的第一个轨道区段和最后一个轨道区段不属于其进路中间部分的轨道区段;
初始的系统模型包含变量resrt、resbl、rsrtbl、OCC;变量resrt表示征用的进路;变量resbl表示征用的轨道区段的集合;变量rsrtbl将征用的轨道区段与对应的开通进路联系起来;变量OCC表示被占用的轨道区段的集合;
初始的系统模型包含动态属性,所述动态属性包含:征用的进路属于进路集合;征用的区段属于轨道区段集合;组成征用进路的轨道区段与进路的关系是轨道区段与进路的关系的子集;占用的轨道区段必须是征用的轨道区段;预留进路已释放的轨道区段的轨道区段连续性集合与进路未被占用集合相交为空;预留进路被占用轨道区段和未被占用的轨道区段是进路征用区段的子集;进路未占用的轨道区段的轨道区段连续性集合是进路未被占用集合的子集。
4.如权利要求3所述的基于故障树分析的安全联锁系统开发方法,其特征在于,初始的系统模型还包含:按顺序执行的第一至第五事件,用于表示列车驶入站场至离开站场的过程;
所述第一事件为选排征用进路事件;第一事件对应第一组不变式,通过证明第一组不变式,判断系统模型是否满足功能需求:待征用的进路未被征用,而且待征用进路中的轨道区段没有敌对进路;
所述第二事件为列车头部驶入进路事件;第二事件对应第二组不变式,通过证明第二组不变式,判断系统模型是否满足功能需求:进路中的第一个轨道区段必须处于被征用且空闲的状态;
所述第三事件为列车车身驶入进路事件,第三事件对应第三组不变式,通过证明第三组不变式,判断系统模型是否满足功能需求:被占用的轨道区段不是一条征用进路的第一个轨道区段;
所述第四事件为列车尾部离开进路事件,第四事件对应第四组不变式,通过证明第四组不变式,判断系统模型是否满足功能需求:被列车占用的最后一个轨道区段在列车的征用进路里有前一个轨道区段,所述前一个轨道区段不是为征用进路预留的;如果被列车占用的最后一个轨道区段在征用进路里有下一个轨道区段,所述下一个轨道区段必须是被占用的;
所述第五事件为解锁进路事件,第五事件对应第五组不变式,通过证明第五组不变式,判断系统模型是否满足功能需求:被释放的进路已经不再有征用的轨道区段;
当初始的系统模型能够完成第一至第五组不变式的证明,则初始的系统模型能够满足列车能够安全驶入站场并安全离开站场的功能需求。
5.如权利要求4所述的基于故障树分析的安全联锁系统开发方法,其特征在于,步骤S2中基于能够利用轨道区段确定列车位置的功能需求,对系统模型进行第一次精化;
第一次精化后的系统模型增加了变量TRK、frm、LBT;变量TRK对应物理上的轨道区段,它是一个从轨道区段到轨道区段的部分函数;变量frm表示所有开通进路的集合;变量LBT表示列车尾部占用的轨道区段的集合;
第一次精化后的系统模型增加了动态属性,包含:沿列车运行的方向,物理上的轨道区段连续;所有开通进路的集合都是被征用进路的子集;被占用的轨道区段对应的进路都是开通的进路;已被征用但尚未开通的进路,它被征用的轨道区间与构成该进路的所有轨道区段一致;如果列车尾部占用的轨道区段的后一轨道区段被征用,所述后一轨道区段不会被该辆列车征用。
6.如权利要求5所述的基于故障树分析的安全联锁系统开发方法,其特征在于,步骤S2中基于通路能够就绪以接受新的列车的功能需求,对系统模型进行第二次精化;
第二次精化后的系统模型包含变量rdy,所述变量rdy表示开通的进路;
第二次精化后的系统模型增加了动态属性,包含:开通的进路一定是被征用的;开通进路中的所有轨道区段都已经被征用;开通进路中的所有轨道区段都处于空闲状态;
第二次精化后的系统模型包含第六事件和第七事件;
所述第六事件表示:将已征用但未成形的进路的轨道区段按照需要的位置连接起来;第六事件对应第六组不变式,通过证明第六组不变式,判断系统模型是否满足功能需求:道岔指向需要的位置;
所述第七事件表示:进路中所有的道岔都指向需要的位置后,该进路属于成形进路;第七事件对应第七组不变式,通过证明第七组不变式,判断系统模型是否满足功能需求:进路属于成型进路。
7.如权利要求6所述的基于故障树分析的安全联锁系统开发方法,其特征在于,步骤S2中基于信号灯为绿色表示进路已经就绪的功能需求,对系统模型进行第三次精化;
第三次精化后的系统模型增加了常量SIG,所述常量SIG表示每条进路的进路信号机;
第三次精化后的系统模型增加了静态属性:进路信号机唯一的关联到进路的第一个轨道区段;
第三次精化后的系统模型扩充了第七事件,扩充后的第七事件表示:成形必须为开通的进路;
第三次精化后的系统模型简化了第二事件:将第二事件中的被征用的进路改为开通的进路,将开通进路的第一个轨道区段加入逻辑占用轨道区段集合和物理占用轨道区段集合。
8.如权利要求7所述的基于故障树分析的安全联锁系统开发方法,其特征在于,步骤S2中基于进路就绪时扳动道岔的功能需求,对系统模型进行第四次精化;
第四次精化后的系统模型增加了常量blpt、rht、lft;所述常量blpt表示带有道岔的轨道区段集合;所述常量rht和常量lft分别表示道岔的定位和反位;
第四次精化后的系统模型包含静态属性:进路上的道岔处于定位或反位;道岔不能位于进路的第一个轨道区段或最后一个轨道区段。
9.如权利要求8所述的基于故障树分析的安全联锁系统开发方法,其特征在于,所述危害事故包含:道岔被占用时进行了转换操作;所述导致危害事故发生的原因包含:道岔的集合属于被列车占用的区段集合;控制器向道岔发出转换命令时,所有道岔的集合属于锁闭道岔集合;
所述安全控制需求包含:在联锁系统开放绿灯信号之前,保证进路中所有道岔的位置正确;基于安全控制需求对系统模型进行第五次精化;
第五次精化后的系统模型新增了不变式,用于证明系统模型满足道岔位置正确的安全需求,新增的不变式包含:所有道岔的集合包含锁闭道岔集合;被锁闭道岔的集合包含了所有道岔的集合与被列车占用的轨道区段的集合的合集。
10.如权利要求1所述的基于故障树分析的安全联锁系统开发方法,其特征在于,Event-B形式化语言表述的故障树中,将导致危害发生的原因用Event-B形式化语言表示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211347895.7A CN115544463A (zh) | 2022-10-31 | 2022-10-31 | 一种基于故障树分析的安全联锁系统开发方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211347895.7A CN115544463A (zh) | 2022-10-31 | 2022-10-31 | 一种基于故障树分析的安全联锁系统开发方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115544463A true CN115544463A (zh) | 2022-12-30 |
Family
ID=84717971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211347895.7A Pending CN115544463A (zh) | 2022-10-31 | 2022-10-31 | 一种基于故障树分析的安全联锁系统开发方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115544463A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116187104A (zh) * | 2023-04-27 | 2023-05-30 | 华侨大学 | 一种轨道交通联锁系统安全分析开发方法及装置 |
CN118426449A (zh) * | 2024-07-03 | 2024-08-02 | 华侨大学 | 安全目标导向的cbtc系统精化开发和确认方法及装置 |
CN118444667A (zh) * | 2024-07-08 | 2024-08-06 | 华侨大学 | 一种轨道交通联锁系统故障注入测试方法 |
-
2022
- 2022-10-31 CN CN202211347895.7A patent/CN115544463A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116187104A (zh) * | 2023-04-27 | 2023-05-30 | 华侨大学 | 一种轨道交通联锁系统安全分析开发方法及装置 |
CN116187104B (zh) * | 2023-04-27 | 2023-08-01 | 华侨大学 | 一种轨道交通联锁系统安全分析开发方法及装置 |
CN118426449A (zh) * | 2024-07-03 | 2024-08-02 | 华侨大学 | 安全目标导向的cbtc系统精化开发和确认方法及装置 |
CN118426449B (zh) * | 2024-07-03 | 2024-09-06 | 华侨大学 | 安全目标导向的cbtc系统精化开发和确认方法及装置 |
CN118444667A (zh) * | 2024-07-08 | 2024-08-06 | 华侨大学 | 一种轨道交通联锁系统故障注入测试方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115544463A (zh) | 一种基于故障树分析的安全联锁系统开发方法 | |
Rizaldi et al. | Formalising traffic rules for accountability of autonomous vehicles | |
Rizaldi et al. | Formalising and monitoring traffic rules for autonomous vehicles in Isabelle/HOL | |
Ortmeier et al. | Formal fault tree analysis-practical experiences | |
CN113031934B (zh) | 一种用于形式化验证的联锁数据安全转换方法及翻译器 | |
CN117670630B (zh) | 一种高速铁路联锁系统安全分析方法、系统、设备及介质 | |
AU2018202873B2 (en) | Method for checking safety requirements of SSI-based data used in an interlocking control system | |
Vu | Formal development and verification of railway control systems-in the context of ERTMS/ETCS level 2 | |
Sun | Model based system engineering for safety of railway critical systems | |
CN115729210A (zh) | 基于通信的轨道交通列车控制系统危险分析方法及设备 | |
Vanit-Anunchai | Modelling and simulating a Thai railway signalling system using Coloured Petri Nets | |
Mammar et al. | Modeling of a speed control system using event-B | |
Tombs et al. | Signalling control table generation and verification | |
Khan et al. | On the real time modeling of interlocking system of passenger lines of Rawalpindi Cantt train station | |
JP3818104B2 (ja) | 連動情報抽出方法 | |
Yan et al. | Autonomous train operational safety assurance by accidental scenarios searching | |
Luteberget | Automated reasoning for planning railway infrastructure | |
Abrial | Train systems | |
Chen et al. | Using safety requirement patterns to elicit requirements for railway interlocking systems | |
Xu et al. | Safety analysis of communication-based train control system by STPA and colored Petri net | |
CN113486628A (zh) | 一种交通规则到机器语言的转换方法及系统 | |
Wang et al. | Route safety verification of train control system by FTA modeling in SCADE | |
Collart-Dutilleul et al. | A railway norms application for small traffic railway lines autonomous vehicle | |
Gonschorek et al. | Bringing formal methods on the rail: On automatic verifying railroad interlockings from railml models | |
Tarasyuk et al. | Quantitative verification of system safety in Event-B |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |