0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

形式化方法的工业应用:轨交领域

上海控安 来源:上海控安 作者:上海控安 2023-08-08 15:20 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

作者 |王依玲上海控安可信软件创新研究院系统建模组

版块 |鉴源论坛 · 观模

社群 |添加微信号TICPShanghai”加入“上海控安51fusa安全社区”

引言:前面几期文章介绍了形式化方法的发展历史和具体技术,并从整体的角度介绍了形式化方法的工程化。本文将聚焦于轨交领域,从领域专用的需求撰写与分析工具Prema入手,介绍形式化方法在工业中的实际应用。

01

背 景

随着城市日新月异的发展,轨道交通的建设与分布越来越成为城市交通便捷、经济发达的重要标志。“十三五”时期,城市轨道交通运营里程已达 6600 公里,预计到 2025 年,超大城市的轨道站点 800 米半径覆盖通勤比例将不小于 30%。轨道交通的控制软件决定了系统运行的安全性,如果控制软件没有按照预期方式运行,则存在引发财产损失和人员伤亡的可能性。因此轨道交通控制软件的质量安全攸关,国家也对此出台了严格的安全标准。

在轨道交通领域中,列车自动控制系统 (Automatic Train Control,ATC)系统包括三部分,ATP(Automatic Train Protection,列车自动防护系统),ATO(Automatic Train Operation, 列车自动运行系统),和 ATS(Automatic Train Supervision,列车自动监控系统),它通过自动地防止列车司机的失误来提供高水平的列车安全。如图1所示,ATO 是控制列车自动运行的系统,由车载设备和地面设备组成;ATP是为了确保列车一旦超过规定速度,立即施行制动的系统,它也是由车载设备和地面设备所组成;ATS 系统是为了完成对列车的自动监控的系统,它由控制中心、车站、车场以及车载设备组成。三者的关系是,ATO 系统在 ATP 系统的保护下,根据ATS 的指令实现列车运行的自动驾驶、速度的自动调整和列车车门的自动控制。

wKgaomTR7MyAAUYSAAA_r-8O6b0762.jpg

图1列车自动控制系统结构

需求分析是软件设计的基础,是软件开发活动中最为关键最早开始的环节。需求文档中包含着列车控制系统的功能描述,可以通过对列车控制系统需求进行分析,发现需求中系统的功能描述错误。经过长期的研究和实践,学术界和工业界都意识到从需求阶段开始对列车控制系统的功能需求进行检查的必要性。然而目前的工业界中,人工检查自然语言描述的列车控制系统需求不但低效,而且无法确保功能需求的正确性。

02

形式化建模方法概述

采用自然语言进行需求描述会存在二义性,所以某些对撰写者来说清晰无误的表述,完全可能被其他人理解成其他意思。导致不同的开发者对相同的需求和设计产生模棱两可的理解,从而导致开发效率的降低。为了避免这种情况的发生,我们采用标准的形式来描述需求和设计。这种标准形式一般以数学语言为基础。这种标准化的描述规范就构成了形式化方法的基础。

形式化方法是建立在数学基础上的针对数字化系统进行规格说明撰写、软件开发、软件验证的技术。它的数学基础包括形式逻辑,离散数学和机器可识别语言。形式化模型是一种无二义性的用数学语法和语义刻画的模型,是一种对软件诸多方面的抽象表达形式,用于后续的分析、仿真和代码生成(在有些条件下,直接从模型生成代码可能无法实现)。应用形式化方法的基础是对即将开发的软件建立一个形式化模型。

形式化方法包含两项主要分支,形式化规格说明技术和形式化验证技术,而形式化验证技术又分为定理证明和模型检查两个分支,如图2所示。

wKgZomTR7M2AUY1rAADRCmD4U8I807.jpg

图2 形式方法的构成

在学术界和工业界,学者和工程人员为了保证列车安全运行,主要有从以下方面对轨道交通控制系统的研究:形式化需求描述、建立模型和验证、对系统进行仿真。这三者并不是孤立的,经常结合在一起研究,如利用形式化方法对系统的需求进行描述,然后建立模型、分析验证。

为了实现采用形式化方法保障轨道交通控制系统安全的目的,我们提出了一种针对轨道交通控制系统的需求建模形式化工程方法,并开发了一个集需求撰写及分析功能于一体的工具Prema(Precise Requirements Editing, Modeling and Analysis 精确需求撰写,建模与分析)用于辅助形式化工程方法的应用。

