毕业论文
计算机论文
经济论文
生物论文
数学论文
物理论文
机械论文
新闻传播论文
音乐舞蹈论文
法学论文
文学论文
材料科学
英语论文
日语论文
化学论文
自动化
管理论文
艺术论文
会计论文
土木工程
电子通信
食品科学
教学论文
医学论文
体育论文
论文下载
研究现状
任务书
开题报告
外文文献翻译
文献综述
范文
车站联锁系统UPPAAL建模+时间自动机模型进行模拟仿真(20)
图4.34 各模块间的消息处理流程图
4.6.2 消息处理模型
图4.35 联锁消息处理的时间自动机模型
联锁的进路控制流程也是和其他模块进行消息交流的过程。当联锁与其他模块的消息传递没有在规定时间内收到回复,则要进行相应的故障处理。
通常的超时处理做法是,发送端在发送消息a的同时会启动计时器。接收方收到消息a后,向发送方发送一反馈消息b。如果发送方在规定的时间内没有收到对方的反馈消息b,则认为出现通信故障。图4.35是联锁消息处理的时间自动机模型。
表4.7 消息处理模型主要位置、通道说明表
位置集合 通道集合
主要位置 说明 通道 说明
Idle 初始位置 RFC 请求建立链接
waitACK 等待ACK ACK 建立链接应答
StartComu 开始正常通信 App_data 发送应用数据
settimer 设置定时器 SetTimer 时钟启动命令
WaitData 等待接收数据 timeout 超时报警
AppProc 应用处理阶段 Reset 时钟复位
Send 发送数据 NO_DATA 没有应用数据回复
noReplydata 没有得到回复消息 DATA_Reply 有应用数据恢复
check 检查是否超过最大周期 error 超时错误处理
Resend 应用数据重发
Error_proc 错误处理状态
当联锁发出RFC请求建链,接收方返回ACK后表示建立通信的连接。随后联锁发送应用数据并同时启动计时器。这时对于消息接收方的处理有两种情况:一种是在规定的时间内发送反馈消息,一种是超时没有回应,所以我建立了两个子模块来模拟接收方的消息处理。如图4.36所示。
图4.36 消息回复和未回复的两种时间自动机模型
右图表示在一个收到反馈消息,通过DATA_Reply传递给联锁:左图表示没有收到反馈消息,通过通道NO_DATA传递给联锁。
在规定时间内收到消息后,联锁还要通过变量haveAffirm判断这些消息中有没有还未确认应答的消息,就是发送方可以发送新数据还是需要重新发送一遍刚才的消息,如果有则重发消息(Resendmessg());如果没有则发送新的消息(newMessg())。如果超时没有收到对方的反馈消息,变量MAX_Time用来计算没有收到记的次数,连续5次没有收到数据,则表示通信故障,进入故障处理状态,不能办理进路。消息是否超时,主要靠时钟模块来控制。其时间自动机模型如图4.37所示。
图4.37 消息处理的定时器模块
这里我们需要一个启动模块来模拟当联锁发出请求RFC后,接收方收到后返回ACK,这里我们做了一个简单的接收模块,如图4.38所示。
图4.38 消息处理的接收方模块
这里消息处理超时后进入故障状态,为了不让进入故障状态后又被重新启动,这里添加了一个故障修理模块,即进入故障后就认为其在修理中,令Repair置1,在启动时先要判断Repair是否为0,如果为1则说明在修理,则无法启动。模块如图4.39所示。
图4.39 消息处理的故障修理模块
共22页:
上一页
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
下一页
上一篇:
基于EMD和分形理论的美元与国际油价的相关分析研究
下一篇:
投资者情绪与股票收益率的关系研究
php+mysql校友信息管理系统设计
带有强占优先权的受控排队系统研究
基于灰色系统模型的周口市人口问题研究
某医院门诊系统患者分流模型研究
MEMS/NEMS双臂梁型微/纳机电系统Pull-in失稳分析
可微性在近似计算中的应用
孝陵卫苏果超市收费服务台排队系统统计分析
中国学术生态细节考察《...
医院财务风险因素分析及管理措施【2367字】
10万元能开儿童乐园吗,我...
志愿者活动的调查问卷表
承德市事业单位档案管理...
神经外科重症监护病房患...
AT89C52单片机的超声波测距...
公寓空调设计任务书
国内外图像分割技术研究现状
C#学校科研管理系统的设计