CN103942972A - 一种实时检测校车偏离行驶路线并自动报警的方法 - Google Patents
一种实时检测校车偏离行驶路线并自动报警的方法 Download PDFInfo
- Publication number
- CN103942972A CN103942972A CN201410148807.XA CN201410148807A CN103942972A CN 103942972 A CN103942972 A CN 103942972A CN 201410148807 A CN201410148807 A CN 201410148807A CN 103942972 A CN103942972 A CN 103942972A
- Authority
- CN
- China
- Prior art keywords
- path
- enter step
- enter
- server
- school bus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Abstract
本发明公开了一种实时检测校车偏离行驶路线并自动报警的方法,将车载终端分别装在多辆校车上,通过3G通讯模块连接到公网,自动从服务器中获取行驶路线,通过GPS定位模块实时获取校车当前位置,实时检测当前校车是否在规定的行驶路线,如果发生偏离行驶路线的情况,则发出语音报警并上报服务器,服务器用来存储校车的行驶路径与校车基本信息以及驾驶员和随车照管员的信息,并负责将车载终端上报的偏离路线事件与该校车信息一同分发到各监控终端,监控终端接收服务器发送的偏离路线事件与校车信息,并定位偏离路线的校车、发出语音警报、显示校车信息,使用方便、操作简单、智能化程度高,便于实现校车行驶路线的管理与控制。
Description
技术领域
本发明涉及一种校车行驶路线的监控,具体地说,涉及一种实时检测校车偏离行驶路线并自动报警的方法,属于电子技术领域。
背景技术
近几年随着校车的普及,校车的事故也是不断的涌现了出来。国务院和各地政府先后都出台了校车的管理新规,对校车运营进行严格的规定和审查。越来越多校车都安装上了全球定位系统(GPS)或北斗定位,监管部门可对校车进行实时的位置跟踪。但是校车的数量众多,就如校车管理规定中校车必须按当地政府预先规定的路线行驶一项,如果政府要用人力对所有校车实时监管,分辨是否有校车偏离行驶路线就有相当大的难度,需要花费大量的人力、物力。如果将现代的检测和通信技术与校车管理相结合,实现一种实时监管校车是否偏离行驶路线并能自动报警的系统,将会对减少校车事故的发生起到积极的作用。
发明内容
本发明要解决的技术问题是针对以上不足,提供一种实时检测校车偏离行驶路线并自动报警的方法,采用本发明的方法,可以实现对校车的实时监控,使用方便、操作简单、智能化程度高,便于实现校车行驶路线的管理与控制,将对减少校车事故的发生起到积极的作用,推广应用价值高。
为解决以上技术问题,本发明采用以下技术方案:一种实时检测校车偏离行驶路线并自动报警的方法,所述方法通过车载终端、监控终端和服务器来实现,车载终端包括3G通讯模块和GPS定位模块,其特征在于:所述方法包括服务器控制步骤、车载终端控制步骤和监控终端控制步骤。
所述服务器控制步骤包括:
开始于步骤S101,在步骤S102,服务器进入监听请求状态,等待来自车载终端、监控终端或用户发出的退出请求,接收到请求后进入步骤S103;
在步骤S103,判断请求是否为监控终端的收听注册请求,如果是则进入步骤S105,否则进入S104;
在步骤S105,将请求监控偏离事件的监控终端网络连接添加到终端列表MonitorList中,返回至步骤S102;
在步骤S104,判断请求是否为行驶路线偏离请求,如果是则进入步骤S106,否则进入步骤S107;
在步骤S106,将偏离请求中的数据记录到数据库中,然后进入步骤S108;
在步骤S108,发送偏离线路消息到监控终端列表MonitorList中记录的全部监控终端,然后进入步骤S102;
在步骤S107,判断请求是否为获取路线请求,如果是则进入步骤S109,否则进入步骤S113;
在步骤S109,根据请求的终端编号从数据库中获取对应的当前路径和当前的路径版本号,然后进入步骤S110;
在步骤S110,判断当前的路径版本号是否大于校车车载终端上传的版本号,如果是则进入步骤S112,否则进入步骤S111;
在步骤S111,向发出请求的车载终端返回当前的路径编号,然后进入步骤S102;
在步骤S112中,向发出请求的车载终端返回当前的路径和当前的路径编号,然后进入步骤S102;
在步骤S113,判断请求是否为监控终端注销的请求,如果是则进入步骤S114,否则进入步骤S115;
在步骤S114,将发出请求的监控终端与服务器的网络连接从监控终端列表MonitorList中删除,然后进入步骤S102;
在步骤S115,判断请求是否为用户发出的退出当前监听请求,如果是则进入步骤S116,否则进入步骤S102;
流程结束于步骤S116。
一种优化方案,所述车载终端控制步骤包括:
开始于S201,在步骤S202,从本地数据库中获取校车行驶路径的版本号并赋值给LocalVersion,如果本地并未存储过路径的版本号,则使用默认值0,然后进入步骤S203;
在步骤S203,向服务器发出获取该校车行驶路径的请求,并在请求中附带该车载终端预设的编号、本地路径的版本号,从服务器中获取该校车最新的路径NewPath、路径的版本号NewVersion、最大有效距离ValidDistance,然后进入步骤S204;
在步骤S204,判断新的路径版本号NewVersion是否大于本地的路径版本号localVersion,如果服务器的路径版本NewVersion大于车载终端本地的路径版本LocalVersion,则进入步骤S206,否则进入步骤S205;
在步骤S205,从车载终端的本地数据库中获取行驶路径并将其赋值于代表路径的内存变量Path,然后进入步骤S209;
在步骤S206,将新的路径存储到车载终端的数据库中,然后进入步骤S207;
在步骤S207,把车载终端数据库中的路径版本号改为从服务器获取到的路径版本号NewVersion,然后进入步骤S208;
在步骤S208,将从服务器获取的路径NewPath赋值给代表路径的内存变量Path,然后进入步骤S209;
在步骤S209,判断代表路径内存变量Path中节点的个数是否大于或等于2,如果节点的个数大于或等于2,则进入步骤S210,否则进入步骤S215;
在步骤S210,通过GPS模块获取校车当前的经纬度坐标并赋值给内存变量CurrentGPS,然后进入步骤S211;
在步骤S211,计算代表校车当前位置的内存变量CurrentGPS是否在路径Path上,并将计算结果赋值给标志位OnRoad中,然后进入步骤S212;
在步骤S212,判断OnRoad是否为True,如果OnRoad为True则进入步骤S216,否则进入步骤S213;
在步骤S213,播放偏离线路语音警报,以提醒驾驶员偏离了行驶线路,然后进入步骤S214;
在步骤S214,向服务器发出路线偏离消息,并附带校车的当前经纬坐标和车载终端编号,然后进入步骤S216;
在步骤S216,判断是否接收到退出偏离检测逻辑的事件,如果收到退出事件,则进入步骤S215,否则进入步骤S210;
流程结束于步骤S215。
进一步地,所述监控终端控制步骤包括:
开始于步骤S401,然后进入步骤S402;
在步骤S402,监控终端向服务器发送监控注册请求,与服务器建立网络连接,告知服务器该监控终端需要监控偏离路线事件,然后进入步骤S403;
在步骤S403,判断是否与服务器连接成功并注册为监控终端,如果注册成功进入步骤S404,否则进入步骤S405;
在步骤S404,等待服务器或者来自用户操作所发出的消息,接收到消息后进入步骤S406;
在步骤S406,判断接收的消息是否为偏离路线信息,如果是则进入步骤S407,否则进入步骤S411;
在步骤S407,报放偏离路径的报警声,然后进步骤S408;
在步骤S408,解析接收到的偏离消息体中所包含的GPS经纬坐标,并根据该经纬坐标在地址中标记校车位置,并将地图平移使校车位置显示在监控画面的中心位置,然后进入步骤S409;
在步骤S409,解析接收到的偏离消息体中所包含的规定的行驶路线,并在地图中画出该校车规定的行驶路线,然后进入步骤S410;
在步骤S410,解析接收到的偏离消息中包含的校车信息,并在监控画面中显示,然后返回步骤S404;
在步骤S411,判断接收到的消息是否为来自用户操作所发出的退出程序的消息,如果是进入步骤S412,否则进入步骤S404;
在步骤S412,向服务器发出注销请求,告之服务器该监控终端不想再接收偏离路径事件,发送请求后关闭与服务器的网络连接,然后进入步骤S413;
在步骤S405,在监控画面中显示对话框提示注册不成功的消息及原因,然后进入步骤S413,流程结束于步骤S413。
进一步地,步骤S211包括:
开始于步骤S301,然后进入步骤S302;
在步骤S302中,声明一个节点索引变量Index并赋初值为0,然后进入步骤S303;
在步骤S303,判断节点索引变量Index+1是否大于Path中节点的个数,如果是则进入步骤S317,否则进入步骤S304;
在步骤S304,根据索引值Index获取当前节点用a来表示,然后进入步骤S305;
在步骤S305,根据索引值Index获取下一个节点用b来表示,然后进入步骤S306;
在步骤S306,计算当前节点到校车当前位置的线段以as表示,然后进入步骤S307;
在步骤S307,计算当前节点到下一节点的线段以ab表示,然后进入步骤S308;
在步骤S308,计算下一节点到当前节点的线段用ba表示,然后进入步骤S309;
在步骤S309,计算下一节点到校车当前位置的线段以bs表示,然后进入步骤S310;
在步骤S310,判断当前节点到下一节点形成的线段ab与当前节点到校车当前位置形成的线段as的内积是否小于或等于0,如果是则进入步骤S312,否则进入步骤S311;
在步骤S312,判断校车当前位置到当前节点的距离是否小于等于最大有效距离ValidDistance,如果是则进入步骤S316,否则进入步骤S318;
在步骤S316,将标志位OnRoad置True,然后进入步骤S319;
在步骤S311,判断下一节点到当前节点所形成的线段ba与bs的内积是否小于等于0,如果是则进入步骤S313,否则进入S314;
在步骤S313,判断校车当前位置与下一节点的距离是否小于等于最大有效距离,如果是则进入S316,否则进入步骤S318;
在步骤S314,判断校车当前位置点在当前节点与下一节点所形成线段的垂点,垂点用nearestPoint表示,然后进入步骤S315;
在步骤S315,判断垂点到校车当前位置的距离是否小于等于最大有效距离ValidDistance,如果是则进入步骤S316,否则进入步骤S318;
在步骤S317,将表示是否在路径上的标志位OnRoad设置为False,然后进入步骤S319;
在步骤S318,将节点索引变量Index加1,然后进入步骤S303;
流程结束于步骤S319。
本发明采用以上技术方案后,与现有技术相比,具有以下优点:将车载终端分别装在多辆校车上,当开机时,通过3G通讯模块连接到公网,自动从服务器中获取行驶路线,通过GPS定位模块实时获取校车当前位置,实时检测当前校车是否在规定的行驶路线,如果发生偏离行驶路线的情况,则发出语音报警并上报服务器。服务器可以是运行在公网上的单台服务器或是服务器群组,主要用来存储校车的行驶路径与校车基本信息以及驾驶员和随车照管员的信息,并负责将车载终端上报的偏离路线事件与该校车信息一同分发到各监控终端。监控终端是具有大监控屏幕的普通电脑,用来接收服务器发送的偏离路线事件与校车信息,并定位偏离路线的校车、发出语音警报、显示校车信息,使用方便、操作简单、智能化程度高,便于实现校车行驶路线的管理与控制。
下面结合附图和实施例对本发明进行详细说明。
附图说明
附图1是本发明实施例中校车到路段最小距离的计算方法示意图;
附图2是本发明实施例中车载终端、监控终端和服务器的序列图;
附图3是本发明实施例中服务器控制步骤的流程图;
附图4是本发明实施例中车载终端控制步骤的流程图;
附图5是本发明实施例中代表校车当前位置的内存变量CurrentGPS是否在路径Path上计算步骤的流程图;
附图6是本发明实施例中监控终端控制步骤的流程图。
具体实施方式
实施例,一种实时检测校车偏离行驶路线并自动报警的方法,通过车载终端、监控终端和服务器来实现。车载终端是使用ARM11微处理器的嵌入式系统,包括3G通讯模块和GPS定位模块。
使用前首先进行数据初始化步骤:
1.通过网络连接到服务器上的人机界面添加车载终端信息,包括校车车牌号、驾驶员姓名及电话、随车管理员姓名及电话、所属学校、运营单位,将数据存储到服务器数据库的车载终端记录中,并自动产生唯一终端编号进行唯一标识;
2.通过网络连接到服务器上的人机界面,为车载终端设置行驶路径与路径的宽度,保存到数据库中。行驶路线用路线上的节点经纬度坐标的有序集合来表示,在保存路径时自动使路径版本号加1,数字越大表示版本越新,新建的路径初始值为1。
3.将校车车载终端编号预设为服务器中对应的唯一终端编号。
校车是否在行驶路线上的计算原理:
预定义:
行驶路线用路线上的节点经纬度坐标的有序集合来表示,命名为路径。
行驶路线宽度的1/2命名为校车到路径的最大有效距离。
计算方法:
计算校车到路径上任意相邻的两个节点所形成的线段的最小距离,如果存在一个最小距离小于或等于最大有效距离则校车在行驶路线上,否则不在行驶路线上。
校车到路径上任一条线段的最小距离计算方法:
如图1所示,假设线段的两个节点用a、b表示,校车位置用点s表示,点a到点b的线段称为ab,点b到点a的线段称为ba,点a到点s的线段称为as,点b到点s的线段称为bs。
计算点到ab最小距离有三种情况,第一种:如图1(a)所示,ab与as内积小于或等于0即夹角大于等于90度且小于等于270度,则点s到点a的距离即为s到ab的距离。
第二种,如图1(b)所示,ba与bs的内积小于等于0即夹角大于等于90度且小于等于270度,则s到点b的距离即为s到ab的距离。
第三种,如图1(c)所示,ab与as的内积大于0即夹角小于90度且ba与bs的内积大于0即夹角小于90度,则s到ab的最小距离为s到ab的垂线长度即长度等于b点坐标+ba的单位向量*(bs与ba的内积)*bs的长度。
如图2所示,车载终端、监控终端和服务器的交互方式如下:
第1步,车载终端获取本地路径版本号;
第2步,车载终端向服务器通过提交本地版本号和车载终端预设的编号获取服务器上存储的路径与路径版本号;
第3步,服务器根据车载终端上传的车载终端编号获取数据库中的路径和路径版本号;
第4步,服务器给车载终端返回路径和路径版本号;
第5步,车载终端存储或更新本地路径和路径版本号;
第6步,监控终端向服务器提交注册监控终端请求,建立与服务器的网络连接;第7步,服务器将与监控终端的网络连接添加到监控终端列表,并回复监控终端的请求是否注册成功,注册成功后监控终端等待服务器或者来自用户操作所发出的消息;
第8步,车载终端根据算法计算是否偏离路径;
第9步,车载终端发生偏离时,报放偏离线路语音警报;
第10步,车载终端向服务器发送校车偏离路径通知,偏离路径通知包括车载终端编号、偏离的时间、经纬度坐标;
第11步,服务器接收到车载终端发送的偏离路径通知,将偏离事件记录到数据库中,并回复监控终端是否接收成功;
第12步,服务器根据接收到的车载终端编号从数据库中获取校车信息;
第13步,服务器把偏离路径通知和校车的信息一同分发到已经在服务器上注册过的各监控终端,校车的信息包括校车的车牌号、驾驶员姓名和电话、随车照管员姓名和电话;
第14步,各监控终端回复服务器是否成功接收;
第15步,监控终端在监控大屏幕上显示并定位校车,显示校车信息,并播放语音警报。
该方法包括服务器控制步骤、车载终端控制步骤和监控终端控制步骤。
如图3所示,服务器控制步骤包括:流程开始于S101,在步骤S102,服务器进入监听请求状态,等待来自车载终端、监控终端或用户发出的退出请求,接收到请求后进入步骤S103;
在步骤S103,判断请求是否为监控终端的收听注册请求,如果是则进入步骤S105,否则进入S104;
在步骤S105,将请求监控偏离事件的监控终端网络连接添加到终端列表MonitorList中,以备服务器向监控终端发送偏离消息使用,返回至步骤S102;
在步骤S104,判断请求是否为行驶路线偏离请求,如果是则进入步骤S106,否则进入步骤S107;
在步骤S106,将偏离请求中的数据(车载终端编号、校车GPS坐标、请求时间)记录到数据库中,然后进入步骤S108;
在步骤S108,发送偏离线路消息到监控终端列表MonitorList中记录的全部监控终端,发送时需要先检测服务器与监控终端的网络连接是否仍然可用,不可用的从MonitorList中删除,仍可用的发送偏离消息,消息数据包括校车的GPS坐标、根据车载终端编号从数据库中获取的该校车的车牌号、行驶路径、驾驶员姓名和电话、所属学校、运营单位,然后进入步骤S102;
在步骤S107,判断请求是否为获取路线请求,如果是则进入步骤S109,否则进入步骤S113;
在步骤S109,根据请求的终端编号从数据库中获取对应的当前路径和当前的路径版本号,然后进入步骤S110;
在步骤S110,判断当前的路径版本号是否大于校车车载终端上传的版本号,如果是则进入步骤S112,否则进入步骤S111;
在步骤S111,向发出请求的车载终端返回当前的路径编号,然后进入步骤S102;
在步骤S112中,向发出请求的车载终端返回当前的路径和当前的路径编号,然后进入步骤S102;
在步骤S113,判断请求是否为监控终端注销的请求,如果是则进入步骤S114,否则进入步骤S115;
在步骤S114,将发出请求的监控终端与服务器的网络连接从监控终端列表MonitorList中删除,然后进入步骤S102;
在步骤S115,判断请求是否为用户发出的退出当前监听请求,如果是则进入步骤S116,否则进入步骤S102;
流程结束于步骤S116。
如图4所示,车载终端控制步骤包括:
流程开始于S201,在步骤S202,从本地数据库中获取校车行驶路径的版本号并赋值给LocalVersion,如果本地并未存储过路径的版本号,即首次运行程序则使用默认值0,然后进入步骤S203;
在步骤S203,向服务器发出获取该校车行驶路径的请求,并在请求中附带该车载终端预设的编号、本地路径的版本号,从服务器中获取该校车最新的路径NewPath、路径的版本号NewVersion、最大有效距离ValidDistance即行驶路线宽度的一半,然后进入步骤S204;
在步骤S204,判断新的路径版本号NewVersion是否大于本地的路径版本号localVersion,即服务器中存储的路径是否被修改过,如果服务器的路径版本NewVersion大于车载终端本地的路径版本LocalVersion,则进入步骤S206,否则进入步骤S205;
在步骤S205,从车载终端的本地数据库中获取行驶路径并将其赋值于代表路径的内存变量Path,然后进入步骤S209;
在步骤S206,将新的路径存储到车载终端的数据库中,然后进入步骤S207;
在步骤S207,把车载终端数据库中的路径版本号改为从服务器获取到的路径版本号NewVersion,然后进入步骤S208;
在步骤S208,将从服务器获取的路径NewPath赋值给代表路径的内存变量Path,然后进入步骤S209;
在步骤S209,判断代表路径内存变量Path中节点的个数是否大于或等于2,即行驶路径至少要有开始点和结束点,如果节点的个数大于或等于2,则进入步骤S210,否则进入步骤S215;
在步骤S210,通过GPS模块获取校车当前的经纬度坐标并赋值给内存变量CurrentGPS,然后进入步骤S211;
在步骤S211,计算代表校车当前位置的内存变量CurrentGPS是否在路径Path上,并将计算结果赋值给标志位OnRoad中,然后进入步骤S212;
在步骤S212,判断OnRoad是否为True,即校车是否在行驶路线上,如果OnRoad为True即在行驶路线上则进入步骤S216,否则进入步骤S213;
在步骤S213,播放偏离线路语音警报,以提醒驾驶员偏离了行驶线路,然后进入步骤S214;
在步骤S214,向服务器发出路线偏离消息,并附带校车的当前经纬坐标和车载终端编号,然后进入步骤S216;
在步骤S216,判断是否接收到退出偏离检测逻辑的事件,如果收到退出事件,则进入步骤S215,否则进入步骤S210;
流程结束于步骤S215。
如图5所示,代表校车当前位置的内存变量CurrentGPS是否在路径Path上的计算步骤,即步骤S211包括:
流程开始于步骤S301,然后进入步骤S302;
在步骤S302中,声明一个节点索引变量Index并赋初值为0,然后进入步骤S303;
在步骤S303,判断节点索引变量Index+1是否大于Path中节点的个数,由于要计算校车这一点到路径上任一相邻两点所形成的线段最小距离,一次判断要取两个节点即当前索引节点和下一个节点,如果Index+1>Path中节点的个数,即下一个节点不存在则进入步骤S317,否则进入步骤S304;
在步骤S304,根据索引值Index获取当前节点用a来表示,然后进入步骤S305;
在步骤S305,根据索引值Index获取下一个节点用b来表示,然后进入步骤S306;
在步骤S306,计算当前节点到校车当前位置的线段以as表示,然后进入步骤S307;
在步骤S307,计算当前节点到下一节点的线段以ab表示,然后进入步骤S308;
在步骤S308,计算下一节点到当前节点的线段用ba表示,然后进入步骤S309;
在步骤S309,计算下一节点到校车当前位置的线段以bs表示,然后进入步骤S310;
在步骤S310,判断当前节点到下一节点形成的线段ab与当前节点到校车当前位置形成的线段as的内积是否小于或等于0,即判断ab与as的夹角是否大于等于90且小于等于270度,因为两个向量的内积等于ab的单位向量*as的单位向量*cos夹角,而cos90度到cos270度是小于等于0的,如果ab与as的内积小于等于0,则进入步骤S312,否则进入步骤S311;
在步骤S312,判断校车当前位置到当前节点的距离是否小于等于最大有效距离ValidDistance,即判断是否在以当前节点到下一节点形成的线段上,如果校车当前位置到当前节点的距离小于等于最大的有效距离,则进入步骤S316,否则进入步骤S318;
在步骤S316,将标志位OnRoad置True,即表达校车当前是在行驶路线上,然后进入步骤S319;
在步骤S311,判断下一节点到当前节点所形成的线段ba与bs的内积是否小于等于0,如果是则进入步骤S313,否则进入S314;
在步骤S313,判断校车当前位置与下一节点的距离是否小于等于最大有效距离,如果是则进入S316,否则进入步骤S318;
在步骤S314,判断校车当前位置点在当前节点与下一节点所形成线段的垂点,垂点用nearestPoint表示,然后进入步骤S315;
在步骤S315,判断垂点到校车当前位置的距离是否小于等于最大有效距离ValidDistance,如果是则进入步骤S316,否则进入步骤S318;
在步骤S317,将表示是否在路径上的标志位OnRoad设置为False,即表示不在路径上,然后进入步骤S319;
在步骤S318,将节点索引变量Index加1,即在本次循环中的下一个节点在进入下一次循环时就变成了当前节点,然后进入步骤S303;
流程结束于步骤S319。
如图6所示,监控终端控制步骤包括:
流程开始于步骤S401,然后进入步骤S402;
在步骤S402,监控终端向服务器发送监控注册请求,与服务器建立网络连接,告知服务器该监控终端需要监控偏离路线事件,然后进入步骤S403;
在步骤S403,判断是否与服务器连接成功并注册为监控终端,如果注册成功进入步骤S404,否则进入步骤S405;
在步骤S404,等待服务器或者来自用户操作所发出的消息,消息格式采用JSON的形式,包含的消息的类型与相关的参数信息,接收到消息后进入步骤S406;
在步骤S406,判断接收的消息是否为偏离路线信息,如果是则进入步骤S407,否则进入步骤S411;
在步骤S407,报放偏离路径的报警声,然后进步骤S408;
在步骤S408,解析接收到的偏离消息体中所包含的GPS经纬坐标,并根据该经纬坐标在地址中标记校车位置,并将地图平移使校车位置显示在监控画面的中心位置,然后进入步骤S409;
在步骤S409,解析接收到的偏离消息体中所包含的规定的行驶路线,并在地图中画出该校车规定的行驶路线,然后进入步骤S410;
在步骤S410,解析接收到的偏离消息中包含的校车信息(校车车牌号、运营单位、驾驶员姓名和电话、随车照管员姓名和电话、所属学校),并在监控画面中显示,然后返回步骤S404;
在步骤S411,判断接收到的消息是否为来自用户操作所发出的退出程序的消息,如果是进入步骤S412,否则进入步骤S404;
在步骤S412,向服务器发出注销请求,告之服务器该监控终端不想再接收偏离路径事件,发送请求后关闭与服务器的网络连接,然后进入步骤S413;
在步骤S405,在监控画面中显示对话框提示注册不成功的消息及原因,然后进入步骤S413,流程结束于步骤S413。
以上所述为本发明最佳实施方式的举例,其中未详细述及的部分均为本领域普通技术人员的公知常识。本发明的保护范围以权利要求的内容为准,任何基于本发明的技术启示而进行的等效变换,也在本发明的保护范围之内。
Claims (4)
1.一种实时检测校车偏离行驶路线并自动报警的方法,所述方法通过车载终端、监控终端和服务器来实现,车载终端包括3G通讯模块和GPS定位模块,其特征在于:所述方法包括服务器控制步骤、车载终端控制步骤和监控终端控制步骤;
所述服务器控制步骤包括:
开始于步骤S101,在步骤S102,服务器进入监听请求状态,等待来自车载终端、监控终端或用户发出的退出请求,接收到请求后进入步骤S103;
在步骤S103,判断请求是否为监控终端的收听注册请求,如果是则进入步骤S105,否则进入S104;
在步骤S105,将请求监控偏离事件的监控终端网络连接添加到终端列表MonitorList中,返回至步骤S102;
在步骤S104,判断请求是否为行驶路线偏离请求,如果是则进入步骤S106,否则进入步骤S107;
在步骤S106,将偏离请求中的数据记录到数据库中,然后进入步骤S108;
在步骤S108,发送偏离线路消息到监控终端列表MonitorList中记录的全部监控终端,然后进入步骤S102;
在步骤S107,判断请求是否为获取路线请求,如果是则进入步骤S109,否则进入步骤S113;
在步骤S109,根据请求的终端编号从数据库中获取对应的当前路径和当前的路径版本号,然后进入步骤S110;
在步骤S110,判断当前的路径版本号是否大于校车车载终端上传的版本号,如果是则进入步骤S112,否则进入步骤S111;
在步骤S111,向发出请求的车载终端返回当前的路径编号,然后进入步骤S102;
在步骤S112中,向发出请求的车载终端返回当前的路径和当前的路径编号,然后进入步骤S102;
在步骤S113,判断请求是否为监控终端注销的请求,如果是则进入步骤S114,否则进入步骤S115;
在步骤S114,将发出请求的监控终端与服务器的网络连接从监控终端列表MonitorList中删除,然后进入步骤S102;
在步骤S115,判断请求是否为用户发出的退出当前监听请求,如果是则进入步骤S116,否则进入步骤S102;
流程结束于步骤S116。
2. 如权利要求1所述的方法,其特征在于:所述车载终端控制步骤包括:
开始于S201,在步骤S202,从本地数据库中获取校车行驶路径的版本号并赋值给LocalVersion,如果本地并未存储过路径的版本号,则使用默认值0,然后进入步骤S203;
在步骤S203,向服务器发出获取该校车行驶路径的请求,并在请求中附带该车载终端预设的编号、本地路径的版本号,从服务器中获取该校车最新的路径NewPath、路径的版本号NewVersion、最大有效距离ValidDistance,然后进入步骤S204;
在步骤S204,判断新的路径版本号NewVersion是否大于本地的路径版本号localVersion,如果服务器的路径版本NewVersion大于车载终端本地的路径版本LocalVersion,则进入步骤S206,否则进入步骤S205;
在步骤S205,从车载终端的本地数据库中获取行驶路径并将其赋值于代表路径的内存变量Path,然后进入步骤S209;
在步骤S206,将新的路径存储到车载终端的数据库中,然后进入步骤S207;
在步骤S207,把车载终端数据库中的路径版本号改为从服务器获取到的路径版本号NewVersion,然后进入步骤S208;
在步骤S208,将从服务器获取的路径NewPath赋值给代表路径的内存变量Path,然后进入步骤S209;
在步骤S209,判断代表路径内存变量Path中节点的个数是否大于或等于2,如果节点的个数大于或等于2,则进入步骤S210,否则进入步骤S215;
在步骤S210,通过GPS模块获取校车当前的经纬度坐标并赋值给内存变量CurrentGPS,然后进入步骤S211;
在步骤S211,计算代表校车当前位置的内存变量CurrentGPS是否在路径Path上,并将计算结果赋值给标志位OnRoad中,然后进入步骤S212;
在步骤S212,判断OnRoad是否为True,如果OnRoad为True则进入步骤S216,否则进入步骤S213;
在步骤S213,播放偏离线路语音警报,以提醒驾驶员偏离了行驶线路,然后进入步骤S214;
在步骤S214,向服务器发出路线偏离消息,并附带校车的当前经纬坐标和车载终端编号,然后进入步骤S216;
在步骤S216,判断是否接收到退出偏离检测逻辑的事件,如果收到退出事件,则进入步骤S215,否则进入步骤S210;
流程结束于步骤S215。
3.如权利要求1所述的方法,其特征在于:所述监控终端控制步骤包括:
开始于步骤S401,然后进入步骤S402;
在步骤S402,监控终端向服务器发送监控注册请求,与服务器建立网络连接,告知服务器该监控终端需要监控偏离路线事件,然后进入步骤S403;
在步骤S403,判断是否与服务器连接成功并注册为监控终端,如果注册成功进入步骤S404,否则进入步骤S405;
在步骤S404,等待服务器或者来自用户操作所发出的消息,接收到消息后进入步骤S406;
在步骤S406,判断接收的消息是否为偏离路线信息,如果是则进入步骤S407,否则进入步骤S411;
在步骤S407,报放偏离路径的报警声,然后进步骤S408;
在步骤S408,解析接收到的偏离消息体中所包含的GPS经纬坐标,并根据该经纬坐标在地址中标记校车位置,并将地图平移使校车位置显示在监控画面的中心位置,然后进入步骤S409;
在步骤S409,解析接收到的偏离消息体中所包含的规定的行驶路线,并在地图中画出该校车规定的行驶路线,然后进入步骤S410;
在步骤S410,解析接收到的偏离消息中包含的校车信息,并在监控画面中显示,然后返回步骤S404;
在步骤S411,判断接收到的消息是否为来自用户操作所发出的退出程序的消息,如果是进入步骤S412,否则进入步骤S404;
在步骤S412,向服务器发出注销请求,告之服务器该监控终端不想再接收偏离路径事件,发送请求后关闭与服务器的网络连接,然后进入步骤S413;
在步骤S405,在监控画面中显示对话框提示注册不成功的消息及原因,然后进入步骤S413,流程结束于步骤S413。
4.如权利要求2所述的方法,其特征在于:步骤S211包括:
开始于步骤S301,然后进入步骤S302;
在步骤S302中,声明一个节点索引变量Index并赋初值为0,然后进入步骤S303;
在步骤S303,判断节点索引变量Index+1是否大于Path中节点的个数,如果是则进入步骤S317,否则进入步骤S304;
在步骤S304,根据索引值Index获取当前节点用a来表示,然后进入步骤S305;
在步骤S305,根据索引值Index获取下一个节点用b来表示,然后进入步骤S306;
在步骤S306,计算当前节点到校车当前位置的线段以as表示,然后进入步骤S307;
在步骤S307,计算当前节点到下一节点的线段以ab表示,然后进入步骤S308;
在步骤S308,计算下一节点到当前节点的线段用ba表示,然后进入步骤S309;
在步骤S309,计算下一节点到校车当前位置的线段以bs表示,然后进入步骤S310;
在步骤S310,判断当前节点到下一节点形成的线段ab与当前节点到校车当前位置形成的线段as的内积是否小于或等于0,如果是则进入步骤S312,否则进入步骤S311;
在步骤S312,判断校车当前位置到当前节点的距离是否小于等于最大有效距离ValidDistance,如果是则进入步骤S316,否则进入步骤S318;
在步骤S316,将标志位OnRoad置True,然后进入步骤S319;
在步骤S311,判断下一节点到当前节点所形成的线段ba与bs的内积是否小于等于0,如果是则进入步骤S313,否则进入S314;
在步骤S313,判断校车当前位置与下一节点的距离是否小于等于最大有效距离,如果是则进入S316,否则进入步骤S318;
在步骤S314,判断校车当前位置点在当前节点与下一节点所形成线段的垂点,垂点用nearestPoint表示,然后进入步骤S315;
在步骤S315,判断垂点到校车当前位置的距离是否小于等于最大有效距离ValidDistance,如果是则进入步骤S316,否则进入步骤S318;
在步骤S317,将表示是否在路径上的标志位OnRoad设置为False,然后进入步骤S319;
在步骤S318,将节点索引变量Index加1,然后进入步骤S303;
流程结束于步骤S319。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410148807.XA CN103942972B (zh) | 2014-04-15 | 2014-04-15 | 一种实时检测校车偏离行驶路线并自动报警的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410148807.XA CN103942972B (zh) | 2014-04-15 | 2014-04-15 | 一种实时检测校车偏离行驶路线并自动报警的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103942972A true CN103942972A (zh) | 2014-07-23 |
CN103942972B CN103942972B (zh) | 2016-01-20 |
Family
ID=51190615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410148807.XA Expired - Fee Related CN103942972B (zh) | 2014-04-15 | 2014-04-15 | 一种实时检测校车偏离行驶路线并自动报警的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103942972B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105575109A (zh) * | 2016-02-16 | 2016-05-11 | 宝鸡市公安局交通警察支队 | 基于卫星定位的车辆通行证智能管理系统 |
TWI550566B (zh) * | 2014-11-06 | 2016-09-21 | Chunghwa Telecom Co Ltd | Travel road identification system and its method |
WO2017015852A1 (zh) * | 2015-07-28 | 2017-02-02 | 深圳市润安科技发展有限公司 | 对特殊作业场所外来车辆进行管理的系统及方法 |
CN106643756A (zh) * | 2015-10-28 | 2017-05-10 | 深圳市赛格导航科技股份有限公司 | 一种判断路线偏移的方法、装置及系统 |
WO2017080039A1 (zh) * | 2015-11-09 | 2017-05-18 | 北京奇虎科技有限公司 | 车辆行驶安全监控方法和装置、系统 |
CN106779342A (zh) * | 2016-11-30 | 2017-05-31 | 国网山东省电力公司鄄城县供电公司 | 用于电力检修的车辆管理方法、装置及系统 |
CN108091130A (zh) * | 2018-01-22 | 2018-05-29 | 苏州清研捷运信息科技有限公司 | 一种指定线路运输车辆的运输路线监控系统及方法 |
CN110991334A (zh) * | 2019-11-29 | 2020-04-10 | 上海能塔智能科技有限公司 | 校车的用车人员监管处理方法、装置、电子设备与介质 |
CN111127935A (zh) * | 2019-12-13 | 2020-05-08 | 广东电网有限责任公司 | 一种公车调度路径分析方法及系统 |
CN111222823A (zh) * | 2020-01-09 | 2020-06-02 | 郭艺斌 | 基于物联网的车辆定位方法、装置、计算机和存储介质 |
CN111415524A (zh) * | 2020-03-31 | 2020-07-14 | 桂林电子科技大学 | 一种针对疲劳驾驶的智能处理方法及系统 |
US11507906B2 (en) | 2019-08-22 | 2022-11-22 | Toyota Motor North America, Inc. | Ride-sharing safety system |
CN116878529A (zh) * | 2023-07-10 | 2023-10-13 | 上海朗尚传感技术有限公司 | 一种基于北斗技术的双天线导航路线偏离预警系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000019170A1 (en) * | 1998-09-30 | 2000-04-06 | Global Research Systems, Inc. | Activation system for an advance notification system for monitoring the status of vehicle travel |
JP2003288624A (ja) * | 2002-03-27 | 2003-10-10 | Matsushita Electric Ind Co Ltd | 輸送管理システム |
WO2009012248A1 (en) * | 2007-07-16 | 2009-01-22 | Crucs Holdings, Llc | System and method for monitoring vehicles on a roadway |
CN102005131A (zh) * | 2010-11-30 | 2011-04-06 | 理查德·乔纳森·李 | 一种校车预报系统 |
CN202120458U (zh) * | 2011-06-17 | 2012-01-18 | 东莞电子科技大学电子信息工程研究院 | 基于td-scdma的车辆定位及实时图像监控系统 |
CN102592395A (zh) * | 2012-02-21 | 2012-07-18 | 金建设 | 校车安全监控系统 |
CN203287967U (zh) * | 2013-05-16 | 2013-11-13 | 郑州宇通客车股份有限公司 | 一种校车管理系统 |
CN103600706A (zh) * | 2013-10-31 | 2014-02-26 | 大连智友软件科技有限公司 | 一种智能校车系统 |
-
2014
- 2014-04-15 CN CN201410148807.XA patent/CN103942972B/zh not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000019170A1 (en) * | 1998-09-30 | 2000-04-06 | Global Research Systems, Inc. | Activation system for an advance notification system for monitoring the status of vehicle travel |
JP2003288624A (ja) * | 2002-03-27 | 2003-10-10 | Matsushita Electric Ind Co Ltd | 輸送管理システム |
WO2009012248A1 (en) * | 2007-07-16 | 2009-01-22 | Crucs Holdings, Llc | System and method for monitoring vehicles on a roadway |
CN102005131A (zh) * | 2010-11-30 | 2011-04-06 | 理查德·乔纳森·李 | 一种校车预报系统 |
CN202120458U (zh) * | 2011-06-17 | 2012-01-18 | 东莞电子科技大学电子信息工程研究院 | 基于td-scdma的车辆定位及实时图像监控系统 |
CN102592395A (zh) * | 2012-02-21 | 2012-07-18 | 金建设 | 校车安全监控系统 |
CN203287967U (zh) * | 2013-05-16 | 2013-11-13 | 郑州宇通客车股份有限公司 | 一种校车管理系统 |
CN103600706A (zh) * | 2013-10-31 | 2014-02-26 | 大连智友软件科技有限公司 | 一种智能校车系统 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI550566B (zh) * | 2014-11-06 | 2016-09-21 | Chunghwa Telecom Co Ltd | Travel road identification system and its method |
WO2017015852A1 (zh) * | 2015-07-28 | 2017-02-02 | 深圳市润安科技发展有限公司 | 对特殊作业场所外来车辆进行管理的系统及方法 |
CN106643756A (zh) * | 2015-10-28 | 2017-05-10 | 深圳市赛格导航科技股份有限公司 | 一种判断路线偏移的方法、装置及系统 |
US10235889B2 (en) | 2015-11-09 | 2019-03-19 | Beijing Qihoo Technology Limited | Method, apparatus and system for monitoring vehicle driving safety |
WO2017080039A1 (zh) * | 2015-11-09 | 2017-05-18 | 北京奇虎科技有限公司 | 车辆行驶安全监控方法和装置、系统 |
CN105575109B (zh) * | 2016-02-16 | 2018-08-07 | 宝鸡市公安局交通警察支队 | 基于卫星定位的车辆通行证智能管理系统 |
CN105575109A (zh) * | 2016-02-16 | 2016-05-11 | 宝鸡市公安局交通警察支队 | 基于卫星定位的车辆通行证智能管理系统 |
CN106779342A (zh) * | 2016-11-30 | 2017-05-31 | 国网山东省电力公司鄄城县供电公司 | 用于电力检修的车辆管理方法、装置及系统 |
CN108091130A (zh) * | 2018-01-22 | 2018-05-29 | 苏州清研捷运信息科技有限公司 | 一种指定线路运输车辆的运输路线监控系统及方法 |
US11507906B2 (en) | 2019-08-22 | 2022-11-22 | Toyota Motor North America, Inc. | Ride-sharing safety system |
CN110991334A (zh) * | 2019-11-29 | 2020-04-10 | 上海能塔智能科技有限公司 | 校车的用车人员监管处理方法、装置、电子设备与介质 |
CN111127935A (zh) * | 2019-12-13 | 2020-05-08 | 广东电网有限责任公司 | 一种公车调度路径分析方法及系统 |
CN111222823A (zh) * | 2020-01-09 | 2020-06-02 | 郭艺斌 | 基于物联网的车辆定位方法、装置、计算机和存储介质 |
CN111222823B (zh) * | 2020-01-09 | 2021-06-11 | 山东广安车联科技股份有限公司 | 基于物联网的车辆定位方法、装置、计算机和存储介质 |
CN111415524A (zh) * | 2020-03-31 | 2020-07-14 | 桂林电子科技大学 | 一种针对疲劳驾驶的智能处理方法及系统 |
CN116878529A (zh) * | 2023-07-10 | 2023-10-13 | 上海朗尚传感技术有限公司 | 一种基于北斗技术的双天线导航路线偏离预警系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103942972B (zh) | 2016-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103942972B (zh) | 一种实时检测校车偏离行驶路线并自动报警的方法 | |
CN105554878B (zh) | 停车管理方法、车载蓝牙标签、基站及系统 | |
WO2021175062A1 (zh) | 服务提供方法、装置、终端及存储介质 | |
KR100252405B1 (ko) | 이동용단말기의위치표시시스템 | |
CN111405466B (zh) | 站点识别方法、到站提醒方法、装置、终端及存储介质 | |
CN111785019B (zh) | 一种基于v2x的车辆交通数据生成方法、系统及存储介质 | |
CN101882373B (zh) | 车队维持方法及车载通信系统 | |
CN104123843B (zh) | 一种非法营运车辆检测系统及方法 | |
CN104537880A (zh) | 停车管理系统、方法、定位装置及停车方法 | |
CN107808546A (zh) | 室内停车定位方法、系统及计算机可读存储介质 | |
KR101661058B1 (ko) | 주차 차량 위치 안내 시스템 | |
CN107274705B (zh) | 公交车位置的确定方法、装置和系统 | |
JP6086817B2 (ja) | 混雑状況把握装置、混雑状況把握方法および混雑状況把握プログラム | |
CN210893162U (zh) | 一种室内外一体化定位系统 | |
CN104796981B (zh) | 基于多个基站标识的安全区域报警方法、系统及移动终端 | |
CN207993110U (zh) | 一种景区监测系统 | |
JP2020091652A (ja) | 情報提供システム、サーバ、及びコンピュータプログラム | |
JPH09180098A (ja) | 車両情報管理システム | |
CN105843137A (zh) | 一种一体化监控方法及系统 | |
JP4251710B2 (ja) | 移動体通信装置 | |
CN106649872A (zh) | 一种政务信息发布方法、装置和系统 | |
CN106940837A (zh) | 一种工程机械车辆工作区域的管控方法 | |
JPWO2018179436A1 (ja) | 探索支援プログラム、探索支援方法および探索支援装置 | |
CN104422440A (zh) | 一种导航方法及系统 | |
CN113276887B (zh) | 一种识别交通管理人员的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160120 Termination date: 20160415 |
|
CF01 | Termination of patent right due to non-payment of annual fee |