03

轨交领域解决方案Prema

Prema对形式化技术的应用主要包含两个方面,形式化需求规格说明和模型检查。为了可以对需求进行形式化描述,我们提出了适配轨道交通领域的CASDL语言。对形式化语言描述的系统需求进行需求建模后,可以在需求模型中验证布尔表达式描述的约束性质是否成立。

Prema工具界面运行主界面图如下图3所示,图中主要分为左边部分的编辑栏和右边部分的展示栏。用户可以在左边撰写需求,同时在右边区域实时显示最终生成的文档样式,在编辑区域上方还有一些快捷工具以供用户撰写需求。

wKgaomTR7M2AGoPuAAFinnDPKP8532.jpg

图3 Prema工具界面

3.1 形式化需求规格说明

用户在左侧编辑栏用CASDL语言撰写形式化需求,以下对CASDL语言规范进行简单介绍。

由于轨道交通领域的控制系统通常周期性运行,CASDL中的cycle有着用于表示目前系统的运行进行到了哪一个周期的特殊含义,其语法可以表示为如下形式:

● md :: = (cycle, Block, DefBlock, DataDictionary)

● Block :: = (identifier, Precondition, initial, State, Transition)

● DefBlock :: = (name, identifier, Tasks)

● Tasks :: = CFG

● Transition ::= (Source, Target, Condition, Action)

● DataDictionary ::= (V)

CASDL包含4个部分。Block部分描述的是系统状态迁移情况,在Block里由唯一的identifier来对它进行标识,Precondition用于判断系统状态迁移的条件是否满足,initial用于表示系统状态迁移前的值,State中存储了所有发生了状态值改变的变量值,Transaction描述了状态转换的具体过程,描述该过程的结构也在上述中被表述出来。其中,Source和Target分别代表状态改变前的值和状态改变后的值,Condition里记录的是发生状态迁移的需要满足的条件集合,最后一项Action则记录了该状态转换过程如何发生。

DefBlock描述的是计算模块,它包含了模块名称name,唯一的标识identifier,以及由控制流组成的计算任务Tasks。

Dictionary里记录了在需求文档建模过程中出现的变量。

如图4所示为用CASDL书写的示例,该例子中红色部分表示的是展示状态迁移情况的Block部分,它没有返回值,只更改状态变量的取值,使系统所处的状态发生改变,即状态迁移。其中State后跟随的(k-1)表示第k-1个周期。黄色部分展示的是描述计算任务的defBlock部分。

wKgZomTR7M2APHNsAADQZty3AAk667.jpg

图4 Block与DefBlock示例

CASDL同样定义了一些表达式用于描述DefBlock中面向计算的任务的计算过程,表达式的语法如下所示:

● SExpr :: = Const | Var | f(n)(SExpr)

●BTerm :: = True | False | p(n)(SExpr)

● IExpr :: = (after | duration)(BTerm,SExpr)

●BExpr :: = BTerm | ¬BExpr | BExpr∨BExpr | BExpr∧BExpr

其中,语句表达式由一个常量,一个变量或者多个语句表达式组成,布尔变量的取值为True或False或者从状态表达式的值推导而来。间隔表达式主要用于描述与时间有关的需求片段,比如在某个时间段或者在某个时间段后值为布尔值或者是某个语句表达式的计算值。而布尔表达式则由布尔值,布尔值的非值,或值或者与值组成。

同时CASDL也定义了几种语句结构:

● stmts :: = pStmt | cStmt

●pStmt :: = aStmt | skip

●aStmt :: = x := SExpr

●cStmt :: = stmts | if BExpr then stmts else stmts

语句集合包含复合语句或者是单独的语句,其中pStmt由赋值语句或者skip语句组成,赋值语句可以表示为一个变量被赋予了一个表达式的值,而复合语句由语句集合构成或者由一个选择语句结构构成。

总体来说,CASDL与工程师的使用习惯相符合,学习和理解成本很低, 这种类python的语言容易令人接受,不过其语义与python仍有不同,如k在CASDL中是一个特殊的字母,它代表了系统运行的周期。

3.2 模型检查

在需求撰写完成后,Prema工具提供静态分析、状态机模拟执行、需求性质验证等功能用于验证撰写需求的正确性。需求性质验证即模型检查。

