CN116032413B - 通信方法、装置、车辆和存储介质 - Google Patents
通信方法、装置、车辆和存储介质 Download PDFInfo
- Publication number
- CN116032413B CN116032413B CN202310325097.2A CN202310325097A CN116032413B CN 116032413 B CN116032413 B CN 116032413B CN 202310325097 A CN202310325097 A CN 202310325097A CN 116032413 B CN116032413 B CN 116032413B
- Authority
- CN
- China
- Prior art keywords
- time
- node
- heartbeat data
- synchronization
- broadcast
- 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.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本公开提出一种通信方法、装置、车辆和存储介质,其中,方法包括:获取操作系统的同步时间,根据同步时间和第一节点的数据库中存储的接收到各个节点的心跳数据的时间,确定各个时间差值,响应于任一个时间差值大于设定时长,更新数据库中各个节点的心跳数据的时间为同步时间,并控制第一节点的发包模块广播所第一节点的心跳数据。本公开通过比较同步时间和数据库中存储的各个节点的心跳数据的时间之间的差值,确定是否存在较大的时间跳变,在确定存在时间跳变的情况下,广播第一节点的心跳数据,避免了第一节点被其它节点误删除,并更新数据库中各个节点的心跳数据为同步时间,避免第一节点误删除其它节点的数据,避免了节点间的误删除导致的通信中断,提高了通信的可靠性。
Description
技术领域
本公开涉及网络通信和智能网联技术领域,尤其涉及通信方法、装置、车辆和存储介质。
背景技术
在相关技术中,DDS网络在节点发现组网阶段,采用实时发布-订阅协议(Real-time Publish-SubscribeProtocol,RTPS)进行规范,该协议将组网发现过程分为两个阶段,分别为启动发现阶段(Discovery Start-Up Traffic,DSUT)和稳态服务发现阶段(Discovery Steady-State Traffic,DSST)。
然而,在车机系统的场景下,车辆在启动后,车机系统中的各个节点的时间并不统一,需要进行时间同步,而时间同步使得各个节点的时间发生跳变,导致节点的心跳数据发送出现混乱,使得已建立连接的节点间误删除,导致通信中断。
发明内容
为克服相关技术中存在的问题,本公开提供一种通信方法、装置、车辆和存储介质,避免节点间的误删除,保障通信不中断,提高了通信的可靠性。
根据本公开实施例的一方面,提供一种通信方法,包括:
获取第一节点的操作系统的同步时间;
根据所述同步时间和所述第一节点的数据库中存储的接收到各个节点的心跳数据的时间,确定各个时间差值;
响应于任一个所述时间差值大于设定时长,更新所述数据库中各个节点的心跳数据的时间为所述同步时间,并控制所述第一节点的发包模块广播所述第一节点的心跳数据。
根据本公开实施例的另一方面,提供一种通信装置,包括:
获取模块,被配置为获取第一节点的操作系统的同步时间。
确定模块,被配置为根据所述同步时间和所述第一节点的数据库中存储的接收到各个节点的心跳数据的时间,确定各个时间差值。
处理模块,被配置为响应于任一个所述时间差值大于设定时长,更新所述数据库中各个节点的心跳数据的时间为所述同步时间,并控制所述第一节点的发包模块广播所述第一节点的心跳数据。
根据本公开实施例的另一方面,提供一种车辆,包括:
处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:实现前述一方面所述方法的步骤。
本公开的实施例提供的技术方案可以包括以下有益效果:
本公开实施例的通信方法、装置、车辆和存储介质,通过获取操作系统的同步时间,根据同步时间和第一节点的数据库中存储的接收到各个节点的心跳数据的时间,确定各个时间差值,响应于任一个时间差值大于设定时长,更新数据库中各个节点的心跳数据的时间为同步时间,并控制第一节点的发包模块广播所第一节点的心跳数据。本公开通过比较同步时间和数据库中存储的各个节点的心跳数据的时间之间的差值,确定是否存在较大的时间跳变,在确定存在时间跳变的情况下,广播第一节点的心跳数据,避免了第一节点被其它节点误删除,并更新数据库汇总各个节点的心跳数据为同步时间,避免了节点间的误删除导致的通信中断,提高了通信的可靠性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据本公开的一些实施例示出的一种通信方法的流程图;
图2是根据本公开的一些实施例示出的一种通信方法的流程图;
图3是根据本公开的一些实施例示出的一种通信方法的流程图;
图4是根据本公开的一些实施例示出的一种通信装置的框图;
图5是本公开根据一示例性实施例示出的一种车辆500的框图。
具体实施方式
这里将详细地对本公开一些实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。本文所描述的方法、装置和/或系统的各种改变、变型及等同物将在理解本公开之后变得显而易见。例如,本文所描述的操作的顺序仅仅为示例,且并非受限于本文中所阐述的那些顺序,而是除了必须以特定顺序进行的操作之外,如在理解本公开之后变得显而易见的那样可进行改变。另外,为提升清楚性和简洁性,对本领域中已知的特征的描述可被省略。
以下本公开的一些实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据本公开的一些实施例示出的一种通信方法的流程图,该通信方法应用于分布式系统中的多个节点中的第一节点的通信中间件(Data Distribution Service,DDS)模块,其中,分布式系统,例如为车机系统、机器人系统等,该分布式系统符合国际标准(Real-time Publish/Subscribe,RTPS)的要求。在车机系统场景中,车机系统包含多个节点,例如,座舱控制器节点、自动驾驶控制器节点和车载网联系统控制器节点等等。在每一个节点中包含DDS模块,DDS模块用于执行本公开的通信方法,以避免节点间的误删除,避免通信中断,提高节点间通信的可靠性。
如图1所示,包括以下步骤:
步骤101,获取第一节点的操作系统的同步时间。
在车机系统中,车辆在启动后会进行时间同步,即车辆中的网联子系统可从全球导航卫星系统(Global Navigation Satellite System,GNSS)获取真实的实时时钟(Real-time Clock,RTC)时间,或者通过以太网网络授时获取RTC时间,又或者时通过电子设备获取准确的RTC时间,该RTC时间即同步时间,准确性高,进而将同步时间发送给第一节点的操作系统,使得第一节点的操作系统获取到同步时间。进而,第一节点的DDS模块从第一节点的操作系统中获取同步时间。
其中,作为本公开实施例的一种实现方式,第一节点的DDS模块接收第一节点的操作系统的广播消息,广播消息中携带了同步时间,从而,对广播消息进行解析,可得到同步时间,实现了将同步时间从第一节点的操作系统同步至DDS模块,避免了相关技术中时间同步仅对节点的底层操作系统进行时间同步,而不对DDS模块进行时间同步,从而避免第一节点无法准时广播心跳数据导致节点被误删除。
作为本公开实施例的另一种实现方式,第一节点的DDS模块可按照设定的周期向第一节点的操作系统发送请求消息,以使得第一节点的操作系统在获取到同步时间后,向DDS模块发送携带同步时间反馈信息,实现了将同步时间从第一节点的操作系统同步至DDS模块。
步骤102,根据同步时间和第一节点的数据库中存储的接收到各个节点的心跳数据的时间,确定各个时间差值。
本公开实施例中,第一节点的数据库中存储了最近一次接收到各个其它节点的心跳数据的时间,即在获取到第一节点的操作系统的同步时间之前接收到各个节点的心跳数据的时间。进而,将同步时间和各个节点的心跳数据的时间进行比对,确定各个节点的心跳数据的时间和同步时间的差值,该差值用于指示是否存在较大的时间跳变。
其中,心跳数据,是各个节点按照设定的周期发送的心跳包,例如,周期为10秒,在稳态服务发现阶段,节点间通过周期性发送心跳数据向和自己建立连接的节点指示自己处于存活状态,以维持节点间的稳态连接状态。
本公开实施例中,针对第一节点的数据库中存储的每一个节点的心跳数据,将同步时间和该节点的心跳数据的时间比较,确定时间差值,具体地:
在一种场景下,同步时间晚于该节点的心跳数据的时间,将同步时间和心跳数据的时间的差值,作为时间差值。例如,第一节点A的时间为3点,存储的节点B的心跳数据的时间为2点58分,获取到的同步时间为4点,则4点晚于2点58分,则将4点与2点58分的差值,即将1小时2分钟作为时间差值。
在另一种场景下,同步时间早于该节点的心跳数据的时间,将该节点的心跳数据的时间和同步时间的差值,作为时间差值。例如,第一节点A的时间为3点,存储的节点B的心跳数据的时间为2点58分,获取到的同步时间为2点,则2点早于2点58分,则将2点58分与2点的差值,即将58分钟作为时间差值。
同理,可确定任一节点的心跳数据的时间和同步时间之间的差值,原理相同,此处不一一列举。
步骤103,响应于任一个时间差值大于设定时长,更新数据库中各个节点的心跳数据的时间为同步时间,并控制第一节点的发包模块广播第一节点的心跳数据。
其中,设定时长,为节点的存活时长,节点的存活时长,用于指示节点的存活状态,例如,节点A和节点B建立了连接,若节点A在节点B对应的设定时长内未收到节点B发送的心跳数据,则节点A认为节点B存在异常,无法和节点B进行通信,则将节点B的心跳数据从节点A的数据库中删除,从而节点A和节点B间的通信中断。设定时长,可基于需求进行灵活设定,例如,设定时长为100秒,本实施例中不进行限定。其中,心跳数据,可以为心跳包,心跳包为通信双方按照协议规定设置的内容。
本公开实施例中,将第一节点的数据库中存储的各个节点的心跳数据对应的时间差值,分别和设定时长比较,在存在至少一个时间差值大于设定时长的情况下,或者说存在任一个时间差值大于设定时长的情况下,说明同步时间使得第一节点的时间存在较大的跳变,而第一节点的时间存在跳变,会导致节点间误删除,下面针对两种场景分别进行说明:
在一种场景下,同步时间早于第一节点中存储的各个节点的心跳数据的时间,则时间跳变指示第一节点的时间后退,例如,第一节点的时间为3点,同步时间为2点,第一节点的数据库中存储的节点B的时间为2点58分,而第一节点中设置了第一节点发送心跳数据的周期为10秒,即每10秒发送一次心跳数据,从而第一节点中设置的用于触发第一节点发送心跳数据的时间则为3点0分10秒,也就是说第一节点中设置了计时器,在时间到达3点0分10秒的情况下,触发第一节点广播心跳数据。而第一节点的时间因时间同步从3点跳变为2点,而计时器设置为3点0分10秒触发,也就是说第一节点中的计时器会在一个小时加10秒后触发,该时长远大于设定时长100秒,会导致其它节点在第一节点A对应的存活时间内无法收到第一节点A广播的心跳数据,误认为第一节点A出现异常或已经下线,从而将第一节点A误删除,为了避免第一节点A被误删除的情况发生,作为一种实现方式,在时间跳变较大的情况下,通过DDS模块向发包模块发送控制指令,其中,控制指令,用于控制发包模块广播心跳数据,以使得和第一节点A建立连接的其它节点可以接收到第一节点A广播的心跳数据,避免第一节点被其它节点误删除。
同时,时间差值大于设定时长,会使得第一节点认为数据库中各个节点的心跳数据的时间和当前时间差距较大,存储的时间存在异常或认为数据过期,而删除认为过期的节点的心跳数据,导致第一节点将其它节点的数据误删除,例如,第一节点A中存储的节点B的心跳数据的时间为2点58分,而时间同步后为2点,则第一节点A认为存储的节点B的心跳数据的时间异常,从而删除第一节点A的数据库中节点B的心跳数据,使得第一节点和被删除节点间连接断开,无法进行正常的通信,因此,更新数据库中各个节点的心跳数据的时间为同步时间,实现了避免第一节点误删除数据库中其它节点的心跳数据,保证通信正常进行。
在第二种场景下,同步时间晚于第一节点中存储的各个节点的心跳数据的时间,则时间跳变指示第一节点的时间往前跳变,例如,第一节点A的时间为3点,同步时间为4点,第一节点A的数据库中存储的节点B的时间为2点58分,而第一节点A中设置了第一节点A发送心跳数据的周期为10秒,即每10秒发送一次心跳数据,从而第一节点A中设置的用于触发第一节点发送心跳数据的时间则为3点0分10秒,也就是说第一节点A中设置了计时器,在时间到达3点0分10秒的情况下,触发第一节点A广播心跳数据。而第一节点A的时间因时间同步从3点跳变为4点,而计时器设置为3点0分10秒触发,而当前时间已经为4点,从而计时器无法触发,即第一节点A不会广播心跳数据,导致其它节点在第一节点A对应的存活时间内无法收到第一节点A广播的心跳数据,误认为第一节点A出现异常或已经下线,从而误删除第一节点A,为了避免第一节点A被误删除的情况发生,在时间跳变较大的情况下,通过控制第一节点的发包模块广播第一节点的心跳数据,避免第一节点被误删除。同时,时间差值大于设定时长,会使得第一节点认为数据库中各个节点的心跳数据的时间和当前时间差距较大,例如,第一节点A中存储的节点B的心跳数据的时间为2点58分,而时间同步后为4点,则第一节点认为存储的节点B的心跳数据的时间已经过期,从而删除第一节点的数据库中过期的节点B的心跳数据,导致第一节点中其它节点的数据被误删除,从而第一节点和被删除节点间连接断开,无法进行正常的通信,因此,更新数据库中各个节点的心跳数据的时间为同步时间,实现了避免第一节点误删除数据库中其它节点的心跳数据,保证通信正常进行。
本公开实施例的通信方法中,获取操作系统的同步时间,根据同步时间和第一节点的数据库中存储的接收到各个节点的心跳数据的时间,确定各个时间差值,响应于任一个时间差值大于设定时长,更新数据库中各个节点的心跳数据的时间为同步时间,并控制第一节点的发包模块广播所第一节点的心跳数据。本公开通过比较同步时间和数据库中存储的各个节点的心跳数据的时间之间的差值,确定是否存在较大的时间跳变,在确定存在时间跳变的情况下,广播第一节点的心跳数据,避免了第一节点被其它节点误删除,并更新数据库汇总各个节点的心跳数据为同步时间,避免第一节点误删除其它节点的数据,避免了节点间的误删除导致的通信中断,提高了通信的可靠性。
基于上述实施例,图2是根据本公开的一些实施例示出的一种通信方法的流程图,如图2所示,该方法包括以下步骤:
步骤201,接收第一节点的操作系统的广播消息。
步骤202,对广播消息进行解析,得到同步时间。
本公开实施例中,DDS模块接收第一节点的操作系统的广播消息,对广播消息进行解析,得到广播消息中携带的同步时间,实现了将第一节点的系统时间同步至DDS模块,进而,DDS模块可以基于获取到的同步时间,控制第一节点广播心跳数据并更新数据库中的心跳数据的时间,避免节点间的误删除,保证节点间的通信正常进行,具体地可参照本公开中的相关解释说明,此处不再赘述。
步骤203,根据同步时间和第一节点的数据库中存储的接收到各个节点的心跳数据的时间,确定各个时间差值。
步骤204,响应于任一个时间差值大于设定时长,更新数据库中各个节点的心跳数据的时间为同步时间,并向发包模块发送控制指令。
其中,控制指令,用于控制发包模块广播心跳数据。
本公开实施例中,在确定存在任一个时间差值大于设定时长,即确定第一节点的时间跳变较大的情况下,通过DDS模块向发包模块发送控制指令,以控制发包模块广播第一节点的心跳数据,避免第一节点因为时间同步导致的时间跳变,无法在设定时长内广播心跳数据,导致和第一节点建立连接的其它各个节点误以为第一节点已经死亡而误删除第一节点,保证了通信的正常进行,由于直接控制发包模块进行心跳数据的广播,增加了可靠性。
本公开实施例的通信方法中,通过比较同步时间和数据库中存储的各个节点的心跳数据的时间之间的差值,确定是否存在较大的时间跳变,在确定存在时间跳变的情况下,广播第一节点的心跳数据,避免了第一节点被其它节点误删除,并更新数据库汇总各个节点的心跳数据为同步时间,避免第一节点误删除其它节点的数据,避免了节点间的误删除导致的通信中断,确保了通信的正常进行,而直接控制发包模块进行心跳数据的广播,增加了可靠性。
基于上述实施例,图3是根据本公开的一些实施例示出的一种通信方法的流程图,如图3所示,该方法包括以下步骤:
步骤301,获取第一节点的操作系统的同步时间。
步骤302,根据同步时间和第一节点的数据库中存储的接收到各个节点的心跳数据的时间,确定各个时间差值。
步骤303,响应于任一个时间差值大于设定时长,更新数据库中各个节点的心跳数据的时间为同步时间。
其中,步骤301-步骤303,可参照前述实施例中的解释说明,原理相同,此处不再赘述。
步骤304,获取第一节点进行心跳数据广播的广播周期。
广播周期,指示了第一节点广播心跳数据的间隔,例如,广播周期为10秒。
步骤305,根据同步时间和广播周期,重置第一节点的计时器的时间。
其中,计时器的时间,用于在计时结束时触发第一节点广播心跳数据。
本公开实施例中,由于时间同步,使得第一节点的系统时间变化为同步时间,而第一节点中的计时器的时间是在进行时间同步之前设置的,时间同步,会导致该计时器无法触发或触发时间变化,导致第一节点不能在设定时长,即存活时间内广播心跳数据,因此,本公开中DDS模块根据从系统获取到的同步时间和广播周期,重置第一节点的计时器的时间,以使得重置后计时器可以在设定时长内唤醒发包模块广播心跳数据,避免节点间的误删除。
步骤306,响应于计时器计时结束,控制发包模块广播心跳数据。
例如,第一节点的时间是3点,第一节点的计时器的时间为3点0分10秒,而同步时间是2点,也就是说第一节点的系统时间同步为2点,进而第一节点的DDS模块获取到系统发送的同步时间,利用同步时间2点和广播周期10秒,重置计时器的时间为2点0分10秒,或者为了提高可靠性,重置计时器的时间为2点0分20秒,也就是说在2点0分20秒时计时器计时结束,控制发包模块广播心跳数据,避免一个小时10秒后计时器再计时结果,导致其它节点误以为第一节点无心跳已经掉线,将第一节点删除,避免了节点间通信断开。
需要说明的是,步骤304-306,可以在步骤303中“更新数据库中各个节点的心跳数据的时间为同步时间”的步骤之前执行,也可以在之后执行,或者同步执行,本实施例中不进行限定。
进一步,基于上述实施例,作为一种实现方式,第一节点广播的心跳数据中,携带有同步时间,从而使得分布式系统中的其它节点在接收到第一节点广播的心跳数据的情况下,可以获取到同步时间,进而根据同步时间对各个节点的时间进行同步,使得各个节点的时间同步保持一致,提高了同步效率。同时,各个节点进行时间同步后,可以实现各个节点的日志数据的统一,从而基于任一节点的日志均可以了解其它节点的活跃情况,便于进行日志分析。
本公开实施例的通信方法中,通过比较同步时间和数据库中存储的各个节点的心跳数据的时间之间的差值,确定是否存在较大的时间跳变,在确定存在时间跳变的情况下,广播第一节点的心跳数据,避免了第一节点被其它节点误删除,并更新数据库汇总各个节点的心跳数据为同步时间,避免第一节点误删除其它节点的数据,避免了节点间的误删除导致的通信中断,提高了通信的可靠性。
图4是根据本公开的一些实施例示出的一种通信装置的框图。参照图4,该装置包括获取模块41,确定模块42和处理模块43。
获取模块41,被配置为获取第一节点的操作系统的同步时间。
确定模块42,被配置为根据所述同步时间和所述第一节点的数据库中存储的接收到各个节点的心跳数据的时间,确定各个时间差值。
处理模块43,被配置为响应于任一个所述时间差值大于设定时长,更新所述数据库中各个节点的心跳数据的时间为所述同步时间,并控制所述第一节点的发包模块广播所述第一节点的心跳数据。
进一步,本公开实施例的一种实现方式中,处理模块43,被配置为:
获取所述第一节点进行心跳数据广播的广播周期;
根据所述同步时间和所述广播周期,重置所述第一节点的计时器的时间;其中,所述计时器的时间,用于在计时结束时触发第一节点广播心跳数据;
响应于所述计时器计时结束,控制所述发包模块广播心跳数据。
本公开实施例的一种实现方式中,处理模块43,被配置为:
向所述发包模块发送控制指令;其中,所述控制指令,用于控制所述发包模块广播心跳数据。
本公开实施例的一种实现方式中,获取模块41,被配置为:
接收所述第一节点的操作系统的广播消息;
对所述广播消息进行解析,得到所述同步时间。
本公开实施例的一种实现方式中,确定模块42,被配置为:
针对每一个所述心跳数据的时间,将所述同步时间和所述心跳数据的时间比较;
响应于所述同步时间晚于所述心跳数据的时间,将所述同步时间和所述心跳数据的时间的差值,作为所述时间差值;
响应于所述同步时间早于所述心跳数据的时间,将所述心跳数据的时间和所述同步时间的差值,作为所述时间差值。
本公开实施例的一种实现方式中,所述心跳数据携带所述同步时间,所述同步时间用于所述多个节点中所述第一节点以外的第二节点进行时间同步。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本公开实施例的通信装置中,获取操作系统的同步时间,根据同步时间和第一节点的数据库中存储的接收到各个节点的心跳数据的时间,确定各个时间差值,响应于任一个时间差值大于设定时长,更新数据库中各个节点的心跳数据的时间为同步时间,并控制第一节点的发包模块广播所第一节点的心跳数据。本公开通过比较同步时间和数据库中存储的各个节点的心跳数据的时间之间的差值,确定是否存在较大的时间跳变,在确定存在时间跳变的情况下,广播第一节点的心跳数据,避免了第一节点被其它节点误删除,并更新数据库汇总各个节点的心跳数据为同步时间,避免第一节点误删除其它节点的数据,避免了节点间的误删除导致的通信中断,提高了通信的可靠性。
图5是根据一示例性实施例示出的一种车辆500的框图。例如,车辆500可以是混合动力车辆,也可以是非混合动力车辆、电动车辆、燃料电池车辆或者其他类型的车辆。车辆500可以是自动驾驶车辆、半自动驾驶车辆或者非自动驾驶车辆。
参照图5,车辆500可包括各种子系统,例如,信息娱乐系统510、感知系统520、决策控制系统530、驱动系统540以及计算平台550。其中,车辆500还可以包括更多或更少的子系统,并且每个子系统都可包括多个部件。另外,车辆500的每个子系统之间和每个部件之间可以通过有线或者无线的方式实现互连。
在一些实施例中,信息娱乐系统510可以包括通信系统,娱乐系统以及导航系统等。
感知系统520可以包括若干种传感器,用于感测车辆500周边的环境的信息。例如,感知系统520可包括全球定位系统(全球定位系统可以是GPS系统,也可以是北斗系统或者其他定位系统)、惯性测量单元(inertial measurement unit,IMU)、激光雷达、毫米波雷达、超声雷达以及摄像装置。
决策控制系统530可以包括计算系统、整车控制器、转向系统、油门以及制动系统。
驱动系统540可以包括为车辆500提供动力运动的组件。在一个实施例中,驱动系统540可以包括引擎、能量源、传动系统和车轮。引擎可以是内燃机、电动机、空气压缩引擎中的一种或者多种的组合。引擎能够将能量源提供的能量转换成机械能量。
车辆500的部分或所有功能受计算平台550控制。计算平台550可包括至少一个处理器551和存储器552,处理器551可以执行存储在存储器552中的指令553。
处理器551可以是任何常规的处理器,诸如商业可获得的CPU。处理器还可以包括诸如图像处理器(Graphic Process Unit,GPU),现场可编程门阵列(Field ProgrammableGate Array,FPGA)、片上系统(System on Chip,SOC)、专用集成芯片(ApplicationSpecific Integrated Circuit,ASIC)或它们的组合。
存储器552可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
除了指令553以外,存储器552还可存储数据,例如道路地图,路线信息,车辆的位置、方向、速度等数据。存储器552存储的数据可以被计算平台550使用。
在本公开实施例中,处理器551可以执行指令553,以完成上述的方法的全部或部分步骤。
本公开还提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,实现本公开前述方法实施例提供的方法的步骤。
本公开还提供一种车辆,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:实现前述方法实施例所述方法的步骤。
此外,在本文中使用词语“示例性的”以表示充当示例、实例、示图。在本文中被描述为“示例性的”任何方面或设计都不一定理解为与其他方面或设计相比是有利的。相反,使用词语示例性的旨在以具体的方式呈现概念。如在本文中所使用的,术语“或”旨在表示包括性的“或”而不是排他性的“或”。即,除非另外指定,或者从上下文中清楚,否则“X应用A或B”旨在表示自然的包括性排列中的任何一种排列。即,如果X应用A;X应用B;或者X应用A和B两者,则“X应用A或B”在前述实例中的任何一个实例下都满足。另外,除非另外指定或者从上下文中清楚指向单数形式,否则如在该申请和所附权利要求中所使用的冠词“一”和“一个”通常被理解为表示“一个或多个”。
同样,尽管已经关于一个或多个实现示出并描述了本公开,但是在阅读并理解了该说明书和附图之后,本领域技术人员将想到等同的变型和修改。本公开包括所有这样的修改和变型,并且仅由权利要求的范围来限制。特别关于由上文所描述的组件(例如,元件、资源等)执行的各种功能,除非另外指出,否则用于描述这样的组件的术语旨在对应于执行所描述的组件的具体功能的任何组件(功能上等价的),即使结构上不等价于所公开的结构。另外,尽管可以已经关于几个实现中的仅仅一个而公开了本公开的特定的特征,但是如可以是期望的并且有利于任何给定的或特定的应用的那样,这样的特征可以与其它实现的一个或多个其它特征相结合。此外,就在具体实施方式或者权利要求中所使用的“包括”、“拥有”、“具有”、“有”、或其变型而言,这样的术语旨在作为类似于术语“包含”的方式是包括性的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
应当理解,除非另外特别指出,否则本文描述的各种本公开的一些实施例的特征可以彼此组合。如在本文中使用的,术语“和/或”包括相关所列项中的任一者以及任何两者或更多者的任何组合;类似地,“.......中的至少一个”包括相关所列项中的任一者以及任何两者或更多者的任何组合。
Claims (8)
1.一种通信方法,其特征在于,包括:
获取第一节点的操作系统的同步时间;
根据所述同步时间和所述第一节点的数据库中存储的接收到各个节点的心跳数据的时间,确定各个时间差值,所述时间差值用于指示是否存在较大的时间跳变;
响应于任一个所述时间差值大于设定时长,更新所述数据库中各个节点的心跳数据的时间为所述同步时间,并控制所述第一节点的发包模块广播所述第一节点的心跳数据;
所述控制所述第一节点的发包模块广播所述第一节点的心跳数据,包括:
获取所述第一节点进行心跳数据广播的广播周期;
根据所述同步时间和所述广播周期,重置所述第一节点的计时器的时间;其中,所述计时器的时间,用于在计时结束时触发第一节点广播心跳数据;
响应于所述计时器计时结束,控制所述发包模块广播心跳数据。
2.如权利要求1所述的方法,其特征在于,所述控制所述第一节点的发包模块广播所述第一节点的心跳数据,包括:
向所述发包模块发送控制指令;其中,所述控制指令,用于控制所述发包模块广播心跳数据。
3.如权利要求1所述的方法,其特征在于,所述获取所述第一节点的操作系统的同步时间,包括:
接收所述第一节点的操作系统的广播消息;
对所述广播消息进行解析,得到所述同步时间。
4.如权利要求1-3任一项所述的方法,其特征在于,所述根据所述同步时间和所述第一节点的数据库中存储的接收到的各个节点的心跳数据的时间,确定各个时间差值,包括:
针对每一个所述心跳数据的时间,将所述同步时间和所述心跳数据的时间比较;
响应于所述同步时间晚于所述心跳数据的时间,将所述同步时间和所述心跳数据的时间的差值,作为所述时间差值;
响应于所述同步时间早于所述心跳数据的时间,将所述心跳数据的时间和所述同步时间的差值,作为所述时间差值。
5.如权利要求1-3任一项所述的方法,其特征在于,所述心跳数据携带所述同步时间,所述同步时间用于第二节点进行时间同步;所述第二节点,是分布式系统中包括的多个节点中所述第一节点以外的节点。
6.一种通信装置,其特征在于,包括:
获取模块,被配置为获取第一节点的操作系统的同步时间;
确定模块,被配置为根据所述同步时间和所述第一节点的数据库中存储的接收到各个节点的心跳数据的时间,确定各个时间差值,所述时间差值用于指示是否存在较大的时间跳变;
处理模块,被配置为响应于任一个所述时间差值大于设定时长,更新所述数据库中各个节点的心跳数据的时间为所述同步时间,并控制所述第一节点的发包模块广播所述第一节点的心跳数据;
所述处理模块,被配置为:
获取所述第一节点进行心跳数据广播的广播周期;
根据所述同步时间和所述广播周期,重置所述第一节点的计时器的时间;其中,所述计时器的时间,用于在计时结束时触发第一节点广播心跳数据;
响应于所述计时器计时结束,控制所述发包模块广播心跳数据。
7.一种车辆,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
实现权利要求1至5中任一项所述方法的步骤。
8.一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种通信方法,所述方法包括:
获取第一节点的操作系统的同步时间;
根据所述同步时间和所述第一节点的数据库中存储的接收到各个节点的心跳数据的时间,确定各个时间差值,所述时间差值用于指示是否存在较大的时间跳变;
响应于任一个所述时间差值大于设定时长,更新所述数据库中各个节点的心跳数据的时间为所述同步时间,并控制所述第一节点的发包模块广播所述第一节点的心跳数据;
其中,所述控制所述第一节点的发包模块广播所述第一节点的心跳数据,包括:
获取所述第一节点进行心跳数据广播的广播周期;
根据所述同步时间和所述广播周期,重置所述第一节点的计时器的时间;其中,所述计时器的时间,用于在计时结束时触发第一节点广播心跳数据;
响应于所述计时器计时结束,控制所述发包模块广播心跳数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310325097.2A CN116032413B (zh) | 2023-03-30 | 2023-03-30 | 通信方法、装置、车辆和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310325097.2A CN116032413B (zh) | 2023-03-30 | 2023-03-30 | 通信方法、装置、车辆和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116032413A CN116032413A (zh) | 2023-04-28 |
CN116032413B true CN116032413B (zh) | 2023-06-30 |
Family
ID=86074450
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310325097.2A Active CN116032413B (zh) | 2023-03-30 | 2023-03-30 | 通信方法、装置、车辆和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116032413B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110445570A (zh) * | 2019-07-25 | 2019-11-12 | 腾讯科技(深圳)有限公司 | 一种时间校准方法、装置及计算机存储介质 |
CN110855394A (zh) * | 2018-08-21 | 2020-02-28 | 杭州海康威视系统技术有限公司 | 时间校正方法、装置、系统、设备、及存储介质 |
CN111788851A (zh) * | 2018-03-05 | 2020-10-16 | 三菱电机株式会社 | 车辆和用于控制车辆的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7921316B2 (en) * | 2007-09-11 | 2011-04-05 | International Business Machines Corporation | Cluster-wide system clock in a multi-tiered full-graph interconnect architecture |
-
2023
- 2023-03-30 CN CN202310325097.2A patent/CN116032413B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111788851A (zh) * | 2018-03-05 | 2020-10-16 | 三菱电机株式会社 | 车辆和用于控制车辆的方法 |
CN110855394A (zh) * | 2018-08-21 | 2020-02-28 | 杭州海康威视系统技术有限公司 | 时间校正方法、装置、系统、设备、及存储介质 |
CN110445570A (zh) * | 2019-07-25 | 2019-11-12 | 腾讯科技(深圳)有限公司 | 一种时间校准方法、装置及计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116032413A (zh) | 2023-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10101747B2 (en) | Formatting sensor data for use in autonomous vehicle communications platform | |
US20190066403A1 (en) | Data collection system and data center | |
EP2621230A2 (en) | Position information sharing method, positioning apparatus and system | |
US11842184B2 (en) | Vehicle software deployment system | |
CN107977215B (zh) | 车载系统升级方法及装置 | |
US11170585B2 (en) | Vehicle fault diagnosis and analysis based on augmented design failure mode and effect analysis (DFMEA) data | |
US10928522B2 (en) | Method and device for determining navigation information | |
CN111829515A (zh) | 一种时间同步方法、装置、车辆及存储介质 | |
CN113329070A (zh) | 一种车辆运行数据的获取方法、装置、设备及存储介质 | |
CN111301433A (zh) | 一种自动驾驶车辆的计算节点的管理系统、方法和装置 | |
CN116032413B (zh) | 通信方法、装置、车辆和存储介质 | |
CN116366780B (zh) | 用于帧同步的帧序号确定方法、装置及车辆 | |
CN116566534A (zh) | 时间的同步方法、装置、车辆和可读存储介质 | |
CN110281953B (zh) | 一种无人驾驶车辆的人机交互方法和交互系统 | |
EP4346187A1 (en) | Ota upgrade method and device, and computer-readable storage medium | |
CN112394918B (zh) | 一种自动驾驶应用的开发方法及处理方法、系统 | |
CN109286916A (zh) | 车辆无线单元及其操作方法 | |
CN112512111A (zh) | 一种时间的确定方法及装置、信号的发送方法及装置 | |
WO2018214921A1 (en) | Method system and computer program for communication between electronic control units | |
US20220139223A1 (en) | Systems and methods for vehicle pose prediction | |
CN116668602B (zh) | 相机图像同步方法、装置、车辆及存储介质 | |
CN117527123A (zh) | 时间同步方法、装置、车辆及存储介质 | |
US11449090B2 (en) | Synchronizing sensing systems | |
CN117970996A (zh) | 域控制器的时间同步方法和装置、存储介质 | |
CN117728913A (zh) | 时间同步的方法、装置、存储介质和车辆 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |