CN112673609A - 一种数据传输系统、数据传输方法,智能车以及装置 - Google Patents
一种数据传输系统、数据传输方法,智能车以及装置 Download PDFInfo
- Publication number
- CN112673609A CN112673609A CN202080004904.5A CN202080004904A CN112673609A CN 112673609 A CN112673609 A CN 112673609A CN 202080004904 A CN202080004904 A CN 202080004904A CN 112673609 A CN112673609 A CN 112673609A
- Authority
- CN
- China
- Prior art keywords
- ecu
- node
- interface
- software package
- ota server
- 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
- 238000000034 method Methods 0.000 title claims abstract description 114
- 230000005540 biological transmission Effects 0.000 title claims abstract description 68
- 230000004044 response Effects 0.000 claims description 34
- 230000008569 process Effects 0.000 abstract description 37
- 238000012545 processing Methods 0.000 abstract description 17
- 238000005516 engineering process Methods 0.000 abstract description 11
- 230000015654 memory Effects 0.000 description 47
- 238000004891 communication Methods 0.000 description 14
- 238000007726 management method Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 239000002699 waste material Substances 0.000 description 8
- 238000011161 development Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000001994 activation Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/50—Service provisioning or reconfiguring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
- B60R16/02—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
- B60R16/023—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
- B60R16/0231—Circuits relating to the driving or the functioning of the vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
- H04W8/24—Transfer of terminal data
- H04W8/245—Transfer of terminal data from a network towards a terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/1016—IP multimedia subsystem [IMS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Automation & Control Theory (AREA)
- Mechanical Engineering (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
- Multimedia (AREA)
Abstract
本申请实施例公开了一种数据传输系统,包括空中下载OTA服务器、主电子控制单元ECU和节点ECU。OTA服务器,用于调用主ECU的第一接口。主ECU,用于响应于OTA服务器调用第一接口,获取目标软件包的大小。主ECU,还用于调用节点ECU的第二接口。节点ECU,用于响应于主ECU调用第二接口,获取目标软件包的大小,并检查节点ECU的剩余存储空间,剩余存储空间不小于目标软件包的大小时,接收OTA服务器发送的目标软件包。本申请提供的方案,可以应用在智能汽车、网联汽车、新能源汽车、自动驾驶汽车上。通过本申请提供的方案,在通过OTA技术实现车内软件升级的过程中,减少对主ECU的存储能力以及处理能力的依赖,提升升级效率。
Description
技术领域
本申请涉及车辆网络技术领域,尤其涉及一种数据传输系统、数据传输方法,智能车以及装置。
背景技术
汽车开放系统架构(Automotive Open System Architecture,AutoSar),是由全球汽车制造商、部件供应商及电子软件系统公司联合建立,是一个开放的、标准化的软件架构。是对汽车技术开发一百多年来的经验总结。AutoSar定义了一系列系统服务接口,利用这些接口可以实现不同软件的兼容互通和互操作,简化了汽车软件的开发,方便软件在不同车型上的部署。
在AutoSar中,可以通过空中下载(over the air,OTA)技术实现汽车内软件的升级。可以通过OTA技术将云端服务器中的软件包下载到本地。由于汽车内包括多个电子控制单元(electronic control unit,ECU),多个ECU都有软件升级的需求,需要在多个ECU中的至少一个ECU上安装升级配置管理主控(update and configuration management master,UCM Master)模块,在其它有软件升级需求的ECU上安装升级配置管理(update andconfiguration management,UCM)模块。通过OTA技术将云端服务器中的软件包下载到安装有UCM Master模块的ECU,再通过安装有UCM Master模块的ECU将软件包分发给多个安装有UCM模块的ECU,以完成整车的软件升级。
发明内容
本申请实施例提供一种数据传输系统,数据传输方法,智能车以及装置。通过本申请提供的方案,在通过OTA技术实现车内软件升级的过程中,减少对主ECU的存储能力以及处理能力的依赖,提升升级的效率。
为达到上述目的,本申请实施例提供如下技术方案:
本申请第一方面提供一种数据传输系统,该数据传输系统包括空中下载OTA服务器、主电子控制单元ECU和节点ECU。OTA服务器,用于调用主ECU的第一接口。可以将接口理解为第一设备与第二设备之间的交互方法和规则。主ECU,用于响应于OTA服务器调用第一接口,获取目标软件包的大小,本申请有时也将目标软件包简称为软件包,或者将目标软件包称为升级包或者软件升级包,软件包中包括用于节点ECU升级的数据。即OTA服务器通过调用主ECU的第一接口,可以将目标软件包的大小向主ECU发送。主ECU,还用于调用节点ECU的第二接口。节点ECU,用于响应于主ECU调用第二接口,获取目标软件包的大小,并检查节点ECU的剩余存储空间,剩余存储空间不小于目标软件包的大小时,接收OTA服务器发送的目标软件包。本申请提供的数据传输系统可以是AutoSar,当本申请提供的数据传输系统是AutoSar时,主ECU是指车内ECU中安装有UCM Master模块的ECU,节点ECU是指车内ECU中安装有UCM模块的ECU,接口也可以理解为第一设备的第一模块与第二设备的第二模块之间的交互方法和规则。在本申请提供的方案中,OTA服务器可以通过多种方式获知是否向第一ECU发送第一ECU的软件包。由第一方面可知,第一方面提供的方案节点ECU的目标软件包由OTA服务器直接发送给节点ECU,不再需要主ECU缓存节点ECU的软件包,也无需主ECU转发节点ECU的升级包,通过这样的方式,主ECU无需有较高的存储空间和处理性能。在通过OTA技术实现车内软件升级的过程中,减少对主ECU的存储能力以及处理能力的依赖。
可选地,结合上述第一方面,在第一种可能的实施方式中,节点ECU,还用于向主ECU返回第一调用结果,第一调用结果包括第一参数值,第一参数值用于指示节点ECU的剩余存储空间不小于目标软件包的大小。主ECU,还用于获取到第一参数值时,调用OTA服务器的第三接口。OTA服务器,还用于响应于主ECU调用第三接口,向节点ECU发送目标软件包。由第一方面第一种可能的实施方式可知,给出了一种具体的方式使OTA服务器获知直接向节点ECU发送目标软件包。可以通过在第一调用结果中增加第一参数值的方式,使OTA服务器获知直接向节点ECU发送目标软件包。
可选地,结合上述第一方面第一种可能的实施方式,在第二种可能的实施方式中,第二接口是开始传输TransferStart接口。TransferStart接口是AutoSar中定义的接口。在第一方面第二种可能的实施方式中,在现有的AutoSar定义的TransferStart接口的调用结果中增加一个参数,可以通过该参数指示OTA服务器向节点ECU发送目标软件包。由第一方面第二种可能的实施方式可知,这种方案对现有的AutoSar规定的软件升级的流程改动很小,在节点ECU的TransferStart接口的调用结果中增加一个参数,并将该参数反馈给OTA服务器,使OTA服务器获知可以进行分布式下载,将节点ECU的目标软件包直接发送给节点ECU,无需经过主ECU。
可选地,结合上述第一方面或第一方面第一种或第一方面第二种可能的实施方式,在第三种可能的实施方式中,节点ECU的数量为N,N为大于1的整数。主ECU,具体用于获取到N个第一参数值时,调用OTA服务器的第三接口。由第一方面第三种可能的实施方式可知,当数据传输系统中包括多个节点ECU时,主ECU获取到多个节点ECU中的每个节点ECU的剩余存储空间均不小于各自的软件包的大小时,才调用OTA服务器的第三接口,使OTA服务器向节点ECU发送各自的软件包。OTA服务器的第三接口被调用后,可以分别向每个节点ECU发送各自的软件包,也可以同时向多个节点ECU发送各自的软件包。通过第一方面第三种可能的实施方式可知,使主ECU提前获取所有的节点ECU的剩余存储空间是否都足够,当所有的节点ECU的剩余存储空间都足够存储各自的软件包时,再传输软件包,防止下载过程中由于部分节点ECU的资源不足导致升级失败,减少由此导致的用户流量消耗和资源浪费。此外,在这种实施方式中,可以将第二接口理解为本方案在AutoSar中新定义的一个接口,主ECU可以第一调用多个节点ECU的第二接口,一次获取多个第一调用结果。
可选地,结合上述第一方面或第一方面第一种或第一方面第二种可能的实施方式,在第四种可能的实施方式中,节点ECU的数量为N,N为大于1的整数。主ECU,具体用于获取到M个第一参数值时,不调用OTA服务器的第三接口,M为小于N且大于1的整数。由第一方面第三种可能的实施方式可知,主ECU没有获取到多个节点ECU中的每个节点ECU的剩余存储空间都不小于各自的软件包大小时,就不再调用OTA服务器的第三接口,即如果多个节点ECU中有部分节点ECU的剩余存储空间不足以存储其软件包时,OTA服务器不向多个节点ECU中的任何一个节点ECU发送器软件包。防止下载过程中由于部分节点ECU的资源不足导致升级失败,减少由此导致的用户流量消耗和资源浪费。
可选地,结合上述第一方面,在第五种可能的实施方式中,主ECU,还用于响应于OTA服务器调用第一接口,获取目标软件包的下载地址。节点ECU,还用于向主ECU返回第一调用结果,第一调用结果包括第一参数值,第一参数值用于指示节点ECU的剩余存储空间不小于目标软件包的大小。由第一方面第四种可能的实施方式可知,给出了一种具体的方式使OTA服务器获知直接向节点ECU发送目标软件包,OTA服务器可以向主ECU发送节点ECU的目标软件包的下载地址,当节点ECU的剩余存储空间足够存储其目标软件包时,主ECU向节点ECU发送下载地址,使节点ECU可以根据下载地址请求OTA服务器发送该节点ECU的目标软件包。
可选地,结合上述第一方面第五种可能的实施方式,在第六种可能的实施方式中,第一接口是传输整车软件包TransferVehiclePackage接口。TransferVehiclePackage接口是AutoSar中定义的接口。第一方面第六种可能的实施方式中,本方案在现有的TransferVehiclePackage接口中增加目标软件包的下载地址,使主ECU可以通过TransferVehiclePackage接口获取到目标软件包的下载地址。给出了一种具体的基于AutoSar,实现OTA服务器直接向节点ECU发送软件包的方式,增加方案的多样性。
可选地,结合上述第一方面第五种或第一方面第六种可能的实施方式,在第七种可能的实施方式中,节点ECU的数量为N,N为大于1的整数。主ECU,具体用于获取到N个第一参数值时,调用节点ECU的第四接口。由第一方面第七种可能的实施方式可知,当数据传输系统中包括多个节点ECU时,主ECU获取到多个节点ECU中的每个节点ECU的剩余存储空间均不小于各自的软件包的大小时,才调用节点ECU的第四接口,使节点ECU获取其软件包的下载地址。主ECU获取到多个节点ECU中的每个节点ECU的剩余存储空间均不小于各自的软件包的大小时,可以按照从OTA处获取的发送软件包的顺序依次使每个节点ECU获取其软件包的下载地址,也可以同时向多个节点ECU发送各自的软件包的下载地址。由第一方面第七种可能的实施方式可知,当所有的节点ECU的剩余存储空间都足够存储各自的软件包时,再传输软件包,防止下载过程中由于部分节点ECU的资源不足导致升级失败,减少由此导致的用户流量消耗和资源浪费。
可选地,结合上述第一方面第五种或第一方面第六种可能的实施方式,在第八种可能的实施方式中,节点ECU的数量为N,N为大于1的整数。主ECU,具体用于获取到M个第一参数值时,不调用节点ECU的第四接口,M为小于N且大于1的整数。由第一方面第八种可能的实施方式可知,主ECU没有获取到多个节点ECU中的每个节点ECU的剩余存储空间都不小于各自的软件包大小时,就不再节点ECU的第四接口,即如果多个节点ECU中有部分节点ECU的剩余存储空间不足以存储其软件包时,主ECU不向多个节点ECU中的任何一个节点发送其软件包的下载地址,防止下载过程中由于部分节点ECU的资源不足导致升级失败,减少由此导致的用户流量消耗和资源浪费。
可选地,结合上述第一方面或第一方面第一种至第一方面第六种可能的实施方式,在第九种可能的实施方式中,数据传输系统是基于AutoSar的数据传输系统。
可选地,结合上述第一方面或第一方面第一种至第一方面第六种可能的实施方式,在第十种可能的实施方式中,节点ECU,还用于发送提示消息,所述提示消息用于指示所述节点ECU从OTA服务器中下载所述目标软件包。
可选地,结合上述第一方面或第一方面第一种至第一方面第六种可能的实施方式,在第十一种可能的实施方式中,主ECU,还用于发送提示消息,提示消息用于指示节点ECU从OTA服务器中下载目标软件包。
本申请第二方面提供一种空中下载OTA服务器,OTA服务器包括升级配置管理UCM模块,UCM模块,用于调用主ECU的第一接口,以使主ECU响应于OTA服务器调用第一接口,获取目标软件包的大小,并调用节点ECU的第二接口,以使节点ECU响应于主ECU调用第二接口,获取目标软件包的大小,并检查节点ECU的剩余存储空间,剩余存储空间不小于目标软件包的大小时,接收OTA服务器发送的目标软件包。
可选地,结合上述第二方面,在第一种可能的实施方式中,UCM模块,还用于响应于主ECU调用UCM模块的第三接口,向节点ECU发送目标软件包,第三接口是主ECU在获取到第一参数值时调用的UCM模块的接口,第一参数值是节点ECU向主ECU返回的第一调用结果中包括的参数值,第一参数值用于指示节点ECU的剩余存储空间不小于目标软件包的大小。
可选地,结合上述第二方面,在第二种可能的实施方式中,UCM模块,还用于调用主ECU的第一接口,以使主ECU响应于OTA服务器调用第一接口,获取目标软件包的下载地址,以使节点ECU响应于主ECU调用第四接口,获取目标软件包的下载地址,并调用OTA服务器的第五接口。UCM模块,还用于响应于节点ECU调用UCM模块的第五接口,接收目标软件包的下载地址,并根据下载地址向节点ECU发送目标软件包。
本申请第三方面提供一种主电子控制单元ECU,主ECU包括升级配置管理主控UCMMaster模块,UCM Master模块,用于响应于OTA服务器调用UCM Master模块的第一接口,获取目标软件包的大小。UCM Master模块,还用于调用节点ECU的第二接口,以使节点ECU响应于第二接口被调用,获取目标软件包的大小,并检查节点ECU的剩余存储空间,剩余存储空间不小于目标软件包的大小时,节点ECU接收OTA服务器发送的目标软件包。
可选地,结合上述第三方面,在第一种可能的实施方式中,UCM Master模块,还用于获取到第一参数值时,调用OTA服务器的第三接口,以使OTA服务器响应于第三接口被调用,向节点ECU发送目标软件包,第一参数值是节点ECU向主ECU返回的第一调用结果中包括的参数值,第一参数值用于指示节点ECU的剩余存储空间不小于目标软件包的大小。
可选地,结合上述第三方面第一种可能的实施方式,在第二种可能的实施方式中,节点ECU的数量为N,N为大于1的整数。UCM Master模块,具体用于获取到N个第一参数值时,调用OTA服务器的第三接口。
可选地,结合上述第三方面,在第三种可能的实施方式中,UCM Master模块,还用于响应于OTA服务器调用第一接口,获取目标软件包的下载地址。UCM Master模块,还用于获取到第一参数值时,调用节点ECU的第四接口,以使节点ECU响应于第四接口被调用,获取下载地址,并调用OTA服务器的第五接口,以使OTA服务器响应于第五接口被调用,接收下载地址,并根据下载地址向节点ECU发送目标软件包,第一参数值是节点ECU向主ECU返回的第一调用结果中包括的参数值,第一参数值用于指示节点ECU的剩余存储空间不小于目标软件包的大小。
可选地,结合上述第三方面第三种可能的实施方式,在第四种可能的实施方式中,节点ECU的数量为N,N为大于1的整数。UCM Master模块,具体用于获取到N个第一参数值时,调用节点ECU的第四接口。
本申请第四方面提供一种节点电子控制单元ECU,节点ECU包括升级配置管理UCM模块,UCM模块,用于响应于主ECU在被调用第一接口后调用UCM模块的第二接口,获取目标软件包的大小,并检查节点ECU的剩余存储空间,剩余存储空间不小于目标软件包的大小时,接收OTA服务器发送的目标软件包,主ECU的第一接口被OTA服务器调用,以使主ECU响应于第一接口被调用,获取目标软件包的大小。
可选地,结合上述第四方面,在第一种可能的实施方式中,UCM模块,还用于向主ECU返回第一调用结果,第一调用结果包括第一参数值,第一参数值用于指示节点ECU的剩余存储空间不小于目标软件包的大小,以使主ECU获取到第一参数值时,调用OTA服务器的第三接口,以使OTA服务器响应于主ECU调用第三接口,向节点ECU发送目标软件包。
可选地,结合上述第四方面,在第二种可能的实施方式中,UCM模块,还用于向主ECU返回第一调用结果,第一调用结果包括第一参数值,第一参数值用于指示节点ECU的剩余存储空间不小于目标软件包的大小,以使主ECU获取到第一参数值时,调用节点ECU的第四接口。UCM模块,还用于响应于主ECU调用第四接口,获取目标软件包的下载地址,并调用OTA服务器的第五接口,以使OTA服务器响应于第五接口被调用,接收下载地址,并根据下载地址向节点ECU发送目标软件包。
本申请第五方面提供一种数据传输方法,包括:OTA服务器调用主ECU的第一接口,以使主ECU响应于OTA服务器调用第一接口,获取目标软件包的大小,并调用节点ECU的第二接口,以使节点ECU响应于主ECU调用第二接口,获取目标软件包的大小,并检查节点ECU的剩余存储空间,剩余存储空间不小于目标软件包的大小时,接收OTA服务器发送的目标软件包。
可选地,结合上述第五方面,在第一种可能的实施方式中,该方法还包括:OTA服务器响应于主ECU调用UCM模块的第三接口,向节点ECU发送目标软件包,第三接口是主ECU在获取到第一参数值时调用的OTA服务器的接口,第一参数值是节点ECU向主ECU返回的第一调用结果中包括的参数值,第一参数值用于指示节点ECU的剩余存储空间不小于目标软件包的大小。
可选地,结合上述第五方面,在第二种可能的实施方式中,该方法还包括:OTA服务器调用主ECU的第一接口,以使主ECU响应于OTA服务器调用第一接口,获取目标软件包的下载地址,以使节点ECU响应于主ECU调用第四接口,获取目标软件包的下载地址,并调用OTA服务器的第五接口。OTA服务器响应于节点ECU调用UCM模块的第五接口,接收目标软件包的下载地址,并根据下载地址向节点ECU发送目标软件包。
本申请第六方面提供一种数据传输方法,包括:主ECU响应于OTA服务器调用UCMMaster模块的第一接口,获取目标软件包的大小。主ECU调用节点ECU的第二接口,以使节点ECU响应于第二接口被调用,获取目标软件包的大小,并检查节点ECU的剩余存储空间,剩余存储空间不小于目标软件包的大小时,节点ECU接收OTA服务器发送的目标软件包。
可选地,结合上述第六方面,在第一种可能的实施方式中,该方法还包括:主ECU获取到第一参数值时,调用OTA服务器的第三接口,以使OTA服务器响应于第三接口被调用,向节点ECU发送目标软件包,第一参数值是节点ECU向主ECU返回的第一调用结果中包括的参数值,第一参数值用于指示节点ECU的剩余存储空间不小于目标软件包的大小。
可选地,结合上述第六方面第一种可能的实施方式,在第二种可能的实施方式中,节点ECU的数量为N,N为大于1的整数。主ECU获取到第一参数值时,调用OTA服务器的第三接口,包括:主ECU获取到N个第一参数值时,调用OTA服务器的第三接口。
可选地,结合上述第六方面,在第三种可能的实施方式中,该方法还包括:主ECU响应于OTA服务器调用第一接口,获取目标软件包的下载地址。主ECU获取到第一参数值时,调用节点ECU的第四接口,以使节点ECU响应于第四接口被调用,获取下载地址,并调用OTA服务器的第五接口,以使OTA服务器响应于第五接口被调用,接收下载地址,并根据下载地址向节点ECU发送目标软件包,第一参数值是节点ECU向主ECU返回的第一调用结果中包括的参数值,第一参数值用于指示节点ECU的剩余存储空间不小于目标软件包的大小。
可选地,结合上述第六方面第三种可能的实施方式,在第四种可能的实施方式中,节点ECU的数量为N,N为大于1的整数。主ECU获取到第一参数值时,调用节点ECU的第四接口,包括:主ECU获取到N个第一参数值时,调用节点ECU的第四接口。
本申请第七方面提供一种数据传输方法,包括:节点ECU响应于主ECU在被调用第一接口后调用UCM模块的第二接口,获取目标软件包的大小,并检查节点ECU的剩余存储空间,剩余存储空间不小于目标软件包的大小时,接收OTA服务器发送的目标软件包,主ECU的第一接口被OTA服务器调用,以使主ECU响应于第一接口被调用,获取目标软件包的大小。
可选地,结合上述第七方面,在第一种可能的实施方式中,该方法还包括:节点ECU向主ECU返回第一调用结果,第一调用结果包括第一参数值,第一参数值用于指示节点ECU的剩余存储空间不小于目标软件包的大小,以使主ECU获取到第一参数值时,调用OTA服务器的第三接口,以使OTA服务器响应于主ECU调用第三接口,向节点ECU发送目标软件包。
可选地,结合上述第七方面,在第二种可能的实施方式中,该方法还包括:节点ECU向主ECU返回第一调用结果,第一调用结果包括第一参数值,第一参数值用于指示节点ECU的剩余存储空间不小于目标软件包的大小,以使主ECU获取到第一参数值时,调用节点ECU的第四接口。节点ECU响应于主ECU调用第四接口,获取目标软件包的下载地址,并调用OTA服务器的第五接口,以使OTA服务器响应于第五接口被调用,接收下载地址,并根据下载地址向节点ECU发送目标软件包。
本申请第八方面提供一种OTA服务器,可以包括处理器,处理器和存储器耦合,存储器存储有程序指令,当存储器存储的程序指令被处理器执行时实现第五方面或第五方面任意一种可能的实施方式中的方法。
本申请第九方面提供一种ECU,可以包括处理器,处理器和存储器耦合,存储器存储有程序指令,当存储器存储的程序指令被处理器执行时实现第六方面或第六方面任意一种可能的实施方式中的方法。
本申请第十方面提供一种ECU,可以包括处理器,处理器和存储器耦合,存储器存储有程序指令,当存储器存储的程序指令被处理器执行时实现第七方面或第七方面任意一种可能的实施方式中的方法。
本申请第十一方面提供一种计算机可读存储介质,可以包括程序,当其在计算机上运行时,使得计算机执行如第五方面或第五方面任意一种可能的实施方式中的方法。
本申请第十二方面提供一种计算机可读存储介质,可以包括程序,当其在计算机上运行时,使得计算机执行如第六方面或第六方面任意一种可能的实施方式中的方法。
本申请第十三方面提供种计算机可读存储介质,可以包括程序,当其在计算机上运行时,使得计算机执行第七方面或第七方面任意一种可能的实施方式中的方法。
本申请第十四方面提供一种芯片系统,该芯片系统可以包括处理器,用于支持车辆实现上述第六方面或第六方面任意一种可能的实施方式中所描述的方法中所涉及的功能。
本申请第十五方面提供一种芯片系统,该芯片系统可以包括处理器,用于支持车辆实现上述第七方面或第七方面任意一种可能的实施方式中所描述的方法中所涉及的功能。
本申请第十六面提供一种计算机程序产品,当该计算机程序产品在设备上运行时,使得设备执行如第五方面或第五方面任意一种可能的实现方式所描述的方法。
本申请第十七面提供一种计算机程序产品,当该计算机程序产品在设备上运行时,使得设备执行如第六方面或第六方面任意一种可能的实现方式所描述的方法。
本申请第十八面提供一种计算机程序产品,当该计算机程序产品在设备上运行时,使得设备执行如第七方面或第七方面任意一种可能的实现方式所描述的方法。
本申请第十九方面提供一种智能汽车,智能汽车可以包括主ECU和节点ECU,主ECU是第三方面或第三方面任意一种可能的实施方式中描述的ECU,节点ECU为第四方面或第四方面任意一种可能的实施方式中描述的ECU。
本申请第二十方面提供一种智能汽车,智能汽车包括处理电路和存储电路,处理电路和存储电路被配置为执行如第六方面或第六方面任意一种可能的实现方式所描述的方法。
本申请第二十一方面提供一种智能汽车,智能汽车包括处理电路和存储电路,处理电路和存储电路被配置为执行如第七方面或第七方面任意一种可能的实现方式所描述的方法。
本申请提供一种数据传输系统,数据传输方法,智能车以及装置。通过本申请提供的方案,主ECU仍然对各个节点ECU的升级过程进行控制,但是各个节点ECU的软件包由OTA服务器直接发送给各个节点ECU上,不再需要主ECU缓存每个节点ECU的软件包,也无需主ECU转发每个节点ECU的升级包,通过这样的方式,主ECU无需有较高的存储空间和处理性能,还可以提升升级的效率。此外,本申请提供的数据传输系统,定义了新的接口,当全部的节点ECU均有足够的存储空间存储各自的软件包时,再向各个节点ECU发送各自的软件包,防止下载过程中由于部分节点ECU的资源不足导致升级失败,减少由此导致的用户流量消耗和资源浪费。可以进一步提升升级的效率。
附图说明
图1为AutoSar的示意图;
图2为AutoSarR中实现软件升级的架构示意图;
图3为AutoSar中软件升级的流程示意图;
图4为本申请实施例提供的一种数据传输方法的流程示意图;
图5为本申请实施例提供的另一种数据传输方法的流程示意图;
图6为本申请实施例提供的另一种数据传输方法的流程示意图;
图7a为本申请实施例提供的另一种数据传输方法的流程示意图;
图7b为本申请实施例提供的另一种数据传输方法的流程示意图
图8为本申请实施例提供的一种数据传输系统的结构示意图;
图9为本申请实施例提供的一种通信设备的结构示意图;
图10为本申请实施例提供的一种车辆的结构示意图;
图11为本申请实施例提供的一种应用场景示意图。
具体实施方式
下面结合附图,对本申请的实施例进行描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请的说明书和权利要求书及上述附图中的术语“第一”,“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程,方法,系统,产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程,方法,产品或设备固有的其它步骤或模块。在本申请中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。本申请中所出现的模块的划分,是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个模块可以结合成或集成在另一个系统中,或一些特征可以忽略,或不执行,另外,所显示的或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些端口,模块之间的间接耦合或通信连接可以是电性或其他类似的形式,本申请中均不作限定。并且,作为分离部件说明的模块或子模块可以是也可以不是物理上的分离,可以是也可以不是物理模块,或者可以分布到多个电路模块中,可以根据实际的需要选择其中的部分或全部模块来实现本申请方案的目的。
AutoSar是由全球汽车制造商、部件供应商及电子软件系统公司联合建立,是一个开放的、标准化的软件架构。是对汽车技术开发一百多年来的经验总结。AutoSar定义了一系列系统服务接口,利用这些接口可以实现不同软件的兼容互通和互操作,简化了汽车软件的开发,方便软件在不同车型上的部署。AutoSar主要具备以下特点:
a、AutoSar致力于解决硬件平台不同带来的软件开发的困难,使开发者能够专注于汽车软件功能上的创新。
b、AutoSar提供标准的软件接口定义,工程师可以根据实际需求将所需要的软件组件分配到汽车的电子控制单元(electronic control unit,ECU)中,实现标准软件组件的可重用性。
c、AutoSar的应用层软件组件是独立于硬件的,应用开发者可以在应用软件中指定各个车辆功能的细节,而不用担心底层软件服务和硬件接口不兼容的问题。
参阅图1,为AutoSar的示意图。通常可以认为AutoSar包括应用软件层(application layer)和系统服务层(services layer)。
应用软件层封装了部分或全部汽车电子的功能与行为,包括对具体模块功能的实现以及对应描述,对外界仅开放定义好的接口。
系统服务层主要服务包括通信管理服务(communication management,COM)、加密服务(cryptography,CRYPTO)、日志服务(log ging&Tracing,LOG)、诊断服务(diagnosticsservice,DIAG)、持久化存储服务(persistency,PER)、状态管理服务(state management,SM)、执行管理服务(execution management,EXEC)、时间同步服务(timesynchronization,TSYNC)、升级配置管理服务(update and configuration management,UCM),升级配置管理主控服务(update and configuration management master,UCMMaster)等。本申请提供的方案主要涉及系统服务层中的UCM和UCM Master。本申请提供的实施例主要关注AUTOSAR中的系统服务层中的UCM和UCM Master。UCM和UCM Master负责管理汽车软件在车内的更新和升级,现有的标准中定义了UCM服务和UCM Master服务的接口以及交互的流程,汽车用户或厂商通过使用这些接口就可以方便地在AutoSar系统内安装、更新和卸载软件。下面结合图2和图3对AutoSar中通过UCM实现汽车软件在车内的升级过程进行说明。
参阅图2,为AutoSar中实现软件升级的架构示意图。在AUTOSAR中,可以通过OTA技术实现汽车内软件的升级。OTA是指通过无线保真(wireless fidelity,wifi),长期演进(long term evolution,LTE),第五代移动通信(5th generation,5G)等空中通讯接口完成对汽车软件的更新或升级。由于不再依托固定的场所或固定的线路,OTA升级具有传统汽车软件升级方式不具备的灵活性和便利性。可以通过OTA技术将云端服务器中的软件升级包下载到本地。本申请有时也将云端服务器称为OTA服务器或者OTA云或者OTA云服务器,这些词语表示相同的意思,本申请中的本地是指车内的ECU。由于车内包括多个ECU,多个ECU的软件都有升级的需求,并且多个ECU的升级顺序可能存在依赖关系,即需要控制多个ECU的软件升级的顺序,此外,还可能对升级的条件进行限定,比如是否可以在驾驶状态升级软件,是否需要征得用户的同意之后才能升级软件,等等。所以,需要在多个ECU中的至少一个ECU上安装控制模块,来协调多个ECU的软件升级,在AutoSar中,这个模块是UCM主控(UCMMaster)模块。通常情况下,可以在网关或者车载通讯终端(telematic box,TBOX)上安装UCM Master模块。此外,在车内的其他ECU上安装UCM模块,以通过安装了UCM Master的ECU控制和协调其它需要升级的ECU上的UCM模块,以完成整车的软件升级。下面结合图3对AutoSar中软件升级下载的交互过程进行说明。以下将安装有UCM Master模块的ECU称为主ECU,将安装有UCM模块的ECU称为节点ECU。
参阅图3,为AutoSar中软件升级的流程示意图。如图3中所示,传输系统包括OTA服务器,主ECU,以及多个节点ECU,示例性的,图3中展示了两个节点ECU,分别是节点ECU1以及节点ECU2。主ECU是指车内ECU中安装有UCM Master模块的ECU,节点ECU是指车内ECU中安装有UCM模块的ECU。AutoSar中软件升级的流程可以包括以下步骤:
301、OTA服务器调用主ECU的TransferVehiclePackage接口。
OTA服务器调用主ECU的UCM Master模块的TransferVehiclePackage接口。需要说明的是,本申请有时也将UCM Maste模块称为UCM Master服务。此外,需要说明的是,本申请中主ECU的接口是指主ECU的UCM Master模块的接口,以下对此不再重复说明。
整车升级包中主要包括升级策略等控制信息,主ECU可以根据这些信息控制各个节点ECU的升级更新的过程。比如主ECU可以根据控制信息控制各个节点ECU的升级顺序以及升级条件。升级条件可以包括是否允许在驾驶状态中升级软件,是否需要征得用户的同意之后才能升级软件,等等。
在AutoSar中,定义了UCM Master模块的整车升级包下载(TransferVehiclePackage)接口,OTA服务器可以调用主ECU的TransferVehiclePackage接口,以将升级策略等控制信息发送给主ECU。具体的,将升级策略等控制信息发送给UCMMaster模块。
整车升级包还包括各个ECU的软件包的信息,比如软件包的信息可以包括包名称和大小信息。
302、OTA服务器调用主ECU的TransferStart接口。
OTA服务器调用主ECU的UCM Master服务的TransferStart接口。
本申请有时也将软件包称为软件升级包或者升级包,他们表示相同的意思,均表示ECU需要更新的软件代码或数据。在AutoSar中,定义了UCM Master服务的启动传输(TransferStart)接口,OTA服务器可以调用主ECU的UCM Master服务的TransferStart接口,以将各个节点ECU的软件升级包的名称发送给主ECU。
303、主ECU调用节点ECU1的TransferStart接口。
主ECU调用节点ECU1的UCM模块的TransferStart接口。需要说明的是,本申请中的节点ECU的接口,均指节点ECU的UCM模块的接口,以下对此不再重复说明。
比如节点ECU包括节点ECU1。
主ECU调用节点ECU1的TransferStart接口,节点ECU1的TransferStart接口的参数值是节点ECU1的软件升级包的大小。ECU1响应于TransferStart接口被调用,检测剩余存储空间,确定剩余空间是否足够存ECU1的升级包。
304、节点ECU1返回节点ECU1的TransferStart接口的调用结果。
节点ECU1的UCM模块响应于主ECU调用TransferStart接口,向主ECU返回TransferStart接口的调用结果,该调用结果可以指示节点ECU1是否有足够的剩余存储空间存储节点ECU1的升级包。
305、主ECU将获取到的节点ECU1的TransferStart接口的调用结果反馈给OTA服务器。
306、OTA服务器调用主ECU的TransferData接口。
OTA服务器调用主ECU的UCM Master模块的TransferData接口。
如果OTA服务器根据步骤305可以确定节点ECU1有足够的存储空间,则OTA服务器将ECU1的升级包发送给主ECU。ECU1的升级包可以包括ECU1需要更新的软件代码或数据。
AutoSar定义了UCM Master模块的数据传输(TransferData)接口和UCM服务的数据传输(TransferData)接口,OTA服务器调用主ECU的UCM Master服务的TransferData接口,TransferData接口的参数值是ECU1的软件包,以将节点ECU1的软件包发送给主ECU。
307、主ECU调用节点ECU1的TransferData接口。
主ECU调用节点ECU1的UCM模块的TransferData接口,TransferData接口的参数值是ECU1的软件包,以将节点ECU1的软件包发送给节点ECU1。
308、节点ECU1返回节点ECU1的TransferData接口的调用结果。
响应于主ECU调用节点ECU1的TransferData接口,节点ECU1的UCM模块可以返回调用结果,用于通知主ECU已经接收成功或者接收失败。
309、主ECU调用节点ECU2的TransferStart接口。
主ECU调用节点ECU2的UCM模块的TransferStart接口,节点ECU2的TransferStart接口的参数值是节点ECU2的软件升级包的大小。ECU2响应于TransferStart接口被调用,检测剩余存储空间,确定剩余空间是否足够存ECU2的升级包。
310、节点ECU2返回节点ECU2的TransferStart接口的调用结果。
节点ECU2的UCM模块响应于主ECU调用TransferStart接口,向主ECU返回TransferStart接口的调用结果,该调用结果可以指示节点ECU2是否有足够的剩余存储空间存储节点ECU2的升级包。
311、主ECU将获取到的节点ECU2的TransferStart接口的调用结果反馈给OTA服务器。
312、OTA服务器调用主ECU的TransferData接口。
如果OTA服务器根据步骤309可以确定节点ECU2有足够的存储空间,则OTA服务器将ECU2的升级包发送给主ECU。ECU2的升级包包括ECU2需要更新的软件代码或数据。
OTA服务器调用主ECU的TransferData接口,以将节点ECU2的升级包发送给主ECU。
313、主ECU调用节点ECU2的TransferData接口。
比如节点ECU还包括节点ECU2。
主ECU调用节点ECU2的TransferData接口,TransferData接口的参数值是ECU2的软件包,以将节点ECU2的软件包发送给节点ECU2。
在一个可能的实施方式中,还可以包括步骤314、节点ECU2返回节点ECU2的TransferData接口的调用结果。
响应于主ECU调用节点ECU2调用节点ECU2的TransferData接口,节点ECU2可以返回调用结果,用于通知主ECU已经接收成功或者接收失败。
如果还包括其他升级包的下载,比如还包括其他节点ECU,则下载升级包的过程与节点ECU1和ECU2的下载升级包的过程相同,参照步骤303至步骤308进行理解,或者参照步骤309至步骤314进行理解。步骤303至步骤314旨在表达主ECU向每个节点ECU发送各自的软件升级包的大小,使节点ECU检查是否有足够的可用内存的大小。
申请人发现上述AutoSar中软件升级的流程存在缺陷,在上述升级包的传输流程中,主ECU需要缓存所有节点ECU的软件包,再将节点ECU的软件包转发给对应的节点ECU,比如步骤306和步骤307,以及步骤312和步骤313。这种设计是为了使主ECU可以根据控制信息控制各个节点ECU的升级,协调多个节点ECU的升级过程。比如控制各个节点ECU的升级顺序,包括控制各个节点ECU的下载升级包的顺序,安装升级包的顺序,激活升级包的顺序等等。但是,这种设计对主ECU的存储空间和处理性能要求较高,如果主ECU的存储空间不足,可能会存在下载升级包失败的情况,如果主ECU的处理性能不高的话,会影响下载的效率,即传输升级包的速度会比较慢,从而影响整车升级的效率。此外,申请人发现,上述设计在某些节点ECU没有足够的存储空间时,有足够存储空间的节点ECU仍然要下载各自的软件包,在这种情况下,如果没有足够的存储空间的节点ECU和有足够存储空间的节点ECU在升级顺序上存在依赖关系,则有足够的存储空间的节点即使下载了升级包也可能升级失败,浪费存储资源,影响升级的效率。举例说明,比如节点ECU1有足够的存储空间,从主ECU中下载了节点ECU1的软件包,节点ECU2没有足够的存储空间,主ECU不会给节点ECU2发送节点ECU2的软件包,如果节点ECU1和节点ECU2在升级上存在依赖关系,则节点ECU1即使下载了节点ECU1的软件包,也可能升级失败,浪费了节点ECU1的存储空间,也影响了升级的效率。需要说明的是,除了节点ECU在升级顺序上存在依赖关系可能导致升级失败,还可能有其他因为部分节点ECU没有足够的存储空间导致的升级失败。
为了解决上述问题,本申请提供一种数据传输系统。主ECU仍然对各个节点ECU的升级过程进行控制,比如主ECU可以获知每一个节点ECU的升级状态,具体的,在本申请中主ECU仍然可以获知节点ECU的下载状态,比如控制某个节点ECU下载软件包,控制某个节点ECU不下载软件包,控制多个节点ECU下载各自的软件包的顺序等等。换句话说,主ECU可以控制多个节点ECU同时下载软件包,还是按照一定的下载顺序下载软件包。或者说主ECU可以控制是否使节点ECU下载软件包。在此基础上,即在主ECU仍然对各个节点ECU的升级过程进行控制的基础上,各个节点ECU的软件包由OTA服务器直接发送给各个节点ECU上,不再需要主ECU缓存每个节点ECU的软件包,也无需主ECU转发每个节点ECU的升级包。通过这样的方式,主ECU无需有较高的存储空间和处理性能,还可以提升升级的效率。此外,本申请提供的数据传输系统,定义了新的接口,当全部的节点ECU均有足够的存储空间存储各自的软件包时,再向各个节点ECU发送各自的软件包,可以进一步提升升级的效率。
需要说明的是,本申请实施例提供的数据传输系统可以基于AutoSar,也可以基于其他用于车辆内ECU升级的数据传输系统,本申请以基于AutoSar为例进行说明。
基于上面的研究思路,下面对本申请提供的技术方案进行具体的介绍。
参阅图4,为本申请实施例提供的一种数据传输方法的流程示意图。
本申请实施例提供的一种数据传输方法,可以包括以下步骤:
401、OTA服务器调用主ECU的TransferVehiclePackage接口。
步骤401可以参照图3对应的方案中的步骤301进行理解,这里不再重复赘述。
402、OTA服务器调用主ECU的TransferStart接口。
步骤402可以参照图3对应的方案中的步骤302进行理解,这里不再重复赘述。
403、主ECU调用节点ECU1的TransferStart接口。
步骤403可以参照图3对应的方案中的步骤303进行理解,这里不再重复赘述。
404、节点ECU1返回节点ECU1的TransferStart接口的调用结果。
节点ECU1响应于主ECU调用TransferStart接口,向主ECU返回TransferStart接口的调用结果,该调用结果可以指示节点ECU1是否有足够的剩余存储空间存储节点ECU1的升级包。
此外,在本申请提供的方案中,调用结果中还可以包括第一参数,通过第一参数值指示OTA服务器直接向节点ECU1发送节点ECU1的软件包,以下结合几个具体的实施方式进行说明。
在一个可能的实施方式中,若节点ECU1有足够的剩余存储空间存储节点ECU1的升级包,则调用结果还包括第一参数值。主ECU可以将该第一参数值反馈给OTA服务器,OTA服务器获取第一参数值后,可以直接向节点ECU1发送软件包,而不再经过主ECU。
在一个可能的实施方式中,在调用结果中增加第一参数,若节点ECU1有足够的剩余存储空间存储节点ECU1的升级包,第一参数的取值为A,若节点ECU1没有足够的剩余存储空间存储节点ECU1的升级包,则第一参数的取值为B。这里的A和B是为了举例说明节点ECU1确定有足够的剩余存储空间,以及没有足够的剩余存储空间两种情况下,第一参数的取值不同。节点ECU1可以通过反馈第一参数,使OTA服务器获取是否可以直接向节点ECU1发送软件包。比如若OTA服务器获取到第一参数的取值为A,则可以直接向节点ECU1发送软件包,而不再经过主ECU。
405、主ECU将获取到的节点ECU1的TransferStart接口的调用结果反馈给OTA服务器。
主ECU的UCM master模块将获取到的节点ECU1的TransferStart接口的调用结果反馈给OTA服务器的UCM模块。
在本方案中,如果节点ECU1有足够的剩余存储空间存储节点ECU1的升级包,则反馈给OTA服务器的调用包括第一参数。
在一个可能的实施方式中,主ECU可以调用OTA服务器的一个接口,以将获取到的节点ECU1的TransferStart接口的调用结果发送给OTA服务器,以使OTA服务器响应于该接口被调用,向节点ECU发送软件包。需要说明的是,本申请中通常将一个设备向另一个设备发送信息,或者指示另一个设备执行动作描述为一个设备调用另一个设备的接口,即一个设备调用另一个设备的接口,以向另一个设备发送信息,或者指示另一个设备执行某些动作,本申请实施例对此不再重复说明。
406、OTA服务器调用节点ECU1的TransferData接口。
如果节点ECU1有足够的剩余存储空间存储节点ECU1的升级包,OTA服务器可以直接向节点ECU1发送节点ECU1的软件包,而不需通过主ECU进行转发。具体的OTA服务器根据第一参数获取是否可以直接向节点ECU1发送节点ECU1的软件包,第一参数是节点ECU1的TransferStart接口的调用结果包括的参数。
比如,在AutoSar中,OTA服务器可以调用节点ECU1的TransferData接口,TransferData接口的参数值是ECU1的软件包,以将节点ECU1的软件包发送给节点ECU1。
在一个可能的实施方式中,还可以包括步骤407、节点ECU1返回节点ECU1的TransferData接口的调用结果。
响应于OTA服务器调用节点ECU1调用节点ECU1的TransferData接口,节点ECU1可以返回调用结果,用于通知OTA服务器已经接收成功或者接收失败。
408、主ECU调用节点ECU2的TransferStart接口。
比如节点ECU还包括节点ECU2,则主ECU调用节点ECU2的TransferStart接口。
409、节点ECU2返回节点ECU2的TransferStart接口的调用结果。
410、主ECU将获取到的节点ECU2的TransferStart接口的调用结果反馈给OTA服务器。
411、OTA服务器调用节点ECU2的TransferData接口。
节点ECU2的TransferData接口的参数值是节点ECU2的软件包。
在一个可能的实施方式中,还可以包括步骤412、节点ECU2返回节点ECU2的TransferData接口的调用结果。
步骤408至步骤412可以参照步骤403至步骤407进行理解,这里不再重复赘述。如果还包括其他的节点ECU,下载升级包的过程也可以参照ECU1下载升级包的过程进行理解,即参照步骤403至步骤407进行理解。
由图4对应的实施例可知,这种方案对现有的AutoSar规定的软件升级的流程改动很小,在节点ECU的TransferStart接口的调用结果中增加一个参数,并将该参数反馈给OTA服务器,使OTA服务器获知可以进行分布式下载,将节点ECU的升级包直接发送给对应的节点ECU,无需经过主ECU。通过这种方案减少对主ECU的存储空间以及处理性能的依赖,且通过本申请提供的方案,可以多个节点ECU同时下载,提升下载的效率。
需要说明的是,除了图4对应的实施例中提供的方案,本申请还提供了其他方案可以基于AutoSar,实现OTA服务器直接向节点ECU发送升级包。此外,本申请提供的方案可以使主ECU提前获取所有的节点ECU的剩余存储空间是否都足够,当所有的节点ECU的剩余存储空间都足够存储各自的软件包时,再传输软件包,防止下载过程中由于部分节点ECU的资源不足导致升级失败,减少由此导致的用户流量消耗和资源浪费。下面结合几个具体的实施例进行说明。
参阅图5,为本申请实施例提供的一种数据传输方法的流程示意图。
501、OTA服务器调用主ECU的TransferVehiclePackage接口。
OTA服务器调用主ECU的TransferVehiclePackage接口,以将升级策略等控制信息以及各个节点ECU的软件升级包的名称和大小发送给主ECU。比如通过调用主ECU的TransferVehiclePackage接口,将节点ECU1的软件包的名称和大小,节点ECU2的软件包的名称和大小发送给主ECU。
502、主ECU调用节点ECU1的目标接口。
本申请提供的实施方式中,定义了一个新的接口,使主ECU可以集中获取所有节点ECU的剩余存储空间是否足够存储各自的软件包。
目标接口的参数值可以是每个节点ECU的软件包的大小。示例性的,表1给出了一种目标接口的定义方式。假设目标接口的名称是TransferCheck,目标接口的输入参数值是软件包的大小(size),目标接口的返回值是ture或者false。其中ture可以代表节点ECU的剩余存储空间足够存储其软件包,false可以代表节点ECU的剩余存储空间不足够存储其软件包。
表1:
接口名称 | TransferCheck |
输入参数 | size |
返回值 | ture/false |
节点ECU响应于主ECU调用目标接口,检查各自的存储空间是否足够存储各自的软件包。
以ECU1为例,即主ECU调用节点ECU1的目标接口,目标接口的参数值包括节点ECU1的软件包的大小。节点ECU1响应于目标接口被调用,检测剩余存储空间,确定剩余空间是否足够存节点ECU1的升级包。
503、节点ECU1返回节点ECU1的目标接口的调用结果。
节点ECU1响应于主ECU调用目标接口,向主ECU返回目标接口的调用结果,该调用结果可以指示节点ECU1是否有足够的剩余存储空间存储节点ECU1的升级包。比如返回调用结果时true或者false。
504、主ECU调用节点ECU2的目标接口。
比如,节点ECU还包括节点ECU2,则主ECU调用节点ECU2的目标接口,目标接口的参数值包括ECU2的软件包的大小。ECU2响应于目标接口被调用,检测剩余存储空间,确定剩余空间是否足够存ECU2的升级包。
505、节点ECU2返回节点ECU2的目标接口的调用结果。
节点ECU2响应于主ECU调用目标接口,向主ECU返回目标接口的调用结果,该调用结果可以指示节点ECU2是否有足够的剩余存储空间存储节点ECU2的升级包。比如返回调用结果时true或者false。
506、主ECU根据获取到的节点ECU的目标接口的调用结果向OTA服务器发送反馈信息。
以上步骤502至步骤506以节点ECU包括节点ECU1和节点ECU2进行了说明,如果还包括其他的节点ECU,调用目标接口的过程也可以参照步骤502至步骤506进行理解。
如果主ECU根据所有节点ECU的目标接口的调用结果确定所有节点ECU均有足够的存储空间存储各自的软件包时,则向OTA服务器发送反馈消息,该反馈信息用于指示OTA进行分布式下载,即指示OTA服务器将每个节点ECU的软件包发送给对应的节点ECU。举例说明,比如节点ECU只包括节点ECU1和节点ECU2,有以下三种情况:
1、ECU1返回的目标接口的调用结果指示ECU1有足够的存储空间存储ECU1的软件包,并且ECU2返回的目标接口的调用结果指示ECU2有足够的存储空间存储ECU2的软件包时,主ECU向OTA服务器发送反馈消息。
2、ECU1返回的目标接口的调用结果指示ECU1有足够的存储空间存储ECU1的软件包,并且ECU2返回的目标接口的调用结果指示ECU2没有足够的存储空间存储ECU2的软件包时,则主ECU不向OTA服务器发送反馈消息。在这种情况下,OTA服务器也不会向ECU1发送ECU1的软件包。
3、ECU1返回的目标接口的调用结果指示ECU1没有足够的存储空间存储ECU1的软件包,并且ECU2返回的目标接口的调用结果指示ECU2有足够的存储空间存储ECU2的软件包时,则主ECU不向OTA服务器发送反馈消息。在这种情况下,OTA服务器也不会向ECU2发送ECU1的软件包。
在一个可能的实施方式中,主ECU可以在发送状态信息时向OTA服务器发送反馈信息。在AutoSar中,规定了主ECU向OTA服务器发送状态信息,用于通知OTA服务器目前的升级状态,比如升级状态可以包括处于下载升级包阶段,处于安装升级包的阶段,处于激活升级包的阶段等等。在本申请实施例中的这种实施方式中,可以增加新的状态信息,比如增加第一状态信息。如果主ECU根据所有节点ECU的目标接口的调用结果确定所有节点ECU均有足够的存储空间存储各自的软件包时,在主ECU向OTA服务器发送状态信息时,发送第一状态信息,该第一状态信息用于通知OTA服务器可以进行分布式下载,OTA服务器收到第一状态信息后,直接将每个节点ECU的软件包发送给对应的节点ECU,不再经过主ECU转发。
507、OTA服务器调用节点ECU1的TransferData接口。
如果OTA服务器根据反馈消息确定可以将节点ECU的软件包发送给各自的节点ECU时,则OTA服务器调用各个节点的TransferData接口发送给各自的节点ECU。
该反馈消息可以是主ECU发送的状态信息,该状态信息用于指示OTA服务器可以进行分布式下载,OTA服务器收到该状态信息后,直接将每个节点ECU的软件包发送给对应的节点ECU,不再经过主ECU转发。
节点ECU包括节点ECU1时,OTA服务器可以调用节点ECU1的TransferData接口,TransferData接口的参数值是ECU1的软件包,以将节点ECU1的软件包发送给节点ECU1。
在一个可能的实施方式中,还可以包括508、节点ECU1返回节点ECU1的TransferData接口的调用结果。
响应于OTA服务器调用节点ECU1调用节点ECU1的TransferData接口,节点ECU1可以返回调用结果,用于通知OTA服务器已经接收成功或者接收失败。
509、OTA服务器调用节点ECU2的TransferData接口。
如果节点ECU还包括节点ECU2,则OTA服务器调用节点ECU2的TransferData接口。
在一个可能的实施方式中,还可以包括510、节点ECU2返回节点ECU2的TransferData接口的调用结果。
步骤509和步骤510可以参照步骤507和步骤508进行理解,需要说明的是,如果还包括其他的节点ECU,也可以参照ECU1与OAT服务器或者ECU2与OTA服务器的交互的过程进行理解,即参照步骤502至步骤509进行理解。
由图5对应的实施例可知,给出了一种方式可以使主ECU提前获取所有的节点ECU的剩余存储空间是否都足够,当所有的节点ECU的剩余存储空间都足够存储各自的软件包时,再传输软件包,防止下载过程中由于部分节点ECU的资源不足导致升级失败,减少由此导致的用户流量消耗和资源浪费。具体的,图5对应的实施方式中,可以在AutoSar中新定义一个接口,比如目标接口,使主ECU可以获取所有的节点ECU的剩余存储空间是否都足够,并且可以增加新的状态信息,主ECU可以通过新的状态信息通知OTA服务器可以进行分布式下载,即直接将每个节点ECU的软件包发送给各自的节点ECU。
图5对应的实施例中,主ECU可以通过新的状态信息通知OTA服务器可以进行分布式下载,即直接将每个节点ECU的软件包发送给各自的节点ECU。在一些其他的实施方式中,还可以通过其他方式实现OTA服务器可以进行分布式下载,即直接将每个节点ECU的软件包发送给各自的节点ECU。下面结合一个具体的实施例进行说明。
参阅图6,为本申请实施例提供的一种数据传输方法的流程示意图。
601、OTA服务器调用主ECU的TransferVehiclePackage接口。
OTA服务器调用主ECU的TransferVehiclePackage接口,以将升级策略等控制信息、各个节点ECU的软件升级包的名称和大小,以及各个节点ECU的软件包的下载地址发送给主ECU。比如通过调用主ECU的TransferVehiclePackage接口,将节点ECU1的软件包的名称、大小以及节点ECU1的软件包的下载地址,节点ECU2的软件包的名称、大小以及节点ECU2的软件包的下载地址发送给主ECU。
在一个可能的实施方式中,下载地址可以是统一资源定位符(uniform resourelocator,URL)的形式。
602、主ECU调用节点ECU1的目标接口。
603、节点ECU1返回节点ECU1的目标接口的调用结果。
604、主ECU调用节点ECU2的目标接口。
605、节点ECU2返回节点ECU2的目标接口的调用结果。
步骤602至步骤605可以参照图5对应的实施例中的步骤502至步骤505进行理解,这里不再重复赘述。
606、主ECU向节点ECU1发送节点ECU1的软件包的下载地址。
如果主ECU根据所有节点ECU的目标接口的调用结果确定,所有的节点ECU均有足够的存储空间存储各自的软件包时,则主ECU向各个节点ECU发送各自的软件包的下载地址。
比如,节点ECU包括节点ECU1和节点ECU2,节点ECU1和节点ECU2均有足够的存储空间存储各自的软件包时,则主ECU向节点ECU1发送节点ECU1的软件包的下载地址。主ECU向节点ECU2发送节点ECU2的软件包的下载地址。
在一个可能的实施方式中,也可以主ECU获取到节点ECU1有足够的存储空间时,就向节点ECU1发送节点ECU1的软件包的下载地址。
在一个可能的实施方式中,主ECU可以在调用节点ECU的TransferStart接口时,在TransferStart接口新增输入参数,该新增输入参数是各个节点ECU的软件包的下载地址。比如,主ECU调用节点ECU1的TransferStart接口,TransferStart接口时包括新增参数,新增参数的取值是节点ECU1的软件包的下载地址,再比如,主ECU调用节点ECU2的TransferStart接口,TransferStart接口时包括新增参数,新增参数的取值是节点ECU2的软件包的下载地址。
607、节点ECU1根据获取到的节点ECU1的软件包的下载地址向OTA服务器发送请求消息。
比如,节点ECU1接收到ECU1的软件包的下载地址后,向OTA服务器发送请求消息,该请求消息中携带ECU1的软件包的下载地址,该请求消息用于请求OTA服务器将节点ECU1的软件包发送给节点ECU1。
在一个可能的实施方式中,可以定义一个新的接口,比如第二接口,第二接口的参数是软件包的下载地址,当OTA服务器的第二接口被调用时,OTA服务器可以将节点ECU的软件包发送给对应的节点ECU。比如,节点ECU1可以调用OTA服务器的第二接口,第二接口的参数是节点ECU1的软件包的下载地址,OTA服务器响应于第二接口被调用,可以根据第二接口的参数值,将节点ECU1的软件包发给节点ECU1。需要说明的是,本申请中的OTA服务器的接口均指OTA服务器的UCM接口,本申请对此不再重复说明。
示例性的,表2给出了一种第二接口的定义方式。假设第二接口的名称是GetTransferStart,第二接口的输入参数包括软件包的下载地址,在一些可能的实施方式中,第二接口的输入参数还可以包括软件包的名称或者软件包的标识ID。
接口名称 | GetTransferStart |
输入参数1 | 软件包的名称 |
输入参数2 | 软件包的标识ID |
输入参数2 | 软件包的下载地址 |
608、OTA服务器调用节点ECU1的TransferData接口。
响应于节点ECU1发送的请求消息,OTA服务器向节点ECU1发送节点ECU1的软件包。
比如,OTA服务器可以调用节点ECU1的TransferData接口,将ECU1的软件包发送给节点ECU1。
在一个可能的实施方式中,还可以包括步骤609、节点ECU1返回节点ECU1的TransferData接口的调用结果。
响应于OTA服务器调用节点ECU1调用节点ECU1的TransferData接口,节点ECU1可以返回调用结果,用于通知OTA服务器已经接收成功或者接收失败。
610、主ECU向节点ECU2发送节点ECU2的软件包的下载地址。
如果主ECU根据所有节点ECU的目标接口的调用结果确定,所以的节点ECU均有足够的存储空间存储各自的软件包时,则主ECU向各个节点ECU发送各自的软件包的下载地址。
比如,节点ECU包括节点ECU2,则主ECU向节点ECU2发送节点ECU2的软件包的下载地址。
611、节点ECU2根据获取到的节点ECU2的软件包的下载地址向OTA服务器发送请求消息。
612、OTA服务器调用节点ECU2的TransferData接口。
在一个可能的实施方式中,还可以包括步骤613、节点ECU2返回节点ECU2的TransferData接口的调用结果。
步骤610至步骤613可以参照步骤606至步骤609进行理解。如果还包括其他的节点ECU,也可以参照ECU1与OAT服务器的交互的过程进行理解,即参照步骤602至步骤609进行理解。
以上基于AutoSar,对本申请实施例提供的方案进行了介绍,主ECU仍然对各个节点ECU的升级过程进行控制,比如控制各个节点ECU的下载软件包的顺序,但是各个节点ECU的软件包由OTA服务器直接发送给各个节点ECU上,不再需要主ECU缓存每个节点ECU的软件包,也无需主ECU转发每个节点ECU的升级包,通过这样的方式,主ECU无需有较高的存储空间和处理性能,还可以提升升级的效率。并且,支持本申请提供的方案支持多个节点ECU同时下载,提升下载效率。并且不影响后续的主ECU控制各个节点ECU的安装过程以及激活过程。此外,本申请提供的数据传输系统,定义了新的接口,当全部的节点ECU均有足够的存储空间存储各自的软件包时,再向各个节点ECU发送各自的软件包,可以进一步提升升级的效率。
除了上述提到的基于AutoSar,对上述AutoSar中软件升级的流程进行改进,解决现有的AutoSar中,在软件升级过程中,对主ECU的存储空间和处理性能的依赖的问题。本申请提供的方案还可以采用其他的方式解决对ECU的存储空间和处理性能的依赖问题。以下结合几个具体的实施方式进行说明。
参阅图7a,为本申请实施例提供的一种数据传输方法的流程示意图。
701、节点ECU1将节点ECU1的剩余存储空间的大小发送给主ECU。
702、节点ECU2将节点ECU2的剩余存储空间的大小发送给主ECU。
703、主ECU将各个节点ECU的剩余存储空间的大小向OTA服务器发送。
表3:
节点ID | 剩余的存储空间的大小 |
ECU1的ID | ECU1的剩余的存储空间的大小 |
ECU2的ID | ECU2的剩余的存储空间的大小 |
如表3所示,主ECU可以通过表格的方式将各个节点ECU的剩余存储空间的大小发送给OTA服务器。
在一个可能的实施方式中,节点ECU也可以直接将各自的剩余存储空间的大小向OTA服务器发送,不经过主ECU转发。
704、OTA服务器调用主ECU的TransferVehiclePackage接口。
如果OTA服务器根据各个节点ECU的剩余存储空间的大小和各个节点ECU的软件包的大小确定,各个节点ECU均有足够的存储空间存储各自的软件包时,OTA服务器调用主ECU的TransferVehiclePackage接口。举例3说明,假设节点ECU只包括节点ECU1和节点ECU2。则可能有以下三种情况:
1、OTA服务器获取到的节点ECU1的剩余存储空间不小于ECU1的软件包的大小,且获取到的ECU2的剩余存储空间不小于ECU2的软件包的大小,则OTA服务器调用主ECU的TransferVehiclePackage接口,以将升级策略等控制信息发送给主ECU。
2、OTA服务器获取到的节点ECU1的剩余存储空间不小于节点ECU1的软件包的大小,且获取到的节点ECU2的剩余存储空间小于节点ECU2的软件包的大小,则OTA服务器确定当前无法升级成功,不启动升级软件包的程序。
3、OTA服务器获取到的节点ECU1的剩余存储空间小于节点ECU1的软件包的大小,且获取到的节点ECU2的剩余存储空间不小于节点ECU2的软件包的大小,则OTA服务器确定当前无法升级成功,不启动升级软件包的程序。
705、OTA服务器调用节点ECU1的TransferData接口。
在一个可能的实施方式中,还可以包括步骤706、节点ECU1返回节点ECU1的TransferData接口的调用结果。
707、OTA服务器调用节点ECU2的TransferData接口。
在一个可能的实施方式中,还可以包括步骤708、节点ECU2返回节点ECU2的TransferData接口的调用结果。
步骤705至步骤708可以参照图4对应的实施例中的步骤406,步骤407以及步骤411和步骤412进行理解。
需要说明的是,如果还包括其他的节点ECU,可以参照节点ECU1和节点ECU2执行的步骤进行理解,这里不再重复赘述。
参阅图7b,为本申请实施例提供的一种数据传输方法的流程示意图。
801、节点ECU1将节点ECU1的剩余存储空间的大小发送给主ECU。
802、节点ECU2将节点ECU2的剩余存储空间的大小发送给主ECU。
803、OTA服务器调用主ECU的TransferVehiclePackage接口。
OTA服务器调用主ECU的TransferVehiclePackage接口,以将所有节点ECU的软件包的大小发送给主ECU。需要说明的是,本实施例中以节点ECU1和节点ECU2为例进行说明,如果还包括其他节点节点ECU,可以参照节点ECU1和节点ECU2执行的步骤进行理解,本文不再重复赘述。
804、主ECU根据节点ECU的软件包的大小和节点ECU的剩余存储空间的关系,向OTA服务器发送通知消息。
如果主ECU根据各个节点ECU的剩余存储空间的大小和各个节点ECU的软件包的大小确定,各个节点ECU均有足够的存储空间存储各自的软件包时,主ECU向OTA服务器发送通知消息,使OTA服务器向节点ECU发送软件包。
举例说明,假设节点ECU只包括节点ECU1和节点ECU2。则可能有以下三种情况:
1、主ECU获取到的节点ECU1的剩余存储空间不小于节点ECU1的软件包的大小,且获取到的ECU2的剩余存储空间不小于ECU2的软件包的大小,则主ECU向OTA服务器发送通知消息,使OTA服务器向节点ECU1发送节点ECU1的软件包,使OTA服务器向节点ECU2发送节点ECU2的软件包。
2、主ECU获取到的节点ECU1的剩余存储空间不小于节点ECU1的软件包的大小,且获取到的节点ECU2的剩余存储空间小于节点ECU2的软件包的大小,则主ECU不向OTA服务器发送通知消息,即不启动下载软件包的流程。
3、主ECU获取到的节点ECU1的剩余存储空间小于节点ECU1的软件包的大小,且获取到的节点ECU2的剩余存储空间不小于节点ECU2的软件包的大小,则主ECU不向OTA服务器发送通知消息,即不启动下载软件包的流程。
805、OTA服务器调用节点ECU1的TransferData接口。
在一个可能的实施方式中,还可以包括步骤806、节点ECU1返回节点ECU1的TransferData接口的调用结果。
807、OTA服务器调用节点ECU2的TransferData接口。
在一个可能的实施方式中,还可以包括步骤808、节点ECU2返回节点ECU2的TransferData接口的调用结果。
步骤805至步骤808可以参照图4对应的实施例中的步骤406,步骤408以及步骤411和步骤412进行理解。
以上对本申请实施例提供的一种数据传输方法进行了介绍,本申请实施例还提供一种数据传输系统,该数据传输系统包括OTA服务器,主ECU以及多个节点ECU。其中OTA服务器为图4至图7b所述对应的实施例中描述的OTA服务器,主ECU为图4至图7b所述对应的实施例中描述的主ECU,节点ECU为图4至图7b所述对应的实施例中描述的节点ECU,比如可以参照节点ECU1和节点ECU2进行理解。此外,基于上述实施例相同的发明构思,本申请实施例还提供一种OTA云服务器,主ECU,节点ECU。下面结合几个具体的实施方式对本申请实施例提供的一种数据传输系统进行说明。
参照图8,为本申请实施例提供的一种数据传输系统的架构示意图。该数据传输系统包括OTA服务器,主ECU以及多个节点ECU。
其中,节点ECU可以包括升级配置管理UCM模块,节点ECU的UCM模块,用于获取到该节点ECU的目标接口被调用时,检查剩余存储空间,并返回第一调用结果,目标接口的参数值可以包括该节点ECU的软件包的大小,第一调用结果指示剩余存储空间是否不小于该节点ECU的软件包的大小。节点ECU的UCM模块,还用于剩余存储空间不小于该节点ECU的软件包的大小时,接收OTA服务器发送的该节点ECU的软件包。
在一个可能的实施方式中,目标接口是TransferStart接口,剩余存储空间不小于该节点ECU的软件包的大小时,第一调用结果可以包括第一参数值,第一参数用于指示OTA服务器向该节点ECU发送该节点ECU的软件包。
在一个可能的实施方式中,节点ECU的UCM模块,还用于获取该节点ECU的软件包的下载地址。根据获取到的下载地址,调用OTA服务器的接口,接口的参数值是该节点ECU的软件包的下载地址,以使OTA服务器响应于接口被调用,向UCM模块发送该节点ECU的软件包。
在一个可能的实施方式中,OTA服务器可以包括升级配置管理UCM模块,OTA服务器的UCM模块,用于确定节点ECU的剩余存储空间不小于该节点ECU的软件包的大小时,调用该节点ECU的TransferData接口,以向该节点ECU发送该节点ECU的软件包。
在一个可能的实施方式中,OTA服务器的UCM模块具体用于获取到第一参数值时,调用该节点ECU的TransferData接口,第一参数值是该节点ECU响应于TransferStart接口被调用,返回的第一调用结果中可以包括的参数值,第一参数值用于指示该节点ECU的剩余存储空间不小于该节点ECU的软件包的大小。
在一个可能的实施方式中,OTA服务器的UCM模块还用于调用主ECU的整车软件包TransferVehiclePackage接口,TransferVehiclePackage接口的参数值可以包括多个节点ECU中的每个节点ECU的软件包的下载地址,以使主ECU向该节点ECU发送该节点ECU的软件包的下载地址,以使该节点ECU根据该节点ECU的下载地址调用UCM模块的接口,接口的参数可以包括该节点ECU的软件包的下载地址。UCM模块,具体用于响应于该节点ECU调用接口,向该节点ECU发送该节点ECU的软件包。
在一个可能的实施方式中,主ECU可以包括UCM Master模块,UCM Master模块,用于调用该节点ECU的目标接口,目标接口的参数值可以包括该节点ECU的软件包的大小,以使该节点ECU响应于主ECU调用目标接口,检查该节点ECU的剩余存储空间。UCM Master模块,还用于接收该节点ECU发送的目标接口的第一调用结果,第一调用结果指示该节点ECU的剩余存储空间是否不小于该节点ECU的软件包的大小。
在一个可能的实施方式中,该节点ECU的剩余存储空间不小于该节点ECU的软件包的大小时,第一调用结果可以包括第一参数值,UCM Master模块,还用于向OTA服务器发送第一反馈消息,第一反馈消息可以包括第一参数值,以使OTA服务器获取到第一参数值时,调用该节点ECU的TransferData接口,以向该节点ECU发送该节点ECU的软件包。
在一个可能的实施方式中,UCM Master模块还用于接收多个节点ECU中的每个节点ECU的第一调用结果,该节点ECU是多个节点ECU中的任意一个ECU。根据第一调用结果确定每个节点ECU的剩余存储空间均不小于各自的软件包的大小时,向OTA服务器发送第二参数值,以使OTA服务器获取到第二参数值时,调用该节点ECU的TransferData接口。
本申请实施例还提供一种ECU,该ECU是上述图8对应的实施例中节点ECU。可以参照图4至图7b所述对应的实施例中描述的节点ECU进行理解。
本申请实施例还提供一种ECU,该ECU是上述图8对应的实施例中的主ECU。可以参照图4至图7b所述对应的实施例中描述的主ECU进行理解。
本申请实施例还提供一种OTA服务器,该OTA服务器是上述图8对应的实施例中的OTA服务器。可以参照图4至图7b所述对应的实施例中描述的OTA服务器进行理解。
参阅图9,本申请实施例还提供一种通信设备。该通信设备可以是图4至图7b对应的实施例中的节点ECU,该通信设备还可以是图4至图7b对应的实施例中的主ECU,该通信设备还可以是图4至图7b对应的实施例中的OTA服务器。
该通信设备可以包括处理器1001,处理器1001和存储器1002耦合,存储器存储有程序指令,当存储器存储的程序指令被处理器执行时,执行图4至图7b对应的实施例中的主ECU执行的步骤。或者当存储器存储的程序指令被处理器执行时,执行图4至图7b对应的实施例中的节点ECU执行的步骤。或者当存储器存储的程序指令被处理器执行时,执行图4至图7b对应的实施例中的OTA服务器执行的步骤。
本申请实施例还提供了一种车辆,参阅图10,图10为本申请实施例提供的一种车辆的结构示意图。其中,车辆上可以部署有图4至图7b对应的实施例中所描述的节点ECU和主ECU。
在一个可能的实施方式中,如图10,该车辆可以包括显示屏1101和ECU1102。其中,ECU1102为上述图4至图7b对应的实施例中所描述的节点ECU和主ECU。车辆可以通过显示屏与用户进行交互,比如可以通过显示器发送提示消息,提示消息用于指示节点ECU从OTA服务器下载所述第一ECU的软件包。参阅图11,为本申请实施例提供的一种数据传输方法的应用场景的示意图。本申请实施例提供的方案,允许用户选择是否对车内的软件进行升级,也可以默认直接对车内的软件进行升级。在车内的各个设备进行升级时,具体的各个ECU的软件下载升级包的过程中,发送提示消息,提示各个设备正在从OTA服务器中下载软件包。
上述车辆可以为轿车、卡车、摩托车、公共汽车、船、割草机、娱乐车、游乐场车辆、施工设备、电车、高尔夫球车等,本申请实施例不做特别的限定。
需要说明的是,对于ECU、车辆执行数据传输方法的具体实现方式以及带来的有益效果,均可以参考图4至图7b对应的各个方法实施例中的叙述,此处不再一一赘述。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有用于下载软件包的程序,当其在计算机上行驶时,使得计算机执行如前述图4至图7b所示实施例描述的方法中ECU所执行的步骤。
本申请实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有用于下载软件包的程序,当其在计算机上行驶时,使得计算机执行如前述图4至图7b所示实施例描述的方法中OTA所执行的步骤。
本申请实施例中还提供一种包括计算机程序产品,当其在计算机上行驶时,使得计算机执行如前述图4至图7b所示实施例描述的方法中ECU所执行的步骤。或者当其在计算机上行驶时,使得计算机执行如前述图4至图7b所示实施例描述的方法中OTA所执行的步骤。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本申请实施例中还提供一种电路系统,所述电路系统包括处理电路和存储电路,所述处理电路和存储电路配置为执行如前述图4至图7b所示实施例描述的方法中ECU或者OTA服务器所执行的步骤。其中,处理电路可以是任意合适类型的计算单元,例如微处理器、数字信号处理器(digital signal processor DSP)、现场可编程门阵列(fieldprogrammable gate array,FPGA)或专用集成电路(application specific integratedcircuit fpga,ASIC)或任意其他形式的电路。存储电路可以是易失型(volatile)和/或非易失型(non-volatile)。比如该存储电路可以是寄存器或者缓存等。具体的,易失型存储电路可以包括cache存储器,非易失型存储电路可以包括flash存储器。
本申请实施例提供的ECU或OTA服务器具体可以为芯片,芯片包括:处理单元和通信单元,所述处理单元例如可以是处理器,所述通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行存储单元存储的计算机执行指令,以使服务器内的芯片执行上述图4至图7b所示实施例描述的数据传输方法。可选地,所述存储单元为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是所述无线接入设备端内的位于所述芯片外部的存储单元,如只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CLU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
Claims (31)
1.一种数据传输系统,其特征在于,所述数据传输系统包括空中下载OTA服务器、主电子控制单元ECU和节点ECU;
OTA服务器,用于调用所述主ECU的第一接口;
所述主ECU,用于响应于所述OTA服务器调用所述第一接口,获取目标软件包的大小;
所述主ECU,还用于调用所述节点ECU的第二接口;
所述节点ECU,用于响应于所述主ECU调用所述第二接口,获取所述目标软件包的大小,并检查所述节点ECU的剩余存储空间,所述剩余存储空间不小于所述目标软件包的大小时,接收所述OTA服务器发送的所述目标软件包。
2.根据权利要求1所述的数据传输系统,其特征在于,
所述节点ECU,还用于向所述主ECU返回第一调用结果,所述第一调用结果包括第一参数值,所述第一参数值用于指示所述节点ECU的剩余存储空间不小于所述目标软件包的大小;
所述主ECU,还用于获取到所述第一参数值时,调用所述OTA服务器的第三接口;
所述OTA服务器,还用于响应于所述主ECU调用所述第三接口,向所述节点ECU发送所述目标软件包。
3.根据权利要求2所述的数据传输系统,其特征在于,所述节点ECU的数量为N,所述N为大于1的整数;
所述主ECU,具体用于获取到N个所述第一参数值时,调用所述OTA服务器的第三接口。
4.根据权利要求1所述的数据传输系统,其特征在于,
所述主ECU,还用于响应于所述OTA服务器调用所述第一接口,获取所述目标软件包的下载地址;
所述节点ECU,还用于向所述主ECU返回第一调用结果,所述第一调用结果包括第一参数值,所述第一参数值用于指示所述节点ECU的剩余存储空间不小于所述目标软件包的大小;
所述主ECU,还用于获取到所述第一参数值时,调用所述节点ECU的第四接口;
所述节点ECU,还用于响应于所述主ECU调用所述第四接口,获取所述目标软件包的下载地址,并调用所述OTA服务器的第五接口;
所述OTA服务器,还用于响应于所述节点ECU调用所述第五接口,接收所述下载地址,并根据所述下载地址向所述节点ECU发送所述目标软件包。
5.根据权利要求4所述的数据传输系统,其特征在于,所述节点ECU的数量为N,所述N为大于1的整数;
所述主ECU,具体用于获取到N个所述第一参数值时,调用所述节点ECU的第四接口。
6.一种空中下载OTA服务器,其特征在于,所述OTA服务器包括升级配置管理UCM模块,
所述UCM模块,用于调用主ECU的第一接口,以使所述主ECU响应于所述OTA服务器调用所述第一接口,获取目标软件包的大小,并调用节点ECU的第二接口,以使所述节点ECU响应于所述主ECU调用所述第二接口,获取所述目标软件包的大小,并检查所述节点ECU的剩余存储空间,所述剩余存储空间不小于所述目标软件包的大小时,接收所述OTA服务器发送的所述目标软件包。
7.根据权利要求6所述的OTA服务器,其特征在于,
所述UCM模块,还用于响应于所述主ECU调用所述UCM模块的第三接口,向所述节点ECU发送所述目标软件包,所述第三接口是所述主ECU在获取到第一参数值时调用的所述UCM模块的接口,所述第一参数值是所述节点ECU向所述主ECU返回的第一调用结果中包括的参数值,所述第一参数值用于指示所述节点ECU的剩余存储空间不小于所述目标软件包的大小。
8.根据权利要求6所述的OTA服务器,其特征在于,
所述UCM模块,还用于调用所述主ECU的第一接口,以使所述主ECU响应于所述OTA服务器调用所述第一接口,获取所述目标软件包的下载地址,以使所述节点ECU响应于所述主ECU调用第四接口,获取所述目标软件包的下载地址,并调用所述OTA服务器的第五接口;
所述UCM模块,还用于响应于所述节点ECU调用所述UCM模块的第五接口,接收所述目标软件包的下载地址,并根据所述下载地址向所述节点ECU发送所述目标软件包。
9.一种主电子控制单元ECU,其特征在于,所述主ECU包括升级配置管理主控UCMMaster模块,
所述UCM Master模块,用于响应于OTA服务器调用所述UCM Master模块的第一接口,获取目标软件包的大小;
所述UCM Master模块,还用于调用节点ECU的第二接口,以使所述节点ECU响应于所述第二接口被调用,获取所述目标软件包的大小,并检查所述节点ECU的剩余存储空间,所述剩余存储空间不小于所述目标软件包的大小时,所述节点ECU接收所述OTA服务器发送的所述目标软件包。
10.根据权利要求9所述的主ECU,其特征在于,
所述UCM Master模块,还用于获取到第一参数值时,调用所述OTA服务器的第三接口,以使所述OTA服务器响应于所述第三接口被调用,向所述节点ECU发送所述目标软件包,所述第一参数值是所述节点ECU向所述主ECU返回的第一调用结果中包括的参数值,所述第一参数值用于指示所述节点ECU的剩余存储空间不小于所述目标软件包的大小。
11.根据权利要求10所述的主ECU,其特征在于,所述节点ECU的数量为N,所述N为大于1的整数;
所述UCM Master模块,具体用于获取到N个所述第一参数值时,调用所述OTA服务器的第三接口。
12.根据权利要求9所述的主ECU,其特征在于,
所述UCM Master模块,还用于响应于所述OTA服务器调用所述第一接口,获取所述目标软件包的下载地址;
所述UCM Master模块,还用于获取到所述第一参数值时,调用所述节点ECU的第四接口,以使所述节点ECU响应于所述第四接口被调用,获取所述下载地址,并调用所述OTA服务器的第五接口,以使所述OTA服务器响应于所述第五接口被调用,接收所述下载地址,并根据所述下载地址向所述节点ECU发送所述目标软件包,所述第一参数值是所述节点ECU向所述主ECU返回的第一调用结果中包括的参数值,所述第一参数值用于指示所述节点ECU的剩余存储空间不小于所述目标软件包的大小。
13.根据权利要求12所述的主ECU,其特征在于,所述节点ECU的数量为N,所述N为大于1的整数;
所述UCM Master模块,具体用于获取到N个所述第一参数值时,调用所述节点ECU的第四接口。
14.一种节点电子控制单元ECU,其特征在于,所述节点ECU包括升级配置管理UCM模块,
所述UCM模块,用于响应于主ECU在被调用第一接口后调用所述UCM模块的第二接口,获取目标软件包的大小,并检查所述节点ECU的剩余存储空间,所述剩余存储空间不小于所述目标软件包的大小时,接收OTA服务器发送的所述目标软件包,所述主ECU的第一接口被所述OTA服务器调用,以使所述主ECU响应于所述第一接口被调用,获取目标软件包的大小。
15.根据权利要求14所述的节点ECU,其特征在于,
所述UCM模块,还用于向所述主ECU返回第一调用结果,所述第一调用结果包括第一参数值,所述第一参数值用于指示所述节点ECU的剩余存储空间不小于所述目标软件包的大小,以使所述主ECU获取到所述第一参数值时,调用所述OTA服务器的第三接口,以使所述OTA服务器响应于所述主ECU调用所述第三接口,向所述节点ECU发送所述目标软件包。
16.根据权利要求14所述的节点ECU,其特征在于,
所述UCM模块,还用于向所述主ECU返回第一调用结果,所述第一调用结果包括第一参数值,所述第一参数值用于指示所述节点ECU的剩余存储空间不小于所述目标软件包的大小,以使所述主ECU获取到所述第一参数值时,调用所述节点ECU的第四接口;
所述UCM模块,还用于响应于所述主ECU调用所述第四接口,获取所述目标软件包的下载地址,并调用所述OTA服务器的第五接口,以使所述OTA服务器响应于所述第五接口被调用,接收所述下载地址,并根据所述下载地址向所述节点ECU发送所述目标软件包。
17.一种数据传输方法,其特征在于,包括:
OTA服务器调用主ECU的第一接口,以使所述主ECU响应于所述OTA服务器调用所述第一接口,获取目标软件包的大小,并调用节点ECU的第二接口,以使所述节点ECU响应于所述主ECU调用所述第二接口,获取所述目标软件包的大小,并检查所述节点ECU的剩余存储空间,所述剩余存储空间不小于所述目标软件包的大小时,接收所述OTA服务器发送的所述目标软件包。
18.根据权利要求17所述的数据传输方法,其特征在于,所述方法还包括:
所述OTA服务器响应于所述主ECU调用所述UCM模块的第三接口,向所述节点ECU发送所述目标软件包,所述第三接口是所述主ECU在获取到第一参数值时调用的所述OTA服务器的接口,所述第一参数值是所述节点ECU向所述主ECU返回的第一调用结果中包括的参数值,所述第一参数值用于指示所述节点ECU的剩余存储空间不小于所述目标软件包的大小。
19.根据权利要求17所述的数据传输方法,其特征在于,所述方法还包括:
所述OTA服务器调用所述主ECU的第一接口,以使所述主ECU响应于所述OTA服务器调用所述第一接口,获取所述目标软件包的下载地址,以使所述节点ECU响应于所述主ECU调用第四接口,获取所述目标软件包的下载地址,并调用所述OTA服务器的第五接口;
所述OTA服务器响应于所述节点ECU调用所述UCM模块的第五接口,接收所述目标软件包的下载地址,并根据所述下载地址向所述节点ECU发送所述目标软件包。
20.一种数据传输方法,其特征在于,包括:
所述主ECU响应于OTA服务器调用所述UCM Master模块的第一接口,获取目标软件包的大小;
所述主ECU调用节点ECU的第二接口,以使所述节点ECU响应于所述第二接口被调用,获取所述目标软件包的大小,并检查所述节点ECU的剩余存储空间,所述剩余存储空间不小于所述目标软件包的大小时,所述节点ECU接收所述OTA服务器发送的所述目标软件包。
21.根据权利要求20所述的数据传输方法,其特征在于,所述方法还包括:
所述主ECU获取到第一参数值时,调用所述OTA服务器的第三接口,以使所述OTA服务器响应于所述第三接口被调用,向所述节点ECU发送所述目标软件包,所述第一参数值是所述节点ECU向所述主ECU返回的第一调用结果中包括的参数值,所述第一参数值用于指示所述节点ECU的剩余存储空间不小于所述目标软件包的大小。
22.根据权利要求21所述的数据传输方法,其特征在于,所述节点ECU的数量为N,所述N为大于1的整数;
所述主ECU获取到第一参数值时,调用所述OTA服务器的第三接口,包括:
所述主ECU获取到N个所述第一参数值时,调用所述OTA服务器的第三接口。
23.根据权利要求20所述的数据传输方法,其特征在于,所述方法还包括:
所述主ECU响应于所述OTA服务器调用所述第一接口,获取所述目标软件包的下载地址;
所述主ECU获取到所述第一参数值时,调用所述节点ECU的第四接口,以使所述节点ECU响应于所述第四接口被调用,获取所述下载地址,并调用所述OTA服务器的第五接口,以使所述OTA服务器响应于所述第五接口被调用,接收所述下载地址,并根据所述下载地址向所述节点ECU发送所述目标软件包,所述第一参数值是所述节点ECU向所述主ECU返回的第一调用结果中包括的参数值,所述第一参数值用于指示所述节点ECU的剩余存储空间不小于所述目标软件包的大小。
24.根据权利要求23所述的数据传输方法,其特征在于,所述节点ECU的数量为N,所述N为大于1的整数;
所述主ECU获取到所述第一参数值时,调用所述节点ECU的第四接口,包括:
所述主ECU获取到N个所述第一参数值时,调用所述节点ECU的第四接口。
25.一种数据传输方法,其特征在于,包括:
节点ECU响应于主ECU在被调用第一接口后调用所述UCM模块的第二接口,获取目标软件包的大小,并检查所述节点ECU的剩余存储空间,所述剩余存储空间不小于所述目标软件包的大小时,接收OTA服务器发送的所述目标软件包,所述主ECU的第一接口被所述OTA服务器调用,以使所述主ECU响应于所述第一接口被调用,获取目标软件包的大小。
26.根据权利要求25所述的数据传输方法,其特征在于,所述方法还包括:
所述节点ECU向所述主ECU返回第一调用结果,所述第一调用结果包括第一参数值,所述第一参数值用于指示所述节点ECU的剩余存储空间不小于所述目标软件包的大小,以使所述主ECU获取到所述第一参数值时,调用所述OTA服务器的第三接口,以使所述OTA服务器响应于所述主ECU调用所述第三接口,向所述节点ECU发送所述目标软件包。
27.根据权利要求25所述的数据传输方法,其特征在于,所述方法还包括:
所述节点ECU向所述主ECU返回第一调用结果,所述第一调用结果包括第一参数值,所述第一参数值用于指示所述节点ECU的剩余存储空间不小于所述目标软件包的大小,以使所述主ECU获取到所述第一参数值时,调用所述节点ECU的第四接口;
所述节点ECU响应于所述主ECU调用所述第四接口,获取所述目标软件包的下载地址,并调用所述OTA服务器的第五接口,以使所述OTA服务器响应于所述第五接口被调用,接收所述下载地址,并根据所述下载地址向所述节点ECU发送所述目标软件包。
28.一种计算机可读存储介质,包括程序,当其在计算机上运行时,使得计算机执行如权利要求17至19中任一项所述的方法。
29.一种计算机可读存储介质,包括程序,当其在计算机上运行时,使得计算机执行如权利要求20至24中任一项所述的方法。
30.一种计算机可读存储介质,包括程序,当其在计算机上运行时,使得计算机执行如权利要求25至27中任一项所述的方法。
31.一种智能汽车,其特征在于,所述智能汽车包括主电子控制单元ECU和节点ECU,所述主ECU是权利要求9至13任一项所述的主ECU,所述节点ECU是权利要求14至16任一项所述的节点ECU。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210159429.XA CN114666362A (zh) | 2020-09-27 | 2020-09-27 | 一种数据传输系统、数据传输方法,智能车以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/118080 WO2022061804A1 (zh) | 2020-09-27 | 2020-09-27 | 一种数据传输系统、数据传输方法,智能车以及装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210159429.XA Division CN114666362A (zh) | 2020-09-27 | 2020-09-27 | 一种数据传输系统、数据传输方法,智能车以及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112673609A true CN112673609A (zh) | 2021-04-16 |
CN112673609B CN112673609B (zh) | 2022-03-04 |
Family
ID=75413911
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080004904.5A Active CN112673609B (zh) | 2020-09-27 | 2020-09-27 | 一种数据传输系统、数据传输方法,智能车以及装置 |
CN202210159429.XA Pending CN114666362A (zh) | 2020-09-27 | 2020-09-27 | 一种数据传输系统、数据传输方法,智能车以及装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210159429.XA Pending CN114666362A (zh) | 2020-09-27 | 2020-09-27 | 一种数据传输系统、数据传输方法,智能车以及装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20230236822A1 (zh) |
EP (1) | EP4207707A4 (zh) |
JP (1) | JP7559230B2 (zh) |
KR (1) | KR20230070039A (zh) |
CN (2) | CN112673609B (zh) |
WO (1) | WO2022061804A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114020662A (zh) * | 2021-11-02 | 2022-02-08 | 上海兆芯集成电路有限公司 | 桥接模块、数据传输系统和数据传输方法 |
CN114124842A (zh) * | 2021-11-10 | 2022-03-01 | 北京经纬恒润科技股份有限公司 | 一种数据传输方法、系统、电子设备及存储介质 |
WO2023051057A1 (zh) * | 2021-09-29 | 2023-04-06 | 华为技术有限公司 | 芯片升级方法及装置 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022187162A (ja) * | 2021-06-07 | 2022-12-19 | トヨタ自動車株式会社 | Otaマスタ、システム、方法、プログラム、及び車両 |
JP2022187189A (ja) * | 2021-06-07 | 2022-12-19 | トヨタ自動車株式会社 | Otaマスタ、センタ、システム、方法、プログラム、及び車両 |
JP2023132285A (ja) * | 2022-03-10 | 2023-09-22 | トヨタ自動車株式会社 | 通信制御システム、通信制御方法及び通信制御プログラム |
CN115665114A (zh) * | 2022-09-23 | 2023-01-31 | 成都市卡蛙科技有限公司 | 一种升级包下载方法和系统 |
CN115865659A (zh) * | 2022-10-24 | 2023-03-28 | 一汽奔腾轿车有限公司 | 一种ota升级过程中的进程工作系统及机制 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170292467A1 (en) * | 2016-04-08 | 2017-10-12 | Infineon Technologies Ag | Control infrastructure for automotive applications |
CN109561118A (zh) * | 2017-09-26 | 2019-04-02 | 比亚迪股份有限公司 | 软件升级方法、装置、系统、存储介质、电子设备及车辆 |
US20190265965A1 (en) * | 2018-02-27 | 2019-08-29 | Excelfore Corporation | System and method for updating software in an electronic device |
CN110377307A (zh) * | 2019-07-18 | 2019-10-25 | 上海擎感智能科技有限公司 | 一种车身控制器固件升级方法、终端、系统 |
CN110597538A (zh) * | 2019-09-03 | 2019-12-20 | 广州小鹏汽车科技有限公司 | 一种基于ota升级系统的软件升级方法和ota升级系统 |
US20200081699A1 (en) * | 2018-09-07 | 2020-03-12 | International Business Machines Corporation | Mitigating incompatibilities due to code updates in a system containing multiple networked electronic control units |
WO2020139400A1 (en) * | 2018-12-27 | 2020-07-02 | Didi Research America, Llc | Trusted platform protection in an autonomous vehicle |
CN111506537A (zh) * | 2019-01-31 | 2020-08-07 | 富士通株式会社 | 车载系统和电子控制单元 |
CN111580840A (zh) * | 2020-03-27 | 2020-08-25 | 惠州市德赛西威汽车电子股份有限公司 | 一种基于分布式内存管理实现ecu更新的方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6832373B2 (en) * | 2000-11-17 | 2004-12-14 | Bitfone Corporation | System and method for updating and distributing information |
US7752618B2 (en) * | 2002-12-05 | 2010-07-06 | Samsung Electronics Co., Ltd. | Apparatus and method for remote DLL linking of software upgrades for a wireless mobile station |
JP6314775B2 (ja) | 2014-09-29 | 2018-04-25 | 株式会社オートネットワーク技術研究所 | 通信システム、車載装置、通信装置、及びコンピュータプログラム |
JP6696468B2 (ja) | 2016-08-30 | 2020-05-20 | 株式会社オートネットワーク技術研究所 | 車載更新装置及び車載更新システム |
JP2018079768A (ja) | 2016-11-15 | 2018-05-24 | トヨタ自動車株式会社 | 更新データ保存システム |
JP2019204413A (ja) | 2018-05-25 | 2019-11-28 | 株式会社デンソーテン | 更新装置、車両制御装置および更新方法 |
JP6902722B2 (ja) | 2019-03-07 | 2021-07-14 | パナソニックIpマネジメント株式会社 | プログラム更新システム、制御システム、移動体、プログラム更新方法及びプログラム |
-
2020
- 2020-09-27 CN CN202080004904.5A patent/CN112673609B/zh active Active
- 2020-09-27 CN CN202210159429.XA patent/CN114666362A/zh active Pending
- 2020-09-27 WO PCT/CN2020/118080 patent/WO2022061804A1/zh active Application Filing
- 2020-09-27 EP EP20954655.5A patent/EP4207707A4/en active Pending
- 2020-09-27 KR KR1020237013439A patent/KR20230070039A/ko not_active Application Discontinuation
- 2020-09-27 JP JP2023518969A patent/JP7559230B2/ja active Active
-
2023
- 2023-03-27 US US18/190,449 patent/US20230236822A1/en active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170292467A1 (en) * | 2016-04-08 | 2017-10-12 | Infineon Technologies Ag | Control infrastructure for automotive applications |
CN109561118A (zh) * | 2017-09-26 | 2019-04-02 | 比亚迪股份有限公司 | 软件升级方法、装置、系统、存储介质、电子设备及车辆 |
US20190265965A1 (en) * | 2018-02-27 | 2019-08-29 | Excelfore Corporation | System and method for updating software in an electronic device |
US20200081699A1 (en) * | 2018-09-07 | 2020-03-12 | International Business Machines Corporation | Mitigating incompatibilities due to code updates in a system containing multiple networked electronic control units |
WO2020139400A1 (en) * | 2018-12-27 | 2020-07-02 | Didi Research America, Llc | Trusted platform protection in an autonomous vehicle |
CN111506537A (zh) * | 2019-01-31 | 2020-08-07 | 富士通株式会社 | 车载系统和电子控制单元 |
CN110377307A (zh) * | 2019-07-18 | 2019-10-25 | 上海擎感智能科技有限公司 | 一种车身控制器固件升级方法、终端、系统 |
CN110597538A (zh) * | 2019-09-03 | 2019-12-20 | 广州小鹏汽车科技有限公司 | 一种基于ota升级系统的软件升级方法和ota升级系统 |
CN111580840A (zh) * | 2020-03-27 | 2020-08-25 | 惠州市德赛西威汽车电子股份有限公司 | 一种基于分布式内存管理实现ecu更新的方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023051057A1 (zh) * | 2021-09-29 | 2023-04-06 | 华为技术有限公司 | 芯片升级方法及装置 |
CN114020662A (zh) * | 2021-11-02 | 2022-02-08 | 上海兆芯集成电路有限公司 | 桥接模块、数据传输系统和数据传输方法 |
CN114124842A (zh) * | 2021-11-10 | 2022-03-01 | 北京经纬恒润科技股份有限公司 | 一种数据传输方法、系统、电子设备及存储介质 |
CN114124842B (zh) * | 2021-11-10 | 2023-07-14 | 北京经纬恒润科技股份有限公司 | 一种数据传输方法、系统、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP4207707A4 (en) | 2023-11-01 |
CN112673609B (zh) | 2022-03-04 |
CN114666362A (zh) | 2022-06-24 |
WO2022061804A1 (zh) | 2022-03-31 |
JP2023544123A (ja) | 2023-10-20 |
KR20230070039A (ko) | 2023-05-19 |
US20230236822A1 (en) | 2023-07-27 |
JP7559230B2 (ja) | 2024-10-01 |
EP4207707A1 (en) | 2023-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112673609B (zh) | 一种数据传输系统、数据传输方法,智能车以及装置 | |
US11204751B2 (en) | Mitigating incompatibilities due to code updates in a system containing multiple networked electronic control units | |
CN105939213B (zh) | 用于车辆的分系统和相应的车辆 | |
US20230004381A1 (en) | Software version rollback method, apparatus, and system | |
CN109831338B (zh) | 车机系统升级方法、云端服务器及移动终端 | |
CN112055091B (zh) | 车载微服务架构、车载模块的通信方法和装置 | |
US20140007076A1 (en) | Separate upgrade/modification of remote software in machine to machine communication | |
JP2023544130A (ja) | 車両アップグレード方法および装置 | |
CN106874026A (zh) | 用于经由空中接口稳健地更新车辆的固件的方法和设备 | |
CN115242565B (zh) | 一种基于autosar实现dds通信的系统架构、通信方法及设备 | |
CN113824795B (zh) | 车端与云端的通信方法、装置、系统 | |
CN111886576A (zh) | 用于更新远程网络设备的方法和装置 | |
JP2017220220A (ja) | 車両用電子制御装置及び車両用サービス管理システム | |
CN113094062A (zh) | 升级方法及装置 | |
WO2024008104A1 (zh) | 远程升级方法及系统 | |
CN113485920B (zh) | 实现DoIP实体的方法、装置、可读存储介质及电子设备 | |
CN116567094A (zh) | 一种基于微服务系统的服务信息处理方法 | |
CN110471757B (zh) | 一种车载智能天线系统的软件架构及汽车 | |
CN116633780A (zh) | 车辆的网关升级方法、装置、车辆及存储介质 | |
CN112532664A (zh) | 数据升级方法及装置 | |
JP2007530353A (ja) | 多数の制御デバイスを備えたバスシステムでの非コンパチビリティを認識する方法 | |
CN113076128B (zh) | 用于机器人配置的方法、装置、电子设备及存储介质 | |
EP3992778B1 (en) | A computer-implemented method for transferring ota data to a fleet of vehicles, a backend server, a transportation system | |
CN114374714A (zh) | 集中式汽车电子电气架构搭建方法、拓扑结构及存储介质 | |
JP7537301B2 (ja) | センタ、更新管理方法、更新管理プログラム |
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 |