需求性质验证是在需求检查无语法错误后,对需求模型进行诸如不变式或者可达性之类的验证。其主要目的在于分析有影响关系的某些变量之间发生了变化,是否一定会影响到相关变量的变化,这对于理解和分析需求逻辑关系有着至关重要的作用。性质验证的流程图如图5所示:

wKgaomTR7M6AUwzoAADFGdXUQgA894.jpg

图5 性质验证流程图

Prema性质验证界面如图6所示,用户可选择之前使用过的配置选项,也可以重新选择。在该验证界面中,用户选择需要验证哪些需求条目,选择完毕后,单击Go按钮会生成完整的验证界面。

wKgZomTR7M6AGNUtAAGz1FA4kgI370.jpg

图6 性质验证界面示意图

工具会根据用户所选择的需求条目生成变量关系图,提醒需求工程师该需求条目所描述的内容,同时也避免错误地勾选了需求条目。在确定选取了正确的需求条目后,在性质撰写区撰写所需要验证的性质,目前验证的性质仅支持布尔表达式。填写完初始状态(可以不填)和性质后,可以点击check按钮来验证所填写的性质是否是布尔表达式。

用户选取了所要验证的需求条目和性质,单击Verify按钮后,界面展示验证结果。需求工程师可根据反馈的信息查看需求是否满足了性质,如果没有满足性质,则会给出不满足该性质时的反例。

通过使用Prema工具,能够有效消除需求语句的模糊性和二义性,并保证需求的正确性。

04

总 结

近年来通过不断地努力,形式化方法不仅仅在学术界取得很大的发展,同样在工业界也已得到大量的应用。形式化方法首先需要定义领域相关的需求描述语言,这种语言可以完全覆盖该领域中的所有需求特征。其次通过建立的描述语言来刻画和描述需求模型,并提供与之配套的算法来对需求模型进行分析与验证。由于轨道交通领域对于控制系统有着严格要求,这为形式化方法的应用提供了前提。在未来,形式化方法将更好地与工业实践结合,为工业安全保驾护航。

主要参考文献:

[1] 光明网. 《“十四五”全国城市基础设施建设规划》印发[EB/OL].(2022-08-03)[2022-8-16].

[2] 王秀超.列车控制系统需求文档的模型抽取与分析[D].贵阳:贵州大学,2017

[3] 韦群,王钰.软件缺陷及其对软件可靠性的影响分析[J].计算机应用与软件.2011, 28(1):145-149.

[4] 包丹珠.轨道交通系统需求分析与一致性测试[D].上海:华东师范大学, 2016

[5] 刘阳.面向轨道交通控制系统的需求模型分析与验证[D].上海:华东师范大学,2017

[6] 郑寒月.面向轨道交通控制领域的基于需求的测试用例自动生成方法研究[D].上海:华东师范大学,2021

