基于.NET框架的交通预测监控系统设计

2018-01-17 07:16景鹏
电子技术与软件工程 2017年22期
关键词:交通系统串口通信上位机

城市汽车保有量的迅猛增加,带来的交通拥堵问题日益突出。为此需采取有效手段对交通流量进行预测,帮助出行人提高出行效率。基于此设计了一个基于.NET框架的交通预测监控系统,该系统利用超声波传感器实时采集路段车速数据,通过串口通信实现交通现场与上位机的数据传输,并利用神经网络模型对交通数据做出预测。实际运行证明该系统可以准確预测交通状况,帮助行人合理规划出行路线。

【关键词】交通系统 上位机 神经网络 串口通信

高德地图发布的2017年第一季度中国主要城市交通分析报告中称,同比高德地图交通大数据去年第一季度检测的60个城市中,超半数城市的拥堵指数依然很高。严重的城市交通拥堵不仅影响了居民的正常出行,而且加剧了环境污染。

为了帮助行人了解出行路段的交通情况,必须对路段交通进行实时分析和预测。系统利用.NET框架平台设计上位机,实时显示交通当前运行情况以及预测情况。

1 交通数据采集发送原理

1.1 超声波检测原理

系统以STC15F2K60S2单片机为控制核心,主要完成的工作有与超声波通讯、定时器计时、交通数据的运算、存储和与上位机进行串口通讯等。交通数据采集部分采用一对40KHz分体式超声波传感器T40-16、R40-16作为检测器。

当单片机产生40KHz的方波脉冲信号后,经超声波发射端T40-16发射脉冲信号,发射的脉冲信号如果遇到障碍物将会反弹过来,由超声波接收端R40-16接受脉冲信号。在程序设计中,可以利用单片机中定时器确定发射脉冲和接受脉冲的时间差,从而计算出障碍物与超声波探头之间的距离,再利用时差法测速。

为了消除时差测速法导致的测量误差,系统将5min之内通过路段的平均速度作为一个数据单位,由单片机计算出具体值并及时存储,发送至上位机。

1.2 数据传输原理

串行通信具有远距离传输成本低的优点。STC15F2K60S2单片机内部有两个可编程全双工串行通信接口。系统中单片机利用串口1完成数据帧的发送,数据采集端与上位机接收端通过规定好的串口通信协议进行通信,上位机采用自动获取串口方式,波特率为9600bps,8位数据构成一帧,在差错检验中数据帧采用CRC16循环冗余校验法,选取的生成多项式为0XA001,前六位为数据位,后两位为校验位,确保数据正确传输。

2 交通流量预测

2.1 BP神经网络在交通预测系统中的实现

为了实现交通流量的准确预测,系统采用BP(Back Propagation)神经网络建立数学模型。为了提高预测精度,系统选用某5天的数据为输入变量,第6天的数据为输出变量,第7天的数据用于验证网络预测精度。

这样输入层神经元个数为5,输出层神经元个数为1,通常隐含层节点数的选取采用经验公式得为4~13。隐含层神经元个数的最终确定,可通过MATLAB中神经网络函数进行仿真确定。

2.2 搭建BP神经网络数学模型

在BP神经网络数学模型中输入神经元Xm通过与权值ωmi的累加乘积完成对隐含层神经元的刺激,由于输出值不包含负值,隐含层的激活函数可采用Log-Sigmoid函数作为传递函数。隐含层Ki通过与权值ωin的累加乘积完成对输出层的刺激,输出层神经元的输出函数Yn通常采用线性函数。

下面利用MATLAB软件确定其隐含层个数,以及训练函数。

2.3 MATLAB软件仿真

对于如何将误差信号反向传播,不断修正权值,MATLAB提供了很多训练函数。为了建立有效的预测模型,假定系统训练次数为10000次,收敛误差为0.01,学习率为0.3。

先采用训练函数traingd、traingdx由仿真结果可知当训练次数达到最大值10000时误差均不满足训练要求。最后采用trainlm算法,对系统进行仿真分析,当隐含层数为12时,训练误差仅为0.00960,训练次数为79次,训练时长1s,此时训练速度较快,系统误差满足设计要求。这样系统训练函数采用trainlm函数,隐含层设置12个。

3 上位机设计

为了向出行人提供一种简洁、直观的人机交互界面,系统利用微软用户界面框架技术(Windows Presentation Foundation,WPF)技术设计出用户界面。

当单击即将通过的路段坐标时可进入具体交通数据监测画面,如图1所示。该界面可以实时显示道路当前的平均车速,和前一个星期的交通数据。系统根据平均车速的大小和交通拥堵指数定义将当前道路运行状态进行分类,在出行建议中,告知出行者当前交通状况,并利用C#语言实现MATLAB仿真中确定的神经网络数据模型,预测出5min后通过此路段的平均车速。出行者也可参考历史交通数据,做出出行选择。

4 结语

本系统根据出行者对交通认知的需求出发,将传感器技术、串口通信、神经网络算法相结合,通过上位机平台实时显示采集到的大量交通数据,可有效监测当前交通状况并预测未来交通状况,系统架构完整,应用型强。但系统功能较为单一,未能充分利用传感器技术和上位机平台,为出行者提供更多交通信息,这为进一步丰富系统功能,指明了方向。

参考文献

[1]兰羽.基于AT89C51的超声波测速系统设计[J].电子设计工程,2013(07):137-139.

[2]曹虹.基于BP神经网络的交通流量预测[D].长安大学,2012.

[3]王刚.基于.net的串口示波器开发[J].电子测试,2016(13):82-83+77.

[4]赵朝凤.浅析BP神经网络基本模型的C语言实现[J].通信技术,2013(01):89-91+94.

作者简介

景鹏(1995-),男,江苏省盐城市人。大学本科学历。研究方向为嵌入式开发。

徐海彬(1995-),男,江苏省盐城市人。大学本科学历。研究方向为机电一体化。

杜年茂(1994-),男,江苏省徐州市人。大学本科学历。研究方向为.NET平台开发。

朱鹏(1995-),男,江苏省镇江市人。大学本科学历。研究方向为计算机技术。

作者单位

江苏科技大学 江苏省张家港市 215600endprint

猜你喜欢
交通系统串口通信上位机
交通系统廉政风险防范管理的实践探索与思考
基于Qt和Flash的嵌入式Linux软件架构设计