列车运行控制系统实验二实验报告Word下载.docx
《列车运行控制系统实验二实验报告Word下载.docx》由会员分享,可在线阅读,更多相关《列车运行控制系统实验二实验报告Word下载.docx(16页珍藏版)》请在冰豆网上搜索。
1.2实验具体目标
1.2.1正线接车
排列正线接车进路,终点为出站信号机,覆盖正线股道,列车即将进入正线,停在出站信号机之前。
其轨道电路码序及模式曲线如下图:
1.2.218号以下道岔接车
排列侧线接车进路,且接车进路上最小道岔为18号以下道岔时,覆盖侧线股道,列车即将进入侧线,终点为出站信号机。
当列车行至接近区段时,显示UU码,列车通过码序得知即将进入侧线,并且道岔要求限速为40km/h,以此为目标速度控制列车运行,并且在通过道岔后,根据实际进路长度计算至进路终点的限速曲线,控制列车运行。
其轨道电路码序及模式曲线如图:
1.2.318号以上道岔接车
排列侧线接车进路,且接车进路上最小道岔为18号的大号码道岔时,与侧线18号以下道岔接车类似,区别为:
接近区段发UUS码,道岔要求限速为80km/h。
其轨道电路码序及模式运行曲线如图:
1.2.4侧线引导接车
排列侧线引导接车进路,接近区段发HB码,车载设备进入引导模式,此时限速40km/h,因此车载设备需将允许速度立即设置为模式限速,且维持到通过咽喉区的无码,列车进入股道后,再根据行车许可终点计算模式曲线,控制列车运行。
2实验过程
2.1原理分析
2.1.1CTCS-2级列控系统行车许可生成原理
CTCS-2级列控系统是基于轨道电路和应答器传输列车行车许可信息,采用目标距离模式曲线监控列车安全运行的列控系统。
CTCS-2级列控系统地面设备中,轨道电路通过发送18个低频信息,连续向车载设备发送列车前方空闲闭塞分区数量信息以及列车接近的车站信号机开放经道岔侧向位置进路信息。
应答器进行闭塞分区长度信息和限速信息的传输。
当列控车载设备接收到地面设备信息后,对列车许可相关信息综合使用,生成目标—距离模式曲线控制所需要的信息。
2.1.2车载设备超速防护功能工作原理
车载设备基本工作流程如下图所示:
其中,超速防护功能部分可进行具体展开,基本工作流程如下:
2.2仿真环境
本实验的仿真在excel中完成,为了简化起见,将列车运行的线路设定为:
该线路共由11个闭塞分区构成,线路上列车只会经过两个应答器组,固定应答器组BG1和进站口的有源应答器组BG2,当列车经过应答器组的时候,会收到它们提供的信息:
(BG1:
提供固定的各闭塞分区长度和线路限速;
BG2:
提供列车进路长度和进路处的线路限速)
具体仿真环境结构如下图所示:
2.3程序编写
2.3.1程序分析
若要实现列控车载设备的超速防护功能,控制程序主要分为以下几部分:
测速测距;
读取列车当前所在区段的轨道电路码信息;
读取应答器信息,获得轨道区段长度信息;
生成行车许可,并判断是否需要制动或缓解制动。
其中,前三部分已由现有的仿真环境完成,实验需完成最后生成行车许可部分的程序,即ATPprotection()。
根据车载超速防护功能的原理,可得实现需完成的程序ATPprotection()部分需要各模块提供的闭塞分区长度、线路限速、轨道电路码、当前速度和当前位置的信息输入等信息。
2.3.2程序框图
2.3.3程序代码
(注:
由于源代码较长,本部分只对部分代码进行注释说明,源代码请查看附录。
)
Fori=0To10
s=s+Blocks(i)
Ifs>
CurrentPosThen
Forj=0Toi
L=L+Blocks(j)
Next
ExitFor
EndIf
Next
//L为走行距离
IfTrackSignal="
L5"
Then//L5表示收到的码序,其他程序模块类似
Fork=(i+1)To(i+7)
TargetDistance=TargetDistance+Blocks(k)
TargetDistance=TargetDistance+L–CurrentPos//得到目标距离
TargetSpeed=0//得到目标速度
TrainAllowSpeed=ff.CalcLimit(TargetDistance,TargetSpeed)//得到曲线限速
IfCurrentPos<
=LineAllowSpeed(1,0)Then
IfTrainAllowSpeed>
LineAllowSpeed(0,1)Then
TrainAllowSpeed=LineAllowSpeed(0,1)
ElseIfCurrentPos>
=LineAllowSpeed(2,0)Then
LineAllowSpeed(2,1)Then
TrainAllowSpeed=LineAllowSpeed(2,1)
Else
LineAllowSpeed(1,1)Then
TrainAllowSpeed=LineAllowSpeed(1,1)
EndIf
//通过比较得到最终限速
IfCurrentSpeed>
TrainAllowSpeedThen
BrakeFlag=True
BrakeFlag=False//判断是否进行制动
p=p+1
student.Cells(p,1)=CurrentPos//记录数据
3实验结果分析
实验结果记录表
测试案例
正线接车停车
测试步骤
a.设置初速度200km/h,加速运行;
b.选择正线接车进路类型,直到列车停车;
c.观察所计算的允许速度曲线是否正确;
d.查看记录文件。
测试结果
正线接车
测试结果截图
18号道岔以下接车停车功能
b.选择18号道岔一下侧线接车进路类型,直到列车停车;
18号道岔以下接车
18号道岔以上接车停车功能
b.选择18号道岔以上侧线接车进路类型,直到列车停车;
侧线引导接车停车功能
b.选择侧线引导接车进路类型,直到列车停车;
调试记录汇总表
问题描述
原因分析
解决方法
开始运行后没有图像
实验过程操作错误
本实验中为“自动解析”,不是“人工解析”
没有生成记录数据
程序中未对相应记录数据的变量进行定义
定义变量
4实验总结
本次实验过程中,课堂时间充裕,因此对于系统和程序都有了较为深入的了解。
在解决问题,确定整体思路过程中,不仅深入了解了CTCS-2级系统的行车许可原理,也对不同路线接车的码序,不同码序对应的速度更为熟悉。
同时,在编写程序的过程中,我和队友也体会到,问题的解决不仅要有正确清晰的思路,还要注意完善细节,尤其对于程序来说,任何细节的错误都可能导致结果的错误。
此外,本次实验过程中我们也意识到,扎实的理论基础是完成实验的必备条件。
在开展实验前,应先深入完整的学习相关的理论基础知识,就本次实验而言,应先弄清楚实验指导书中的内容,在进行实验,可以达到事半功倍的效果。
附ATPprotecting()源代码
DimpAsInteger
PublicFunctionATPProtection(Blocks()AsSingle,LineAllowSpeed()AsSingle,TrackSignalAsString,CurrentSpeedAsSingle,CurrentPosAsSingle)
'
[codeherebegin]
DimiAsInteger
DimkAsInteger
DimLAsSingle
DimsAsSingle
DimjAsInteger
DimTargetDistanceAsSingle
DimTargetSpeedAsSingle
s=0
L=0
TargetDistance=0
Then
TargetDistance=TargetDistance+L-CurrentPos
TargetSpeed=0
TrainAllowSpeed=ff.CalcLimit(TargetDistance,TargetSpeed)
ElseIfTrackSignal="
L4"
Fork=(i+1)To(i+6)
L3"
Fork=(i+1)To(i+5)
L2"
Fork=(i+1)To(i+4)
L"
Fork=(i+1)To(i+3)
LU"
Fork=(i+1)To(i+2)
U"
k=i+1
TargetDistance=TargetDistance+L-CurrentPos
TargetSpeed=0
TrainAllowSpeed=ff.CalcLimit(TargetDistance,TargetSpeed)
U2"
TargetDistance=L+Blocks(9)-CurrentPos
TargetSpeed=45
UU"
TargetDistance=L-CurrentPos
U2S"
TargetSpeed=80
UUS"
HB"
TrainAllowSpeed=40
B"
HU"
BrakeFlag=False
student.Cells(p,1)=CurrentPos
student.Cells(p,2)=CurrentSpeed
student.Cells(p,3)=TrainAllowSpeed
student.Cells(p,4)=TrackSignal
student.Cells(p,5)=Speed_Limit_Static
student.Cells(p,6)=Speed_Limit_Curve
student.Cells(p,7)=BrakeFlag
[codeend]
EndFunction