[7] Huang Y , Feng J , Zheng H ,et al.Prema: A Tool for Precise Requirements Editing, Modeling and Analysis[J]. 2019.DOI:10.1109/ASE.2019.00128.

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    智慧,可靠致远:迈威通信亮相智慧盛会

    于连,更在于通”为主题参展,系统展示了面向智慧场景的工业互联网解决方案,聚焦高可靠、高安全、高实时的通信能力,助力行业构建自主可控的数字底座。
    的头像 发表于 04-13 19:22 100次阅读
    智慧<b class='flag-5'>轨</b><b class='flag-5'>交</b>,可靠致远:迈威通信亮相智慧<b class='flag-5'>轨</b><b class='flag-5'>交</b>盛会

    单槽地 vs 高精度地:差的不只是精度

    不同型号T型槽地的应用场景差异,核心取决于槽的数量、承载等级和精度要求。下面是各型号的具体应用领域: 单槽地——通用装配与轻型作业 单槽地只有一条T型槽,结构简洁、成本较低,适用
    发表于 04-04 11:30

    Mini-ITX飞腾工控主板适配复杂、政务、金融场景的进阶需求

    随着国产芯片、固件、软件的不断成熟,、政务、金融三大核心领域对工控硬件的要求愈发严苛:既要兼顾空间紧凑性,又要满足高算力、高安全、高稳定的进阶需求,还要适配多设备互联与恶劣环境运行。
    的头像 发表于 03-28 10:02 431次阅读

    隧道设备协同:PROFINET转ETHERNET IP网关赋能变频器智能运行

    隧道设备协同:PROFINET转ETHERNET IP网关赋能变频器智能运行 在地铁隧道通风、排水设备控制场景中,西门子PLC采用PROFINET协议,罗克韦尔变频器搭载ETHERNET IP
    的头像 发表于 03-27 14:28 121次阅读
    <b class='flag-5'>轨</b><b class='flag-5'>交</b>隧道设备协同:PROFINET转ETHERNET IP网关赋能变频器智能运行

    铸铁地T型槽磨得不像样?地变形?简单几步教你轻松搞定!

    针对铸铁地或T型槽磨损变形这一非常典型且棘手的问题,处理方案比普通平台工作面修复更复杂。以下是系统的处理流程、方法和决策建议。核心处理原则修复的目标不仅是恢复尺寸和形状,更重要的是恢复其作为基准
    发表于 01-22 11:55

    智慧发展的核心硬件支撑——国产交工控机

    随着科技飞速迭代,信息、智能技术已深度渗透至各行业领域,在轨道交通行业尤为显著。以物联网、云计算、人工智能等前沿技术为依托,轨道交通领域正加速构建全方位、智能
    的头像 发表于 01-21 14:18 210次阅读

    华龙工鸿工业操作系统驱动多领域智能升级实践

    操作系统正成为破局关键。基于开源鸿蒙打造的华龙工鸿工业操作系统应运而生,旨在为工业制造领域提供自主创新、智慧协同的数字底座。其成功推出与应用落地,标志着在攻克
    的头像 发表于 01-16 13:57 573次阅读

    宽电源范围输出仪表放大器AD8426:设计与应用全解析

    宽电源范围输出仪表放大器AD8426:设计与应用全解析 在电子设计领域,仪表放大器是一种至关重要的器件,广泛应用于工业、医疗等多个领域
    的头像 发表于 01-15 17:25 582次阅读

    Caterpillar借助NVIDIA技术推动重工业领域智能升级

    在 CES 上,Caterpillar 展示了其如何整合 NVIDIA Jetson Thor、语音模型等多项 NVIDIA 技术,为重工业领域带来全新的智能体验。
    的头像 发表于 01-09 10:37 616次阅读

    贸泽电子与STMicroelectronics推出全新电子书 分享工业自动领域的新知和观点

    自动未来),深入探讨自动、传感和智能系统领域的技术突破如何解决当今制造业面临的挑战。 智能工厂正变得更快、更安全、更具适应性。工业4.0和工业
    的头像 发表于 01-06 17:46 1910次阅读

    引领高压新风向!思瑞浦推出零越失真TPA277x系列运算放大器

    聚焦模拟和数模混合聚焦高性能模拟与数模混合产品的供应商思瑞浦3PEAK(股票代码:688536)推出TPA277x系列高压输入输出运算放大器。与传统OPA双对管结构不同,其采用电荷泵技术
    的头像 发表于 12-26 11:37 809次阅读
    引领高压<b class='flag-5'>轨</b>到<b class='flag-5'>轨</b>新风向!思瑞浦推出零<b class='flag-5'>交</b>越失真TPA277x系列运算放大器

    图为科技携产品矩阵与全场景感知方案亮相上海

    !   本次展会,图为科技将首次集中展示专为轨道交通打造的高性能边缘计算机系列。该系列支持超高算力+多传感器数据实时融合+AI模型本地推理,搭载宽温防护技术,采用工业级设计,完美适配列车高速运行、隧道复杂电磁等严苛场景,为
    的头像 发表于 12-15 14:35 227次阅读

    森国科霍尔传感器的核心优势

    霍尔传感器(Rail-to-Rail Hall Sensor)相较于非霍尔传感器,在输出动态范围、信号精度、抗干扰能力及应用适应性等核心性能上具有显著优势,尤其适用于
    的头像 发表于 09-15 16:26 1583次阅读

    UPS电源—工业自动,UPS电源优化电力的秘诀

    工业自动领域,电力质量的稳定性对于设备的正常运行和生产效率至关重要。UPS电源(不间断电源)作为电力保障的关键设备,通过一系列技术手段,能够有效地优化工业自动
    的头像 发表于 08-04 22:14 880次阅读
    UPS电源—<b class='flag-5'>工业</b>自动<b class='flag-5'>化</b>,UPS电源优化电力的秘诀

    国产工控主板:工业领域的核心砥柱

    在科技飞速发展的当下,工业领域正经历着深刻的变革。从智能制造的兴起,到工业自动的全面推进,每一次进步都离不开核心技术的支撑。而在这其中,国产工控主板作为
    的头像 发表于 07-22 09:18 670次阅读