应答器报文组帧实验报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1列车运行控制系统实验报告应答器报文组帧一、实验目的1.理解应答器报文结构和填写方式。2.完成应答器报文的解码,并理解应答器报文的应用方式。3.理解ETCS语言的应用。二、编写程序报文解析的流程框图三、实验程序DimiAsSingleDimjAsSingleDimsAsLongDimkAsLongDimNID_SIGNAL1(100)AsSingle2DimL_SECTION1(100)AsSingleDimNID_SIGNALAsSingleDimL_SECTIONAsSingleDimD_STATICAsLongDimV_STATICAsLongDimN_ITERAsLongDimQ_SCALEAsLongDimNID_PACKETAsLongDimL_PACKETAsLong'定义变量L_PACKET=ff.GetValueOfVar(13,60,Telegram)'读取L_PACKET中的数据NID_PACKET=ff.GetValueOfVar(8,50,Telegram)'读取NID_PACKET中的数据IfNID_PACKET=27Then'判断是否读取线路信息包ETCS-27中的数据sLineAllowSpeed(0,0)=0D_STATIC=ff.GetValueOfVar(15,75,Telegram)'读取应答器中速度信息起始点距离V_STATIC=ff.GetValueOfVar(7,90,Telegram)'读取应答器中最大允许列车速度N_ITER=ff.GetValueOfVar(5,103,Telegram)'速度变化点数量IfN_ITER=1Then'变化点数量为1时D_STATIC=ff.GetValueOfVar(15,108,Telegram)sLineAllowSpeed(0,1)=V_STATIC*5sLineAllowSpeed(1,0)=D_STATICEndIfIfN_ITER=2Then'变化点数量为2时sLineAllowSpeed(0,1)=V_STATIC*5D_STATIC=ff.GetValueOfVar(15,108,Telegram)sLineAllowSpeed(1,0)=D_STATICV_STATIC=ff.GetValueOfVar(7,123,Telegram)sLineAllowSpeed(1,1)=V_STATIC*5EndIfEndIfNID_PACKET=ff.GetValueOfVar(8,50+L_PACKET,Telegram)IfNID_PACKET=44Then'判断是否读取线路信息包ETCS-44中的数据j=0Q_SCALE=ff.GetValueOfVar(2,97+L_PACKET,Telegram)'判断分辨率IfQ_SCALE=0Thenk=0.13EndIfIfQ_SCALE=1Thenk=1EndIfIfQ_SCALE=2Thenk=10EndIfNID_SIGNAL=ff.GetValueOfVar(4,114+L_PACKET,Telegram)'读取NID_SIGNAL数据L_SECTION=ff.GetValueOfVar(15,123+L_PACKET,Telegram)s=L_SECTIONN_ITER=ff.GetValueOfVar(5,138+L_PACKET,Telegram)Fori=1ToN_ITERNID_SIGNAL1(i)=ff.GetValueOfVar(4,143+(i-1)*24+L_PACKET,Telegram)L_SECTION1(i)=ff.GetValueOfVar(15,152+(i-1)*24+L_PACKET,Telegram)s=s+L_SECTION1(i)IfNID_SIGNAL1(i)=0Then'判断是否有信号机sBlocks(j)=s*k'有信号机则确定闭塞区间长度s=0'中间变量置零j=j+1EndIfNextEndIf四、结果验证测试案例测试实验3程序在人工解码下的正线接车功能测试步骤1、设置初速度200km/h,加速运行;2、选择正线接车进路类型,直到列车停车;3、观察所计算的允许速度曲线是否正确;4、查看记录文件;测试结果列车通过信号机在正线停车测试结果截图4测试案例测试实验3程序在人工解码下的18号道岔以下侧线接车功能测试步骤1、设置初速度200km/h,加速运行;2、选择18号码道岔以下侧线接车进路类型,直到列车停车;3、观察所计算的允许速度曲线是否正确;4、查看记录文件;测试结果列车进入18号以下道岔到侧线停车测试结果截图测试案例测试实验3程序在人工解码下的18号道岔以上侧线接车功能测试步骤1、设置初速度200km/h,加速运行;2、选择18号码道岔以上侧线接车进路类型,直到列车停车;3、观察所计算的允许速度曲线是否正确;4、查看记录文件;测试结果列车进入18号以上道岔到侧线停车测试结果截图5测试案例测试实验3程序在人工解码下的侧线引导接车功能测试步骤1、设置初速度200km/h,加速运行;2、选择侧线引导接车进路类型,直到列车停车;3、观察所计算的允许速度曲线是否正确;4、查看记录文件;测试结果列车通过进站信号机引导入侧线接车测试结果截图五、实验中所遇到的问题问题现象描述问题原因解决方法SBlocks()中的数据读取错误程序中对每次对闭塞区间SBlocks(i)赋完值之后没有对s置零,所以导致了之后的闭塞区间赋值错误在对SBlocks(i)的for循环中对SBlocks(i)赋完值之后对中间变量s赋值。6调试程序正常,但是无法正常显示限速曲线,图为一条蓝色曲线,直接降速降到0操作问题,代码编写完毕后回到excel界面直接就点击了人工解析。代码编写完毕后回到excel界面先点自动解析,确认,开始运行,再点击人工解析,并设置合适的初速度点击确认,开始运行。六、实验总结通过本次实验,使我更加深刻的理解了应答器原始报文的组成格式。了解了如何解析报文中相应编码段的信息。实验三的难度感觉较大,通过仔细看实验指导书和小组成员一起讨论,逐渐慢慢懂了实验的意思,要我们做什么,在纸上写出了应答器所有变量在报文中的位置以及它们所占的位数,为GetValueOfVar函数读取相关信息做了准备。BaliseBitByte()函数,输入为应答器原始报文Telegram,存储完整的一组应答器组报文,共104字节。输出:闭塞分区长度信息sBlock和线路限速sLineAllowSpeed。longGetValueOfVar(VarBitNum,TotoalBitBeforeVar,Telegram)中VarBitNum为所占位数;TotoalBitBeforeVar为所求变量前的bit数;Telegram为应答器原始报文。实验的最终目的就是想要我们根据报文,解析出闭塞分区长度和线路限速,同时这也是老师问我们的问题,还有一些变量的意思如N_ITER、D_STATIC和V_STATIC。在编写好程序读出所有所需变量在报文中的信息后,我们通过程序将信息填入slineallowspeed、sblocks中,从而将实验2与实验3通过这两参数相联系在一起,从而完成程序。其中最后,NID_SIGNAL1(i)有没有信号机或者信号机类型对实验结果是有影响的,有信号机则为到信号机,确定的闭塞区间长度,没有则为整个区间长度。

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功